解决低城域以太网TCP吞吐量问题


14

设置

我们已租用了几条租用的线路,这些线路将自己呈现为第2层网络,即,您在数据中心有一条大管道,而远程站点的管道则较小。在第2层网络中,您可以执行任何操作。他们可能使用802.1ad为每个客户在其网络内提供各自的网络。AFAICS大多数站点通过纯VDSL连接。

我们决定在每个站点上放置一个路由器,并为每个站点提供自己的VLAN。因此,DC上的防火墙定义的VLAN与站点的数量一样多。因此,每个站点在其自己的VLAN中使用其在地址范围。

网络图:

网络图

问题

现在,我们面临吞吐量问题:

  • 从站点到DC的FTP传输运行正常,速度约为10Mb / s。
  • 以6Mb / s或更低的速度运行从DC到站点的FTP传输无法正常工作。

发起转移的一方无关紧要。唯一一致的事情是,一个方向行之有效。不幸的是,这是通往站点的方向,因为这是我们最需要的带宽,因为我们要使用终端服务器客户端。

传输大约10秒钟后,吞吐量下降。嗅探时会看到DUP ACK。这可能导致我在提供商端限制速率?(目前,他们没有任何线索,我想确保在升级之前我们没有过错)

注意远程站点以某种方式限制为10Mb。将“切换到都会”端口设置为10Mb也不起作用。实际上,这是最糟糕的情况(最大30 KB / s)。设置为100Mb可以正常工作,但已经开始产生上述问题。1G同样。

问题的摘要可以在这里下载:

* http://178.63.11.6/dc-to-remote_dc-side.pcapng
* http://178.63.11.6/dc-to-remote_remote-side.pcapng

诊断程序

在该图像中,您会看到带有一些错误详细信息的Wireshark IO图:

  • 左侧:从DC到站点的FTP传输
  • 在右侧:FTP从站点传输到DC

重复的码头

如果另一方发起传输(即从直流放置,而不是从远程放置),则问题仍然没有改变。

请让我沉迷于您认为可能是这里的问题。


更新#1(上面集成)


更新#2 UPDATED

这一定是一个拥塞控制的东西。

请注意,从DC到远程,我们有10G-> 1G-> 100M-> 10M-> 1G链接。<-不起作用

因此,在另一个方向上,我们得到相反的结果:1G-> 10M-> 100M-> 1G-> 10G。<-很好

第一个“ 1G-> 10M”是远程站点上的“不可见” 10M,其中包括上行链路端口速度在内的所有内容都设置为1G,即使它后面只有10M(已出售)也是如此。

但是,DC上的100Mbps是实际的100Mbps,物理层上的接口配置为100Mbps。

我现在使用了iperf:

  • TCP测试只能在一个方向上正常工作(客户端= DC,服务器=远程)
./iperf -c 192.168.x -i2 -t 60 -r
-------------------------------------------------- ----------
服务器在TCP端口5001上侦听
TCP窗口大小:85.3 KByte(默认)
-------------------------------------------------- ----------
-------------------------------------------------- ----------
客户端连接到192.168.x,TCP端口5001
TCP视窗大小:16.0 KB(默认值)
-------------------------------------------------- ----------
[3]本地10.x端口38195与192.168.x端口5001连接
[3] 0.0- 2.0秒1.44 MBytes 6.03 Mbits / sec
[3] 2.0- 4.0秒2.23 MBytes 9.37 Mbits / sec
[3] 4.0- 6.0秒2.28 MBytes 9.57 Mbits / sec
[3] 6.0- 8.0秒1.88 MBytes 7.90 Mbits / sec
[3] 8.0-10.0秒1.00 MBytes 4.19 Mbits / sec
[3] 10.0-12.0秒1.30 MBytes 5.47 Mbits / sec
[3] 12.0-14.0秒688 KB 2.82 Mbits /秒
[3] 14.0-16.0秒840 KB 3.44 Mbits /秒
[3] 16.0-18.0秒1.03 MBytes 4.33 Mbits / sec
[3] 18.0-20.0秒1.01 MBytes 4.23 Mbits / sec
[3] 20.0-22.0秒1.03 MBytes 4.33 Mbits / sec
[3] 22.0-24.0秒1.18 MBytes 4.95 Mbits / sec
[3] 24.0-26.0秒904 KBytes 3.70 Mbits / sec
[3] 26.0-28.0秒840 KB 3.44 Mbits /秒
[3] 28.0-30.0秒936 KB 3.83 Mbits /秒
[3] 30.0-32.0秒1.09兆字节4.59兆比特/秒
[3] 32.0-34.0秒960 KBytes 3.93 Mbits / sec
[3] 34.0-36.0秒752 KB 3.08 Mbits /秒
[3] 36.0-38.0秒1.09兆字节4.59兆比特/秒
[3] 38.0-40.0秒1.09兆字节4.59兆比特/秒
[3] 40.0-42.0秒840 KB 3.44 Mbits /秒
[3] 42.0-44.0秒1.27 MBytes 5.34 Mbits / sec
[3] 44.0-46.0秒1.16 MBytes 4.85 Mbits / sec
[3] 46.0-48.0秒840 KB 3.44 Mbits /秒
[3] 48.0-50.0秒960 KBytes 3.93 Mbits / sec
[3] 50.0-52.0秒1.28 MBytes 5.37 Mbits / sec
[3] 52.0-54.0秒1.09兆字节4.59兆比特/秒
[3] 54.0-56.0秒992 KB 4.06 Mbits /秒
[3] 56.0-58.0秒1.00 MBytes 4.19 Mbits / sec
[3] 58.0-60.0秒1.09兆字节4.59兆比特/秒
[3] 0.0-60.2秒33.9 MBytes 4.73 Mbits / sec
[5]本地10.x端口5001与192.168.x端口10965连接
[5] 0.0- 2.0秒1.85 MBytes 7.75 Mbits / sec
[5] 2.0- 4.0秒1.90 MBytes 7.98 Mbits / sec
[5] 4.0- 6.0秒1.89 MBytes 7.93 Mbits / sec
[5] 6.0- 8.0秒1.92 MBytes 8.07 Mbits / sec
[5] 8.0-10.0秒1.91 MBytes 8.02 Mbits / sec
[5] 10.0-12.0秒1.83 MBytes 7.69 Mbits / sec
[5] 12.0-14.0秒1.86 MBytes 7.78 Mbits / sec
[5] 14.0-16.0秒1.79 MBytes 7.52 Mbits / sec
[5] 16.0-18.0秒1.79 MBytes 7.52 Mbits / sec
[5] 18.0-20.0秒1.89 MBytes 7.91 Mbits / sec
[5] 20.0-22.0秒1.91 MBytes 8.00 Mbits / sec
[5] 22.0-24.0秒1.88 MBytes 7.91 Mbits / sec
[5] 24.0-26.0秒1.95 MBytes 8.16 Mbits / sec
[5] 26.0-28.0秒1.90 MBytes 7.99 Mbits / sec
[5] 28.0-30.0秒1.87 MBytes 7.84 Mbits / sec
[5] 30.0-32.0秒1.85 MBytes 7.77 Mbits / sec
[5] 32.0-34.0秒1.55 MBytes 6.49 Mbits / sec
[5] 34.0-36.0秒1.92 MBytes 8.07 Mbits / sec
[5] 36.0-38.0秒1.90 MBytes 7.99 Mbits / sec
[5] 38.0-40.0秒1.84 MBytes 7.73 Mbits / sec
[5] 40.0-42.0秒1.66 MBytes 6.95 Mbits / sec
[5] 42.0-44.0秒1.92 MBytes 8.07 Mbits / sec
[5] 44.0-46.0秒1.91 MBytes 7.99 Mbits / sec
[5] 46.0-48.0秒1.90 MBytes 7.98 Mbits / sec
[5] 48.0-50.0秒1.84 MBytes 7.70 Mbits / sec
[5] 50.0-52.0秒1.93 MBytes 8.09 Mbits / sec
[5] 52.0-54.0秒1.80 MBytes 7.54 Mbits / sec
[5] 54.0-56.0秒1.83 MBytes 7.67 Mbits / sec
[5] 56.0-58.0秒1.88 MBytes 7.86 Mbits / sec
[5] 58.0-60.0秒1.85 MBytes 7.78 Mbits / sec
[5] 0.0-60.3秒56.0 MBytes 7.79 Mbits / sec
  • 深入了解一下,这是来自同一VLAN中两台主机但仍使用Metro连接的UDP测试,200 =远程,201 = DC

