COMUNICACIÓN

Descargar como pptx, pdf o txt
Descargar como pptx, pdf o txt
Está en la página 1de 32

COMUNICACIÓN

EQUIPO 3:
OSCAR OZIEL PADILLA BÁRCENAS
ERIK ALEJANDRO RAMÍREZ DE LIRA
CHRISTIAN ISRAEL UBARIO
GUARADADO
LEONEL ALEJANDRO VIVAR ESPARZA

01
COMUNICACIÓN EN
SISTEMAS DISTRIBUIDOS
INTRODUCCIÓN

La comunicación entre procesos es la base de cualquier sistema distribuido. Sin


una comunicación efectiva, es imposible que los diferentes componentes del
sistema cooperen y funcionen como un todo.

02 SISTEMAS DISTRIBUIDOS
FUNDAMENTOS

PROTOCOLO DE COMUNICACIÓN
Debido a la ausencia de memoria compartida en los sistemas
distribuidos, toda la comunicación se basa en el envío y la
recepción (de bajo nivel) de mensajes. Para que la comunicación
sea efectiva, los procesos deben acordar el significado de los bits
que se envían. MODELO OSI
El modelo OSI (Open Systems Interconnection) es un modelo de
referencia que divide la comunicación en siete capas: física, enlace
de datos, red, transporte, sesión, presentación y aplicación. Cada
capa tiene un propósito específico y proporciona un servicio a la
capa superior.
CAPA FÍSICA
Transmitir bits (ceros y unos)

PROTOCOLOS DE
BAJO NIVEL CAPA DE ENLACE DE DATOS
Agrupar bits en tramas y detectar errores
Las capas física, enlace de datos y red se encargan de la
transmisión física de los bits a través de la red. Las principales
funciones de estas capas son:

CAPA DE RED
04 FUNDAMENTOS
Enrutar las tramas a través de la red
PROTOCOLOS
DE
CAPA DE TRANSPORTE
Segmentar los mensajes en

TRANSPORTE
unidades más pequeñas, garantizar
la entrega de los mensajes y Las capas de transporte y sesión se encargan de
controlar el flujo de datos. proporcionar una comunicación confiable entre
dos procesos.

CAPA DE SESIÓN
Controlar el diálogo entre dos
procesos y proporcionar
herramientas de sincronización.

FUNDAMENTOS 05
PROTOCOLOS DE
MÁS ALTO NIVEL
Las capas de presentación y aplicación se encargan de la semántica de los mensajes. Las principales funciones de
estas capas son:

• Capa de presentación: Formatear los mensajes para que sean interpretados por el destinatario.

• Capa de aplicación: Proporcionar servicios a las aplicaciones, como transferencia de archivos, correo
electrónico y acceso a bases de datos.

06
PROTOCOLOS
MIDDLEWARE
Los protocolos middleware son una categoría de protocolos de propósito general que se
utilizan para implementar servicios de comunicación de alto nivel, como:

• Llamada a procedimiento remoto (RPC): Permite que un proceso invoque un


procedimiento en otro proceso como si fuera local.
• Cola de mensajes (MOM): Permite que los procesos se comuniquen de forma
asincrónica mediante el envío y la recepción de mensajes en una cola.
• Flujo de datos: Permite la transmisión de datos continuos, como audio y video.
• Multitransmisión: Permite enviar un mensaje a un grupo de destinatarios de forma
simultánea.
07
TIPOS DE COMUNICACIÓN
El middleware ofrece una variedad de opciones de comunicación para las aplicaciones. Para comprender estas
opciones, es útil analizar el middleware como un servicio adicional en el modelo cliente-servidor.

COMUNICACIÓN PERSISTENTE VS COMUNICACIÓN ASÍNCRONA VS


TRANSITORIA SINCÓNICA
• Persistente: El middleware almacena el mensaje • Asíncrona: El remitente continúa su ejecución
hasta que se entrega al destinatario. después de enviar el mensaje.
• Transitoria: El middleware solo almacena el • Sincrónica: El remitente se bloquea hasta que se
mensaje mientras las aplicaciones se están confirma la recepción del mensaje.
ejecutando.

08
COMUNICACIÓN DISCRETA VS
POR FLUJO
• Discreta: Los mensajes son unidades
COMUNICACIÓN COMUNES completas de información.
• Persistencia + sincronización por
• Flujo: Se envían varios mensajes
presentación de petición: Utilizada en
relacionados entre sí en orden temporal.
sistemas de colas de mensajes.

• Comunicación transitoria + sincronización


después del procesamiento: Utilizada en
llamadas a procedimientos remotos.

09
LLAMADAS A
PROCEDIMIENTOS
REMOTOS
Las llamadas a procedimientos remotos (RPC) son un mecanismo fundamental en los sistemas distribuidos que
permite a un proceso en una máquina ejecutar un procedimiento en otra máquina. La RPC oculta la complejidad de
la comunicación entre máquinas, proporcionando una interfaz similar a la de las llamadas a procedimientos locales.

