Anoche me saltó esta conversación donde un usuario de Vmware tenía una tarjeta de red física ConnectX-4 con puertos a 25Gbps pero su máquina Windows tan solo muestra 10 Gbps.
Como ya comenté en el podcast y demostré en su día, la velocidad indicada en un guest, en un sistema invitado, sistema alojado, o simplemente, máquina virtual, va a estar supeditado a la velocidad del bus de la máquina física, es decir, de su PCI.
Una máquina virtual relativamente moderna, Windows 2019, y un servidor homebrew no son los ideales, pero vamos a hacer la muestra de algo que lleva años siendo meramente estético.
Punto 1.
El comportamiento de la red está vinculado a la velocidad del host desde Vmware Server 1, ESX 2 y en otros hipervisores, desde Connectix VirtualPC 3.
Punto 2.160986005
La modificación estética no aplica a absolutamente todas las versiones tanto de host como de máquina virtual y por supuesto, de versión de configuración.
Datos de inicio. La incidencia.
El usuario que ha preguntado por esto hacía referencia a una duda, la cual es comprensible, porque es el comportamiento esperado, y a pesar de que mi punto de vista para tarjetas de red por encima de los 10Gbps es utilizar SR-IOV o al menos passthrough, se que no todos los escenarios son apropiados.
En caso de hosts con este tipo de electrónica siempre veo lo mismo, consolidación y concertación de máquinas para agregar el caudal que saldrá por dicho uplink.
Es un escenario correcto, y dentro de lo esperado. Lo que suele suceder es que la estética manda una poderosa orden, y por debajo de la estética tenemos en Windows a WMI, y en general siempre a SNMP que informarán de este valor, y claro, las medidas reales pueden no coincidir con los datos obtenidos en monitorización y automatizaciones.
Cuando he montado esto en host standalone, con tarjetas ConnectX-3 y ConnectX-4 de Mellanox principalmente (remarcadas OEM por HPE por ejemplo), Intel M61KR-I, Emulex/Qlogic M72KR-E, o incluso Cisco. De Realtek o Broadcom (fuera de Emulex, claro está) no he catado nada.
El caso es que los antecedentes son claros a ojos del hipervisor, en este caso, alguna versión de Vmware posterior al VCF 4.3 o cualquier vCenter superior a 7.0.2, probablemente VCF 4.5.x o 5.0.x pero no puedo ajustar mucho más.
El uplink está documentado con un enlace a 25GB:

Lo confirma en tarjetería:

Así que nos queda ver que dice Windows, en este caso parece algo superior a Windows 2016:

Tanto la tarjeta de red como el administrador de diapositivas muestran lo que el sistema operativo tiene:

Prueba en mi laboratorio.
Me he instalado un Windows 2019 Standard (no por nada raro si no por que es lo que tenía a mano ahora mismo) donde he podido instalar contra mi backend (no, no hay dhcp ni discovering) así que no hay tráfico ni nada que pueda estorbar.
De hecho esta misma máquina la usaré para nuevos artículos con cosas divertidas.
Lo primero, esto se ve así:

Y en Windows, una vez instaladas las tools, se ve así:

