Está en la página 1de 21

DEPARTAMENTO DE CIENCIA Y TECNOLOGÍA

UNIVERSIDAD NACIONAL DE QUILMES


Roque Sáenz Peña 352 – (B1876BXD) Bernal – Buenos Aires – Argentina

COMUNICACIÓN DE DATOS - IACI

10 ETHERNET

Ethernet es el nombre de la tecnología utilizada para la interconexión de computadoras


en redes LAN. Por allá por mayo de 1973, el investigador Bob Metcalfe, quien trabajaba en
Xerox Palo Alto Research (PARC) en California, Estados Unidos, escribió un memorándum que
describía un sistema de interconexión de computadoras que él había inventado y que permitía
el envío de datos entre éstas o hacia impresoras también conectadas en la red. Este sería uno
de los tantos inventos de Xerox, además de la impresora láser.

El memo de Metcalfe de 1973 describiendo la red Ethernet se basa en una idea aplicada
hacia finales de 1960, principios de los ’70, llamada red Aloha. Esta red Aloha nació en la
Universidad de Hawaii cuando Norman Abramson y sus colegas desarrollaron una red de radio
para comunicarse entre varias de las islas de Hawaii. Este fue uno de los primeros
experimentos para desarrollar mecanismos para compartir un canal de comunicación común
entre varios usuarios, en este caso un canal de radio.

La idea de Aloha es bastante sencilla y ya lo hemos estudiado: hay varios usuarios que
comparten un canal de comunicación en común para comunicarse entre ellos. Cuando una
estación desea enviar un mensaje a otra, simplemente lo envía “sin preguntar nada a nadie” y
espera un mensaje de confirmación para saber que el mensaje llegó correctamente a destino.
Como cada estación simplemente transmite cuando tiene algo para transmitir, puede ocurrir
que dos o más estaciones intenten transmitir simultáneamente por lo que en tal caso los
mensajes colisionarán y no llegarán a los destinos establecidos. En este caso no se recibirá
ningún mensaje de confirmación. Por lo tanto, si luego de cierto tiempo la estación transmisora
no recibe ningún mensaje de confirmación de la estación destinataria se asume que se produjo
una colisión y que el mensaje transmitido no fue recibido por el destinatario. Luego de
detectada la colisión, las estaciones involucradas esperan un tiempo aleatorio antes de volver
a transmitir.

Cuando hay muchas estaciones con intenciones de transmitir, el tráfico efectivo


(llamado throughput en inglés) en la red Aloha es bajo, ya que se producen muchas colisiones.
Por otro lado, si hay pocas estaciones hay menos probabilidad de colisiones, pero el tráfico
efectivo también es bajo puesto que hay pocas estaciones. Como ya hemos visto, se
demuestra que el valor de equilibrio entre estas dos situaciones produce un tráfico efectivo
máximo de 18%. Esto significa que, por ejemplo, en un canal de 100.000 Kbps la máxima
velocidad promedio de transferencia de datos será de 18.000 Kbps.

Reseña histórica de Ethernet

Metcalfe creyó que podía mejorar el sistema desarrollado por Abramson. Una de las
cosas que hizo para lograrlo fue desarrollar un mecanismo para detectar la ocurrencia de una
colisión (collision detect). Otra cosa que agregó fue un mecanismo para “escuchar el canal”
antes de transmitir (carrier sense, o sensado de portadora) de modo que el acceso al canal sea
más organizado que el Aloha. Este sistema también soportaba acceso de múltiples estaciones
(multiple access). Poniendo todas estas ideas juntas resulta que Ethernet es un sistema de
Acceso Múltiple con Detección de Portadora y Detección de Colisión. Que en inglés resulta
Carrier Sense Multiple Access with Collision Detection (CSMA/CD).

10 Ethernet 1
A finales de 1972, Metcalf y sus amigos de Xerox en Palo Alto California pusieron en
marcha el primer sistema experimental Ethernet, allí mismo en Xerox. La tasa de transmisión
de datos era de 2,94 Mbps.

La red experimental de Bob Metcalfe se llamó inicialmente Alto Aloha Network. En 1973
Metcalfe le cambió el nombre por Ethernet para que no se pensara que el sistema sólo
funcionaba con las computadoras de Palo Alto y que tampoco era un sistema Aloha más. El
nombre lo tomó de Eter que era el concepto que habían utilizado los físicos Michelson y Morley
para describir el medio sobre el cual se propagaba la luz o las ondas electromagnéticas en
general. Una manera de describir la idea de transportar bits a todas las estaciones que están
conectadas a ese “medio”.

En junio de 1976 Metcalfe presentó Ethernet por primera vez en la Conferencia Nacional
de Computadoras de Estados Unidos. Ese mismo año, Bob Metcalfe y David Boggs publicaron
el paper titulado “Ethernet: Distributed Packet Switching for Local Computer Networks”
(Ethernet: Conmutación Distribuida de Paquetes para Redes de Computadoras Locales). A
finales de 1977 Robert Metcalfe, David Boggs, Charles Thacker y Butler Lampson recibieron la
patente número 4.063.220 de Estados Unidos correspondiente a Ethernet, para un “Sistema
de Comunicación de Datos Multipunto con Detección de Colisiones”. A mediados de 1978 se
emitió una patente para repetidores Ethernet. Hasta aquí Xerox era el dueño del sistema
Ethernet.

Xerox se dio cuenta de que el sistema Ethernet debía convertirse en una norma para la
industria en lugar de ser sólo un sistema para uso propio de Xerox. Para ello decidió formar
una alianza con Digital Equipment Corporation (DEC) e Intel Corporation, dando como
resultado el consorcio DIX, nombre formado por las iniciales de las tres compañías. El
consorcio DIX se encargó de desarrollar la norma Ethernet de 10 Mbps, de cable coaxial
grueso. Por ese entonces el sistema competidor era Wangnet.

La norma original Ethernet de 10 Mbps de DIX se publicó en 1980, con el título The
Ethernet, A Local Area Network: Data Link Layer and Phisical Layer Specifications (Ethernet,
una red de área local: especificaciones de capa de enlace de datos y de capa física). Es decir
que esta norma establece todo lo referente a la capa 1 (capa física) y capa 2 (enlace de
datos) del modelo OSI. La norma Ethernet de 10 Mbps da todas las especificaciones de capa
física (medio de comunicación, velocidad de transmisión, tipos de conectores, distancias
máximas, etc.) y de capa de enlace de datos (tamaño de los paquetes, encabezados, CRC,
acceso al medio, etc.) correspondientes a un sistema de interconexión de computadoras en
redes LAN.

Luego de que el estándar de DIX fuera publicado, la IEEE también quiso escribir su
propia norma con la idea de establecer un sistema abierto. Consecuentemente, el sistema
Ethernet de cable coaxial grueso fue normalizado dos veces: primero por DIX y luego
por la IEEE. La norma de la IEEE fue desarrollada bajo la dirección del Comité de Normas
para Redes Locales y Metropolitanas, que identifica sus normas con el número 802. El Comité
802 es el encargado de escribir las normas relacionadas a redes LAN.

El comité IEEE 802 tomó el sistema descripto originalmente por DIX y lo usó como base
para su norma. Ésta se publicó en 1985 bajo el título IEEE 802.3 Carrier Sense Multiple Access
with Collision Detection (CSMA/CD) Access Method And Phisical Layer Specification. El comité
802 de la IEEE evitó el uso de la palabra Ethernet en su norma para no crear intereses
comerciales. En su lugar quedó el nombre 802.3 CSMA/CD o simplemente 802.3. Sin embargo,
la mayoría de la gente usa el nombre Ethernet cuando se refiere a la norma 802.3.

IEEE 802.3 es la norma oficial de Ethernet. Cada tanto suele aparecer alguna “nueva
norma” relacionada a Ethernet escrita por algún consorcio económico dedicado al desarrollo de
tecnología de redes. Sin embargo, si dicha norma no está especificada dentro de la 802.3 no
se considera una norma oficial.

2 10 Ethernet
El estándar original 802.3 hace referencia al Ethernet de 10 Mbps de cable grueso, es
decir al que utiliza como medio de propagación el cable coaxial grueso. Posteriormente a dicha
norma, la IEEE fue redactando nuevas versiones de la 802.3 que corresponden a otros medios
de propagación como así también a otras velocidades de transmisión (tasa de bit). En la
Tabla I se resumen las distintas versiones del estándar 802.3 y sus descripciones.

Cuando la IEEE tomó como base el estándar original de DIX, le hizo algunos pocos
cambios. La principal razón por la diferencia entre ambas normas se debe a que ambos grupos
perseguían fines distintos. Las especificaciones de DIX fueron desarrolladas por las tres
compañías asociadas y fueron pensadas para describir pura y exclusivamente el sistema
Ethernet. Para ese entonces no existía un mercado abierto de LAN con diversos fabricantes.

Año Norma Nombre Velocidad Descripción


