stringtranslate.com

trama de ethernet

Paquete Ethernet. El SFD (delimitador de trama inicial) marca el final del preámbulo del paquete. Le sigue inmediatamente la trama Ethernet, que comienza con la dirección MAC de destino. [1]

En las redes de computadoras , una trama Ethernet es una unidad de datos de protocolo de capa de enlace de datos y utiliza los mecanismos de transporte de capa física de Ethernet subyacentes . En otras palabras, una unidad de datos en un enlace Ethernet transporta una trama Ethernet como carga útil. [2]

Una trama Ethernet está precedida por un preámbulo y un delimitador de trama inicial (SFD), que forman parte del paquete Ethernet en la capa física . Cada trama de Ethernet comienza con un encabezado de Ethernet, que contiene las direcciones MAC de destino y de origen como sus primeros dos campos. La sección central de la trama son los datos de carga útil, incluidos los encabezados de otros protocolos (por ejemplo, el Protocolo de Internet ) transportados en la trama. La trama finaliza con una secuencia de verificación de trama (FCS), que es una verificación de redundancia cíclica de 32 bits que se utiliza para detectar cualquier corrupción de datos en tránsito.

Estructura

Un paquete de datos en el cable y la trama como carga útil constan de datos binarios. Ethernet transmite datos con el octeto (byte) más significativo primero; Sin embargo, dentro de cada octeto, el bit menos significativo se transmite primero. [a]

La estructura interna de una trama Ethernet se especifica en IEEE 802.3. [2] La siguiente tabla muestra el paquete Ethernet completo y la trama interna, tal como se transmite, para el tamaño de carga útil hasta la MTU de 1500 octetos. [b] Algunas implementaciones de Gigabit Ethernet y otras variantes de Ethernet de mayor velocidad admiten tramas más grandes, conocidas como tramas jumbo .

La etiqueta 802.1Q opcional consume espacio adicional en el marco. Los tamaños de campo para esta opción se muestran entre paréntesis en la tabla anterior. IEEE 802.1ad (Q-in-Q) permite múltiples etiquetas en cada cuadro. Esta opción no se ilustra aquí.

Paquete Ethernet – capa física

Preámbulo y delimitador de fotograma inicial

Un paquete Ethernet comienza con un preámbulo de siete octetos (56 bits) y un delimitador de trama inicial (SFD ) de un octeto (8 bits) . [c] Los valores de bits del preámbulo alternan 1 y 0, lo que permite a los receptores sincronizar su reloj a nivel de bits con el transmisor. El preámbulo es seguido por el SFD que termina con un 1 en lugar de 0, para romper el patrón de bits del preámbulo y señalar el inicio de la trama real. [1] : sección 4.2.5 

Se requiere un circuito transceptor de capa física (PHY para abreviar) para conectar el MAC Ethernet al medio físico. La conexión entre un PHY y MAC es independiente del medio físico y utiliza un bus de la familia de interfaces independientes de medios ( MII , GMII , RGMII , SGMII , XGMII ). El preámbulo y la representación SFD dependen del ancho del bus:

El SFD va seguido inmediatamente de la dirección MAC de destino , que es el primer campo en una trama Ethernet.

Marco: capa de enlace de datos

Encabezamiento

El encabezado incluye direcciones MAC de destino y origen (cada una de seis octetos de longitud), el campo EtherType y, opcionalmente, una etiqueta IEEE 802.1Q o una etiqueta IEEE 802.1ad .

El campo EtherType tiene dos octetos de longitud y se puede utilizar para dos propósitos diferentes. Los valores de 1500 e inferiores significan que se utiliza para indicar el tamaño de la carga útil en octetos, mientras que los valores de 1536 y superiores indican que se utiliza como EtherType, para indicar qué protocolo está encapsulado en la carga útil de la trama. Cuando se utiliza como EtherType, la longitud de la trama está determinada por la ubicación del espacio entre paquetes y la secuencia de verificación de trama válida (FCS).

La etiqueta IEEE 802.1Q o la etiqueta IEEE 802.1ad , si está presente, es un campo de cuatro octetos que indica membresía de LAN virtual (VLAN) y prioridad IEEE 802.1p . Los primeros dos octetos de la etiqueta se denominan identificador de ID de protocolo de etiqueta ( TPID ) y funcionan como el campo EtherType, lo que indica que la trama está etiquetada con 802.1Q o 802.1ad. 802.1Q usa un TPID de 0x8100. 802.1ad usa un TPID de 0x88a8.

Carga útil

