VRouter Performance Parameters:
Segmentation in Software :
Segmentation in Software is modifing the MSS of TCP packets by considering the OVERLAY HEADER. This MSS updation helps to avoid the fragmentation and increase the throughput.
GRO (Generic Receive Offload) /RPS (Receive Packet Steering):
Generic Receive Offload is buffering couple of packets and interrupt(send) it to CPU at one shot. It helps to increase the CPU availability and increase the thruput.
RPS is helps to offloading the packet handling to multiple CPUs.
In 3.2, By Default, Segmentation in Software and GRO is enabled.
Vrouter running information:
cloud@contraildev:~$ sudo vrouter --info
vRouter module version 3.2.3.3 (Built by root@contraildev on 2017-09-03 16:09:08.032456)
Startup parameters
Interfaces limit 4352
VRF tables limit 4096
NextHops limit 65536
MPLS Labels limit 5120
Bridge Table limit 128
Bridge Table Overflow limit 1024
Flow Table limit 4096
Flow Table overflow limit 512
Mirror entries limit 255
Runtime parameters
Performance tweaks
GRO 1
Segmentation in software 1
TCP MSS adjust settings
TCP MSS on packets from VM 1
TCP MSS on packet sent to VM 1
RPS settings
RPS after pulling inner hdr (perfr1) 0
RPS after GRO on pkt1 (perfr2) 1
RPS from phys rx handler (perfr3) 1
Pull inner header (faster version) 1
CPU to send pkts to, if perfr1 set 0
CPU to send pkts to, if perfr2 set 0
CPU to send pkts to, if perfr3 set 0
Other settings
NIC cksum offload for outer UDP hdr 0
Flow hold limit: 8192
MPLS over UDP globally 0
Used Flow entries 4
Used Over Flow entries 0
Used Bridge entries 16
Used Over Flow bridge entries 0
cloud@contraildev:~$
How to Enable /Disable the Segmentation/GRO:
Note : This configuration can be chaged in runtime. No need to reload the Vrouter module.
To Disable the GRO:
sudo vrouter --perfr 0
To Enable the GRO
sudo vrouter --perfr 1
To Disable the Segmentaion in sofware :
sudo vrouter --perfs 0
To Enable the Segmentaion in sofware :
sudo vrouter --perfs 1