我们看到数据包丢失随着带宽的增加而增加(当接近10Mbps时,我们的速率为0.93%,开始变得非常关键...并且还将解释为什么TCP在执行时会出现问题)

++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++
C:\ iperf-2.0.5-2-win32> iperf -c 192.168.191.200 -i 1 -t 20 -r -u
++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++
-------------------------------------------------- ----------
服务器在UDP端口5001上侦听
接收1470字节数据报
UDP缓冲区大小:64.0 KB(默认)
-------------------------------------------------- ----------
-------------------------------------------------- ----------
客户端连接到192.168.191.200,UDP端口5001
发送1470字节数据报
UDP缓冲区大小:64.0 KB(默认)
-------------------------------------------------- ----------
[4]本地192.168.191.201端口61759与192.168.191.200端口5001连接
[ID]间隔传输带宽
[4] 0.0- 1.0秒128 KB 1.05 Mbits /秒
[4] 1.0- 2.0秒128 KBytes 1.05 Mbits / sec
[4] 2.0- 3.0秒129 KBytes 1.06 Mbits / sec
[4] 3.0- 4.0秒128 KBytes 1.05 Mbits / sec
[4] 4.0- 5.0秒128 KBytes 1.05 Mbits / sec
[4] 5.0- 6.0秒128 KB 1.05 Mbits /秒
[4] 6.0- 7.0秒128 KB 1.05 Mbits /秒
[4] 7.0- 8.0秒128 KB 1.05 Mbits /秒
[4] 8.0- 9.0秒128 KBytes 1.05 Mbits / sec
[4] 9.0-10.0秒129 KB 1.06 Mbits /秒
[4] 10.0-11.0秒128 KB 1.05 Mbits /秒
[4] 11.0-12.0秒128 KB 1.05 Mbits /秒
[4] 12.0-13.0秒128 KB 1.05 Mbits /秒
[4] 13.0-14.0秒128 KB 1.05 Mbits /秒
[4] 14.0-15.0秒128 KB 1.05 Mbits /秒
[4] 15.0-16.0秒128 KB 1.05 Mbits /秒
[4] 16.0-17.0秒128 KB 1.05 Mbits /秒
[4] 17.0-18.0秒128 KB 1.05 Mbits /秒
[4] 18.0-19.0秒131 KB 1.07 Mbits /秒
[4] 19.0-20.0秒128 KBytes 1.05 Mbits / sec
[4] 0.0-20.0秒2.50 MBytes 1.05 Mbits / sec
[4]发送1785个数据报
[4]服务器报告:
[4] 0.0-20.0秒2.50 MBytes 1.05 Mbits / sec 0.257 ms 0/1785(0%)
[3]本地192.168.191.201端口5001与192.168.191.200端口50749连接
[3] 0.0- 1.0秒128 KB 1.05 Mbits /秒0.285 ms 0/89(0%)
[3] 1.0- 2.0秒128 KB 1.05 Mbits /秒0.313 ms 0/89(0%)
[3] 2.0- 3.0秒128 KB 1.05 Mbits /秒0.278 ms 0/89(0%)
[3] 3.0- 4.0秒128 KB 1.05 Mbits /秒0.241 ms 0/89(0%)
[3] 4.0- 5.0秒128 KB 1.05 Mbits /秒0.266 ms 0/89(0%)
[3] 5.0- 6.0秒128 KB 1.05 Mbits /秒0.293 ms 0/89(0%)
[3] 6.0- 7.0秒128 KBytes 1.05 Mbits / sec 0.314 ms 0/89(0%)
[3] 7.0- 8.0秒128 KB 1.05 Mbits /秒0.280 ms 0/89(0%)
[3] 8.0- 9.0秒128 KBytes 1.05 Mbits / sec 0.242 ms 0/89(0%)
[3] 9.0-10.0秒129 KBytes 1.06 Mbits / sec 0.250 ms 0/90(0%)
[3] 10.0-11.0秒128 KB 1.05 Mbits /秒0.275 ms 0/89(0%)
[3] 11.0-12.0秒128 KB 1.05 Mbits /秒0.299 ms 0/89(0%)
[3] 12.0-13.0秒128 KBytes 1.05 Mbits / sec 0.327 ms 0/89(0%)
[3] 13.0-14.0秒128 KB 1.05 Mbits /秒0.290 ms 0/89(0%)
[3] 14.0-15.0秒128 KB 1.05 Mbits /秒0.251 ms 0/89(0%)
[3] 15.0-16.0秒128 KB 1.05 Mbits /秒0.275 ms 0/89(0%)
[3] 16.0-17.0秒128 KBytes 1.05 Mbits / sec 0.303 ms 0/89(0%)
[3] 17.0-18.0秒128 KB 1.05 Mbits /秒0.333 ms 0/89(0%)
[3] 18.0-19.0秒128 KB 1.05 Mbits /秒0.294 ms 0/89(0%)
[3] 19.0-20.0秒131 KB 1.07 Mbits /秒0.281 ms 0/91(0%)
[3] 0.0-20.0秒2.50 MBytes 1.05 Mbits / sec 0.305 ms 0/1785(0%)

