La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Sistemas DistribuidosIng. José L. Simón Comunicación entre procesos zLos procesos (programas que se ejecutan) manejan items de datos  estructuras zLas.

Presentaciones similares


Presentación del tema: "Sistemas DistribuidosIng. José L. Simón Comunicación entre procesos zLos procesos (programas que se ejecutan) manejan items de datos  estructuras zLas."— Transcripción de la presentación:

1 Sistemas DistribuidosIng. José L. Simón Comunicación entre procesos zLos procesos (programas que se ejecutan) manejan items de datos  estructuras zLas redes transmiten mensajes  serialización

2 Sistemas DistribuidosIng. José L. Simón Modelos de paso de mensajes zUnicast: uno a uno zMulticast: uno a varios (grupo)

3 Sistemas DistribuidosIng. José L. Simón Conceptos básicos zPaso de mensajes zTransparencia de localización zProtocolos de pedido y respuesta zMulticast zPolíticas de reconocimiento y espera

4 Sistemas DistribuidosIng. José L. Simón Marshalling - Unmarshalling zEs el aplanamiento de estructuras de datos para transmitirlas por la red zNormalmente implica la conversión de datos a un formato ‘exterior’ estándar Proceso 2Proceso 1 XDR

5 Sistemas DistribuidosIng. José L. Simón Marshalling zMarshalling = Aplanamiento + XDR

6 Sistemas DistribuidosIng. José L. Simón Operaciones básicas de mensajes zSend( msg, dest ) yenvía un mensaje al destino especificado zRecv( msg, orig ) yRecibe un mensaje desde la red. ‘orig’ contiene la información del remitente

7 Sistemas DistribuidosIng. José L. Simón Mensajes: modos de operación zModo bloqueado o sincrónico: yEl proceso se detiene hasta que se ejecuta completamente la operación solicitada (send o recv) zModo asincrónico: yEl proceso continúa su ejecución sin esperar la terminación de la operación

8 Sistemas DistribuidosIng. José L. Simón Modo asincrónico zHay varios mecanismos para obtener el resultado de la operación solicitada (send o recv): yEncuesta (polling) ySeñales yInterrupciones yCompletion Ports

9 Sistemas DistribuidosIng. José L. Simón Mensajes: extremos zUn canal de mensajes se establece entre dos endpoints que presentan una abstracción de la red subyacente a los procesos intervinientes zCada endpoint se denomina port

10 Sistemas DistribuidosIng. José L. Simón Ports zEl modelo de ports implementado puede soportar la transparencia de localización (Amœba, Chorus, Mach) o no (Unix Sockets) zUn mismo proceso puede usar varios ports zPara enviar un mensaje es necesario conocer el port de destino

11 Sistemas DistribuidosIng. José L. Simón Unicast zEs el modelo básico aplicado en las arquitecturas Cliente-Servidor zEstá basado en protocolos de pedido- respuesta (Request-Reply) zUtiliza tres operaciones primitivas

12 Sistemas DistribuidosIng. José L. Simón Primitivas Cliente-Servidor  DoOperation( Port serverPort, Message req, Message rsp ) zGetRequest( Port portID, Message req ) zSendReply( Port clientPort, Message reply )

13 Sistemas DistribuidosIng. José L. Simón Cliente-Servidor: interacción DoOperation() GetRequest() SendReply() Bloqueo ClienteServidor

14 Sistemas DistribuidosIng. José L. Simón Argumentos Formato de mensajes ID Requerimiento ID de proceso ID de tipo Request, Reply

15 Sistemas DistribuidosIng. José L. Simón Fallas en la transmisión zLos mensajes pueden perderse por un conjunto de causas: yDescartados por emisores, receptores o nodos intermedios de la red yRed particionada yProcesos que fallan

16 Sistemas DistribuidosIng. José L. Simón Remote Procedure Call zTécnica que permite invocar un procedimiento en un computador remoto zImplica conocer la localización del procedimiento e intercambiar mensajes de pedido y respuesta zUtiliza un protocolo de interacción específico

17 Sistemas DistribuidosIng. José L. Simón Protocolos de RPC: R zRequest yEl cliente solicita la ejecución del procedimiento remoto sin esperar respuesta yEjemplo: envío de alarmas o mediciones

18 Sistemas DistribuidosIng. José L. Simón Protocolos de RPC: RR zRequest-Reply yEl cliente requiere la ejecución de un procedimiento remoto yEl servidor recibe el pedido (mensaje R) y ejecuta el procedimiento yUna vez finalizada la ejecución, el servidor empaqueta los resultados en un mensaje de respuesta (Reply) y lo envía al cliente

19 Sistemas DistribuidosIng. José L. Simón Protocolos de RPC: RRA zRequest-Reply-Acknowlege yEl cliente requiere la ejecución de un procedimiento remoto yEl servidor recibe el pedido (mensaje R) y ejecuta el procedimiento yUna vez finalizada la ejecución, el servidor empaqueta los resultados en un mensaje de respuesta (Reply) y lo envía al cliente yCuando el cliente recibe la respuesta, envía una confirmación (ACK)

20 Sistemas DistribuidosIng. José L. Simón Comunicación en Grupos Grupos :  Tolerancia a fallas  Mejoras en la disponibilidad  Mejoras en la performance  Localización de objetos  Actualizaciones múltiples

21 Sistemas DistribuidosIng. José L. Simón Multicast Un emisor, un mensaje, varios receptores

22 Sistemas DistribuidosIng. José L. Simón Tipificación de multicast zAtómico: un mensaje transmitido a un grupo de receptores es recibido por todos o ninguno. Se utiliza con servidores replicados que deben mantener el mismo estado. zReliable: semántica de ‘mejor esfuerzo’: no garantiza que todos los receptores reciban el mensaje

23 Sistemas DistribuidosIng. José L. Simón Ordenamiento E1R1R2R3 E2 t1 Mensaje A Mensaje B Para R3 ‘A’ sucede antes que ‘B’

24 Sistemas DistribuidosIng. José L. Simón Ordenamiento temporal zCiertas aplicaciones requieren que los mensajes se reciban en el ordenamiento temporal en que fueron emitidos  yMulticast totalmente ordenado yMulticast causal


Descargar ppt "Sistemas DistribuidosIng. José L. Simón Comunicación entre procesos zLos procesos (programas que se ejecutan) manejan items de datos  estructuras zLas."

Presentaciones similares


Anuncios Google