80 likes | 207 Views
The GREX Networking Communication Module serves as a central hub for inter-process communication, providing essential features for listening, message dispatching, and capability centralization among connected modules. It utilizes XML Inter-Process Protocol and GREX Binary Protocol to ensure efficient communication while accommodating low bandwidth constraints. The module supports automatic node discovery, self-maintenance during failures, and reliable message retransmission. It translates messages between human-readable and binary formats, ensuring seamless interactions across dynamic networks, enhancing operational efficiency.
E N D
The Communication Module • Implements the center point for the inter process communication • Listens for local connecting modules • Provides message dispatching between modules • Centralizes the module descriptions and capabilities • Connects to the world • Broadcasts “I’m here” signal to everyone listening • Shares information for the connected modules • Manages the available communication channels
Protocols • XML Inter Process Protocol • Defines the communication and information sharing logic in the dynamic networking for GREX • Readable by human operators and easy to debug • GREX Binary Protocol • Complies with the extremely low bandwidth of the links to the outside world
Dynamic Networking • What defines a network as dynamic? • Handshaking: Automatically discover any and all reachable nodes of the network. • Self maintenance: Recover from communication failure without operator assistance. • Message retransmission: Ensure reliable delivery of information • Where is this functionality implemented?
Communication Module • Brings the inter process communication to the next level • Translates information into a bit-efficient binary protocol • Interfaces any available communication channels to the outside world • Maintains a copy of the module capability registries on remote network nodes • Transparently sends messages and requests to modules on remote nodes as if they are on the local vehicle
Communication Module Inter-Process Communicator External Node Descriptors Statistics MAC Protocol GREX Binary Protocol Translator Communication Channel Connection Detection Optimal Encoding Algorithm Generic Communication Device UW Acoustic Modem
Some old questions… • Which is better? • Connection based modems • Broadcasting modems • What MAC protocol to use?
Network Simulator Transport Module Message Generator Communication Module Message Generator Communication Module Message Generator Communication Module Message Generator Communication Module