Protocolos de Redes

 

Protocolos ALOHA

Este es el protocolo que dio origen a muchos en uso hoy en día. La idea es muy simple, cuando se desea transmitir se transmite. Habrán colisiones, y tanto los emisores como el resto detectarán eso. La colisión destruye los paquetes emitidos, los que deberán ser re-emitidos. Los protocolos entonces deben determinar cuándo hacerlo (por ejemplo, no sirve esperar un tiempo fijo, puesto que ambos transmitirán otra vez juntos).

 

Una alternativa es esperar un tiempo aleatorio antes de retransmitir. Si suponemos paquetes de largo fijo a transmitir, y que cada estación transmite en cuanto tiene datos, la probabilidad de colisión en redes cargadas es muy alta puesto que basta con que el último bit de un paquete se transmita junto con el primer bit de otro para que ambos colisionen y se destruyan.

 

Un dato importante en estas redes compartidas es el factor de utilización máximo que se puede lograr del medio. Es decir, si tengo un coaxial de capacidad total 10 Mbps, cuánto puedo ocupar realmente entre todos los participantes. Esto no es trivial, porque requiero que haya mucha carga de tráfico para utilizar más ancho de banda, pero al aumentar el tráfico aumentan las colisiones.

 

En el caso del protocolo ALOHA puro, se obtiene que el máximo factor de utilización es 18%, lo que dista mucho de ser razonable.

 

Una optimización al protocolo es dividir el tiempo en slots fijos sincronizados (slotted ALOHA). Una computadora sólo puede transmitir en un comienzo de slot (que dura justo el tamaño de un paquete). Esto disminuye la probabilidad de colisiones, permitiendo un factor de utilización máximo de 37%.

 

CSMA

 

Una optimización importante a ALOHA puro es no transmitir si el canal está ocupado, lo que implica escuchar antes de hablar (Carrier Sense). Si el canal está ocupado, puedo quedar escuchando hasta que se desocupe y ahí transmitir (CSMA1-persistente).

 

Esto no es muy bueno, porque al aumentar la carga, aumenta la probabilidad de que más de un computador esté escuchando el canal ocupado, esperando transmitir, y por lo tanto habrá una colisión cuando ambos intenten. Para evitar esto, en vez de esperar que el canal se desocupe, esperamos un tiempo aleatorio antes de volver a intentar (CSMA no persistente).

 

IEE 802.3: Ethernet 

 

Es un algoritmo CSMA/CD 1-persistente, con una tasa de 10 Mbps (ahora está de moda una nueva versión a 100 Mbps: Fast Ethernet).   Para poder escribir bytes en el cable, debemos codificarlos y encapsularlos. El encapsulamiento (framing) es típicamente tarea del MAC. En Ethernet, el paquete puede verse en la Figura.

 


El Preámbulo sirve para sincronizar los relojes del emisor y receptor. Luego viene un comienzo de paquete y la direcciones de origen y destino. Las direcciones Ethernet son de 48 bits, y son asignadas centralizadamente a los fabricantes para evitar dos iguales en la misma red local. Se usan direcciones de grupos y la dirección con todos los bits en 1, que es para todos (broadcast). Los paquetes son de tamaño variable, con máximo 1500 bytes. El campo de PAD, sirve para los paquetes de datos menores de 46 bytes, que son rellenados para dar un largo total al menos de 64 bytes, para evitar que pueda ser transmitido antes de llegar al final del cable. Al final, se agrega un checksum, que permite validar que todos los bits del paquete llegaron sin alteración.

 

Si se produce una colisión, el emisor espera un tiempo aleatorio antes de reintentar. El tiempo se divide en espacios (slots) de 512 bits. Con probabilidad 1/2 se transmite en el slot 0 o 1. Si vuelve a ocurrir una colisión, con probabilidad 1/4 se transmite en el slot 0, 1, 2 o 3. A la tercera, se espera un número aleatorio de slots entre 0 y (2 a la 3 -1). Luego, al ocurrir la colisión i, se sigue esperando entre 0 y (2 a la i) –1. Después de 10 colisiones, se espera entre 0 y 1023 slots. Después de 16 colisiones se aborta la transmisión.

 

