滑动窗口的工作原理
-
以
字节为单位。
如下图,假定A收到了B发来的确认报文段:其中窗口是20字节,确认号是31(表明B期望收到的下一个序号是31,30及之前的都已经收到了)
A根据B发来的确认报文段中的这两个数据,构造出了自己的发送窗口

在没有收到B的确认的情况下,A可以连续把窗口内的数据都发送出去。
凡是发送过的数据,在未收到对方的确认之前都必须暂时保留,以便在超时重传时使用。
发送窗口里面的序号表示允许发送的序号。
窗口越大,发送方就可以在收到对方确认之前连续发送更多的数据,因而获得更高的传输效率。
但是发送窗口的值一定不能超过接收窗口的值;发送方的发送窗口的大小受到网络拥塞程度和接收窗口的制约。
发送窗口后沿后面的的部分表示已发送且已收到了确认,这些数据不需要再保留了。
发送窗口前沿的前面部分表示不允许发送的,因为接收方都没有为这部分数据保留临时存放的缓存空间。
发送窗口的位置由窗口前沿和后沿的位置共同确定。
发送窗口后沿的变化有两种情况,不动(未收到新的确认)和前移(收到了新的确认)。注意发送窗口的后沿不可能向后移动,因为不能撤销掉已收到的确认,后面的被确认的数据

本文详细解释了滑动窗口的工作原理,包括发送窗口和接收窗口的概念、窗口与缓存的关系等。探讨了窗口大小如何影响传输效率,以及在网络通信中如何处理不按序到达的数据。
最低0.47元/天 解锁文章
2013

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



