在TCP的滑动窗协议中,我们可以把字节流看做四部分:
已经发送并确认的、已经发送未确认的、能够发送的、不能发送的,这四部分。
整体的窗口大小(即就是滑动窗口的大小)是按照通告方的窗口大小决定的,窗口里面分为两部分,一部分是等待确认的数据,一部分是可以发送的数据,首先,确认的话,是等待TCP回复一个确认报文段,确认已经收到了对端的数据,并且经过头部的16位校验和的数据校验之后,发现数据是正确的,才会给发送端回复确认报文段,发送端接收到这个确认报文段中的确认信息之后,滑动窗口的左边沿就会向右偏移,窗口的两个边沿的相对运动增加或减少了窗口的大小。我们使用三个术语来描述
(1)称窗口左边沿向右边沿靠近为“窗口合拢”。这种现象发生在数据被发送并确认时
(2)当窗口右边沿向右移动时将允许发送更多的数据,我们称之为“窗口张开”。这种现象发生在另一端的接受进程读取已经确认的数据并释放了 TCP的接收缓存时。
(3)当右边沿向左移动时,称为“窗口收缩”。这种情况一般不会发生。
问题1:
在TCP头部中有16位的窗口大小,这是TCP流量控制的一种手段,代表的是接收通告窗口(RWND),它告诉对方,本端TCP接收缓冲区还能容纳多
TCP ------ 滑动窗口协议
最新推荐文章于 2025-05-11 00:13:16 发布