Este algoritmo se conoce como binary exponential backoff, y es muy interesante porque intenta evitar sobrecargar la red con retransmisiones una vez que la red ya está saturada. Ethernet muestra en la práctica un factor de utilización cercano al 50%. En teoría el mejor caso es alrededor del 80%.

 

Token Ring

 

El problema con Ethernet es que la distribución del acceso al medio e aleatoria, por lo que puede ser injusta, perjudicando a un computador durante un periodo de tiempo.

 

En algunos casos es muy importante garantizar un acceso igualitario al medio, de modo de garantizar que siempre podremos transmitir, independientemente de la carga.   Por razones de justicia en el acceso, típicamente estas redes se organizan en anillo, de modo de que el token pueda circular en forma natural.

 

El token es un paquete físico especial, que no debe confundirse con un paquete de datos. Ninguna estación puede retener el token por más de un tiempo dado (10 ms). Intenta aprovechar el ancho de banda a un 100%.

 


 

Las redes Token Ring originalmente fueron desarrolladas por IBM en los años 1970s. Este fue el primer tipo de Red de Area Local de la tecnología IBM (LAN) Las especificaciones de IEEE 802.5 son casi idénticas en cuanto a compatibilidad con las redes de IBM's Token Ring. En base a las especificaciones de esta red se modeló es estándar IEEE 802.5.  El término Token Ring es generalmente usado para referirnos a ambas redes, IBM's Token Ring e IEEE 802.5.

Comparación Token Ring/IEEE 802.5

Redes Token Ring e IEEE 802.5 son básicamente compatibles, a pesar que las especificaciones difieran relativamente de menor manera.   Las redes IBM's Token Ring se refiere a las terminales conectadas a un dispositivo llamado multistation access unit (MSAU), mientras que IEEE 802.5 no especifica un tipo de topología.

 


Otras diferencias existentes son el tipo de medio, en IEEE 802.5 no se especifica un medio, mientras que en redes IBM Token Ring se utiliza par trenzado. En la siguiente figura se muestran algunas características y diferencias de ambos tipos de red:

 

 

Token Ring

 

Las redes basadas en (token passing) basan el control de acceso al medio en la posesión de un token (paquete con un contenido especial que le permite transmitir a la estación que lo tiene). Cuando ninguna estación necesita transmitir, el token va circulando por la red de una a otra estación. Cuando una estación transmite una determinada cantidad de información debe pasar el token a la siguiente. Cada estación puede mantener el token por un periodo limitado de tiempo.

 

Las redes de tipo token ring tienen una topología en anillo y están definidas en la especificación IEEE 802.5 para la velocidad de transmisión de 4 Mbits/s. Existen redes token ring de 16 Mbits/s, pero no están definidas en ninguna especificación de IEEE.

 

Los grupos locales de dispositivos en una red Token Ring se conectan a través de una unidad de interfaz llamada MAU. La MAU contiene un pequeño transformador de aislamiento para cada dispositivo conectado, el cual brinda protección similar a la de Local Talk. El estándar IEEE 802.5 para las redes Token Ring no contiene ninguna referencia específica a los requisitos de aislamiento. Por lo tanto la susceptibilidad de las redes Token Ring a las interferencias puede variar significativamente entre diferentes fabricantes.

 

Funcionamiento: Token Passing

Si una estación que posee el token y tiene información por transmitir, esta divide el token, alterando un bit de éste (el cuál cambia a una secuencia de start-of-frame), abre la información que se desea transmitir y finalmente manda la información hacia la siguiente estación en el anillo.

 

Mientras la información del frame es circulada alrededor del anillo, no existe otro token en la red (a menos que el anillo soporte uno nuevo), por lo tanto otras estaciones que deseen transmitir deberán esperar. Es difícil que se presenten colisiones.

 

 

A diferencia de las redes que utilizan CSMA/CD (como Ethernet), las redes token-passing están caracterizadas por la posibilidad de calcular el máximo tiempo que pueden permanecer en una terminal esperando que estas transmitan.

 

 

 MAU

 

La MAU es el circuito usado en un nodo de red para acoplar el nodo al medio de transmisión. Este aislamiento es la clave para la inmunidad de los sistemas en red ante las interferencias. La implementación y la calidad del aislamiento proporcionado varía entre diferentes topologías de red. Estas diferencias son descritas a continuación:

 

Conexión de cableado LocalTalk/Token Ring/AUI

 


 


 

Conexiones AUI

 

