xref: /dpdk/doc/guides/sample_app_ug/img/l2_fwd_encrypt_flow.svg (revision ba7b86b1419ba07df43cdb8cc750fdb9c3be4006)
1*ba7b86b1SPablo de Lara<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2*ba7b86b1SPablo de Lara<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3*ba7b86b1SPablo de Lara<!-- Generated by Microsoft Visio, SVG Export l2fwd-crypto-encrypt-flow.svg Page-1 -->
4*ba7b86b1SPablo de Lara<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events"
5*ba7b86b1SPablo de Lara		width="10.3779in" height="2.38075in" viewBox="0 0 747.207 171.414" xml:space="preserve" color-interpolation-filters="sRGB"
6*ba7b86b1SPablo de Lara		class="st15">
7*ba7b86b1SPablo de Lara	<style type="text/css">
8*ba7b86b1SPablo de Lara	<![CDATA[
9*ba7b86b1SPablo de Lara		.st1 {visibility:visible}
10*ba7b86b1SPablo de Lara		.st2 {fill:#5b9bd5;fill-opacity:0.25;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.25}
11*ba7b86b1SPablo de Lara		.st3 {fill:#ffc000;stroke:#40709c;stroke-width:0.75}
12*ba7b86b1SPablo de Lara		.st4 {fill:#feffff;font-family:Calibri;font-size:0.833336em}
13*ba7b86b1SPablo de Lara		.st5 {font-size:1em}
14*ba7b86b1SPablo de Lara		.st6 {fill:#4672c4;stroke:#40709c;stroke-width:0.75}
15*ba7b86b1SPablo de Lara		.st7 {fill:#538135;stroke:#40709c;stroke-width:0.75}
16*ba7b86b1SPablo de Lara		.st8 {marker-end:url(#mrkr4-58);stroke:#41719c;stroke-dasharray:3,3;stroke-linecap:round;stroke-linejoin:round;stroke-width:1}
17*ba7b86b1SPablo de Lara		.st9 {fill:#41719c;fill-opacity:1;stroke:#41719c;stroke-opacity:1;stroke-width:0.28409090909091}
18*ba7b86b1SPablo de Lara		.st10 {marker-end:url(#mrkr4-58);stroke:#41719c;stroke-linecap:round;stroke-linejoin:round;stroke-width:1}
19*ba7b86b1SPablo de Lara		.st11 {fill:none;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.22}
20*ba7b86b1SPablo de Lara		.st12 {stroke:#c7c8c8;stroke-width:0.25}
21*ba7b86b1SPablo de Lara		.st13 {fill:none;stroke:none;stroke-width:0.25}
22*ba7b86b1SPablo de Lara		.st14 {fill:#5b9bd5;font-family:Calibri;font-size:1.00001em}
23*ba7b86b1SPablo de Lara		.st15 {fill:none;fill-rule:evenodd;font-size:12px;overflow:visible;stroke-linecap:square;stroke-miterlimit:3}
24*ba7b86b1SPablo de Lara	]]>
25*ba7b86b1SPablo de Lara	</style>
26*ba7b86b1SPablo de Lara
27*ba7b86b1SPablo de Lara	<defs id="Markers">
28*ba7b86b1SPablo de Lara		<g id="lend4">
29*ba7b86b1SPablo de Lara			<path d="M 2 1 L 0 0 L 2 -1 L 2 1 " style="stroke:none"/>
30*ba7b86b1SPablo de Lara		</g>
31*ba7b86b1SPablo de Lara		<marker id="mrkr4-58" class="st9" refX="-7.04" orient="auto" markerUnits="strokeWidth" overflow="visible">
32*ba7b86b1SPablo de Lara			<use xlink:href="#lend4" transform="scale(-3.52,-3.52) "/>
33*ba7b86b1SPablo de Lara		</marker>
34*ba7b86b1SPablo de Lara	</defs>
35*ba7b86b1SPablo de Lara	<defs id="Filters">
36*ba7b86b1SPablo de Lara		<filter id="filter_2">
37*ba7b86b1SPablo de Lara			<feGaussianBlur stdDeviation="2"/>
38*ba7b86b1SPablo de Lara		</filter>
39*ba7b86b1SPablo de Lara	</defs>
40*ba7b86b1SPablo de Lara	<g>
41*ba7b86b1SPablo de Lara		<title>Page-1</title>
42*ba7b86b1SPablo de Lara		<g id="shape101-1" transform="translate(3.73674,-5.34781)">
43*ba7b86b1SPablo de Lara			<title>Circle.53</title>
44*ba7b86b1SPablo de Lara			<desc>RX P0 Q0</desc>
45*ba7b86b1SPablo de Lara			<g id="shadow101-2" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
46*ba7b86b1SPablo de Lara				<path d="M0 144.75 A26.6643 26.6643 0 0 1 53.33 144.75 A26.6643 26.6643 0 1 1 0 144.75 Z" class="st2"/>
47*ba7b86b1SPablo de Lara			</g>
48*ba7b86b1SPablo de Lara			<path d="M0 144.75 A26.6643 26.6643 0 0 1 53.33 144.75 A26.6643 26.6643 0 1 1 0 144.75 Z" class="st3"/>
49*ba7b86b1SPablo de Lara			<text x="21.35" y="141.75" class="st4">RX <tspan x="14.52" dy="1.2em" class="st5">P</tspan>0 Q0</text>		</g>
50*ba7b86b1SPablo de Lara		<g id="shape102-8" transform="translate(101.797,-5.34781)">
51*ba7b86b1SPablo de Lara			<title>Circle.56</title>
52*ba7b86b1SPablo de Lara			<desc>RX</desc>
53*ba7b86b1SPablo de Lara			<g id="shadow102-9" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
54*ba7b86b1SPablo de Lara				<path d="M0 144.75 A26.6643 26.6643 0 0 1 53.33 144.75 A26.6643 26.6643 0 1 1 0 144.75 Z" class="st2"/>
55*ba7b86b1SPablo de Lara			</g>
56*ba7b86b1SPablo de Lara			<path d="M0 144.75 A26.6643 26.6643 0 0 1 53.33 144.75 A26.6643 26.6643 0 1 1 0 144.75 Z" class="st6"/>
57*ba7b86b1SPablo de Lara			<text x="21.35" y="147.75" class="st4">RX</text>		</g>
58*ba7b86b1SPablo de Lara		<g id="shape103-14" transform="translate(395.977,-5.34781)">
59*ba7b86b1SPablo de Lara			<title>Circle.57</title>
60*ba7b86b1SPablo de Lara			<desc>CRYPTO DEQ</desc>
61*ba7b86b1SPablo de Lara			<g id="shadow103-15" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
62*ba7b86b1SPablo de Lara				<path d="M0 144.75 A26.6643 26.6643 0 0 1 53.33 144.75 A26.6643 26.6643 0 1 1 0 144.75 Z" class="st2"/>
63*ba7b86b1SPablo de Lara			</g>
64*ba7b86b1SPablo de Lara			<path d="M0 144.75 A26.6643 26.6643 0 0 1 53.33 144.75 A26.6643 26.6643 0 1 1 0 144.75 Z" class="st7"/>
65*ba7b86b1SPablo de Lara			<text x="10.52" y="141.75" class="st4">CRYPTO <tspan x="17.78" dy="1.2em" class="st5">DEQ</tspan></text>		</g>
66*ba7b86b1SPablo de Lara		<g id="shape104-21" transform="translate(297.917,-5.34781)">
67*ba7b86b1SPablo de Lara			<title>Circle.58</title>
68*ba7b86b1SPablo de Lara			<desc>CRYPTO ENQ</desc>
69*ba7b86b1SPablo de Lara			<g id="shadow104-22" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
70*ba7b86b1SPablo de Lara				<path d="M0 144.75 A26.6643 26.6643 0 0 1 53.33 144.75 A26.6643 26.6643 0 1 1 0 144.75 Z" class="st2"/>
71*ba7b86b1SPablo de Lara			</g>
72*ba7b86b1SPablo de Lara			<path d="M0 144.75 A26.6643 26.6643 0 0 1 53.33 144.75 A26.6643 26.6643 0 1 1 0 144.75 Z" class="st7"/>
73*ba7b86b1SPablo de Lara			<text x="10.52" y="141.75" class="st4">CRYPTO <tspan x="17.63" dy="1.2em" class="st5">ENQ</tspan></text>		</g>
74*ba7b86b1SPablo de Lara		<g id="shape105-28" transform="translate(690.158,-5.34781)">
75*ba7b86b1SPablo de Lara			<title>Circle.73</title>
76*ba7b86b1SPablo de Lara			<desc>TX P0 Q0</desc>
77*ba7b86b1SPablo de Lara			<g id="shadow105-29" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
78*ba7b86b1SPablo de Lara				<path d="M0 144.75 A26.6643 26.6643 0 0 1 53.33 144.75 A26.6643 26.6643 0 1 1 0 144.75 Z" class="st2"/>
79*ba7b86b1SPablo de Lara			</g>
80*ba7b86b1SPablo de Lara			<path d="M0 144.75 A26.6643 26.6643 0 0 1 53.33 144.75 A26.6643 26.6643 0 1 1 0 144.75 Z" class="st3"/>
81*ba7b86b1SPablo de Lara			<text x="21.63" y="141.75" class="st4">TX <tspan x="14.52" dy="1.2em" class="st5">P</tspan>0 Q0</text>		</g>
82*ba7b86b1SPablo de Lara		<g id="shape106-35" transform="translate(494.037,-5.34781)">
83*ba7b86b1SPablo de Lara			<title>Circle.74</title>
84*ba7b86b1SPablo de Lara			<desc>MAC</desc>
85*ba7b86b1SPablo de Lara			<g id="shadow106-36" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
86*ba7b86b1SPablo de Lara				<path d="M0 144.75 A26.6643 26.6643 0 0 1 53.33 144.75 A26.6643 26.6643 0 1 1 0 144.75 Z" class="st2"/>
87*ba7b86b1SPablo de Lara			</g>
88*ba7b86b1SPablo de Lara			<path d="M0 144.75 A26.6643 26.6643 0 0 1 53.33 144.75 A26.6643 26.6643 0 1 1 0 144.75 Z" class="st6"/>
89*ba7b86b1SPablo de Lara			<text x="16.83" y="147.75" class="st4">MAC</text>		</g>
90*ba7b86b1SPablo de Lara		<g id="shape107-41" transform="translate(199.857,-5.34781)">
91*ba7b86b1SPablo de Lara			<title>Circle.61</title>
92*ba7b86b1SPablo de Lara			<desc>PAD</desc>
93*ba7b86b1SPablo de Lara			<g id="shadow107-42" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
94*ba7b86b1SPablo de Lara				<path d="M0 144.75 A26.6643 26.6643 0 0 1 53.33 144.75 A26.6643 26.6643 0 1 1 0 144.75 Z" class="st2"/>
95*ba7b86b1SPablo de Lara			</g>
96*ba7b86b1SPablo de Lara			<path d="M0 144.75 A26.6643 26.6643 0 0 1 53.33 144.75 A26.6643 26.6643 0 1 1 0 144.75 Z" class="st6"/>
97*ba7b86b1SPablo de Lara			<text x="18.11" y="147.75" class="st4">PAD</text>		</g>
98*ba7b86b1SPablo de Lara		<g id="shape108-47" transform="translate(592.097,-5.34781)">
99*ba7b86b1SPablo de Lara			<title>Circle.62</title>
100*ba7b86b1SPablo de Lara			<desc>TX</desc>
101*ba7b86b1SPablo de Lara			<g id="shadow108-48" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1">
102*ba7b86b1SPablo de Lara				<path d="M0 144.75 A26.6643 26.6643 0 0 1 53.33 144.75 A26.6643 26.6643 0 1 1 0 144.75 Z" class="st2"/>
103*ba7b86b1SPablo de Lara			</g>
104*ba7b86b1SPablo de Lara			<path d="M0 144.75 A26.6643 26.6643 0 0 1 53.33 144.75 A26.6643 26.6643 0 1 1 0 144.75 Z" class="st6"/>
105*ba7b86b1SPablo de Lara			<text x="21.63" y="147.75" class="st4">TX</text>		</g>
106*ba7b86b1SPablo de Lara		<g id="shape109-53" transform="translate(57.0653,-24.9255)">
107*ba7b86b1SPablo de Lara			<title>Dynamic connector.63</title>
108*ba7b86b1SPablo de Lara			<path d="M0 164.33 L37.69 164.33" class="st8"/>
109*ba7b86b1SPablo de Lara		</g>
110*ba7b86b1SPablo de Lara		<g id="shape110-59" transform="translate(155.125,-24.9255)">
111*ba7b86b1SPablo de Lara			<title>Dynamic connector.65</title>
112*ba7b86b1SPablo de Lara			<path d="M0 164.33 L37.69 164.33" class="st10"/>
113*ba7b86b1SPablo de Lara		</g>
114*ba7b86b1SPablo de Lara		<g id="shape111-64" transform="translate(253.186,-24.9255)">
115*ba7b86b1SPablo de Lara			<title>Dynamic connector.66</title>
116*ba7b86b1SPablo de Lara			<path d="M0 164.33 L37.69 164.33" class="st10"/>
117*ba7b86b1SPablo de Lara		</g>
118*ba7b86b1SPablo de Lara		<g id="shape112-69" transform="translate(351.246,-24.9255)">
119*ba7b86b1SPablo de Lara			<title>Dynamic connector.67</title>
120*ba7b86b1SPablo de Lara			<path d="M0 164.33 L37.69 164.33" class="st8"/>
121*ba7b86b1SPablo de Lara		</g>
122*ba7b86b1SPablo de Lara		<g id="shape113-74" transform="translate(449.306,-24.9255)">
123*ba7b86b1SPablo de Lara			<title>Dynamic connector.68</title>
124*ba7b86b1SPablo de Lara			<path d="M0 164.33 L37.69 164.33" class="st10"/>
125*ba7b86b1SPablo de Lara		</g>
126*ba7b86b1SPablo de Lara		<g id="shape114-79" transform="translate(547.366,-24.9255)">
127*ba7b86b1SPablo de Lara			<title>Dynamic connector.69</title>
128*ba7b86b1SPablo de Lara			<path d="M0 164.33 L37.69 164.33" class="st10"/>
129*ba7b86b1SPablo de Lara		</g>
130*ba7b86b1SPablo de Lara		<g id="shape115-84" transform="translate(645.426,-24.9255)">
131*ba7b86b1SPablo de Lara			<title>Dynamic connector.70</title>
132*ba7b86b1SPablo de Lara			<path d="M0 164.33 L37.69 164.33" class="st8"/>
133*ba7b86b1SPablo de Lara		</g>
134*ba7b86b1SPablo de Lara		<g id="shape116-89" transform="translate(174.599,68.9848) rotate(90)">
135*ba7b86b1SPablo de Lara			<title>Left Brace</title>
136*ba7b86b1SPablo de Lara			<g id="shadow116-90" transform="matrix(1,0,0,1,1.97279,-0.345598)" class="st1">
137*ba7b86b1SPablo de Lara				<path d="M28.35 171.41 A24.4921 16.4101 0 0 1 14.17 167.43 L14.17 95.44 L0 95.44 L14.17 95.44 L14.17 23.46 A24.4921
138*ba7b86b1SPablo de Lara							 16.4101 0 0 1 28.35 19.47" class="st11"/>
139*ba7b86b1SPablo de Lara			</g>
140*ba7b86b1SPablo de Lara			<path d="M28.35 171.41 A24.4921 16.4101 0 0 1 14.17 167.43 L14.17 95.44 L0 95.44 L14.17 95.44 L14.17 23.46 A24.4921 16.4101
141*ba7b86b1SPablo de Lara						 0 0 1 28.35 19.47" class="st12"/>
142*ba7b86b1SPablo de Lara		</g>
143*ba7b86b1SPablo de Lara		<g id="shape117-97" transform="translate(371.271,68.9848) rotate(90)">
144*ba7b86b1SPablo de Lara			<title>Left Brace.74</title>
145*ba7b86b1SPablo de Lara			<g id="shadow117-98" transform="matrix(1,0,0,1,1.97279,-0.345598)" class="st1">
146*ba7b86b1SPablo de Lara				<path d="M28.35 171.41 A23.1398 15.504 0 0 1 14.17 163.51 L14.17 95.44 L0 95.44 L14.17 95.44 L14.17 27.38 A23.1398
147*ba7b86b1SPablo de Lara							 15.504 0 0 1 28.35 19.47" class="st11"/>
148*ba7b86b1SPablo de Lara			</g>
149*ba7b86b1SPablo de Lara			<path d="M28.35 171.41 A23.1398 15.504 0 0 1 14.17 163.51 L14.17 95.44 L0 95.44 L14.17 95.44 L14.17 27.38 A23.1398 15.504
150*ba7b86b1SPablo de Lara						 0 0 1 28.35 19.47" class="st12"/>
151*ba7b86b1SPablo de Lara		</g>
152*ba7b86b1SPablo de Lara		<g id="shape118-105" transform="translate(212.048,-117.835)">
153*ba7b86b1SPablo de Lara			<title>Sheet.118</title>
154*ba7b86b1SPablo de Lara			<desc>Stage 2: Pad packets and enqueue crypto operations</desc>
155*ba7b86b1SPablo de Lara			<rect x="0" y="118.085" width="127.559" height="53.3286" class="st13"/>
156*ba7b86b1SPablo de Lara			<text x="13.85" y="133.95" class="st14">Stage 2: Pad packets <tspan x="14.65" dy="1.2em" class="st5">and enqueue crypto </tspan><tspan
157*ba7b86b1SPablo de Lara						x="37.46" dy="1.2em" class="st5">operations</tspan></text>		</g>
158*ba7b86b1SPablo de Lara		<g id="shape119-110" transform="translate(15.3756,-117.835)">
159*ba7b86b1SPablo de Lara			<title>Sheet.119</title>
160*ba7b86b1SPablo de Lara			<desc>Stage 1: Read packets from port</desc>
161*ba7b86b1SPablo de Lara			<rect x="0" y="118.085" width="127.559" height="53.3286" class="st13"/>
162*ba7b86b1SPablo de Lara			<text x="10.71" y="141.15" class="st14">Stage 1: Read packets <tspan x="40.13" dy="1.2em" class="st5">from port</tspan></text>		</g>
163*ba7b86b1SPablo de Lara		<g id="shape120-114" transform="translate(567.943,68.9848) rotate(90)">
164*ba7b86b1SPablo de Lara			<title>Left Brace.78</title>
165*ba7b86b1SPablo de Lara			<g id="shadow120-115" transform="matrix(1,0,0,1,1.97279,-0.345598)" class="st1">
166*ba7b86b1SPablo de Lara				<path d="M28.35 171.41 A37.9502 8.92454 0 0 1 14.17 166.08 L14.17 144.75 L0 144.75 L14.17 144.75 L14.17 123.42 A37.9502
167*ba7b86b1SPablo de Lara							 8.92454 0 0 1 28.35 118.09" class="st11"/>
168*ba7b86b1SPablo de Lara			</g>
169*ba7b86b1SPablo de Lara			<path d="M28.35 171.41 A37.9502 8.92454 0 0 1 14.17 166.08 L14.17 144.75 L0 144.75 L14.17 144.75 L14.17 123.42 A37.9502
170*ba7b86b1SPablo de Lara						 8.92454 0 0 1 28.35 118.09" class="st12"/>
171*ba7b86b1SPablo de Lara		</g>
172*ba7b86b1SPablo de Lara		<g id="shape121-122" transform="translate(371.106,-117.835)">
173*ba7b86b1SPablo de Lara			<title>Sheet.121</title>
174*ba7b86b1SPablo de Lara			<desc>Stage 3: Dequeue processed crypto operations</desc>
175*ba7b86b1SPablo de Lara			<rect x="0" y="118.085" width="99.248" height="53.3286" class="st13"/>
176*ba7b86b1SPablo de Lara			<text x="6.71" y="133.95" class="st14">Stage 3: Dequeue <tspan x="7.83" dy="1.2em" class="st5">processed crypto </tspan><tspan
177*ba7b86b1SPablo de Lara						x="23.31" dy="1.2em" class="st5">operations</tspan></text>		</g>
178*ba7b86b1SPablo de Lara		<g id="shape122-127" transform="translate(666.003,71.9952) rotate(90)">
179*ba7b86b1SPablo de Lara			<title>Left Brace.80</title>
180*ba7b86b1SPablo de Lara			<g id="shadow122-128" transform="matrix(1,0,0,1,1.97279,-0.345598)" class="st1">
181*ba7b86b1SPablo de Lara				<path d="M28.35 171.41 A22.2255 24.1253 0 0 1 14.17 161.02 L14.17 48.34 L0 48.34 L14.17 48.34 L14.17 -64.35 A22.2255
182*ba7b86b1SPablo de Lara							 24.1253 0 0 1 28.35 -74.74" class="st11"/>
183*ba7b86b1SPablo de Lara			</g>
184*ba7b86b1SPablo de Lara			<path d="M28.35 171.41 A22.2255 24.1253 0 0 1 14.17 161.02 L14.17 48.34 L0 48.34 L14.17 48.34 L14.17 -64.35 A22.2255
185*ba7b86b1SPablo de Lara						 24.1253 0 0 1 28.35 -74.74" class="st12"/>
186*ba7b86b1SPablo de Lara		</g>
187*ba7b86b1SPablo de Lara		<g id="shape123-135" transform="translate(553.887,-111.814)">
188*ba7b86b1SPablo de Lara			<title>Sheet.123</title>
189*ba7b86b1SPablo de Lara			<desc>Stage 4: Modify Packet MAC header and transmit</desc>
190*ba7b86b1SPablo de Lara			<rect x="0" y="118.085" width="127.559" height="53.3286" class="st13"/>
191*ba7b86b1SPablo de Lara			<text x="8.01" y="133.95" class="st14">Stage 4: Modify Packet <tspan x="22.85" dy="1.2em" class="st5">MAC header and </tspan><tspan
192*ba7b86b1SPablo de Lara						x="43.12" dy="1.2em" class="st5">transmit </tspan></text>		</g>
193*ba7b86b1SPablo de Lara	</g>
194*ba7b86b1SPablo de Lara</svg>
195