FUNCIONAMIENTO BÁSICO DE RPC


• Llamada a un procedimiento convencional: Se explica cómo funciona una llamada a un procedimiento local en C,
incluyendo el paso de parámetros por valor y por referencia.
• Operación básica de RPC: Se divide la llamada en una parte cliente y una parte servidor que se ejecutan en diferentes
máquinas. Se explica cómo se pasan los parámetros y el valor de retorno a través de la red.
10
RESGUARDOS DEL CLIENTE Y
SERVIDOR
La transparencia es un objetivo fundamental de las RPC. Los programadores no deberían notar si un
procedimiento se ejecuta localmente o en una máquina remota. Para lograr esto, se utilizan dos componentes
clave:

• Resguardo del cliente: Se ejecuta en la máquina cliente y transforma una llamada a un procedimiento local en
un mensaje que se envía al servidor.
• Resguardo del servidor: Se ejecuta en la máquina servidor y transforma un mensaje recibido del cliente en una
llamada a un procedimiento local.

11
FUNCIONAMIENTO BÁSICO
• El cliente llama al resguardo del cliente como si fuera un procedimiento local.
• El resguardo del cliente empaqueta los parámetros en un mensaje y lo envía al servidor.
• El resguardo del servidor recibe el mensaje y desempaca los parámetros.
• El resguardo del servidor llama al procedimiento remoto.
• El procedimiento remoto devuelve el resultado al resguardo del servidor.
• El resguardo del servidor empaqueta el resultado en un mensaje y lo envía al cliente.
• El resguardo del cliente recibe el mensaje y desempaca el resultado.
• El resguardo del cliente devuelve el resultado al cliente.
12
PASO DE PARÁMETROS
El paso de parámetros es un tema complejo en las RPC debido a la posible heterogeneidad de las máquinas. Los
problemas que pueden surgir incluyen:

REPRESENTACIÓN DE DATOS
Diferentes máquinas pueden usar diferentes formatos para representar tipos de datos básicos como enteros,
caracteres y números de punto flotante.
ORDENAMIENTO DE BYTES
Algunas máquinas numeran los bytes de derecha a izquierda (little endian) mientras que otras lo hacen de
izquierda a derecha (big endian)

13
Paso de parámetros de referencia
El paso de parámetros de referencia en las RPC es un tema complejo debido a la heterogeneidad de las máquinas.
Las soluciones existentes incluyen:

SERIALIZACIÓN
Convertir los datos a un formato estándar.
MARSHALLING
Empaquetar los datos de forma que se preserve su estructura y significado.
NEGOCIACIÓN DE TIPOS
Las máquinas cliente y servidor pueden negociar el formato de datos para cada parámetro.

14
Comunicación Transitoria Orientada a
Mensajes
Se ha puesto especial atención a la estandarización de la interfaz de la capa de transporte para permitir a los
programadores utilizar la suite completa de los protocolos (de mensajería) mediante un simple conjunto de primitivas.
las interfaces estándar facilitan llevar una aplicación a una máquina diferente.

Un socket es un punto final de comunicación en el que una aplicación puede escribir información destinada a enviarse
fuera de la red subyacente, y desde el cual puede leerse información entrante.

Un socket forma una abstracción sobre el punto final real de comunicación, el cual utiliza el sistema operativo local para
un protocolo de transporte específico.

15
Las primitivas de sockets para TCP:

17
La interfaz de paso de mensajes (MPI):

La MPI está diseñada para aplicaciones paralelas, y como tal, fue confeccionada para comunicación transitoria

PUNTOS IMPORTANTES
• Se diseñó para aplicaciones paralelas de alto rendimiento.
• Utiliza directamente la red subyacente.
• Asume que las fallas serias son fatales y no requieren recuperación automática.
• La MPI asume que la comunicación ocurre dentro de un grupo conocido de procesos.
• A cada grupo se le asigna un identificador.
18
• Dentro de un grupo, a cada proceso también se le asigna un identificador (local).
Las primitivas de mensajería MPI:

19
Sistemas de colas de mensajes
COMPARACION CON EL CORREO ELECTRONICO
• Los sistemas de colas de mensajes comparten algunas similitudes con el correo electrónico de internet.
• Ambos sistemas permiten la comunicación asíncrona y ambos pueden utilizarse para enviar mensajes a un
grupo de destinatarios.
Sistemas de colas de mensajes
DIFERENCIAS
• Entrega: En un sistema de colas de mensajes, un mensaje se entrega al destinatario o se informa al
remitente de que la entrega no fue posible.
• Prioridad: Los sistemas de colas de mensajes generalmente permiten a los remitentes especificar una
prioridad para sus mensajes.
• Seguridad: Los sistemas de colas de mensajes pueden configurarse para ser más seguros que el correo
electrónico.
WebSphere MQ

• La arquitectura de WebSphere MQ es bastante simple y directa, con administradores de colas que