Casi todas las tarjetas Ethernet proveen una conexión AUI de 15 pines que puede ser usada para conectar un usuario a un hub local o a una MAU. Esta conexión no da aislamiento o protección contra sobretensiones. El aislamiento hacia el cableado principal de la red lo brinda el hub. Esta situación se muestra en la figura y difiere de los arreglos LocalTalk y Token Ring principalmente en que el segmento de cable desprotegido es frecuentemente más largo en el caso de las conexiones AUI y en que el hub en el cual termina la conexión puede tener una tierra diferente a la del equipo del usuario. El equipo del usuario es muy susceptible a daño a través de la conexión AUI. Estas últimas operan a distancias tan grandes como 100 metros, pero nunca deben ser usadas a esas distancias sin extremas precauciones. Cuando se conecten usuarios a un hub usando un cable AUI, observe las siguientes reglas:

 

Siempre asegúrese de que todos los usuarios conectados al hub y el hub mismo estén conectados en tomacorrientes que estén cableados al mismo tablero de distribución. Esto evita que ocurran altos voltajes de tierra inter-sistema.

 

Mantenga la longitud del cableado por debajo de los 10 metros. Si es posible, haga que todos los usuarios alimentados desde el hub y el mismo hub se alimenten desde el mismo no brake.

 

Conexiones Físicas


 

Las estaciones en redes IBM Token Ring se conectan directamente a MSAUs, las cuáles pueden ser cableadas a través del anillo (como se muestra en la figura). Los Patch cables sirven para interconectar las MSAUs. Los Lobe cables conectan a las estaciones con las MSAUs.

  

Prioridades

Las redes Token Ring utilizan un sofisticado sistema de prioridad que permite designarles a los usuarios un tipo de prioridad en base a su uso de la red. Los frames en redes Token Ring tienen dos campos que controlan la prioridad: el campo de prioridad y un campo reservado.

 

Solo las estaciones que posean un valor de prioridad igual o mayor al contenido en el token pueden seccionar éste.    Una vez que el token está seccionado y la información del frame cambiada, sólo las estaciones con una prioridad mayor a la que transmitió el token puede reservar el token para la siguiente pasada a través de la red.

 

Cuando el siguiente token es generado, este incluye la prioridad más grande anteriormente reservada por la estación.

 

Después de que se efectuó su entrega la estación que mandó debe regresar la prioridad del token a como lo había encontrado.

Manejo de mecanismos de falla

Las redes Token Ring emplean varios mecanismos para detectar y corregir las fallas en la red. Por ejemplo: se selecciona una estación en una red Token Ring para que trabaje como monitor de la red.

 

Esta estación que puede ser cualquiera de la red, centraliza los recursos en base a tiempos y sistemas de mantenimiento para las estaciones. Una de estas funciones es remover los constantes frames que circulan en el anillo. Cuando un dispositivo que envía falla, este frame puede continuar circulando en el anillo, esto previene a otras estaciones de transmitir en ese momento. El monitor detecta dichos frames y los remueve del anillo generando uno nuevo.

Un algoritmo de token llamado beaconing detecta y trata de reparar ciertos errores en la red. A veces, una estación detecta un problema serio con la red (como un cable dañado o desconectado), esta envía un frame de reemplazo. El frame  de reemplazo define una falla en el dominio donde reside la estación que detectó el problema, y enseguida viene un proceso de autoreconfiguración donde intervienen los nodos cercanos al problema y automáticamente lo soluciona.

 

Formato del Frame

Las redes Token Ring definen dos tipos de frames: tokens y data/command frames. Ambos formatos se muestran en la figura siguiente:

 


 
Tokens

Los tokens son de 3 bytes de longitud y consisten en un delimitador de inicio, un byte de control de acceso y un delimitador final.

El delimitador de inicio alerta a cada estación de la llegada de un token (o data/command frame). Este campo incluye señales que distinguen este byte del resto del frame por una violación al esquema usado en el frame.

El byte de control de acceso contiene los campos de prioridad y reservación, como un token bit (usado para diferenciar un token del frame data/command) y un monitor bit (usado por el monitor activo para determinar cuando un frame está circulando en el anillo a baja velocidad.

Finalmente, las señales finales de delimitación señalan el final del token o data/command frame. Aquí también están contenidos bits que muestran si el token está dañado.