ROS 2의 미들웨어 계층에 의해 추상화DDS(Domain Discovery Service)를 기반으로 하는 RMW(ROS Middleware) 계층을 사용하여 노드 간의 통신을 처리DDS(Domain Distribution Service)네트워크 대역폭 사용, 메시지의 압축 및 분할 전송 등 다양한 기법을 사용하나의 소스에서 여러 목적지로 데이터 패킷을 동시에 전송하는 통신 방법한 소스에서 단일 목적지로 데이터 패킷을 전송하는 가장 일반적인 통신 방식ROS 2 설치 시 DDS 구현체를 선택한다고 함!특정 리눅스 배포판이나 다른 운영 체제에서 ROS 2를 패키지 관리자를 통해 설치하는 경우, 일반적으로 기본 DDS 구현체가 함께 설치Fast RTPS(eProsima)가 기본 DDS 구현체로 설정되어 있습니다.실시간으로 데이터를 주고받기 위한 규칙의 집합매우 빠르게 서로 정보를 교환할 수 있게 해줌분산 시스템과 로봇 애플리케이션에서의 데이터 통신, 특히 다양한 네트워크 환경과 플랫폼 간 호환성이 중요한 경우. (Python multiprocessing.shared_memory 등과 비교했을 때)Fast RTPS와 비슷한 목적을 가지고 있지만, 특히 더 넓은 범위의 기기들과 더 안정적으로 통신할 수 있게 설계된 기술특히 매우 복잡하고 큰 시스템에서의 통신을 위해 설계 공유 메모리를 사용같은 도메인 내에 있는 참여자들이 서로를 자동으로 발견할 수 있도록 함ROS 2 애플리케이션과 하부 통신 미들웨어(주로 DDS, Data Distribution Service) 간의 인터페이스 역할ROS 2 애플리케이션이 다양한 DDS 구현과 호환될 수 있도록 해줌Fast RTPS, Cyclone DDS, Connext DDS 등 다양한 DDS 구현체를 지원할 수 있음