본문 바로가기
Language & Framework & GIT/ROS2

[ROS2] DDS란? - 2

by veganwithbacon 2023. 12. 26.
반응형

내용이 아직 미흡한데, 친구가 안나눠줘도 되는 독감을 나눠줘서 죽겄다.. 

ros security관련해서 푸시해야하는데 할게 너무많ㄷ


DDS - 1 에서는 간단하게 DDS가 무엇인지 정리했다. https://veganwithbacon.tistory.com/546

 

[ROS2] DDS란? - 1

요즘에 제일 많이 사용하고 있는 것이 ROS이다. DDS? : Data Distribution Service, 실시간 분산 시스템에서 데이터를 효과적으로 교환하는데 사용되는 표준 통신 프로토콜 대규모 분산 시스템에서 실시간

veganwithbacon.tistory.com

 

 

  DDS

: OMG(Object Management Group)에서 표준화 한 실시간 발간자-구독자 방식 통신 미들웨어 분산 서비스다.

 

dds의 배경 :

ROS의 새로운 통신 시스템을 알아보던중, 처음 옵션은 ROS1 통신을 개선하거나 ZeroMO 라이브러리 같은 새로운 미들웨어를 만드는 것 이었다. 하지만 프로토콜 버퍼와 Zeroconf는 모두 다른 파트에서 만들어져야 했고 다른 end-to-end 미들웨어를 고려해야 했다. 이 과정에서 제기된 미들웨어가 DDS였다.

 

  End-to-End MiddleWare

 
장점: 유지하고 작동하기 훨씬 적은 코드 필요 + 정확한 세부사항이 공개되어 있다.
단점 : ROS가 기존 설계 내에서 작동해야한다는 것이다. 설계가 관련 사용 사례를 대상으로 하지 않거나 융통성이 없는 경우 설계를 해결해야 할 수도 있다.

 

<통신 프로토콜>

실시간 : RTPS(Real Time Publish Subscribe)
UDP 기반이지만, QoS 설정을 통해 UDP/TCP의 기능을 선택적으로 사용 가능함.
• TCP: 신뢰성 기반
접속 후 데이터 전송, 확인 후 재전송 후 클로즈. 특정 시간에 테스크 하지 않을 수 있음. 지연 가능성.
• UDP: 신뢰성 부족.
커넥션과 클로즈 없음. 확인하지 않음. 가장 효율적인 상태.
• Qos best effort기반이지만 중간에 확인할수 있도록 옵션 추가. 모든 특성을 선택적으로 가짐.→ ROS2 기본 통신
 
 
 

  DDS 특징

👉Data Centricity 

• 단순한 데이터 타입 정의. IDL이 많이 사용. XML도 사용 가능.
• Topic은 문자열 형식으로 정의. 토픽을 통하여 통신
• DDS 도메인에서 토픽 조합. 각자 독립적으로 활동.
• QoS를 붙여서 쉽게 토픽의 생존성에 대한 설정. 성능이 뛰어나짐.
 
 

👉 Dynamic Discovery

• 자동으로 퍼블리셔/서브스크라이버 어디 있는지 확인.
• 노드를 켰다 끄며 플러그 엔 플레이.
 
 
 

👉Scalable Architecture

• 빠른 속도로 정보 전달.
• 많은 데이터 관리
• 보안 제공
• Edge to Fog to Cloud- 가까이에서 멀리 보냄.

 

 

👉Interperability

상호 운용성. 표준화 된 규격. 다른 회사 로봇들도 서로 동작 가능.
반응형

댓글