The document provides an overview of the DDS-XRCE specification, which defines an Agent-Client communication model to enable the use of the DDS data distribution service (DDS) in extremely resource-constrained networks. It describes the motivation for DDS-XRCE and its key aspects, including the message structure, interaction model, supported deployment scenarios, and how it provides security through the use of a client key.
5. DDS is Being Extended to the very Edge
• Users want to leverage the benefits of the DDS Data-Bus to
applications at the edge of the network, including Sensor Networks
• These systems are constrained in many dimensions: CPU, memory,
power, connectivity, transport payload & bandwidth
• The constraints make it not possible make the edge nodes direct
peer-to-peer participants on the DDS Domain and run DDS-RTPS
• DDS-XRCE solves this problem by defining a new Client-to-Agent
allowing the use of an Agent to communicate with a DDS Domain
8. Common approach: Agent-Based deployment model
XRCE
Agent
Global Data SpaceDDS/ RTPS
Client
Client
Client
DDS-XRCE
XRCE
Agent
Client
Client
Client
DDS App
DDS App
DDS App
DDS App
DDS App
9. Agent-Based deployment model
XRCE
AgentClient
XRCE Protocol
Global Data Space
DDS/ RTPS
Existing DDS
Interoperability Wire
Protocol
New protocol defined by
the DDS-XRCE
specification
Resource Constrained
Network
~ 40Kbps, 100Byte MTU
Resource Constrained
Device: ~ 100 KB RAM
Battery Powered
Sleep Cycles
10. Formal specification of the Agent and Protocol
XRCE
AgentClient
XRCE Protocol
Global Data Space
DDS/ RTPS
XRCE Protocol DDS/RTPS
Protocol
11. Formal specification of the Agent and Protocol
Client
XRCE Protocol
Global Data Space
DDS/ RTPS
HEADER MSG1 MSG2
XRCE Object Model
Message Structure
+
Interaction Model
+
37. Six deployment scenarios
• XRCE Client to DDS communication
• XRCE Client to Client via DDS
• Client-to-Client communication brokered by an Agent
• Federated deployment
• Direct Peer-to-Peer communication between clients
• Combined deployment
49. Conformance profiles
Profile Description
Read Access Client can read any DDS
Write Access Client can write any DDS
Configure Entities Client can configure/define DDS Entities dynamically
Agent can have Qos configured/defined remotely
Configure Qos Client can configure/define DDS Qos dynamically
Agent can have Qos configured/defined remotely
Configure Types Client can define DDS Type dynamically
Agent can have Qos configured/defined remotely
Discovery Client can discover Topics and Types available on DDS GDS
File-based Config Agent can be configured via XML files
UDP Transport Implements XRCE on UDP