文章来源地址https://www.toymoban.com/news/detail-453243.html
-
第一行
- 源端口(source port ),16位
- 目的端口(destination port),16位
-
第二行
- seq number,32 位;报文段第一个字节编号,TCP 报文中每个字节流 被编号。
- 数据段在网络中传输时,顺序可能会错位;接收端依据序列号,可正确重组数据,保证数据的有序性
-
第三行
- ack number, 32 位;对收到的数据进行确认。
- 确认序列号= 收到的数据序列号+1
-
第四行
- 数据偏移量,又叫首部长度,4位;以4 byte 字节为单位,tcp报文头部,固定长度20字节 + 可选项 = (15 *4)60字节
- 保留位,4位
- CWR: 用于IP头部的ECN 字段,
- ECE =1 时,通知对方,从对方到这边的网络有阻塞。
- URG:紧急标志 1 位,urg =1 表示紧急指针字段有效,并且告诉系统尽快发送本报文。
- ACK: 确认标志位 1位,ack = 1,ack num有效, 表示收到对端数据。
- PSH:表示接收方收到报文psh=1时,尽快将缓存数据交付给 应用进程,而别等整个缓存满了再交付。
- RST: 复位标志 1位,rst =1 表示拒绝报文;
- SYN:同步序号标志 1 位 ,syn =1 表示本报文 时建立连接请求
- FIN:结束标志 1位,fin =1 表示拆除连接请求
- window:窗口 16位,用来控制对方发送的数据量,单位字节。tcp根据自己缓存空间大小确定自己的接收窗口大小,然后通知对方以确定 对方的发送窗口的上限。最大 65535
-
第五行
- 校验和 16 位 :校验 tcp 报文段,包括tcp头部和数据部分,由发送端计算,发送。由接收端进行校验
- 紧急指针 16位:URG=1 ,紧急指针有效;
- 第六行
- 可选项: 最长报文的大小MSS .第一次握手时,说明 最大报文大小
- 第一个字段,选项类型kind,
- 第二个字段length,指定该选项的总长度,
- 第三个字段info,选项的具体信息,
- kind =0,选项表结束
- kind =1,空操作nop
- kind=2,最大报文段长度,用来协商报文最大长度(max segment size,mss)
- TCP统册将mss = mtu - 40
- 数据部分
1.
文章来源:https://www.toymoban.com/news/detail-453243.html
到了这里,关于tcp 报文详细说明的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!