++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++
C:\ iperf-2.0.5-2-win32> iperf -c 192.168.191.200 -i 1 -t 20 -r -u -b 5m
++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++
-------------------------------------------------- ----------
服务器在UDP端口5001上侦听
接收1470字节数据报
UDP缓冲区大小:64.0 KB(默认)
-------------------------------------------------- ----------
-------------------------------------------------- ----------
客户端连接到192.168.191.200,UDP端口5001
发送1470字节数据报
UDP缓冲区大小:64.0 KB(默认)
-------------------------------------------------- ----------
[4]本地192.168.191.201端口61760与192.168.191.200端口5001连接
[ID]间隔传输带宽
[4] 0.0- 1.0秒610 KBytes 5.00 Mbits / sec
[4] 1.0- 2.0秒609 KB 4.99 Mbits /秒
[4] 2.0- 3.0秒610 KBytes 5.00 Mbits / sec
[4] 3.0- 4.0秒609 KB 4.99 Mbits /秒
[4] 4.0- 5.0秒610 KBytes 5.00 Mbits / sec
[4] 5.0- 6.0秒609 KB 4.99 Mbits /秒
[4] 6.0- 7.0秒610 KBytes 5.00 Mbits / sec
[4] 7.0- 8.0秒609 KB 4.99 Mbits /秒
[4] 8.0- 9.0秒610 KBytes 5.00 Mbits / sec
[4] 9.0-10.0秒619 KB 5.07 Mbits /秒
[4] 10.0-11.0秒610 KBytes 5.00 Mbits / sec
[4] 11.0-12.0秒609 KB 4.99 Mbits /秒
[4] 12.0-13.0秒609 KB 4.99 Mbits /秒
[4] 13.0-14.0秒610 KBytes 5.00 Mbits / sec
[4] 14.0-15.0秒609 KB 4.99 Mbits /秒
[4] 15.0-16.0秒610 KBytes 5.00 Mbits / sec
[4] 16.0-17.0秒609 KB 4.99 Mbits /秒
[4] 17.0-18.0秒610 KBytes 5.00 Mbits / sec
[4] 18.0-19.0秒619 KB 5.07 Mbits /秒
[4] 19.0-20.0秒609 KB 4.99 Mbits /秒
[4] 0.0-20.0秒11.9 MBytes 5.00 Mbits / sec
[4]发送了8504个数据报
[4]服务器报告:
[4] 0.0-20.0秒11.9兆字节4.99兆比特/秒0.000毫秒12/8503(0.14%)
[4] 0.0-20.0秒1乱序接收数据报
[3]本地192.168.191.201端口5001与192.168.191.200端口50750连接
[3] 0.0- 1.0秒606 KBytes 4.96 Mbits / sec 2.238 ms 1/423(0.24%)
[3] 1.0- 2.0秒610 KBytes 5.00 Mbits / sec 2.739 ms 0/425(0%)
[3] 2.0- 3.0秒609 KB 4.99 Mbits /秒3.089 ms 1/425(0.24%)
[3] 3.0- 4.0秒609 KB 4.99 Mbits /秒3.605 ms 0/424(0%)
[3] 4.0- 5.0秒607 KBytes 4.97 Mbits / sec 1.954 ms 0/423(0%)
[3] 5.0- 6.0秒612 KB 5.01 Mbits /秒2.666 ms 0/426(0%)
[3] 6.0- 7.0秒607 KBytes 4.97 Mbits / sec 2.602 ms 0/423(0%)
[3] 7.0- 8.0秒612 KB 5.01 Mbits /秒2.960 ms 0/426(0%)
[3] 8.0- 9.0秒609 KB 4.99 Mbits /秒2.512 ms 0/424(0%)
[3] 9.0-10.0秒619 KB 5.07 Mbits /秒2.133 ms 0/431(0%)
[3] 10.0-11.0秒609 KB 4.99 Mbits /秒3.605 ms 1/425(0.24%)
[3] 11.0-12.0秒609 KBytes 4.99 Mbits / sec 2.509 ms 0/424(0%)
[3] 12.0-13.0秒610 KBytes 5.00 Mbits / sec 3.570 ms 0/425(0%)
[3] 13.0-14.0秒609 KBytes 4.99 Mbits / sec 3.077 ms 1/425(0.24%)
[3] 14.0-15.0秒609 KB 4.99 Mbits /秒2.679 ms 0/424(0%)
[3] 15.0-16.0秒609 KB 4.99 Mbits /秒1.887 ms 0/424(0%)
[3] 16.0-17.0秒610 KBytes 5.00 Mbits / sec 2.651 ms 0/425(0%)
[3] 17.0-18.0秒609 KBytes 4.99 Mbits / sec 3.390 ms 0/424(0%)
[3] 18.0-19.0秒617 KB 5.06 Mbits /秒2.601 ms 0/430(0%)
[3] 19.0-20.0秒612 KBytes 5.01 Mbits / sec 3.525 ms 0/426(0%)
[3] 0.0-20.0秒11.9 MBytes 4.99 Mbits / sec 3.156 ms 3/8503(0.035%)
[3] 0.0-20.0秒1个数据报无序接收

