【问题标题】:TCP Congestion Window SizeTCP 拥塞窗口大小
【发布时间】:2013-09-19 12:42:26
【问题描述】:

我正在经历一些修改,但我被一个 TCP 问题难住了。也许有人可以给我一个快速提示或推动正确的方向,这样我就可以通过这一部分。

“为什么TCP中的发送实体在确定滑动窗口大小时需要考虑拥塞窗口的大小?”

【问题讨论】:

    标签: tcp window size sliding-window congestion-control


    【解决方案1】:

    “为什么TCP中的发送实体在确定滑动窗口大小时需要考虑拥塞窗口的大小?”

    这是因为拥塞窗口的大小代表了网络中可能出现的拥塞。这是 TCP 提供的关键特性之一。此窗口分三个阶段更新。

    在第一阶段,当 TCP 启动时,它以 1 MSS(Max Segment Size)的拥塞窗口开始,然后以缓慢启动的方式逐渐增加。 TCP 发送方从这个值开始,因为它正在“估计”它可以在网络中发送多少数据包。此阶段也称为慢启动阶段。顺便说一句,即使它被称为慢启动,TCP 通过将拥塞窗口加倍来增加数据包,并且增加发生在收到 ACK 时。

    在第二阶段,当拥塞窗口达到慢启动 (ss) 阈值时(是的,有一个!),TCP 发送方增加其拥塞窗口 - 这是拥塞避免阶段。在这里,发送者变得更加谨慎。再次,增加发生在收到 ACK 时。

    在第三阶段,当一个数据包被丢弃时(一个原因是发生了重传超时),然后 TCP 将其拥塞窗口切回 1 MSS 并重新启动以再次增长。这样做是因为遇到了可能的拥塞,因此缩短拥塞窗口可能会释放路径上的拥塞情况。与其他阶段不同,减少的原因是没有收到 ACK。

    【讨论】:

    • 供将来参考:A Rejected Edit 指出“最大段大小已增加到 10 个段”:此编辑旨在解决帖子的作者,作为编辑毫无意义.它应该写成评论或答案。
    【解决方案2】:

    TCP 可以使用滑动窗口的方法来调节需要发送给接收方的数据包。接收器还可以保留一个滑动窗口来跟踪哪些数据包已被接收以及哪些已被确认。在确定发送方的滑动窗口大小时,我们应该考虑拥塞窗口大小,因为我们不想压倒网络通道。网络中的实际流量为 min{awnd,cwnd},其中 awnd 是接收方向接收方通告的窗口大小,cwnd 表示拥塞窗口大小,其最大值会根据网络情况而变化。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-21
      • 2011-05-24
      • 1970-01-01
      • 2016-03-11
      • 1970-01-01
      • 2012-07-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多