Optimization of message delivery reliability and throughput in a DDS-based system with per-publisher sending rate adjustment

Ridlo Sayyidina Auliya, Chia Ching Chen, Po Ru Lin, Deron Liang, Wei Jen Wang

Research output: Contribution to journalArticlepeer-review

1 Scopus citations

Abstract

Data distribution service (DDS) is a communication middleware that has been widely used in various mission-critical systems. DDS supports a set of attributes and quality of service (QoS) policies that can be tuned to guarantee important performance factors in mission-critical systems message delivery (communication), such as reliability and throughput. However, optimizing reliability and throughput simultaneously in a DDS-based system is challenging. Adjusting the publisher’s sending rate is a direct approach to control the performance of a DDS-based system, but to the best of our knowledge, only a few research have examined this approach. In this study, we proposed a novel algorithm that adjusts the sending rate of each publisher to optimize the message delivery reliability and throughput of a DDS-based system. We also developed a DDS-based system model and use the model to define topic-based reliability and throughput. According to our experimental results, the proposed algorithm achieves a system communication reliability of 99–99.99%, given three scenarios of different reliability issues (70–99.99% reliability). Most importantly, the proposed algorithm can slightly increase per-topic throughput while improving per-topic reliability.

Original languageEnglish
Pages (from-to)235-250
Number of pages16
JournalTelecommunication Systems
Volume84
Issue number2
DOIs
StatePublished - Oct 2023

Keywords

  • Data distribution service (DDS)
  • QoS
  • Reliability
  • Throughput
  • Topic-based publish-subscribe

Fingerprint

Dive into the research topics of 'Optimization of message delivery reliability and throughput in a DDS-based system with per-publisher sending rate adjustment'. Together they form a unique fingerprint.

Cite this