IEEE
1983 802.3 10Base-5 (Thick 10 Mbps 50 , cable coaxial de 10mm, topología bus
Ethernet)
1985 802.3a 10Base-2 (Thin Ethernet) 10 Mbps 50 , cable coaxial de 5 mm RG58, topología bus
1990 802.3i 10Base-T 10 Mbps Cable UTP categoría 3, 100 , topología estrella
1993 802.3j 10Base-F 10 Mbps Dos fibras multimodo a 850 nm
1995 802.3u 100Base-T4 100 Mbps Cuatro pares cable UTP categoría 3, 100 .

100Base-TX 100 Mbps Dos pares cable UTP categoría 5, 100 

100Base-FX 100 Mbps Dos fibras multimodo a 1300 nm


1997 802.3x Ethernet Full-Duplex 10 y
100 Mbps
1997 802.3y 100Base-T2 100 Mbps Dos pares cable UTP categoría 3, 100 
1998 802.3ac Virtual LANs (VLANs) Tramas extendidas hasta 1552 bytes para VLANs
1998 802.3z 1000Base-SX 1 Gbps Fibra multimodo a 850 nm
1000Base-LX/HX 1 Gbps Fibra multimodo a 1300 nm
1000Base-CX 1 Gbps Cable de cobre STP
1999 802.3ab 1000Base-T 1 Gbps Cuatro pares UTP categoría 5e, 100 
2002 802.3ae 10 Gigabit Ethernet 10 Gbps Fibras monomodo y multimodo, full duplex
solamente.

Tabla I. Principales normas 802.3

En cambio la IEEE fue desarrollando normas de manera tal de poder integrar el


mercado mundial de normas de redes LAN y así establecer un único conjunto de normas
internacionales que agrupe las diferentes tecnologías tanto actuales como las nuevas que
vayan apareciendo.

Las especificaciones tanto Ethernet como IEEE 802.3 se refieren a características de la


capa 1 y 2 correspondientes al modelo OSI de la ISO, es decir la capa física y la capa de
enlace de datos, incluyendo también las reglas de control de acceso al medio.

Identificadores IEEE para las distintas normas 802.3

El primer estándar IEEE 802.3 describía en sus capas de enlace de datos y física, un
sistema de interconexión de redes LAN basado en un cable coaxial grueso como medio de
comunicación. Desde ahí fue escribiendo nuevas normas para este sistema conforme se fue
mejorando o modificando el sistema original de cable coaxial grueso descripto originalmente
por Metcalfe y sus colegas. Cada una de estas versiones de la IEEE además de llevar un
número que hace referencia a la norma (802.3x en general) lleva un identificador, un nombre
digamos, compuesto de tres partes, que da cuenta de la velocidad de transmisión del sistema,
el tipo de señalización usada y el tipo de medio sobre el cual se transmite.

En los primeros sistemas, la parte del identificador que daba cuenta del medio físico se
basaba en la longitud del cable en metros. Posteriormente, la IEEE eliminó la convención

10 Ethernet 3
referente a la distancia o longitud del cable (la tercera parte del identificador) y la reemplazó
por el tipo de medio utilizado (por ejemplo par trenzado o fibra óptica). En orden cronológico
de aparición los identificadores son los siguientes:

10Base5
Este es el identificador correspondiente al sistema original Ethernet basado en cable
coaxial grueso. El 10 significa velocidad de transmisión de 10 megabits por segundo; Base se
refiere a baseband que significa que el medio de transmisión (en este caso coaxial grueso)
está dedicado a transportar un solo servicio: señales Ethernet1. Finalmente, el 5 hace
referencia a la máxima longitud de 500 metros que un segmento de cable de este sistema
puede tener. Para extender la red se conectan varios de estos segmentos unidos por
repetidores.

10Base2
Este sistema también se lo conoce como Ethernet de cable coaxial delgado. Opera a
10 Mbps en banda base (en el sentido expuesto anteriormente) y con longitudes máximas de
segmento de cable de 185 metros. En el identificador se decidió poner 2 al final por simplicidad
para no extender el nombre del mismo.

FOIRL
Significa Fiber Optic Inter-Repeater Link (Enlace de Fibra Óptica entre Repetidores). El
estándar original de DIX mencionaba un segmento punto a punto que podía usarse entre
repetidores aunque no se daba ninguna especificación al respecto. Más tarde el comité IEEE
desarrolló la norma FOIRL y la publicó en 1989. Originalmente fue diseñado para enlazar
segmentos Ethernet remotos mediante fibra óptica.

10Broad36
Este sistema fue diseñado para enviar señales de 10 Mbps sobre sistemas de cables de
banda ancha que soportan varios servicios simultáneamente (sería la contraparte de banda
base o baseband). El 36 hace referencia a los 3600 metros de distancia permitidos entre dos
estaciones. No tuvo gran desarrollo.

1Base5
Esta norma describe un sistema de 1 Mbps sobre cable de par trenzado. No ha sido
popular y fue rápidamente reemplazado por 10Base-T.

10Base-T
La “T” hace referencia a twisted (trenzado), del par de cable trenzado. Esta variante de
Ethernet opera a 10 Mbps en modo banda base, sobre dos pares trenzados categoría 3 o
mejor.

10Base-F

Es un sistema de 10 Mbps cuyo medio de transmisión es la fibra óptica. Se incluyó


como parte oficial del IEEE 802.3 en noviembre de 1993. Esta norma define 3 especificaciones:
10Base-FB, 10Base-FP y 10Base-FL.

100Base-T

Variante de Ethernet a 100 Mbps sobre par trenzado.

1
Baseband significa literalmente banda base y se refiere a una señal cuyo espectro de frecuencia se extiende desde
aproximadamente 0 hertz hasta unas decenas de megahertz. Sin embargo, en el caso de la nomenclatura IEEE de la
que estamos hablando no tiene absolutamente nada que ver con este significado.

4 10 Ethernet
100Base-X
Esta variante opera a 100 Mbps en banda base, tanto en par trenzado como en fibra
óptica usando codificación 4B/5B. Se lo subdivide en 100Base-TX y 100Base-FX.

100Base-TX
Esta es la variante Fast Ethernet que opera a 100 Mbps sobre dos pares trenzados de
alta calidad categoría 5. TX indica que es la versión de par trenzado de 100Base-X.

100Base-FX
Esta es la variante Fast Ethernet que opera a 100 Mbps en banda base sobre fibra
óptica multimodo.

100Base-T4
Esta variante de Fast Ethernet opera a 100 Mbps en banda base sobre cuatro pares
trenzados categoría 3 o mejor. No fue ampliamente desarrollada.

100Base-T2
Opera a 100 Mbps en banda base sobre dos pares trenzados categoría 3. Nunca fue
desarrollada por ningún fabricante y no hay ningún equipo basado en esta norma.

1000Base-X
Esta es la identificación IEEE para los sistemas Gigabit Ethernet basados en codificación
8B/10B. El sistema 1000Base-X incluye 1000Base-SX, 1000Base-LX y 1000Base-CX.

1000Base-SX
La “S” se refiere a “short”, de short wavelength, esto es, longitud de onda corta. La “X”
indica que pertenece al sistema con codificación 8B/10B mencionado antes. Lo de longitud de
onda corta tiene que ver con la longitud de onda utilizada para transmitir sobre fibra óptica.

1000Base-LX
Gigabit Ethernet sobre fibra óptica en larga longitud de onda (long wavelength).

1000Base-CX
Gigabit Ethernet basado en cable de cobre.

1000Base-T

Este es el identificador de la IEEE para Gigabit Ethernet sobre par trenzado de categoría
5 o mejor. No usa el esquema 8B/10B sino que usa un esquema diferente.

Rediseño de Ethernet

Por más que el diseño de una tecnología de red LAN sea muy bueno, no sirve de mucho
si uno solamente puede usar equipamiento provisto por un solo fabricante. Una LAN tiene que
ser capaz de trabajar con la más amplia variedad posible de equipamiento para poder tener la
mayor flexibilidad posible. Digamos que no se puede estar atado a un solo fabricante y tiene
que ser un sistema compatible con productos hechos por diferentes fabricantes. En los años 70
nadie pensaba en esta característica. Las computadoras eran caras y la tecnología de redes
sonaba como algo exótico.

Metcalfe entendió el potencial negocio que había detrás de todo esto y fue ahí que
convenció a la gente de Xerox para que formara un consorcio con otras compañías con el
propósito de normalizar Ethernet. La era de los sistemas abiertos de comunicación entre

10 Ethernet 5
computadoras basadas en Ethernet comenzó formalmente en 1980 cuando DIX anunció su
estándar para la red Ethernet de 10 Mbps.

Antes de este lanzamiento formal, en 1979 Bob Metcalfe creó una compañía para
comercializar Ethernet. Él creía que al tener un mercado abierto se podrían expandir las
capacidades brindadas a los usuarios de computadoras. Así fue que fundó la compañía 3Com
(Computer communication compatibility).

Ethernet prosperó durante los años 80, pero a medida que el crecimiento de las
computadoras instaladas se hacía más significativo los problemas inherentes al sistema
original de coaxial grueso se hacían más frecuentes, por ejemplo al hacer un tendido de
coaxial en un edificio. Con la aparición de Ethernet de coaxial delgado a mediados de los 80 la
cosa mejoró un poco pero las dificultades principales persistían. Dado que el sistema basado
en coaxial (tanto grueso como delgado) es un sistema en bus en donde todas las estaciones
comparten un cable en común, una falla en el cable deja a toda la red fuera de servicio.

