Unidad de transmisión máxima (MTU) de red de la instancia de EC2 - Amazon Elastic Compute Cloud

Unidad de transmisión máxima (MTU) de red de la instancia de EC2

La unidad de transmisión máxima (MTU) de una conexión de red es el tamaño, en bytes, del mayor paquete permitido que se puede transferir a través de la conexión. Cuanto mayor sea la MTU de una conexión, mayor cantidad de datos se podrán transferir en un solo paquete. Los marcos Ethernet consisten del packet, o los datos que está enviando, y de la información de sobrecarga de red que lo rodea.

Las tramas Ethernet pueden presentar distintos formatos, siendo el más habitual de ellos el formato de tramas estándar Ethernet v2. Admite 1500 MTU, que es el mayor tamaño de paquete Ethernet admitido por la mayor parte de aplicaciones de Internet. La MTU admitida para una instancia depende del tipo de instancia.

Las siguientes reglas se aplican a las instancias que se encuentran en zonas de Wavelength:

  • El tráfico que va de una instancia a otra dentro de una VPC en la misma zona de Wavelength tiene una MTU de 1300.

  • El tráfico que va de una instancia a otra que utiliza la IP del operador dentro de una zona de Wavelength tiene una MTU de 1500.

  • El tráfico que va de una instancia a otra entre una zona de Wavelength y la región que utiliza una dirección IP pública tiene una MTU de 1500.

  • El tráfico que va de una instancia a otra entre una zona de Wavelength y la región que utiliza una dirección IP privada tiene una MTU de 1300.

Las siguientes reglas se aplican a las instancias que se encuentran en Outposts:

  • El tráfico que va de una instancia en Outposts a una instancia en la región tiene una MTU de 1300.

Tramas gigantes (9 001 MTU)

Las tramas gigantes permiten más de 1500 bytes de datos al aumentar el tamaño de la carga por paquete, incrementando así el porcentaje del paquete que no supone una sobrecarga del mismo. De este modo, se necesitan menos paquetes para enviar la misma cantidad de datos utilizables. Sin embargo, el tráfico está limitado a una MTU máxima de 1500 en los siguientes casos:

  • Tráfico a través de una NAT puerta de enlace de Internet

  • Tráfico a través de una interconexión de VPC entre regiones

  • Tráfico a través de conexiones de VPN

  • Tráfico fuera de una región de AWS determinada

Si los paquetes tienen más de 1500 bytes, se fragmentan o, si se establece la marca Don't Fragment en el encabezado IP, se eliminan.

Las tramas gigantes se deben utilizar con precaución para el tráfico vinculado a Internet o cualquier tráfico que salga de una VPC. Los paquetes son fragmentados por sistemas intermedios, lo que ralentiza el tráfico. Para utilizar tramas gigantes dentro de una VPC y no ralentizar el tráfico que se dirige fuera de la misma, puede configurar el tamaño de la MTU por ruta o bien utilizar varias interfaces de red elásticas con diferentes tamaños de MTU y diferentes rutas.

En el caso de las instancias que se colocan dentro de un grupo con ubicación en clúster, se recomienda usar tramas gigantes, que ayudan a obtener el máximo rendimiento de red posible. Para obtener más información, consulte Grupos de ubicación.

Puede utilizar tramas gigantes para el tráfico entre las VPC y las redes locales a través de AWS Direct Connect. Para obtener más información y para saber cómo verificar la capacidad de tramas gigantes, consulte Cómo configurar la MTU de red en la Guía del usuario de AWS Direct Connect.

Todos los tipos de instancias de Amazon EC2 admiten 1500 MTU y todos los tipos de instancias de la generación actual admiten tramas gigantes. Los siguientes tipos de instancias de la generación anterior también admiten tramas gigantes: A1, C3, I2, M3, y R3.

