stringtranslate.com

Descubrimiento de MTU de ruta

Path MTU Discovery ( PMTUD ) es una técnica estandarizada en redes de computadoras para determinar el tamaño máximo de la unidad de transmisión (MTU) en la ruta de red entre dos hosts de Protocolo de Internet (IP), generalmente con el objetivo de evitar la fragmentación de IP . PMTUD se diseñó originalmente para enrutadores con el Protocolo de Internet versión 4 (IPv4). [1] Sin embargo, todos los sistemas operativos modernos lo utilizan en puntos finales. En IPv6 , esta función se ha delegado explícitamente a los puntos finales de una sesión de comunicaciones. [2] Como una extensión del descubrimiento de MTU de ruta estándar, una técnica llamada descubrimiento de MTU de ruta de capa de paquetización funciona sin soporte de ICMP . [3]

Implementación

Para paquetes IPv4, Path MTU Discovery funciona configurando el bit de indicador No fragmentar (DF) en los encabezados IP de los paquetes salientes. Luego, cualquier dispositivo a lo largo de la ruta cuya MTU sea más pequeña que el paquete lo descartará y enviará de vuelta un mensaje de Fragmentación necesaria (Tipo 3, Código 4) del Protocolo de mensajes de control de Internet (ICMP) que contiene su MTU, lo que permitirá al host de origen reducir su MTU. ruta MTU apropiadamente. El proceso se repite hasta que la MTU sea lo suficientemente pequeña como para recorrer todo el camino sin fragmentarse.

Como los enrutadores IPv6 no fragmentan paquetes, no existe la opción No fragmentar en el encabezado IPv6 . Para IPv6, Path MTU Discovery funciona asumiendo inicialmente que la ruta MTU es la misma que la MTU en la interfaz de la capa de enlace donde se origina el tráfico. Luego, de manera similar a IPv4, cualquier dispositivo a lo largo de la ruta cuya MTU sea más pequeña que el paquete descartará el paquete y enviará de vuelta un mensaje ICMPv6 Paquete demasiado grande (Tipo 2) que contiene su MTU, lo que permitirá que el host de origen reduzca su MTU de ruta de manera adecuada. El proceso se repite hasta que la MTU sea lo suficientemente pequeña como para recorrer todo el camino sin fragmentarse. [4]

Si la ruta MTU cambia después de configurar la conexión y se vuelve más baja que la ruta MTU previamente determinada, el primer paquete grande causará un error ICMP y se encontrará la nueva ruta MTU más baja. Si la ruta cambia y la nueva MTU de ruta es mayor, la fuente no se enterará del aumento, porque todos los enrutadores a lo largo de la nueva ruta serán capaces de transmitir todos los paquetes que la fuente envía utilizando la MTU de ruta inferior determinada originalmente. [5] [6] [4]

Problemas

Muchos dispositivos de seguridad de red bloquean todos los mensajes ICMP para obtener beneficios de seguridad percibidos, incluidos los errores necesarios para el funcionamiento adecuado de PMTUD. Esto puede provocar que las conexiones completen correctamente el protocolo de enlace de tres vías TCP , pero luego se bloqueen cuando se transfieren los datos. Este estado se conoce como conexión de agujero negro . [7]

Algunas implementaciones de PMTUD intentan evitar este problema infiriendo que los paquetes de carga útil grandes se han descartado debido a la MTU y no a la congestión del enlace. Sin embargo, para que el Protocolo de control de transmisión (TCP) funcione de manera más eficiente, se deben permitir mensajes ICMP inalcanzables (tipo 3). En RFC 4821 se ha estandarizado un método robusto para PMTUD que se basa en TCP u otro protocolo para sondear la ruta con paquetes progresivamente más grandes.

Una solución alternativa utilizada por algunos enrutadores [ ¿cuáles? ] es cambiar el tamaño máximo de segmento (MSS) de todas las conexiones TCP que pasan a través de enlaces que tienen una MTU inferior al valor predeterminado de Ethernet de 1500. Esto se conoce como sujeción de MSS . [8] [¿ necesita actualización? ]

Otro problema es cuando los administradores de redes no actualizan correctamente la MTU entre 2 saltos de capa 3 adyacentes si el enlace entre estos saltos está compuesto por múltiples segmentos de capa 2 con conmutadores entre ellos. Normalmente, la MTU de la interfaz L3 saliente se toma del primer segmento L2. Pero si el segundo segmento o el siguiente tiene una MTU más baja, el conmutador que se encuentra en el medio simplemente descartará el paquete silenciosamente sin informar ningún ICMP (porque solo los saltos de capa 3 pueden generar un "paquete demasiado grande" ICMP). Entonces, en este caso, los administradores deben actualizar la MTU para cada interfaz L3 saliente a la MTU mínima de los segmentos de capa 2 utilizados hasta el siguiente salto L3.

Referencias

  1. ^ J. magnate; S. Deering (noviembre de 1990). Descubrimiento de MTU de ruta. Grupo de Trabajo de Red. doi : 10.17487/RFC1191 . RFC 1191. Proyecto de Norma. Obsoleto RFC 1063.
  2. ^ J. McCann; S. Deering ; J. Mogul (julio de 2017). R. Hinden (ed.). Descubrimiento de MTU de ruta para IP versión 6. IETF . doi : 10.17487/RFC8201 . ETS 87. RFC 8201. Estándar de Internet 87. Obsoleto RFC 1981.
  3. ^ G. Fairhurst; T. Jones; M. Tüxen; I. Rungeler; T. Völker (septiembre de 2020). Descubrimiento de MTU de ruta de capa de paquetización para transportes de datagramas. IETF . doi : 10.17487/RFC8899 . ISSN  2070-1721. RFC 8899. Norma propuesta. Actualizaciones RFC 4821, 4960, 6951, 8085 y 8261.
  4. ^ ab Davies, Joseph (2012). Comprensión de IPv6 (3ª ed.). Redmond: Microsoft Press. págs. 146-147. ISBN 978-0735659148. OCLC  810455372.
  5. ^ E. Comer, Douglas (2014). Conexión en red con TCP/IP Volumen 1 (6ª ed.). Pearson. págs. 133-134. ISBN 0-13-608530-X.
  6. ^ Código fuente de Linux (ipv4) y código fuente de Linux (ipv6) ver línea con "mtu_expires" 10 * 60 segundos
  7. ^ K. Lahey (septiembre de 2000). Problemas de TCP con el descubrimiento de MTU de ruta. Grupo de Trabajo de Red. doi : 10.17487/RFC2923 . RFC 2923. Informativo.
  8. ^ Hubert, Bert (2002). "Evitar problemas de descubrimiento de MTU de ruta con sujeción de MSS (para usuarios de ADSL, cable, PPPoE y PPtP)". CÓMO de control de tráfico y enrutamiento avanzado de Linux . Consultado el 15 de abril de 2019 .