zerodds-pcap
Offline pcap parser — extracts and decodes RTPS submessages from
existing pcap captures (e.g. captured with tcpdump, dumpcap, or
Wireshark). No DDS runtime, no live capture.
The tool finds the RTPS magic word inside each packet's payload (so
it works for any L2/L3/L4 combination — Ethernet, Linux SLL, NULL —
without explicit parsing) and then runs the full ZeroDDS RTPS decoder.
Usage
# Capture some DDS traffic with tcpdump
# Print every RTPS frame
# Aggregate counts per submessage kind
Sub-Commands
| Sub-Command | Action |
|---|---|
parse <FILE> |
Print every RTPS frame with submessage list |
stats <FILE> |
Print aggregate counts per submessage kind |
Output Example
pcap: linktype=1 snaplen=65535 version=2.4
[ 1] ts=1715000000.123456 guid_prefix=01020304... submessages=2
· INFO_TIMESTAMP
· DATA
[ 2] ts=1715000000.234567 guid_prefix=05060708... submessages=1
· HEARTBEAT
done · frames=42 rtps=12
Exit Codes
| Code | Meaning |
|---|---|
| 0 | Success |
| 2 | CLI parse error |
| 3 | File / pcap / RTPS decode error |
Limits
- Only
libpcapformat is supported (PCAPNG is a future extension). - VLAN-tagged frames work as long as
RTPSmagic is in the captured payload; jumbo frames work up to the configured snaplen.