tcp/ip学习笔记--第17章 TCP(transmission control protocol)
2017-11-22 00:44
796 查看
TCP services
尽管TCP和UDP使用同样的IP层,但是却提供与UDP完全不同的服务。TCP提供面向连接的,可靠的,字节流的服务。
TCP通过以下措施来保证可靠性:
1.发送合适大小的报文段
2.为发送的报文段设置定时器,并等待接收端确认,如果超时还未收到接收端的确认就会再次发送
3.接收端接收到报文段后会发送对应的确认。
4.对报文段的整体(头部+数据部分)计算校验和。
5.接收端对到达的报文进行重新排序
6删除重复的报文
7.提供流量控制,防止传输速率快的主机使速率慢的主机的缓冲区溢出。
TCP Header
源端口号和目的端口号:用来区分不同的程序
序号:标识发送端发出的报文段的数据部分的第一个字节。TCP对发送的每个字节都进行编号,这个序号会在达到2^32-1之后回到0进行循环。初始序列号在建立连接的时候由发送端确定。并且每个发送端都会产生自己的序列号。
确认序号:接收端用来告诉发送端已经接收到哪个字节(表示这个字节之前所有的字节都接收到了)。因为确认序号是头部的一部分,而且TCP是双工模式,所以tcp在发送消息的时候确认序号一直有值,并且ACKflag处于打开状态。
首部长度:以4个字节为单位表示的首部长度,也就是首部长度最多为60个字节(15*4)。一般为20,如果没有option。
6个标志位:
URG 紧急指针有效
ACK 确认序列号有效
PSH 接收都应尽可能快将这个数据上交到应该程序
RST 重置这个连接
SYN 同步序列号,用于初始化连接
FIN 发送端结束发送数据
窗口大小:用来进行flow control
检验和:强制的。(发送端必须计算,接收端必须验证)
option:最常用的就是MSS(maximum segment size)
尽管TCP和UDP使用同样的IP层,但是却提供与UDP完全不同的服务。TCP提供面向连接的,可靠的,字节流的服务。
TCP通过以下措施来保证可靠性:
1.发送合适大小的报文段
2.为发送的报文段设置定时器,并等待接收端确认,如果超时还未收到接收端的确认就会再次发送
3.接收端接收到报文段后会发送对应的确认。
4.对报文段的整体(头部+数据部分)计算校验和。
5.接收端对到达的报文进行重新排序
6删除重复的报文
7.提供流量控制,防止传输速率快的主机使速率慢的主机的缓冲区溢出。
TCP Header
源端口号和目的端口号:用来区分不同的程序
序号:标识发送端发出的报文段的数据部分的第一个字节。TCP对发送的每个字节都进行编号,这个序号会在达到2^32-1之后回到0进行循环。初始序列号在建立连接的时候由发送端确定。并且每个发送端都会产生自己的序列号。
确认序号:接收端用来告诉发送端已经接收到哪个字节(表示这个字节之前所有的字节都接收到了)。因为确认序号是头部的一部分,而且TCP是双工模式,所以tcp在发送消息的时候确认序号一直有值,并且ACKflag处于打开状态。
首部长度:以4个字节为单位表示的首部长度,也就是首部长度最多为60个字节(15*4)。一般为20,如果没有option。
6个标志位:
URG 紧急指针有效
ACK 确认序列号有效
PSH 接收都应尽可能快将这个数据上交到应该程序
RST 重置这个连接
SYN 同步序列号,用于初始化连接
FIN 发送端结束发送数据
窗口大小:用来进行flow control
检验和:强制的。(发送端必须计算,接收端必须验证)
option:最常用的就是MSS(maximum segment size)
相关文章推荐
- TCP(Transmission Control Protocol)学习笔记
- TCP-IP详解卷1-17:TCP(Transmission Control Protocol):传输控制协议(服务和首部)
- Transmission Control Protocol/Internet Protocol(TCP/IP)
- TCP/IP 详解 卷1 ch17 TCP: Transmission Control Protocol
- TCP:Transmission Control Protocol 传输控制协议
- tcp/ip 协议 学习笔记1
- TCP/IP学习笔记之八 --- 动态选路协议
- CCNA学习笔记1---OSI TCP/IP模型
- OSI七层协议模型、TCP/IP四层模型学习笔记
- TCP IP学习笔记1
- 传输控制协议(Transmission Control Protocol, TCP) (上)
- TCP/IP 1-3学习笔记
- TCP/IP详细学习笔记(1)ARP与RARP
- TCP/IP具体解释学习笔记——数据链路层(2)
- TCP/IP详解2 学习笔记2---ifnet ifaddr
- (原创)TCP/IP学习笔记之IP(网际协议)
- TCP-IP学习笔记六:Netty使用--简单通信编程2
- TCP-IP学习笔记(三)——概述
- TCP/IP学习笔记-如何理解
- TCP/IP详解--学习笔记(9)-TCP协议概述