代码之家  ›  专栏  ›  技术社区  ›  dev_jongtae

Nagle算法和stop-and-wait算法有什么区别?

  •  0
  • dev_jongtae  · 技术社区  · 7 年前

    TCP_NODELAY ,用于打开或关闭Nagle alorithm。

    2 回复  |  直到 7 年前
        1
  •  1
  •   nos    7 年前

    • 向对等方发送消息
    • 等待该消息的确认
    • 发送下一条消息

    TCP中使用的Nagle算法与这个概念是正交的。当TCP应用程序发送一些数据时,协议会缓冲数据并等待一段时间,以查看是否有更多的数据要发送,而不是立即将数据发送给对等方。

    如果应用程序在这个小时间段内有更多的数据要发送,那么协议栈会将这些数据合并到当前缓冲区中,并可以将其作为一条大消息发送。

    这个概念也可以很好地应用于stop-and-go协议。(请注意,TCP不是停止等待协议)

        2
  •  0
  •   Remy Lebeau    7 年前

    这个 Nagle Algorithm 用于控制套接字提供程序是以较低效率的网络传输(off)为代价立即发送传出数据,还是缓冲传出数据以便以速度(on)为代价进行更有效的网络传输。

    Stop and Wait

    这两个功能相互独立地运行。