Para obtener más información sobre los tamaños de MTU compatibles:

  • Para las puertas de enlace de NAT, consulte Conceptos básicos de las puertas de enlace de NAT en la Guía del usuario de Amazon VPC.

  • Para las puertas de enlace de tránsito, consulte MTU en la Guía del usuario de puertas de enlace de tránsito de Amazon VPC.

  • Para zonas locales, consulte Consideraciones en la Guía del usuario de zonas locales de AWS.

Detección de la MTU de la ruta

La detección de la MTU de la ruta (PMTUD) se utiliza para determinar la MTU de la ruta entre dos dispositivos. La MTU de la ruta es tamaño máximo del paquete admitido en la ruta entre el host de origen y el host receptor. Cuando hay una diferencia en el tamaño de la MTU en la red entre los dos hosts, PMTUD permite que el host receptor responda al host de origen con un mensaje ICMP. Este mensaje de ICMP indica al host de origen que utilice el mínimo tamaño de la MTU en la ruta de la red para volver a enviar la solicitud. Sin esta negociación, puede perderse el paquete porque la solicitud es muy grande para que la acepte el host receptor.

Para IPv4, cuando un host envía un paquete mayor que la MTU del host receptor o que es mayor que la MTU de un dispositivo a lo largo de la ruta, el host o dispositivo receptor descarta el paquete y, a continuación, devuelve el siguiente mensaje ICMP: Destination Unreachable: Fragmentation Needed and Don't Fragment was Set (Tipo 3, código 4). Esto indica al host transmisor que divida la carga útil en varios paquetes más pequeños y, a continuación, los retransmita.

El protocolo IPv6 no admite la fragmentación en la red. Cuando un host envía un paquete mayor que la MTU del host receptor o que es mayor que la MTU de un dispositivo a lo largo de la ruta, el host o dispositivo receptor descarta el paquete y, a continuación, devuelve el siguiente mensaje ICMP: ICMPv6 Packet Too Big (PTB) (Tipo 2). Esto indica al host transmisor que divida la carga útil en varios paquetes más pequeños y, a continuación, los retransmita.

Las conexiones realizadas a través de algunos componentes, como las puertas de enlace de NAT y los equilibradores de carga, se rastrean automáticamente. Esto significa que el seguimiento de grupos de seguridad está habilitado de forma automática para los intentos de conexión saliente. Si las conexiones se rastrean automáticamente o si las reglas de su grupo de seguridad permiten el tráfico ICMP entrante, puede recibir respuestas de PMTUD.

Tenga en cuenta que el tráfico ICMP se puede bloquear incluso si está permitido a nivel de grupo de seguridad, por ejemplo, si tiene una entrada en la lista de control de acceso a la red que deniega el tráfico ICMP a la subred.

importante

La detección de MTU de ruta no garantiza que algunos enrutadores no eliminen tramas gigantes. Una puerta de enlace de Internet en la VPC reenviará los paquetes solo hasta los 1500 bytes. Para el tráfico de internet se recomiendan paquetes de 1500 MTU.

Comprobar la MTU de la ruta entre dos hosts

Puede comprobar la MTU de la ruta entre la instancia EC2 y otro host. Puede especificar un nombre de DNS o una dirección IP como destino. Si el destino es otra instancia EC2, verifique que el grupo de seguridad permita el tráfico de UDP entrante.

El procedimiento que utiliza depende del sistema operativo de la instancia.

Ejecute el comando tracepath en la instancia para comprobar la MTU de la ruta entre la instancia de EC2 y el destino especificado. Este comando forma parte del paquete iputils, que está disponible de forma predeterminada en muchas distribuciones de Linux.

En este ejemplo se comprueba la MTU de la ruta entre la instancia EC2 y amazon.com.

[ec2-user ~]$ tracepath amazon.com

En esta salida de ejemplo, la MTU de la ruta es 1500.

