To help analyze taprio scheduling characteristics, we've developed a custom tool called 'dump-classifier'. dump-classifier =============== dump-classifier aims to ease the test/verification of how well an implementation runs 802.1Qbv-like schedules. How to compile -------------- * Dependencies: - libpcap-dev Just running 'make' should work, if all the dependencies are met: $ make How to run ---------- $ ./dump-classifier -s <SCHED FILE> -f <FILTER FILE> -b <BASE TIME> -d <DUMP FILE> <SCHED FILE> is a text file containg the traffic schedule, the format is exactly the same as taprio (the qdisc) accepts. Example: -----<cut S 01 500000 S 02 500000 ----->end <FILTER FILE> allows different traffic classes to be indentified in a pcap dump file, it has the following format is contains a traffic class name and a pcap expression on each line, any traffic class that doesn't have a filter associated will be classified as "BE" (best effort). The order is important, as the first line will match the first traffic class (bit 0) in the gatemask parameter (the second field of each line of the schedule file), the second line will match the second traffic class (bit 1), and so on. Example: -----<cut talker :: ether dst aa:aa:aa:aa:aa:aa ----->end <BASE TIME> an absolute time in nanoseconds where the schedule started, if that time is before the timestamp of the first packet in the <DUMP FILE>, the schedule will run until it reaches that timestamp, packets that have a timestamp before basetime will be ignored. <DUMP FILE> is a dump file captured via tcpdump, with timestamp precision in nanoseconds, so captured using something like this: $ tcpdump -j adapter_unsynced --time-stamp-precision=nanos -i enp2s0 -w dump.pcap