++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++
C:\ iperf-2.0.5-2-win32> iperf -c 192.168.191.200 -i 1 -t 20 -r -u -b 9m
++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++
-------------------------------------------------- ----------
服务器在UDP端口5001上侦听
接收1470字节数据报
UDP缓冲区大小:64.0 KB(默认)
-------------------------------------------------- ----------
-------------------------------------------------- ----------
客户端连接到192.168.191.200,UDP端口5001
发送1470字节数据报
UDP缓冲区大小:64.0 KB(默认)
-------------------------------------------------- ----------
[4]本地192.168.191.201端口61761与192.168.191.200端口5001连接
[ID]间隔传输带宽
[4] 0.0- 1.0秒1.07 MBytes 9.00 Mbits / sec
[4] 1.0- 2.0秒1.07 MBytes 8.98 Mbits / sec
[4] 2.0- 3.0秒1.07 MBytes 9.00 Mbits / sec
[4] 3.0- 4.0秒1.07 MBytes 8.98 Mbits / sec
[4] 4.0- 5.0秒1.07 MBytes 9.00 Mbits / sec
[4] 5.0- 6.0秒1.07兆字节8.98兆比特/秒
[4] 6.0- 7.0秒1.07兆字节8.98兆比特/秒
[4] 7.0- 8.0秒1.07 MBytes 9.00 Mbits / sec
[4] 8.0- 9.0秒1.07兆字节8.98兆比特/秒
[4] 9.0-10.0秒1.09 MBytes 9.14 Mbits / sec
[4] 10.0-11.0秒1.07 MBytes 9.00 Mbits / sec
[4] 11.0-12.0秒1.07 MBytes 8.98 Mbits / sec
[4] 12.0-13.0秒1.07兆字节8.98兆比特/秒
[4] 13.0-14.0秒1.07 MBytes 9.00 Mbits / sec
[4] 14.0-15.0秒1.07 MBytes 8.98 Mbits / sec
[4] 15.0-16.0秒1.07 MBytes 9.00 Mbits / sec
[4] 16.0-17.0秒1.07 MBytes 8.98 Mbits / sec
[4] 17.0-18.0秒1.07兆字节8.98兆比特/秒
[4] 18.0-19.0秒1.09 MBytes 9.14 Mbits / sec
[4] 19.0-20.0秒1.07 MBytes 9.00 Mbits / sec
[4] 0.0-20.0秒21.5 MBytes 9.00 Mbits / sec
[4]发送了15315个数据报
[4]服务器报告:
[4] 0.0-20.0秒21.3 MBytes 8.94 Mbits / sec 0.104 ms 96/15314(0.63%)!!!!!!!!!!
[4] 0.0-20.0秒1乱序接收数据报
[3]本地192.168.191.201端口5001与192.168.191.200端口50751连接
[3] 0.0- 1.0秒1.06 MBytes 8.89 Mbits / sec 2.405 ms 0/756(0%)
[3] 1.0- 2.0秒1.07 MBytes 9.00 Mbits / sec 2.308 ms 0/765(0%)
[3] 2.0- 3.0秒1.07 MBytes 9.00 Mbits / sec 2.305 ms 0/765(0%)
[3] 3.0- 4.0秒1.07 MBytes 8.97 Mbits / sec 2.290 ms 1/764(0.13%)
[3] 4.0- 5.0秒1.07 MBytes 8.98 Mbits / sec 2.271 ms 1/765(0.13%)
[3] 5.0- 6.0秒1.07兆字节8.98兆比特/秒2.313毫秒0/764(0%)
[3] 6.0- 7.0秒1.07 MBytes 9.00 Mbits / sec 2.191 ms 0/765(0%)
[3] 7.0- 8.0秒1.07兆字节8.95兆比特/秒2.314毫秒3/764(0.39%)
[3] 8.0- 9.0秒1.07兆字节8.98兆比特/秒2.232毫秒1/765(0.13%)
[3] 9.0-10.0秒1.09 MBytes 9.13 Mbits / sec 2.257 ms 0/776(0%)
[3] 10.0-11.0秒1.07 MBytes 8.98 Mbits / sec 2.365 ms 0/764(0%)
[3] 11.0-12.0秒1.07兆字节8.98兆比特/秒2.301毫秒1/765(0.13%)
[3] 12.0-13.0秒1.07 MBytes 8.98 Mbits / sec 2.277 ms 0/764(0%)
[3] 13.0-14.0秒1.07 MBytes 9.00 Mbits / sec 2.323 ms 0/765(0%)
[3] 14.0-15.0秒1.07 MBytes 9.00 Mbits / sec 2.176 ms 0/765(0%)
[3] 15.0-16.0秒1.07 MBytes 8.96 Mbits / sec 2.273 ms 2/764(0.26%)
[3] 16.0-17.0秒1.07 MBytes 8.98 Mbits / sec 2.313 ms 0/764(0%)
[3] 17.0-18.0秒1.07 MBytes 8.98 Mbits / sec 2.247 ms 1/765(0.13%)
[3] 18.0-19.0秒1.09 MBytes 9.11 Mbits / sec 2.276 ms 1/776(0.13%)
[3] 19.0-20.0秒1.07 MBytes 8.97 Mbits / sec 2.394 ms 1/764(0.13%)
[3] 0.0-20.0秒21.5 MBytes 8.99 Mbits / sec 2.659 ms 11/15314(0.072%)
[3] 0.0-20.0秒1个数据报无序接收

