TCP流量控制之滑动窗口协议:
TCP协议中,发送方和接收方均维护了一份窗口,窗口的大小就是TCP可以发送的数据帧数,在发送端,只有在发送窗口内的数据才允许被发送到接收端,而在接收端,也只有落到接收窗口的数据才允许被接收。这样通过不断滑动窗口实现数据的不断发送,也通过控制窗口的大小实现了流量控制。
滑动窗口的大小是由接收方数据缓冲区大小决定的,在连接建立时接收端便会将这些信息传送给发送端,然后发送端据此设置自己的滑动窗口大小。当然随着链路网络环境等变化,滑动窗口也是会变化的,以达到最优传输效率。

由上图我们可以总结滑动窗口的处理机制:
①窗口大小为6,最初在窗口内的为1/2/3/4/5/6六段数据报,此时TCP将六段数据报发送至接收端
②1,2,3三段数据报接收到了ack返回,4,5,6暂未收到ack,此时TCP认为1,2,3已被处理完成,则窗口向右滑动三格
③此时7/8/9三段数据报进入滑动窗口范围,则TCP可将7,8,9发送至接收端
④待4,5,6的ack报文收到,窗口将继续向右滑动,TCP根据此滑动窗口机制保证了数据不断发送至接收端,同时又充分考虑了接收端的接收效率,不至于导致不必要的网络堵塞
TCP阻塞控制之阻塞窗口:
<

本文介绍了TCP的流量控制和阻塞控制机制。通过滑动窗口协议,TCP确保了数据的发送考虑了接收端的处理效率,防止网络堵塞。阻塞窗口则根据网络状况动态调整,通过慢启动和拥塞避免算法找到最佳传输速率。此外,TCP还应对异常情况如定时器超时和报文失序,采用快重传和快恢复策略来恢复并调整窗口大小。
最低0.47元/天 解锁文章
995

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



