我一直在测试 f-stack,当数据包大小很小(如 64 ~ 1024 字节)时,f-stack 的性能非常好。但是,当数据包大小增加到某个点时。我注意到它比原来的 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
这是延迟的结果图:
如您所见,当数据包大小超过 1500 时,f-stack 性能会下降。
这是吞吐量的结果图:
有没有办法通过大数据包来提高 f-stack 的性能?