MTU、MSS、TCP首部、IP首部

MTU(Maximum Transmission Unit)最大传输单元,即物理接口(数据链路层)提供给其上层(IP层)的最大一次传输数据的大小,用来通知对方所能接受的数据服务单元的最大尺寸,是包或帧的最大长度,一般以字节为单位(8位为一个字节)。在以太网中,MTU为1500字节;在FDDI中,MTU为4352字节。以太网是最普遍的一种计算机网络,一般可分为两类:1.经典以太网 2.交换式以太网。经典以太网通过一根长电缆连接着所有的计算机。
MTU、MSS、TCP首部、IP首部_第1张图片
然而交换式以太网的核心是一个交换机,它包含一块连接所有端口的高速背板。从外观上来看,交换机很像集线器,拥有很多端口,通过简单的插入或者拔出电缆就能完成或者删除一台主机。
MTU、MSS、TCP首部、IP首部_第2张图片
FDDI(Fiber Distributed Data Interface)光纤分布式数据接口,是一种以光纤作为传输介质的高速主干网,它可以用来互连单个计算机与局域网。
MSS(Maximum Segment Size)最大数据分段长度,是通过TCP协议提交给IP层的最大数据分段大小,不包含TCP首部和IP首部。而一般TCP首部和IP首部均为20字节的长度,故MSS=MTU-20(TCP首部长度)-20(IP首部长度)。
TCP首部:
MTU、MSS、TCP首部、IP首部_第3张图片
1.源端口,16位;发送数据的源进程端口
2.目的端口,16位;接收数据的进程端口
3.序号,32位;代表当前TCP数据段第一个字节占整个字节流的相对位置;
4.确认号,32位;代表接收端希望接收的数据序号,为上次接收到数据报的序号+1,当ACK标志位为1时才有效。
5.数据偏移,4位;实际代表TCP首部长度,单位为4个字节。
6.保留位,6位。
7.6个标志位,每个标志位1位;
SYN,为同步标志,用于数据同步;
ACK,为确认序号,ACK=1时确认号才有效;
FIN,为结束序号,用于发送端提出断开连接;
URG,为紧急序号,URG=1是紧急指针有效;
PSH,指示接收方立即将数据提交给应用层,而不是等待缓冲区满;
RST,重置连接。
8.窗口值,16位;标识接收方可接受的数据字节数。
9.校验和,16位;用于检验数据完整性。
10.紧急指针,16位;只有当URG标识位为1时,紧急指针才有效。紧急指针的值与序号的相加值为紧急数据的最后一个字节位置。用于发送紧急数据。

IP首部:
MTU、MSS、TCP首部、IP首部_第4张图片
1.版本号,4位;用于标识IP协议版本,IPv4是0100,IPv6是0110,也就是二进制的4和6。
2.首部长度,4位;用于标识首部的长度,单位为4字节,一般只推荐使用20字节的固定长度。
3.服务类型,8位;用于标识IP包的优先级。
4.总长度,16位;标识IP数据报的总长度。
5.标识,16位;用于标识IP数据报(IP数据报组成:IP数据报=IP首部+TCP首部+TCP报文段的数据部分),当要求发送的IP数据报大于MTU时,IP数据报需要进行分片发送,则每个分片的IP数据报标识都是一致的。
6.标识,3位,但目前只有2位有意义;最低位为MF,MF=1代表后面还有分片的数据报,MF=0代表当前数据报已是最后的数据报。次低位为DF,DF=1代表不能分片,DF=0代表可以分片。
7.片偏移,13位;代表某个分片在原始数据中的相对位置。
8.生存时间,8位;以前代表IP数据报最大的生存时间,现在标识IP数据报可以经过的路由器数。
9.协议,8位;代表上层传输层协议的类型,1代表ICMP,2代表IGMP,6代表TCP,17代表UDP。
10.校验和,16位;用于验证数据完整性,计算方法为,首先将校验和位置零,然后将每16位二进制反码求和即为校验和,最后写入校验和位置。
11.源IP地址。
12.目的IP地址。

你可能感兴趣的:(TCP)