La invención de Ethernet de par trenzado a finales de los 80 por una compañía llamada
SynOptics Communications, convirtió a esta tecnología de red en un sistema de topología
estrella mucho más confiable en donde todas las computadoras se conectan a un hub
(concentrador) central. Un sistema así es más fácil de instalar y de administrar, además de ser
más fácil la localización de fallas. Éste fue el primer rediseño importante de Ethernet desde la
versión original de Metcalfe. Sin lugar a dudas, el uso de esta tecnología de par trenzado fue lo
que le dio a Ethernet un crecimiento explosivo.

Rediseño de Ethernet a 100 Mbps

El sistema Ethernet original normalizado en 1980 funcionaba a una tasa de bit de


10 Mbps, una velocidad nada despreciable para aquella época. Durante esos años tal tasa de
transmisión era perfectamente compatible con la velocidad de procesamiento de las
computadoras. Sin embargo, a medida que la potencia de procesamiento de las computadoras
fue aumentando, 10 Mbps comenzó a resultar poco y las computadoras conectadas a Ethernet
“pedían más”.

Así, el siguiente rediseño importante de Ethernet consistió en aumentar la tasa de


transmisión por un factor de 10. Un nuevo estándar creó el sistema Fast Ethernet de
100 Mbps, adoptado oficialmente en 1995. Fast Ethernet está basado en par trenzado como así
también en cable de fibra óptica.

Con la invención de Fast Ethernet comenzaron a operar sistemas multi velocidad, esto
es a 10 Mbps o 100 Mbps. A través de un proceso de autonegociación la velocidad de
transmisión entre dos máquinas se ajusta automáticamente para que funcionen las dos a la
misma tasa de transmisión.

Ethernet de 1000 Mbps

En 1998 llegó un nuevo rediseño de Ethernet: otro crecimiento de la tasa de


transmisión por un factor de 10. Esto dio el nacimiento al estándar Gigabit Ethernet, que
describe un sistema que opera a 1000 millones de bits por segundo, tanto sobre par trenzado
como sobre fibra óptica. Una vez más, usando el mecanismo de autonegociación, se pueden
conectar sistemas de diferentes velocidades que se ajustan automáticamente a la velocidad
adecuada que permita interoperar a todas las máquinas involucradas.

El sistema Ethernet

Un sistema de Red de Área Local Ethernet está basado en hardware y software que
permite entregar datos digitales entre computadoras conectadas a dicha red. El sistema
original Ethernet, es decir el desarrollado por Robert Metcalfe y sus colegas y publicado

6 10 Ethernet
oficialmente como estándar de DIX, es un sistema que opera en modo half duplex (semi
duplex en castellano). Half duplex significa que una computadora que está enviando datos no
los puede estar recibiendo simultáneamente desde otra computadora. El ejemplo más común
de comunicación half duplex es el walkie talkie: la comunicación es en ambos sentidos, pero
habla uno o habla el otro, no los dos simultáneamente. En este sistema Ethernet half duplex
varias computadoras comparten un canal de comunicación en común (topología bus) que para
ser accedido sin conflictos (o al menos con conflictos administrados inteligentemente) utilizan
un protocolo de acceso al medio (MAC, Media Access Control) basado en el sensado de
portadora (esto es, la “escucha” del canal) y la detección de posibles colisiones. El nombre
completo de todo esto, en Inglés, es Carrier Sense Multiple Access with Collision Detection
(Acceso Múltiple con Sensado de Portadora y Detección de Colisiones) o protocolo CSMA/CD
como ya vimos en otro capítulo. Hasta la aparición de los switches (conmutadores) el sistema
half duplex fue el modo de operación que usó el sistema Ethernet.

Con la llegada los switches el canal en común desapareció y la topología en estrella


entró en escena, permitiendo comunicaciones full duplex y sin usar ya el protocolo
CSMA/CD.

Para una mejor descripción podríamos decir que el sistema Ethernet consta de 4 partes:

 El frame o trama, formado por un conjunto de bits que transporta datos a través
del sistema.

 El protocolo de control de acceso al medio, que consiste en un conjunto de


reglas utilizadas por las interfaces Ethernet para poder acceder al canal de
manera ordenada teniendo en cuenta que son muchas las computadoras
conectadas a la red y que podrían querer acceder al mismo tiempo.

 Las componentes de señalización, consistente en dispositivos electrónicos que


envían y reciben señales sobre el canal Ethernet.

 El medio físico, que consiste en cables y elementos de hardware usados para


transportar las señales digitales entre computadoras que están conectadas a la
red.

El frame Ethernet o trama Ethernet es el corazón de este sistema. El hardware del


sistema es el encargado de mover tramas Ethernet entre computadoras o en forma más
general entre estaciones ya que también se pueden considerar otros dispositivos como
impresoras o cualquier otro equipo conectado a la red. Desde el punto de vista del modelo OSI
la trama Ethernet pertenece a la capa dos, es decir a la capa de enlace de datos. Los bits
de esta trama están agrupados en campos, como se muestra en la Figura 1.

8 bytes 6 bytes 6 bytes 2 bytes 46 a 1500 bytes 4 bytes

Dirección de Dirección de
Preámbulo Tipo Datos CRC
Destino Origen

Figura 1. Trama Ethernet

La trama comienza con el campo Preámbulo, de 8 bytes de longitud o 64 bits. En un


sistema Ethernet de 10 Mbps este preámbulo entrega al hardware (capa física) una secuencia
de bits para alertar que una trama se está por comenzar a transmitir. Los sistemas de 100 y
1000 Mbps no requieren de esta trama de inicio pero para evitar cambios en la estructura de la
trama aún se sigue transmitiendo.

10 Ethernet 7
A continuación del preámbulo se encuentran los campos de dirección de destino y
dirección de origen. La asignación de direcciones es controlada por la Asociación de Estándares
IEEE (IEEE-SA) quien administra una porción del campo de dirección. La IEEE-SA le asigna a
cada fabricante de interfaces de red un bloque de 24 bits que es único (Organizationally
Unique Identifier, OUI). Este identificador de 24 bits es único para cada fabricante de
interfaces de red y de esta manera se evita el problema de que haya dos interfaces de red, de
dos fabricantes diferentes, que tengan la misma dirección de red. Con esto se elimina la
necesidad de administrar localmente cada dirección de red. Luego veremos con algo más de
detalle el significado de direccionamiento local y global.

Un fabricante de interfaces Ethernet crea una única dirección Ethernet de 48 bits para
cada unidad por él fabricada agregándole 24 bits adicionales a los 24 que le asignó la OUI.
Estos 24 bits adicionales también son únicos para cada unidad fabricada por ese fabricante y
representan el número de serie de la interfaz. Esta dirección resultante de 48 bits conforma la
dirección física de Ethernet o dirección de Control de Acceso al Medio, conocida como MAC
Address.

La dirección asignada a cada fabricante corresponde al campo Dirección de Origen. El


campo Dirección de Destino corresponde precisamente a la dirección hacia donde va dirigida la
trama Ethernet. Para una misma estación el campo Dirección de Origen es fijo, mientras que el
campo Dirección de Destino es variable dependiendo de a qué estación se envía la trama.

A continuación de los campos de dirección se encuentra un campo de 2 bytes, o 16 bits,


llamado campo Tipo (o de longitud en el caso del estándar IEEE). Como veremos con más
detalle más adelante este campo se utiliza para identificar a qué protocolo de capa 3
corresponde el campo de datos de la trama Ethernet. Es decir, a qué protocolo de capa 3 se
debe entregar el campo de datos transportado por la trama (por ejemplo al protocolo IP).

El siguiente campo es el campo de datos, que puede tener una extensión de entre 46 y
1500 bytes. Es obligatorio que este campo tenga al menos 46 bytes de extensión. Esta
extensión mínima asegura que la trama Ethernet tenga una duración de tiempo suficiente para
que pueda ser “escuchada” por cada una de las demás estaciones conectadas a la red. Cada
estación debe escuchar las tramas dentro del máximo tiempo de ida y vuelta de la señal de
propagación que transmite dicha trama. Esto se explicará con más detalle más adelante. Si el
campo de datos es menor a 46 bytes entonces se utilizan bytes de relleno para completar los
46 bytes mínimos.

Finalmente, el último campo de la trama es una secuencia de verificación de trama


(Frame Check Sequence, FCS) de 32 bits. Este campo FCS contiene un código de redundancia
cíclica (Cyclic Redundancy Checksum, CRC) que verifica la ocurrencia de errores de bit. Este es
un código de tipo polinomial como los que se estudiaron oportunamente en capítulos
anteriores. El campo FCS también se llama CRC.

Protocolo de control de acceso al medio

El sistema Ethernet half duplex originalmente desarrollado utilizaba el protocolo MAC


