【问题标题】:TCP slow start and congestion avoidance problems?TCP慢启动和拥塞避免问题?
【发布时间】:2011-06-30 13:12:12
【问题描述】:

我正在检查的痕迹有点问题。我知道如果窗口大小随着每个段之间发送的 ACK 数量的增加而增加,并且它会随着 ACK 段的大小而增加,则连接启动缓慢。但是,我的跟踪开始显示的数字不相加(下面的屏幕截图)。我不知道数据包 6 的窗口大小是如何计算的,因为数学并没有与之前的窗口大小和中间的 ACK 相加。任何人都可以对此有所了解吗?

我也不知道如何发现慢启动何时成为拥塞避免。跟踪中有什么我可以注意的吗?

慢启动似乎只持续到数据包 13,所以我应该假设拥塞避免已经接管了吗?

http://img10.imageshack.us/f/tcptrace.jpg/

感谢您提供的任何帮助!我真的很感激

【问题讨论】:

    标签: networking tcp wireshark packets congestion-control


    【解决方案1】:

    您以“我知道”开头的句子不正确,因此您感到困惑。您将接收方通告的接收窗口和发送方维护的拥塞窗口混为一谈,该窗口不会出现在数据包中,并且在慢启动期间在每个 ACK​​ 上 加倍。这里不是重申所有 RFC 2001 的地方,但我建议您再看看它。

    【讨论】:

    • 很奇怪,发现我把窗户弄糊涂了(几分钟前)并用谷歌搜索了“wireshark 中的拥塞控制”,这是搜索的第 7 个链接。无论如何,感谢您清除它,我将查看 RFC 2001 以查找拥塞窗口大小。
    • 还发现我的跟踪显示“.... 0... .... = Congestion Window Reduced (CWR): Not set”。这发生在每个数据包中。有没有办法找到拥塞大小?
    • 拥塞窗口大小没有出现在数据包中,如我上面所说。您不会从论坛中了解这一切。我建议你看看 Stevens,TCP/IP Illustrated, Volume 1。
    • 老实说,我想做的就是找出慢启动的开始和结束位置,以及使用时序图 (Stevens) 接管拥塞避免的位置。我可以看到慢从哪里开始,但看不到它在哪里结束,或者拥塞避免在哪里接管。我在 Stevens, TCP/IP Illustrated, Volume 1 书中有关于慢启动的部分,但它所做的只是定义它,而不是显示在哪里发现它。
    • 我原以为当窗口开始减小或数据包间隔再次开始增加时会出现拥塞避免。
    猜你喜欢
    • 2011-02-12
    • 1970-01-01
    • 2013-04-21
    • 2015-04-14
    • 2016-07-13
    • 1970-01-01
    • 2011-04-17
    • 2018-01-03
    • 1970-01-01
    相关资源
    最近更新 更多