1?: [LOCALHOST] pmtu 9001 1: ip-172-31-16-1.us-west-1.compute.internal (172.31.16.1) 0.187ms pmtu 1500 1: no reply 2: no reply 3: no reply 4: 100.64.16.241 (100.64.16.241) 0.574ms 5: 72.21.222.221 (72.21.222.221) 84.447ms asymm 21 6: 205.251.229.97 (205.251.229.97) 79.970ms asymm 19 7: 72.21.222.194 (72.21.222.194) 96.546ms asymm 16 8: 72.21.222.239 (72.21.222.239) 79.244ms asymm 15 9: 205.251.225.73 (205.251.225.73) 91.867ms asymm 16 ... 31: no reply Too many hops: pmtu 1500 Resume: pmtu 1500
Para comprobar la MTU de la ruta con mturoute
  1. Descargue mturoute.exe en su instancia de EC2 desde http://www.elifulkerson.com/projects/mturoute.php.

  2. Abra una ventana del símbolo del sistema y cambie al directorio en el que haya descargado mturoute.exe.

  3. Utilice el siguiente comando para comprobar la MTU de la ruta entre la instancia EC2 y el destino especificado. En este ejemplo se comprueba la MTU de la ruta entre la instancia EC2 y www.elifulkerson.com.

    .\mturoute.exe www.elifulkerson.com

    En esta salida de ejemplo, la MTU de la ruta es 1500.

    * ICMP Fragmentation is not permitted. * * Speed optimization is enabled. * * Maximum payload is 10000 bytes. * + ICMP payload of 1472 bytes succeeded. - ICMP payload of 1473 bytes is too big. Path MTU: 1500 bytes.

Comprobación de la MTU de la instancia

Puede comprobar el valor de la MTU de la instancia. Algunas instancias están configuradas para utilizar tramas gigantes y otras están configuradas para utilizar tamaños de trama estándar.

El procedimiento que utiliza depende del sistema operativo de la instancia.

Para comprobar la configuración de la MTU de una instancia Linux

Ejecute el siguiente comando ip en la instancia EC2. Si la interfaz de red principal no es eth0, sustituya eth0 por la interfaz de red.

[ec2-user ~]$ ip link show eth0

En la salida del ejemplo, mtu 9001 indica que esta instancia utiliza tramas gigantes.

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether 02:90:c0:b7:9e:d1 brd ff:ff:ff:ff:ff:ff

El procedimiento que utiliza depende del controlador de su instancia.

ENA driver
Versión 2.1.0 y posteriores

Para obtener el valor de la MTU, use el siguiente comando Get-NetAdapterAdvancedProperty en la instancia de EC2. Utilice el comodín (asterisco) para obtener todos los nombres de Ethernet. Compruebe la salida correspondiente al nombre de interfaz *JumboPacket. Un valor de 9015 indica que las tramas gigantes están habilitadas. Las tramas gigantes están deshabilitadas de forma predeterminada.

Get-NetAdapterAdvancedProperty -Name "Ethernet*"
Versión 1.5 y anteriores

Para obtener el valor de la MTU, use el siguiente comando Get-NetAdapterAdvancedProperty en la instancia de EC2. Compruebe la salida correspondiente al nombre de interfaz MTU. Un valor de 9001 indica que las tramas gigantes están habilitadas. Las tramas gigantes están deshabilitadas de forma predeterminada.

Get-NetAdapterAdvancedProperty -Name "Ethernet"
Intel SRIOV 82599 driver

Para obtener el valor de la MTU, use el siguiente comando Get-NetAdapterAdvancedProperty en la instancia de EC2. Compruebe la entrada correspondiente al nombre de interfaz *JumboPacket. Un valor de 9014 indica que las tramas gigantes están habilitadas. (Tenga en cuenta que el tamaño de la MTU incluye el encabezado y la carga). Las tramas gigantes están deshabilitadas de forma predeterminada.

Get-NetAdapterAdvancedProperty -Name "Ethernet"
AWS PV driver

Para obtener el valor de la MTU, use el siguiente comando en la instancia EC2. El nombre de la interfaz puede variar. En la salida, busque una entrada llamada "Ethernet", "Ethernet 2" o "Local Area Connection". Necesita el nombre de la interfaz para habilitar y para deshabilitar las tramas gigantes. Un valor de 9001 indica que las tramas gigantes están habilitadas.

