xref: /dpdk/doc/guides/prog_guide/img/graph_inbuilt_node_flow.svg (revision 58fbbcca1b1ef25df902c136c4ebf2752fdfa269)
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
3 "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4<!-- Generated by graphviz version 8.0.5 (0)
5 -->
6<!-- SPDX-License-Identifier: BSD-3-Clause -->
7<!-- Copyright(C) 2023 Marvell International Ltd. -->
8<!--
9
10Generated with following command
11dot -Tsvg dot.dot -o doc/guides/prog_guide/img/graph_inbuilt_node_flow.svg
12
13cat dot.dot
14digraph dpdk_inbuilt_nodes_flow {
15    comment="input nodes"
16    ethdev_rx [color="green"]
17    kernel_rx [color="green"]
18
19    ethdev_tx [color="magenta"]
20    pkt_drop [color="cyan"]
21    kernel_tx [color="blue"]
22    pkt_cls [color="red"]
23
24    ethdev_rx -> pkt_cls
25    kernel_rx -> pkt_cls
26    pkt_cls -> ip4_lookup  [ label="ipv4"]
27    pkt_cls -> ip6_lookup  [ label="ipv6"]
28    pkt_cls -> kernel_tx  [ label="exception pkts"  color="blue"]
29    ip4_lookup -> ip4_rewrite
30    ip4_lookup -> pkt_drop [color="cyan" style="dashed"]
31    ip4_rewrite -> ethdev_tx [color="green"]
32    ip4_rewrite->pkt_drop  [color="cyan" style="dashed"]
33    ip6_lookup -> ip6_rewrite
34    ip6_lookup -> pkt_drop [color="cyan" style="dashed"]
35    ip6_rewrite -> ethdev_tx [color="green"]
36    ip6_rewrite -> pkt_drop  [color="cyan" style="dashed"]
37    ethdev_tx -> pkt_drop [color="cyan" style="dashed"]
38    pkt_cls->pkt_drop   [color="cyan" style="dashed"]
39    kernel_tx -> kernel_rx [color="red" style="dashed"]
40    ip4_lookup -> ip4_local
41    ip4_local -> pkt_drop [color="cyan" style="dashed"]
42    ip4_local -> udp4_input [ label="udpv4"]
43    udp4_input -> udp_user_node
44    udp4_input -> pkt_drop [color="cyan" style="dashed"]
45
46}
47
48 -->
49<!-- input nodes -->
50<!-- Title: dpdk_inbuilt_nodes_flow Pages: 1 -->
51<svg width="631pt" height="437pt"
52 viewBox="0.00 0.00 630.95 437.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
53<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 433)">
54<title>dpdk_inbuilt_nodes_flow</title>
55<polygon fill="white" stroke="transparent" points="-4,4 -4,-433 626.95,-433 626.95,4 -4,4"/>
56<!-- ethdev_rx -->
57<g id="node1" class="node">
58<title>ethdev_rx</title>
59<ellipse fill="none" stroke="green" cx="261.95" cy="-411" rx="56.59" ry="18"/>
60<text text-anchor="middle" x="261.95" y="-407.3" font-family="Times,serif" font-size="14.00">ethdev_rx</text>
61</g>
62<!-- pkt_cls -->
63<g id="node6" class="node">
64<title>pkt_cls</title>
65<ellipse fill="none" stroke="red" cx="261.95" cy="-338" rx="42.79" ry="18"/>
66<text text-anchor="middle" x="261.95" y="-334.3" font-family="Times,serif" font-size="14.00">pkt_cls</text>
67</g>
68<!-- ethdev_rx&#45;&gt;pkt_cls -->
69<g id="edge1" class="edge">
70<title>ethdev_rx&#45;&gt;pkt_cls</title>
71<path fill="none" stroke="black" d="M261.95,-392.81C261.95,-384.79 261.95,-375.05 261.95,-366.07"/>
72<polygon fill="black" stroke="black" points="265.45,-366.03 261.95,-356.03 258.45,-366.03 265.45,-366.03"/>
73</g>
74<!-- kernel_rx -->
75<g id="node2" class="node">
76<title>kernel_rx</title>
77<ellipse fill="none" stroke="green" cx="53.95" cy="-178" rx="53.89" ry="18"/>
78<text text-anchor="middle" x="53.95" y="-174.3" font-family="Times,serif" font-size="14.00">kernel_rx</text>
79</g>
80<!-- kernel_rx&#45;&gt;pkt_cls -->
81<g id="edge2" class="edge">
82<title>kernel_rx&#45;&gt;pkt_cls</title>
83<path fill="none" stroke="black" d="M74.75,-194.8C112.31,-223.33 191.45,-283.45 233.8,-315.62"/>
84<polygon fill="black" stroke="black" points="231.92,-318.59 242,-321.85 236.16,-313.01 231.92,-318.59"/>
85</g>
86<!-- ethdev_tx -->
87<g id="node3" class="node">
88<title>ethdev_tx</title>
89<ellipse fill="none" stroke="magenta" cx="347.95" cy="-91" rx="55.79" ry="18"/>
90<text text-anchor="middle" x="347.95" y="-87.3" font-family="Times,serif" font-size="14.00">ethdev_tx</text>
91</g>
92<!-- pkt_drop -->
93<g id="node4" class="node">
94<title>pkt_drop</title>
95<ellipse fill="none" stroke="cyan" cx="404.95" cy="-18" rx="51.99" ry="18"/>
96<text text-anchor="middle" x="404.95" y="-14.3" font-family="Times,serif" font-size="14.00">pkt_drop</text>
97</g>
98<!-- ethdev_tx&#45;&gt;pkt_drop -->
99<g id="edge14" class="edge">
100<title>ethdev_tx&#45;&gt;pkt_drop</title>
101<path fill="none" stroke="cyan" stroke-dasharray="5,2" d="M361.45,-73.17C368.55,-64.33 377.39,-53.33 385.23,-43.55"/>
102<polygon fill="cyan" stroke="cyan" points="388,-45.69 391.53,-35.71 382.54,-41.31 388,-45.69"/>
103</g>
104<!-- kernel_tx -->
105<g id="node5" class="node">
106<title>kernel_tx</title>
107<ellipse fill="none" stroke="blue" cx="53.95" cy="-251" rx="53.89" ry="18"/>
108<text text-anchor="middle" x="53.95" y="-247.3" font-family="Times,serif" font-size="14.00">kernel_tx</text>
109</g>
110<!-- kernel_tx&#45;&gt;kernel_rx -->
111<g id="edge16" class="edge">
112<title>kernel_tx&#45;&gt;kernel_rx</title>
113<path fill="none" stroke="red" stroke-dasharray="5,2" d="M53.95,-232.81C53.95,-224.79 53.95,-215.05 53.95,-206.07"/>
114<polygon fill="red" stroke="red" points="57.45,-206.03 53.95,-196.03 50.45,-206.03 57.45,-206.03"/>
115</g>
116<!-- pkt_cls&#45;&gt;pkt_drop -->
117<g id="edge15" class="edge">
118<title>pkt_cls&#45;&gt;pkt_drop</title>
119<path fill="none" stroke="cyan" stroke-dasharray="5,2" d="M304.77,-335.88C400.4,-332.2 622.95,-316.71 622.95,-252 622.95,-252 622.95,-252 622.95,-90 622.95,-56.33 527.72,-36.15 463.14,-26.34"/>
120<polygon fill="cyan" stroke="cyan" points="463.46,-22.85 453.06,-24.85 462.44,-29.77 463.46,-22.85"/>
121</g>
122<!-- pkt_cls&#45;&gt;kernel_tx -->
123<g id="edge5" class="edge">
124<title>pkt_cls&#45;&gt;kernel_tx</title>
125<path fill="none" stroke="blue" d="M219.14,-335.96C164.86,-333.64 75.77,-326.15 54.95,-302 49.6,-295.81 48.06,-287.4 48.24,-279.24"/>
126<polygon fill="blue" stroke="blue" points="51.73,-279.54 49.23,-269.24 44.76,-278.84 51.73,-279.54"/>
127<text text-anchor="middle" x="107.45" y="-290.8" font-family="Times,serif" font-size="14.00">exception pkts</text>
128</g>
129<!-- ip4_lookup -->
130<g id="node7" class="node">
131<title>ip4_lookup</title>
132<ellipse fill="none" stroke="black" cx="261.95" cy="-251" rx="60.39" ry="18"/>
133<text text-anchor="middle" x="261.95" y="-247.3" font-family="Times,serif" font-size="14.00">ip4_lookup</text>
134</g>
135<!-- pkt_cls&#45;&gt;ip4_lookup -->
136<g id="edge3" class="edge">
137<title>pkt_cls&#45;&gt;ip4_lookup</title>
138<path fill="none" stroke="black" d="M261.95,-319.8C261.95,-308.16 261.95,-292.55 261.95,-279.24"/>
139<polygon fill="black" stroke="black" points="265.45,-279.18 261.95,-269.18 258.45,-279.18 265.45,-279.18"/>
140<text text-anchor="middle" x="277.45" y="-290.8" font-family="Times,serif" font-size="14.00">ipv4</text>
141</g>
142<!-- ip6_lookup -->
143<g id="node8" class="node">
144<title>ip6_lookup</title>
145<ellipse fill="none" stroke="black" cx="492.95" cy="-251" rx="60.39" ry="18"/>
146<text text-anchor="middle" x="492.95" y="-247.3" font-family="Times,serif" font-size="14.00">ip6_lookup</text>
147</g>
148<!-- pkt_cls&#45;&gt;ip6_lookup -->
149<g id="edge4" class="edge">
150<title>pkt_cls&#45;&gt;ip6_lookup</title>
151<path fill="none" stroke="black" d="M293.1,-325.54C332.57,-311.01 400.93,-285.86 446.54,-269.07"/>
152<polygon fill="black" stroke="black" points="448.02,-272.26 456.2,-265.52 445.61,-265.69 448.02,-272.26"/>
153<text text-anchor="middle" x="407.45" y="-290.8" font-family="Times,serif" font-size="14.00">ipv6</text>
154</g>
155<!-- ip4_lookup&#45;&gt;pkt_drop -->
156<g id="edge7" class="edge">
157<title>ip4_lookup&#45;&gt;pkt_drop</title>
158<path fill="none" stroke="cyan" stroke-dasharray="5,2" d="M258.85,-232.91C253.68,-198.83 247.1,-121.54 282.95,-73 299.1,-51.12 326.1,-37.95 350.6,-30.11"/>
159<polygon fill="cyan" stroke="cyan" points="351.6,-33.46 360.19,-27.26 349.61,-26.75 351.6,-33.46"/>
160</g>
161<!-- ip4_rewrite -->
162<g id="node9" class="node">
163<title>ip4_rewrite</title>
164<ellipse fill="none" stroke="black" cx="347.95" cy="-178" rx="63.89" ry="18"/>
165<text text-anchor="middle" x="347.95" y="-174.3" font-family="Times,serif" font-size="14.00">ip4_rewrite</text>
166</g>
167<!-- ip4_lookup&#45;&gt;ip4_rewrite -->
168<g id="edge6" class="edge">
169<title>ip4_lookup&#45;&gt;ip4_rewrite</title>
170<path fill="none" stroke="black" d="M281.46,-233.89C292.92,-224.42 307.6,-212.31 320.25,-201.87"/>
171<polygon fill="black" stroke="black" points="322.73,-204.36 328.21,-195.29 318.27,-198.96 322.73,-204.36"/>
172</g>
173<!-- ip4_local -->
174<g id="node11" class="node">
175<title>ip4_local</title>
176<ellipse fill="none" stroke="black" cx="176.95" cy="-178" rx="51.19" ry="18"/>
177<text text-anchor="middle" x="176.95" y="-174.3" font-family="Times,serif" font-size="14.00">ip4_local</text>
178</g>
179<!-- ip4_lookup&#45;&gt;ip4_local -->
180<g id="edge17" class="edge">
181<title>ip4_lookup&#45;&gt;ip4_local</title>
182<path fill="none" stroke="black" d="M242.66,-233.89C231.17,-224.29 216.41,-211.96 203.79,-201.42"/>
183<polygon fill="black" stroke="black" points="205.78,-198.53 195.86,-194.8 201.29,-203.9 205.78,-198.53"/>
184</g>
185<!-- ip6_lookup&#45;&gt;pkt_drop -->
186<g id="edge11" class="edge">
187<title>ip6_lookup&#45;&gt;pkt_drop</title>
188<path fill="none" stroke="cyan" stroke-dasharray="5,2" d="M524.51,-235.44C540.02,-226.46 557.22,-213.31 565.95,-196 573.15,-181.71 572.55,-174.57 565.95,-160 540.59,-104.08 480.88,-61.6 441.74,-38.51"/>
189<polygon fill="cyan" stroke="cyan" points="443.16,-35.29 432.75,-33.34 439.67,-41.36 443.16,-35.29"/>
190</g>
191<!-- ip6_rewrite -->
192<g id="node10" class="node">
193<title>ip6_rewrite</title>
194<ellipse fill="none" stroke="black" cx="492.95" cy="-178" rx="63.89" ry="18"/>
195<text text-anchor="middle" x="492.95" y="-174.3" font-family="Times,serif" font-size="14.00">ip6_rewrite</text>
196</g>
197<!-- ip6_lookup&#45;&gt;ip6_rewrite -->
198<g id="edge10" class="edge">
199<title>ip6_lookup&#45;&gt;ip6_rewrite</title>
200<path fill="none" stroke="black" d="M492.95,-232.81C492.95,-224.79 492.95,-215.05 492.95,-206.07"/>
201<polygon fill="black" stroke="black" points="496.45,-206.03 492.95,-196.03 489.45,-206.03 496.45,-206.03"/>
202</g>
203<!-- ip4_rewrite&#45;&gt;ethdev_tx -->
204<g id="edge8" class="edge">
205<title>ip4_rewrite&#45;&gt;ethdev_tx</title>
206<path fill="none" stroke="green" d="M347.95,-159.8C347.95,-148.16 347.95,-132.55 347.95,-119.24"/>
207<polygon fill="green" stroke="green" points="351.45,-119.18 347.95,-109.18 344.45,-119.18 351.45,-119.18"/>
208</g>
209<!-- ip4_rewrite&#45;&gt;pkt_drop -->
210<g id="edge9" class="edge">
211<title>ip4_rewrite&#45;&gt;pkt_drop</title>
212<path fill="none" stroke="cyan" stroke-dasharray="5,2" d="M370.32,-161.1C385.53,-148.83 404.37,-130.37 412.95,-109 421.04,-88.82 418.02,-64.12 413.56,-45.7"/>
213<polygon fill="cyan" stroke="cyan" points="416.9,-44.66 410.91,-35.93 410.15,-46.49 416.9,-44.66"/>
214</g>
215<!-- ip6_rewrite&#45;&gt;ethdev_tx -->
216<g id="edge12" class="edge">
217<title>ip6_rewrite&#45;&gt;ethdev_tx</title>
218<path fill="none" stroke="green" d="M466.35,-161.41C442.8,-147.6 408.27,-127.36 382.57,-112.3"/>
219<polygon fill="green" stroke="green" points="384.28,-109.24 373.88,-107.21 380.74,-115.28 384.28,-109.24"/>
220</g>
221<!-- ip6_rewrite&#45;&gt;pkt_drop -->
222<g id="edge13" class="edge">
223<title>ip6_rewrite&#45;&gt;pkt_drop</title>
224<path fill="none" stroke="cyan" stroke-dasharray="5,2" d="M485.15,-159.86C473.93,-135.7 452.15,-90.48 429.95,-54 427.97,-50.75 425.78,-47.4 423.55,-44.13"/>
225<polygon fill="cyan" stroke="cyan" points="426.28,-41.92 417.67,-35.75 420.55,-45.94 426.28,-41.92"/>
226</g>
227<!-- ip4_local&#45;&gt;pkt_drop -->
228<g id="edge18" class="edge">
229<title>ip4_local&#45;&gt;pkt_drop</title>
230<path fill="none" stroke="cyan" stroke-dasharray="5,2" d="M191.02,-160.51C195.47,-154.86 200.21,-148.35 203.95,-142 225.57,-105.29 209.02,-81.03 241.95,-54 257.83,-40.96 306.22,-31.62 346.19,-25.89"/>
231<polygon fill="cyan" stroke="cyan" points="346.72,-29.35 356.14,-24.51 345.75,-22.41 346.72,-29.35"/>
232</g>
233<!-- udp4_input -->
234<g id="node12" class="node">
235<title>udp4_input</title>
236<ellipse fill="none" stroke="black" cx="126.95" cy="-91" rx="63.09" ry="18"/>
237<text text-anchor="middle" x="126.95" y="-87.3" font-family="Times,serif" font-size="14.00">udp4_input</text>
238</g>
239<!-- ip4_local&#45;&gt;udp4_input -->
240<g id="edge19" class="edge">
241<title>ip4_local&#45;&gt;udp4_input</title>
242<path fill="none" stroke="black" d="M167.07,-160.21C159.99,-148.18 150.33,-131.75 142.26,-118.03"/>
243<polygon fill="black" stroke="black" points="145.06,-115.89 136.97,-109.05 139.03,-119.44 145.06,-115.89"/>
244<text text-anchor="middle" x="177.45" y="-130.8" font-family="Times,serif" font-size="14.00">udpv4</text>
245</g>
246<!-- udp4_input&#45;&gt;pkt_drop -->
247<g id="edge21" class="edge">
248<title>udp4_input&#45;&gt;pkt_drop</title>
249<path fill="none" stroke="cyan" stroke-dasharray="5,2" d="M154.75,-74.82C169.08,-67.56 187.05,-59.32 203.95,-54 250.51,-39.35 305.19,-30.33 345.76,-25.12"/>
250<polygon fill="cyan" stroke="cyan" points="346.26,-28.59 355.75,-23.88 345.4,-21.64 346.26,-28.59"/>
251</g>
252<!-- udp_user_node -->
253<g id="node13" class="node">
254<title>udp_user_node</title>
255<ellipse fill="none" stroke="black" cx="126.95" cy="-18" rx="79.89" ry="18"/>
256<text text-anchor="middle" x="126.95" y="-14.3" font-family="Times,serif" font-size="14.00">udp_user_node</text>
257</g>
258<!-- udp4_input&#45;&gt;udp_user_node -->
259<g id="edge20" class="edge">
260<title>udp4_input&#45;&gt;udp_user_node</title>
261<path fill="none" stroke="black" d="M126.95,-72.81C126.95,-64.79 126.95,-55.05 126.95,-46.07"/>
262<polygon fill="black" stroke="black" points="130.45,-46.03 126.95,-36.03 123.45,-46.03 130.45,-46.03"/>
263</g>
264</g>
265</svg>
266