I.1 KVM/OpenStack
For the DSR system to achieve 50K MPS or more through IPFE, a few tuning parameters need to be changed.
txqueuelen
Tuned on the compute hosts.
Purpose: The default value of 500 is too small. Our recommendation is to set to 30000. Increases the network throughput of a VM.# cat > /etc/udev/rules.d/60-tap.rules << EOFKERNEL=="tap*", RUN+="/sbin/ip link set %k txqueuelen 30000"EOF
# udevadm control --reload-rules
# udevadm trigger --attr-match=subsystem=net
Ring buffer increase on the physical ethernet interfaces
Tuned on the compute hosts.
Purpose: Improves the overall network throughput of the host.This varies depending on the Host OS. The following steps are applicable to centos or fedora or rhel.
Add the following line into the network script of the interface you want to change.
/etc/sysconfig/network-scripts/ifcfg-eth2
to add
the ETHTOOL_OPTS=
line as
shown.DEVICE=eth2
TYPE=Ethernet
ETHTOOL_OPTS="--set-ring eth2 rx 4096 tx 4096"
Restart
the network using service network restart
as root. Check the
setting using ethtool -g eth2
.
Multiqueue [on IPFE]
To be enabled on the OpenStack flavor and glance image for IPFE instance.
Purpose: Improves the network throughput of a VM.
# openstack flavor set m1.large --property hw:vif_multiqueue_enabled=true
# glance image-update b5592ed4-8f41-48a9-9f0c-e0e46cb3dd6c --property hw_vif_multiqueue_enabled=true
On the Guest set the number of queues to number of vcpus.
Add the following line into the network script of the interface you want to change.
For example: To set the number of queues to number of vcpus.
/etc/sysconfig/network-scripts/ifcfg-eth_interface
to set
the multiqueue value to the number of
vCPUs:DEVICE=eth
TYPE=Ethernet
ETHTOOL_OPTS="-L ${DEVICE} combined <no_of_vCPUs>
Restart the network using service network restart
as
root.
Check the setting using ethtool -l <eth_interface>
.