-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathcyclonedds.xml
More file actions
32 lines (28 loc) · 1.39 KB
/
Copy pathcyclonedds.xml
File metadata and controls
32 lines (28 loc) · 1.39 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?xml version="1.0"?>
<!--
CycloneDDS 런타임 설정 파일.
docker/entrypoint.sh에서 CYCLONEDDS_URI로 지정되어 모든 ROS2 노드에 적용됨.
목적: RealSense / Orbbec 등 대형 센서 메시지 전송 시
Fast DDS에서 발생하던 "Sequence Size Exceeds remaining buffer"
오류를 피하기 위해 CycloneDDS를 기본 RMW로 사용.
주의: 아래 SocketReceiveBufferSize는 호스트 커널의 net.core.rmem_max
값이 충분히 커야 실제로 적용됨 (docker/run.sh의 sysctl 튜닝 참고).
-->
<CycloneDDS xmlns="https://cdds.io/config">
<Domain Id="any">
<General>
<!-- 멀티캐스트 디스커버리: 기본값 사용 (host 네트워크 환경에서 정상 동작) -->
<AllowMulticast>default</AllowMulticast>
<!-- RTPS 메시지 최대 크기를 UDP payload 한계 근처로 제한.
IP 레벨 fragmentation 대신 Cyclone이 직접 분할하도록 유도
→ 패킷 유실 시 복원력이 더 좋음 -->
<MaxMessageSize>65500B</MaxMessageSize>
</General>
<Internal>
<!-- 소켓 수신 버퍼 최소 요청값. HD 프레임 몇 장은 버퍼링되어야
순간 burst에서 드롭이 발생하지 않음.
호스트의 net.core.rmem_max가 이 값 이상이어야 실제 적용됨 -->
<SocketReceiveBufferSize min="10MB"/>
</Internal>
</Domain>
</CycloneDDS>