Messaging Subsystem Abstracts Transport Protocols
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing interface programs require application programs to maintain knowledge of network protocols and transport mechanisms, leading to labor-intensive modifications and errors as systems scale, especially when interoperation between dissimilar messaging systems is difficult and requires frequent updates.
Innovation Solution
A messaging subsystem that abstracts transport mechanisms and addresses, allowing messages to be exchanged across processes and systems without requiring application programs to know the underlying protocols or mechanisms, using object technology to create abstract message and address implementations that can work with various transport mechanisms like CORBA, RPC, and sockets.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If application programs maintain updated knowledge of network protocols and transport mechanisms, then communication functionality is achieved, but software complexity and maintenance burden increase significantly
Solution Approach 1:
The patent introduces an interface program as an intermediary layer between application programs and network protocols. This interface program receives messages from applications in a protocol-independent manner and handles the complexity of protocol selection, socket creation, and transport mechanism management. Applications interact with the interface program through a simplified API, while the interface program manages the underlying protocol complexity, thus resolving the contradiction between communication versatility and software simplicity.
2Adaptability or versatility
If application programs are modified to support new protocols and transport mechanisms, then system adaptability improves, but labor-intensive modifications and errors increase
Solution Approach 1:
The interface program serves as a mediator that absorbs all protocol-related complexity and modification needs. When new protocols or transport mechanisms need to be supported, only the interface program requires modification, not the application programs. The interface program's design allows it to accommodate new protocols through configuration or extension without requiring changes to applications, thus improving ease of manufacture while maintaining system adaptability.
Solution Approach 2:
The patent segments the communication system into distinct layers: application programs, interface program, and network protocols. This segmentation isolates protocol complexity in the interface program layer, allowing independent development and modification of protocol support without affecting applications. Each layer operates independently with well-defined interfaces, enabling protocol updates to be implemented solely in the interface program layer.
3Device complexity
If socket creation procedure is used with monolithic applications, then protocol knowledge can be maintained centrally, but interoperation between dissimilar messaging systems becomes difficult
Solution Approach 1:
The interface program is designed with universal functionality to support multiple dissimilar messaging systems and transport mechanisms simultaneously. It implements a unified message exchange mechanism that can adapt to different protocols (CORBA, RPC, sockets, JMS, Tuxedo) through a common interface. The interface program contains the logic to handle protocol conversion and interoperation, enabling applications to communicate across different messaging systems without requiring protocol-specific knowledge in each application.
Data Source
AI summary
Systems, methods, and devices are provided for message exchange between software components. One method includes receiving a message request from a software component to send a message to a destination address. The method includes creating a message object which can be exchanged between software components, regardless of a transport mechanism or a protocol employed by one or more software components, upon receiving the request.


