RTOS, Embedded Linux, Real-Time Operating System and DO-178B: LynuxWorks

Messenger for High Availability
Advanced messaging for distributed and high availability architectures

PRINTABLE PDF VERSION (48 kB)

Messenger implements a message-based communication protocol for intelligent devices to cooperatively process information. The architecture is designed to facilitate intelligent I/O processor cards (IOP), and increase system scalability and availability. Peer-to-peer communications allow developers to flexibly integrate different I/O resources, enable direct communications between these I/O devices, and deploy split device drivers running in a high availability system. Applications and split device drivers communicate to each other over the underlying I/O bus using the services defined by Messenger's APIs.

Messenger is an essential part of systems that are distributed across processors and must interact with one another in a high availability distributed software/hardware architecture with N+1 redundancy.

By abstracting the system architecture and bus topology, Messenger allows applications to view their distributed environment as a single "virtual computer." High availability processes execute without regard to processor location and do not need to address other processes or CPUs with reference to platform specifics. Such abstraction fosters the generality needed to deploy applications in a high availability CompactPCI™ environment. Moreover, the abstraction eases prototyping while facilitating system monitoring and dynamic fault management.

MORE ABOUT HIGH AVAILABILITY SYSTEMS

Messenger is designed to work in a heterogeneous computing and operating systems environment. A distributed high availability system may be made up of different kinds of computing nodes running different operating systems. LynxOS® may run on nodes with real-time requirements, while other nodes run on Linux applications. The OS abstraction layer of Messenger is portable and can be ported to run on different operating systems.

LCS SECURE TCP/IP PROTOCOL STACK

Toolkit capabilities

Messenger includes object forms of the following components:

Enables node-to-node communications and full mesh connectivity

Messenger implements peer-to-peer and host-to-IOP models of communication. The concepts of communications paths and messages allow full mesh connectivity of logical devices: one to many: many to one: from logical module to logical module.

Integrated with LynxOS hot swap and high availability

Messenger provides the most flexible approach to fault-tolerant real-time distributed systems in the industry. Split processing applications and IOPs can be mixed and matched for specific configuration requirements. In a high availability and hot swap environment, the system's capabilities can be re-provisioned dynamically and expanded without interruption, or downtime.

In addition to loading the LynxOS RTOS onto subordinate IOPs at the system initialization time, the IOP Manager is responsible for recovering IOPs from failures, including hot swap extraction/insertion events.

HIGH-AVAILABILITY WHITE PAPER (815kB PDF)

Scalable and dynamic applications

Messenger supports the dynamic configuration of distributed applications and IOPs. The Logical Device Module naming scheme uses C-style character string object handles that allow inter-process communications to be based upon object types and properties, rather than upon static addresses.

Designed for performance

Support for message-passing among multiple independent processors greatly improves I/O performance in high-bandwidth applications such as layered communications protocol processing, VoIP, routing, and networked video applications by off-loading I/O intensive tasks from a single host processor onto specialized IOPs. Messenger implements a fast and slim asynchronous data-link messaging model.

For more robust communications and distributed applications, MINET interfaces directly with the Lynx TCP/IP stack for IP network addressing and routing. MINET makes Messenger nodes appear like nodes on an Ethernet network, allowing programmers to use standard, off-the-shelf network development tools and applications.

Designed for portability

The communications model for Messenger architecture is a message-passing system. The communication model is analogous to a connection-oriented networking protocol or the OSI layered model, in which two entities exchange messages by using the message layer to set up a connection and exchange data and control. The Messenger architecture is written specifically to be I/O processor-independent, allowing maximum flexibility in choosing an IOP that best suits a particular performance and cost objective. Messenger imposes no restriction on where layered modules execute, providing support for multi-processor and clustered systems. Messenger is designed to support different types of transport media, including: serial, TDM I/O buses, intelligent switch fabric chip interfaces, and network-facilitated clustered systems.

Messenger APIs

Messenger includes a well-defined set of APIs to support all aspects of split application, or driver, development. The Messenger APIs for distributed inter-process communications (IPC) compliments the rich selection of POSIX® APIs available in the LynxOS real-time operating system.

Message passing is one type of inter-process communication used in distributed, parallel systems. The messages consist of a very small header and the information to be transferred (payload). When a process is ready to send a message, it calls the Messenger Logical Device Module by submitting the name of the destination logical device and the payload information.

A message passing protocol is the logical model for building high-performance, fault-tolerant distributed systems.

Additional messenger services

Messenger includes several additional facilities and utilities that simplify debugging, testing and managing distributed applications.


RTOS and embedded operating systems

Embedded operating systems and development tools

Corporate

Industry solutions

OS Support

OS Training

SynergyWorks: LynuxWorks partners

contact us
ISO9001:2000 Copyright © LynuxWorks™, Inc. All rights reserved. Reproduction in whole or in part in any form or medium without express written permission of LynuxWorks is prohibited. 20 years of embedded excellence