(Media Access Control), que consiste en un conjunto de reglas para que varias estaciones
puedan compartir un canal de comunicación en común de manera organizada. Este mecanismo
es bastante simple: cada computadora o terminal conectada a una red Ethernet opera de
manera independiente, no existe un controlador central.

El sistema de transmisión Ethernet es del tipo broadcast, es decir del tipo difusión. Eso
significa que cada trama que es transmitida a una cierta estación destinataria es en realidad
“escuchada” por todas las estaciones que están conectadas a la red. Cada estación compara la
dirección que aparece en el campo Dirección de Destino con su propia MAC Address. Si las
direcciones difieren entonces descarta la trama transmitida por la estación transmisora. Si las
direcciones son iguales entonces interpreta que la trama estaba dirigida a él y procesa la
trama completa. Cuando las direcciones difieren, la estación destinataria interrumpe el

8 10 Ethernet
procesamiento de la trama recibida por difusión inmediatamente después de leer el campo de
dirección de destino y verificar que no coincide con su propia dirección. Cada estación, antes
de transmitir una señal Ethernet, escucha el canal y verifica que esté desocupado. El
mecanismo para acceder al canal y transmitir una señal Ethernet se llama protocolo CSMA/CD.

Cada estación, antes de transmitir, debe esperar hasta que no haya señal presente en
el canal. Si no hay señal presente entonces transmite. Si hay señal presente es porque otra
estación está transmitiendo (hay portadora presente en el canal) y todas las demás estaciones
con intenciones de transmitir deben esperar hasta que el canal se desocupe. A esta parte del
protocolo hace referencia el término carrier sense o sensado de portadora.

Con el término Multiple Access se hace referencia a que son muchas las estaciones que
intentan transmitir y todas con la misma prioridad.

Dado que todas las estaciones tienen igual oportunidad para transmitir es posible que
dos o más estaciones hayan sensado el canal como desocupado y comiencen a transmitir sus
tramas simultáneamente. Cuando esto ocurre, los dispositivos de señal de las interfaces
Ethernet detectan la colisión de señales y en consecuencia las estaciones que estaban
transmitiendo dejan de transmitir. Antes de volver a intentar una retransmisión cada estación
espera un tiempo aleatorio. Luego de concretarse una transmisión exitosa, si la misma
estación necesita enviar inmediatamente otra trama vuelve a ejecutar el protocolo CSMA/CD;
es decir que se ejecuta cada vez que debe transmitir una trama. Esto le otorga igualdad de
oportunidades a todas las estaciones.

Es importante aclarar que las colisiones que se producen como consecuencia de


intentos de transmisión simultáneos de varias estaciones no deben interpretarse como un
mal funcionamiento del sistema. Está previsto que el sistema funcione así porque así fue
diseñado y no debe ser motivo de preocupación creyendo que algo anda mal.

Cuando se produce una colisión, cada estación involucrada espera un tiempo aleatorio
antes de retransmitir. Si todas esperaran un mismo tiempo fijo volverían a colisionar de nuevo
en el próximo intento. El tiempo de espera aleatorio es un múltiplo entero de una cierta unidad
de tiempo, por lo que puede ocurrir que en el segundo intento dos estaciones vuelvan a
colisionar ya que les correspondió el mismo tiempo de espera aleatorio. Si esto ocurre, ambas
vuelven a esperar otro tiempo aleatorio hasta que finalmente puedan transmitir sin colisión.
Este proceso de espera se llama algoritmo de retroceso exponencial binario y lo trataremos
con mayor detalle más adelante.

La trama Ethernet que hemos mencionado aquí y el protocolo CSMA/CD se usan en


todos los sistemas Ethernet half duplex, sean estos sobre cable coaxial, par trenzado o fibra
óptica. En el modo full duplex (transmisión y recepción simultánea) la trama sigue
siendo la misma pero el protocolo CSMA/CD ya no se usa.

Descripción detallada del protocolo MAC

Veamos ahora con más detalle el protocolo de control de acceso al medio que se
describió en los últimos párrafos anteriores. Recordemos que este protocolo MAC está basado
en CSMA/CD que se aplica en sistemas semiduplex. Los sistemas full duplex (dúplex completo)
no usan el mecanismo CSMA/CD.

En el modo half duplex original, el protocolo MAC permite que un conjunto de


estaciones puedan competir por el acceso al canal Ethernet compartido, de una manera
imparcial y equitativa. Las reglas de este protocolo determinan cómo se deben comportar las
estaciones conectadas a la red Ethernet, ya sea cuando están por transmitir una trama o
cuando se ha producido una colisión y deben volver a transmitir.

10 Ethernet 9
Dado que no existe un controlador central, cada interfaz Ethernet opera de manera
independiente usando el mismo protocolo MAC. Equipando a todas las interfaces con el mismo
conjunto de reglas todas las estaciones operan de la misma manera.

La trama Ethernet descripta originalmente en el protocolo publicado por DIX fue


posteriormente modificada por la IEEE cuando escribió su estándar 802.3. La Figura 2 repite la
trama Ethernet de la Figura 1, ahora junto con la trama establecida por el estándar IEEE
802.3. Si bien las diferencias entre ambas tramas son mínimas, es suficiente para que sean
incompatibles entre sí. Esto significa que en una red todas las estaciones conectadas deben
tener NICs (Network Interface Card, Tarjetas de Interfaz de Red) compatibles con el protocolo
Ethernet o con el protocolo IEEE 802.3. Como este último es una norma internacional,
prácticamente todos los fabricantes actuales venden tarjetas que cumplen con el 802.3. Aún
quedan algunos pocos productos que cumplen con el protocolo Ethernet o con ambos y
normalmente son usados en los casos que se desean hacer expansiones de redes
relativamente viejas.

8 bytes 6 bytes 6 bytes 2 bytes 46 a 1500 bytes 4 bytes

Dirección de Dirección de
Preámbulo Tipo Datos CRC
Destino Origen

8 bytes 6 bytes 6 bytes 2 bytes 46 a 1500 bytes 4 bytes

Dirección de Dirección de
Preámbulo Longi- Datos CRC
Destino Origen
tud

Figura 2. Trama Ethernet DIX (arriba) y trama IEEE 802.3 (abajo)

Veamos entonces en detalle cada campo de ambas tramas y las diferencias que hay
entre un protocolo y el otro.

La especificación Ethernet determina tanto la estructura de la trama como así también


cuándo una estación puede transmitirla. Como venimos diciendo, el control del acceso al medio
está basado en el sensado de portadora previo a la transmisión y en la detección de colisiones,
todo esto resumido en la sigla CSMA/CD. Cuando la IEEE escribió su propio protocolo 802.3
ciertamente hizo algunos cambios mínimos y un cambio relativamente significativo en el
campo Tipo de la trama Ethernet original.

El estándar de DIX define en la trama un campo llamado Tipo. La primera versión del
802.3, publicada en 1985, especifica este campo como Longitud, con un cierto mecanismo que
permite que ambos formatos (DIX e IEEE) puedan coexistir en una misma red. Debido a este
mecanismo la mayoría de los fabricantes de software para redes siguieron usando el campo
como Tipo y el estándar IEEE 802.3 fue posteriormente modificado llamando a este campo de
manera dual Tipo/Longitud, el cual se adapta a uno u otro formato dependiendo el uso.

La Figura 2 muestra tanto la versión DIX como la IEEE de la trama Ethernet. Como se
ve, ambas tienen la misma longitud total de trama y la misma cantidad de campos, por lo que
las interfaces Ethernet pueden usarse para transmitir cualquiera de las dos versiones de
tramas. En tal caso, la diferencia radica en el contenido de los campos y en la interpretación
de esos contenidos que deben hacer las estaciones transmisoras y receptoras.

10 10 Ethernet
Preámbulo

La trama comienza con una secuencia de 64 bits correspondiente al campo Preámbulo.


Esta secuencia sirve para que las interfaces Ethernet de 10 Mbps conectadas en la red se
puedan sincronizar antes de que comiencen a llegar los datos de los siguientes campos.
Básicamente este campo permite que se puedan gastar algunos pocos bits para que las demás
estaciones “se acomoden” antes de recibir datos.

A pesar de que Fast Ethernet (100 Mbps) y Gigabit Ethernet usan otro mecanismo de
sincronismo y no necesitan el campo preámbulo, este campo se sigue manteniendo en estos
dos casos sólo para mantener compatibilidad con la trama originalmente definida.

En el estándar de DIX el campo preámbulo consta de 8 bytes, cada uno con una
secuencia alternada de unos y ceros. El último byte de este campo tiene 6 bits con unos y
ceros alternados y los dos últimos bits son “1”, “1”. Estos dos bits indican que se ha llegado al
final del preámbulo y que a continuación comienzan los campos que llevan información.

En la especificación IEEE 802.3 el campo preámbulo está dividido en dos partes, la


primera con 7 bytes y la segunda con un byte, llamado Start of Frame Delimiter (SFD) o sea,
Delimitador de Comienzo de Trama. La secuencia de bits son unos y ceros alternados como en
el caso de DIX y los dos últimos bits de SFD son 1,1 —¡como en el estándar de DIX! Es decir,
en la práctica no hay ninguna diferencia entre el preámbulo de DIX y el de la IEEE.

