Sockets

Solo disponible en BuenasTareas
  • Páginas : 23 (5653 palabras )
  • Descarga(s) : 4
  • Publicado : 13 de mayo de 2010
Leer documento completo
Vista previa del texto
Sistemas Distribuidos
Capítulo 2 Intercomunicación entre Procesos

Enrique Ayala Franco, MCC

Capitulo 2. Intercomunicación entre Procesos
Objetivo: El alumno aplicará los modelos de comunicación entre procesos distribuidos que le permitan desarrollar aplicaciones acordes a las arquitecturas de sistemas distribuidos.

 Introducción.  Protocolos de Internet para la comunicación deprocesos.
• Sockets UDP. • Sockets TCP. • Comunicación en grupo: multidifusión IP.

 Representación externa de datos.  Comunicación entre procesos distribuidos.
• RPC. • RMI.

2

2.1 Introducción a la Comunicación entre Procesos

3

Las Capas del Middleware

Aplicaciones, Servicios

RMI y RPC En este capítulo
Protocolo de petición-respuesta (request-reply)

marshalling yrepresentación externa
UDP y TCP

Capa Middleware

Comunicación entre Procesos

4

Introducción
Muchas aplicaciones y servicios de red como, la transferencia de archivos, verificación de autenticidad, ingreso remoto, acceso a sistemas de archivos remoto, se basan en el modelo cliente servidor. Un proceso servidor puede estar en la misma máquina que el cliente o en otra, en tal caso se requierecomunicación a través de la red. Las dos principales clases de protocolos de comunicaciones de bajo nivel que manejan el paradigma cliente-servidor son:
 protocolos orientados a conexión (TCP)  protocolos sin conexión (UDP)
Comunicación entre Procesos

5

Comunicación entre procesos
La forma más simple de comunicación entre procesos es el paso de mensajes. El paso de mensajes se basa endos operaciones:
 Envía (send)  Recibe (receive)
• definidas en función del origen y destino del mensaje

Esta actividad implica la comunicación de datos desde el proceso emisor al proceso receptor y puede implicar además la sincronización de los dos procesos.

Comunicación entre Procesos

6

Comunicación entre procesos
A cada destino se le asocia una cola de mensajes recibidos Unemisor entrega un mensaje en una cola remota Un receptor lee y elimina los mensajes de su cola local

7

Características de la Comunicación
La comunicación entre los procesos puede ser: síncrona y asíncrona. Síncrona
 Los procesos emisor y receptor se sincronizan en cada mensaje.  En este caso, tanto envía como recibe son operaciones bloqueantes.  A cada envía producido, el proceso emisorse bloquea hasta que se produce el correspondiente recibe  Cuando se invoca un recibe, el proceso se bloquea hasta que llega un mensaje

Comunicación entre Procesos

8

Características de la Comunicación
Comunicación asíncrona
 La utilización de la operación envía no es bloqueante.  La operación recibe puede ser bloqueante o no bloqueante.  El proceso emisor puede continuar tan prontocomo el mensaje haya sido copiado en el búfer local  La transmisión del mensaje se lleva a cabo en paralelo con el proceso emisor  El proceso receptor sigue con su flujo de ejecución después de invocar la operación recibe

Comunicación entre Procesos

9

Características de la Comunicación
Destino de los mensajes
 (dirección IP, puerto local)  Los servidores hacen público el número desus puertos para que sean usados por los clientes

Fiabilidad
 Garantiza que los mensajes se entregan a pesar de perder un número razonable de ellos

Integridad
 Los mensajes deben llegar a su destino sin corromperse ni duplicarse

Ordenación
 Los mensajes son entregados en el orden de su emisión
10

Sockets (conectores)
Un socket es una abstracción de un canal de comunicación dedatos entre un par de procesos, que esconde los detalles del proceso de comunicación. (conectar, leer, escribir, etc.) Permite tratar la conexión de red como un canal en el que los bytes pueden ser leídos o escritos de manera similar a la operación con archivos. Además, evita tener que preocuparse por detalles de bajo nivel como sería el tamaño de los paquetes, su retransmisión, el tipo de...
tracking img