首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >低延迟10 1GbE -> 1 1GbE网络的TCP拥塞控制

低延迟10 1GbE -> 1 1GbE网络的TCP拥塞控制
EN

Server Fault用户
提问于 2013-03-20 01:33:39
回答 1查看 2.1K关注 0票数 11

我有一个10 1GbE连接到交换机的服务器,以及10个客户端,每个客户端都有到同一个交换机的1GbE连接。

在每个客户机上并行运行nuttcp,我可以以接近有线的速度同时将10个TCP数据流推送到服务器(即从所有10个客户端同时提供100 on /秒)。

然而,当我反转方向并将数据从服务器发送到客户机--即10个TCP流,每个客户端-- TCP重传急剧上升,性能下降到每秒30、20甚至10兆字节/秒。我想得到这些数字,因为这个流量模式代表了我所关心的某些应用程序。

我已经证实,我的服务器能够通过10 the连接到类似的服务器上执行相同的实验,从而使10 the链路饱和。我已经证实我的任何端口上都没有错误。

最后,当我强行钳制(限制)接收器的TCP窗口大小时,我可以获得更高的带宽(30-40 to /秒);如果我将其钳制得极低,就可以使重传变为零(带宽非常低)。

因此,我有相当的信心,我是超过缓冲区在我的交换机,导致包丢失由于拥塞。然而,我认为TCP的拥塞控制应该能很好地处理这一问题,最终稳定在50%以上的线路速度。

所以我的第一个问题很简单:哪种TCP拥塞控制算法最适合我的情况?他们有很多可用的,但他们似乎主要是针对有损耗的网络或高带宽高延迟网络或无线网络.这些都不适用于我的情况。

第二个问题:还有什么我可以尝试的吗?

EN

回答 1

Server Fault用户

发布于 2013-03-22 04:11:18

  1. 您可能需要一种算法,在该算法中,当有丢包时,窗口大小不会急剧减小。正是窗口大小的急剧下降导致TCP流量的吞吐量突然下降。
  2. 如果您的开关和服务器支持流控制,请尝试启用流控制。如何工作,这几乎完全取决于开关的硅和固件。基本上,交换机将检测连接到客户端的端口上的出口拥塞,确定数据包来自何处,并将流控制帧发送到入口端口(即返回服务器)。如果服务器理解流控制帧,将降低传输速度。如果一切正常,您将获得最佳吞吐量,几乎零数据包下降发生在交换机的出口缓冲区。
票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/489484

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档