La carga útil es un campo de longitud variable. Su tamaño mínimo se rige por el requisito de una transmisión de trama mínima de 64 octetos (bytes). [d] Teniendo en cuenta el encabezado y FCS, la carga útil mínima es de 42 octetos cuando una etiqueta 802.1Q está presente [e] y 46 octetos cuando está ausente. Cuando la carga útil real es inferior al mínimo, se añaden octetos de relleno en consecuencia. Los estándares IEEE especifican una carga útil máxima de 1500 octetos. Las tramas gigantes no estándar permiten cargas útiles más grandes en redes diseñadas para soportarlas.

Secuencia de verificación de fotogramas

La secuencia de verificación de trama (FCS) es una verificación de redundancia cíclica (CRC) de cuatro octetos que permite la detección de datos corruptos dentro de toda la trama tal como se reciben en el lado del receptor. Según el estándar, el valor FCS se calcula en función de los campos de la trama MAC protegida: dirección de origen y destino, campo de longitud/tipo, datos del cliente MAC y relleno (es decir, todos los campos excepto el FCS).

Según el estándar, este cálculo se realiza utilizando el algoritmo CRC-32 de desplazamiento hacia la izquierda ( polinomio = 0x4C11DB7, CRC inicial = 0xFFFFFFFF, CRC se complementa posteriormente, valor de verificación = 0x38FB2284). El estándar establece que los datos se transmiten primero con el bit menos significativo (bit 0), mientras que el FCS se transmite primero con el bit más significativo (bit 31). [1] : sección 3.2.9  Una alternativa es calcular un CRC utilizando el CRC-32 con desplazamiento hacia la derecha (polinomio = 0xEDB88320, CRC inicial = 0xFFFFFFFF, CRC es postcomplementado, verificar valor = 0x2144DF1C), lo que dará como resultado un CRC que Es una inversión de bits del FCS y transmite primero los datos y el bit menos significativo del CRC, lo que da como resultado transmisiones idénticas.

El estándar establece que el receptor debe calcular un nuevo FCS a medida que se reciben los datos y luego comparar el FCS recibido con el FCS que el receptor ha calculado. Una alternativa es calcular un CRC tanto en los datos recibidos como en el FCS, lo que dará como resultado un valor de "verificación" fijo distinto de cero. (El resultado es distinto de cero porque el CRC se complementa posteriormente durante la generación del CRC). Dado que los datos se reciben primero en el bit menos significativo, y para evitar tener que almacenar en un buffer octetos de datos, el receptor normalmente utiliza el CRC-32 con desplazamiento hacia la derecha. Esto hace que el valor de "verificación" (a veces llamado "verificación mágica") sea 0x2144DF1C. [5]

Sin embargo, la implementación de hardware de un CRC con desplazamiento lógico a la derecha puede utilizar un registro de desplazamiento de retroalimentación lineal con desplazamiento hacia la izquierda como base para calcular el CRC, invirtiendo los bits y dando como resultado un valor de verificación de 0x38FB2284. Dado que el complemento del CRC se puede realizar después del cálculo y durante la transmisión, lo que queda en el registro de hardware es un resultado no complementado, por lo que el residuo para una implementación de desplazamiento a la derecha sería el complemento de 0x2144DF1C = 0xDEBB20E3, y para un desplazamiento a la izquierda implementación, el complemento de 0x38FB2284 = 0xC704DD7B.

Fin del cuadro – capa física

El final de una trama suele indicarse mediante el símbolo de fin del flujo de datos en la capa física o mediante la pérdida de la señal portadora; un ejemplo es 10BASE-T , donde la estación receptora detecta el final de una trama transmitida por pérdida de la portadora. Las capas físicas posteriores utilizan un símbolo o secuencia de fin de datos o de fin de flujo explícito para evitar ambigüedades, especialmente cuando la portadora se envía continuamente entre tramas; un ejemplo es Gigabit Ethernet con su esquema de codificación 8b/10b que utiliza símbolos especiales que se transmiten antes y después de transmitir una trama. [6] [7]

Brecha entre paquetes – capa física

La brecha entre paquetes (IPG) es el tiempo de inactividad entre paquetes. Después de enviar un paquete, los transmisores deben transmitir un mínimo de 96 bits (12 octetos) de estado de línea inactiva antes de transmitir el siguiente paquete.

Tipos

Existen varios tipos de tramas Ethernet:

Los diferentes tipos de tramas tienen diferentes formatos y valores de MTU , pero pueden coexistir en el mismo medio físico. Es posible diferenciar entre tipos de marcos basándose en la tabla de la derecha.

