Tema 4: Redes de conmutación

Anuncio
Tema 4: Redes de conmutación
Introducción..................................................................................................................... 1
Redes de conmutación de circuitos ................................................................................. 2
Conmutación por división en el espacio ................................................................... 3
Conmutación por división en el tiempo .................................................................... 4
Conmutación de paquetes ............................................................................................... 5
Introducción ................................................................................................................ 5
Conmutación de paquetes: datagramas y circuitos virtuales................................. 6
Comparación de las técnicas de conmutación de circuitos y conmutación de
paquetes ....................................................................................................................... 7
Encaminamiento ......................................................................................................... 8
Estrategias de encaminamiento............................................................................... 10
Encaminamiento estático........................................................................................ 10
Inundaciones........................................................................................................... 10
Encaminamiento aleatorio ...................................................................................... 10
Encaminamiento adaptable..................................................................................... 11
Introducción
La transmisión de datos a larga distancia, se lleva a cabo a través de una red de nodos
intermedios de conmutación; esto también se utiliza a veces, para el diseño de redes
LAN y MAN conmutadas. Una característica de los nodos de conmutación es que el
contenido de los datos no les incumbe, su objetivo es proporcionar el servicio de
conmutación que traslade los datos de un nodo a otro, hasta alcanzar el destino final.
Los dispositivos finales que desean comunicarse, se denominan estaciones. Las
estaciones, pueden ser terminales, computadoras, teléfonos etc.
Los dispositivos que facilitan la comunicación se denominan nodos. Los nodos
se conectan entre sí mediante alguna topología formada por enlaces de transmisión.
Cada estación se conecta a un nodo y a la colección de nodos se le llama red de
comunicaciones. En las redes de comunicaciones conmutadas se establecen las
siguientes consideraciones:
1. Algunos nodos se conectan a otros nodos. Su única tarea será la
conmutación interna de los datos. De igual manera, otros nodos tienen
además una o más estaciones conectadas; éstos últimos además de sus
funciones de conmutación, se encargan de aceptar y repartir los datos
desde y hacia las estaciones que tengan conectadas.
2. Los enlaces entre nodos están normalmente multiplexados, usando tanto
multiplexación por división de frecuencias (FDM) como por división de tiempo
(TDM)
3. Normalmente la red no está completamente conectada, no hay un enlace
directo entre cada posible pareja de nodos, aunque sí más de un camino posible
entre cada dos estaciones.
Redes de conmutación de circuitos
La comunicación utilizando conmutación de circuitos, implica la existencia de un
camino dedicado entre dos estaciones. Este camino es una secuencia de enlaces
conectados entre nodos de la red. En cada enlace físico, se dedica un canal lógico para
cada conexión. La comunicación por circuitos conmutados implica tres fases:
1. Establecimiento del circuito. Antes de transmitir cualquier señal, se debe
establecer un circuito extremo a extremo (estación a estación)
2. Transferencia de datos. Tras el establecimiento del circuito, la información se
podrá transmitir desde la estación origen a la estación destino a través de
la red. Dependiendo de la naturaleza de la red, los datos podrán ser tanto
analógicos como digitales. Normalmente, la conexión es full dúplex.
3. Desconexión del circuito. Tras la fase de transferencia de datos, la
conexión se finaliza. Para la desconexión del circuito, se deben propagar
las señales correspondientes a los nodos con los que se estableció la
conexión, para que éstos liberen los recursos utilizados.
Como la conexión se establece antes de que la transmisión comience, se debe reservar la
capacidad del canal requerido entre cada par de nodos, y cada nodo debe ser
capaz de conmutar internamente para establecer la conexión solicitada. Los
conmutadores deben ser lo suficientemente inteligentes como para realizar las
reservas así como para elegir las rutas a través de la red. La conmutación de
circuitos puede llegar a ser ineficiente, ya que la capacidad de canal se reserva
durante toda la conexión, incluso en el caso de que no se transfieran datos.
Antes de la transferencia de la señal, hay un retardo para llevar a cabo el
establecimiento de la llamada; una vez establecido el circuito, la red es totalmente
transparente a los usuarios.
Durante la transferencia, la información se transmite a la razón de datos establecida, sin
ningún retardo adicional, salvo el de propagación de la señal, pudiendo ser
considerado en ocasiones despreciable el retardo introducido en cada nodo del camino.
Ejemplos de redes de conmutación de circuitos son la red pública de telefonía, que es un
conjunto de redes nacionales interconectadas, que ofrecen un servicio de telefonía a
nivel internacional. Las centralitas privadas (PBX “private branch exchange”). Las
redes privadas, que se utilizan para dar servicio a una única empresa, o a varias, para así
conectar sus dependencias. A pesar de sus inconvenientes, la conmutación de circuitos
es una elección interesante tanto para redes de área amplia como redes de área local.
Como ejemplo, una red diseñada entorno a un único nodo de conmutación consta de un
conjunto de estaciones conectadas a la unidad central de conmutación. La central
de conmutación establecerá un camino dedicado entre cualquier par de dispositivos
que quieran comunicarse. La parte central de todo sistema moderno es el conmutador
digital. La función del conmutador digital es proporcionar un camino para la señal
de una forma transparente entre los dispositivos que estén conectados. Es decir, los
dispositivos conectados perciben como si existiera una conexión directa entre ellos. La
conexión permite la transmisión full dúplex.
El elemento de interfaz de red incluye las funciones y el hardware necesario
para conectar los dispositivos digitales a la red. Las líneas principales a otros
conmutadores digitales transportan las señales TDM y facilitan los enlaces para
construir redes con varios nodos. La unidad de control realiza tres tareas:
− Establece las conexiones. Generalmente se realiza bajo demanda. Para
establecer la conexión, la unidad de control debe gestionar y confirmar la
petición, determinar si el destino está desocupado y construir un camino a través
del conmutador.
− Mantenimiento de la conexión. La unidad de control debe mantener la
conexión. Debido a que el conmutador digital utiliza una aproximación por
división en el tiempo, este procedimiento puede necesitar un control
continuo de los elementos de conmutación.
− Deshacer la conexión. La unidad de control debe deshacer la conexión,
tanto en respuesta a una solicitud generada por una de las partes, como por
razones propias.
Una red bloqueante, es en la que es posible el bloqueo, es decir, en la que puede ocurrir
que no se pueda establecer una conexión (a pesar de estar el destino desocupado),
por estar todos los posibles caminos ya utilizados. Una red no bloqueante permite que
todas las estaciones se conecten simultáneamente (por parejas).
Conmutación por división en el espacio
En un conmutador por división en el espacio las rutas que se establecen son
físicamente independientes. Cada conexión requiere el establecimiento de un camino
físico a través del conmutador. El bloque básico de un conmutador de este tipo consiste
en una matriz de conexiones o puertas semiconductoras o puntos de cruce que son
habilitadas o deshabilitadas por la unidad de control del conmutador, ver Figura 1.
Estos conmutadores tienen las siguientes limitaciones:
Figura 1 Matriz básica de puntos de cruce (n entradas y n salidas)
− El número de puntos de cruce crece con el cuadrado del número de
estaciones conectadas.
− La pérdida de un punto de cruce impide el establecimiento de la conexión
entre los dispositivos cuyas líneas se interseccionan en ese punto.
− Los puntos de cruce se utilizan de manera ineficiente, ya que aun estando todas
las estaciones conectadas, solo se usan una pequeña fracción de los puntos de
cruce.
Para superar estas limitaciones, se emplean conmutadores con múltiples etapas.
Esta configuración tiene una serie de ventajas sobre una matriz de una única etapa:
− El número de puntos de cruce se reduce, aumentando la utilización de las
líneas de cruce.
− Hay más de un camino posible a través de la red para conectar los puntos
finales, aumentando así la seguridad.
Un conmutador multietapa necesita un sistema de control más complejo, los
conmutadores multietapa pueden ser bloqueantes. La matriz de líneas de cruce en un
conmutador de una sola etapa es no bloqueante, es decir, siempre habrá un camino
disponible para conectar una entrada a una salida libre. Para conseguir conmutadores
multietapa no bloqueantes se aumentan el número o el tamaño de los conmutadores,
aunque así aumenta el coste.
Conmutación por división en el tiempo
La conmutación por división en el tiempo implica la partición de la cadena de
bits de menor velocidad en fragmentos que compartirán una cadena de mayor
velocidad con otras líneas de entrada. Los fragmentos se manipulan por lógica de
control para encaminar los datos desde la entrada hasta la salida.
Una de las técnicas más utilizadas de conmutación por división en el tiempo es la
conmutación mediante bus TDM. Esta técnica se basa en la en la utilización de la
multiplexación por división en el tiempo (TDM) síncrona. Técnica que permite que
varias cadenas de bits de baja velocidad compartan una línea de alta velocidad. Se
realiza un muestreo de las entradas por turnos. Las muestras se organizan en ranuras
o subdivisiones temporales (canales) para formar la trama, que tendrá un número
de ranuras igual al número de entradas. Una ranura puede ser un bit un byte o
cualquier bloque de longitud constante. Como se conocen la fuente y el destino de
los datos para cada ranura, no se necesitan bits de direccionamiento para cada ranura.
Cada dispositivo se conecta al conmutador a través de una línea full dúplex. A cada
línea de entrada se le asigna una ranura temporal. Durante la existencia de la ranura, la
puerta de esa línea se habilita, permitiendo así que una ráfaga pequeña de datos se dirija
hacia el bus. Mediante esa misma ranura, una de las otras puertas correspondientes a
alguna línea de las líneas de salida se habilita. Los dispositivos conectados consiguen
la operación full dúplex transmitiendo durante una ranura asignada y recibiendo durante
otra. La ranura temporal debe ser igual al tiempo de transmisión de la entrada más el
retardo de propagación desde la entrada a la salida a través del bus. Para mantener la
duración de las sucesivas ranuras uniforme, se define la longitud de la misma como el
tiempo de transmisión más el retardo de propagación de extremo a extremo en el bus.
La razón de datos en el bus debe ser lo suficientemente alta como para que las ranuras
completen el ciclo, y no perder información. La razón de datos real debe ser lo
suficientemente alta como para tener en cuenta el tiempo invertido en la
propagación. Para un conmutador bloqueante, no hay asignación fija de las líneas de
entrada a las ranuras; la asignación se hace bajo demanda. La razón de datos en el bus
dicta el número de conexiones que se pueden hacer en un momento dado. El esquema
de conmutación TDM puede admitir líneas con diferentes razones de datos,
asignando a cada línea, tantas ranuras como necesite para la velocidad del dispositivo.
Por supuesto, sólo se pueden conectar líneas de la misma velocidad.
Conmutación de paquetes
Introducción
En la conmutación de circuitos vista anteriormente, se ponen de manifiesto dos
problemas:
1. En una conexión típica de datos, la línea está desocupada la mayor parte
del tiempo.
2. Los dispositivos transmisor y receptor, deben transmitir a la misma velocidad.
Estos problemas se resuelven en la conmutación de paquetes.
En la conmutación de paquetes los datos se trocean en paquetes cortos (1000
octetos). Cada paquete además de datos incluye en una cabecera la información
necesaria para alcanzar su destino en la red. En cada nodo, el paquete se recibe, se
almacena temporalmente y se envía al siguiente nodo hasta alcanzar el destino.
Frente a la conmutación de circuitos, la conmutación de paquetes presenta las siguientes
ventajas:
− La eficiencia de la línea es superior, ya que un mismo enlace puede ser
compartido dinámicamente en el tiempo por varios paquetes. Los paquetes van
formando una cola y se transmiten por la línea tan rápidamente como es posible.
− Permite el intercambio de paquetes a diferentes velocidades, pues cada
estación se conecta a su nodo con su propia velocidad.
− Cuando aumenta el tráfico en la red se continúan aceptando las peticiones
de conexión adicionales, si bien el retardo en la transmisión aumentará (en
la conmutación de circuitos, sin embargo, se rechazan las peticiones adicionales)
− Se puede hacer uso de prioridades. Cada nodo puede transmitir en primer lugar
los paquetes de su cola que tienen mayor prioridad.
Conmutación de paquetes: datagramas y circuitos virtuales
Existen dos formas de tratar los paquetes que se transportan por la red: datagramas y
circuitos virtuales.
Datagramas: Cada paquete se gestiona de forma independiente, sin ninguna
referencia a los paquetes precedentes. Es decir, cada paquete puede seguir un
camino diferente por la red. De esta manera, no tienen por qué llegar al destino en el
mismo orden en que se envían. Esta técnica resulta muy adecuada si sólo se desea
enviar información que ocupe pocos paquetes. No existe la fase de establecimiento
de llamada. Tiene mayor flexibilidad, frente a congestión en una zona de la red, los
datagramas se enviarán siguiendo rutas alternativas. Si un nodo falla sólo se
pierden los paquetes encaminados a través de él, no todos.
Circuitos virtuales: Se fija una ruta previa al envío de algún paquete. En la fase de
establecimiento de la conexión en nodo origen envía un paquete especial de control
llamado Petición de Llamada (Call Request). Este paquete “abre” una línea de
conexión entre el emisor y el receptor. Si el receptor acepta la conexión, éste envía
un paquete de Llamada Aceptada (Call Accept), que pasará por la misma secuencia
de nodos, en orden inverso. A partir de este momento el emisor y el receptor ya
pueden intercambiar datos a través de la ruta establecida (circuito virtual). La
finalización de la conexión se produce cuando una de las estaciones transmite
un paquete Petición de Liberación (Clear Request)
Cada estación puede disponer de más de un circuito virtual hacia otra u otras estaciones
en un instante de tiempo. Cada nodo de la red puede estar involucrado en más de un
circuito virtual, para lo cual dispondrá de una cola. La diferencia con la técnica de
datagramas es que, con circuitos virtuales, el nodo no necesita tomar una decisión de
encaminamiento para cada paquete, sino que ésta se realiza una sola vez para todos los
paquetes que usan dicho circuito virtual. Para comunicaciones de largos periodos de
duracíon esta técnica posee ciertas ventajas:
− Los paquetes llegan en el orden correcto, ya que todos siguen la misma ruta.
− La red puede ofrecer el servicio de control de errores. Es decir, si un nodo recibe
un paquete con errores o no lo recibe, puede solicitar su reexpedición al nodo
anterior en la ruta.
− Los paquetes viajan más rápidamente al no ser necesaria una decisión de
encaminamiento para cada paquete.
Inconvenientes de la conmutación por circuitos virtuales:
− La fase de establecimiento de llamada consume tiempo.
− Menor flexibilidad: una vez aceptada la conexión, la ruta no se puede
variar si se produce una congestión de la red en una zona de paso del circuito
virtual.
− Es menos segura: si un nodo participante en el circuito virtual falla, se pierden
todos los paquetes gestionados por él.
Tamaño del paquete
Cada paquete contiene una cabecera con información de control. Si el tamaño
del paquete es demasiado grande el tiempo de transmisión aumentará ya que cada
nodo deberá esperar a recibir todo el paquete antes de poder reenviarlo al siguiente
nodo. Si el paquete es demasiado pequeño también se producirá un incremento del
retardo, pues habrá muchos paquetes con sus correspondientes cabeceras,
aumentando los retardos de procesamiento y puesta en cola de los paquetes en
cada nodo. Existe por tanto un compromiso entre ambos tamaños, haciendo que
exista un tamaño del paquete óptimo (1000 octetos).
Comparación de las técnicas de conmutación de circuitos y
conmutación de paquetes
En conmutación de circuitos existe retardo antes de que el mensaje pueda ser enviado.
Primero se transmite una señal de petición de llamada para fijar una conexión con el
destino. Si la estación destino no está ocupada devuelve una señal de aceptación,
durante la petición existe un retardo en el procesamiento de la ruta por cada nodo. Tras
el establecimiento de la conexión, el mensaje se envía como un único bloque, sin
retardo en los nodos de conmutación.
En la técnica de conmutación de paquetes mediante circuitos virtuales, un
circuito virtual es solicitado mediante un paquete de petición de llamada, lo que provoca
un retardo en cada nodo. El circuito virtual se acepta mediante un paquete de aceptación
de llamada. La aceptación de llamada sufre retardo en los nodos aunque la ruta del
circuito virtual esté fijada, ya que el paquete es puesto en cola en cada nodo y debe
de esperar su turno. Una vez establecido el circuito virtual, el mensaje se transmite en
paquetes, con retardos variables en cada nodo, que se incrementan con la carga.
La técnica de conmutación de paquetes mediante datagramas no necesita
establecimiento de conexión, pudiendo ser más rápida en mensajes cortos que mediante
circuitos virtuales y que la conmutación de circuitos. Sin embargo, como la ruta de
cada datagrama individual se decide de forma independiente, el procesamiento de cada
datagrama en cada nodo puede ser superior al de los circuitos virtuales.
La conmutación de circuitos ofrece una velocidad de transmisión constante y un
servicio transparente una vez que la conexión ha sido establecida. En conmutación de
paquetes aparecen retardos variables, de manera que los datos no se reciben de
forma constante. Con la técnica de datagramas los datos se pueden recibir en un orden
distinto al de envío. En la conmutación de circuitos, establecida la conexión los datos
analógicos o digitales van desde el emisor al receptor. Para conmutación de paquetes,
los datos analógicos deben ser convertidos a digital antes de su transmisión;
además cada paquete incluye bits adicionales, como los de dirección de estación
destino.
Funcionamiento externo e interno
En la interfaz entre estación y nodo, una red puede ofrecer tanto un servicio de circuito
virtual como de datagrama. Internamente, la red puede funcionar también en los dos
sistemas, no siendo necesario que coincidan el diseño interno con el externo:
− Circuito virtual interno, circuito virtual externo: Cuando el usuario solicita un
circuito virtual, se crea un camino dedicado a través de la red, siguiendo todos
los paquetes la misma ruta.
− Circuito virtual externo, datagrama interno: la red maneja separadamente
cada paquete, de manera que los paquetes correspondientes a un mismo
circuito virtual siguen caminos diferentes, aunque son enviados en orden
secuencial. Si es necesario, la red almacena los paquetes para reenviarlos en el
orden correcto.
− Datagrama externo, datagrama interno: cada paquete se trata de forma
independiente tanto desde el punto de vista del usuario como desde la red.
− Datagrama externo, circuito virtual interno: el usuario externo no ve ninguna
conexión, limitándose a enviar paquetes a lo largo del tiempo. La red
establece una conexión lógica entre estaciones para el envío.
Encaminamiento
Los requisitos para la función de encaminamiento son:
− Exactitud
− Sencillez
− Robustez. Capacidad de la red para enviar paquetes en caso de fallos y
sobrecargas.
− Estabilidad. Puede encontrarse contrapuesta a la robustez, ya que las
reacciones súbitas a las sobrecargas de la red pueden provocar que algunos
paquetes viajen en bucles.
− Imparcialidad. Favorecer o desfavorecer la transmisión de paquetes entre
estaciones cercanas.
− Optimización. Puede competir con la imparcialidad, ya que un sistema
óptimo posiblemente dará prioridad a los paquetes que se transmiten entre
estaciones cercanas.
− Eficiencia. Involucra un costo de procesamiento en cada nodo así como un coste
en la transmisión. Dicho coste debe ser inferior a los beneficios obtenidos
en robustez o imparcialidad.
Criterios de funcionamiento: La selección de una ruta se basa generalmente en algún
criterio de funcionamiento. El más utilizado es el camino de menor coste:
Camino más corto: es el que pasa por el menor número de nodos, se
minimiza el consumo de recursos de la red.
Camino de menor costo: a cada enlace se le asigna un costo, que podría representar
la capacidad de la línea, o el retardo en la cola asociada al enlace. Se elige el camino
de costo menor entre cada par de nodos. Los algoritmos de mínimo costo básicos
son Dijkstra y Bellman-Ford.
Instante y lugar de decisión (Son independientes)
− Instante de decisión. Cuando la operación interna de la red se basa en
datagramas, se toma una decisión de encaminamiento para cada paquete. En
cambio, en los circuitos virtuales internos, la decisión sólo se realiza
cuando en el establecimiento del circuito virtual. En sistemas más complejos
los circuitos virtuales internos pueden cambiar dinámicamente con el tiempo
adaptándose a la situación actual de la red.
− Lugar de decisión. Se refiere al nodo o nodos en la red responsables de las
decisiones de encaminamiento. Destacan el distribuido, centralizado y en el
origen. En el encaminamiento distribuido (el más utilizado), cada nodo tiene la
responsabilidad de elegir una de sus líneas de salida para cada paquete de
entrada. En el encaminamiento centralizado, la decisión se realiza en un nodo
designado al respecto como centro de control de red. El principal peligro es que
la caída de ese nodo provoca el bloqueo de la parte de la red controlada por él.
En el encaminamiento en el origen, es la estación origen la que realmente
decide la ruta completa. Permite que el usuario elija la ruta con criterios
locales a dicho usuario.
Fuente de información de red y tiempo de actualización
Con el encaminamiento distribuido, cada nodo sólo posee información local sobre la
red, sin embargo existen algoritmos que permiten extender ese conocimiento hacía
un potencial camino de interés. Con el encaminamiento centralizado, los centros de
control de red poseen la información de todos los nodos de la red.
El tiempo de actualización de la información depende de la fuente de información y de
la estrategia de encaminamiento. Si la información usada es local, la actualización es
continua ya que el nodo local conoce las condiciones locales actuales. Para las otras
categorías de fuentes de información (nodos adyacentes, todos los nodos), el tiempo
de actualización es función de la estrategia de encaminamiento, en la estrategia
estática la información no se actualiza mientras no cambie la topología de la red. En
la estrategia adaptable la información se actualiza periódicamente para posibilitar
la adaptación de la decisión de encaminamiento a las condiciones cambiantes de la
red.
Cuanto mayor sea la información disponible y más frecuentemente se actualice, mejores
serán las decisiones de encaminamiento, aunque, eso sí, a costa de un consumo de los
recursos de la red.
Estrategias de encaminamiento
Encaminamiento estático
Se determina una ruta para cada par de nodos fuente–destino en la red. Las rutas
permanecen fijas, mientras lo sea la topología de la red. Por lo tanto, el cálculo de los
costes no se basan en el tráfico actual en la red, aunque podría estarlo en
capacidad o tráfico medios esperados. Para su implementación se crea una matriz de
encaminamiento, almacenada, por ejemplo, en un centro de control de red. Esta
matriz especifica para cada nodo y para cada combinación origen–destino, el siguiente
nodo en la ruta.
Con encaminamiento distribuido, en cada nodo se almacena sólo la información
necesaria para saber a qué nodo enviar el paquete dependiendo de su destino final.
Las tablas de encaminamiento se establecen y almacenan en cada nodo,
almacenando cada uno de ellos solamente una columna del directorio de
encaminamiento. El directorio de cada nodo especifica el siguiente nodo para cada
destino.
Su mayor ventaja es la sencillez., tiene un buen funcionamiento en una red de carga
estacionaria pero carece de flexibilidad: no reacciona ante fallos ni congestión. Se
mejora si cada nodo tiene una especificación alternativa para aumentar la flexibilidad.
Esta modalidad se conoce como encaminamiento cuasi-estático.
Inundaciones
No requiere el conocimiento de la información de la red. Un nodo fuente envía un
paquete a todos sus nodos vecinos, los cuales, a su vez, lo envían por todas sus líneas de
salida excepto por la que llegó. Una solución para que el número de paquetes no crezca
ilimitadamente, es asignar un tiempo de vida en número de saltos nodo-nodo a los
paquetes. Cuando un nodo recibe un paquete con la vida en saltos agotada, lo elimina de
la red. De esta forma se disminuye la probabilidad de fracaso de llegar a su destino. Por
lo tanto, resulta idóneo para enviar paquetes de alta prioridad. Al menos una copia del
paquete habrá usado una ruta de salto mínimo. Todos los nodos, directa o
indirectamente conectados al nodo fuente, son visitados. Por lo tanto, se puede
utilizar para propagar información importante (p.e. información de encaminamiento).
Su inconveniente principal es que genera mucho tráfico en la red.
Encaminamiento aleatorio
Presenta, con menor tráfico, sencillez y robustez similares a la técnica de inundaciones.
Cada nodo selecciona aleatoriamente la línea de salida por la que enviará el
paquete recibido. Se mejora asignando a cada línea una probabilidad, que puede
estar basada en la velocidad de transmisión de cada línea. No requiere el uso de
información de la red. Esta técnica soporta un tráfico superior al óptimo (porque
lo más probable es que no se siga la ruta de mínimo coste), aunque inferior al de
inundaciones.
Encaminamiento adaptable
Prácticamente todas las redes de conmutación de paquetes usan algún tipo de
técnica adaptable: las decisiones de encaminamiento cambian a medida que lo
hacen las condiciones de la red en lo que respecta a fallos y congestión:
− Fallos. Cuando un nodo o enlace falla, no pueden volver a ser usado en la ruta.
− Congestión. Cuando una porción de red está bajo congestión, es deseable
encaminar los paquetes a través de otra zona distinta a la de congestión.
Para que el encaminamiento adaptable sea posible es necesario que los nodos
intercambien información de control. A mayor información de control intercambiada,
mejor es la decisión de encaminamiento, pero el coste y la carga de tráfico
adicional de la red también es mayor.. Al aumentar el tráfico en la red, un exceso
de rapidez de reacción puede ocasionar oscilaciones y congestión. A pesar de esto,
es la técnica más usada por dos razones:
− El usuario percibe que las prestaciones aumentan con el uso de estas
técnicas.
− Esta técnica puede ayudar en el control de la congestión.
Basándonos en la fuente de información las estrategias de encaminamiento adaptable se
pueden clasificar en:
− Local.- la información de usuario se envía a través de la línea de salida cuya cola
(Q) sea menor y cuya dirección (Bi) sea correcta. Se minimiza la función Q+Bi.
No se suelen usar, ya que estos esquemas no explotan con facilidad la
información disponible.
− Nodos adyacentes.- se dispone, además, de la información local de los nodos
adyacentes.
− Todos los nodos.- se dispone de la información referente a todos los nodos de la
red.
Evolución de ARPANET
Son estrategias de encaminamiento que fueron originalmente diseñadas para
ARPANET.
Primera generación:
El algoritmo de encaminamiento original era un algoritmo adaptable distribuido
que hacía uso de la estimación de retardos como criterio de funcionamiento,
basándose en una versión del algoritmo de Bellman-Ford. En este algoritmo cada nodo
mantiene dos vectores de retardo. Periódicamente cada nodo intercambia su vector de
retardo con sus vecinos. Los nodos entonces pueden rechazar sus tablas y construir
una nueva basándose en los vectores de retardo. El retardo de enlace estimado no es
más que el tamaño de la cola para el enlace. Así, con la construcción de una tabla nueva
el nodo favorece a las líneas con menores colas, lo que equilibra la carga entre las líneas
de salida. Dado que el tamaño de la cola varia rápidamente, la percepción distribuida de
la ruta más corta puede cambiar con un paquete en tránsito, y puede provocar que el
paquete se dirija a una zona de bajo transito en lugar de a su destino.
Segunda generación:
Intenta solucionar los problemas anteriores. Su algoritmo es también adaptable
distribuido en base al retardo como criterio de funcionamiento. El retardo se mide
directamente: se usa un sello de tiempo con el instante en que llegó el paquete. Cuando
el paquete se envía se graba el instante de salida. Cada 10 segundos se calcula el retardo
promedio de cada línea de salida. Si se producen cambios significativos se envía la
información a los demás nodos por inundación. Su inconveniente es que los nodos
buscan la ruta óptima para todos los destinos, produciendo conflictos.
Tercera generación:
Intenta evitar las oscilaciones constantes entre rutas alternativas de descongestión.
La función de costo actúa, en condiciones de baja carga, de forma similar a una métrica
basada en el retardo. En carga alta una métrica basada en capacidad.
Descargar