++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++
C:\ iperf-2.0.5-2-win32> iperf -c 192.168.191.200 -i 1 -t 20 -r -u -b 9850k
++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++
-------------------------------------------------- ----------
服务器在UDP端口5001上侦听
接收1470字节数据报
UDP缓冲区大小:64.0 KB(默认)
-------------------------------------------------- ----------
-------------------------------------------------- ----------
客户端连接到192.168.191.200,UDP端口5001
发送1470字节数据报
UDP缓冲区大小:64.0 KB(默认)
-------------------------------------------------- ----------
[4]本地192.168.191.201端口61762与192.168.191.200端口5001连接
[ID]间隔传输带宽
[4] 0.0- 1.0秒1.17 MBytes 9.84 Mbits / sec
[4] 1.0- 2.0秒1.17 MBytes 9.84 Mbits / sec
[4] 2.0- 3.0秒1.17 MBytes 9.84 Mbits / sec
[4] 3.0- 4.0秒1.17 MBytes 9.84 Mbits / sec
[4] 4.0- 5.0秒1.17 MBytes 9.84 Mbits / sec
[4] 5.0- 6.0秒1.17 MBytes 9.83 Mbits / sec
[4] 6.0- 7.0秒1.17 MBytes 9.84 Mbits / sec
[4] 7.0- 8.0秒1.17 MBytes 9.84 Mbits / sec
[4] 8.0- 9.0秒1.17 MBytes 9.84 Mbits / sec
[4] 9.0-10.0秒1.19 MBytes 10.0 Mbits / sec
[4] 10.0-11.0秒1.17 MBytes 9.84 Mbits / sec
[4] 11.0-12.0秒1.17 MBytes 9.84 Mbits / sec
[4] 12.0-13.0秒1.17 MBytes 9.83 Mbits / sec
[4] 13.0-14.0秒1.17 MBytes 9.85 Mbits / sec
[4] 14.0-15.0秒1.17 MBytes 9.83 Mbits / sec
[4] 15.0-16.0秒1.17 MBytes 9.85 Mbits / sec
[4] 16.0-17.0秒1.17 MBytes 9.83 Mbits / sec
[4] 17.0-18.0秒1.17 MBytes 9.84 Mbits / sec
[4] 18.0-19.0秒1.19 MBytes 10.0 Mbits / sec
[4] 19.0-20.0秒1.17 MBytes 9.84 Mbits / sec
[4] 0.0-20.0秒23.5 MBytes 9.85 Mbits / sec
[4]发送了16765个数据报
[4]服务器报告:
[4] 0.0-20.0秒23.3 MBytes 9.74 Mbits / sec 3.421 ms 156/16764(0.93%)!!!!!!!!!!
[4] 0.0-20.0秒1乱序接收数据报
[3]本地192.168.191.201端口5001与192.168.191.200端口50752连接
[3] 0.0- 1.0秒1.16 MBytes 9.74 Mbits / sec 2.131 ms 0/828(0%)
[3] 1.0- 2.0秒1.17 MBytes 9.84 Mbits / sec 2.140 ms 0/837(0%)
[3] 2.0- 3.0秒1.17 MBytes 9.83 Mbits / sec 2.099 ms 1/837(0.12%)
[3] 3.0- 4.0秒1.17 MBytes 9.84 Mbits / sec 2.113 ms 0/837(0%)
[3] 4.0- 5.0秒1.17 MBytes 9.84 Mbits / sec 2.105 ms 0/837(0%)
[3] 5.0- 6.0秒1.17 MBytes 9.83 Mbits / sec 2.058 ms 1/837(0.12%)
[3] 6.0- 7.0秒1.17 MBytes 9.82 Mbits / sec 2.165 ms 1/836(0.12%)
[3] 7.0- 8.0秒1.17 MBytes 9.84 Mbits / sec 2.156 ms 0/837(0%)
[3] 8.0- 9.0秒1.17 MBytes 9.82 Mbits / sec 2.135 ms 2/837(0.24%)
[3] 9.0-10.0秒1.19 MBytes 9.97 Mbits / sec 2.152 ms 2/850(0.24%)
[3] 10.0-11.0秒1.17 MBytes 9.83 Mbits / sec 2.153 ms 1/837(0.12%)
[3] 11.0-12.0秒1.17 MBytes 9.84 Mbits / sec 2.127 ms 0/837(0%)
[3] 12.0-13.0秒1.17 MBytes 9.83 Mbits / sec 2.136 ms 1/837(0.12%)
[3] 13.0-14.0秒1.17 MBytes 9.82 Mbits / sec 2.087 ms 2/837(0.24%)
[3] 14.0-15.0秒1.17 MBytes 9.83 Mbits / sec 2.061 ms 1/837(0.12%)
[3] 15.0-16.0秒1.17 MBytes 9.84 Mbits / sec 2.045 ms 0/837(0%)
[3] 16.0-17.0秒1.17 MBytes 9.82 Mbits / sec 2.203 ms 1/836(0.12%)
[3] 17.0-18.0秒1.17 MBytes 9.84 Mbits / sec 2.165 ms 0/837(0%)
[3] 18.0-19.0秒1.17 MBytes 9.83 Mbits / sec 2.154 ms 1/837(0.12%)
[3] 19.0-20.0秒1.19 MBytes 9.98 Mbits / sec 2.209 ms 0/849(0%)
[3] 0.0-20.0秒23.5 MBytes 9.84 Mbits / sec 2.548 ms 13/16764(0.078%)
[3] 0.0-20.0秒1个数据报无序接收

