Trama Ethernet

En una red Ethernet los dispositivos se intercambian paquetes de datos entre sí, los llamados paquetes Ethernet. En su contenido se incluye la trama Ethernet (a menudo denominada también trama de datos), que a su vez se divide en varios conjuntos de datos. Estos registros consisten en código binario que proporciona información importante, incluyendo direcciones, información de control, datos de uso y sumas de comprobación.

Cuando se transmiten datos a través de Ethernet, la trama Ethernet es la principal responsable de la correcta configuración de las reglas y del éxito de la transmisión de los paquetes de datos. Los datos enviados a través de Ethernet son transportados a través de la trama. Una trama Ethernet tiene un tamaño de entre 64 y 1518 bytes, dependiendo del tamaño de los datos que debe transportar.

Una trama Ethernet está precedida por un preámbulo y un delimitador de trama de inicio (SFD), que forman parte del paquete de Ethernet en la capa física. Cada trama Ethernet comienza con un encabezado que contiene las direcciones MAC de origen y destino como sus dos primeros 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 ) incluidos 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 utilizada para detectar cualquier corrupción de datos en tránsito.

Estructura
Un paquete de datos en el cable y la trama como su carga útil consisten en datos binarios. Ethernet transmite datos con el byte más significativo primero; dentro de cada byte, sin embargo, el bit menos significativo se transmite primero.

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

Paquete Ethernet – capa física
Preámbulo y delimitador de cuadro de inicio

Una trama Ethernet dentro de un paquete Ethernet, con SFD marcando el final del preámbulo del paquete e indicando el comienzo de la trama2​.
Un paquete Ethernet comienza con un preámbulo de siete bytes y un delimitador de trama de inicio (SFD) de un bytes.

El preámbulo consta de un patrón de 56 bits (siete bytes) de alternancia de 1 y 0 bits, que permite que los dispositivos de la red sincronicen fácilmente los relojes de sus receptores, proporcionando sincronización a nivel de bits. Le sigue el SFD para proporcionar sincronización a nivel de byte y marcar una nueva trama entrante. Para las variantes de Ethernet que transmiten bits en serie en lugar de símbolos más grandes, el patrón de bits en el cable (no codificado) para el preámbulo junto con la parte SFD de la trama es 10101010 10101010 10101010 10101010 10101010 10101010 10101010 10101011; 2​ : sections 4.2.5 and 3.2.2 Los bits se transmiten en orden, de izquierda a derecha. 2​ : sections 4.2.5

El SFD es el valor de ocho bits (un byte) que marca el final del preámbulo, que es el primer campo de un paquete de Ethernet e indica el comienzo de la trama de Ethernet. El SFD está diseñado para romper el patrón de bits del preámbulo y señalar el inicio de la trama real. 2​ : section 4.2.5 El SFD es seguido inmediatamente por la dirección MAC de destino, que es el primer campo en una trama de Ethernet. El SFD es la secuencia binaria 10101011 (0xD5, decimal 213 en el orden del primer bit LSB de Ethernet). 2​ : sections 3.2.2, 3.3 and 4.2.6

Se requiere un circuito transceptor de capa física (PHY para abreviar) para conectar la MAC Ethernet al medio físico. La conexión entre 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). Los chips transceptores Fast Ethernet utilizan el bus MII, que es un bus ancho de cuatro bits (un nibble), por lo que el preámbulo se representa con 14 instancias de 0x5 y el SFD es 0x5 0xD.

Trama: capa de enlace de datos
Encabezado
El encabezado incluye direcciones MAC de origen y destino (cada una de seis bytes de longitud), el campo EtherType y, opcionalmente, una etiqueta IEEE 802.1Q o una etiqueta IEEE 802.1ad.

El campo EtherType tiene una longitud de dos bytes y se puede utilizar para dos propósitos diferentes. Los valores de 1500 y por debajo significan que se utiliza para indicar el tamaño de la carga útil en bytes, 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 bytes que indica la pertenencia a la LAN virtual (VLAN) y la prioridad IEEE 802.1p . Los dos primeros bytes de la etiqueta se denominan el entificador de ID de protocolo de etiqueta (TPID) y se duplican 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 bytes (bytes). Teniendo en cuenta el encabezado y FCS, la carga útil mínima es de 42 bytes cuando una etiqueta 802.1Q está presente y 46 bytes cuando está ausente. Cuando la carga útil real es menor que el mínimo, los bytes de relleno se agregan en consecuencia. Los estándares IEEE especifican una carga útil máxima de 1500 bytes. Las tramas gigantes no estándar permiten cargas útiles más grandes en redes creadas para admitirlas.

Secuencia de verificación de tramas
La secuencia de verificación de tramas (FCS) es una verificación de redundancia cíclica (CRC) de cuatro bytes que permite la detección de datos erróneos dentro de la trama completa tal como se reciben en el lado del receptor. De acuerdo con el estándar, el valor de FCS se calcula en función de los campos de trama MAC protegidos: dirección de origen y destino, campo de longitud/tipo, datos de cliente MAC y relleno (es decir, todos los campos excepto FCS).

Según el estándar, este cálculo se realiza mediante el algoritmo de desplazamiento a la izquierda CRC32 BZIP2 (poli = 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 FCS se transmite primero con el bit más significativo (bit 31). 2​ : section 3.2.9 Una alternativa es calcular un CRC utilizando el desplazamiento a la derecha CRC32 (poli = 0xEDB88320, CRC inicial = 0xFFFFFFFF, CRC se complementa posteriormente, verifique el valor = 0x2144DF1C), lo que dará como resultado un CRC que es una inversión de bits del FCS, y transmitir tanto los datos como el bit menos significativo de CRC primero, lo que da como resultado transmisiones idénticas.

El estándar establece que el receptor debe calcular una nueva FCS a medida que se reciben los datos y luego comparar la FCS recibida con la 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 con el bit menos significativo, y para evitar tener que almacenar bytes de datos en el búfer, el receptor suele utilizar el desplazamiento a la derecha CRC32. Esto hace que el valor de “verificar” (a veces llamado “verificación mágica”) sea 0x2144DF1C. 3​

Sin embargo, la implementación de hardware de un CRC con desplazamiento lógico a la derecha puede usar un registro de desplazamiento de retroalimentación lineal con desplazamiento a la izquierda como base para calcular el CRC, invirtiendo los bits y dando como resultado un valor de verificación de 0x38FB2284. Dado que la complementación 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 de la trama: capa física
El final de una trama suele estar indicado por el símbolo de fin de flujo de datos en la capa física o por 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 fin de datos explícito o un símbolo o secuencia de fin de flujo para evitar la ambigüedad, 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. 4​ 5​

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 bytes) de estado de línea inactiva antes de transmitir el siguiente paquete.

 

Puntuar
[Total: 0 Promedio: 0]