The test is invalid -- it is only testing one core. RPS steers the packet processing to a CPU core based on the hash of the TCP/UDP 4-tuple in the header (src addr, dest addr, src port dst port). With a single-stream test, the hash will send every packet to the same cpu
RFS is similarly based on the hash of the 4-tuple. The difference is that the packets are steered to the CPU of the application thread that is handling the flow. Here's the guide on how to measure aggregate throughput: http://s.apache.org/EID On 5/24/13 3:52 AM, "Bharat Kumar" <bharat.ku...@citrix.com> wrote: >Hi All, > >I have enabled the RPS and RFS support in the router vm and performed >some tests, but cloud not see any improvements. If any one know about >RPS (receive packet steering ) and RFS (receive flow steering ) please >comment. I am not sure if the RPS and RFS is working. > >The router has 4 cores and 4GB of ram. >command used to enable rps >echo f > /sys/class/net/eth0/queues/rx-0/rps_cpus >commands used to enable rfs >echo 1024 > /proc/sys/net/core/rps_sock_flow_entries >echo 1024 > /sys/class/net/eth0/queues/rx-0/rps_flow_c > >kernel details >Linux 3.2.0-4-686-pae #1 SMP Debian 3.2.35-2 i686 GNU/Linux > >The following are the test results >Test Without rps >------------------------------------------------------ >Testing with the following command line: >/usr/bin/netperf -l 60 -H 10.147.28.149 -c -C -t TCP_RR -i 700,3 -I >99,5 -- -r 1,1 -s 0 -S 0 > >TCP REQUEST/RESPONSE TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to >10.147.28.149 (10.147.28.149) port 0 AF_INET : +/-2.500% @ 99% conf. >Local /Remote >Socket Size Request Resp. Elapsed Trans. CPU CPU S.dem S.dem >Send Recv Size Size Time Rate local remote local remote >bytes bytes bytes bytes secs. per sec % S % S us/Tr us/Tr > >2048 256 1 1 60.00 4280.98 16.30 4.06 38.081 37.977 >2048 2240 > >Test With RPS >------------------------------------------------------ >usr/bin/netperf -l 60 -H 10.147.28.149 -c -C -t TCP_RR -i 700,3 -I >99,5 -- -r 1,1 -s 0 -S 0 >TCP REQUEST/RESPONSE TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to >10.147.28.149 (10.147.28.149) port 0 AF_INET : +/-2.500% @ 99% conf. >Local /Remote >Socket Size Request Resp. Elapsed Trans. CPU CPU S.dem S.dem >Send Recv Size Size Time Rate local remote local remote >bytes bytes bytes bytes secs. per sec % S % S us/Tr us/Tr > >2048 256 1 1 60.00 3926.40 14.47 3.68 37.093 37.561 >2048 2240 > >Test with RPS and RFS >------------------------------------------------------ >/usr/bin/netperf -l 60 -H 10.147.28.149 -c -C -t TCP_RR -i 700,3 -I >99,5 -- -r 1,1 -s 0 -S 0 >TCP REQUEST/RESPONSE TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to >10.147.28.149 (10.147.28.149) port 0 AF_INET : +/-2.500% @ 99% conf. >Local /Remote >Socket Size Request Resp. Elapsed Trans. CPU CPU S.dem S.dem >Send Recv Size Size Time Rate local remote local remote >bytes bytes bytes bytes secs. per sec % S % S us/Tr us/Tr > >2048 256 1 1 60.00 3903.11 14.74 3.76 37.801 38.494 >2048 2240 > > > >