2014年(10)
分类: 系统运维
2014-08-11 15:48:37
原文地址:TCP传输协议抓包经验 作者:suchfool
TCP传输通信时的几个状态
TCP Window Update
TCP Previous segment lost
TCP Dup ACK XXXX#X;
TCP Retransmission
TCP Previous segment lost,它告诉发送方数据段丢失;TCP Dup ACK XXXX#X 则代表了数据段丢失TCP状态,XXXX代表数据丢失的位置,#后代表第几次丢失;而TCP Retransmission则代表重发丢失数据。
在TCP第三次握手完成后,发现会出现一个TCP Window Update,如图3-11所示:
图3-11
TCP Window Update 是TCP通信中的一个状态,它可以发生的原因有很多,但最终归结于发送者传输数据的速度比接收者读取的数据还快,这使得接受端的在缓冲区必须释放一部分空间来装发送过来的数据,然后向发送者发送Windows Update,告诉给发送者应该以多大的速度发送数据,从而使得数据传输与接受恢复正常。
我们可以从下面几个比较明显的例子可以看出来。
从图3-14可以看到ACK=7743,len=0;而4832的seq=9887,故中间有数据包丢失,所以211.144.69.242(设定为A)向10.10.80.54(设定为B)发送TCP Previous segment lost,说明数据丢失。4843行显示B向A发送数据包,告诉A包丢失之前(即4841)的ACK信息。图3-15又出现了数据包丢失。(图3-16)4852行则显示TCP通信的状态TCP Fast Retransmission,表示快速重传。