Dirección de Destino (Destination Address)

A continuación del campo de preámbulo viene el campo Dirección de Destino. El


contenido de este campo identifica la computadora o terminal a la que va dirigida la trama que
se transmite. Cada interface Ethernet tiene asignada una dirección única, de 48 bits, llamada
comúnmente dirección de hardware o dirección física. El campo de dirección de destino
contiene un número de 48 bits que corresponde a la dirección de la interfaz Ethernet instalada
en la computadora o terminal hacia donde va dirigida la trama. Es decir, indica a qué
computadora debe ser enviada la trama generada por la estación transmisora. Este campo de
dirección de destino puede tener además ciertos valores especiales que indican por ejemplo
una dirección multicast (multidifusión) o broadcast (difusión). Una dirección multicast implica
transmisión de la trama con destino a varias computadoras del total que está conectado a la
red, mientras que una dirección de broadcast (difusión) implica la transmisión de la trama con
destino a todas las computadoras conectadas a la red.

Cada interfaz Ethernet conectada a la red comienza a leer la trama que está siendo
transmitida en ese momento por otra interfaz (es decir, una trama que está “puesta” en el
cable o medio de transmisión), comenzando por el preámbulo para sincronizarse y siguiendo
luego con el campo de dirección de destino. Si al terminar de leer el campo de dirección de
destino la interfaz comprueba que la dirección de destino que allí aparece no concuerda con su
propia dirección Ethernet, significa que no es una trama dirigida a ella y por lo tanto ignora el
resto de los campos que vienen a continuación en esa trama y directamente no los lee.

I/G U/L 46 bits de dirección

48 bits de dirección

Figura 3. Formato del campo de dirección de origen y dirección de destino

La Figura 3 muestra la composición del campo de dirección de destino y dirección de


origen. Tanto la dirección de destino como la de origen se representan normalmente en

10 Ethernet 11
formato hexadecimal, muchas veces con los tres primeros bytes separados por dos puntos de
los segundos tres bytes. Por ejemplo, la dirección de origen 02608C0876543 se muestra como
02608C:876543. Los primeros tres bytes identifican al fabricante de la interfaz mientras que
los tres últimos bytes identifican a una interfaz en particular de ese fabricante (es como un
número de serie). Esto es lo que se conoce como MAC Address. La Figura 4 muestra otros
formatos en hexadecimal que se usan en la escritura de la MAC address, además del recién
comentado.

DIRECCIÓN MAC
Asignado por Asignado por
la IEEE el fabricante
02608C 876543
02608C:876543
02 – 60 – 8C – 87 – 65 – 43
02:60:8C:87:65:43
02.60.8C.87.65.43

Figura 4. Cuatro modos de notación hexadecimal


diferentes para la dirección MAC

Dentro del campo dirección, el subcampo I/G (Individual / Group) de un bit de longitud
es puesto a 0 para indicar que la trama va destinada a una sola estación individual
(Individual), mientras que cuando se pone en 1 es para indicar que la trama va dirigida a un
grupo de estaciones (Group). Un caso especial de dirección de grupo es cuando todos los bits
del campo de dirección son puestos a 1, lo cual significa que se trata de una dirección de
broadcast, es decir que la trama va destinada a todas las estaciones de la red y por lo tanto
debe ser aceptada por todas ellas. En hexadecimal es “FFFFFFFFFFFF”. Cuando la dirección
especifica una sola estación de destino se habla de dirección unicast, si es de grupo es
multicast y si son todas las estaciones es broadcast.

En el campo Dirección de Origen el subcampo I/G siempre está puesto a 0.

El subcampo U/L (Universal / Local) sirve para identificar si la dirección es


universalmente administrada (bit en 0) o localmente administrada (bit en 1). Cada interfaz
Ethernet tiene una dirección única que se graba en una ROM al momento de su fabricación.
Para asegurar que esta dirección universalmente administrada es única y no está repetida, la
IEEE asigna bloques de direcciones a cada fabricante de interfaces. Esta dirección está
compuesta por un prefijo de 3 bytes, el cual identifica al fabricante, y un sufijo de 3 bytes que
es asignado a la interfaz por el fabricante de la misma. Por ejemplo, el prefijo hexadecimal
02608C identifica a una NIC fabricada por 3Com, mientras que el 00805F identifica a una NIC
fabricada por Compaq. La dirección completa, está claro, queda compuesta por 6 bytes, como
se ve en la Figura 3.

Si bien el uso de direccionamiento universal elimina la posibilidad de duplicado de


direcciones, en algunos casos es conveniente utilizar direcciones administradas localmente ya
que le otorga facilidad de administración a ciertos tipos de redes.

En la versión de DIX, el subcampo U/L no se usa ya que las direcciones son siempre
administradas universalmente.

Dirección de origen (Source Address)

El campo Dirección de Origen identifica a la estación que está transmitiendo la trama.


Como se mencionó antes, esta dirección (al igual que la de destino) tiene una longitud de 6

12 10 Ethernet
bytes. Los tres primeros bytes son asignados al fabricante de la NIC por la IEEE y los tres
últimos son asignados por el fabricante de la NIC.

Campo Tipo

El campo Tipo es aplicable sólo al formato Ethernet de DIX y tiene una longitud de 2
bytes. Este campo está inmediatamente antes del campo Datos e identifica a qué protocolo de
alto nivel (capa 3) debe enviarse el contenido del campo datos.

No perdamos de vista que la trama Ethernet (sea versión DIX o IEEE) corresponde a
la capa 2 del modelo OSI, es decir, la capa de enlace de datos. Por lo tanto, cuando la capa
2 de la estación receptora reciba toda la trama completa, debe determinar a qué protocolo de
capa 3 debe pasarle el campo datos de la trama. En una red LAN hay numerosos protocolos de
capa 3 que se pueden ejecutar o bien se están ejecutando al mismo tiempo. El protocolo IP
seguramente es el más conocido aunque no el único; ARP es otro, por ejemplo. Por lo tanto,
cuando la capa 2 de la estación receptora recibe la trama Ethernet se pregunta: ¿A quién de la
capa 3 le entrego el contenido del campo Datos? ¿Al protocolo IP que está arriba mío? ¿Al
protocolo ARP que está arriba mío? La respuesta está en el contenido del campo Tipo.

Según el valor que tenga el campo Tipo, la capa 2 entregará el contenido del campo
datos a un cierto protocolo de capa 3. Esencialmente cada protocolo de cada capa del modelo
OSI es una subrutina de software (por ejemplo una librería tipo *.dll), por lo que el contenido
del campo datos es entregado a la subrutina de software de la capa 3 que corresponde al
protocolo identificado por el campo tipo.

Protocolo Valor hexadecimal


Experimental 0101-D1FF
Xerox XNS 0600
Ipv4 0800
X.75 Internet 0801
X.25 Level 3 0805
Address Resolution Protocol (ARP) 0806
Reverse ARP 8035
SNMP 814C
IPv6 86DD

Tabla II. Algunos valores típicos del campo tipo, en hexadecimal

La Tabla II muestra algunos valores representativos, expresados en hexadecimal,


correspondientes al campo tipo y que indican a qué protocolo de capa 3 debe enviarse el
contenido del campo datos. Por ejemplo, si el campo Tipo tiene el valor hexadecimal 0800
significa que el contenido del campo Datos debe enviarse al software de capa 3 que se encarga
de ejecutar el protocolo IP.

Campo Longitud

Tanto en el protocolo de DIX como en el de IEEE el tamaño mínimo de la trama debe


ser de 64 bytes de longitud, medido desde el campo Dirección de Destino hasta al campo CRC.
Esta imposición de tamaño mínimo sirve para asegurar que haya un suficiente tiempo de
duración de transmisión de la trama que permita a las demás estaciones detectar una colisión,
si la hay. Esto está basado en la longitud máxima de cable especificado para una red y la
velocidad de propagación de los bits dentro de ese cable, como veremos con más detalles
posteriormente. Esto implica que la longitud mínima del campo datos (cuya longitud total es
variable) debe ser de 46 bytes. Ambos protocolos establecen una longitud máxima para el
campo datos de 1500 bytes. Tanto en DIX como en IEEE 802.3 si el campo Datos no
alcanza el mínimo de 46 bytes entonces se lo completa con bytes de relleno.

10 Ethernet 13
El campo Longitud pertenece al protocolo IEEE 802.3. Cuando este protocolo fue
publicado inicialmente en 1985, no se incluyó el campo Tipo sino que se incluyó en su lugar el
campo Longitud. Posteriormente en 1997 IEEE oficializó el uso del campo Tipo en su protocolo,
manteniendo los identificadores originales que había asignado Xerox pero quedando bajo su
responsabilidad la asignación de los nuevos identificadores. En la versión más reciente del IEEE
802.3 este campo se llama ahora Tipo/Longitud, y según el valor que tenga este campo se
comporta como Tipo o como Longitud.

