Abstract
Pub/sub system enables data users to access any necessary data without knowledge of the data producer and synchronization with the data producer. It is widely used as the middleware technology for the data-centric services. DDS (Data Distribution Service) is a standard middleware supported by the OMG (Object Management Group), one of global standardization organizations. It is considered quite useful as a standard middleware for US military services. However, it is well-known that it takes considerably long time in searching the Participants and Endpoints in the system, especially when the system is booting up. In this paper, we propose a discovery scheme to reduce the latency when the participants and Endpoints are densely distributed in a small area. We propose to modify the standard DDS discovery process in three folds. First, we integrate the Endpoint discovery process with the Participant discovery process. Second, we reduce the number of connections per participant during the discovery process by adopting the concept of successors in Distributed Hashing scheme. Third, instead of UDP, the participants are connected through TCP to exploit the reliable delivery feature of TCP. We evaluated the performance of our scheme by comparing with the standard DDS discovery process. The evaluation results show that our scheme achieves quite lower discovery latency in case that the Participants and the Endpoints are densely distributed in a local network.
Pub/sub 기술은 메시지 기반으로 데이터 생성자의 위치, 시간, 동기화 등에 대한 데이터에 제한 없이 접근할 수 있게 하는 특징을 가지므로, 데이터 중심 서비스를 위한 미들웨어 구축 기술로 널리 활용되고 있다. 국제 표준화 기구인 OMG (Object Management Group)에서 정의한 DDS (Data Distribution Service)는 pub/sub 기반의 미들웨어 기술로서, 미국 군용 장비의 표준 미들웨어로 채택되는 등 그 유용성이 높이 인정받고 있다. 그러나 publisher와 subscriber가 밀집된 환경에서는, 시스템 초기 부팅 시에 시스템 내 data 생산과 소비 주체가 되는 Participant와 Endpoint들을 탐색하는 과정에서의 지연 시간이 길다는 문제점을 갖고 있다. 본 논문에서는 지역적으로는 넓지 않지만 시스템 내의 Participant와 Endpoint의 수가 밀집된 환경에서의 탐색 시간을 줄일 수 있는 방안을 제시한다. 기존의 DDS 표준에서 정의하고 있는 표준 탐색 단계인 Participant 탐색 단계와 Endpoint 탐색 단계를 통합하고 분산 해쉬 기법의 Successor 개념을 도입하여 각 Participant마다 메시지를 전달해야 하는 대상의 수를 줄였다. 메시지 전달대상의 수를 줄임으로써 전송 프로토콜로 TCP를 적용하는 것이 가능해져, 메시지 전달의 신뢰성을 높일 수 있었다. 네트워크 시뮬레이터를 통한 성능 평가에서 본 연구에서 제안한 기법이 기존 기법에 비해 10%의 탐색 시간으로 시스템 내 Participant와 Endpoint를 발견할 수 있었다.