## 0.1 레거시 ROS1 마스터 프로세스 소멸과 DDS 기반 P2P 자가 발견 아키텍처

0.1.1 중앙 집중형 ROS1 마스터 (ROS Master) 데몬의 구조적 한계점

초기 로봇 운영체제(ROS1)는 분산 컴퓨팅 환경을 구축하기 위해 ’ROS 마스터(ROS Master)’라는 중앙 집중형 네임 서비스(Name Service) 계층을 채택하였다. 네트워크 상에서 구동되는 모든 퍼블리셔(Publisher), 서브스크라이버(Subscriber), 서비스 클라이언트 노드는 자신의 위치 메타데이터(IP 주소 및 통신 포트)를 ROS 마스터에 의무적으로 등재(Registration)해야만 상호 간의 식별과 통신 채널 수립이 가능하였다.
이러한 중앙 노드 종속적 기동 아키텍처는 단일 장애점(Single Point of Failure, SPOF)이라는 치명적인 시스템 결함을 내포하고 있었다. 물리적 네트워크 단절, 프로세스 크래시(Crash), 과도한 트래픽 집중 등의 원인으로 인해 ROS 마스터 데몬이 비정상 종료되거나 접근 불가능 상태에 빠질 경우, 기존에 확립된 일부 유니캐스트 연결은 잔존하지만, 네임 등록 및 룩업이 중단됨에 따라 신규 노드의 참여나 통신망 구조 재구성이 전면적으로 불가능해지는 시스템 전체의 마비 사태를 초래하였다.

0.1.2 데이터 분산 서비스(DDS) 전면 도입 및 중앙 통제 소멸

ROS2 아키텍처는 위와 같은 단일 장애점 문제를 근본적으로 해소하기 위해 ROS 마스터 계층을 아키텍처 레벨에서 폐쇄하고, 국제 객체 관리 그룹(Object Management Group, OMG)이 제정한 산업 표준인 데이터 분산 서비스(Data Distribution Service, DDS) 규격을 코어 미들웨어로 채택하였다.
DDS 기반의 통신망 설계는 특정 중개 서버나 중앙 제어 프로세스에 의존하지 않는 피어 투 피어(Peer-to-Peer, P2P) 방식의 완전한 분산 데이터 버스(Distributed Data Bus)를 구현한다. 각각의 분산 애플리케이션 노드는 물리적 계층에서 상호 독립적으로 기동하며, 마스터 노드의 부재 속에서도 자가 발견(Self-Discovery) 메커니즘을 통하여 스스로 통신 토폴로지(Topology)를 구축한다. 이러한 무상태(Stateless) 기반의 탈중앙 통신 패러다임은 메타 시스템이나 다수 에이전트 드론 간의 극한 통신 불균형 조건에서 단일 시스템이 소멸하여도 전체 관제 네트워크의 생존성과 통신 탄력성(Resilience)을 보장하도록 설계되었다.

0.1.3 단순 참여자 검색 프로토콜(SPDP)을 통한 RTPS 동적 노드 자가 발견 메커니즘

마스터 데몬 없이 ROS2 노드 간의 브로커리스(Brokerless) 동적 통신망 결합을 가능하게 하는 핵심 원리는 DDS 하부의 실시간 발행-구독 프로토콜(Real-Time Publish-Subscribe, RTPS)에서 동작하는 참여자 발견 프로토콜(Participant Discovery Protocol, PDP)에 기반을 둔다.
물리 메모리에 개별 노드가 실체화(Instantiation) 될 때, 노드는 로컬 네트워크 도메인 공간상에 단순 참여자 검색 프로토콜(Simple Participant Discovery Protocol, SPDP) 메시지를 멀티캐스트(Multicast) 방식으로 정기 송출한다. 이 SPDP 브로드캐스팅 프레임에는 각 노드의 고유 식별자(GUID), 통신 엔드포인트 주소, 지원 수준이 포함된다. 동일한 도메인 ID(Domain ID) 논리 격벽 내에 존재하는 타 노드는 이 SPDP 패킷을 수신하고 분석하여 각자의 로컬 라우팅 캐시(Routing Cache)를 갱신하며 인접 참여자의 위치를 파악한다.
노드 참여자 간의 기초 수준의 위치 공유가 성립된 직후, 엔드포인트 발견 프로토콜(Endpoint Discovery Protocol, EDP) 단계가 트리거(Trigger)되며 심화된 토픽 이름, 메시지 타입 정의(IDL), 서비스 품질(Quality of Service, QoS) 프로파일 요구 사항에 대한 양방향 검증이 이루어진다. 이 협상 과정이 통과되면, 데이터 읽기(DataReader) 및 데이터 쓰기(DataWriter) 객체 간의 P2P 유니캐스트 버퍼 파이프라인이 자동 생성되어 로봇 어플리케이션 계층에서의 안정적인 비동기 메시지 교환이 시작된다.

  • 참조 표준: OMG Data Distribution Service (DDS) v1.4, Real-Time Publish-Subscribe (RTPS) v2.5