Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Blasco-Comunicacion en Los Sist Distrib PDF
Blasco-Comunicacion en Los Sist Distrib PDF
DISTRIBUIDOS
LU: 41.476
AO: 2012
1. Introduccin
La computacin desde sus inicios ha sufrido muchos cambios, desde los ordenadores que
permitan realizar tareas en forma limitada y de uso un tanto exclusivo de organizaciones
muy selectas.
Los mayores cambios se atribuyen principalmente a dos causas, que se dieron desde la
dcada de los setenta.
2. Etapas
En los 40's, se introducen los programas bit a bit, por medio de interruptores
mecnicos y despus se introdujo el lenguaje de mquina que trabajaba por tarjetas
perforadas.
Con las primeras computadoras, desde finales de los aos 40 hasta la mitad de los
aos 50, el programador interactuaba de manera directa con el hardware de la
computadora, no exista realmente un Sistema Operativo; las primeras
computadoras utilizaban bulbos, la entrada de datos y los programas se realizaban a
travs del lenguaje mquina (bits) o a travs de interruptores.
Durante los aos 50's y 60's.- A principio de los 50's, la compaa General's Motors
implanto el primer sistema operativo para su IBM 170. Empiezan a surgir las
tarjetas perforadas las cuales permiten que los usuarios (que en ese tiempo eran
programadores, diseadores, capturistas, etc.), se encarguen de modificar sus
programas. Establecan o apartaban tiempo, metan o introducan sus programas,
corregan y depuraban sus programas en su tiempo. A esto se le llamaba trabajo en
serie. Todo esto se traduca en prdida de tiempo y tiempos de programas excesivos.
En los aos 60's y 70's se genera el circuito integrado, se organizan los trabajos y se
generan los procesos Batch (por lotes), lo cual consiste en determinar los trabajos
comunes y realizarlos todos juntos de una sola vez. En esta poca surgen las
unidades de cinta y el cargador de programas, el cual se considera como el primer
tipo de Sistema Operativo.
En los 80's, inici el auge de la Internet en los Estados Unidos de Amrica. A
finales de los aos 80's comienza el gran auge y evolucin de los Sistemas
Operativos. Se descubre el concepto de multiprogramacin que consiste en tener
cargados en memoria a varios trabajos al mismo tiempo, tema principal de los
Sistemas Operativos actuales.
En los 90's y en adelante, entramos a la era de la computacin distribuida y del
multiprocesamiento a travs de mltiples redes de computadoras, aprovechando el
ciclo del procesador.
3. Tipos de sistemas
Desde una perspectiva histrica se puede hablar de diferentes modelos que determinan la
funcionalidad y la estructura de un sistema de cmputo, las caractersticas del sistema
operativo como gestor de los recursos, y su campo de aplicacin y uso:
Sistemas de lotes. Son los primeros sistemas operativos, que permitan procesar en
diferido y secuencialmente datos suministrados en paquetes de tarjetas perforadas.
Hoy en da, sobre sistemas multiprogramados con interfaces de usuario interactivas,
el proceso por lotes tiene sentido en aplicaciones de clculo intensivo, por ejemplo
en supercomputacin.
Sistemas centralizados de tiempo compartido. Fue el siguiente paso, a mediados de
los 60. El objetivo es incrementar la eficiencia en el uso de la CPU, un recurso
entonces caro y escaso, disminuyendo los tiempos de respuesta de los usuarios, que
operan interactivamente. Los recursos estn centralizados y se accede al sistema
desde terminales.
Sistemas de teleproceso. Se diferencian del modelo anterior en que los terminales
son remotos y acceden a un sistema central utilizando una infraestructura de red
(por ejemplo la telefnica) y un protocolo de comunicaciones normalmente de tipo
propietario. El sistema central monopoliza la gestin de los recursos. Ejemplos de
aplicaciones que resolva este modelo son los sistemas de reservas y de
transacciones bancarias.
Sistemas personales. Este tipo de sistemas proporciona un sistema dedicado para un
nico usuario, lo que fue posible gracias al abaratamiento del hardware por la
irrupcin del microprocesador a comienzos de los 80. Los primeros sistemas
operativos eran monoprogramados (MS-DOS), la mejora del hardware pronto
permiti soportar sistemas multitarea (Macintosh, OS/2, Windows 95/98), e incluso
sistemas operativos diseados para tiempo compartido, como UNIX y Windows
NT1. Por otra parte, la evolucin hardware ha llevado a los ordenadores personales
hacia versiones mviles (PC porttiles y otros dispositivos como PDAs y telfonos
mviles).
Sistemas en red. En la evolucin del teleproceso, los terminales fueron ganando
capacidad de cmputo y funcionalidad hasta convertirse en sistemas autnomos. El
concepto de computador central desaparece; ahora hay que hablar de un conjunto de
computadores que se conectan entre s utilizando una infraestructura de red. Una
mquina que proporciona el acceso a un determinado recurso es el servidor de ese
recurso. Los clientes, que pueden disponer de recursos locales, acceden a un recurso
remoto mediante solicitud al servidor correspondiente.
Sistemas distribuidos. Los recursos de diferentes mquinas en red se integran de
forma que desaparece la dualidad local/remoto. La diferencia fundamental con los
sistemas en red es que la ubicacin del recurso es transparente a las aplicaciones y
usuarios, por lo que, desde este punto de vista, no hay diferencia con un sistema de
tiempo compartido. El usuario accede a los recursos del sistema distribuido a travs
de una interfaz grfica de usuario desde un terminal, despreocupndose de su
localizacin. Las aplicaciones ejecutan una interfaz de llamadas al sistema como si
de un sistema centralizado se tratase. El modelo de sistema distribuido es el ms
general, por lo que, aunque no se ha alcanzado a nivel comercial la misma
integracin para todo tipo de recursos, la tendencia es clara a favor de este tipo de
sistemas. La otra motivacin es la relacin de costes a la que ha llevado la evolucin
tecnolgica en los ltimos aos. Hoy en da existe un hardware estndar de bajo
coste, los ordenadores personales, que son los componentes bsicos del sistema. Por
otra parte, la red de comunicacin, a no ser que se requieran grandes prestaciones,
tampoco constituye un gran problema econmico, pudindose utilizar
infraestructura cableada ya existente (Ethernet, la red telefnica, o incluso la red
elctrica) o inalmbrica.
Podemos encontrar este tipo de sistemas operativos en un entorno de empresa. Donde todo
el procesamiento de la organizacin se lleva a cabo en una sola computadora, normalmente
un Mainframe, y los usuarios usan sencillos ordenadores personales. Un problema del
modelo se da cuando la carga de procesamiento aumenta, se debe cambiar o ampliar el
hardware del Mainframe, lo cual es ms costoso que aadir ms computadores personales
clientes o servidores que aumenten las capacidades.
Son muy conocidos los sistemas centralizados con los que contamos en la actualidad, basta
con empezar por los que tenemos instalados en nuestras propias computadoras como
Windows, Linux, Mac OS, Unix, etc.
Los sistemas operativos de red estn formados por un software dbilmente acoplado en un
hardware dbilmente acoplado. De no ser por el sistema compartido de archivos a los
usuarios les parecera que el sistema consta de varias computadoras.
Debe haber un mecanismo de comunicacin global entre los procesos, de forma que
cualquier proceso pueda comunicarse con cualquier otro. Tambin un sistema global de
proteccin. La administracin de procesos, la forma en que se crean, destruyen y detienen
los procesos y tambin el sistema de archivos debe tener la misma apariencia en todas
partes.
Los sistemas distribuidos se basan en la utilizacin de sistemas de transmisin fiables,
eficaces, rpidos que permitan integrar sistemas de distintos fabricantes.
Remote login.
Correo electrnico.
Navegacin Web.
Streaming.
Telefona IP.
Comparticin de ficheros (P2P).
Un sistema distribuido que pretenda ofrecer una visin de sistema nico deber cumplir las
propiedades que se presentan a continuacin.
8.1 Transparencia
El objetivo esencial de un sistema distribuido es proporcionar al usuario y a las aplicaciones
una visin de los recursos del sistema como gestionados por una sola mquina virtual. La
distribucin fsica de los recursos es transparente.
8.2 Escalabilidad
Una de las caractersticas de los sistemas distribuidos es su modularidad, lo que le permite
una gran flexibilidad y posibilita su escalabilidad, definida como la capacidad del sistema
para crecer sin aumentar su complejidad ni disminuir su rendimiento.
8.4 Consistencia
El problema de mayor complejidad es el de la gestin del estado global para evitar
situaciones de inconsistencia entre los componentes del sistema. Este es un aspecto
fundamental en el diseo del sistema distribuido, por lo que el problema radica en la
necesidad de mantener un estado global consistente en un sistema con varios componentes,
cada uno de los cuales posee su propio estado local. Los nodos del sistema se hallan
fsicamente distribuidos, por lo que la gestin del estado global depende fuertemente de los
mecanismos de comunicacin, a su vez soportados por una red sujeta a fallos. Como
veremos, la gestin de la consistencia puede basarse en una buena sincronizacin entre los
relojes de los nodos o en mecanismos de ordenacin de eventos (relojes lgicos). La
distribucin fsica hace, en general, inviable la utilizacin de un reloj global que aporte
referencias absolutas de tiempo, lo que permitira una ordenacin total de los eventos y, por
lo tanto, de las transiciones de estado en cada nodo.
Para los sistemas distribuidos de rea amplia relativamente lentos, se utilizan los protocolos
de capas orientadas hacia la conexin como OSI y TCP/IP, dado que el problema principal
a resolver es el transporte confiable de los bits a travs de lneas fsicas pobres.
Para los sistemas basados en LAN, los protocolos con capas se utilizan muy poco. En vez
de ellos, se adopta por lo general un modelo mucho ms sencillo en donde el cliente enva
un mensaje al servidor y ste enva de regreso una respuesta al cliente.
Tambin se utiliza mucho la llamada a procedimientos remotos (RPC). Con ella un proceso
cliente que se ejecuta en una mquina llama a un procedimiento que se ejecuta en otra
mquina.
Es importante la forma en que los procesos cooperan y se sincronizan entre s. Por ejemplo,
la forma de implantar las regiones crticas o asignar recursos en un sistema distribuido.
En los sistemas con un CPU, los problemas relativos a regiones crticas, la exclusin mutua
y la sincronizacin se resuelven en general mediante mtodos tales como los semforos y
monitores. Pero estos no son adecuados para sistemas distribuidos, puesto que siempre se
basan en la existencia de memoria compartida, por lo que se necesitan otras tcnicas. La
mayora de sistemas operativos distribuidos tienen un paquete de hilos.
Un sistema distribuido debe mantener vistas parciales y consistentes de todos los procesos
cooperativos y de cmputo. Tales vistas pueden ser provistas por los mecanismos de
sincronizacin. La sincronizacin no tiene por qu ser exacta, y bastar con que sea
aproximadamente igual en todos los ordenadores. Hay que tener en cuenta, eso s, el modo
de actualizar la hora de un reloj en particular.
11. Procesos y procesadores
En el primero, cada usuario tiene su propia estacin de trabajo y a veces puede ejecutar
procesos en las estaciones de trabajo inactivas.
Dada una coleccin de procesadores, se necesita un algoritmo que asigne los procesos a los
procesadores, estos pueden ser deterministas o heursticos, centralizados o distribuidos,
ptimos o subptimos, locales o globales, iniciados por el emisor o por el receptor.
No se puede utilizar muchos procesadores con una sola memoria compartida porque se
origina un cuello de botella.
En el caso de las multicomputadoras, como no permite la memoria compartida se tiene que
utilizar la transferencia de mensajes, haciendo que la entrada/salida sea la abstraccin
central. La transferencia de mensajes trae consigo varios aspectos delicados como el flujo
de control, la prdida de mensajes, el uso de buffer y el bloqueo. Aunque se han propuesto
varias soluciones, la programacin con transferencia de mensajes es todava difcil.
El modelo OSI est diseado para permitir la comunicacin de los sistemas abiertos:
Son aquellos preparados para comunicarse con cualquier otro sistema abierto
mediante reglas estndar, establecen el formato, contenido y significado de los
mensajes recibidos y enviados.
Constituyen los protocolos, que son acuerdos en la forma en que debe desarrollarse la
comunicacin.
Cada capa proporciona una interfaz con la otra capa por encima de ella; la interfaz consiste
en un conjunto de operaciones para definir el servicio que la capa est preparada para
ofrecer a sus usuarios.
Con enlaces del orden de decenas (o centenas) de miles de bits / segundo y cpu poderosas:
Las redes pueden exhibir fallas que impliquen la prdida de paquetes. Si slo se pierden
algunos paquetes (hay comunicacin), estas fallas pueden corregirse usando feedback en
forma de ACK y timeouts.
Cuando el servidor revive luego de una cada, su cliente puede intentar una nueva
comunicacin, retransmitiendo el ltimo request no respondido.
Entrega al-menos-una-vez
En ausencia de fallas, entregan los mensajes exactamente-una-vez.
Ante fallas, pueden entregar un mensaje ms de una vez.
Se usa cuando los requerimientos son dem potentes.
Esconden fallas de comunicacin y de servidores.
Entrega a-lo-ms-una-vez
Detectan el hecho de que ha fallado la red o el servidor y lo reportan.
Operan en un contexto de sesin una asociacin entre dos procesos durante la cual ambos
mantienen el estado del protocolo.
Cuando se pierde el estado del protocolo, se termina la sesin.
Las sesiones tienen identificadores nicos.
El servidor contiene la parte que ser compartida por varios usuarios y el cliente solo la
particular de cada usuario.
Una computadora es servidor si ejecuta una aplicacin/proceso que sea servidor.
Las caractersticas ms importantes de la arquitectura cliente/servidor son:
El servidor presenta a todos sus clientes una interface nica y bien definida.
El cliente no necesita conocer la lgica del servidor, solo su interface externa.
El cliente no depende de la ubicacin fsica del servidor, ni del equipo fsico en el que
se encuentra, ni de su sistema operativo.
Los cambios en el servidor implican pocos o ningn cambio en el cliente.
A continuacin se describen las caractersticas de los sistemas desarrollados en arquitectura
Cliente/Servidor:
Direccionamiento
Para que un cliente pueda enviar un mensaje a un servidor, debe conocer la direccin de
ste.
Una primitiva sncrona es aquella en que el emisor se bloquea hasta que el receptor ha
aceptado el mensaje y la confirmacin regresa al emisor.
Una recepcin sin bloqueo le indica al ncleo la localizacin del buffer y regresa el control:
Otra solucin consiste en hacer que el ncleo receptor mantenga pendientes los
mensajes por un instante.
La llamada a receive elimina un mensaje del buzn o se bloquea (si se utilizan primitivas
con bloqueo) si no hay un mensaje presente. Esta tcnica se denomina primitiva con
almacenamiento en buffers.
Los buzones tienen el problema de que son finitos y pueden ocuparse en su totalidad,
cuando llega un mensaje a un buzn lleno, el ncleo debe elegir entre mantener el mensaje
pendiente por un momento esperando que algn mensaje sea retirado del buzn a tiempo o
descartar el mensaje.
Esta es la misma situacin que se tiene cuando se trabaja sin almacenamiento en buffers,
con buffers se reduce la probabilidad de problemas, pero los problemas no se eliminan ni
cambia su naturaleza.
Otra solucin utilizada es no dejar que un proceso enve un mensaje si no existe espacio
para su almacenamiento en el destino.
Hasta ac se ha supuesto que los mensajes enviados siempre sern recibidos, pero en la
realidad, los mensajes se pueden perder por diversas causas.
Cuando un cliente enva un mensaje se le puede suspender hasta que el mensaje ha sido
enviado, cuando contina, no hay garanta de que el mensaje ha sido entregado, pues el
mensaje podra haberse perdido.
Para el servidor es como si tuviera una llamada directa del cliente; lleva a cabo el trabajo y
regresa el resultado a quien hizo la llamada, de forma usual.
Cuando el proceso que hizo la llamada obtiene el control luego de la llamada a read:
Dispone los datos.
Ignora que el trabajo se realiz de manera remota.
Ha tenido acceso a servicios remotos mediante llamadas comunes a procedimientos
locales.
En resumen, se indican los siguientes pasos como una RPC:
Transferencia de Parmetros
Ordenamiento de parmetros es el empacamiento de un mensaje, el mensaje tambin
contiene el nombre o nmero de procedimiento, y la llamada que necesita.
Conexin Dinmica
Se refiere a cmo el cliente localiza el servidor. Un mtodo es integrar dentro del cdigo
del cliente la direccin (en la red) del servidor:
Un problema es que resulta demasiado rgido.
Si el servidor se desplaza, si se duplica o si cambia de interfaz, habra que localizar
y volver a compilar los numerosos programas.
Cuando el servidor inicia su ejecucin: una llamada tipo initialize que se encuentra fuera
del ciclo principal exporta la interfaz del servidor:
El servidor enva un mensaje a un programa conector para darle a conocer su
existencia.
Esto es el registro del servidor (registering the server).
El servidor proporciona al conector su nombre, versin y nico identificador.
El identificador generalmente tiene una longitud de 32 bits y un asa (handle) que se
utiliza para localizarlo.
El asa (handle) depende del sistema y puede ser: una direccin Ethernet, IP, X.500 o
un identificador ralo de procesos, etc.
El asa tambin proporciona informacin relativa a la autentificacin.
El servidor puede cancelar su registro con el conector si ya no est preparado para prestar
algn servicio.
Un esquema muy flexible pero que puede ser cuello de botella cuando hay mucha carga se
describe a continuacin.
Aspectos de la Implantacin
El desempeo o performance es fundamental en los sistemas distribuidos.
El desempeo depende de manera crtica de la velocidad de comunicacin.
La velocidad depende en gran medida de la implantacin.
Protocolos RPC
En los protocolos orientados a conexin:
Se establece una conexin entre cliente y servidor.
Todo el trfico en ambas direcciones utiliza esa conexin.
Se maneja a un nivel inferior mediante software que soporta la conexin.
Otra opcin son los protocolos estndar IP, sus caractersticas son:
El protocolo ya fue diseado, lo que ahorra trabajo.
Se dispone de muchas implantaciones, lo que ahorra trabajo.
Los paquetes IP se pueden enviar y recibir por casi todos los sistemas UNIX.
Los paquetes IP y UDP se pueden transmitir en muchas de las redes existentes.
Reconocimientos
Surge cuando los paquetes grandes deben dividirse en paquetes pequeos, los paquetes
sern reconocidos grupal o individualmente. Una estrategia de reconocimiento es el
protocolo detenerse y esperar (Stop and Wait Protocol):
Control de flujo:
Est relacionado con la capacidad infinita de recepcin de paquetes adyacentes por
parte de los chips de la interfaz de red.
Cuando un paquete llega a un receptor que no lo puede aceptar se presenta un error
de sobre-ejecucin (overrun error) y el paquete se pierde.
Si la sobre ejecucin se debe a la capacidad finita del buffer en el chip de red, el emisor
puede:
Enviar n paquetes y luego hacer una pausa.
Solicitar una confirmacin o reconocimiento luego de cada n paquetes.
Ruta Crtica
Serie de instrucciones que se ejecutan en cada RPC como se muestra en la siguiente figura:
Tambin es importante saber qu parte de la ruta crtica ocupa la mayor parte del tiempo de
la RPC, que depende del tipo de RPC y de la cantidad de datos que se deben transportar:
En RPC con transporte mnimo la mayor parte del tiempo se ocupa en el cambio de
contexto al resguardo del servidor al llegar un paquete, la rutina de servicio de
interrupciones y el movimiento del paquete a la interfaz de la red para su
transmisin.
El RPC con transporte de 1k o ms la mayor parte del tiempo se ocupa en el
tiempo de transmisin, y el tiempo que tarda el desplazamiento del paquete hacia
adentro y afuera de la interfaz.
Copiado
El copiado es otro aspecto que tambin suele dominar el tiempo de ejecucin. El chip de la
red puede utilizar el DMA para:
Transferir el mensaje del espacio de direcciones del resguardo del cliente a la red.
Depositarlo en la memoria del ncleo del servidor en tiempo real.
Para evitar el copiado a resguardo con un S.O. con memoria virtual el ncleo modifica el
mapa de la memoria para asociar el buffer con el paquete en el espacio de direcciones del
servidor y enviar simultneamente el buffer del resguardo del servidor al ncleo. Los
requisitos son los siguientes:
El buffer del paquete en el ncleo ocupa toda una pgina a partir de una frontera de
la pgina.
El buffer receptor del resguardo del servidor tambin es de toda una pgina e inicia
en una frontera de pgina
reas de Problemas
Lo ideal es que la RPC sea transparente.
Un problema adicional consiste en que no siempre es posible deducir los tipos de los
parmetros:
Ni siquiera a partir de una especificacin formal del propio cdigo, en especial
considerando C.
La exclusin de C cuando se utilice RPC violara la transparencia.
Un grupo es una coleccin de procesos que actan juntos en cierto sistema o alguna forma
determinada por el usuario.
La propiedad fundamental de todos los grupos es que cuando un mensaje se enva al propio
grupo, todos los miembros del grupo lo reciben.
Se trata de una comunicacin uno - muchos (un emisor, muchos receptores), que se
distingue de la comunicacin puntual o punto a punto (un emisor, un receptor).
Otra solucin es implantar la comunicacin en grupo mediante la transmisin por parte del
emisor de paquetes individuales a cada uno de los miembros del grupo:
En vez de un paquete se precisan n paquetes.
Es menos eficiente que las soluciones anteriores.
Es una solucin valida particularmente con grupos pequeos.
El envo de un mensaje de un emisor a un nico receptor se llama unitransmisin.
Una posibilidad es tener un servidor de grupos al cual enviar todas las solicitudes: es un
mtodo directo, eficiente y fcil de implementar. La desventaja es el punto de fallo que
representa la administracin centralizada de los grupos.
Al salir de un grupo, el proceso debe comunicarlo a los dems del grupo que deja.
Un aspecto problemtico se presenta cuando un miembro falla, saliendo por lo tanto del
grupo:
No hay un anuncio apropiado de este hecho.
Los dems miembros del grupo lo deben descubrir de forma experimental; luego se
lo puede eliminar del grupo.
Otro aspecto importante es que la entrada y salida al grupo debe sincronizarse con el envo
de mensajes:
Un proceso que se uni a un grupo debe recibir todos los mensajes que se enven al
mismo.
Un proceso que ha salido de un grupo:
o No debe recibir ms mensajes del grupo.
o El grupo no debe recibir ms mensajes del proceso.
o Los otros miembros no deben recibir ms mensajes del proceso saliente.
Una forma de garantizar que una entrada o salida se integra al flujo de mensajes en
el lugar correcto es convertir esta operacin en un mensaje a todo el grupo.
Un aspecto crtico resulta cuando fallan tantas mquinas que el grupo ya no puede
funcionar:
Se necesita cierto protocolo para reconstruir el grupo.
Alguno de los procesos deber tomar la iniciativa.
El protocolo deber resolver la situacin que se presenta cuando dos o ms procesos
intentan al mismo tiempo reconstruir el grupo.
Direccionamiento al Grupo
Los grupos deben poder direccionarse, al igual que los procesos.
Una forma es darle a cada grupo una direccin nica, similar a una direccin de proceso.
Atomicidad
La mayora de los sistemas de comunicacin en grupo estn diseados para que
los mensajes enviados al grupo lleguen correctamente a todos los miembros o a ninguno de
ellos:
Esta propiedad de todo o nada en la entrega se llama atomicidad o transmisin
atmica.
Facilita la programacin de los sistemas distribuidos.
Es de gran importancia para garantizar la consistencia de las bases de datos y de los
archivos distribuidos y duplicados.
La nica forma de garantizar que cada destino recibe todos sus mensajes es pedirle que
enve de regreso un reconocimiento despus de recibir el mensaje:
Esto funciona si las mquinas no fallan.
Si fallan:
o Algunos miembros del grupo habrn recibido el mensaje y otros no; esto es
inaceptable.
o Los miembros que no recibieron el mensaje ni siquiera saben que les falta
algo, por lo que no pedirn una retransmisin; adems, si pudieran detectar
el faltante pero fallara el emisor, no podrn recibir el mensaje.
Una solucin puede llegar del algoritmo de Joseph y Birman, este algoritmo asegura que
todos los procesos sobrevivientes obtendrn el mensaje, independientemente del nmero de
mquinas que fallen o el nmero de paquetes perdidos.
Ordenamiento de Mensajes
El ordenamiento de los mensajes es un aspecto fundamental en la comunicacin en grupo.
El problema es que cuando dos procesos contienden por el acceso a una LAN, el orden de
envo de los mensajes no es determinista.
Un sistema debe tener una semntica bien definida con respecto al orden de entrega de los
mensajes.
La mejor garanta es la entrega inmediata de todos los mensajes, en el orden en que fueron
enviados:
Todos los mensajes destinados a un grupo deben entregarse antes de comenzar a
entregar la siguiente serie de mensajes.
Todos los receptores reciben todos los mensajes en el mismo orden.
Es esquema se denomina ordenamiento con respecto al tiempo global.
Los aos noventa han alumbrado nuevos desarrollos tecnolgicos en los niveles inferiores
de la pila de protocolos OSI. Uno de ellos es ATM.
Arpanet, la red precursora de Internet entr en funcionamiento en 1969 con lneas punto a
punto de 56 Kbytes/s. Hoy todava los usuarios finales de Internet se comunican a estas
velocidades. Los nuevos desarrollos de los noventa proponen estndares que
repentinamente saltan a velocidades de 155 Mbytes/s para el usuario final y a 1 Gbyte/s
para el tronco principal de Internet.
Cuando estas compaas decidieron construir redes para el siglo 21, se encontraron con un
dilema. Por una parte, la voz requiere un ancho de banda muy bajo, pero constante. Por la
otra, los datos de los computadores no aparecen en las lneas de comunicacin de una forma
predecible y con una tasa constante. Al contrario, son de naturaleza explosiva.
Repentinamente surge una corriente a la que es preciso asignar un canal del mayor ancho
de banda posible. Cuando la comunicacin acaba, el ancho de banda que se precisa es nulo.
En conclusin, ni la red telefnica de conmutacin de circuitos es apropiada para transmitir
datos ni las redes de datos de conmutacin de paquetes son apropiadas para trasmitir la voz.
ATM requiere que sea establecido un circuito virtual antes de establecer la comunicacin
entre el emisor y el receptor o los receptores de la comunicacin. Durante el
establecimiento de la conexin, la informacin del encaminamiento se almacena en los
nodos de conmutacin ATM que definen la misma. Los paquetes de los protocolos de
nivel superior son enviados a la tarjeta o adaptador ATM de la mquina donde corre el
proceso de usuario, que los trocea en unidades pequeas de tamao fijo denominadas
celdas. Las celdas de una conexin siguen la secuencia de nodos que se estableci al
crearla. Cuando sta termina, la informacin relativa a la conexin es eliminada de los
nodos de conmutacin.
Ventajas
La principal es que ahora una nica red es capaz de transportar voz, datos, radio, televisin
por cable, vdeo, etc., reemplazando a la red de antenas y repetidores de radio y televisin,
la maraa de cables de la red telefnica, el nuevo cableado de la televisin por cable, el
cableado de las redes de datos, etc.
Adems, permite la aparicin de nuevos servicios como las videoconferencias, que son
accesibles desde todos los hogares con un nico cable. En todos los casos, los nodos
intermedios de la conexin ven slo celdas, el contenido poco importa excepto al extremo
final.
El hecho de que las celdas sean de tamao fijo hace que la conmutacin sea mucho ms
rpida, sin necesidad de que sean almacenadas en disco duro como los paquetes de la red
Internet.
El segundo factor que incrementa la velocidad es que los conmutadores ATM no realizan
control de flujo ni comprobacin de errores en las celdas.
ATM opera estableciendo circuitos virtuales, pero un circuito slo es establecido si estn
disponibles los recursos suficientes para garantizar la calidad del servicio solicitado. ATM
tiene su propia pila de protocolo.
El nivel fsico
Una tarjeta adaptadora ATM se encarga de poner en el cable, sea de cobre o fibra ptica,
una corriente continua de celdas. Cuando no hay nada que transmitir, se envan celdas
vacas.
A este modo de transmisin se le llama modo nativo ATM y logra velocidades de
transmisin superiores al Gigabit/s con fibra ptica.
Alternativamente, las celdas ATM pueden ser enviadas como datos convencionales en los
marcos de la red de servicios integrados de banda ancha, B-ISDN. Con este mtodo,
definido en el estndar CCITT I.150, se alcanza una velocidad de transmisin de 155
Mbits/s o 622 Mbits/s.
El nivel ATM
Este es el nivel que define el formato de las clulas y el protocolo orientado a conexin que
las transmite.
En cada conmutador existe una tabla de encaminamiento que se establece cuando se crea la
conexin. Cuando una celda llega a un conmutador, se examinan los campos VCI y VPI y
la celda sale por el puerto correspondiente. Por lo tanto, los campos VCI y VPI de una
celda se modifican cada vez que esta atraviesa un conmutador.
El campo CLP significa prioridad en la prdida de celdas y puede utilizarse para distinguir
entre unas celdas ms importantes que otras en funcin de su contenido.
El campo tipo de datos distingue entre celdas de datos y celdas de control y distingue entre
varios tipos de celdas de control.
El campo CRC es una comprobacin sobre la cabecera completa (no los datos).
Este mecanismo es el que trocea el mensaje en las celdas que salen al cable. Estos
procedimientos de ensamblado y desensamblado constituyen el nivel de adaptacin ATM.
Estn implementados en el adaptador de red y provocan una interrupcin por paquete y no
por celda.
Una propuesta del nivel de adaptacin es SEAL, que significa Nivel de Adaptacin Simple
y Eficiente. Por su nombre, fcilmente puede adivinarse lo que pensaron sus creadores de
las propuestas anteriores. SEAL utiliza un bit del campo de tipo de datos de la celda. Este
bit es normalmente cero, pero es uno en la ltima celda de un paquete.
Capa fsica: Similar a la capa fsica del OSI, sta maneja la transmisin dependiente del
medio.
Capa ATM: Combinada con la capa de adaptacin ATM, es similar a la capa de enlace de
datos del OSI. Es la responsable para establecer conexiones y pasar celdas a travs de la red
ATM.
Capa de adaptacin ATM (AAL): Realiza la funcin de preparar la informacin segn sus
requerimientos antes de que sta pase a la capa ATM, en donde se construyen las celdas.
Finalmente las capas ms altas que residen en la parte superior de AAL aceptan datos de
usuarios, los arreglan en paquetes, y los entregan al AAL.
Conexiones ATM
Soporta dos tipos de conexiones:
Punto a punto:
Conecta dos puntos finales ATM y pueden ser unidireccional y
bidireccional.
Punto a multipunto:
Conecta un punto final simple (conocido como root) a un conjunto de puntos
finales. (Conocidos como leaves).
Estas conexiones solamente son unidireccionales.
Los protocolos de enlace ATM varan de acuerdo al tipo de enlace que se est manejando,
los cuales pueden ser seales UNI o NNI. UNI es usado entre un sistema final ATM y un
switch ATM a travs del ATM UNI. NNI es utilizado a travs de enlaces NNI.
Mensajes de conexin
Una gran cantidad de tipos de mensajes de manejo de conexin son utilizados en el proceso
de establecimiento de conexin.
Bibliografa
[1] Dr. David Luis la Red Martnez - Sistemas Operativos UNNE - Facultad De Ciencias
Exactas Y Naturales Y Agrimensura -
http://exa.unne.edu.ar/depar/areas/informatica/SistemasOperativos/SO8.htm#Inicio
[2] Cabello, Daz y Martnez. Sistemas Operativos, Teora y Prctica. Madrid: Daz de
Santos.
[3] Flynn, Ida y Mclver, Ann. Sistemas Operativos (3a ed.). Mxico: Thomson.