《表1 高性能协议栈兼容性对比》
本文将以上3点作为衡量高性能网络协议栈兼容性的主要指标,对主流协议栈进行对比分析,并同时列举了各种协议栈具体支持的网络API。见表1,其中Affinity-Accept[5]、MegaPipe[6]、FastSocket[7]是在内核态对协议栈进行共享TCP连接资源的拆分、虚拟文件系统的剔除、连接本地化等优化,但由于无法避免内核系统调用的开销以及无法利用高性能I/O收发分组模块,这些内核态协议栈的性能提升往往比较有限,但直接对Linux内核网络协议栈进行调优有利于实现协议栈的高度兼容,大大降低网络应用的移植成本。m TCP[15]、IX[16]、F-stack[23]、Seastar[24]均是在用户态基于高性能收发分组框架实现的协议栈,在获得大幅性能提升的同时却难以兼顾对网络应用的兼容。
图表编号 | XD0050588400 严禁用于非法目的 |
---|---|
绘制时间 | 2019.05.20 |
作者 | 姜惠友、李峻峰、李丹 |
绘制单位 | 清华大学、清华大学、清华大学 |
更多格式 | 高清、无水印(增值服务) |