知识卡片

网卡多队列存在的本质原因

专业/工作 · 1111

内容

早期单核处理器时代,网卡收到的所有报文只能由这一个核处理,从来不是问题。核数成倍增长后,问题变成了”报文该分给哪个核”——如果报文依然挤在一条队列里,无论后面有多少个核,都会在”取包”这一步排队,多核并行能力根本发挥不出来。网卡多队列技术的本质,是把DMA队列也做成多份,让每个队列可独立绑定到不同的核,从硬件层面把”报文分发”也并行化,配合软件层面的[[CPU亲和性为何能提速]],让核、缓存、队列三者形成一一对应的专属通道。

参考来源

《深入浅出DPDK》第8章《流分类与多队列》