Академический Документы
Профессиональный Документы
Культура Документы
Este capítulo trata las redes de difusión y sus protocolos. En cualquier red de difusión,
el asunto clave es la manera de determinar quién puede utilizar el canal cuando hay
competencia por él. Cuando únicamente hay un canal, determinar quién debería tener el
turno es muy complicado. En la literatura, los canales de difusión a veces se denominan
canales multiacceso o canales de acceso aleatorio.
Los protocolos usados para determinar quién sigue en un canal multiacceso, pertenecen
a una subcapa de enlace de datos llamada subcapa MAC (Control de Acceso al Medio).
La subcapa MAC tiene especial importancia en las LANs, casi todas las cuales usan un
canal multiacceso como base de su comunicación. Las WANs, en contraste, usan
enlaces punto a punto, excepto las redes satelitales.
ALOHA
ALOHA PURO
La idea básica es permitir que los usuarios transmitan cuando tengan datos por enviar.
Un emisor siempre puede saber si la trama fue o no destruida, escuchando el canal, de la
misma manera que los demás usuarios. Si por alguna razón no es posible escuchar
cuando se transmite, se necesitan usar ACK. Si la trama fue destruida, el emisor espera
un tiempo aleatorio y la reenvía. El tiempo de espera debe ser aleatorio, o las mismas
tramas chocarán una y otra vez, en sincronía. Los sistemas en los cuáles varios usuarios
comparten un canal común, de modo tal que puede dar pie a conflictos, se conocen
como sistemas de contención. La velocidad real de transporte (throughput) de los
sistemas ALOHA se maximiza al tener tramas con un tamaño uniforme en lugar de
tramas de longitud variable. Cada vez que 2 tramas traten de ocupar el canal al mismo
tiempo, habrá una colisión y ambas se dañarán. Si el primer bit de una trama nueva se
traslapa con el último bit de una trama casi terminada, ambas tramas se destruirán por
completo, y ambas tendrán que retransmitirse. La suma de verificación no puede (y no
debe) distinguir entre una pérdida total y un error ligero.
ALOHA RANURADO
En este se divide el tiempo en intervalos discretos, cada uno de los cuales correspondía
a una trama. Este enfoque requiere que los usuarios acuerden límites de ranura. No se
permite que una computadora envíe cada vez que se pulsa “enviar”. En cambio, se
obliga a esperar el comienzo de la siguiente ranura.
1. CSMA persistente-1: Cuando una estación tiene datos por transmitir, primero
escucha el canal para ver si otra está transmitiendo en ese momento. Si el canal está
ocupado, la estación espera hasta que se desocupa. Cuando la estación detecta un canal
en reposo, transmite una trama. Si ocurre una colisión, la estación espera una cantidad
aleatoria de tiempo y comienza de nuevo. El protocolo se llama persistente-1 porque la
estación transmite con una probabilidad de 1 cuando encuentra el canal inactivo. El
retardo de propagación tiene un efecto importante en el desempeño del protocolo. Hay
una pequeña posibilidad de que, justo después de que una estación comienza a
transmitir, otra estación esté lista para enviar y detectar el canal. Si la señal de la
primera estación no ha llegado aún a la segunda, esta última detectará un canal inactivo
y comenzará a enviar también, resultando una colisión. Cuanto mayor sea el tiempo de
propagación, más importante será este efecto, y peor el desempeño del protocolo. Aun si
el retardo de propagación es de cero, habrá colisiones.
2. CSMA no persistente: Antes de enviar, una estación detecta el canal. Si nadie más
está transmitiendo, la estación comienza a hacerlo. Sin embargo, si el canal ya está en
uso, la estación no observa continuamente el canal a fin de tomarlo de inmediato al
detectar el final de la transmisión previa. En cambio, espera un periodo de tiempo
aleatorio y repite el algoritmo. Intuitivamente este algoritmo deberá conducir a una
utilización mejor del canal y a mayores retardos que el CSMA persistente-1.
3. CSMA persistente-p: Se aplica a canales ranurados. Cuando una estación está lista
para enviar, escucha el canal. Si el canal está en reposo, la estación transmite con una
probabilidad p. Con una probabilidad q = 1 - p, se espera hasta la siguiente ranura. Si
esa ranura también está inactiva, la estación transmite o espera nuevamente, con
probabilidades p y q. Este proceso se repite hasta que el marco ha sido transmitido o
hasta que otra estación ha comenzado a transmitir. En el segundo caso, la estación actúa
como si hubiera habido una colisión (espera un tiempo aleatorio y comienza de nuevo).
Si la estación detecta inicialmente que el canal está ocupado, espera hasta la siguiente
ranura y aplica el algoritmo anterior.
Redes y Comunicaciones 1
Otra mejora es que las estaciones aborten sus transmisiones tan pronto como detecten
una colisión. En lugar de terminar de transmitir sus tramas, que de todos modos están
irremediablemente alteradas, deben detener de manera abrupta la transmisión tan pronto
como detecten la colisión. Esto ahorra tiempo y ancho de banda. Este protocolo,
CSMA/CD, es la base de la popular LAN Ethernet.
Sea t el tiempo que tarda una señal en propagarse entre las 2 estaciones más lejanas. En
el peor caso, una estación no puede estar segura que ha tomado el canal hasta que ha
transmitido durante 2t sin detectar una colisión. La detección de colisiones es un
proceso analógico. El hardware de la estación debe escuchar el cable mientras transmite.
Si lo que lee es distinto de lo que puso en él, sabe que está ocurriendo una colisión.
Dado que todos están de acuerdo en quién continúa, nunca habrá colisiones. Una vez
que la última estación lista haya transmitido su marco, evento que pueden detectar
fácilmente todas las estaciones, comienza otro periodo de contención de N bits.
Podemos tener mejores resultados usando direcciones de estación binarias. Una estación
Redes y Comunicaciones 2
que quiere utilizar el canal ahora difunde su dirección como una cadena binaria de bits.
Se supone que todas las direcciones tienen la misma longitud. A los bits en cada
posición de dirección de las distintas estaciones, se les aplica un OR booleano a todos
juntos. Asume retardos insignificantes. Para evitar conflictos, debe aplicarse una regla
de arbitraje: una vez que una estación ve que una posición de bit de orden alto, que en
su dirección es 0, ha sido sobrescrita con un 1, se da por vencida. Tras ganar la
contienda, ahora puede transmitir una trama, después de lo cual, comienza otro ciclo de
contienda. Este protocolo tiene la propiedad de que las estaciones con nº grandes tienen
una prioridad mayor que las estaciones con nº pequeños, lo cual puede ser bueno o mal
según el contexto.
Cada estrategia puede ser clasificada según lo bien que funciona en relación con las 2
medidas de desempeño: el retardo con carga baja y la eficiencia del canal con carga alta.
En condiciones de carga baja, la contención (es decir, ALOHA puro o ranurado) es
preferible debido a su bajo retardo. A medida que aumenta la carga, la contención
paulatinamente se vuelve menos atractiva, debido a que la información extra asociada al
arbitraje del canal se vuelve mayor. Lo inverso se cumple para los protocolos libres de
colisiones. Con carga baja, tienen un retardo alto, pero a medida que aumenta la carga
mejora la eficiencia del canal en lugar de empeorar, como ocurre con los protocolos de
contención.
Redes y Comunicaciones 3
Protocolo de recorrido de árbol adaptable
Las estaciones como se ven como las hojas de un árbol binario. En la primera ranura de
contención después de la transmisión satisfactoria de una trama, ranura 0, se permite
que todas las estaciones intenten adquirir el canal. Si una de ellas lo logra, que bueno. Si
hay una colisión, entonces, durante la ranura 1, sólo aquellas estaciones que queden bajo
el nodo 2 del árbol podrán competir. Si una de ellas adquiere el canal, la ranura que
sigue a la trama se reserva para las estaciones que están bajo el nodo 3. Por otra parte, si
dos o mas estaciones bajo el nodo 2 quieren transmitir, habrá una colisión durante la
ranura 1, en cuyo caso es el turno del nodo 4 durante la ranura 2. En esencia, si ocurre
una colisión durante la ranura 0, se examina todo el árbol, primero en profundidad, para
localizar todas las estaciones listas. Cada ranura de bit está asociada a un nodo en
particular del árbol. Si ocurre una colisión, continúa la búsqueda recursivamente con los
hijos izquierdos y derechos del nodo. Si una ranura de bit está inactiva, o si sólo hay una
estación que transmite en ella, puede detenerse la búsqueda de su nodo, pues se han
localizado todas las estaciones listas. (Si hubiera más de una, habría habido una
colisión.)
En otras palabras: cada estación escucha en su propio canal de control las solicitudes
que llegan, pero tiene que sintonizarse a la longitud de onda del transmisor para obtener
los datos. La sintonización de la longitud de onda se realiza con un interferómetro que
filtra todas las longitudes de onda excepto la banda de longitud de onda deseada.
Redes y Comunicaciones 4