以下一个滑动窗口满的例子
滑动窗口是接收端用来流量控制的。
拥塞窗口是发送端用来流量控制的。
1)发送端发了数据包,接收端的滑动窗口满了。
2)接收端发零窗口,告诉发送端,暂停发数据。
3)发送端接到这个零窗口后,启动一个坚持定时器。
4)发送端不确定接收端是不是崩溃了,发送保活报文。查询接收端的状态。
5)接收端仍然没有处理完,回零窗口确认。
6)接收端数据处理完,给发送端发滑动窗口更新确认,告诉发送端可以发数据了。
7)发送端终止坚持定时器,接着发数据。由于发送端没有超时与重复确认,个人认为没有引起慢启动,而是拥塞避免。
保活定时器
滑动窗口的移动