Comunicación en Sistemas Distribuidos: MPI vs. Middleware Orientado a Mensajes (MOM)
Clasificado en Informática
Escrito el en
español con un tamaño de 3,06 KB
Interfaz de Paso de Mensajes (MPI)
Los Sockets resultan insuficientes por dos razones principales:
- Operan en un nivel de abstracción que solo soporta primitivas básicas de envío y recepción.
- Fueron creados para protocolos de pilas de propósito general (TCP/IP).
MPI está diseñada específicamente para aplicaciones paralelas con comunicación transitoria.
Características clave de MPI
- Asume que las fallas (como caídas de procesos o particiones de red) son fatales y no requieren recuperación automática.
- Asume que la comunicación ocurre dentro de un grupo conocido de procesos identificados.
- Dentro del grupo, cada proceso tiene un ID único.
Comunicación Persistente Orientada a Mensajes (MOM)
El Middleware Orientado a Mensajes (MOM) da soporte a la comunicación asíncrona persistente.
Capacidad de Almacenamiento de Mensajes
Permite la transmisión sin la necesidad de que el remitente o el destinatario estén activos simultáneamente durante la transmisión del mensaje.
Una diferencia clave entre Sockets Berkeley y MPI es que los sistemas de colas de mensajes están diseñados para soportar la transferencia de mensajes en minutos, y no solo en milisegundos o segundos.
Modelo de Colas de Mensajes
Las aplicaciones se comunican insertando mensajes en colas específicas.
Funcionamiento del Modelo
- Los mensajes son reenviados a una serie de servidores de comunicación y, en algún momento, se entregan al destino, incluso si este no estaba disponible inicialmente.
- Cada aplicación tiene su propia cola privada a la que otras aplicaciones pueden enviar mensajes.
- Una vez que un mensaje es depositado en una cola, permanece ahí hasta que sea eliminado. Esto ocurre sin importar si el remitente o el destinatario están en ejecución.
Administradores de Colas y Ruteadores
Las colas son manejadas por Administradores de Colas, que interactúan directamente con la aplicación que está enviando o recibiendo un mensaje, o por Administradores Ruteadores (enrutadores).
Agentes de Mensajes
En el contexto de la integración de sistemas, es importante saber cómo integrar aplicaciones nuevas y existentes a un solo Sistema Distribuido (SD).
El Problema del Formato
Las aplicaciones deben entender los mensajes. El problema surge cuando una aplicación integrada requiere un formato específico de los mensajes.
- Si hay muchas aplicaciones que requieren distintos formatos, el formato común tiende a ser una secuencia de bytes.
- La realidad es que los formatos suelen ser distintos, lo que dificulta la interoperabilidad directa.
Nace el Agente de Mensajes (Message Agent): una puerta de enlace a nivel de aplicaciones dentro de un sistema de colas de mensajes, cuya función principal es gestionar la traducción y el formato de los mensajes entre sistemas heterogéneos.