真正的问题仍然是:

我们并没有超额订购DC链路,因为DC链路的速度为100Mbps,并且发送的速度不能超过100Mbps。但是,远程站点的速度为10Mbps。

  • 远端的缓冲区是否溢出和丢包?
  • 提供者的流量整形器是否对流量有所作为?(来自另一个节点的流量会受到ISP流量整形器的影响还是受到(从外部)进入该节点的流量的影响?)……您明白我的意思吗?

TCP为什么不能独自处理所有这些?


更新#3 我现在使用以下场景:

Laptop ------- ... LAN ... --- DC switch --- Metro-Eth --- Laptop (directly connected)
NIC@10Mbps                       100Mbps                  NIC@10Mbps

这是DC->远程方向上的数据包丢失:(iperf 9 Mbps UDP测试)

[  3] local 192.168.191.200 port 5001 connected with 192.168.191.201 port 55236
[ ID] Interval       Transfer     Bandwidth        Jitter   Lost/Total Datagrams
[  3]  0.0- 1.0 sec   912 KBytes  7.47 Mbits/sec   2.713 ms    0/  635 (0%)
[  3]  1.0- 2.0 sec  1001 KBytes  8.20 Mbits/sec   2.168 ms    0/  697 (0%)
[  3]  2.0- 3.0 sec  1001 KBytes  8.20 Mbits/sec   2.478 ms    0/  697 (0%)
[  3]  3.0- 4.0 sec   999 KBytes  8.18 Mbits/sec   0.933 ms    0/  696 (0%)
[  3]  4.0- 5.0 sec  1001 KBytes  8.20 Mbits/sec   2.620 ms    0/  697 (0%)
[  3]  5.0- 6.0 sec  1001 KBytes  8.20 Mbits/sec   2.721 ms    0/  697 (0%)
[  3]  6.0- 7.0 sec  1001 KBytes  8.20 Mbits/sec   2.089 ms    0/  697 (0%)
[  3]  7.0- 8.0 sec   999 KBytes  8.18 Mbits/sec   2.641 ms    0/  696 (0%)
[  3]  8.0- 9.0 sec  1002 KBytes  8.21 Mbits/sec   0.896 ms    0/  698 (0%)
[  3]  9.0-10.0 sec  1015 KBytes  8.31 Mbits/sec   2.557 ms    0/  707 (0%)
[  3] 10.0-11.0 sec   999 KBytes  8.18 Mbits/sec   2.822 ms    1/  697 (0.14%)
[  3] 11.0-12.0 sec   999 KBytes  8.18 Mbits/sec   1.551 ms    1/  697 (0.14%)
[  3] 12.0-13.0 sec   998 KBytes  8.17 Mbits/sec   2.504 ms    2/  697 (0.29%)
[  3] 13.0-14.0 sec   995 KBytes  8.15 Mbits/sec   2.038 ms    3/  696 (0.43%)
[  3] 14.0-15.0 sec   991 KBytes  8.11 Mbits/sec   2.539 ms    7/  697 (1%)
[  3] 15.0-16.0 sec   992 KBytes  8.13 Mbits/sec   2.759 ms    6/  697 (0.86%)
[  3] 16.0-17.0 sec   998 KBytes  8.17 Mbits/sec   2.229 ms    2/  697 (0.29%)
[  3] 17.0-18.0 sec   993 KBytes  8.14 Mbits/sec   2.723 ms    4/  696 (0.57%)
[  3] 18.0-19.0 sec   998 KBytes  8.17 Mbits/sec   2.038 ms    2/  697 (0.29%)
[  3] 19.0-20.0 sec  1012 KBytes  8.29 Mbits/sec   2.575 ms    3/  708 (0.42%)
[  3]  0.0-20.0 sec  19.5 MBytes  8.15 Mbits/sec   2.775 ms   31/13917 (0.22%)
[  3]  0.0-20.0 sec  1 datagrams received out-of-order

另一个方向很好。但是,在运行TCP测试时,remote-> DC方向的性能不会比DC-> remote方向(约5Mbps)好很多。

我不确定我们是否触底。


并不是一个真正的答案,但我的建议是获得一个JDSU并测试该电路。如果他们在监管您,请确保您获得策略调节器,“调节器”,设置...如果他们的CBS很小,那么它们会将TCP流量限制在实质上较小的窗口大小。您可以通过后退2后退测试对此进行测试。我花了很多时间与L2电路的提供者进行反复交流,以了解当我们进行新的电路测试时,不仅要在CIR处而且要在CBS处进行彻底的测试……
matak

另外,请注意一下。从Windows OS到Linux,TCP吞吐量将有所不同,因为TCP设置将有所不同。即。缓冲区大小,算法等。您可以通过sysctl不确定Windows 来查看Linux机器的设置netsh。如果我要猜测一下您的电路出了什么问题,我会说,在分支站点的CPE设置的CBS比集线器端大……通常是相反的。同样,JDSU会将球打向他们,或者让您重新关注问题所在。
matak 2014年

@matak为什么不对您的发言作其他回答?当我们谈论成形器时,我在哪里可以想象到该设备?DC处有一个RJ45插头,没有(可见)CPE。在远程站点,我主要有一个VDSL调制解调器和某种支持MPLS的路由器。不确定他们是否使用MPLS。而且,整形器会向哪个方向行驶?我们可以对ingress @ spoke(来自站点),egress @ spoke(针对ISP的云),ingress @ hub(来自DC),egress @ hub(针对ISP的云)进行整形……我可能错过了大局。您能说明为什么CBS的问题会成为问题吗?
Marki 2014年