Además, los cuatro tipos de tramas Ethernet pueden contener opcionalmente una etiqueta IEEE 802.1Q para identificar a qué VLAN pertenece y su prioridad ( calidad de servicio ). Esta encapsulación está definida en la especificación IEEE 802.3ac y aumenta la trama máxima en 4 octetos.

La etiqueta IEEE 802.1Q, si está presente, se coloca entre los campos Dirección de origen y EtherType o Longitud. Los primeros dos octetos de la etiqueta son el valor del Identificador de protocolo de etiqueta (TPID) de 0x8100. Este se encuentra en el mismo lugar que el campo EtherType/Length en marcos sin etiquetar, por lo que un valor EtherType de 0x8100 significa que el marco está etiquetado y el verdadero EtherType/Length se encuentra después de la etiqueta Q. El TPID va seguido de dos octetos que contienen la información de control de etiquetas (TCI) (la prioridad IEEE 802.1p ( calidad de servicio ) y la identificación de VLAN). A la etiqueta Q le sigue el resto del marco, utilizando uno de los tipos descritos anteriormente.

EthernetII

La trama Ethernet II (también conocida como DIX Ethernet , llamada así por DEC , Intel y Xerox , los principales participantes en su diseño [8] ), define el campo EtherType de dos octetos en una trama Ethernet , precedido por las direcciones MAC de destino y de origen, que identifica un protocolo de capa superior encapsulado por los datos de la trama. En particular, un valor EtherType de 0x0800 indica que la trama contiene un datagrama IPv4 , 0x0806 indica un datagrama ARP y 0x86DD indica un datagrama IPv6 . Consulte EtherType § Valores para obtener más información.

El formato de trama Ethernet más común, tipo II.

A medida que este estándar desarrollado por la industria pasó por un proceso formal de estandarización IEEE , el campo EtherType se cambió a un campo de longitud (datos) en el nuevo estándar 802.3. [g] Dado que el destinatario aún necesita saber cómo interpretar la trama, el estándar requería un encabezado IEEE 802.2 para seguir la longitud y especificar el tipo. Muchos años después, el estándar 802.3x-1997 y las versiones posteriores del estándar 802.3 aprobaron formalmente ambos tipos de estructuras. El entramado Ethernet II es el más común en las redes de área local Ethernet, debido a su simplicidad y menor sobrecarga.

Para permitir que algunas tramas que usan tramas Ethernet II y otras que usan la versión original de tramas 802.3 se usen en el mismo segmento Ethernet, los valores de EtherType deben ser mayores o iguales a 1536 (0x0600). Se eligió ese valor porque la longitud máxima del campo de carga útil de una trama Ethernet 802.3 es 1500 octetos (0x05DC). Por lo tanto, si el valor del campo es mayor o igual a 1536, la trama debe ser una trama Ethernet II, siendo ese campo un campo de tipo. [9] Si es menor o igual a 1500, debe ser una trama IEEE 802.3, siendo ese campo un campo de longitud. Los valores entre 1500 y 1536, exclusivos, no están definidos. [10] Esta convención permite que el software determine si una trama es una trama Ethernet II o una trama IEEE 802.3, permitiendo la coexistencia de ambos estándares en el mismo medio físico.

Novell sin formato IEEE 802.3

El formato de trama 802.3 "sin formato" de Novell se basó en los primeros trabajos de IEEE 802.3. Novell utilizó esto como punto de partida para crear la primera implementación de su propio protocolo de red IPX sobre Ethernet. No utilizaron ningún encabezado LLC pero iniciaron el paquete IPX directamente después del campo de longitud. Esto no se ajusta al estándar IEEE 802.3, pero dado que IPX siempre tiene FF como los dos primeros octetos (mientras que en IEEE 802.2 LLC ese patrón es teóricamente posible pero extremadamente improbable), en la práctica esto generalmente coexiste en el cable con otras implementaciones de Ethernet. con la notable excepción de algunas de las primeras formas de DECnet que se confundieron con esto.

Novell NetWare utilizó este tipo de trama de forma predeterminada hasta mediados de los años noventa, y dado que NetWare estaba muy extendido en ese entonces, mientras que IP no, en algún momento la mayor parte del tráfico Ethernet del mundo corrió a través de 802.3 "sin procesar" con IPX. Desde NetWare 4.10, NetWare utiliza de forma predeterminada IEEE 802.2 con LLC (NetWare Frame Type Ethernet_802.2) cuando se utiliza IPX. [11]

IEEE 802.2 LLC

Algunos protocolos, como los diseñados para la pila OSI , operan directamente sobre la encapsulación IEEE 802.2 LLC, que proporciona servicios de red tanto orientados a conexión como sin conexión.