manejan el envío y recepción de mensajes, y canales de mensajes que proporcionan conexiones
confiables entre ellos.

• La administración de redes sobrepuestas es un aspecto importante de MQ, pero puede ser compleja y
requiere un mantenimiento manual significativo.

• La administración de redes sobrepuestas es un aspecto importante de MQ, pero puede ser compleja y
requiere un mantenimiento manual significativo.
WebSphere MQ
PROBLEMAS POTENCIALES CON LA ADMINISTRACION DE
REDES SOBREPUESTAS
• Escalabilidad: La administración manual de canales puede ser difícil y
propensa a errores en redes grandes.

• Flexibilidad: Es difícil modificar dinámicamente la configuración de la


red en respuesta a cambios en las condiciones o necesidades.

• Automatización: Puede aumentar los costos operativos y reducir la


confiabilidad del sistema.
WebSphere MQ

POSIBLES SOLUCIONES A LOS PROBLEMAS DE


ADMINISTRACIÓN
• Herramientas de administración: Implementar herramientas de software que
automaticen tareas como la creación de canales.

• Tecnologías de virtualización: Utilizar tecnologías de virtualización para


simplificar la configuración y administración de la infraestructura de red.

• Arquitecturas de red más inteligentes: Implementar arquitecturas de red más


inteligentes que puedan autoconfigurarse y adaptarse a cambios en el entorno.
WebSphere MQ

• Organización general de una red de colas MQ que utiliza tablas


de enrutamiento y de alias.
Comunicación Orientada a Flujos
• Se diferencia de la comunicación tradicional en que se centra en el intercambio de información dependiente
del tiempo, como flujos de audio y video.

SOPORTE PARA MEDIOS CONTINUOS


• Los sistemas distribuidos generalmente ofrecen soporte para flujos de datos, que son secuencias de unidades
de datos que pueden ser discretas o continuas.
• Los medios continuos, como audio y video, se caracterizan por la importancia de las relaciones temporales
entre sus elementos.
Comunicación Orientada a Flujos
MODOS DE TRANSMISION
• Asíncrono: las unidades de datos se transmiten una tras otra sin restricciones de sincronización
• Síncrono: Existe un retraso máximo fin a fin para cada unidad de datos.
• Isócrono: Cada unidad de datos debe ser transmitida a tiempo, con un retraso maximo y minimo fin a fin.
Comunicación Orientada a Flujos
FLUJOS SIMPLES Y COMPLEJOS
• Consiste en una sola secuencia de datos, mientras que un flujo complejo se compone de varios flujos
simples relacionados, llamados subflujos.
• La sincronización entre subflujos es crucial para la correcta reproducción de flujos complejos, como una
película con audio y video.
Comunicación Orientada a Flujos

• Arquitectura general para pasar a través de una red un flujo de


datos multimedia almacenados.
Flujos y calidad del servicio
CALIDAD DEL SERVICIO (QOS)
• Define los requerimientos de la red y del sistema subyacente para garantizar la calidad de un flujo.
Los aspectos de la QoS para flujos continuos incluyen:
• Velocidad de bits: La tasa a la que se transportan los datos.
• Retraso: El tiempo máximo que tarda una unidad de datos en llegar al destinatario.
• Variabilidad del Retraso: La fluctuación del tiempo de entrega de las unidades de datos.
Flujos y calidad del servicio
MECANISMOS PARA IMPONER LA QOS
Existen diferentes mecanismos para garantizar las QoS, como:
• Servicios Diferenciados: Clasificación de paquetes en la red para dar prioridad a flujos sensibles al tiempo.
• Búferes: Almacenamiento temporal de paquetes en el receptor para reducir la inestabilidad del flujo.
• Corrección de Errores: Técnicas para retransmitir o reconstruir paquetes perdidos.
• Interpolación: Relleno de vacíos en la reproducción de audio o video cuando se pierden paquetes.
Flujos y calidad del servicio
SINCRONIZACION DE FLUJOS
Se refiere a mantener las relaciones temporales entre diferentes flujos. Dos tipos de sincronización son:
• Sincronización entre flujos discretos y continuos: Por ejemplo, sincronizar la presentación de diapositivas con
un flujo de audio.
• Sincronización entre flujos continuos: Por ejemplo, sincronizar audio y video en una película.
Comunicación por multitransmisión
• Un tema importante en comunicación de sistemas distribuidos es el soporte para enviar datos a varios
destinatarios. Por muchos años, este aspecto ha pertenecido al dominio de los protocolos de red, donde se
han implementado y evaluado diversas propuestas de solución al nivel de red y al nivel de transporte.

• Con la llegada de la tecnología de punto a punto, y la notablemente estructurada administración sobrepuesta,


se volvió más sencillo configurar rutas de comunicación.

• La comunicación por multitransmisión también puede lograrse de maneras diferentes a la con figuración
explícita de rutas de comunicación.

También podría gustarte