Answers:


20

引用我们的Stack Exchange 聊天 ...

短篇小说,你需要控制速度的不匹配的城域以太网链路的两侧......我重新规划了您的图表为清楚起见...... 注1

问题图

  • DC(以绿色显示)从10GE到100M的转换非常快...这是100倍的速度转换,您通常需要实施某种形式的qos(例如整形)来减轻这种大的转换。请参阅此答案的底部以获取DC需要整形的证据(每个站点)...
  • 远端从1GE到10M CIR的转换非常快……这又是100倍的速度转换。通常需要整形或其他qos解决方法。
  • DC UNI(100M)和远程UNI(10M)之间似乎也存在速度不匹配;这本身就是一个针对每个站点的带宽管理解决方案。

仅供参考,如果您的提供商实施了符合MEF的服务,则它们没有在整形,而是在监管通过整形, TCP流量往往表现更好

需要自己的QoS

你似乎质疑对QoS的需求,所以我会从引用MEF“了解运营商级以太网吞吐量”白皮书,第9页...通过审查方式,在MEF白皮书的图2中的客户有更好的情况比你做的。 ..他们购买了50Mbps的CIR,但是他们的UNI是在1GE上交付的...您的远程站点在1GE UNI上有10Mbps的CIR。

The transition from legacy services such as T1, T3, Frame Relay and ATM
to Carrier Ethernet has created some unintended consequences. Not all customers have 
conforming equipment facing the network which properly limits/shapes the traffic outbound
to the network, with deleterious results.  For instance, on the 1 GigE interface of
Figure 2, if the customer’s equipment accidentally transmits long bursts of data at 
150 Mbits instead of the SLA’s Committed Information Rate of 50 Mbits, 67% of the data 
may be lost and network breakdown will likely result.

在编辑中回应其他TCP问题...

我们并没有超额订购DC链路,因为DC链路的速度为100Mbps,并且不能发送超过100Mbps的数据...

我不同意,您可以在10GE 发送microburst,因为您的DC具有10GE链路,但是Metro UNI是100Mbps。一个未解决的问题是,当您从10GE过渡到100M时,Enterasys LAN交换机(交换机A)上有多少缓冲。

TCP为什么不能独自处理所有这些?

TCP会在看到数据包丢失时放慢速度,从而处理问题……它确实会因严重的数据包丢失而放慢速度(并可能中止连接)。因此,TCP正在做应做的事情……作为一名网络工程师,您的目标是建立一个使TCP满意的条件的网络。

聊天中的其他TCP问题

Marki说:我不明白在什么地方,由谁,为什么以及为什么丢弃的内容,TCP不能简单地处理一个事实,即一端实际存在100Mb,而另一端仅有10Mbps。

关于TCP的缓冲需求以及无缓冲的后果

事实1:TCP需要缓冲以进行速度转换,因为它被设计为反馈控制系统

打个比方:作为优秀的驾驶员,我们总是在我们和前方的汽车之间留出几秒钟的空间;在某些方面,汽车之间的空间大致类似于网络缓冲区。如果有动物在他们面前踩刹车时,我们前面的人猛踩刹车,我们的车子之间的空间(希望)可以防止我们撞到他们的车子。我们留出空间是因为我们的眼睛需要时间才能看到刹车灯,我们的脚做出反应以及刹车要散发足够的热量。我们的眼睛为我们提供了视觉反馈控制系统。

同样,当FTP会话以10GE爆发时,由于TCP缩放了窗口大小,在套接字必须停止并等待TCP ACK之前,突发流量可能长达4MB(在您的情况下)。同时,如果10GE流量突然达到“快速以太网”,则TCP需要逐渐降低速度。网络设备中的深层缓冲区允许TCP在进行速度转换时丢弃的数据包少得多。但是,如果没有缓冲区,则当该4MB TCP窗口从10GE限制为100M时,可能会丢弃该窗口的99%。可以将那99%的严重损失视为TCP套接字崩溃;TCP可预测地对相对逐渐的数据包丢失做出反应。TCP对正在进行的严重数据包丢失的反应要少得多。注3

对于为什么不应该使用DC为100M,远程为10M 的非对称城域以太网CIR的问题,问自己一个反问:“谁遇到了城域网便宜的10Mbps以太网NID时,谁在缓冲100Mbps流量突发-以太网提供商给了您?”(提示:没有人在缓冲)。

如果没有人在缓冲较大的速度转换(请参见注2),则这些点可能会间歇性地减少流量。

被谁丢弃的内容

DC的出站流量下降

当TCP流量离开数据中心时,可以将其丢弃在三个位置:

  • 在D1:因为LAN交换机很少有足够的深度缓冲来实现100:1的速度转换
  • 在D2:如果NID曾经以比CIR更高的速度协商UNI链路;现在不是这种情况,所以我不希望在那里下降。
  • 在D3:出于所有原因,我刚刚描述了不对称的城域以太网CIR

TCP流量到达数据中心时...

入口流量下降到DC

  • 在D4:因为您有一个1GE UNI和一个10M CIR;这是我上面提到的D2的病理情况。

如何缓解速度不匹配的问题:

