对于负载小于1470的UDP数据包,是否有可能达到1Gbit的吞吐量?由于数据包较小,实现这样的吞吐量应该存在一些瓶颈(I/O、操作系统、网络等)。我想驱动程序和硬件可能必须调整为小数据包/高吞吐量。有人尝试用小 UDP 数据包成功实现 1Gbit 吞吐量吗?
我之前曾在相对标准的 PC 硬件上对千兆位链路的吞吐量进行过一些实验,尽管只是进行传输(通过tc预播放),而不是 udp。
我发现最大的瓶颈在于将数据包发送到网卡本身。通过使用高速总线连接到 NIC(例如 4x pci-express NIC),可以显着改善这一点。但即便如此,还是有一个非常明确的数据包/秒限制。显然,增加数据包大小可以让您利用更多带宽,同时减少处理器负载。
与评论相同史蒂夫·莫耶,任何网络的利用率都存在理论上的限制。在我的实验中(在完全安静的网络上进行),我看到的最大值约为 900Mb/s(仅在我的记忆中)。这是 CPU 负载为 30% 到 40% 的情况。
更有可能的是,该限制是由您的系统硬件(即 PC)而不是您的网络基础设施施加的 - 任何有价值的网络交换机都应该能够维持小数据包的全速网络访问 - 当然速度比您的网络基础设施高得多大多数电脑都可以应付。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)