像在收费站选通道:一条保留熟悉的操作方式,另一条让你直接控制闸机。Atper在真实服务器与Solarflare X2522-Plus 25GbE网卡上,对比了两种高频交易网络路径。OpenOnload加速标准BSD sockets——应用常用的网络接口,旧系统较容易接入;ef_vi则让程序直接管理网卡队列和缓冲区,工程更复杂,但能进一步压低延迟。
测试全部采用硬件时间戳,也就是由网卡记录收发时刻,以减少CPU调度和软件计时造成的误差。作者报告,ef_vi的中位延迟为1.095微秒,Onload为1.671微秒;Onload在消息突发时还出现较多抖动。最具体的优化是绕过事件队列,直接轮询大页内存中的数据包载荷,据作者测算可节省约100纳秒。对高频系统来说,这次实测给出的参照很直接:若看重兼容现有代码,Onload更省改造;若愿意承担贴近硬件的开发成本,ef_vi留出了更大的极致优化空间。以上结果来自作者公开的单次实机基准,材料未披露重复次数等完整统计设置。