Data Distribution Service Based on UDP HolePunching Technique
Kun Hou, Yue Zhou, Huanchao Du, Chaoqun Ma · 2024
This paper explores the design and implementation of using the UDP hole punching protocol in the underlying communication of the Data Distribution Service (DDS). As a widely used data communication middleware in distributed systems, DDS relies on its flexible Quality of Service (QoS) policies and efficient data distribution capabilities. However, traditional communication methods may face obstacles when traversing Network Address Translation (NAT) devices. To address this issue, we introduce the UDP hole punching technique, which establishes a direct UDP connection between the communicating parties to achieve NAT traversal. This study first reviews the communication mechanism of DDS and the basic principles of UDP hole punching, then designs a hybrid communication architecture that combines the two, providing detailed implementation and optimization. Through experimental evaluation, we validate the performance and stability of this solution in a publish-subscribe model. The results indicate that DDS communication utilizing UDP hole punching can significantly enhance data transmission efficiency in NAT environments while maintaining high Quality of Service. The research in this paper offers new insights and methods for applying DDS in complex network environments.