Download Comunicaciones - Programación Distribuida y Tiempo Real

Document related concepts
no text concepts found
Transcript
Programación Distribuida y Tiempo Real
Comunicaciones
1. Comunicaciones en sistemas distribuidos
1.1. ¿Las comunicaciones entre procesos son propias de los sistemas distr.?
1.2. Protocolo: “…rules that govern the format, contents, and meaning of the
messages…”
1.3. Comparaciones: Tanenbaum, Coulouris, Liu
1.3.1. Tanenbaum: protocolos, RPC, RMI, Msg-Oriented, Stream-Oriented
1.3.2. Coulouris (3 y 4): Redes e interconec. + Comunicación entre procesos
1.3.3. Liu: Comunicación entre procesos
1.4. Modelo de Capas y DoD (TCP/IP)
1.4.1. No siempre isomórficos
1.4.2. Capa 4, 5 variantes, con TP0 ≅ UDP y TP4 ≅ TCP
1.4.3. Capa de Presentación (6) es la primera con significado de datos
1.4.4. Cap 1 Liu, Liu-chapter1.ppt, pp. 55 – 63
1.5. Conceptos importantes asociados a las comunicaciones (send-recv):
1.5.1. Sincrónica/Asincrónica (variantes, semántica)
1.5.2. Transitoria/Persistente (semántica)
1.5.3. Sinc/Asinc - Trans/Pers: cap. 2 Tanenbaum, Tan-chap-02.ppt, pp. 22-26
1.5.4. Confiable/No confiable (semántica + control de errores)
1.5.5. Con/Sin conexión (sintaxis)
1.5.6. Manejo de los datos: Capas menores a la de Presentación
1.5.6.1. Marshalling = Serialization (Wikipedia + Java) = Aplanado =
Empaquetado (traducción de Coulouris)
1.5.6.2. Representación de datos: externa o etiquetada
2. JMS: Java Message Service (parte de J2EE, javaeetutorial6.pdf)
2.1. MOM (Message Oriented Middleware) en Java
2.2. Comunicación con acoplamiento débil
2.3. Colas: básicamente para comunicaciones punto a punto
2.4. Tópicos: como una forma de publicación-suscripción (tópico = evento)
2.5. Más cosas, ej.: transacciones
Programación Distribuida y Tiempo Real – Notas de Clase
3. JMS
3.1. Provider
3.1.1. implementa JMS
“…a JMS provider is the entity that implements JMS…” (jms-1_1-fr-spec.pdf)
3.1.2. En nuestro caso: OpenJMS
3.1.3. “Servidor” de JMS, publicadores y suscriptores serán “clientes”
3.1.4. “JMS Domains” (en la especificación)
“Messaging products can be broadly classified as either point-to-point or
publish-subscribe systems” (jms-1_1-fr-spec.pdf)
3.2. Relación con JNDI (Java Naming and Directory Interface)
“JMS clients look up configured JMS objects using the JNDI API”
(jms-1_1-fr-spec.pdf)
4. http://docs.oracle.com/javaee/1.3/jms/tutorial/jms_tutorial-1_3_1.pdf
(uno de los tutoriales originales de jms)
Programación Distribuida y Tiempo Real – Notas de Clase