Linux:配置RX POLLING(NAPI)

时间:2020-01-09 10:43:19  来源:igfitidea点击:

我的CentOS/RHEL服务器配置了Intel PRO/1000网络接口卡。

e1000驱动程序支持NAPI(Rx轮询模式)。
我有多个CPU。
如何配置NAPI,减少中断并提高整体服务器网络性能?

根据内核的配置启用或者禁用NAPI。

e1000驱动程序确实支持NAPI。

启用NAPI

通过访问以下URL,下载最新的驱动程序版本:

  • 适用于英特尔(R)PRO/100以太网设备,英特尔(R)PRO/1000千兆以太网设备和英特尔(R)PRO/10GbE设备的Linux内核驱动程序。

要启用NAPI,请编译驱动程序模块,并传入配置选项:

make CFLAGS_EXTRA=-DE1000_NAPI install

完成后,只需安装新的驱动程序。

减少中断

如果您有多处理器系统,请考虑将网络接口卡的中断绑定到物理CPU以获得更高的性能。
找出网卡的IRQ,运行:

# ifconfig eth0

或者

# ifconfig eth0 | grep -i Interrupt

输出示例:

Interrupt:179

要将smp_affinity(即eth0的中断179)绑定到系统中的第三个处理器,请执行:

# echo 03 > /proc/irq/179/smp_affinity

将以上命令添加到/etc/rc.local。
有关更多信息,请参阅Intel e1000文档(默认情况下,内核v2.6.26或者更高版本启用NAPI支持)。

Broadcom tg3驱动器还支持NAPI,并且内置NAPI支持附带了最新版本。