Algunas veces existen quejas referentes al performance de red en entornos virtuales y su mal performance de red en relación a una maquina física. Articulos independientes muestran que el performance con xenserver, vmware e hyper-v es parecido al físico y ya no es una excusa para no virtualizar. Eso si, para ello, es necesario realizar ciertas acciones y aplicar todas las buenas practicas posibles en cada uno de los entornos siempre que sea posible.
Una de las mejoras realizables para mejorar el performance de red, es el relacionado con los paramétros de checksum y off-load (TCP Segmentation offload, Generic Segmentation offload y UDP Fragmentation Offload – Todas ellas explicadas en los recursos adicionales al final del artículo).
Para su configuración, podemos hacer uso de la herramienta ethtool-K, el cual nos permitirá realizar cambios sobre las tarjetas, sin que los cambios sean “permanentes”. Estos serán reseteados tras un reinicio.
Para ver los parámetros actuales podemos consultar-los de la siguiente forma:
ethtool –K “Interface”
Por ejemplo, podemos deshabilitar el tcp-offload de la Eth0 de la siguiente manera:
ethtool -K eth0 tso off
Para información ampliada sobre ethtool podemos consultar el manual en línea (man) de ethtool o desde http://linux.die.net/man/8/ethtool
Para establecer los cambios de forma permanente, deberemos utilizar nuestra herramienta en línea de comandos XE. Para ello, realizaremos:
xe pif-param-set uuid=<UUID of PIF> other-config:ethtool-tx=”off”
xe vif-param-set uuid=<UUID of VIF> other-config:ethtool-tso=”off”
La sintaxis genérica seria:
xe [vif/pif]-param-set uuid=<uuid pif/vif> other-Config:KEY=”off”/”on”
dónde KEY:
ethtool-tx : TX Checksum
ethtool-rx: RX Checksum
ethtool-tso: Tcp Segmentation offload
ethtool-ufo: UDP Fragmentation offload
ethtool-gso: Generic Segmentation offload
NOTA: no se recomienda la desactivación del TSO en los VIF. Las buenas practicas aconsejan desactivar la misma desde la propia VM, tal y como indica el http://support.microsoft.com/kb/904946/ y http://support.microsoft.com/kb/951037
NOTA: Ojo al aplicar en entornos productivos. Testear antes.
Resources:
TSO: http://www.linuxfoundation.org/collaborate/workgroups/networking/tso
GSO: http://www.linuxfoundation.org/collaborate/workgroups/networking/gso
UFO: http://www.linuxfoundation.org/collaborate/workgroups/networking/ufo
Leave a Reply