Lo que hace entonces el campo Longitud es indicar cuál es la longitud del campo datos
que se está transmitiendo en la trama, sin contar la cantidad de bytes de relleno, si los hay.
Este campo además trabaja en conjunto con un subcampo que va dentro del campo Datos y
que se llama Control Lógico de Enlace, Logical Link Control o LLC. El funcionamiento de este
LLC viene especificado por la norma IEEE 802.2 y se utiliza para definir a qué protocolo de
capa 3 pertenece el campo Datos que viene transportando la trama, cumpliendo de algún
modo la función del campo Tipo del estándar de DIX. Este encabezado LLC no se usa en la
norma Ethernet de DIX.

Cuando el campo está definido en forma dual como Tipo/Longitud, su función queda
definida de acuerdo al valor que contiene este campo. Ya que la longitud del campo datos no
puede ser mayor que 1500 (decimal), cuando el campo Tipo / Longitud es mayor que este
valor entonces funciona como Tipo. Si es menor entonces funciona como Longitud.
Obviamente, si funciona como Tipo entonces el encabezado LLC no se usa.

Campo Datos

Este es el campo que transporta la información útil de la trama. Una vez que se ha
recibido toda la trama, el protocolo de capa 2 descarta todos los encabezados como así
también el campo CRC y se queda con el campo Datos que es la parte útil y la que debe ser
enviada a la capa 3. No nos olvidemos que la trama Ethernet al pertenecer a la capa 2 le está
proveyendo un servicio a la capa 3 (capa de red). En la estación transmisora, la capa 3 le pasa
un paquete de datos a la capa 2, ésta le pone los encabezados necesarios y el CRC, se la pasa
a la capa física, y ésta la transmite. En la estación receptora, la capa física recibe los bits
físicos, los convierte en unos y ceros, y se los pasa a la capa 2, quien le quita los encabezados
y el CRC y se queda con el campo Datos que es la parte útil en términos del servicio que
presta a la capa 3.

En el protocolo de DIX el campo Datos tiene una longitud máxima de 1500 bytes y una
longitud mínima de 46 bytes. Como se dijo antes, esta longitud mínima sirve para garantizar
una longitud mínima de la trama completa. Si los datos que la capa 3 le envía a la capa 2
tienen una longitud menor a 46 bytes, el protocolo de capa 2 se encarga de poner bytes de
relleno hasta completar 46 bytes.

En el protocolo IEEE 802.3 el campo de datos también tiene un máximo de 1500 bytes
y un mínimo de 46, esto último por las mismas razones expuestas antes. También se usan
bytes de relleno de ser necesario. Sin embargo, para el caso IEEE 802.3, en el campo de datos
viaja también el encabezado LLC, como se mencionó antes, y que proporciona información de
control como así también información referente al protocolo de capa 3 al que está asociado el
campo datos (cumpliendo de alguna manera la misma función que el campo Tipo de DIX). Los
bytes que conforman este encabezado LLC viajan al comienzo del campo Datos y está
especificado por el estándar IEEE 802.2.

Campo CRC

Este es el último campo de la trama, tanto en DIX como en IEEE, de 4 bytes de


longitud. Es un código de redundancia cíclica de detección de errores. El transmisor utiliza un
polinomio cíclico para calcular el valor del CRC, empleando los valores de los campos de
dirección, tipo o longitud y datos. No usa el contenido del campo preámbulo. Dicho de otro

14 10 Ethernet
modo, el polinomio de mensaje m(X) está formado por los campos que van desde Dirección de
Destino hasta Datos. El valor obtenido como bits de redundancia es puesto en el campo CRC.

Este campo CRC es un número binario de 32 bits. Cada bit corresponde al coeficiente de
un polinomio de grado n-1, es decir de grado 31. Para calcular el contenido del campo CRC se
considera a los bits de los campos de dirección, tipo/longitud y datos como los coeficientes de
un polinomio m(X) de grado n-1. El primer bit del campo Dirección de Destino corresponde al
coeficiente de grado n-1 de dicho polinomio, mientras que el último bit del campo Datos
corresponde al coeficiente de grado 0. Este polinomio m(X) es multiplicado por X32 y luego
dividido por el siguiente polinomio generador G(X):

G( X )  X 32  X 26  X 23  X 22  X 16  X 12  X 11  X 10  X 8  X 7  X 5  X 4  X 2  X  1

Esta división da como resultado un cociente y un resto. Este último es el que se usa
como valor del campo CRC.

Una vez que la trama es recibida por la estación receptora, ésta utiliza el mismo
polinomio generador G(X) para calcular el síndrome (determinar si hubo error). Si la división
entre G(X) y el mensaje recibido (incluyendo el CRC) da resto cero, se considera que no tiene
errores y por lo tanto la trama es aceptada. Si el resto de la división es distinto de cero, se
considera que la trama tiene errores y por lo tanto se descarta. Como se ve, el sistema
detecta errores, no los corrige. Las otras dos situaciones bajo las cuales la trama recibida es
descartada es cuando el receptor comprueba que no hay un número entero de bytes recibidos,
y cuando la longitud del campo Datos no es igual a lo que dice el campo Longitud (este caso
sólo en las tramas IEEE 802.3). Cuando una trama es descartada por cualquiera de los
motivos anteriores, la capa 2 receptora NO solicita la retransmisión de la misma y NO
avisa nada a nadie. En algún momento, alguna de las capas superiores se dará
cuenta que falta un paquete y solicitará su retransmisión a la misma capa de la
estación transmisora (mediante un diálogo virtual capa a capa como ya hemos
aprendido).

Interframe Gap (Intervalo intertrama)

Una vez que se transmite el último bit de la trama, el transmisor espera un pequeño
tiempo llamado intervalo intertrama o tiempo intertrama (indicado como IFG), antes de
transmitir la siguiente trama que pudiera tener disponible en forma inmediata. Es decir que el
transmisor no transmite una trama a continuación de la otra sino que espera un breve
intervalo de tiempo entre tramas consecutivas. En Ethernet de 10 Mbps este tiempo es de 9,6
µs (96 bits). Sirve para que los circuitos electrónicos de las interfaces tengan tiempo para
reestablecerse y volver a sincronizarse con el comienzo de la próxima trama.

La condición de presencia de señal en un canal Ethernet se indica con el nombre de


portadora. Cuando la interface transmisora termina de transmitir el último bit de la trama el
canal pasa a estar desocupado. En el sistema de 10 Mbps, la pérdida de portadora le indica a
la estación receptora que la trama ha terminado.

Reglas para el control de acceso

Luego de haber visto la descripción de la trama Ethernet, en sus dos versiones, veamos
a continuación cuáles son las reglas usadas para que las tramas puedan viajar a través de la
red sin conflictos y de manera organizada para poder “convivir” con todas las estaciones
conectadas a la red. Esto es lo que se conoce como control de acceso al medio.

No perdamos de vista que la explicación siguiente es para el caso half duplex. Antes de
comenzar la descripción de este mecanismo definamos los siguientes puntos:

10 Ethernet 15
 Cuando una señal está siendo transmitida sobre el canal se dice que hay
presencia de portadora (carrier).

 Cuando una estación conectada a la red desea transmitir una trama espera
hasta que el canal esté desocupado, condición esta última denominada ausencia
de portadora.

 Una vez que el canal queda desocupado, la estación espera un tiempo IFG y
luego transmite la trama.

 Cuando dos estaciones transmiten al mismo tiempo, ambas detectan la colisión


de las señales, tras lo cual reprograman la retransmisión de sus tramas. Esta
condición se llama detección de colisión (collision detect).

Veamos cómo hace una estación para saber si está en condiciones de transmitir y cómo
es que transmite entonces su trama y qué hace cuando ocurre una colisión. Las reglas que
gobiernan este mecanismo son como sigue.

1. Si no hay portadora presente (esto es, el canal está desocupado) y esta


ausencia de portadora se manifiesta por un tiempo igual o mayor al IFG entonces la estación
transmite su trama inmediatamente. Si la estación desea transmitir varias tramas una atrás de
otra, cada vez debe volver a escuchar el canal y verificar la ausencia de portadora durante un
tiempo igual a IFG antes de transmitir la siguiente trama.

Este tiempo de espera Interframe gap o IFG sirve para que la estación receptora se
vuelva a sincronizar. Este tiempo IFG está definido en 96 bits de duración. Esto significa, para
Ethernet de 10 Mbps, un período de tiempo de 9,6 µs. O bien 960 ns para Ethernet de 100
Mbps, o 96 ns para Gigabit Ethernet (1000 Mbps).

2. Si hay portadora presente en el canal, esto es, si el canal está ocupado, la


estación interesada en transmitir sigue escuchando el canal hasta que la portadora desaparece
(el canal se desocupa). Ni bien se desocupa el canal, la estación espera un tiempo IFG y
transmite su trama.

3. Si se detecta una colisión durante la transmisión, la estación continúa


transmitiendo por un período adicional de 32 bits (jam signal, algo así como señal de
interferencia). En el caso de que la colisión ocurra durante la transmisión del preámbulo, la
estación completa la transmisión del mismo y luego sigue con los 32 bits de jam. Al transmitir
completamente el preámbulo más la señal de jam se garantiza que la señal de colisión
permanezca sobre el medio de transmisión un tiempo suficiente como para que sea detectada
por todas las estaciones.

