TCP - 拥塞窗口和接收窗口之间的区别

问题描述 投票:0回答:2

我尝试理解拥塞窗口和接收窗口之间的区别。

据我了解,接收器窗口是接收器可以获取数据包的缓冲区。拥塞窗口也是如此,它告诉我们接收器能力的界限,并根据丢失的数据包等情况而变化。

那么它们之间有什么区别呢?

tcp ip
2个回答
59
投票

给出一个简短的答案:接收窗口由接收方管理,接收方将窗口大小发送给发送方。窗口大小宣布接收缓冲区中仍然可用的字节数,即发送方仍然可以发送而无需接收方确认的字节数。

拥塞窗口是发送者强加的窗口,其实现是为了避免网络路径中间的某些路由器溢出。发送方在发送每个数据段时都会稍微增加拥塞窗口,即发送方将允许自己发送更多未完成的数据。但如果发送方检测到数据包丢失,它会将窗口减半。其背后的基本原理是,发送方假设由于某处缓冲区溢出而发生数据包丢失(这几乎总是正确的),因此发送方希望保留较少的“传输中”数据,以避免将来进一步丢失数据包。

欲了解更多信息,请从这里开始:https://en.wikipedia.org/wiki/Slow-start


-1
投票

最初,CongWindow 设置为等于一个数据包。然后,它将第一个数据包发送到网络并等待确认。如果在定时器超时之前对该数据包的确认到达,则发送方将 CongWindow 增加一个数据包并发送两个数据包。一旦所有这些数据包在超时之前得到确认,CongWindow 就会增加两倍——每个确认的数据段增加一个。现在 CongWindow 的大小是四个数据包,因此发送方传输四个数据包。只要 CongWindow 的大小低于阈值并且在相应的超时到期之前收到确认,这种指数增长就会持续下去。一个重要的区别是 CongWindow 的大小会发生变化,但接收窗口的大小始终保持不变。

© www.soinside.com 2019 - 2024. All rights reserved.