Sunteți pe pagina 1din 9

UNIVERSIDAD DE GUAYAQUIL

FACULTAD DE CIENCIAS MATEMTICAS Y


FSICA
CARRERA DE INGENIERIA EN NETWORKING Y
TELECOMUNICACIONES

COMUNICACIN ENTRE GRUPOS DE PROCESOS


Sistemas Operativos Distribuidos

AUTORES
Briggitte Cerezo Campozano
Elias Ortega Chiln
Elizabeth Oviedo Chvez
Mario Santos Mndez

TUTOR
Ing. Jorge Chicala

Guayaquil-Ecuador
2016-2017

COMUNICACIN ENTRE GRUPOS DE


PROCESOS
A veces existen circunstancias en las que la comunicacin es entre varios
procesos y no solo dos (el cliente y el servidor).

Ejemplo:

Un grupo de servidores de archivo que cooperan para ofrecer un nico


servicio de archivos tolerante a fallos.

RPC (Llamada a un Procedimiento Remoto) no puede controlar la


comunicacin de un servidor con muchos receptores, a menos que realice RPC
con cada uno en forma individual
Se considera a un grupo como 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).

Comunicacin uno a muchos


En esta parte tambin podemos denominar que los grupos son dinmicos dado
que:

Se pueden crear y destruir.


Un proceso se puede unir a un grupo o dejar a otro.
Un proceso puede ser miembro de varios grupos a la vez.

Como se mencion antes, la comunicacin se produce entre cada proceso y el


grupo al que pertenece esto no es til en caso de:

Tolerancia a fallos: servicios replicados


Aumento de prestaciones con replicas este y el anterior
comparten el mismo objetivo: disponibilidad.
Ubicacin de objetos en servicios distribuidos
Actualizacin mltiple

La implantacin de la comunicacin en grupo depende en gran medida del


hardware:
En ciertas redes es posible crear una direccin especial de red a la que pueden
escuchar varias mquinas:

Cuando se enva un mensaje a una de esas direcciones se lo entrega


automticamente a todas las mquinas que escuchan a esa direccin.
Esta tcnica se denomina multi-transmisin.
Cada grupo debe tener una direccin de multi-transmisin distinta.

Las redes que no soportan multi-transmisin operan con transmisin simple:

Significa que los paquetes que tienen cierta direccin se entregan a


todas las mquinas.
Se puede utilizar para implantar los grupos, pero es menos eficiente que
la multi-transmisin.
Cada mquina debe verificar, mediante su software, si el paquete va
dirigido a ella:
En caso negativo se descarta, pero para analizarlo se gener una
interrupcin y se dedic ciclos de CPU.

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 vlida particularmente con grupos pequeos.
El envo de un mensaje de un emisor a un nico receptor se llama untransmisin.

Resumiendo lo anterior se tiene los tipos de comunicacin entre grupo de


procesos en los que encontramos:
1.
2.
3.
4.

Uno a uno (unicast)


Uno a muchos
Muchos a uno
Muchos a muchos

Todos ellos utilizan las mismas dos primitivas:

Enva (destino, mensaje)


Origen recibe (mensaje)

Donde el identificador de comunicacin destino y origen pueden ser el nombre


de:

Un proceso
Un grupo de procesos

ASPECTOS DE DISEO DE LA COMUNICACIN


DE GRUPO
Grupos Cerrados Vs. Grupos Abiertos

En los grupos cerrados:

Solo los miembros del grupo pueden enviar hacia el grupo.


Ejemplo: comunidad de calculo

En los grupos abiertos:

Cualquier proceso del sistema puede enviar a cualquier grupo.


Ejemplo: grupo de servidores replicados

Un grupo puede ser mixto y tener operaciones internas y externas.

Suele implementarse usando dos identificadores de comunicacin

Grupos de Compaeros Vs. Grupos Jerrquicos


En algunos grupos todos los procesos son iguales:

No existe distincin de jerarquas.


Son los grupos de compaeros.

En otros grupos existe cierto tipo de jerarqua:

Son los grupos jerrquicos.


Un proceso es el coordinador y todos los dems son los trabajadores.
Una solicitud de un trabajo que se genere en un cliente externo o en uno
de los procesos trabajadores:
o Se enva al coordinador.
o El coordinador decide cul de los trabajadores es el ms
adecuado para llevarla a cabo y se la enva.

Cada tipo de grupo tiene sus ventajas y desventajas:


Respecto del grupo de compaeros:

Es simtrico y no tiene un punto de fallo.


Si uno de los procesos falla, el grupo se reduce pero puede continuar.
Para tomar decisiones grupales se producen retrasos debidos a la
comunicacin entre los miembros del grupo.

Respecto del grupo jerrquico:

La prdida del coordinador lleva al grupo a un alto total, lo que es una


desventaja.
En condiciones normales, el coordinador funciona correctamente y toma
decisiones sin molestar a los dems procesos.

Membresa del Grupo


La comunicacin en grupo requiere cierto mtodo para:

Creacin y eliminacin de grupos.


Unin y separacin de procesos a grupos.

Una posibilidad es la administracin distribuida de las membresas a grupos:

En un grupo abierto, un proceso extrao puede enviar un mensaje a los


integrantes del grupo para anunciar su presencia.
En un grupo cerrado se precisa algo similar, ya que se debe contemplar
la admisin de nuevos miembros al grupo cerrado.
Al salir de un grupo, el proceso debe comunicarlo a los dems del grupo
que deja.

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.
En este entra los tipos de comunicacin entre los grupos de procesos, en el
cual se considera los siguientes mtodos:

Si la red soporta multi-transmisin


Si la red no soporta multi-transmisin
Si la red no soporta multi-transmisin ni transmisin simple
Un segundo mtodo de direccionamiento de grupo consiste en pedirle al
emisor una lista explcita de todos los destinos
Un tercer mtodo es el de direccionamiento de predicados (predicate
addressing)

Primitivas Send y Receive


El envo de un mensaje a un grupo no se puede modelar como una llamada a
un procedimiento.
En un grupo de procesos se utilizan llamadas explcitas para el envo y
recepcin (modelo de un solo sentido).
Si se unifican las primitivas puntuales y grupales para send:

Si es una direccin de un proceso, se enva un nico mensaje a ese


proceso en particular.
Si es una direccin de grupo (o un apuntador a una lista de destinos), se
enva un mensaje a todos los miembros del grupo.

Si se fusionan las primitivas puntuales y grupales para receive:

La operacin concluye cuando llega un mensaje puntual o un mensaje


de grupo.

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.
La atomicidad Facilita la programacin de los sistemas distribuidos. Esto es de
gran importancia para garantizar la consistencia de las bases de datos y de los
archivos distribuidos y duplicados.

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. Esto nos da a entender que un sistema debe tener una semntica
bien definida con respecto al orden de entrega de los mensajes.

Solapamiento de grupos
Un proceso puede ser miembro de varios grupos a la vez, pero esto puede
generar un nuevo tipo de inconsistencia. Uno de los problemas principales que
nos podra causar esto es:

No existe coordinacin entre varios grupos.

S-ar putea să vă placă și