Una vez transmitida la señal de jam, las estaciones involucradas en la colisión deben
volver a intentar retransmitir sus tramas. Para ello, esperan un período de tiempo aleatorio y
vuelven a transmitir su trama, empezando por el paso 1. Este proceso se llama backoff. La
elección de un tiempo de espera aleatorio (diferente para cada estación involucrada en la
colisión) se hace para que no vuelvan a colisionar estas estaciones.

Si en el primer intento de retransmisión dos estaciones vuelven a colisionar (si se da el


caso de que ambas eligieron el mismo número aleatorio de espera), el proceso de backoff se
repite, ahora con un conjunto más amplio de tiempos de backoff de los cuales cada estación
elegirá uno en forma aleatoria. De esta manera, al ser este conjunto más amplio, la
probabilidad de que dos estaciones elijan el mismo número es menor. Aun así podrá darse el
caso de que vuelvan a tener el mismo tiempo de espera, con lo cual volverán a colisionar. En
tal caso se repite una vez más el proceso de backoff, ahora con un conjunto de números más
grande aún. Este mecanismo lo volveremos a ver con más detalle más adelante.

16 10 Ethernet
4. Una vez que la estación transmisora ha logrado transmitir sin colisión 512 bits
de la trama (sin contar el preámbulo), se dice que ha adquirido el canal o tomado el canal.
Esto significa que puede terminar de transmitir la trama sin posibilidad de colisión. La unidad
de tiempo de 512 bits se la conoce como slot time (ranura de tiempo) del canal Ethernet. Esto
se aplica a Ethernet de 10 y 100 Mbps. En Gigabit Ethernet es diferente y lo veremos luego
con detalle.

Si se trata de una retransmisión por colisión, una vez tomado el canal y terminada de
retransmitir la trama, la estación borra el contador de colisiones, el cual se usa para el proceso
de backoff. Si al transmitir la siguiente trama aparece una nueva colisión, el proceso de
backoff comienza desde el principio otra vez, tal como se explicó anteriormente.

Debe quedar claro que cada estación transmite una trama a la vez, y cada estación
aplica las mismas reglas de acceso al medio cada vez que desea transmitir una trama. De esta
manera se asegura igualdad de oportunidades a todas las estaciones. Si la red está muy
cargada porque hay mucho tráfico entonces estará lenta (dado que hay más probabilidad de
colisiones), pero esa lentitud se verá reflejada por igual en todas las estaciones.

La ranura de tiempo de 512 bits está basada en el máximo tiempo de propagación, ida
y vuelta, de la señal eléctrica que viaja por el canal en una red Ethernet. Este tiempo de
propagación depende de la longitud y el tipo de cable utilizado en una red en particular y de la
cantidad de dispositivos que la señal eléctrica atraviesa (un repetidor por ejemplo). Los
estándares brindan especificaciones para las máximas longitudes de cable y la máxima
cantidad de repetidores que se debe usar en un determinado tipo de red. El tiempo de
propagación de ida y vuelta no tiene que ser mayor al tiempo establecido por la ranura de
tiempo de 512 bits (51,2 µs para Ethernet de 10 Mbps).

La duración de la ranura de tiempo se determinó a partir de los siguientes elementos:

 Cada estación puede escuchar el canal sólo cuando está transmitiendo. Por lo
tanto, una vez que transmitió el último bit, ya no puede escuchar el canal. Esto
significa que una colisión sólo puede ser escuchada cuando la estación
transmite. Cuando deja de transmitir, ya no puede enterarse de que hubo una
colisión.

 El tiempo que le lleva a una señal propagarse desde un extremo a otro en una
red de máxima longitud. Esto se llama tiempo de propagación de ida y vuelta de
capa física.

 El máximo tiempo requerido para imponer la colisión, esto incluye el tiempo


requerido para detectar la colisión y la secuencia de jam que se envía a
continuación.

Ambos elementos son calculados en términos del número de tiempos de bit requeridos.
Sumando los dos elementos antes mencionados más algunos bits extra como factor de
seguridad, nos da una ranura de tiempo de 512 bits de duración.

Entonces, el tiempo que se requiere para transmitir 512 bits es levemente superior que
el tiempo requerido para que una señal se propague, ida y vuelta, hasta el extremo más
alejado de la red, incluyendo el tiempo requerido para transmitir la secuencia de jam. De esta
manera, aun transmitiendo la trama más pequeña permitida, la estación transmisora tendrá
suficiente tiempo para “recibir noticias” acerca de la colisión, incluso si ésta ocurrió en el
extremo más alejado de la red.

No hay que olvidar que la ranura de tiempo incluye el tiempo de propagación a través
de todos los elementos de red conectados a la red (cables, repetidores, etc.). Si la cantidad de
elementos de red instalada es muy grande, el tiempo de propagación ida y vuelta será muy
grande y esto afectará de manera negativa al funcionamiento de la red.

10 Ethernet 17
En el sistema original de 10 Mbps en cable coaxial la señal puede ir y volver, a lo largo
de aproximadamente 2800 metros, en 512 tiempos de bit, lo cual implica una muy buena
extensión de red. Al sistema 10BASE-T se le impuso una longitud máxima de segmento de 100
metros no por cuestiones de tiempo de propagación sino por limitaciones en la calidad de la
señal.

Cuando se desarrolló el estándar Fast Ethernet en 1995, la ranura de tiempo se


mantuvo en 512 bits, para no modificar la longitud mínima de trama y mantener sin cambios
el protocolo. Sin embargo, en este sistema el tiempo de bit es 10 veces menor que en el
sistema de 10 Mbps, lo que significa que “permanece en el cable” durante un tiempo también
10 veces menor2. Por lo tanto, la señal eléctrica de los 512 bits en su totalidad, para que esté
presente en el cable el tiempo suficiente, deberá hacerlo sobre una longitud de cable diez
veces menor que para el caso de 10 Mbps. Esto da como resultado una longitud máxima (o
diámetro de red como también se dice) de 205 metros en Fast Ethernet.

Cuando se desarrolló Gigabit Ethernet, el haber mantenido la ranura de tiempo en 512


bits hubiese significado una diámetro de red de apenas unos 20 metros para una operación
semiduplex. Realmente es una extensión corta, pero a pesar de ello había buenas razones para
conservar el tamaño mínimo de trama en 512 bits. Para lograr esto, lo que hace Gigabit
Ethernet es aumentar la ranura de tiempo a 4096 bits (512 bytes) mediante un mecanismo
llamado carrier extension (extensión de portadora).

El uso de la ranura de tiempo como parámetro básico en los cálculos de acceso al medio
les permite garantizar a los diseñadores que el sistema funcionará adecuadamente bajo
cualquier combinación posible de elementos de red y longitud de segmentos de cable. La
ranura de tiempo se usa de dos maneras:

 Establece el máximo límite superior para que una estación adquiera el canal. Al
cabo de la transmisión de los primeros 512 bits (sin contar el preámbulo), todo
el cable estará “lleno” de tensión eléctrica y entonces todas las estaciones
estarán detectando portadora. Consecuentemente no transmitirán. Es decir,
después de 512 bits de tiempo, si la estación transmisora no escuchó ninguna
colisión, sabe que su señal está presente a lo largo de todo el cable y ninguna
otra estación podrá transmitir, por lo tanto puede completar la transmisión de su
trama sabiendo que no va a haber colisión.

 Sirve también como unidad de tiempo usada por el algoritmo de backoff para
generar el tiempo de espera luego de la ocurrencia de una colisión. Luego
veremos esto.

Detección de colisiones y algoritmo de backoff

La detección de colisiones y el algoritmo de backoff es una característica importante del


protocolo MAC de Ethernet. Antes de explicar este mecanismo aclaremos algunos puntos:

 Las colisiones no son errores. Debe quedar bien en claro que una colisión no es
sinónimo de anomalía ni falla del sistema. Está previsto que las colisiones
ocurran, forman parte del sistema y así fue diseñado. Y cuando ocurren son
administradas en forma predeterminada de acuerdo a un algoritmo
perfectamente prestablecido.

 Las colisiones no causan corrupción de datos. Como hemos visto, cuando ocurre
una colisión sobre un sistema Ethernet diseñado apropiadamente, será dentro de
los primeros 512 bits de la transmisión. Cualquier trama que colisiona es
reenviada por su transmisor en forma automática. Cualquier trama de menos de

2
No confundir con la velocidad de propagación, que es la misma.

18 10 Ethernet
512 bits es considerada fragmento de una colisión y es descartada
automáticamente.

Entonces, una vez más debe quedar claro que las colisiones forman parte del normal
funcionamiento de la red Ethernet y cuando ellas ocurren son administradas adecuadamente
por un algoritmo de backoff diseñado para ello.

Tampoco hay que confundir colisión con error de bit, el cual es detectado por el campo
CRC. El error de bit es causado por el ruido presente en el canal de comunicación, que hace
que el receptor pueda confundir un “1” con un “0”. Si hay un error de este tipo, el CRC lo
detecta, la trama se descarta, y no se hace nada más (no se solicita retransmisión). En cambio
la colisión se debe a la transmisión simultánea de dos o más estaciones. Cuando esto ocurre,
las tramas se retransmiten.

