TCP报文

字段介绍:
1、源端口(16bit):一个端口所属一个进程,可以通过源端口定位到具体的进程;
2、目的端口(16bit):通过目的端口和Ip报文的目的ip地址可以唯一定位到一个进程;
3、序号(32bit):当前发送数据的起始序号,每一个字节都和一个序号对应,通过序号可以保证数据的有序性;
4、确认序号(32bit):只有当ACK为1时确认序号才有效,表示期望下一次希望收到的数据的起始序号;
5、数据偏移(4bit):报文中包含数据部分,因为报文头的大小不是固定的(由于选项和填充的存在),所以通过这个数据偏移定位到数据相对于整个TPC报文的起始位置。
6、保留(6bit):保留,以作之后其他用途;
7、控制位:
(1)URG:紧急指针标志:1:紧急指针有效、0:紧急指针无效;
(2)ACK:确认序号标志:1:确认号有效、1:确认号无效;
(3)PSH:push标志,1:带有push标志的报文,表示接收方在收到报文后应尽快交给应用程序,而不是放到缓存区;
(4)RST:重置连接标志:用于重置由于主机崩溃或者其他错误导致的错误连接。或者用于拒绝非法的报文段或者连接请求。
(5)SYN:同步序号标志,用于建立连接过程,SYN=1、ACK=0表示没有使用捎带的确认域;SYN=1、ACK=1表示连接应答捎带一个确认域。
(6)FIN:结束标志,表示没有数据发送了,结束本次连接请求。
8、窗口(16bit):滑动窗口大小,表示告诉发送端接收端的缓存大小,从而进行流量控制;
9、校验和(16bit):根据整个TCP报文生成的一个校验码,在发送端生成,在接收端校验;
10、紧急指针(16bit):只有URG等于1时才有效,紧急指针是一个正的偏移量,和序列号相加生成一个紧急数据最后一个序列号,对于这部分

最低0.47元/天 解锁文章
601

被折叠的 条评论
为什么被折叠?