La encapsulación IEEE 802.2 LLC no se usa ampliamente en las redes comunes actualmente, con la excepción de grandes instalaciones corporativas de NetWare que aún no han migrado a NetWare sobre IP . En el pasado, muchas redes corporativas utilizaban IEEE 802.2 para admitir puentes de traducción transparentes entre redes Ethernet y Token Ring o FDDI .

Existe un estándar de Internet para encapsular el tráfico IPv4 en tramas SAP/SNAP IEEE 802.2 LLC. [12] Casi nunca se implementa en Ethernet, aunque se usa en FDDI, Token Ring, IEEE 802.11 (con la excepción de la banda de 5,9 GHz , donde usa EtherType) [13] y otras LAN IEEE 802 . IPv6 también se puede transmitir a través de Ethernet usando IEEE 802.2 LLC SAP/SNAP, pero, nuevamente, casi nunca se usa.

IEEE 802.2 SNAP

Al examinar el encabezado 802.2 LLC, es posible determinar si va seguido de un encabezado SNAP. El encabezado LLC incluye dos campos de dirección de ocho bits, llamados puntos de acceso a servicios (SAP) en terminología OSI; cuando tanto el SAP de origen como el de destino se establecen en el valor 0xAA, el encabezado LLC va seguido de un encabezado SNAP. El encabezado SNAP permite utilizar valores EtherType con todos los protocolos IEEE 802, además de admitir espacios de ID de protocolo privados.

En IEEE 802.3x-1997, el estándar IEEE Ethernet se cambió para permitir explícitamente el uso del campo de 16 bits después de las direcciones MAC como campo de longitud o campo de tipo.

El conjunto de protocolos AppleTalk v2 en Ethernet (" EtherTalk ") utiliza encapsulación IEEE 802.2 LLC + SNAP.

Rendimiento máximo

Podemos calcular la sobrecarga del protocolo para Ethernet como un porcentaje (tamaño del paquete incluido IPG)

Podemos calcular la eficiencia del protocolo para Ethernet.

La máxima eficiencia se logra con el mayor tamaño de carga útil permitido y es:

para tramas sin etiquetar, dado que el tamaño del paquete es de carga útil máxima de 1500 octetos + preámbulo de 8 octetos + encabezamiento de 14 octetos + final de 4 octetos + espacio mínimo entre paquetes correspondiente a 12 octetos = 1538 octetos. La máxima eficiencia es:

cuando se utiliza el etiquetado VLAN 802.1Q.

El rendimiento se puede calcular a partir de la eficiencia.

,

donde la velocidad de bits neta de la capa física (la velocidad de bits del cable) depende del estándar de capa física de Ethernet y puede ser 10 Mbit/s, 100 Mbit/s, 1 Gbit/s o 10 Gbit/s. En consecuencia, el rendimiento máximo para Ethernet 100BASE-TX es de 97,53 Mbit/s sin 802.1Q y de 97,28 Mbit/s con 802.1Q.

La utilización del canal es un concepto que a menudo se confunde con la eficiencia del protocolo. Considera únicamente el uso del canal sin tener en cuenta la naturaleza de los datos transmitidos (ya sea carga útil o sobrecarga). En la capa física, el canal de enlace y el equipo no conocen la diferencia entre tramas de datos y de control. Podemos calcular la utilización del canal :

El tiempo total considera el tiempo de ida y vuelta a lo largo del canal, el tiempo de procesamiento en los hosts y el tiempo de transmisión de datos y acuses de recibo. El tiempo dedicado a la transmisión de datos incluye datos y reconocimientos.

Marcos enanos

Una trama runt es una trama Ethernet que tiene menos que la longitud mínima de 64 octetos de IEEE 802.3. Los fotogramas runt son causados ​​más comúnmente por colisiones ; Otras posibles causas son un mal funcionamiento de la tarjeta de red , insuficiencia de datos en el búfer , falta de coincidencia del dúplex o problemas de software. [14]