netsh interface ipv4 show subinterface

Configuración de la MTU de la instancia

Es posible que desee utilizar tramas gigantes para el tráfico de red dentro de la VPC y tramas estándar para el tráfico de Internet. Sea cual sea el caso de uso, le recomendamos que verifique que su instancia se comporte según lo previsto.

El procedimiento que utiliza depende del sistema operativo de la instancia.

Para establecer el valor de la MTU con una instancia de Linux
  1. Ejecute el siguiente comando ip en la instancia. Establece el valor deseado de la MTU en 1500, pero también puede utilizar un valor de 9001.

    [ec2-user ~]$ sudo ip link set dev eth0 mtu 1500
  2. (Opcional) Para que la configuración de la MTU de la red persista tras un reinicio, modifique los siguientes archivos de configuración, en función del tipo de sistema operativo que use.

    • Para Amazon Linux 2, añada la línea siguiente al archivo /etc/sysconfig/network-scripts/ifcfg-eth0:

      MTU=1500

      Añada la línea siguiente al archivo /etc/dhcp/dhclient.conf:

      request subnet-mask, broadcast-address, time-offset, routers, domain-name, domain-search, domain-name-servers, host-name, nis-domain, nis-servers, ntp-servers;
    • Para la AMI de Amazon Linux, añada las siguientes líneas al archivo /etc/dhcp/dhclient-eth0.conf.

      interface "eth0" { supersede interface-mtu 1500; }
    • Para otras distribuciones Linux, consulte la documentación específica.

  3. (Opcional) Reinicie la instancia y compruebe que la configuración de la MTU sea correcta.

El procedimiento que utiliza depende del controlador de su instancia.

ENA driver

Para cambiar la MTU, utilice el administrador de dispositivos o el comando Set-NetAdapterAdvancedProperty en la instancia.

Versión 2.1.0 y posteriores

Utilice el siguiente comando para activar tramas gigantes.

Set-NetAdapterAdvancedProperty -Name "Ethernet" -RegistryKeyword "*JumboPacket" -RegistryValue 9015

Utilice el siguiente comando para desactivar tramas gigantes.

Set-NetAdapterAdvancedProperty -Name "Ethernet" -RegistryKeyword "*JumboPacket" -RegistryValue 1514
Versión 1.5 y anteriores

Utilice el siguiente comando para activar tramas gigantes.

Set-NetAdapterAdvancedProperty -Name "Ethernet" -RegistryKeyword "MTU" -RegistryValue 9001

Utilice el siguiente comando para desactivar tramas gigantes.

Set-NetAdapterAdvancedProperty -Name "Ethernet" -RegistryKeyword "MTU" -RegistryValue 1500
Intel SRIOV 82599 driver

Para cambiar la MTU, utilice el administrador de dispositivos o el comando Set-NetAdapterAdvancedProperty en la instancia.

Utilice el siguiente comando para activar tramas gigantes.

Set-NetAdapterAdvancedProperty -Name "Ethernet" -RegistryKeyword "*JumboPacket" -RegistryValue 9014

Utilice el siguiente comando para desactivar tramas gigantes.

Set-NetAdapterAdvancedProperty -Name "Ethernet" -RegistryKeyword "*JumboPacket" -RegistryValue 1514
AWS PV driver

Puede cambiar la MTU con el comando netsh en la instancia. No puede cambiar la MTU con el administrador de dispositivos.

Utilice el siguiente comando para activar tramas gigantes.

netsh interface ipv4 set subinterface "Ethernet" mtu=9001

Utilice el siguiente comando para desactivar tramas gigantes.

netsh interface ipv4 set subinterface "Ethernet" mtu=1500

Solución de problemas

Si experimenta problemas de conectividad entre la instancia EC2 y un clúster de Amazon Redshift al utilizar tramas gigantes, consulte Falta de respuesta de las consultas en la Guía de administración de Amazon Redshift.