知识卡片

轮询为何比NAPI与Netmap更彻底

专业/工作 · 1104.a

内容

传统网卡驱动靠中断唤醒CPU处理报文,接口速率迈入万兆后,海量中断的上下文切换开销让系统难以承受。NAPI用中断加批量轮询缓解开销,Netmap用共享包池减少内核到用户态的拷贝,但两者的收发处理仍由操作系统分时调度执行,任务切换引发的cache替换依然拖累性能。DPDK的突破是让线程独占CPU核心持续轮询,彻底跳出分时调度语境——省下的不只是中断开销,更是任务切换本身及其引发的cache抖动,这才是它比NAPI/Netmap更彻底的原因。

参考来源

《深入浅出DPDK》第1章《认识DPDK》