EVPL解决方案示例EVPL与点对点EVC解决方案

  • 在这样的交换拓扑中,从DC到每个Remote的点对点EVC 的EVPL可能是您的最佳选择(请参见上图)。这会将单独的CIR应用于每个EVC。注意:此答案中的所有其他QoS指导均适用...即避免大的速度转换注意2而无需测试您的设备是否能够很好地处理该问题。
  • 另外,您可以考虑购买在DC和远端之间具有对称速率的Metroe服务。尽管我承认这可能不是最实用的指导。
  • 仅供参考,解决路由服务问题的经典解决方案是购买支持以所需速度进行整形的路由器,然后整形到适当CIR(每个远程站点)的Metro流量。仅供参考,远程端可以使用相当小的路由器,因为它只有1GE输入和10Mbps CIR。 ...
  • 如果您没有多余的钱可花,并且无法重新设计城域以太网服务,则可以逐步解决速度不匹配的问题。我从未做过,但是原则上您可以尝试将速度转换为10到1,而不是100到1(这是DC和远程设备当前的速度):

    • 您可以尝试强制远程UNI以100M(而不是1GE)的价格进行自动协商,而不是购买路由器以将远程设备的形状调整为10M。千兆以太网需要Cat5e电缆中的所有引脚,因此您可以使用仅连接针脚1、2、3和6的RJ45 mod-plug有效地将其强制为100M。
    • 不必购买路由器将DC调整为100M,而是在向100M链路发送流量时,使用Enterasys将10GE链路监管到1GE

分析iperf结果...

有两个要记住的要点iperf(所有信息均基于iperf版本2):

这样,以下输出显示DC计算机(处于iperf -c模式)连接到iperf远程站点(192.168.x)上的服务器,并将数据从DC(100M UNI)推送到远程站点(10M UNI)...

./iperf -c 192.168.x -i2 -t 60 -r
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
------------------------------------------------------------
Client connecting to 192.168.x, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[  3] local 10.x port 38195 connected with 192.168.x port 5001
[  3]  0.0- 2.0 sec  1.44 MBytes  6.03 Mbits/sec
[  3]  2.0- 4.0 sec  2.23 MBytes  9.37 Mbits/sec
[  3]  4.0- 6.0 sec  2.28 MBytes  9.57 Mbits/sec
[  3]  6.0- 8.0 sec  1.88 MBytes  7.90 Mbits/sec
[  3]  8.0-10.0 sec  1.00 MBytes  4.19 Mbits/sec
[  3] 10.0-12.0 sec  1.30 MBytes  5.47 Mbits/sec
[  3] 12.0-14.0 sec    688 KBytes  2.82 Mbits/sec

上面的输出清楚地显示了直流到远程方向的问题;如果一切正常,我们应该期望看到9Mbps或更高的速度(即,您期望至少90%的容量-远程站点为10Mbps)。现在,让我们看一下相反的流量(iperf将数据从远程站点推送到DC时)...

[  5] local 10.x port 5001 connected with 192.168.x port 10965
[  5]  0.0- 2.0 sec  1.85 MBytes  7.75 Mbits/sec
[  5]  2.0- 4.0 sec  1.90 MBytes  7.98 Mbits/sec
[  5]  4.0- 6.0 sec  1.89 MBytes  7.93 Mbits/sec
[  5]  6.0- 8.0 sec  1.92 MBytes  8.07 Mbits/sec
[  5]  8.0-10.0 sec  1.91 MBytes  8.02 Mbits/sec
[  5] 10.0-12.0 sec  1.83 MBytes  7.69 Mbits/sec
[  5] 12.0-14.0 sec  1.86 MBytes  7.78 Mbits/sec

您可以发送大约80%的远程CIR容量,但这仍然比我期望的要少。

直流速度不匹配的图示(10Gbps-> 100Mbps)

marki说:别忘了,问题仅在流量为100Mb-> 10Mb时才会显示,而不是相反。

问题在两个方向都显示出来,但是iperf在DC->远程方向上症状似乎更严重。参见iperf上面我对输出的分析。

具体来说,让我们看一下将文件从DC FTP服务器(130.1.6.4)推送到远程站点(192.168.191.2)时的FTP pcap。在传输过程中,从100M城域以太网侧进行的传输受到限制。如果您查看dc-to-remote_remote-side.pcapngpcap,然后在expert.message contains "segment not captured"

在此处输入图片说明


尾注

注1:我选择每1Mbps MetroEthernet CIR 25KB的CBS值;这是提供商使用的常见比率。YMMV
注意2我的个人规则:“大”是一种速度转换,它明显大于10:1的速度转换
注3对于TCP的丢包率,我不能给出确切的数字。如果损失严重到足以使您的应用程序遭受损失,那么它就太多了。我的个人规则:当完全在我自己的控制下处理有线公司网络时,任何(无意的)数据包丢失都太多了。就是说,有一些交换机模型可以在缓冲方面有所作为。这些交换机有时可能会丢包……这是对您是否必须忍受问题还是购买更好的交换机的判断。仅供参考:并不总是很明显,但是TCP会定期提高套接字的传输速率,以确保它获得尽可能多的吞吐量。许多TCP实现都知道当看到数据包丢失时它们的运行速度太快了。


请注意,DC的PHY速度(Metro以太网端口)已经达到100Mb。但是我也不能发送100M的数据,因为另一边最大为10Mb。。。现在我仍然不清楚应该在哪里进行整形。哦,您的意思是“在DC->远程方向上,iperf症状似乎更严重了”吗?
Marki 2014年

我更新了答案,是的,“远程-> DC”是原始答案中的错字。
Mike Pennington 2014年

我在这里同意Mike的观点,这取决于您的提供商,如果您问他们,他们会告诉您终端的线路速率,则使它们与挂在Metro-E上的物理接口相匹配。至于从WHERE到QoS,我会在您最大的切入点(即您的10Gb设备)上进行操作,然后再使用较小的上游设备。尽管我花更多的时间在防火墙和路由上而不是交换,但是希望迈克能证实我的观点!
AL

3
@MikePennington-由于速度不匹配而导致的出口阻塞是我在P2P微波链接中经常遇到的问题。很好的答案,您的帖子中有很多很好的信息。谢谢!
matak 2014年

1
同时检查双工不匹配,这可能会导致单向速度问题。
cpt_fink 2014年

2

虽然讨论这个问题非常有趣,但是ISP在此期间已开始通过另一品牌交换不同站点上的DSL调制解调器。他们说一些数据包碎片问题。嘿,双向9.5 Mbps,没有任何问题或特殊设置。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.