OpenDDS vs RTI Connext DDS: 적합한 데이터 배포 서비스 솔루션 선택
OMG 데이터 배포 서비스(DDS) 표준은 공개 표준으로, 누구나 이용 가능하며 구현 간 일관성, 이식성, 상호운용성을 보장하는 규범적 참조를 제공합니다. 소스 코드가 배포되는 오픈소스 소프트웨어와 달리, 공개 표준은 OCI(Object Computing Inc.)가 관리하는 OpenDDS 같은 오픈소스 구현을 포함해 다양한 방식으로 구현될 수 있습니다. 가장 대표적인 RTI의 Connext® DDS 같은 상용 배포판도 동일한 표준을 준수하지만 추가 기능, 지원, 검증된 신뢰성을 제공합니다.
오픈소스 DDS 솔루션과 상용 솔루션 중 선택할 때는 필요한 특정 기능, 필요한 지원 수준, 애플리케이션의 중요도를 고려해야 합니다.
오픈소스 DDS 핵심 기능
오픈소스 DDS는 주로 DDS API의 완전한 구현을 제공하여 대부분의 프로젝트에 견고한 기반이 됩니다. 그러나 RTI Connext 같은 상용 DDS는 임무 중요하거나 고도로 특수한 애플리케이션에서 결정적인 역할을 할 수 있는 더 광범위한 기능 세트를 제공합니다.
RTI Connext가 제공하는 표준 OMG DDS 역량(오픈소스에 흔치 않은 것)
- 다국어 지원 – C++, C++03, C++11, Java, Ada, C#, .NET (OpenDDS는 전통적 C++만 제공)
- 프레젠테이션 QoS – 구독자 측 샘플 도착 순서 제어
- 라이터 측 콘텐츠 필터링 – 수신측 대역폭과 CPU 사용량 감소
- 확장 가능한 타입 정의 – 이식성이나 표현력 희생 없이 유연한 데이터 타입 진화
- 요청/응답 패러다임 – OMG 표준으로 정의된 메시징 패턴
- XML QoS 구성 – XML 파일을 통한 QoS 설정 지정
- 토픽 간 일관된 데이터 – 일관된 세트와 프레젠테이션 범위로 달성
RTI Connext의 향상된(비표준) 기능
- 전달 보장 – 애플리케이션 레벨 승인, 중복 라우팅용 가상 GUID, 지속성 구독 및 라이터, 협업 데이터라이터
- 패킷 배치 – 작은 패킷 결합으로 처리량 향상
- 히스토리컬 데이터 쿼리 – 토픽에서 과거 데이터 검색
- IP 모빌리티 – IP 연결의 동적 추가, 제거, 수정
코어 DDS를 넘어선 애플리케이션 컴포넌트 및 서비스
상용 DDS는 외부 시스템과의 통합을 단순화하고 개발을 가속화하는 서비스를 번들로 제공하는 경우가 많습니다:
- 라우팅 서비스 – 네트워크 간 데이터 전달 및 변환
- 레코드 & 리플레이 서비스 – 고속 데이터 캡처로 라이브 또는 시뮬레이션 시스템에 재생
- 데이터베이스 통합 서비스 – DDS 데이터를 관계형 데이터베이스에 지속, DDS로 변경 모니터링
- 웹 통합 서비스 – HTTP로 DDS 데이터 노출, 브라우저 기반 애플리케이션 지원
- 지속성 서비스 – 늦게 참여하는 애플리케이션을 위한 데이터 가용성 유지
- DDS 커넥터 – Python, JavaScript, Lua용 스크립팅 인터페이스
- 시스템 디자이너 – DDS 시스템 그래픽 구성
- 프로토타이퍼 – DDS 배포의 신속한 프로토타이핑, 테스트, 실행
- 클라우드 디스커버리 서비스 – 클라우드 환경에서 DDS 배포
DDS 구현을 위한 도구
복잡한 분산 시스템 디버깅에는 강력한 툴링이 필수입니다. RTI Connext는 포괄적인 제품군을 제공합니다:
- 어드민 콘솔 – 참여자, 토픽, 라이터, 리더, QoS 설정, 데이터 타입 시각화, 연결 문제 자동 감지
- 모니터 – DDS 엔티티, 트래픽, 내부 상태에 대한 상세 인사이트
- rtiddsspy – 게시/구독 데이터 검사용 명령줄 유틸리티
- Excel 애드인 – Microsoft Excel에서 DDS 데이터 직접 읽기/쓰기
- 힙 분석 도구 – DDS 힙 스냅샷 캡처, 메모리 누수 식별
DDS 보안
오픈소스 DDS는 일반적으로 DDS 보안 표준, TLS 또는 DTLS 전송에 대한 내장 지원이 부족합니다. RTI Connext DDS는 2015년 시큐어 베타부터 DDS 보안 표준을 구현했으며 TLS/DTLS를 포함한 시큐어 WAN 전송을 제공합니다. 자세한 내용은 RTI Connext DDS 시큐어 문서를 참조하세요.
인증
규제 산업에서는 인증이 중요할 수 있습니다. RTI Connext DDS Cert는 DDS API의 인증된 부분집합으로 DO178C 레벨 A 인증을 획득했습니다. 전체 사양은 Connext DDS Cert 개요를 참조하세요.
견고성
현장 성능이 궁극적 벤치마크입니다. Connext DDS는 1,000개 이상의 프로젝트에 배포되었으며 전 세계 100만 대 이상의 장치에서 실행됩니다. 주요 사용 사례:
- 그랜드 쿨리 댐 – 24/7 운영, 300,000 데이터 포인트
- NASA KSC 발사 통제 – 300,000 포인트, 초당 400,000 메시지
- 레이시온 줌왈트 구축함 – 1,500 DDS 애플리케이션, 1,000만 게시 가능 쌍
- 상하이 PVG 공항 지상 통제 – 2015년부터 동남아시아 지역 공항 전반에 표준화
RTI는 광범위한 자동화 테스트 제품군, 엄격한 교육, 업계 최대 IIoT 테스트 랩(240코어 스케일 테스트, 32 Xeon CPU, 128보드 마이크로 어레이, 거의 100가지 컴퓨터 타입)에 막대한 투자를 하고 있습니다.
플랫폼 지원
타겟 아키텍처, OS, 컴파일러 지원 여부 확인 필요. Connext DDS는 업계에서 가장 광범위한 플랫폼 범위를 지원합니다. 플랫폼이 미지원인 경우 오픈소스 DDS를 제공된 지침으로 소스에서 재빌드할 수 있습니다. 그러나 라이브러리 재빌드는 상용 릴리스의 엄격함과 일치하도록 신중한 검증이 필요합니다.
비용
오픈소스 DDS는 초기 비용이 저렴해 보일 수 있지만 숨은 비용이 발생합니다: 누락된 기능, 추가 개발 노력, 커뮤니티나 서드파티 지원 의존. 상용 DDS는 명확한 비용 구조와 전담 지원을 제공하여 시장 출시 시간과 장기 유지보수 비용을 줄일 수 있습니다.
시장 출시 시간
속도가 중요합니다. 상용 DDS는 더 완전한 기능 세트, 견고한 툴링, 검증된 신뢰성으로 개발 주기를 단축하는 경우가 많습니다. Connext DDS 개발에 전담하는 50명 이상의 엔지니어와 추가 지원팀으로 지연 위험을 최소화합니다.
DDS 지원
임무 중요 애플리케이션에는 지원 품질이 중요합니다. RTI는 미국과 유럽 센터를 통해 24/7 지원을 제공하며, 분산 실시간 임베디드 시스템 전문 엔지니어들이 에스컬레이션 정책, 개발 리소스 직접 접근, 풍부한 온라인 문서(사용자 그룹 기사, 교육 비디오, 예제 코드, 교육)로 신속한 문제 해결을 보장합니다.
RTI Connext DDS 시작하기
구현 선택 전 요구사항을 명확히 정의하세요. 다음 질문 고려:
- 선호하는 프로그래밍 언어가 지원되는가?
- 스크립팅 언어와의 통합이 필요한가?
- 클라우드나 관계형 데이터베이스 연결이 필요한가?
- 미래의 보안이나 인증이 우려되는가?
- 엄격한 테스트와 현장 배포를 거친 릴리스가 필요한가?
귀사 제품이 신속한 납품, 견고한 성능, 포괄적 지원, 미래 지향적 기능 세트를 요구한다면 RTI Connext DDS가 논리적 선택입니다.