Notas

  1. ^ La secuencia de verificación de trama (FCS) utiliza un orden de bits diferente. [3]
  2. ^ Los patrones de bits en el preámbulo y el inicio del delimitador de trama se escriben como cadenas de bits, con el primer bit transmitido a la izquierda ( no como valores de octeto, que en Ethernet se transmiten primero los bits menos significativos). Esta notación coincide con la utilizada en el estándar IEEE 802.3.
  3. ^ El software de detección de paquetes no muestra el preámbulo y el delimitador de cuadro de inicio porque el controlador de interfaz de red (NIC) elimina estos bits en la capa 1 de OSI antes de pasarlos a la capa 2 de OSI , que es donde los rastreadores de paquetes recopilan sus datos. Existen rastreadores de capa 2 que pueden capturar y mostrar el preámbulo y el delimitador de cuadro de inicio, pero son costosos y se utilizan principalmente para detectar problemas relacionados con la conectividad física.
  4. ^ El tamaño mínimo de carga útil lo dicta el tiempo de ranura de 512 bits utilizado para la detección de colisiones en la arquitectura LAN Ethernet.
  5. ^ Los mínimos de 42 y 46 octetos son válidos cuando 802.1Q está presente. [4]
  6. ^ Se utilizó una trama Ethernet versión 1 para los primeros prototipos de Ethernet y presentaba direcciones MAC de 8 bits y nunca se implementó comercialmente.
  7. ^ Las tramas Ethernet originales definen su longitud con el marco que las rodea, en lugar de con un recuento de longitud explícito.

Referencias

  1. ^ abcde 802.3-2018: estándar IEEE para Ethernet . IEEE . 14 de junio de 2018. doi :10.1109/IEEESTD.2018.8457469. ISBN 978-1-5044-5090-4.
  2. ^ ab "3.1.1 Formato de paquete". 802.3-2018: estándar IEEE para Ethernet . IEEE . 14 de junio de 2018. doi :10.1109/IEEESTD.2018.8457469. ISBN 978-1-5044-5090-4.
  3. ^ 802.3-2018: estándar IEEE para Ethernet . IEEE . 14 de junio de 2018. Apartado 3.3 y anexo 31A. doi :10.1109/IEEESTD.2018.8457469. ISBN 978-1-5044-5090-4. Los códigos de operación se transmiten primero en el octeto de orden superior. Dentro de cada octeto, los bits se transmiten primero, el bit menos significativo. [...] Cada octeto de la trama MAC, con la excepción del FCS, se transmite primero el bit menos significativo.
  4. ^ "Anexo G". Estándar IEEE para redes de área local y metropolitana: puentes de control de acceso a medios (MAC) y redes de área local con puentes virtuales . doi :10.1109/IEEESTD.2011.6009146. ISBN 978-0-7381-6708-4.
  5. ^ "Especificación de rutinas CRC V4.5.0 R4.1 Rev 3" (PDF) . AUTOSAR . pag. 24.
  6. ^ Charles E. Spurgeon (febrero de 2000). Ethernet: la guía definitiva . O'Reilly. págs.41, 47. ISBN 9780596552824. Consultado el 30 de junio de 2014 .
  7. ^ "40.1.3.1 Subcapa de codificación física (PCS)". 802.3-2018: estándar IEEE para Ethernet . IEEE . 14 de junio de 2018. doi :10.1109/IEEESTD.2018.8457469. ISBN 978-1-5044-5090-4.
  8. ^ Dibujó Heywood; Zubair Ahmad (2001). Servicios de red de Windows 2000 de Drew Heywood . Sam. pag. 53.ISBN _ 978-0-672-31741-5.
  9. ^ Comité de Estándares LAN MAN de la IEEE Computer Society (20 de marzo de 1997). Norma IEEE 802.3x-1997 y Norma IEEE 802.3y-1997 . El Instituto de Ingenieros Eléctricos y Electrónicos, Inc. págs. 28–31.
  10. ^ "3.2.6 Campo Longitud/Tipo". 802.3-2018: estándar IEEE para Ethernet . 14 de junio de 2018. doi :10.1109/IEEESTD.2018.8457469. ISBN 978-1-5044-5090-4.
  11. ^ Don Provan (17 de septiembre de 1993). "Encuadre Ethernet". Grupo de noticias : comp.sys.novell. Usenet:  17 de septiembre de [email protected].(Versión con formato HTML Archivada el 18 de abril de 2015 en Wayback Machine ): una serie clásica de publicaciones en Usenet de Don Provan de Novell que se han incluido en numerosas preguntas frecuentes y se consideran ampliamente la respuesta definitiva al uso de Novell Frame Type.
  12. ^ Un estándar para la transmisión de datagramas IP a través de redes IEEE 802. Grupo de Trabajo en Red del IETF. Febrero de 1988. doi : 10.17487/RFC1042 . RFC 1042.
  13. ^ Sociedad de Computación, IEEE (2016). IEEE Std 802.11-2016: Parte 11: Especificaciones de control de acceso al medio de LAN inalámbrica IEEE (MAC) y capa física (PHY) . Nueva York, Nueva York: IEEE. pag. 249.
  14. ^ "Solución de problemas de Ethernet". Sistemas Cisco . Consultado el 13 de agosto de 2016 .

Otras lecturas