Solución aplicada.
La solución aplicada procede del manual técnico de VCF 5.x que podéis encontrar en la sección privada (solo con login) de la documentación para VCF. La velocidad base de cualquier adaptador vmxnet3 o vmxnet2 enhanced serán de 10Gbps.
Introducción.
Este procedimiento provee información de como cambiar el dato en el driver.
No es propiamente un problema o avería, es un tema cosmético que puede afectar a la información mostrada a los usuarios o a las herramientas.
Ámbito de aplicación.
Se establece como línea base de trabajo la versión 8.0 de ESXi. No cunciona en 7.0.x o anteriores.
Procedimiento desde el cliente web.
Ya sea por cliente web (vSphere Client) del host, del vCenter o de VCF, este es el procedimiento ideal para cualquier usuario sin conocimientos para hacerlo por línea de comandos del host, o bien por estar en un cluster de vSAN y en unas condiciones similares de habilidad o conocimientos.
- Abre el cliente vSphere Client.
- Busca la máquina virtual.
- Apaga la máquina virtual.
- Una vez apagada (verificar con Refresh/Refrescar) pulsar en actions/acciones y en edit settings/editar.
- Pulsar en VM options, expandir advandced/avanzado, y bajo Configuration Parameters/Parámetros de configuración, pulsar en Edit Configuration/Editar Configuración.
- En la lista, pulsa Add Row/Añadir para introducir una nueva línea de parámetro y su valor.
- El nuevo parámetro será ethernetX.linkspeed siendo X el número de tarjeta de red de la máquina virtual a reconfigurar.
- El valor será un número para la velocidad del enlace entre 10000 y 65000 representando Mbps.
- Pulsar ok y guardar configuración. Al arrancar la máquina virtual, debería mostrar el valor configurado.
Aspecto de un ESXi standalone 7.0.1:

Aspecto en vCenter 8.0.3:

Procedimiento a mano, o sea, by YoVirtualizador.
Esto es muy simple, de hecho, supera la simpleza media:
- Abre el cliente vSphere Client.
- Busca la máquina virtual.
- Apaga la máquina virtual.
- Localiza el host.
- Lanza un ssh al host.
cd /vmfs/volumes/<DATASTORE>/<VM_folder>vi <VM-name>.vmx- Asumiendo que todo el mundo sabe usar vi, hay que añadir una simple línea al final: ethernetX.linkspeed = “XXXXX” siendo X el número de tarjeta de red de la máquina virtual a reconfigurar y XXXXX una velocidad entre 10000 y 65000.
- Salvar y salir. Ante la duda
ZZ(dos zetas mayúsculas).

Resultados.
Bueno, pues en un Windows 2019 quedaría algo así, tras aplicar 31137 (premio si sabes que significa) en el valor de la velocidad.

o yendo a un valor máximo…

En cambio en ESXi 7, los valores no aplican, no se ve cambio alguno (y si, en w2003 en el 8.0.3 cambia también) por lo que es correcto pensar que el ámbito de aplicación es tan solo para versión 8 y superior.

Resumen.
Asumimos que esto solo va a funcionar a partir de versión 8 de ESXi. Que habiendo modo gráfico, es bueno aprovecharlo. Que es un elemento estético, tal como he contado antes, pero tiene su sentido. Que no he encontrado diferencia de rendimiento entre la existencia y la ausencia de este parámetro. Que por defecto, 10Gbps, no es mal número. Que por límites de diseño, cualquier cosa por debajo de 10000 dejará el valor a 10Gbps. Que por encima de 65000, también nos llevará el valor a 10Gbps. Y que podemos poner entre 10000 y 65000 cualquier valor entero, y tener cómicos resultados.
YoVirtualizador en formato podcast. Ahora también en Sospechosos Habituales: https://wt.territoriolinux.es/rss/short.xml
Y sin más, os dejo los enlaces:
Web: https://www.yovirtualizador.com
Grupo de telegram: https://t.me/grupovirtualizador
Podcast: https://www.ivoox.com/podcast-yovirtualizador_fg_f1563806_filtro_1.xml y YouTube https://www.youtube.com/playlist?list=PLrnymu_aoVL6nk1-FcZ220P65tyHV6djV Canal de YouTube: https://www.youtube.com/channel/UC0R70cABSsmC6TFyXth0qPg
Enlaces afiliados:
Amazon: https://amzn.to/3gX3HmK
Asociación Podcast: https://www.asociacionpodcast.es/registrarse/socio/?coupon=SB6A70
iVoox Plus: https://www.ivoox.vip/plus?affiliate-code=323d07d8569f044513746a1be4724b40
iVoox Premium: https://www.ivoox.vip/premium?affiliate-code=03d0efe2be3b55e4cd6df6dc3f6a6dbc
iVoox Premium anual: https://www.ivoox.vip/premium?affiliate-code=9feb8e44ecb4c97148e227100af9223b