Si bien cada estación escucha el canal antes de transmitir, puede ocurrir que dos o más
estaciones escuchen el canal al mismo tiempo y lo encuentren desocupado, por lo que
transmitirán simultáneamente y se producirá una colisión. Una colisión puede ocurrir
únicamente durante los primeros 512 bits. Como ya se mencionó, una vez pasada la ventana
de colisión o ranura de tiempo se dice que la estación ha adquirido el canal y ya no hay
posibilidad de que ocurra una colisión.

El método usado para detectar una colisión es dependiente del medio. En un cable
coaxial, los transceptores detectan una colisión mediante el monitoreo del nivel de señal DC en
el cable. Cuando dos o más estaciones colisionan se produce un aumento del nivel de tensión
DC que hace disparar un circuito de detección de colisiones en el transceptor. Un transceptor
para cable coaxial está monitoreando continuamente el nivel medio de tensión en el cable, y
envía una señal de detección de colisión (32 bits de jam) cuando este nivel DC supera cierto
límite.

Si una colisión ocurre después de la ventana de colisión de 512 bits entonces estamos
en presencia de un fenómeno anormal, llamado colisión tardía (late collision) y en este
caso sí se trata de un problema serio de la red. Cuando este fenómeno ocurre el sistema
Ethernet no retransmite la trama colisionada y el problema debe ser subsanado por el software
de aplicación (residente en las capas superiores) quien sí se encargará de retransmitir las
tramas colisionadas. Debido a esto último, se pierde mucho tiempo en el proceso, por lo que
aun habiendo poca cantidad de colisiones tardías éstas pueden afectar seriamente al
desempeño de la red por lo que el problema debe ser resuelto lo antes posible.

La causa más común de ocurrencia de colisiones tardías es una desadaptación de la


configuración dúplex en cada extremo final del segmento de enlace. Por ejemplo, una colisión
tardía puede ocurrir si una estación está configurada como semi dúplex y en el otro extremo
de la red hay un switch configurado como duplex total (full duplex). El sistema full duplex no
usa CSMA/CD por lo que el switch envía tramas cada vez que así lo requiera sin escuchar
previamente el canal puesto que no está configurado para ello. Por lo tanto, si la estación half
duplex está transmitiendo, como el switch no reconoce CSMA/CD enviará tramas en cualquier
momento y colisionarán con las de la estación half duplex, incluso después de haber pasado la
ventana de colisión de 512 bits.

El fenómeno de colisiones tardías también puede ocurrir cuando hay problemas con el
medio de comunicación, como por ejemplo un segmento de par trenzado con excesiva señal de
crosstalk.

Una vez que se ha detectado una colisión común, las estaciones transmisoras
reprograman sus transmisiones usando un algoritmo de backoff de modo de minimizar las
probabilidades de una nueva colisión. Este algoritmo también permite a las estaciones de la
red a modificar su comportamiento de acuerdo al nivel de actividad en la red. Cuanto más
estaciones hay es más factible que se produzcan múltiples colisiones (entre más de dos
estaciones) y el algoritmo de backoff está diseñado para contemplar esta situación.

10 Ethernet 19
Cuando el transceptor conectado a la red Ethernet detecta una colisión, envía una señal
de presencia de colisión hacia la interfaz de la estación. Si la colisión es detectada en la parte
inicial de la trama (preámbulo), la estación transmisora no pondrá la señal de jam hasta que
no haya terminado de transmitir el preámbulo. Llegado ese instante, envía hacia la red la
secuencia de 32 bits de jam y detiene su transmisión. De esta manera queda presente en la
red una señal de colisión durante un tiempo suficiente como para que sea “escuchada” por las
demás estaciones. Las estaciones que quedaron involucradas en la colisión deben reprogramar
una retransmisión de sus tramas. Esto lo hacen generando un tiempo de espera antes de la
retransmisión, basado en un número aleatorio.

Si la red Ethernet está muy demandada, pueden seguir habiendo colisiones en la


retransmisión a pesar del tiempo de espera aleatorio. El algoritmo de backoff contempla esta
situación y proporciona un mecanismo para ajustar el tiempo de espera. Este mecanismo se
llama truncated binary exponential backoff, cuya traducción aproximada es algoritmo de
espera exponencial binario truncado. Exponencial binario hace referencia a la potencia de 2
usada en el cálculo del tiempo de espera, mientras que truncado se refiere a que este
crecimiento exponencial tiene un límite o tamaño máximo.

Luego de la ocurrencia de una colisión, el tiempo de espera para la retransmisión es


fijado en un múltiplo entero de la ranura de tiempo de 512 bits, usado en Ethernet de 10 y
100 Mbps. Es decir que el tiempo de espera va a ser diferente para cada una de estas dos
redes si tenemos en cuenta que en 10 Mbps un bit tiene una duración de 100 ns mientras que
en 100 Mbps o Fast Ethernet es de 10 ns.

El tiempo de espera se calcula multiplicando la ranura de tiempo por un número entero


elegido aleatoriamente. El rango de números enteros aleatorios posibles y de los cuales cada
estación retransmisora elige uno, es determinado por el algoritmo exponencial. Este rango va
aumentando a medida que aumentan los intentos de retransmisión como consecuencia de una
nueva colisión en una retransmisión. Por ejemplo, para el primer intento de retransmisión hay
2 números posibles para elegir aleatoriamente. Si en esta retransmisión vuelve a ocurrir una
colisión hay una nueva oportunidad de retransmisión, ahora con 4 números posibles. Si vuelve
a ocurrir una nueva colisión ahora el rango de números a elegir será 8, etc.

La fórmula que usa el algoritmo de backoff para calcular este rango r es:

0  r  2k (1)

donde k es un entero entre 0 y 10.

El número r es un entero, elegido aleatoriamente, que varía entre 0 y 2 k –1. Por


ejemplo, si k vale 2, el número r elegido aleatoriamente puede ser 0, 1, 2 o 3.

El número k es un entero que indica el número de intento de retransmisión para el cual


se está aplicando el algoritmo. Por ejemplo, para el primer intento de retransmisión k vale 1,
para el segundo intento vale 2, etc. El número máximo que puede adoptar k es 10 (aunque no
es ése el número máximo de retransmisiones).

Veamos cómo funciona este algoritmo. Supongamos que una estación está enviando
una trama y se produce una colisión. En el primer intento de retransmisión k vale 1, por lo
tanto los valores posibles de r son 0 y 1, de los cuales cada estación que tiene que retransmitir
elige aleatoriamente uno de ellos. Dado que el tiempo de espera para la retransmisión es uno
de estos números multiplicado por 512 bits, el tiempo de espera posible para este caso puede
ser 0 o 512, dependiendo del valor de r seleccionado aleatoriamente. Si el número r
seleccionado fue 0 entonces el tiempo de espera es 0 nanosegundos y la retransmisión ocurre
inmediatamente. En cambio si el número r seleccionado fue 1 entonces el tiempo de espera es
51,2 µs para el caso de una red Ethernet de 10 Mbps.

20 10 Ethernet
Del proceso descripto en el párrafo anterior está claro que si las dos estaciones
retransmisoras involucradas en la colisión previa hubiesen elegido el mismo valor de r al
calcular el tiempo de espera, una nueva colisión hubiese ocurrido en el proceso de
retransmisión. Cosa que es efectivamente posible y así funciona este algoritmo. Cuando esto
ocurre se debe reprogramar una nueva retransmisión, ahora con un valor de k = 2 lo que da
un conjunto posible de valores de r = 0, 1, 2 y 3 para que uno de éstos sea elegido
aleatoriamente por cada estación retransmisora. El valor elegido determinará cuántas ranuras
de tiempo debe esperar cada estación antes de retransmitir. Si aun así volviese a ocurrir una
nueva colisión porque ambas estaciones eligieron el mismo r entonces se vuelve a ejecutar el
algoritmo, ahora con k = 3.

De la explicación anterior se puede observar que a medida que hay más estaciones y
más tráfico en la red, la probabilidad de colisiones es mayor, por lo que el algoritmo de backoff
tiende a ejecutarse varias veces haciendo crecer la cantidad de enteros r posibles y de esa
manera reduciendo la probabilidad de una nueva colisión en una retransmisión.

Luego de diez intentos de retransmisión el valor de k deja de aumentar. En este punto


2k = 1024 por lo que el conjunto de enteros r va desde 0 hasta 1023. Si sigue habiendo
colisiones, el proceso continúa hasta 16 reintentos, ahora manteniendo fijo en 10 el valor de k.
Si luego de 16 reintentos sigue habiendo colisiones finalmente la interfaz Ethernet descarta la
trama, informa la situación a su capa superior de software (capa 3) y continúa con la trama
siguiente, si la tiene.

Es razonable que en una red con carga de tráfico moderada, una estación adquiera el
canal con un par de intentos de retransmisión. Cuando lo logra, borra el contador de backoff a
cero para que esté listo para otra posible retransmisión a futuro como consecuencia de otra
colisión.

10 Ethernet 21

También podría gustarte