4)TCP四次挥手
TCP四次断开,例如关闭页面的时候就会断开连接。
5)TCP概念
1. 发送窗口
无法简单的看出发送窗口的大小,发送窗口会由网络因素决定。发送窗口定义了一次发的字节,而MSS定义了这些字节通过多少个包发送。
2. 拥塞窗口(cwnd)
描述源端在拥塞控制情况下一次最多能发送的数据包的数量。
在发送方维护一个虚拟的拥塞窗口,并利用各种算法使它尽可能接近真实的拥塞点。
网络对发送窗口的限制,就是通过拥塞窗口实现的。
3. 在途字节数(bytes in flight)
已经发送出去,但尚未被确认的字节数。
在途字节数 = Seq Len - Ack
其中Seq和Len来自上一个数据发送方的包,而Ack来自上一个数据接收方的包。
4. 拥塞点(congestion point)
发生拥塞时候的在途字节数就是该时刻的网络拥塞点。
先从Wireshark中找到一连串重传包中的第一个,再根据该Seq找到原始包最后计算该原始包发送时刻的在途字节数。
5. 慢启动
RFC建议初始拥塞窗口发送2、3、或4个MSS,如果发出去的包都能得到确认,则表明还没到拥塞点,可以收到n个确认增加n个MSS
6. 拥塞避免
慢启动持续一段时间后,拥塞窗口达到一个较大的值,就得放慢RFC建议在每个往返时间增加1个MSS,比如发了16个MSS全部确认,那么就增加到17个MSS
7. 超时重传
发出去的包在等待一段时间(RTO)后,没有收到确认,就只能重传了