Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porImelda Capote Modificado hace 9 años
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
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.