Making DDS Really Real-Time with OpenFlow

An increasing amount of distributed real-time systems and other critical infrastructure now rely on Data Distribution Service (DDS) middleware for timely dissementation of data between system nodes. While DDS has been designed specifically for use in distributed real-time systems and exposes a number of QoS properties to programmers, DDS fails to lift time fully into the programming abstraction. The reason for this is simple: DDS cannot directly control the underlying network to ensure that messages always arrive to their destination on time.

In this paper we describe a prototype system that uses the OpenFlow SDN protocol to automatically and transparently learn the QoS requirements of DDS participants. Based on the QoS requirements, our system will manipulate the low-level packet forwarding rules in the network to ensure that the QoS requirements are always satisfied.

We use real OpenFlow hardware to evaluate how well our prototype is able to manage network contention and guarantee the requested QoS. Additionally, we evaluate how well the reliability and resilience features of a real DDS implementation is able to compensate for network contention on an unmanaged (i.e., normal) ethernet. To the best of our knowledge, this is the first evaluation of performance DDS under extreme network contention conditions.

 

Publication Year: 
2016