我有一个“100Mb”网络连接,目前传输速度约为 20K 数据包/秒,无论数据包大小在 300-600 字节范围内。这导致观察到的带宽为 25-98Mb。我经常被告知,因为我们没有达到带宽限制,所以我们没有线路问题。我不同意。
考虑到数据包大小,此连接平均以 100Mb(铜质以太网)线路理论最大 PPS 速率的 60% 运行。(尽管 100Mb 瓶颈是未知类型的光纤,因此可能会产生不同的影响,但我认为没有任何光纤协议比具有数据包间间隙的铜质协议更好)。
我的问题是 - 无法访问路由器或光纤硬件(第三方提供,无能为力),我如何证明我们的数据包受限?理想情况下,不会在此过程中造成大规模中断 :)
答案1
使用 tcpdump 或类似工具收集流量,并绘制单位时间内数据包计数的图表。如果您的假设正确,您应该会看到数据包计数的明显上限。
您可以通过使用类似 ping -s 1472 -f 的命令生成大量大数据包来模拟反例,这可能会导致小规模的中断,因此在流量高峰期间不要这样做。但 30 秒对于解决更大的问题来说可能是可以接受的 - 您决定。
交换机也很容易成为瓶颈。尤其是便宜的交换机或黑盒路由器。这是我正在研究的 WAN 网络最常见的情况。这种流量的最低标准是 HP ProCurve 线路。即使是旧的思科也可以。但你必须测试它。
值得一提的是,在 ISP 中,我们通常使用一条经验法则,即 60% 的利用率线路是完全饱和的线路。原因是饱和度在一段时间内基本上是平均水平。但在较短的时间范围内,您可能会尝试在同一时刻发送过多的数据包,从而导致过载,这将导致更长的延迟。同时测量延迟。Wireshark 是进行此类快速分析的好工具。
最后但并非最不重要的一点是,除了在一条空线路上执行 ping -s 1472 -f 之外,我还没有看到任何一种流量能够完全饱和线路。一旦拥有多个连接,就会出现效率低下的问题,从而导致利用率降低。基本上,100Mbit 是理想条件下的理论极限。因此,线路提供商可能也是对的,升级线路可能是正确的解决方案。