]> The Tcpdump Group git mirrors - tcpdump/commitdiff
ptp: Add test for management packets
authorCasper Andersson <[email protected]>
Mon, 11 Mar 2024 17:49:47 +0000 (18:49 +0100)
committerFrancois-Xavier Le Bail <[email protected]>
Mon, 4 Nov 2024 14:04:29 +0000 (15:04 +0100)
Test setup:
ip link add link vethA type veth peer name vethB
ip link set dev vethA up
ip link set dev vethB up
ptp4l -2 -P -S -i vethA &
tcpdump -i vethA 'ether[14] = 0xD' -w ptp_management.pcap &

Tcpdump filtering on only management packets (0xD) to skip capturing
other traffic that is already covered by other tests.

Sending management requests (which ptp4l responds to):
pmc -b 3 -2 -i vethB 'get current_data_set'
pmc -b 3 -2 -i vethB 'get port_data_set'
pmc -b 3 -2 -i vethB 'get default_data_set'
pmc -b 3 -2 -i vethB 'get parent_data_set'
pmc -b 3 -2 -i vethB 'get clock_description'

Sidenote: the management packets contains a TLV at the end and I
included 5 of them (out of the total ~50 listed in the
standard). Tcpdump currently does not print the TLV.

Signed-off-by: Casper Andersson <[email protected]>
(cherry picked from commit c98b4d0b3aa0a66f413ef3d86d726421a46fac5a)

tests/TESTLIST
tests/ptp_management.out [new file with mode: 0644]
tests/ptp_management.pcap [new file with mode: 0644]

index a42f5d32c91eaf5a622d1ac4f425b89c22f90620..cd0e6518eec1991f1bd6d5ee7925ebba635522a9 100644 (file)
@@ -850,6 +850,7 @@ ptp         ptp.pcap    ptp.out
 ptp_ethernet   ptp_ethernet.pcap       ptp_ethernet.out        -e
 ptp_corrections        ptp_corrections.pcap    ptp_corrections.out
 ptp_v2_1       ptp_v2_1.pcap           ptp_v2_1.out
+ptp_management ptp_management.pcap     ptp_management.out
 
 # bad packets from Jason Xiaole
 ldp_tlv_print-oobr ldp_tlv_print-oobr.pcap ldp_tlv_print-oobr.out -v
diff --git a/tests/ptp_management.out b/tests/ptp_management.out
new file mode 100644 (file)
index 0000000..72b7f5b
--- /dev/null
@@ -0,0 +1,10 @@
+    1  2024-03-11 17:43:32.511457 PTPv2, majorSdoId: 0x0, msg type: management msg, length: 72, domain: 0, reserved1: 0, Flags [none], NS correction: 0, sub NS correction: 0, reserved2: 0, clock identity: 0xfffe000011, port id: 1, seq id: 0, control: 4 (Management), log message interval: 127, port identity: 0xffffffffffffffff, port id: 65535, start boundary hops: 3, boundary hops: 3, flags: 0x0, reserved: 0x0
+    2  2024-03-11 17:43:32.511536 PTPv2, majorSdoId: 0x0, msg type: management msg, length: 72, domain: 0, reserved1: 0, Flags [none], NS correction: 0, sub NS correction: 0, reserved2: 0, clock identity: 0xfffe000012, port id: 1, seq id: 0, control: 4 (Management), log message interval: 127, port identity: 0xfffe000011, port id: 1, start boundary hops: 1, boundary hops: 1, flags: 0x2, reserved: 0x0
+    3  2024-03-11 17:43:37.163346 PTPv2, majorSdoId: 0x0, msg type: management msg, length: 80, domain: 0, reserved1: 0, Flags [none], NS correction: 0, sub NS correction: 0, reserved2: 0, clock identity: 0xfffe000011, port id: 1, seq id: 0, control: 4 (Management), log message interval: 127, port identity: 0xffffffffffffffff, port id: 65535, start boundary hops: 3, boundary hops: 3, flags: 0x0, reserved: 0x0
+    4  2024-03-11 17:43:37.163451 PTPv2, majorSdoId: 0x0, msg type: management msg, length: 80, domain: 0, reserved1: 0, Flags [none], NS correction: 0, sub NS correction: 0, reserved2: 0, clock identity: 0xfffe000012, port id: 1, seq id: 0, control: 4 (Management), log message interval: 127, port identity: 0xfffe000011, port id: 1, start boundary hops: 1, boundary hops: 1, flags: 0x2, reserved: 0x0
+    5  2024-03-11 17:43:43.851480 PTPv2, majorSdoId: 0x0, msg type: management msg, length: 74, domain: 0, reserved1: 0, Flags [none], NS correction: 0, sub NS correction: 0, reserved2: 0, clock identity: 0xfffe000011, port id: 1, seq id: 0, control: 4 (Management), log message interval: 127, port identity: 0xffffffffffffffff, port id: 65535, start boundary hops: 3, boundary hops: 3, flags: 0x0, reserved: 0x0
+    6  2024-03-11 17:43:43.851563 PTPv2, majorSdoId: 0x0, msg type: management msg, length: 74, domain: 0, reserved1: 0, Flags [none], NS correction: 0, sub NS correction: 0, reserved2: 0, clock identity: 0xfffe000012, port id: 1, seq id: 0, control: 4 (Management), log message interval: 127, port identity: 0xfffe000011, port id: 1, start boundary hops: 1, boundary hops: 1, flags: 0x2, reserved: 0x0
+    7  2024-03-11 17:43:56.383490 PTPv2, majorSdoId: 0x0, msg type: management msg, length: 86, domain: 0, reserved1: 0, Flags [none], NS correction: 0, sub NS correction: 0, reserved2: 0, clock identity: 0xfffe000011, port id: 1, seq id: 0, control: 4 (Management), log message interval: 127, port identity: 0xffffffffffffffff, port id: 65535, start boundary hops: 3, boundary hops: 3, flags: 0x0, reserved: 0x0
+    8  2024-03-11 17:43:56.383627 PTPv2, majorSdoId: 0x0, msg type: management msg, length: 86, domain: 0, reserved1: 0, Flags [none], NS correction: 0, sub NS correction: 0, reserved2: 0, clock identity: 0xfffe000012, port id: 1, seq id: 0, control: 4 (Management), log message interval: 127, port identity: 0xfffe000011, port id: 1, start boundary hops: 1, boundary hops: 1, flags: 0x2, reserved: 0x0
+    9  2024-03-11 17:44:09.031444 PTPv2, majorSdoId: 0x0, msg type: management msg, length: 76, domain: 0, reserved1: 0, Flags [none], NS correction: 0, sub NS correction: 0, reserved2: 0, clock identity: 0xfffe000011, port id: 1, seq id: 0, control: 4 (Management), log message interval: 127, port identity: 0xffffffffffffffff, port id: 65535, start boundary hops: 3, boundary hops: 3, flags: 0x0, reserved: 0x0
+   10  2024-03-11 17:44:09.031526 PTPv2, majorSdoId: 0x0, msg type: management msg, length: 102, domain: 0, reserved1: 0, Flags [none], NS correction: 0, sub NS correction: 0, reserved2: 0, clock identity: 0xfffe000012, port id: 1, seq id: 0, control: 4 (Management), log message interval: 127, port identity: 0xfffe000011, port id: 1, start boundary hops: 1, boundary hops: 1, flags: 0x2, reserved: 0x0
diff --git a/tests/ptp_management.pcap b/tests/ptp_management.pcap
new file mode 100644 (file)
index 0000000..95da27a
Binary files /dev/null and b/tests/ptp_management.pcap differ