한 줄 요약
Adaptive Bridge는 ROS 2의 DDS 백프레셔 문제를 해결하기 위해 주요 구독자를 분리하는 프록시 기반 레이어를 제안한다.
핵심 기여도
- ROS 2의 DDS에서 단일 손상된 구독자가 전체 성능을 저하시키는 문제를 해결.
- Adaptive Bridge를 통해 주요 구독자를 분리하고, BEST EFFORT와 RELIABLE 라우터를 별도로 관리.
- Gilbert-Elliott 모델 기반 실험에서 p95 지연을 15초에서 1.55ms로 감소.
- Docker 기반 허네스를 사용한 재현 가능한 평가 환경 제공.
핵심 아이디어
ROS 2의 DDS는 RELIABLE 토픽에서 단일 구독자의 네트워크 손상이 발행자(writer)의 샘플 수용을 차단해 전체 구독자에 영향을 미친다. Adaptive Bridge는 이 문제를 해결하기 위해 **프록시 기반 레이어**를 도입하여 주요 구독자와 비주요 구독자를 분리한다. 프록시는 원본 토픽을 구독하고, 두 개의 독립된 DDS 라이터로 재발행한다: 하나는 **RELIABLE writer**로 주요 노드에 전달하고, 다른 하나는 **BEST EFFORT writer**로 비주요 노드에 전달한다. 이는 손상된 노드와 주요 노드를 격리하여 발행자와 주요 노드를 백프레셔로부터 보호한다. 또한, **probe-based classifier**가 구독자의 상태를 샘플링하며 히스테리시스를 적용해 실시간으로 속도 제한을 조정한다.
기술적 접근법
- **Adaptive Bridge**: 프록시 기반 레이어로, 두 개의 독립된 DDS writer(Reliable, Best Effort)를 사용.
- **Probe-based classifier**: 구독자 상태를 모니터링하며, 히스테리시스 기반 샘플링으로 실시간 속도 제한 조정.
- **Gilbert-Elliott 모델**: 평가 시 사용된 무선 손실 모델로, 갑작스러운 손실을 시뮬레이션.
- **Docker 기반 허네스**: 재현 가능한 실험 환경 제공.
주요 결과
- **Gilbert-Elliott 모델** 기반 실험에서 Adaptive Bridge를 사용했을 때, 주요 구독자의 **p95 지연**이 최대 15초에서 **1.55ms**로 감소.
- 발행자의 설정된 처리량(**configured throughput**)은 유지됨.
- 모든 손상 수준에서 주요 노드의 지연 감소 효과가 확인됨.
의의 및 한계
Adaptive Bridge는 ROS 2의 DDS에서 발생하는 백프레셔 문제를 해결하며, 안전-critical 시스템의 지연을 극적으로 줄이는 데 기여한다. 특히, **topic splitting**과 **dynamic rate control**을 통해 주요 노드와 비주요 노드를 분리함으로써 시스템의 안정성과 신뢰성을 향상시킨다. 그러나, 이 접근법은 프록시를 통한 추가 네트워크 오버헤드를 유발할 수 있으며, 모든 토픽에 대해 적용하는 데에는 제한이 있을 수 있다. 또한, **probe-based classifier**의 정확도는 샘플링 주기와 히스테리시스 설정에 따라 달라질 수 있다.
실용적 활용
Adaptive Bridge는 ROS 2 기반의 자율 주행, 드론, 산업 로봇 등에서 네트워크 불안정성으로 인한 지연 문제를 해결하는 데 유용하다. 특히, 안전-critical 시스템에서 주요 노드의 지연을 보호하면서 비주요 노드는 BEST EFFORT로 처리할 수 있어 실시간 제어 및 감시 시스템에 적합하다.