如果应用程序在处理网络流量时遇到网络数据包丢失或性能问题,请按照这些说明进行操作。
要减少网络数据包丢失和从流量中提取文件不完整的情况,请执行以下操作:
如果您的网络接口不允许将 RSS 队列的最大数量设置为 16,请将其设置为受支持的最大数量。
sudo bash interrupts.sh <dev> <min_cpu> <max_cpu> <step>
,其中
<dev>
是您想要在内核之间分配中断的网络接口。<min_cpu>
是网络适配器中断分配范围内的第一个内核。<max_cpu>
是网络适配器中断分配范围内的最后一个内核。<step>
是选择下一个分配给中断的内核的增量。示例:
|
ethtool -L $dev rx 16
ethtool -X $dev equal 16
ethtool -X $dev hfunc xor
rmmod i40e && modprobe i40e
ifconfig $dev down
ethtool -L $dev combined 16
ethtool -K $dev rxhash on
ethtool -K $dev ntuple on
ifconfig $dev up
ethtool -X $dev hkey 6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:
5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A:6D:5A equal 16
ethtool -A $dev rx off
ethtool -C $dev adaptive-rx off adaptive-tx off rx-usecs 125
ethtool -G $dev rx 1024
ethtool -N $dev rx-flow-hash tcp4 sdfn
ethtool -N $dev rx-flow-hash tcp6 sdfn
ethtool -N $dev rx-flow-hash udp4 sdfn
ethtool -N $dev rx-flow-hash udp6 sdfn
网络接口已配置。
重新启动应用程序后,您必须按照说明重新配置网络接口。
页面顶部