Linux TCP 堆栈和网卡性能:丢弃前每分钟的数据包数?

Linux TCP 堆栈和网卡性能:丢弃前每分钟的数据包数?

在 Linux 内核无法处理 NIC 的缓冲区而导致数据包丢失之前,100/1000mbit 网卡(不是嵌入式 Realtek 家庭解决方案)上应该有多少 TCP 数据包?

硬件:假设是双核 Xeon + Intel 的千兆 PCIE 卡。最终产品计划捕获和处理来自大型网络的数据包(执行与 Netflow 相同的工作,但具有一些特定功能)。但目前没有可用的测试环境来预先计算每个服务器的可能负载。

用于此类基本负载测试的软件:linux 内核 ~2.6.30、netfilter、2-3 条 iptables 规则。某种网络模拟也正在进行中。

答案1

大家好,在 Linux 内核无法处理 NIC 的缓冲区而导致数据包丢失之前,100/1000mbit 网卡(不是嵌入式 Realtek 家庭解决方案)应该接收多少 TCP 数据包?

如果所有处理都在两个 iptables 规则中,我们可以预期性能为 100 MBps 和 0.3~0.4 MPps。

Intel PCI-E NIC 是此目的的理想选择,它们的性能调优效果很好。双核 Xeon 不是最佳选择。Core 2 Duo/Qaud >= 3 Ghz 或 Core i3/i5/i6 更快。

相关内容