关于Linux网卡调优之:RPS (Receive Packet Steering)
原来CentOS 6.1就开始支持RPS了,原生支持需要使用Linux内核2.6.38或以上版本。
简单来讲,RPS就是让网卡使用多核CPU的。传统方法就是网卡多队列(RSS,需要硬件和驱动支持),RPS则是在系统层实现了分发和均衡。献上修改设置的脚本一例:
#!/bin/bash # Enable RPS (Receive Packet Steering) rfc=4096 cc=$(grep -c processor /proc/cpuinfo) rsfe=$(echo $cc*$rfc | bc) sysctl -w net.core.rps_sock_flow_entries=$rsfe for fileRps in $(ls /sys/class/net/eth*/queues/rx-*/rps_cpus) do echo fff > $fileRps done for fileRfc in $(ls /sys/class/net/eth*/queues/rx-*/rps_flow_cnt) do echo $rfc > $fileRfc done tail /sys/class/net/eth*/queues/rx-*/{rps_cpus,rps_flow_cnt}