小编Sam*_*Sam的帖子

1Gbps 服务器的 TCP 吞吐量低于大型 RTT 上的 100Mbps 服务器

我们的基础设施分布在世界各地的几个主要地点——新加坡、伦敦和洛杉矶。任意两个位置之间的 RTT 超过 150 毫秒。

我们最近升级了所有服务器以使用 1Gbps 链接(从 100Mbps)。我们一直在不同位置的服务器之间运行一些基于 TCP 的测试,并看到了一些令人惊讶的结果。这些结果是完全可重复的。

  1. 洛杉矶 (100Mbps) 到伦敦 (100Mbps):~96Mbps 吞吐量
  2. 洛杉矶 (100Mbps) 到伦敦 (1Gbps):~96Mbps 吞吐量
  3. 洛杉矶 (1Gbps) 到伦敦 (100Mbps):10-40Mbps吞吐量(不稳定)
  4. 洛杉矶 (1Gbps) 到伦敦 (1Gbps):10-40Mbps吞吐量(不稳定)
  5. 洛杉矶 (1Gbps) 到洛杉矶 (1Gbps):>900Mbps 吞吐量

似乎每当发送方以 1Gbps 的速度运行时,我们的吞吐量在长链接上都会受到很大影响。

之前的测试方法非常简单 - 我只是使用 cURL 从目标服务器下载一个 1GB 的二进制文件(因此在上述情况下,cURL 客户端在伦敦服务器上运行并从 LA 下载,因此 LA 是发送方) . 这当然是使用单个 TCP 连接。

使用 iperf 在 UDP 上重复相同的测试,问题就消失了!

  1. 洛杉矶 (100Mbps) 到伦敦 (100Mbps):~96Mbps 吞吐量
  2. 洛杉矶 (100Mbps) 到伦敦 (1Gbps):~96Mbps 吞吐量
  3. 洛杉矶 (1Gbps) 到伦敦 (100Mbps):~96Mbps 吞吐量
  4. 洛杉矶 (1Gbps) 到伦敦 …

networking tcp gigabit

9
推荐指数
1
解决办法
3916
查看次数

标签 统计

gigabit ×1

networking ×1

tcp ×1