Max level shown:
1 Parser Characterization Report:
2 Number of states on ingress: 44
3 
4 Number of matches on ingress: 106
5 
6 Longest path (21 states) on ingress:
7 $entry_point.start
8 $entry_point.start.$oob_stall_0
9 $entry_point.start.$split_0
10 parse_sidecar
11 parse_vlan
12 parse_ipv4
13 validate_ipv4_mcast1_2
14 validate_ipv4_mcast_3
15 set_mcast_ipv4
16 goto_proto_ipv4
17 parse_udp
18 parse_geneve
19 parse_geneve_opt
20 parse_geneve_ox_opt
21 parse_geneve_ext_tag
22 geneve_opt_parsed
23 geneve_parsed
24 parse_inner_eth
25 parse_inner_ipv6
26 parse_inner_ipv6.$split_0
27 parse_inner_tcp
28 
29 Shortest path (3 states) on ingress:
30 $entry_point.start
31 $entry_point.start.$oob_stall_0
32 $entry_point.start.$split_0
33 
34 Average rate: 3.47619 Bps
35 Min packet size at 100 Gbps: 216 B (143 B payload)
36 Max data rate for min-sized packets: 32.94 Gbps / 56.4041 MPps
37 
38 Extractor usage:
39 +------------------------------------------+------------+-------+--------+--------+---------------------------+-----------+
40 |State |Match |8-bit |16-bit |32-bit |Total Extractors (16-bit) |Other |
41 +------------------------------------------+------------+-------+--------+--------+---------------------------+-----------+
42 |$entry_point.start |* |0 |2 |2 |6 | |
43 |$entry_point.start.$oob_stall_0 |* |0 |0 |0 |0 | |
44 |$entry_point.start.$split_0 |0x0901 |0 |4 |3 |10 | |
45 |- |0x8100 |0 |4 |3 |10 | |
46 |- |0x0800 |0 |4 |3 |10 | |
47 |- |0x86dd |0 |4 |3 |10 | |
48 |- |0x0806 |0 |4 |3 |10 | |
49 |- |0x88cc |0 |4 |4 |12 | |
50 |- |0x**** |0 |4 |3 |10 | |
51 |$entry_point.start.$split_0.$oob_stall_0 |* |0 |0 |0 |0 | |
52 |parse_sidecar |0x8100 |2 |7 |4 |17 | |
53 |- |0x0800 |2 |7 |4 |17 | |
54 |- |0x86dd |2 |7 |4 |17 | |
55 |- |0x0806 |2 |7 |4 |17 | |
56 |- |0x**** |2 |7 |4 |17 | |
57 |parse_sidecar.$oob_stall_1 |* |0 |0 |0 |0 | |
58 |parse_sidecar.$oob_stall_0 |* |0 |0 |0 |0 | |
59 |parse_vlan |0x0800 |1 |2 |1 |5 | |
60 |- |0x86dd |1 |2 |1 |5 | |
61 |- |0x0806 |1 |2 |1 |5 | |
62 |- |0x**** |1 |2 |1 |5 | |
63 |parse_arp |* |0 |0 |3 |6 |clot 0 |
64 |parse_ipv6 |* |2 |1 |9 |21 |csum 0 |
65 |parse_ipv6.$split_0 |0xff01 |1 |0 |3 |7 |csum 0 |
66 |- |0xff02 |0 |0 |4 |8 |csum 0 |
67 |- |0x**** |0 |0 |2 |4 |csum 0 |
68 |check_ipv6_mcast |0xff |0 |0 |1 |2 | |
69 |- |0x** |0 |0 |0 |0 | |
70 |validate_hop_limit |0x00 |2 |0 |0 |2 | |
71 |- |0x** |0 |0 |0 |0 | |
72 |set_mcast_ipv6 |0x00 |2 |0 |0 |2 | |
73 |- |0x01 |2 |0 |0 |2 | |
74 |- |0x** |0 |0 |0 |0 | |
75 |set_link_local_mcast |0x00 |2 |0 |0 |2 | |
76 |- |0x01 |0 |0 |0 |0 | |
77 |- |0x** |0 |0 |0 |0 | |
78 |goto_proto_ipv6 |0x3a |0 |5 |2 |9 |csum 0 1 |
79 |- |0x06 |0 |6 |5 |16 |csum 0 |
80 |- |0x11 |0 |0 |0 |0 | |
81 |- |0x84 |2 |0 |0 |2 | |
82 |- |0x** |0 |0 |0 |0 | |
83 |parse_icmp6 |0x80 |0 |0 |0 |0 | |
84 |- |0x81 |0 |0 |0 |0 | |
85 |- |0x** |0 |1 |0 |1 | |
86 |drop_interface_local_mcast.$split_0 |* |1 |0 |0 |1 | |
87 |parse_ipv4 |0xe* |2 |3 |7 |19 |csum 0 1 |
88 |- |0x** |2 |3 |7 |19 |csum 0 1 |
89 |validate_ttl |0x00 |2 |0 |0 |2 | |
90 |- |0x** |0 |0 |0 |0 | |
91 |validate_ipv4_mcast1_2 |0x0100 |0 |0 |0 |0 | |
92 |- |0x**** |1 |0 |1 |3 | |
93 |validate_ipv4_mcast_3 |0x5e |0 |0 |0 |0 | |
94 |- |0x** |1 |0 |1 |3 | |
95 |invalidate_ipv4_mcast.$split_0 |* |1 |0 |0 |1 | |
96 |set_mcast_ipv4 |0x00 |0 |0 |1 |2 | |
97 |- |0x01 |0 |0 |1 |2 | |
98 |- |0x** |0 |0 |1 |2 | |
99 |goto_proto_ipv4 |0x01 |0 |5 |2 |9 |csum 0 1 |
100 |- |0x06 |0 |6 |5 |16 |csum 0 |
101 |- |0x11 |0 |0 |0 |0 | |
102 |- |0x84 |2 |0 |0 |2 | |
103 |- |0x** |0 |0 |0 |0 | |
104 |parse_udp |0x17c1 |0 |6 |2 |10 |csum 0 |
105 |- |0x**** |0 |6 |2 |10 |csum 0 |
106 |parse_geneve |0b**000000 |2 |1 |2 |7 | |
107 |- |0x** |2 |1 |2 |7 | |
108 |parse_geneve_opt |0x0129 |0 |0 |0 |0 | |
109 |- |0x**** |2 |0 |0 |2 | |
110 |parse_geneve_ox_opt |0b*0000000 |0 |0 |2 |4 | |
111 |- |0b*0000001 |0 |0 |0 |0 | |
112 |- |0b*0000010 |0 |0 |0 |0 | |
113 |- |0x** |2 |0 |0 |2 | |
114 |parse_geneve_mss_tag |0b***00001 |0 |0 |1 |2 |clot 1 |
115 |- |0x** |0 |0 |1 |2 |clot 1 |
116 |parse_geneve_mcast_tag |0b***00001 |0 |0 |1 |2 |clot 2 |
117 |- |0x** |0 |0 |1 |2 |clot 2 |
118 |geneve_malformed |* |2 |0 |0 |2 | |
119 |parse_geneve_ext_tag |0b***00000 |0 |0 |0 |0 | |
120 |- |0x** |2 |0 |0 |2 | |
121 |geneve_opt_parsed |0x0 |0 |0 |0 |0 | |
122 |- |0x2 |0 |0 |0 |0 | |
123 |- |0x1 |2 |0 |0 |2 | |
124 |- |0b** |0 |0 |0 |0 | |
125 |geneve_parsed |0x6558 |0 |0 |0 |0 | |
126 |- |0x0800 |0 |0 |0 |0 | |
127 |- |0x86dd |2 |1 |8 |19 | |
128 |- |0x**** |0 |0 |0 |0 | |
129 |parse_inner_eth |0x0800 |0 |7 |1 |9 | |
130 |- |0x86dd |0 |7 |1 |9 | |
131 |- |0x**** |0 |7 |1 |9 | |
132 |parse_inner_ipv6 |* |2 |1 |8 |19 | |
133 |parse_inner_ipv6.$split_0 |0x06 |0 |0 |2 |4 | |
134 |- |0x11 |0 |0 |2 |4 | |
135 |- |0x3a |0 |0 |2 |4 | |
136 |- |0x** |0 |0 |2 |4 | |
137 |parse_inner_ipv4 |0x06 |2 |3 |4 |13 | |
138 |- |0x11 |2 |3 |4 |13 | |
139 |- |0x01 |2 |3 |4 |13 | |
140 |- |0x** |2 |3 |4 |13 | |
141 |parse_inner_icmp |* |0 |4 |1 |6 | |
142 |parse_inner_udp |* |0 |4 |1 |6 | |
143 |parse_inner_tcp |* |0 |4 |4 |12 | |
144 |parse_icmp |0x08 |0 |0 |0 |0 | |
145 |- |0x00 |0 |0 |0 |0 | |
146 |- |0x** |0 |1 |0 |1 | |
147 |invalidate_ttl |* |2 |0 |0 |2 | |
148 +------------------------------------------+------------+-------+--------+--------+---------------------------+-----------+
149 Number of states on egress: 24
150 
151 Number of matches on egress: 55
152 
153 Longest path (17 states) on egress:
154 $entry_point.start
155 $entry_point.start.$oob_stall_1
156 $entry_point.start.$split_0
157 parse_vlan
158 parse_ipv6
159 parse_ipv6.$split_0
160 parse_udp
161 parse_geneve
162 parse_geneve_opt
163 parse_geneve_ox_opt
164 parse_geneve_ext_tag
165 geneve_opt_parsed
166 geneve_parsed
167 parse_inner_eth
168 parse_inner_ipv6
169 parse_inner_ipv6.$split_0
170 parse_inner_tcp
171 
172 Shortest path (3 states) on egress:
173 $entry_point.start
174 $entry_point.start.$oob_stall_1
175 $entry_point.start.$split_0
176 
177 Average rate: 4.29412 Bps
178 Min packet size at 100 Gbps: 175 B (102 B payload)
179 Max data rate for min-sized packets: 41.48 Gbps / 71.0274 MPps
180 
181 Extractor usage:
182 +---------------------------------+------------+-------+--------+--------+---------------------------+----------+
183 |State |Match |8-bit |16-bit |32-bit |Total Extractors (16-bit) |Other |
184 +---------------------------------+------------+-------+--------+--------+---------------------------+----------+
185 |$entry_point.start |* |1 |2 |0 |3 |clot 6 |
186 |$entry_point.start.$oob_stall_1 |* |0 |0 |0 |0 | |
187 |$entry_point.start.$split_0 |0x8100 |0 |0 |0 |0 |clot 6 |
188 |- |0x0800 |0 |0 |0 |0 |clot 6 |
189 |- |0x86dd |0 |0 |0 |0 |clot 6 |
190 |- |0x**** |0 |0 |0 |0 |clot 6 |
191 |parse_vlan |0x0800 |0 |1 |0 |1 |clot 14 |
192 |- |0x86dd |0 |1 |0 |1 |clot 14 |
193 |- |0x**** |0 |1 |0 |1 |clot 14 |
194 |parse_ipv6 |* |1 |0 |0 |1 |clot 1 |
195 |parse_ipv6.$split_0 |0x06 |0 |0 |0 |0 |clot 1 |
196 |- |0x11 |0 |0 |0 |0 |clot 1 |
197 |- |0x** |0 |0 |0 |0 |clot 1 |
198 |parse_ipv4 |0x01 |0 |1 |0 |1 |clot 4 |
199 |- |0x06 |0 |1 |0 |1 |clot 4 |
200 |- |0x11 |0 |1 |0 |1 |clot 4 |
201 |- |0x** |0 |1 |0 |1 |clot 4 |
202 |parse_udp |0x17c1 |0 |1 |0 |1 |clot 11 |
203 |- |0x**** |0 |1 |0 |1 |clot 11 |
204 |parse_geneve |0b**000000 |0 |1 |0 |1 |clot 10 |
205 |- |0x** |0 |1 |0 |1 |clot 10 |
206 |parse_geneve_opt |0x0129 |0 |0 |0 |0 | |
207 |- |0x**** |0 |0 |0 |0 | |
208 |parse_geneve_ox_opt |0b*0000000 |0 |1 |0 |1 |clot 13 |
209 |- |0b*0000001 |0 |0 |0 |0 | |
210 |- |0b*0000010 |0 |0 |0 |0 | |
211 |- |0x** |0 |0 |0 |0 | |
212 |parse_geneve_mss_tag |0b***00001 |1 |0 |0 |1 |clot 7 |
213 |- |0x** |1 |0 |0 |1 |clot 7 |
214 |parse_geneve_mcast_tag |0b***00001 |0 |1 |0 |1 |clot 8 |
215 |- |0x** |0 |1 |0 |1 |clot 8 |
216 |parse_geneve_ext_tag |0b***00000 |0 |0 |0 |0 | |
217 |- |0x** |0 |0 |0 |0 | |
218 |geneve_opt_parsed |0x0 |0 |0 |0 |0 | |
219 |- |0x2 |0 |0 |0 |0 | |
220 |- |0x1 |0 |0 |0 |0 | |
221 |- |0b** |0 |0 |0 |0 | |
222 |geneve_parsed |0x6558 |0 |0 |0 |0 | |
223 |- |0x0800 |0 |0 |0 |0 | |
224 |- |0x86dd |0 |1 |0 |1 |clot 0 |
225 |- |0x**** |0 |0 |0 |0 | |
226 |parse_inner_eth |0x0800 |0 |1 |0 |1 |clot 5 |
227 |- |0x86dd |0 |1 |0 |1 |clot 5 |
228 |- |0x**** |0 |1 |0 |1 |clot 5 |
229 |parse_inner_ipv6 |* |0 |1 |0 |1 |clot 0 |
230 |parse_inner_ipv6.$split_0 |0x06 |0 |0 |0 |0 |clot 0 |
231 |- |0x11 |0 |0 |0 |0 |clot 0 |
232 |- |0x** |0 |0 |0 |0 |clot 0 |
233 |parse_inner_ipv4 |0x06 |0 |1 |0 |1 |clot 3 |
234 |- |0x11 |0 |1 |0 |1 |clot 3 |
235 |- |0x** |0 |1 |0 |1 |clot 3 |
236 |parse_inner_udp |* |0 |1 |0 |1 |clot 9 |
237 |parse_inner_tcp |* |0 |1 |0 |1 |clot 2 |
238 |parse_tcp |* |0 |0 |0 |0 | |
239 |parse_icmp |* |0 |1 |0 |1 |clot 12 |
240 +---------------------------------+------------+-------+--------+--------+---------------------------+----------+