Part 5. ROS2 미들웨어 핵심 통신 구조 기초
1. 개요 및 학제적 의의
자율 드론과 같은 고도화된 로보틱스 시스템의 소프트웨어 아키텍처는 필연적으로 센서 데이터의 취득, 공간 추정, 경로 최적화, 역학 제어 등 여러 독립된 모듈화된 프로세스 계층으로 구성된다. 이러한 다양한 서브시스템 모듈들이 단일 프로세스 혹은 단일 메모리 공간 내에 강하게 결합(Tightly Coupled)되어 운용될 경우, 전체 아키텍처의 확장 및 유연성이 저하되고 특정 서브 시스템의 붕괴가 전체 시스템 보드의 패닉으로 직결되는 치명적인 한계가 발생한다. ROS2(Robot Operating System 2) 시스템 디자인의 핵심 뼈대는 이러한 약점을 원천적으로 극복하기 위해 설계된 분산형 미들웨어(Middleware) 통신망 위에 성립된다.
본 Part 5에서는 이러한 분산 무인 컴포넌트 간 상호작용의 물리적, 소프트웨어적 척추 역할을 하는 ROS2 전용 통신 구조의 학술적 토대와 프로그래밍 입론을 서술한다. ROS2는 기본적으로 DDS(Data Distribution Service)라는 산업 통신 표준 프로토콜을 백엔드 통신 미들웨어로 채택하고 있다. 이에 따라 응용 프로그래머는 낮은 수준의 TCP/UDP 소켓(Socket) 통신 계층을 직접 제어하는 부담에서 벗어나, 미들웨어가 제공하는 추상화된 논리적 글로벌 데이터 버스(Global Data Bus) 위에서 시스템 객체 형태로 데이터 타입을 정의하고 교환하게 된다. 본 파트는 이러한 미들웨어 통신의 세 가지 핵심 축인 토픽(Topic), 서비스(Service), 액션(Action)의 통신 토폴로지(Topology)를 명확하게 정립하는 것을 학술적 목표로 삼는다.
2. 미들웨어 통신 토폴로지 모델 철학
2.1 Publish-Subscribe 비동기 데이터 스트림 아키텍처 (Topic)
다이내믹한 환경에서 다수의 센서와 단일 제어기가 융합된 무인 항공 시스템 내부에서 배출되는 방대한 데이터는, 데이터의 발생원이 소비자의 현재 수신 상태를 점검할 필요가 없는 익명적이고 지속적인 단방향 비동기 스트림 형태를 띤다. ROS2 통신 구조에서 **토픽(Topic)**은 DDS의 Publish-Subscribe 패턴을 직접 구현하며 데이터 중심(Data-centric) 아키텍처의 근간을 형성한다. 이를 통해 N:N(다대다) 통신 메시지 교환 네트워크를 구성함으로써 고주파수(High-frequency)의 실시간 비행 제어 역학 지표 및 고해상도 센서 스캐닝 데이터를 블로킹(Blocking) 오버헤드 없이 전파하는 메커니즘을 상세히 학습한다.
2.2 Client-Server 원격 프로시저 호출 아키텍처 (Service)
정속의 연속적 데이터 릴레이 흐름과 대조적으로, 시스템의 캘리브레이션 세팅, 파라미터 재설정, 또는 드론의 강제 착륙(Land) 명령과 같이 수신측의 강제적 상태 동기화(Synchronization)와 즉각적인 임무 성공 여부 반환이 요구되는 단속적 제어 트랜잭션이 다수 존재한다. 서비스(Service) 구조는 전통적인 네트워크 공학의 Client-Server 기반 동기식 Request-Reply(요청-응답) 원격 프로시저 호출 토폴로지를 ROS2 환경에 맞게 이식한 모델이다. 본 파트에서는 서비스 노드의 트랜잭션 생명주기와 리소스 대기 매커니즘을 수학적으로 규명하고, 통신 지연(Latency Delay)이 액추에이터 메인 루프에 미치는 시스템적 부작용을 통제하는 기법을 고찰한다.
2.3 비동기 상태 피드백 제어 아키텍처 (Action)
글로벌 경로 추종 탐색이나 다단계 복합 임무 수행과 같이 장시간의 런타임 자원이 배정된 선점형(Preemptible) 원격 목표 수행의 경우, 단순한 서비스 모델의 동기적 대기를 반복하면 에이전트 내부에 제어 스레드 교착 상태(Deadlock)를 유발한다. 따라서 장기 목표(Goal)의 지시 이후 실시간으로 해당 임무의 상태 피드백(Feedback) 스트림을 즉각 반환하고 언제든 수행을 취소 연산할 수 있는 복합 제어 상태 머신 모델인 액션(Action) 통신 구조가 고안되었다. 액션은 내부 아키텍처 면에서 다수의 토픽과 서비스를 결합한 고차원 비동기 유한 상태 기계(FSM, Finite State Machine) 구조로서 에이전트 통제의 최상위 행동 제어 매커니즘으로 작용한다.
3. RMW 기반 통신 계층 추상화와 QoS (Quality of Service) 통제 체계
DDS 미들웨어 아키텍처가 1세대 통신과 대비되어 갖는 최대 소프트웨어적 공학적 강점은 무선 통신 물리망의 혼잡도나 하위 디바이스 랜(LAN)의 대역폭 제약 상황을 프로그래머가 직접 통제할 수 있는 서비스 품질(Quality of Service, QoS) 메커니즘을 노출한다는 점에 있다. 멀티 노드 간 네트워크 파이프라인 형성 시 통신의 신뢰성(Reliability 프로파일), 저장 내구성(Durability 프로파일), 그리고 큐 메모리의 데이터 최신성(History/Depth 프로파일) 등을 미세 조정함으로써, 간헐적인 메시지 유실이 수학적으로 허용되는 고속 센서 필터(Filter) 데이터와, 단일 패킷의 유실조차 치명적인 모터 제어 명령 데이터를 미들웨어 프로토콜 계층에서 물리적으로 분할 통제한다.
이러한 복합 QoS 통제 사양은 ROS2 시스템의 하위 계층 인터페이스인 RMW(ROS Middleware) 레이어에 의해 완벽히 추상화된다. 이 덕분에 응용 개발자는 특정 내부 벤더의 통신 장비나 DDS 상용 구현체(FastDDS, CycloneDDS, Connext 등) 하드웨어의 변경에 상관없이 동일한 문법과 이식성 높은 상위 수준의 제어 통신 코드를 지속 가능하다. 분산 실시간 컴퓨팅 시스템의 매시지 투명성(Transparency)을 보장하는 이러한 통신 매핑 구조를 학제적으로 선행 수립함으로써, 고정밀 사이버 물리 시스템(Cyber-Physical System, CPS)인 고성능 에이전트 드론을 위한 안정적인 런타임 데이터의 근간을 구축하는 철학과 설계 방법론을 순차적으로 전파해 나간다.