使用大数据包时降低性能

时间:2018-01-04 19:32:22

标签: ubuntu dpdk

我一直在测试f-stack,当数据包大小很小时,f-stack表现得非常好,比如64~1024字节。但是,当数据包大小增加到某一点时。我注意到它比原始TCP轮询更糟糕。

我一直在使用f-stack实现的客户端和服务器pingpong测试延迟和吞吐量。

我怀疑当前NIC的MTU速度与某些事情有关 因为当我在下面打字时,我得到了这个:

ifconfig| grep MTU 
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
UP BROADCAST MULTICAST  MTU:1500  Metric:1        
UP BROADCAST MULTICAST  MTU:1500  Metric:1        
UP LOOPBACK RUNNING  MTU:65536  Metric:1          

以下是延迟的结果图: latency result graph

正如您所看到的,当数据包大小超过1500时,f-stack性能会下降。

以下是吞吐量的结果图: throughput result graph

有没有办法增加大数据包的f-stack性能?

1 个答案:

答案 0 :(得分:1)

MTU是最大转换单位,通常为1500,因此理论上TCP数据包大小限制为64K,但以太网MTU大小限制了它。有关详细讨论,请参阅此内容:https://www.lifewire.com/definition-of-mtu-817948。 简而言之,是的,你是对的,你做了非常好的和有效的测试。干得好! 要提高性能,必须增加MTU。这就是答案。但是,这并不总是可行的。