DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH v2] doc/sample_app_ug:add a VXLAN sample guide
@ 2015-07-03  6:58 Jijiang Liu
  2015-07-03  8:53 ` Liu, Yong
  2015-07-27 22:28 ` Thomas Monjalon
  0 siblings, 2 replies; 4+ messages in thread
From: Jijiang Liu @ 2015-07-03  6:58 UTC (permalink / raw)
  To: dev

Add a VXLAN sample guide in the sample_app_ug directory.
 
It includes:
 
    - Add the overlay networking picture with svg format.
 
    - Add the TEP termination framework picture with svg format.
 
    - Add the tep_termination.rst file

    - Change the index.rst file for the above pictures index.

Signed-off-by: Jijiang Liu <jijiang.liu@intel.com>
Signed-off-by: Thomas Long <thomas.long@intel.com>

v2 changes:
    optimize the two pictures
    add tep_termination index in index.rst file
    fix a typo and a command line

---
 .../sample_app_ug/img/overlay_networking.svg       |  786 ++++++++++++++++++++
 .../sample_app_ug/img/tep_termination_arch.svg     |  548 ++++++++++++++
 doc/guides/sample_app_ug/index.rst                 |    3 +
 doc/guides/sample_app_ug/tep_termination.rst       |  321 ++++++++
 4 files changed, 1658 insertions(+), 0 deletions(-)
 create mode 100644 doc/guides/sample_app_ug/img/overlay_networking.svg
 create mode 100644 doc/guides/sample_app_ug/img/tep_termination_arch.svg
 create mode 100644 doc/guides/sample_app_ug/tep_termination.rst

diff --git a/doc/guides/sample_app_ug/img/overlay_networking.svg b/doc/guides/sample_app_ug/img/overlay_networking.svg
new file mode 100644
index 0000000..2ce440d
--- /dev/null
+++ b/doc/guides/sample_app_ug/img/overlay_networking.svg
@@ -0,0 +1,786 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<!-- Generated by Microsoft Visio, SVG Export overlay_networking.svg Page-1 -->
+<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"
+		xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="8.5in" height="11in" viewBox="0 0 612 792"
+		xml:space="preserve" color-interpolation-filters="sRGB" class="st29">
+	<v:documentProperties v:langID="1033" v:viewMarkup="false">
+		<v:userDefs>
+			<v:ud v:nameU="msvSubprocessMaster" v:prompt="" v:val="VT4(Rectangle)"/>
+			<v:ud v:nameU="msvNoAutoConnect" v:val="VT0(1):26"/>
+			<v:ud v:nameU="msvConvertTheme"/>
+		</v:userDefs>
+	</v:documentProperties>
+
+	<style type="text/css">
+	<![CDATA[
+		.st1 {visibility:visible}
+		.st2 {fill:#b2b2b2;fill-opacity:0.5;stroke:#b2b2b2;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.5}
+		.st3 {fill:#d8d8d8;fill-opacity:0.7;stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st4 {fill:#000000;font-family:Calibri;font-size:1.16666em}
+		.st5 {fill:#cdcdcd;fill-opacity:0.5;stroke:#cdcdcd;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.5}
+		.st6 {fill:#6b9bc7;stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st7 {fill:#000000;font-family:Calibri;font-size:0.833336em}
+		.st8 {fill:#f6d5b9;stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st9 {fill:#000000;font-family:Calibri;font-size:0.75em}
+		.st10 {fill:url(#grad0-21);stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st11 {fill:#000000;font-family:Calibri;font-size:1.00001em}
+		.st12 {fill:#00b0f0;fill-opacity:0.8;stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st13 {fill:#00b0f0;stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st14 {fill:#7030a0;fill-opacity:0.6;stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st15 {fill:url(#grad0-121)}
+		.st16 {stroke:#0070c0;stroke-linecap:round;stroke-linejoin:round;stroke-width:1}
+		.st17 {fill:url(#grad0-128)}
+		.st18 {stroke:#d26d19;stroke-linecap:round;stroke-linejoin:round;stroke-width:1}
+		.st19 {stroke:#cdcdcd;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.5;stroke-width:1.5}
+		.st20 {stroke:#d26d19;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}
+		.st21 {stroke:#0070c0;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}
+		.st22 {stroke:#7030a0;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}
+		.st23 {stroke:#43365a;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}
+		.st24 {stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}
+		.st25 {stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}
+		.st26 {fill:url(#grad0-236)}
+		.st27 {stroke:#7030a0;stroke-linecap:round;stroke-linejoin:round;stroke-width:1}
+		.st28 {fill:#8fa350;stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.5}
+		.st29 {fill:none;fill-rule:evenodd;font-size:12px;overflow:visible;stroke-linecap:square;stroke-miterlimit:3}
+	]]>
+	</style>
+
+	<defs id="Patterns_And_Gradients">
+		<linearGradient id="grad0-21" x1="0" y1="0" x2="1" y2="0" gradientTransform="rotate(270 0.5 0.5)">
+			<stop offset="0" stop-color="#f0f0f0" stop-opacity="1"/>
+			<stop offset="1" stop-color="#ffffff" stop-opacity="1"/>
+		</linearGradient>
+		<linearGradient id="grad0-121" x1="0" y1="0" x2="1" y2="0" gradientTransform="rotate(270 0.5 0.5)">
+			<stop offset="0" stop-color="#f0f0f0" stop-opacity="1"/>
+			<stop offset="1" stop-color="#0070c0" stop-opacity="1"/>
+		</linearGradient>
+		<linearGradient id="grad0-128" x1="0" y1="0" x2="1" y2="0" gradientTransform="rotate(270 0.5 0.5)">
+			<stop offset="0" stop-color="#f0f0f0" stop-opacity="1"/>
+			<stop offset="1" stop-color="#d26d19" stop-opacity="1"/>
+		</linearGradient>
+		<linearGradient id="grad0-236" x1="0" y1="0" x2="1" y2="0" gradientTransform="rotate(270 0.5 0.5)">
+			<stop offset="0" stop-color="#f0f0f0" stop-opacity="1"/>
+			<stop offset="1" stop-color="#7030a0" stop-opacity="1"/>
+		</linearGradient>
+	</defs>
+	<g v:mID="0" v:index="1" v:groupContext="foregroundPage">
+		<v:userDefs>
+			<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+			<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			<v:ud v:nameU="msvThemeOrder" v:val="VT0(0):26"/>
+		</v:userDefs>
+		<title>Page-1</title>
+		<v:pageProperties v:drawingScale="1" v:pageScale="1" v:drawingUnits="0" v:shadowOffsetX="9" v:shadowOffsetY="-9"/>
+		<v:layer v:name="Flowchart" v:index="0"/>
+		<v:layer v:name="Connector" v:index="1"/>
+		<g id="shape3-1" v:mID="3" v:groupContext="shape" transform="translate(85.5,-493.875)">
+			<title>Rounded rectangle</title>
+			<desc>Host</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="50.5382" cy="730.125" width="101.08" height="123.75"/>
+			<g id="shadow3-2" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M92.08 792 A9.00007 9.00007 -180 0 0 101.08 783 L101.08 677.25 A9.00007 9.00007 -180 0 0 92.08 668.25 L9
+							 668.25 A9.00007 9.00007 -180 0 0 0 677.25 L0 783 A9.00007 9.00007 -180 0 0 9 792 L92.08 792 Z"
+						class="st2"/>
+			</g>
+			<path d="M92.08 792 A9.00007 9.00007 -180 0 0 101.08 783 L101.08 677.25 A9.00007 9.00007 -180 0 0 92.08 668.25 L9 668.25
+						 A9.00007 9.00007 -180 0 0 0 677.25 L0 783 A9.00007 9.00007 -180 0 0 9 792 L92.08 792 Z" class="st3"/>
+			<text x="37.4" y="784.72" class="st4" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/><v:newlineChar/><v:newlineChar/><v:newlineChar/><v:newlineChar/><v:newlineChar/><v:newlineChar/>Host</text>		</g>
+		<g id="shape10-6" v:mID="10" v:groupContext="shape" transform="translate(33.75,-569.7)">
+			<title>Rounded rectangle.10</title>
+			<desc>VM</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="19.4595" cy="779.85" width="38.92" height="24.3"/>
+			<g id="shadow10-7" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M29.92 792 A9.00007 9.00007 -180 0 0 38.92 783 L38.92 776.7 A9.00007 9.00007 -180 0 0 29.92 767.7 L9 767.7
+							 A9.00007 9.00007 -180 0 0 0 776.7 L0 783 A9.00007 9.00007 -180 0 0 9 792 L29.92 792 Z" class="st5"/>
+			</g>
+			<path d="M29.92 792 A9.00007 9.00007 -180 0 0 38.92 783 L38.92 776.7 A9.00007 9.00007 -180 0 0 29.92 767.7 L9 767.7 A9.00007
+						 9.00007 -180 0 0 0 776.7 L0 783 A9.00007 9.00007 -180 0 0 9 792 L29.92 792 Z" class="st6"/>
+			<text x="12.35" y="782.85" class="st7" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VM</text>		</g>
+		<g id="shape11-11" v:mID="11" v:groupContext="shape" transform="translate(93.171,-566.775)">
+			<title>Rounded rectangle.11</title>
+			<desc>VNID 100</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="27.6645" cy="783.9" width="55.33" height="16.2"/>
+			<g id="shadow11-12" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M47.23 792 A8.10006 8.10006 -180 0 0 55.33 783.9 A8.10006 8.10006 -180 0 0 47.23 775.8 L8.1 775.8 A8.10006
+							 8.10006 -180 0 0 -0 783.9 A8.10006 8.10006 -180 0 0 8.1 792 L47.23 792 Z" class="st5"/>
+			</g>
+			<path d="M47.23 792 A8.10006 8.10006 -180 0 0 55.33 783.9 A8.10006 8.10006 -180 0 0 47.23 775.8 L8.1 775.8 A8.10006 8.10006
+						 -180 0 0 -0 783.9 A8.10006 8.10006 -180 0 0 8.1 792 L47.23 792 Z" class="st8"/>
+			<text x="10.44" y="786.6" class="st9" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VNID 100</text>		</g>
+		<g id="shape14-16" v:mID="14" v:groupContext="shape" v:layerMember="0" transform="translate(204.576,-381.375)">
+			<title>Object</title>
+			<desc>IP Network</desc>
+			<v:custProps>
+				<v:cp v:nameU="Cost" v:lbl="Cost" v:type="7" v:format="@" v:langID="1033"/>
+				<v:cp v:nameU="Duration" v:lbl="Duration" v:type="2" v:langID="1033"/>
+				<v:cp v:nameU="Resources" v:lbl="Resources" v:langID="1033"/>
+			</v:custProps>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(1,1,1,1)" v:tabSpace="42.5197"/>
+			<v:textRect cx="92.25" cy="708.331" width="184.5" height="167.337"/>
+			<g id="shadow14-17" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M26.52 755.72 A21.2239 24.0427 -180 0 0 57.09 776.07 A29.3964 33.3006 -180 0 0 110.26 768.54 A8.89171 10.0726
+							 -180 0 0 119.85 779.41 A33.8326 38.3261 -180 0 0 152.34 763.52 A21.0233 23.8155 -180 0 0 175.24 748.46
+							 A36.2371 30.7434 -123.25 0 0 161.38 716.14 A124.285 106.223 -59.84 0 0 184.46 684.3 A46.9314 46.8568
+							 -180 0 0 160.15 641.4 A28.0325 27.988 -180 0 0 106.53 654.79 A24.2803 21.6216 -26.25 0 0 66.28 656.03
+							 A34.8986 32.2655 -147.51 0 0 22.74 701.63 A27.2819 27.2385 -180 0 0 26.52 755.72 Z" class="st5"/>
+			</g>
+			<path d="M26.52 755.72 A21.2239 24.0427 -180 0 0 57.09 776.07 A29.3964 33.3006 -180 0 0 110.26 768.54 A8.89171 10.0726
+						 -180 0 0 119.85 779.41 A33.8326 38.3261 -180 0 0 152.34 763.52 A21.0233 23.8155 -180 0 0 175.24 748.46 A36.2371
+						 30.7434 -123.25 0 0 161.38 716.14 A124.285 106.223 -59.84 0 0 184.46 684.3 A46.9314 46.8568 -180 0 0 160.15
+						 641.4 A28.0325 27.988 -180 0 0 106.53 654.79 A24.2803 21.6216 -26.25 0 0 66.28 656.03 A34.8986 32.2655 -147.51
+						 0 0 22.74 701.63 A27.2819 27.2385 -180 0 0 26.52 755.72 Z" class="st10"/>
+			<text x="65.14" y="711.93" class="st11" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>IP Network</text>		</g>
+		<g id="shape1-23" v:mID="1" v:groupContext="shape" transform="translate(33.75,-521.1)">
+			<title>Rounded rectangle.1</title>
+			<desc>VM</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="19.4595" cy="779.85" width="38.92" height="24.3"/>
+			<g id="shadow1-24" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M29.92 792 A9.00007 9.00007 -180 0 0 38.92 783 L38.92 776.7 A9.00007 9.00007 -180 0 0 29.92 767.7 L9 767.7
+							 A9.00007 9.00007 -180 0 0 0 776.7 L0 783 A9.00007 9.00007 -180 0 0 9 792 L29.92 792 Z" class="st5"/>
+			</g>
+			<path d="M29.92 792 A9.00007 9.00007 -180 0 0 38.92 783 L38.92 776.7 A9.00007 9.00007 -180 0 0 29.92 767.7 L9 767.7 A9.00007
+						 9.00007 -180 0 0 0 776.7 L0 783 A9.00007 9.00007 -180 0 0 9 792 L29.92 792 Z" class="st6"/>
+			<text x="12.35" y="782.85" class="st7" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VM</text>		</g>
+		<g id="shape22-28" v:mID="22" v:groupContext="shape" transform="translate(93.171,-530.325)">
+			<title>Rounded rectangle.22</title>
+			<desc>VNID 101</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="27.6645" cy="783.9" width="55.33" height="16.2"/>
+			<g id="shadow22-29" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M47.23 792 A8.10006 8.10006 -180 0 0 55.33 783.9 A8.10006 8.10006 -180 0 0 47.23 775.8 L8.1 775.8 A8.10006
+							 8.10006 -180 0 0 -0 783.9 A8.10006 8.10006 -180 0 0 8.1 792 L47.23 792 Z" class="st5"/>
+			</g>
+			<path d="M47.23 792 A8.10006 8.10006 -180 0 0 55.33 783.9 A8.10006 8.10006 -180 0 0 47.23 775.8 L8.1 775.8 A8.10006 8.10006
+						 -180 0 0 -0 783.9 A8.10006 8.10006 -180 0 0 8.1 792 L47.23 792 Z" class="st12"/>
+			<text x="10.44" y="786.6" class="st9" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VNID 101</text>		</g>
+		<g id="shape23-33" v:mID="23" v:groupContext="shape" transform="translate(85.5,-288)">
+			<title>Rounded rectangle.23</title>
+			<desc>Host</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="51.75" cy="733.5" width="103.5" height="117"/>
+			<g id="shadow23-34" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M94.5 792 A9.00007 9.00007 -180 0 0 103.5 783 L103.5 684 A9.00007 9.00007 -180 0 0 94.5 675 L9 675 A9.00007
+							 9.00007 -180 0 0 0 684 L0 783 A9.00007 9.00007 -180 0 0 9 792 L94.5 792 Z" class="st2"/>
+			</g>
+			<path d="M94.5 792 A9.00007 9.00007 -180 0 0 103.5 783 L103.5 684 A9.00007 9.00007 -180 0 0 94.5 675 L9 675 A9.00007
+						 9.00007 -180 0 0 0 684 L0 783 A9.00007 9.00007 -180 0 0 9 792 L94.5 792 Z" class="st3"/>
+			<text x="38.61" y="788.1" class="st4" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/><v:newlineChar/><v:newlineChar/><v:newlineChar/><v:newlineChar/><v:newlineChar/><v:newlineChar/>Host</text>		</g>
+		<g id="shape24-38" v:mID="24" v:groupContext="shape" transform="translate(33.75,-362.1)">
+			<title>Rounded rectangle.24</title>
+			<desc>VM</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="20.25" cy="780.3" width="40.51" height="23.4"/>
+			<g id="shadow24-39" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M31.5 792 A9.00007 9.00007 -180 0 0 40.5 783 L40.5 777.6 A9.00007 9.00007 -180 0 0 31.5 768.6 L9 768.6 A9.00007
+							 9.00007 -180 0 0 0 777.6 L0 783 A9.00007 9.00007 -180 0 0 9 792 L31.5 792 Z" class="st5"/>
+			</g>
+			<path d="M31.5 792 A9.00007 9.00007 -180 0 0 40.5 783 L40.5 777.6 A9.00007 9.00007 -180 0 0 31.5 768.6 L9 768.6 A9.00007
+						 9.00007 -180 0 0 0 777.6 L0 783 A9.00007 9.00007 -180 0 0 9 792 L31.5 792 Z" class="st6"/>
+			<text x="13.14" y="783.3" class="st7" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VM</text>		</g>
+		<g id="shape25-43" v:mID="25" v:groupContext="shape" transform="translate(95.4166,-358.2)">
+			<title>Rounded rectangle.25</title>
+			<desc>VNID 100</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="28.7917" cy="784.2" width="57.59" height="15.6"/>
+			<g id="shadow25-44" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M49.78 792 A7.80006 7.80006 -180 0 0 57.58 784.2 A7.80006 7.80006 -180 0 0 49.78 776.4 L7.8 776.4 A7.80006
+							 7.80006 -180 0 0 -0 784.2 A7.80006 7.80006 -180 0 0 7.8 792 L49.78 792 Z" class="st5"/>
+			</g>
+			<path d="M49.78 792 A7.80006 7.80006 -180 0 0 57.58 784.2 A7.80006 7.80006 -180 0 0 49.78 776.4 L7.8 776.4 A7.80006 7.80006
+						 -180 0 0 -0 784.2 A7.80006 7.80006 -180 0 0 7.8 792 L49.78 792 Z" class="st8"/>
+			<text x="11.57" y="786.9" class="st9" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VNID 100</text>		</g>
+		<g id="shape31-48" v:mID="31" v:groupContext="shape" transform="translate(33.75,-315.3)">
+			<title>Rounded rectangle.31</title>
+			<desc>VM</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="20.6757" cy="780.3" width="41.36" height="23.4"/>
+			<g id="shadow31-49" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M32.35 792 A9.00007 9.00007 -180 0 0 41.35 783 L41.35 777.6 A9.00007 9.00007 -180 0 0 32.35 768.6 L9 768.6
+							 A9.00007 9.00007 -180 0 0 0 777.6 L0 783 A9.00007 9.00007 -180 0 0 9 792 L32.35 792 Z" class="st5"/>
+			</g>
+			<path d="M32.35 792 A9.00007 9.00007 -180 0 0 41.35 783 L41.35 777.6 A9.00007 9.00007 -180 0 0 32.35 768.6 L9 768.6 A9.00007
+						 9.00007 -180 0 0 0 777.6 L0 783 A9.00007 9.00007 -180 0 0 9 792 L32.35 792 Z" class="st6"/>
+			<text x="13.56" y="783.3" class="st7" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VM</text>		</g>
+		<g id="shape32-53" v:mID="32" v:groupContext="shape" transform="translate(95.4166,-323.1)">
+			<title>Rounded rectangle.32</title>
+			<desc>VNID 101</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="28.7917" cy="784.2" width="57.59" height="15.6"/>
+			<g id="shadow32-54" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M49.78 792 A7.80006 7.80006 -180 0 0 57.58 784.2 A7.80006 7.80006 -180 0 0 49.78 776.4 L7.8 776.4 A7.80006
+							 7.80006 -180 0 0 -0 784.2 A7.80006 7.80006 -180 0 0 7.8 792 L49.78 792 Z" class="st5"/>
+			</g>
+			<path d="M49.78 792 A7.80006 7.80006 -180 0 0 57.58 784.2 A7.80006 7.80006 -180 0 0 49.78 776.4 L7.8 776.4 A7.80006 7.80006
+						 -180 0 0 -0 784.2 A7.80006 7.80006 -180 0 0 7.8 792 L49.78 792 Z" class="st13"/>
+			<text x="11.57" y="786.9" class="st9" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VNID 101</text>		</g>
+		<g id="shape34-58" v:mID="34" v:groupContext="shape" transform="translate(407.076,-491.625)">
+			<title>Rounded rectangle.34</title>
+			<desc>Host</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="48.4618" cy="730.125" width="96.93" height="123.75"/>
+			<g id="shadow34-59" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M87.92 792 A9.00007 9.00007 -180 0 0 96.92 783 L96.92 677.25 A9.00007 9.00007 -180 0 0 87.92 668.25 L9 668.25
+							 A9.00007 9.00007 -180 0 0 0 677.25 L0 783 A9.00007 9.00007 -180 0 0 9 792 L87.92 792 Z" class="st2"/>
+			</g>
+			<path d="M87.92 792 A9.00007 9.00007 -180 0 0 96.92 783 L96.92 677.25 A9.00007 9.00007 -180 0 0 87.92 668.25 L9 668.25
+						 A9.00007 9.00007 -180 0 0 0 677.25 L0 783 A9.00007 9.00007 -180 0 0 9 792 L87.92 792 Z" class="st3"/>
+			<text x="35.33" y="784.72" class="st4" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/><v:newlineChar/><v:newlineChar/><v:newlineChar/><v:newlineChar/><v:newlineChar/><v:newlineChar/>Host</text>		</g>
+		<g id="shape35-63" v:mID="35" v:groupContext="shape" transform="translate(520.049,-580.313)">
+			<title>Rounded rectangle.35</title>
+			<desc>VM</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="18.8889" cy="779.625" width="37.78" height="24.75"/>
+			<g id="shadow35-64" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M28.78 792 A9.00007 9.00007 -180 0 0 37.78 783 L37.78 776.25 A9.00007 9.00007 -180 0 0 28.78 767.25 L9 767.25
+							 A9.00007 9.00007 -180 0 0 0 776.25 L0 783 A9.00007 9.00007 -180 0 0 9 792 L28.78 792 Z" class="st5"/>
+			</g>
+			<path d="M28.78 792 A9.00007 9.00007 -180 0 0 37.78 783 L37.78 776.25 A9.00007 9.00007 -180 0 0 28.78 767.25 L9 767.25
+						 A9.00007 9.00007 -180 0 0 0 776.25 L0 783 A9.00007 9.00007 -180 0 0 9 792 L28.78 792 Z" class="st6"/>
+			<text x="11.78" y="782.63" class="st7" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VM</text>		</g>
+		<g id="shape36-68" v:mID="36" v:groupContext="shape" transform="translate(441.076,-582.375)">
+			<title>Rounded rectangle.36</title>
+			<desc>VNID 100</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="26.4444" cy="783.75" width="52.89" height="16.5"/>
+			<g id="shadow36-69" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M44.64 792 A8.25006 8.25006 -180 0 0 52.89 783.75 A8.25006 8.25006 -180 0 0 44.64 775.5 L8.25 775.5 A8.25006
+							 8.25006 -180 0 0 0 783.75 A8.25006 8.25006 -180 0 0 8.25 792 L44.64 792 Z" class="st5"/>
+			</g>
+			<path d="M44.64 792 A8.25006 8.25006 -180 0 0 52.89 783.75 A8.25006 8.25006 -180 0 0 44.64 775.5 L8.25 775.5 A8.25006
+						 8.25006 -180 0 0 0 783.75 A8.25006 8.25006 -180 0 0 8.25 792 L44.64 792 Z" class="st8"/>
+			<text x="9.22" y="786.45" class="st9" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VNID 100</text>		</g>
+		<g id="shape37-73" v:mID="37" v:groupContext="shape" transform="translate(520.049,-541.125)">
+			<title>Rounded rectangle.37</title>
+			<desc>VM</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="18.8889" cy="779.625" width="37.78" height="24.75"/>
+			<g id="shadow37-74" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M28.78 792 A9.00007 9.00007 -180 0 0 37.78 783 L37.78 776.25 A9.00007 9.00007 -180 0 0 28.78 767.25 L9 767.25
+							 A9.00007 9.00007 -180 0 0 0 776.25 L0 783 A9.00007 9.00007 -180 0 0 9 792 L28.78 792 Z" class="st5"/>
+			</g>
+			<path d="M28.78 792 A9.00007 9.00007 -180 0 0 37.78 783 L37.78 776.25 A9.00007 9.00007 -180 0 0 28.78 767.25 L9 767.25
+						 A9.00007 9.00007 -180 0 0 0 776.25 L0 783 A9.00007 9.00007 -180 0 0 9 792 L28.78 792 Z" class="st6"/>
+			<text x="11.78" y="782.63" class="st7" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VM</text>		</g>
+		<g id="shape38-78" v:mID="38" v:groupContext="shape" transform="translate(441.076,-551.438)">
+			<title>Rounded rectangle.38</title>
+			<desc>VNID 101</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="26.4444" cy="783.75" width="52.89" height="16.5"/>
+			<g id="shadow38-79" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M44.64 792 A8.25006 8.25006 -180 0 0 52.89 783.75 A8.25006 8.25006 -180 0 0 44.64 775.5 L8.25 775.5 A8.25006
+							 8.25006 -180 0 0 0 783.75 A8.25006 8.25006 -180 0 0 8.25 792 L44.64 792 Z" class="st5"/>
+			</g>
+			<path d="M44.64 792 A8.25006 8.25006 -180 0 0 52.89 783.75 A8.25006 8.25006 -180 0 0 44.64 775.5 L8.25 775.5 A8.25006
+						 8.25006 -180 0 0 0 783.75 A8.25006 8.25006 -180 0 0 8.25 792 L44.64 792 Z" class="st12"/>
+			<text x="9.22" y="786.45" class="st9" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VNID 101</text>		</g>
+		<g id="shape40-83" v:mID="40" v:groupContext="shape" transform="translate(398.076,-288)">
+			<title>Rounded rectangle.40</title>
+			<desc>Host</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="52.9618" cy="727.875" width="105.93" height="128.25"/>
+			<g id="shadow40-84" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M96.92 792 A9.00007 9.00007 -180 0 0 105.92 783 L105.92 672.75 A9.00007 9.00007 -180 0 0 96.92 663.75 L9
+							 663.75 A9.00007 9.00007 -180 0 0 0 672.75 L0 783 A9.00007 9.00007 -180 0 0 9 792 L96.92 792 Z"
+						class="st2"/>
+			</g>
+			<path d="M96.92 792 A9.00007 9.00007 -180 0 0 105.92 783 L105.92 672.75 A9.00007 9.00007 -180 0 0 96.92 663.75 L9 663.75
+						 A9.00007 9.00007 -180 0 0 0 672.75 L0 783 A9.00007 9.00007 -180 0 0 9 792 L96.92 792 Z" class="st3"/>
+			<text x="39.83" y="782.47" class="st4" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/><v:newlineChar/><v:newlineChar/><v:newlineChar/><v:newlineChar/><v:newlineChar/><v:newlineChar/>Host</text>		</g>
+		<g id="shape41-88" v:mID="41" v:groupContext="shape" transform="translate(522,-369.225)">
+			<title>Rounded rectangle.41</title>
+			<desc>VM</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="21.1806" cy="779.175" width="42.37" height="25.65"/>
+			<g id="shadow41-89" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M33.36 792 A9.00007 9.00007 -180 0 0 42.36 783 L42.36 775.35 A9.00007 9.00007 -180 0 0 33.36 766.35 L9 766.35
+							 A9.00007 9.00007 -180 0 0 0 775.35 L0 783 A9.00007 9.00007 -180 0 0 9 792 L33.36 792 Z" class="st5"/>
+			</g>
+			<path d="M33.36 792 A9.00007 9.00007 -180 0 0 42.36 783 L42.36 775.35 A9.00007 9.00007 -180 0 0 33.36 766.35 L9 766.35
+						 A9.00007 9.00007 -180 0 0 0 775.35 L0 783 A9.00007 9.00007 -180 0 0 9 792 L33.36 792 Z" class="st6"/>
+			<text x="14.07" y="782.17" class="st7" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VM</text>		</g>
+		<g id="shape42-93" v:mID="42" v:groupContext="shape" transform="translate(436.201,-369)">
+			<title>Rounded rectangle.42</title>
+			<desc>VNID 100</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="29.6528" cy="783.45" width="59.31" height="17.1"/>
+			<g id="shadow42-94" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M50.76 792 A8.55007 8.55007 -180 0 0 59.31 783.45 A8.55007 8.55007 -180 0 0 50.76 774.9 L8.55 774.9 A8.55007
+							 8.55007 -180 0 0 0 783.45 A8.55007 8.55007 -180 0 0 8.55 792 L50.76 792 Z" class="st5"/>
+			</g>
+			<path d="M50.76 792 A8.55007 8.55007 -180 0 0 59.31 783.45 A8.55007 8.55007 -180 0 0 50.76 774.9 L8.55 774.9 A8.55007
+						 8.55007 -180 0 0 0 783.45 A8.55007 8.55007 -180 0 0 8.55 792 L50.76 792 Z" class="st8"/>
+			<text x="12.43" y="786.15" class="st9" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VNID 100</text>		</g>
+		<g id="shape43-98" v:mID="43" v:groupContext="shape" transform="translate(523.319,-317.925)">
+			<title>Rounded rectangle.43</title>
+			<desc>VM</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="21.1806" cy="779.175" width="42.37" height="25.65"/>
+			<g id="shadow43-99" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M33.36 792 A9.00007 9.00007 -180 0 0 42.36 783 L42.36 775.35 A9.00007 9.00007 -180 0 0 33.36 766.35 L9 766.35
+							 A9.00007 9.00007 -180 0 0 0 775.35 L0 783 A9.00007 9.00007 -180 0 0 9 792 L33.36 792 Z" class="st5"/>
+			</g>
+			<path d="M33.36 792 A9.00007 9.00007 -180 0 0 42.36 783 L42.36 775.35 A9.00007 9.00007 -180 0 0 33.36 766.35 L9 766.35
+						 A9.00007 9.00007 -180 0 0 0 775.35 L0 783 A9.00007 9.00007 -180 0 0 9 792 L33.36 792 Z" class="st6"/>
+			<text x="14.07" y="782.17" class="st7" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VM</text>		</g>
+		<g id="shape44-103" v:mID="44" v:groupContext="shape" transform="translate(436.201,-324.9)">
+			<title>Rounded rectangle.44</title>
+			<desc>VNID 102</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="29.6528" cy="783.45" width="59.31" height="17.1"/>
+			<g id="shadow44-104" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M50.76 792 A8.55007 8.55007 -180 0 0 59.31 783.45 A8.55007 8.55007 -180 0 0 50.76 774.9 L8.55 774.9 A8.55007
+							 8.55007 -180 0 0 0 783.45 A8.55007 8.55007 -180 0 0 8.55 792 L50.76 792 Z" class="st5"/>
+			</g>
+			<path d="M50.76 792 A8.55007 8.55007 -180 0 0 59.31 783.45 A8.55007 8.55007 -180 0 0 50.76 774.9 L8.55 774.9 A8.55007
+						 8.55007 -180 0 0 0 783.45 A8.55007 8.55007 -180 0 0 8.55 792 L50.76 792 Z" class="st14"/>
+			<text x="12.43" y="786.15" class="st9" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VNID 102</text>		</g>
+		<g id="shape46-108" v:mID="46" v:groupContext="shape" transform="translate(441.076,-518.438)">
+			<title>Rounded rectangle.46</title>
+			<desc>VNID 102</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="26.4444" cy="783.75" width="52.89" height="16.5"/>
+			<g id="shadow46-109" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M44.64 792 A8.25006 8.25006 -180 0 0 52.89 783.75 A8.25006 8.25006 -180 0 0 44.64 775.5 L8.25 775.5 A8.25006
+							 8.25006 -180 0 0 0 783.75 A8.25006 8.25006 -180 0 0 8.25 792 L44.64 792 Z" class="st5"/>
+			</g>
+			<path d="M44.64 792 A8.25006 8.25006 -180 0 0 52.89 783.75 A8.25006 8.25006 -180 0 0 44.64 775.5 L8.25 775.5 A8.25006
+						 8.25006 -180 0 0 0 783.75 A8.25006 8.25006 -180 0 0 8.25 792 L44.64 792 Z" class="st14"/>
+			<text x="9.22" y="786.45" class="st9" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VNID 102</text>		</g>
+		<g id="shape47-113" v:mID="47" v:groupContext="shape" transform="translate(520.049,-501.937)">
+			<title>Rounded rectangle.47</title>
+			<desc>VM</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="18.8889" cy="779.625" width="37.78" height="24.75"/>
+			<g id="shadow47-114" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M28.78 792 A9.00007 9.00007 -180 0 0 37.78 783 L37.78 776.25 A9.00007 9.00007 -180 0 0 28.78 767.25 L9 767.25
+							 A9.00007 9.00007 -180 0 0 0 776.25 L0 783 A9.00007 9.00007 -180 0 0 9 792 L28.78 792 Z" class="st5"/>
+			</g>
+			<path d="M28.78 792 A9.00007 9.00007 -180 0 0 37.78 783 L37.78 776.25 A9.00007 9.00007 -180 0 0 28.78 767.25 L9 767.25
+						 A9.00007 9.00007 -180 0 0 0 776.25 L0 783 A9.00007 9.00007 -180 0 0 9 792 L28.78 792 Z" class="st6"/>
+			<text x="11.78" y="782.63" class="st7" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VM</text>		</g>
+		<g id="shape48-118" v:mID="48" v:groupContext="shape" transform="translate(940.314,236.405) rotate(88.7578)">
+			<title>Arced arrow</title>
+			<v:userDefs>
+				<v:ud v:nameU="ControlX" v:val="VT0(0.125):0"/>
+				<v:ud v:nameU="Scale" v:val="VT0(1):26"/>
+				<v:ud v:nameU="AntiScale" v:val="VT0(1):26"/>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="ControlX" v:prompt="" v:val="VT0(0.0625):1"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<path d="M1.13 787.65 L3.31 788.21 L0 792 L-1.04 787.08 L1.13 787.65 ZM206.44 787.65 L204.26 788.21 L207.57 792 L208.62
+						 787.08 L206.44 787.65 Z" class="st15"/>
+			<path d="M1.13 787.65 A106.681 106.681 0 0 1 206.44 787.65" class="st16"/>
+			<path d="M1.13 787.65 L3.31 788.21 L0 792 L-1.04 787.08 L1.13 787.65" class="st16"/>
+			<path d="M206.44 787.65 L204.26 788.21 L207.57 792 L208.62 787.08 L206.44 787.65" class="st16"/>
+		</g>
+		<g id="shape49-125" v:mID="49" v:groupContext="shape" transform="translate(489.312,991.905) rotate(176.508)">
+			<title>Arced arrow.49</title>
+			<v:userDefs>
+				<v:ud v:nameU="ControlX" v:val="VT0(0.125):0"/>
+				<v:ud v:nameU="Scale" v:val="VT0(1):26"/>
+				<v:ud v:nameU="AntiScale" v:val="VT0(1):26"/>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="ControlX" v:prompt="" v:val="VT0(0.0625):1"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<path d="M2.72 788.42 L4.51 789.78 L0 792 L0.93 787.06 L2.72 788.42 ZM292.83 788.42 L291.03 789.78 L295.55 792 L294.62
+						 787.06 L292.83 788.42 Z" class="st17"/>
+			<path d="M2.72 788.42 A183.886 183.886 0 0 1 292.83 788.42" class="st18"/>
+			<path d="M2.72 788.42 L4.51 789.78 L0 792 L0.93 787.06 L2.72 788.42" class="st18"/>
+			<path d="M292.83 788.42 L291.03 789.78 L295.55 792 L294.62 787.06 L292.83 788.42" class="st18"/>
+		</g>
+		<g id="shape50-132" v:mID="50" v:groupContext="shape" transform="translate(120.726,-365.342) rotate(-2.33544)">
+			<title>Arced arrow.50</title>
+			<v:userDefs>
+				<v:ud v:nameU="ControlX" v:val="VT0(0.125):0"/>
+				<v:ud v:nameU="Scale" v:val="VT0(1):26"/>
+				<v:ud v:nameU="AntiScale" v:val="VT0(1):26"/>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="ControlX" v:prompt="" v:val="VT0(0.0625):1"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<path d="M3.79 789.57 L5 791.47 L0 792 L2.58 787.68 L3.79 789.57 ZM279.65 789.57 L278.43 791.47 L283.44 792 L280.86 787.68
+						 L279.65 789.57 Z" class="st17"/>
+			<path d="M3.79 789.57 A259.249 259.249 0 0 1 279.65 789.57" class="st18"/>
+			<path d="M3.79 789.57 L5 791.47 L0 792 L2.58 787.68 L3.79 789.57" class="st18"/>
+			<path d="M279.65 789.57 L278.43 791.47 L283.44 792 L280.86 787.68 L279.65 789.57" class="st18"/>
+		</g>
+		<g id="shape4-138" v:mID="4" v:groupContext="shape" transform="translate(348.104,-324.947) rotate(20.2291)">
+			<title>Sheet.4</title>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow4-139" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.84909,0.853261)" class="st1">
+				<path d="M0 792 L22.56 792" class="st19"/>
+			</g>
+			<path d="M0 792 L22.56 792" class="st20"/>
+		</g>
+		<g id="shape5-145" v:mID="5" v:groupContext="shape" transform="translate(-74.2157,-312.797) rotate(-10.8671)">
+			<title>Sheet.5</title>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow5-146" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,2.77556E-017,-2.77556E-017,1,1.14269,1.68566)" class="st1">
+				<path d="M0 792 L20.69 792" class="st19"/>
+			</g>
+			<path d="M0 792 L20.69 792" class="st21"/>
+		</g>
+		<g id="shape6-152" v:mID="6" v:groupContext="shape" transform="translate(327.757,-539.646) rotate(18.7888)">
+			<title>Sheet.6</title>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow6-153" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.82706,0.89947)" class="st1">
+				<path d="M0 792 L21.66 792" class="st19"/>
+			</g>
+			<path d="M0 792 L21.66 792" class="st20"/>
+		</g>
+		<g id="shape7-159" v:mID="7" v:groupContext="shape" transform="translate(-121.163,-509.165) rotate(-14.1663)">
+			<title>Sheet.7</title>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow7-160" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.04379,1.74863)" class="st1">
+				<path d="M0 792 L21.15 792" class="st19"/>
+			</g>
+			<path d="M0 792 L21.15 792" class="st21"/>
+		</g>
+		<g id="shape8-166" v:mID="8" v:groupContext="shape" transform="translate(431.534,-588.161) rotate(-4.52117)">
+			<title>Sheet.8</title>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow8-167" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.32201,1.54903)" class="st1">
+				<path d="M0 792 L26.16 792" class="st19"/>
+			</g>
+			<path d="M0 792 L26.16 792" class="st20"/>
+		</g>
+		<g id="shape13-173" v:mID="13" v:groupContext="shape" transform="translate(676.771,-538.302) rotate(13.3451)">
+			<title>Sheet.13</title>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow13-174" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.73349,1.06874)" class="st1">
+				<path d="M0 792 L26.81 792" class="st19"/>
+			</g>
+			<path d="M0 792 L26.81 792" class="st21"/>
+		</g>
+		<g id="shape15-180" v:mID="15" v:groupContext="shape" transform="translate(833.452,-450.238) rotate(25.3816)">
+			<title>Sheet.15</title>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow15-181" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.91825,0.683753)" class="st1">
+				<path d="M0 792 L28.87 792" class="st19"/>
+			</g>
+			<path d="M0 792 L28.87 792" class="st22"/>
+		</g>
+		<g id="shape16-187" v:mID="16" v:groupContext="shape" transform="translate(362.881,-366.366) rotate(-9.64002)">
+			<title>Sheet.16</title>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow16-188" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.17853,1.6608)" class="st1">
+				<path d="M0 792 L26.87 792" class="st19"/>
+			</g>
+			<path d="M0 792 L26.87 792" class="st20"/>
+		</g>
+		<g id="shape17-194" v:mID="17" v:groupContext="shape" transform="translate(572.033,-329.744) rotate(5.54482)">
+			<title>Sheet.17</title>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow17-195" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.5724,1.29412)" class="st1">
+				<path d="M0 792 L27.94 792" class="st19"/>
+			</g>
+			<path d="M0 792 L27.94 792" class="st23"/>
+		</g>
+		<g id="shape18-201" v:mID="18" v:groupContext="shape" transform="translate(-464.654,-1.71391) rotate(-55.621)">
+			<title>Sheet.18</title>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow18-202" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,-0.375346,2.00158)" class="st1">
+				<path d="M0 792 L71.36 792" class="st19"/>
+			</g>
+			<path d="M0 792 L71.36 792" class="st24"/>
+		</g>
+		<g id="shape19-208" v:mID="19" v:groupContext="shape" transform="translate(1074.07,13.0882) rotate(62.5098)">
+			<title>Sheet.19</title>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow19-209" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.94211,-0.612711)" class="st1">
+				<path d="M0 792 L57.58 792" class="st19"/>
+			</g>
+			<path d="M0 792 L57.58 792" class="st24"/>
+		</g>
+		<g id="shape20-215" v:mID="20" v:groupContext="shape" transform="translate(835.264,-218.138) rotate(54.9898)">
+			<title>Sheet.20</title>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow20-216" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,2.00559,-0.353273)" class="st1">
+				<path d="M0 792 L62.72 792" class="st19"/>
+			</g>
+			<path d="M0 792 L62.72 792" class="st25"/>
+		</g>
+		<g id="shape21-222" v:mID="21" v:groupContext="shape" transform="translate(985.087,779.949) rotate(133.129)">
+			<title>Sheet.21</title>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow21-223" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,0.0664758,-2.03538)" class="st1">
+				<path d="M0 792 L43.41 792" class="st19"/>
+			</g>
+			<path d="M0 792 L43.41 792" class="st24"/>
+		</g>
+		<g id="shape68-229" v:mID="68" v:groupContext="shape" transform="translate(933.635,852.514) rotate(141.544)">
+			<title>Arced arrow.68</title>
+			<v:userDefs>
+				<v:ud v:nameU="ControlX" v:val="VT0(0.125):0"/>
+				<v:ud v:nameU="Scale" v:val="VT0(1):26"/>
+				<v:ud v:nameU="AntiScale" v:val="VT0(1):26"/>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="ControlX" v:prompt="" v:val="VT0(0):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<path d="M0 792 A329.322 329.322 0 0 1 367.87 792" class="st16"/>
+		</g>
+		<g id="shape70-233" v:mID="70" v:groupContext="shape" transform="translate(-355.547,438.576) rotate(-88.5548)">
+			<title>Arced arrow.70</title>
+			<v:userDefs>
+				<v:ud v:nameU="ControlX" v:val="VT0(0.125):0"/>
+				<v:ud v:nameU="Scale" v:val="VT0(1):26"/>
+				<v:ud v:nameU="AntiScale" v:val="VT0(1):26"/>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="ControlX" v:prompt="" v:val="VT0(0.06400492):1"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<path d="M1.04 787.51 L3.29 788.03 L0 792 L-1.2 786.99 L1.04 787.51 ZM192.26 787.51 L190.01 788.03 L193.3 792 L194.5
+						 786.99 L192.26 787.51 Z" class="st26"/>
+			<path d="M1.04 787.51 A98.7059 98.7059 0 0 1 192.26 787.51" class="st27"/>
+			<path d="M1.04 787.51 L3.29 788.03 L0 792 L-1.2 786.99 L1.04 787.51" class="st27"/>
+			<path d="M192.26 787.51 L190.01 788.03 L193.3 792 L194.5 786.99 L192.26 787.51" class="st27"/>
+		</g>
+		<g id="shape84-240" v:mID="84" v:groupContext="shape" transform="translate(157.5,-510.75)">
+			<title>Sheet.84</title>
+			<desc>TEP</desc>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="11.25" cy="753.75" width="22.5" height="76.5"/>
+			<rect x="0" y="715.5" width="22.5" height="76.5" class="st28"/>
+			<text x="4.54" y="756.45" class="st9" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>TEP</text>		</g>
+		<g id="shape86-243" v:mID="86" v:groupContext="shape" transform="translate(162,-315)">
+			<title>Sheet.86</title>
+			<desc>TEP</desc>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="11.8125" cy="753.75" width="23.63" height="76.5"/>
+			<rect x="0" y="715.5" width="23.625" height="76.5" class="st28"/>
+			<text x="5.1" y="756.45" class="st9" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>TEP</text>		</g>
+		<g id="shape87-246" v:mID="87" v:groupContext="shape" transform="translate(405,-324)">
+			<title>Sheet.87</title>
+			<desc>TEP</desc>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="11.8125" cy="753.75" width="23.63" height="76.5"/>
+			<rect x="0" y="715.5" width="23.625" height="76.5" class="st28"/>
+			<text x="5.1" y="756.45" class="st9" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>TEP</text>		</g>
+		<g id="shape88-249" v:mID="88" v:groupContext="shape" transform="translate(411.75,-513)">
+			<title>Sheet.88</title>
+			<desc>TEP</desc>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="11.25" cy="754.875" width="22.5" height="74.25"/>
+			<rect x="0" y="717.75" width="22.5" height="74.25" class="st28"/>
+			<text x="4.54" y="757.58" class="st9" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>TEP</text>		</g>
+	</g>
+</svg>
diff --git a/doc/guides/sample_app_ug/img/tep_termination_arch.svg b/doc/guides/sample_app_ug/img/tep_termination_arch.svg
new file mode 100644
index 0000000..6f4754d
--- /dev/null
+++ b/doc/guides/sample_app_ug/img/tep_termination_arch.svg
@@ -0,0 +1,548 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<!-- Generated by Microsoft Visio, SVG Export VXLAN.svg Page-1 -->
+<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"
+		xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="8.5in" height="11in" viewBox="0 0 612 792"
+		xml:space="preserve" color-interpolation-filters="sRGB" class="st24">
+	<v:documentProperties v:langID="1033" v:viewMarkup="false">
+		<v:userDefs>
+			<v:ud v:nameU="msvSubprocessMaster" v:prompt="" v:val="VT4(Rectangle)"/>
+			<v:ud v:nameU="msvNoAutoConnect" v:val="VT0(1):26"/>
+			<v:ud v:nameU="msvConvertTheme"/>
+		</v:userDefs>
+	</v:documentProperties>
+
+	<style type="text/css">
+	<![CDATA[
+		.st1 {visibility:visible}
+		.st2 {fill:#cdcdcd;fill-opacity:0.5;stroke:#cdcdcd;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.5}
+		.st3 {fill:#d1dab4;stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st4 {fill:#6b9bc7;stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st5 {fill:#000000;font-family:Calibri;font-size:0.916672em;font-weight:bold}
+		.st6 {fill:#92d050;stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st7 {fill:#000000;font-family:Calibri;font-size:0.833336em}
+		.st8 {font-size:1em}
+		.st9 {fill:#3e75a6;stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st10 {fill:#d8d8d8;stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.24}
+		.st11 {fill:#404040;fill-opacity:1;stroke:#404040;stroke-opacity:1;stroke-width:0.08695652173913}
+		.st12 {fill:none;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st13 {fill:#000000;font-family:Calibri;font-size:1.00001em;font-weight:bold}
+		.st14 {fill:#000000;font-family:Calibri;font-size:1.00001em}
+		.st15 {fill:#000000;font-family:Calibri;font-size:1.16666em;font-weight:bold}
+		.st16 {fill:url(#grad0-72);stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st17 {fill:url(#grad0-83);stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st18 {fill:#f2c096;stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st19 {fill:#e1ebf3;stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st20 {fill:#000000;font-family:Calibri;font-size:1.16666em}
+		.st21 {font-size:0.857157em}
+		.st22 {fill:#d26d19;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
+		.st23 {fill:#a6c3dd;stroke:#404040;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
+		.st24 {fill:none;fill-rule:evenodd;font-size:12px;overflow:visible;stroke-linecap:square;stroke-miterlimit:3}
+	]]>
+	</style>
+
+	<defs id="Patterns_And_Gradients">
+		<linearGradient id="grad0-72" x1="0" y1="0" x2="1" y2="0" gradientTransform="rotate(270 0.5 0.5)">
+			<stop offset="0" stop-color="#efaf7a" stop-opacity="1"/>
+			<stop offset="1" stop-color="#f2bf96" stop-opacity="1"/>
+		</linearGradient>
+		<linearGradient id="grad0-83" x1="0" y1="0" x2="1" y2="0" gradientTransform="rotate(270 0.5 0.5)">
+			<stop offset="0" stop-color="#f0f0f0" stop-opacity="1"/>
+			<stop offset="1" stop-color="#ffffff" stop-opacity="1"/>
+		</linearGradient>
+	</defs>
+	<defs id="Markers">
+		<g id="lend13">
+			<path d="M 3 1 L 0 0 L 3 -1 L 3 1 " style="stroke:none"/>
+		</g>
+		<marker id="mrkr13-28" class="st11" v:arrowType="13" v:arrowSize="2" v:setback="34.5" refX="-34.5" orient="auto"
+				markerUnits="strokeWidth" overflow="visible">
+			<use xlink:href="#lend13" transform="scale(-11.5,-11.5) "/>
+		</marker>
+	</defs>
+	<g v:mID="0" v:index="1" v:groupContext="foregroundPage">
+		<v:userDefs>
+			<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+			<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			<v:ud v:nameU="msvThemeOrder" v:val="VT0(0):26"/>
+		</v:userDefs>
+		<title>Page-1</title>
+		<v:pageProperties v:drawingScale="1" v:pageScale="1" v:drawingUnits="0" v:shadowOffsetX="9" v:shadowOffsetY="-9"/>
+		<v:layer v:name="Flowchart" v:index="0"/>
+		<g id="shape33-1" v:mID="33" v:groupContext="shape" transform="translate(117,-432)">
+			<title>Rectangle.18</title>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow33-2" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<rect x="0" y="666" width="342" height="126" class="st2"/>
+			</g>
+			<rect x="0" y="666" width="342" height="126" class="st3"/>
+		</g>
+		<g id="shape10-5" v:mID="10" v:groupContext="shape" transform="translate(216,-522)">
+			<title>Rounded rectangle.10</title>
+			<desc>Userspace vhost Interface</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="74.25" cy="778.5" width="148.5" height="27"/>
+			<g id="shadow10-6" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M139.5 792 A9.00007 9.00007 -180 0 0 148.5 783 L148.5 774 A9.00007 9.00007 -180 0 0 139.5 765 L9 765 A9.00007
+							 9.00007 -180 0 0 0 774 L0 783 A9.00007 9.00007 -180 0 0 9 792 L139.5 792 Z" class="st2"/>
+			</g>
+			<path d="M139.5 792 A9.00007 9.00007 -180 0 0 148.5 783 L148.5 774 A9.00007 9.00007 -180 0 0 139.5 765 L9 765 A9.00007
+						 9.00007 -180 0 0 0 774 L0 783 A9.00007 9.00007 -180 0 0 9 792 L139.5 792 Z" class="st4"/>
+			<text x="15.14" y="781.8" class="st5" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>Userspace vhost Interface  </text>		</g>
+		<g id="shape12-10" v:mID="12" v:groupContext="shape" transform="translate(355.5,-481.5)">
+			<title>Rounded rectangle.12</title>
+			<desc>Encapsulation</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="45" cy="785.25" width="90" height="13.5"/>
+			<g id="shadow12-11" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M83.25 792 A6.75005 6.75005 -180 0 0 90 785.25 A6.75005 6.75005 -180 0 0 83.25 778.5 L6.75 778.5 A6.75005
+							 6.75005 -180 0 0 0 785.25 A6.75005 6.75005 -180 0 0 6.75 792 L83.25 792 Z" class="st2"/>
+			</g>
+			<path d="M83.25 792 A6.75005 6.75005 -180 0 0 90 785.25 A6.75005 6.75005 -180 0 0 83.25 778.5 L6.75 778.5 A6.75005 6.75005
+						 -180 0 0 0 785.25 A6.75005 6.75005 -180 0 0 6.75 792 L83.25 792 Z" class="st6"/>
+			<text x="16.58" y="788.25" class="st7" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Encapsulation</text>		</g>
+		<g id="shape13-15" v:mID="13" v:groupContext="shape" transform="translate(153,-483.75)">
+			<title>Rounded rectangle.13</title>
+			<desc>Decapsulation</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="36" cy="785.25" width="72" height="13.5"/>
+			<g id="shadow13-16" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M65.25 792 A6.75005 6.75005 -180 0 0 72 785.25 A6.75005 6.75005 -180 0 0 65.25 778.5 L6.75 778.5 A6.75005
+							 6.75005 -180 0 0 0 785.25 A6.75005 6.75005 -180 0 0 6.75 792 L65.25 792 Z" class="st2"/>
+			</g>
+			<path d="M65.25 792 A6.75005 6.75005 -180 0 0 72 785.25 A6.75005 6.75005 -180 0 0 65.25 778.5 L6.75 778.5 A6.75005 6.75005
+						 -180 0 0 0 785.25 A6.75005 6.75005 -180 0 0 6.75 792 L65.25 792 Z" class="st6"/>
+			<text x="8.22" y="788.25" class="st7" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>D<tspan class="st8"
+						v:langID="2052">ecap</tspan>sulation</text>		</g>
+		<g id="shape35-21" v:mID="35" v:groupContext="shape" transform="translate(117,-324)">
+			<title>Rectangle.18.35</title>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow35-22" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<rect x="0" y="697.5" width="342" height="94.5" class="st2"/>
+			</g>
+			<rect x="0" y="697.5" width="342" height="94.5" class="st9"/>
+		</g>
+		<g id="shape15-25" v:mID="15" v:groupContext="shape" transform="translate(259.654,-263.25)">
+			<title>Data store</title>
+			<v:userDefs>
+				<v:ud v:nameU="CH" v:val="VT0(5):26"/>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+			</v:userDefs>
+			<path d="M0 600.13 A28.3465 10.6299 0 0 1 56.69 600.13 A28.3465 10.6299 0 0 1 -0 600.13 ZM0 600.13 L0 781.37 A28.3465
+						 10.6299 -180 1 0 56.69 781.37 L56.69 600.13 A28.3465 10.6299 0 0 1 0 600.13 Z" class="st10"/>
+		</g>
+		<g id="shape16-29" v:mID="16" v:groupContext="shape" transform="translate(324,-391.5)">
+			<title>Rounded rectangle.16</title>
+			<desc>Inner IP/L4 checksum offload</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="67.5" cy="785.25" width="135" height="13.5"/>
+			<g id="shadow16-30" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M128.25 792 A6.75005 6.75005 -180 0 0 135 785.25 A6.75005 6.75005 -180 0 0 128.25 778.5 L6.75 778.5 A6.75005
+							 6.75005 -180 0 0 0 785.25 A6.75005 6.75005 -180 0 0 6.75 792 L128.25 792 Z" class="st2"/>
+			</g>
+			<path d="M128.25 792 A6.75005 6.75005 -180 0 0 135 785.25 A6.75005 6.75005 -180 0 0 128.25 778.5 L6.75 778.5 A6.75005
+						 6.75005 -180 0 0 0 785.25 A6.75005 6.75005 -180 0 0 6.75 792 L128.25 792 Z" class="st6"/>
+			<text x="8.27" y="788.25" class="st7" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>Inner IP/L4 checksum offload</text>		</g>
+		<g id="shape17-34" v:mID="17" v:groupContext="shape" transform="translate(144,-337.5)">
+			<title>Rounded rectangle.17</title>
+			<desc>UDP port configuration</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="54" cy="785.25" width="108" height="13.5"/>
+			<g id="shadow17-35" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M101.25 792 A6.75005 6.75005 -180 0 0 108 785.25 A6.75005 6.75005 -180 0 0 101.25 778.5 L6.75 778.5 A6.75005
+							 6.75005 -180 0 0 0 785.25 A6.75005 6.75005 -180 0 0 6.75 792 L101.25 792 Z" class="st2"/>
+			</g>
+			<path d="M101.25 792 A6.75005 6.75005 -180 0 0 108 785.25 A6.75005 6.75005 -180 0 0 101.25 778.5 L6.75 778.5 A6.75005
+						 6.75005 -180 0 0 0 785.25 A6.75005 6.75005 -180 0 0 6.75 792 L101.25 792 Z" class="st6"/>
+			<text x="6.93" y="788.25" class="st7" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>UDP port configuration</text>		</g>
+		<g id="shape18-39" v:mID="18" v:groupContext="shape" transform="translate(145.346,-357.75)">
+			<title>Rounded rectangle.18</title>
+			<desc>Inner IP/L4 csum verify</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="53.3268" cy="785.25" width="106.66" height="13.5"/>
+			<g id="shadow18-40" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M99.9 792 A6.75005 6.75005 -180 0 0 106.65 785.25 A6.75005 6.75005 -180 0 0 99.9 778.5 L6.75 778.5 A6.75005
+							 6.75005 -180 0 0 0 785.25 A6.75005 6.75005 -180 0 0 6.75 792 L99.9 792 Z" class="st2"/>
+			</g>
+			<path d="M99.9 792 A6.75005 6.75005 -180 0 0 106.65 785.25 A6.75005 6.75005 -180 0 0 99.9 778.5 L6.75 778.5 A6.75005
+						 6.75005 -180 0 0 0 785.25 A6.75005 6.75005 -180 0 0 6.75 792 L99.9 792 Z" class="st6"/>
+			<text x="6.66" y="788.25" class="st7" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>Inner IP/L4<tspan
+						class="st8" v:langID="1033"> </tspan><tspan class="st8" v:langID="1033">csum</tspan> verify</text>		</g>
+		<g id="shape19-46" v:mID="19" v:groupContext="shape" transform="translate(162,-378)">
+			<title>Rounded rectangle.19</title>
+			<desc>Tunnel Filter</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="45" cy="785.25" width="90" height="13.5"/>
+			<g id="shadow19-47" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M83.25 792 A6.75005 6.75005 -180 0 0 90 785.25 A6.75005 6.75005 -180 0 0 83.25 778.5 L6.75 778.5 A6.75005
+							 6.75005 -180 0 0 0 785.25 A6.75005 6.75005 -180 0 0 6.75 792 L83.25 792 Z" class="st2"/>
+			</g>
+			<path d="M83.25 792 A6.75005 6.75005 -180 0 0 90 785.25 A6.75005 6.75005 -180 0 0 83.25 778.5 L6.75 778.5 A6.75005 6.75005
+						 -180 0 0 0 785.25 A6.75005 6.75005 -180 0 0 6.75 792 L83.25 792 Z" class="st6"/>
+			<text x="18.29" y="788.25" class="st7" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Tunnel <tspan
+						class="st8" v:langID="2052"> </tspan>F<tspan class="st8" v:langID="2052">ilter</tspan></text>		</g>
+		<g id="shape20-53" v:mID="20" v:groupContext="shape" transform="translate(162,-398.25)">
+			<title>Rounded rectangle.20</title>
+			<desc>Packet Type</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="45" cy="785.25" width="90" height="13.5"/>
+			<g id="shadow20-54" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M83.25 792 A6.75005 6.75005 -180 0 0 90 785.25 A6.75005 6.75005 -180 0 0 83.25 778.5 L6.75 778.5 A6.75005
+							 6.75005 -180 0 0 0 785.25 A6.75005 6.75005 -180 0 0 6.75 792 L83.25 792 Z" class="st2"/>
+			</g>
+			<path d="M83.25 792 A6.75005 6.75005 -180 0 0 90 785.25 A6.75005 6.75005 -180 0 0 83.25 778.5 L6.75 778.5 A6.75005 6.75005
+						 -180 0 0 0 785.25 A6.75005 6.75005 -180 0 0 6.75 792 L83.25 792 Z" class="st6"/>
+			<text x="20.53" y="788.25" class="st7" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Packet Type</text>		</g>
+		<g id="shape27-58" v:mID="27" v:groupContext="shape" transform="translate(326.25,-441)">
+			<title>Sheet.27</title>
+			<desc>DPDK Application</desc>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="54" cy="783" width="108" height="18"/>
+			<rect x="0" y="774" width="108" height="18" class="st12"/>
+			<text x="10.11" y="786.6" class="st13" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>DPDK Application</text>		</g>
+		<g id="shape26-61" v:mID="26" v:groupContext="shape" transform="translate(324,-279)">
+			<title>Sheet.26</title>
+			<desc>VXLAN Tunnel</desc>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="45" cy="778.5" width="90" height="27"/>
+			<rect x="0" y="765" width="90" height="27" class="st12"/>
+			<text x="10.51" y="782.1" class="st14" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VXLAN Tunnel</text>		</g>
+		<g id="shape28-64" v:mID="28" v:groupContext="shape" transform="translate(342,-333)">
+			<title>Sheet.28</title>
+			<desc>NIC</desc>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="45" cy="783" width="90" height="18"/>
+			<rect x="0" y="774" width="90" height="18" class="st12"/>
+			<text x="36.4" y="787.2" class="st15" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>NIC</text>		</g>
+		<g id="shape29-67" v:mID="29" v:groupContext="shape" transform="translate(-517.5,270) rotate(-90) scale(-1,1)">
+			<title>45 degree single</title>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow29-68" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M0 787.5 L4.5 783 L4.5 785.97 L252 785.97 L252 789.03 L4.5 789.03 L4.5 792 L0 787.5 Z" class="st2"/>
+			</g>
+			<path d="M0 787.5 L4.5 783 L4.5 785.97 L252 785.97 L252 789.03 L4.5 789.03 L4.5 792 L0 787.5 Z" class="st16"/>
+		</g>
+		<g id="shape30-73" v:mID="30" v:groupContext="shape" transform="translate(1093.5,522) rotate(90) scale(-1,1)">
+			<title>45 degree single.30</title>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow30-74" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,-1.44,-1.44)" class="st1">
+				<path d="M0 787.5 L4.5 783 L4.5 785.97 L252 785.97 L252 789.03 L4.5 789.03 L4.5 792 L0 787.5 Z" class="st2"/>
+			</g>
+			<path d="M0 787.5 L4.5 783 L4.5 785.97 L252 785.97 L252 789.03 L4.5 789.03 L4.5 792 L0 787.5 Z" class="st16"/>
+		</g>
+		<g id="shape14-78" v:mID="14" v:groupContext="shape" v:layerMember="0" transform="translate(207,-234)">
+			<title>Object</title>
+			<desc>WAN/LAN</desc>
+			<v:custProps>
+				<v:cp v:nameU="Cost" v:lbl="Cost" v:type="7" v:format="@" v:langID="1033"/>
+				<v:cp v:nameU="Duration" v:lbl="Duration" v:type="2" v:langID="1033"/>
+				<v:cp v:nameU="Resources" v:lbl="Resources" v:langID="1033"/>
+			</v:custProps>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(1,1,1,1)" v:tabSpace="42.5197"/>
+			<v:textRect cx="83.25" cy="769.5" width="166.5" height="45"/>
+			<g id="shadow14-79" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M23.93 782.24 A19.1532 6.46551 -180 0 0 51.52 787.72 A26.5285 8.95514 -180 0 0 99.5 785.69 A8.02422 2.70871
+							 -180 0 0 108.16 788.62 A30.5319 10.3066 -180 0 0 137.48 784.34 A18.9723 6.40442 -180 0 0 158.14 780.29
+							 A29.3596 9.20857 -176.98 0 0 145.63 771.6 A100.331 31.9328 -2.78 0 0 166.47 763.04 A42.3527 12.6007
+							 -180 0 0 144.52 751.5 A25.2977 7.52648 -180 0 0 96.13 755.1 A21.4707 5.9338 -1.58 0 0 59.81 755.43 A30.834
+							 8.86245 -178.72 0 0 20.52 767.7 A24.6202 7.32494 -180 0 0 23.93 782.24 Z" class="st2"/>
+			</g>
+			<path d="M23.93 782.24 A19.1532 6.46551 -180 0 0 51.52 787.72 A26.5285 8.95514 -180 0 0 99.5 785.69 A8.02422 2.70871
+						 -180 0 0 108.16 788.62 A30.5319 10.3066 -180 0 0 137.48 784.34 A18.9723 6.40442 -180 0 0 158.14 780.29 A29.3596
+						 9.20857 -176.98 0 0 145.63 771.6 A100.331 31.9328 -2.78 0 0 166.47 763.04 A42.3527 12.6007 -180 0 0 144.52
+						 751.5 A25.2977 7.52648 -180 0 0 96.13 755.1 A21.4707 5.9338 -1.58 0 0 59.81 755.43 A30.834 8.86245 -178.72
+						 0 0 20.52 767.7 A24.6202 7.32494 -180 0 0 23.93 782.24 Z" class="st17"/>
+			<text x="53.23" y="773.7" class="st15" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>WAN/LAN</text>		</g>
+		<g id="shape11-85" v:mID="11" v:groupContext="shape" transform="translate(236.25,-472.5)">
+			<title>Rounded rectangle.11</title>
+			<desc>TEP</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="54" cy="774" width="108" height="36"/>
+			<g id="shadow11-86" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M99 792 A9.00007 9.00007 -180 0 0 108 783 L108 765 A9.00007 9.00007 -180 0 0 99 756 L9 756 A9.00007 9.00007
+							 -180 0 0 0 765 L0 783 A9.00007 9.00007 -180 0 0 9 792 L99 792 Z" class="st2"/>
+			</g>
+			<path d="M99 792 A9.00007 9.00007 -180 0 0 108 783 L108 765 A9.00007 9.00007 -180 0 0 99 756 L9 756 A9.00007 9.00007
+						 -180 0 0 0 765 L0 783 A9.00007 9.00007 -180 0 0 9 792 L99 792 Z" class="st18"/>
+			<text x="44.91" y="777.6" class="st13" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>TEP</text>		</g>
+		<g id="shape36-90" v:mID="36" v:groupContext="shape" transform="translate(117,-571.5)">
+			<title>Rectangle.18.36</title>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<g id="shadow36-91" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<rect x="0" y="688.5" width="342" height="103.5" class="st2"/>
+			</g>
+			<rect x="0" y="688.5" width="342" height="103.5" class="st19"/>
+		</g>
+		<g id="shape5-94" v:mID="5" v:groupContext="shape" transform="translate(306,-594)">
+			<title>Rounded rectangle.5</title>
+			<desc>VM-2 (VNID:200)</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="61.3125" cy="765" width="122.63" height="54"/>
+			<g id="shadow5-95" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M113.62 792 A9.00007 9.00007 -180 0 0 122.63 783 L122.62 747 A9.00007 9.00007 -180 0 0 113.62 738 L9 738
+							 A9.00007 9.00007 -180 0 0 0 747 L0 783 A9.00007 9.00007 -180 0 0 9 792 L113.62 792 Z" class="st2"/>
+			</g>
+			<path d="M113.62 792 A9.00007 9.00007 -180 0 0 122.63 783 L122.62 747 A9.00007 9.00007 -180 0 0 113.62 738 L9 738 A9.00007
+						 9.00007 -180 0 0 0 747 L0 783 A9.00007 9.00007 -180 0 0 9 792 L113.62 792 Z" class="st9"/>
+			<text x="16.93" y="769.2" class="st20" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VM<tspan class="st8"
+						v:langID="1033">-</tspan>2 (<tspan class="st21">VNID</tspan><tspan class="st21">:</tspan><tspan
+						class="st21">200</tspan><tspan class="st21">)</tspan></text>		</g>
+		<g id="shape3-104" v:mID="3" v:groupContext="shape" transform="translate(135,-594)">
+			<title>Rounded rectangle</title>
+			<desc>VM-1 (VNID: 100)</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="61.3125" cy="765" width="122.63" height="54"/>
+			<g id="shadow3-105" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M113.62 792 A9.00007 9.00007 -180 0 0 122.63 783 L122.62 747 A9.00007 9.00007 -180 0 0 113.62 738 L9 738
+							 A9.00007 9.00007 -180 0 0 0 747 L0 783 A9.00007 9.00007 -180 0 0 9 792 L113.62 792 Z" class="st2"/>
+			</g>
+			<path d="M113.62 792 A9.00007 9.00007 -180 0 0 122.63 783 L122.62 747 A9.00007 9.00007 -180 0 0 113.62 738 L9 738 A9.00007
+						 9.00007 -180 0 0 0 747 L0 783 A9.00007 9.00007 -180 0 0 9 792 L113.62 792 Z" class="st9"/>
+			<text x="15.58" y="769.2" class="st20" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>VM<tspan class="st8"
+						v:langID="1033">-</tspan>1 (<tspan class="st21">VNID</tspan><tspan class="st21">: </tspan><tspan
+						class="st21">100</tspan><tspan class="st21">)</tspan></text>		</g>
+		<g id="shape23-114" v:mID="23" v:groupContext="shape" transform="translate(624.813,-477.284) rotate(30.3791)">
+			<title>Process boundary.23</title>
+			<v:userDefs>
+				<v:ud v:nameU="CH" v:val="VT0(5):26"/>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+			</v:userDefs>
+			<rect x="0" y="789.165" width="75.6348" height="2.83465" class="st22"/>
+		</g>
+		<g id="shape22-116" v:mID="22" v:groupContext="shape" transform="translate(412.466,-548.055) rotate(17.7839)">
+			<title>Process boundary</title>
+			<v:userDefs>
+				<v:ud v:nameU="CH" v:val="VT0(5):26"/>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+			</v:userDefs>
+			<rect x="0" y="789.165" width="125.234" height="2.83465" class="st22"/>
+		</g>
+		<g id="shape24-118" v:mID="24" v:groupContext="shape" transform="translate(670.892,944.318) rotate(159.305)">
+			<title>Process boundary.24</title>
+			<v:userDefs>
+				<v:ud v:nameU="CH" v:val="VT0(5):26"/>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+			</v:userDefs>
+			<rect x="0" y="789.165" width="108.234" height="2.83465" class="st22"/>
+		</g>
+		<g id="shape25-120" v:mID="25" v:groupContext="shape" transform="translate(828.973,824.895) rotate(141.667)">
+			<title>Process boundary.25</title>
+			<v:userDefs>
+				<v:ud v:nameU="CH" v:val="VT0(5):26"/>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+			</v:userDefs>
+			<rect x="0" y="789.165" width="61.6701" height="2.83465" class="st22"/>
+		</g>
+		<g id="shape4-122" v:mID="4" v:groupContext="shape" transform="translate(148.5,-587.25)">
+			<title>Rectangle</title>
+			<desc>vport-0</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="22.5" cy="784.125" width="45" height="15.75"/>
+			<g id="shadow4-123" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<rect x="0" y="776.25" width="45" height="15.75" class="st2"/>
+			</g>
+			<rect x="0" y="776.25" width="45" height="15.75" class="st23"/>
+			<text x="7.5" y="787.13" class="st7" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>v<tspan class="st8"
+						v:langID="2052">port</tspan><tspan class="st8" v:langID="2052">-</tspan><tspan class="st8" v:langID="2052">0</tspan></text>		</g>
+		<g id="shape2-130" v:mID="2" v:groupContext="shape" transform="translate(202.5,-587.25)">
+			<title>Rectangle.2</title>
+			<desc>vport-1</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="22.5" cy="784.125" width="45" height="15.75"/>
+			<g id="shadow2-131" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<rect x="0" y="776.25" width="45" height="15.75" class="st2"/>
+			</g>
+			<rect x="0" y="776.25" width="45" height="15.75" class="st23"/>
+			<text x="7.5" y="787.13" class="st7" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>v<tspan class="st8"
+						v:langID="2052">port</tspan><tspan class="st8" v:langID="2052">-</tspan><tspan class="st8" v:langID="2052">1</tspan></text>		</g>
+		<g id="shape6-138" v:mID="6" v:groupContext="shape" transform="translate(317.25,-587.25)">
+			<title>Rectangle.6</title>
+			<desc>vport-0</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="21.375" cy="784.125" width="42.75" height="15.75"/>
+			<g id="shadow6-139" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<rect x="0" y="776.25" width="42.75" height="15.75" class="st2"/>
+			</g>
+			<rect x="0" y="776.25" width="42.75" height="15.75" class="st23"/>
+			<text x="6.37" y="787.13" class="st7" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>v<tspan class="st8"
+						v:langID="2052">port</tspan><tspan class="st8" v:langID="2052">-</tspan><tspan class="st8" v:langID="2052">0</tspan></text>		</g>
+		<g id="shape7-146" v:mID="7" v:groupContext="shape" transform="translate(369,-587.25)">
+			<title>Rectangle.7</title>
+			<desc>vport-1</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="22.5" cy="784.125" width="45" height="15.75"/>
+			<g id="shadow7-147" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<rect x="0" y="776.25" width="45" height="15.75" class="st2"/>
+			</g>
+			<rect x="0" y="776.25" width="45" height="15.75" class="st23"/>
+			<text x="7.5" y="787.13" class="st7" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>v<tspan class="st8"
+						v:langID="2052">port</tspan><tspan class="st8" v:langID="2052">-</tspan><tspan class="st8" v:langID="2052">1</tspan></text>		</g>
+		<g id="shape37-154" v:mID="37" v:groupContext="shape" transform="translate(234,-648)">
+			<title>Sheet.37</title>
+			<desc>Guest</desc>
+			<v:userDefs>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="54" cy="783" width="108" height="18"/>
+			<rect x="0" y="774" width="108" height="18" class="st12"/>
+			<text x="39.46" y="786.6" class="st13" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Guest</text>		</g>
+		<g id="shape38-157" v:mID="38" v:groupContext="shape" transform="translate(324,-357.75)">
+			<title>Rounded rectangle.38</title>
+			<desc>TSO offload</desc>
+			<v:userDefs>
+				<v:ud v:nameU="visVersion" v:val="VT0(14):26"/>
+				<v:ud v:nameU="msvThemeColors" v:val="VT0(36):26"/>
+				<v:ud v:nameU="msvThemeEffects" v:val="VT0(16):26"/>
+			</v:userDefs>
+			<v:textBlock v:margins="rect(4,4,4,4)"/>
+			<v:textRect cx="36" cy="785.25" width="72" height="13.5"/>
+			<g id="shadow38-158" v:groupContext="shadow" v:shadowOffsetX="1.44" v:shadowOffsetY="-1.44" v:shadowType="1"
+					transform="matrix(1,0,0,1,1.44,1.44)" class="st1">
+				<path d="M65.25 792 A6.75005 6.75005 -180 0 0 72 785.25 A6.75005 6.75005 -180 0 0 65.25 778.5 L6.75 778.5 A6.75005
+							 6.75005 -180 0 0 0 785.25 A6.75005 6.75005 -180 0 0 6.75 792 L65.25 792 Z" class="st2"/>
+			</g>
+			<path d="M65.25 792 A6.75005 6.75005 -180 0 0 72 785.25 A6.75005 6.75005 -180 0 0 65.25 778.5 L6.75 778.5 A6.75005 6.75005
+						 -180 0 0 0 785.25 A6.75005 6.75005 -180 0 0 6.75 792 L65.25 792 Z" class="st6"/>
+			<text x="12.33" y="788.25" class="st7" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>TSO offload</text>		</g>
+	</g>
+</svg>
diff --git a/doc/guides/sample_app_ug/index.rst b/doc/guides/sample_app_ug/index.rst
index e1a0c56..63434ed 100644
--- a/doc/guides/sample_app_ug/index.rst
+++ b/doc/guides/sample_app_ug/index.rst
@@ -71,6 +71,7 @@ Sample Applications User Guide
     test_pipeline
     dist_app
     vm_power_management
+    tep_termination
 
 **Figures**
 
@@ -131,6 +132,8 @@ Sample Applications User Guide
 :numref:`figure_vm_power_mgr_highlevel` :ref:`figure_vm_power_mgr_highlevel`
 
 :numref:`figure_vm_power_mgr_vm_request_seq` :ref:`figure_vm_power_mgr_vm_request_seq`
+:numref:`figure_overlay_networking` :ref:`figure_overlay_networking`
+:numref:`figure_tep_termination_arch` :ref:`figure_tep_termination_arch`
 
 **Tables**
 
diff --git a/doc/guides/sample_app_ug/tep_termination.rst b/doc/guides/sample_app_ug/tep_termination.rst
new file mode 100644
index 0000000..86df8f8
--- /dev/null
+++ b/doc/guides/sample_app_ug/tep_termination.rst
@@ -0,0 +1,321 @@
+
+..  BSD LICENSE
+    Copyright(c) 2010-2015 Intel Corporation. All rights reserved.
+    All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions
+    are met:
+
+    * Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions and the following disclaimer in
+    the documentation and/or other materials provided with the
+    distribution.
+    * Neither the name of Intel Corporation nor the names of its
+    contributors may be used to endorse or promote products derived
+    from this software without specific prior written permission.
+
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+    OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+TEP termination Sample Application
+========================
+
+The TEP (Tunnel End point) termination sample application simulates a VXLAN Tunnel Endpoint (VTEP) termination in DPDK, which is used to
+demonstrate the offload and filtering capabilities of Intel® XL710 10/40 Gigabit Ethernet Controller for VXLAN packet.
+This sample uses the basic virtio devices management mechanism from vhost example, and also uses the us-vHost interface and
+tunnel filtering mechanism to direct a specified traffic to a specific VM.
+In addition, this sample is also designed to show how tunneling protocols can be handled.
+
+Background
+----------
+With virtualization, overlay networks allow a network structure to be built or imposed across physical nodes which 
+is abstracted away from the actual underlining physical network connections. This allows network isolation, QOS, etc
+to be provided on a per client basis. 
+
+.. _figure_overlay_networking:
+    
+.. figure:: img/overlay_networking.*
+    
+   Overlay Networking.
+
+In a typical setup, the network overlay tunnel is terminated at the Virtual/Tunnel End Point (VEP/TEP).
+The TEP is normally located at the physical host level ideally in the software switch. Due to processing constraints and
+the inevitable bottleneck that the switch becomes the ability to offload overlay support features becomes an important requirement.
+Intel® XL710 10/40 G Ethernet network card provides hardware filtering and offload capabilities to support overlay networks
+implementations such as MAC in UDP and MAC in GRE. 
+
+Sample Code Overview
+--------------------
+
+The DPDK TEP termination sample code demonstrates the offload and filtering capabilities of Intel® XL710 10/40 Gigabit Ethernet 
+Controller for VXLAN packet.
+ 
+The sample code is based on vhost library. The vhost library is developed for user space Ethernet switch to
+easily integrate with vhost functionality.
+
+The sample will support the followings:
+
+*   Tunneling packet recognition.
+
+*   The port of UDP tunneling is configurable
+
+*   Directing incoming traffic to the correct queue based on the tunnel filter type.
+    The supported filter type are listed below.
+
+    * Inner MAC and VLAN and tenant ID
+
+    * Inner MAC and tenant ID, and Outer MAC
+
+    * Inner MAC and tenant ID
+
+    The tenant ID will be assigned from a static internal table based on the us-vhost device ID.
+    Each device will receive a unique device ID. The inner MAC will be learned by the first packet transmitted from a device.
+
+*   Decapsulation of RX VXLAN traffic. This is a software only operation.
+
+*   Encapsulation of TX VXLAN traffic. This is a software only operation.
+
+*   Inner IP and inner L4 checksum offload.
+
+*   TSO offload support for tunneling packet.
+
+The following figure shows the framework of the TEP termination sample application based on vhost-cuse.
+
+.. _figure_tep_termination_arch:
+    
+.. figure:: img/tep_termination_arch.*
+    
+   TEP termination Framework Overview
+
+Supported Distributions
+-----------------------
+
+The example in this section have been validated with the following distributions:
+
+*   Fedora* 18
+
+*   Fedora* 19
+
+*   Fedora* 20
+
+Prerequisites
+-------------
+
+Refer to the guide in section 27.4 in the vhost sample.
+
+Compiling the Sample Code
+-------------------------
+#.  Compile vhost lib:
+
+    To enable vhost, turn on vhost library in the configure file config/common_linuxapp.
+
+    .. code-block:: console
+
+        CONFIG_RTE_LIBRTE_VHOST=n
+
+    vhost user is turned on by default in the configure file config/common_linuxapp.
+    To enable vhost cuse, disable vhost user.
+
+    .. code-block:: console
+
+        CONFIG_RTE_LIBRTE_VHOST_USER=y
+
+     After vhost is enabled and the implementation is selected, build the vhost library.
+
+#.  Go to the examples directory:
+
+    .. code-block:: console
+
+        export RTE_SDK=/path/to/rte_sdk
+        cd ${RTE_SDK}/examples/tep_termination
+
+#.  Set the target (a default target is used if not specified). For example:
+
+    .. code-block:: console
+
+        export RTE_TARGET=x86_64-native-linuxapp-gcc
+
+    See the DPDK Getting Started Guide for possible RTE_TARGET values.
+
+#.  Build the application:
+
+    .. code-block:: console
+
+        cd ${RTE_SDK}
+        make config ${RTE_TARGET}
+        make install ${RTE_TARGET}
+        cd ${RTE_SDK}/examples/tep_termination
+        make
+
+#.  Go to the eventfd_link directory(vhost cuse required):
+
+    .. code-block:: console
+
+        cd ${RTE_SDK}/lib/librte_vhost/eventfd_link
+
+#.  Build the eventfd_link kernel module(vhost cuse required):
+
+    .. code-block:: console
+
+        make
+
+Running the Sample Code
+-----------------------
+
+#.  Install the cuse kernel module(vhost cuse required):
+
+    .. code-block:: console
+
+        modprobe cuse
+
+#.  Go to the eventfd_link directory(vhost cuse required):
+
+    .. code-block:: console
+
+        export RTE_SDK=/path/to/rte_sdk
+        cd ${RTE_SDK}/lib/librte_vhost/eventfd_link
+
+#.  Install the eventfd_link module(vhost cuse required):
+
+    .. code-block:: console
+
+        insmod ./eventfd_link.ko
+
+#.  Go to the examples directory:
+
+    .. code-block:: console
+
+        export RTE_SDK=/path/to/rte_sdk
+        cd ${RTE_SDK}/examples/tep_termination
+
+#.  Run the tep_termination sample code:
+
+    .. code-block:: console
+
+        user@target:~$ ./build/app/tep_termination -c f -n 4 --huge-dir /mnt/huge --
+                        -p 0x1 --dev-basename tep-termination --nb-devices 4 
+                        --udp-port 4789 --filter-type 1 
+
+.. note::
+
+    Please note the huge-dir parameter instructs the DPDK to allocate its memory from the 2 MB page hugetlbfs.
+
+Parameters
+~~~~~~~~~~
+
+**The same parameters with the vhost sample.**
+
+Refer to the guide in section 27.6.1 in the vhost sample for the meanings of 'Basename', 
+'Stats', 'RX Retry', 'RX Retry Number' and 'RX Retry Delay Time'.
+
+**Number of Devices.**
+
+The nb-devices option specifies the number of virtIO device.
+The default value is 2.
+
+.. code-block:: console
+
+    user@target:~$ ./build/app/tep_termination -c f -n 4 --huge-dir /mnt/huge --
+                    --nb-devices 2 
+
+**Tunneling UDP port.**
+
+The udp-port option is used to specify the destination UDP number for UDP tunneling packet.
+The default value is 4789.
+  
+.. code-block:: console
+
+    user@target:~$ ./build/app/tep_termination -c f -n 4 --huge-dir /mnt/huge --
+                    --nb-devices 2 --udp-port 4789
+
+**Filter Type.**
+
+The filter-type option is used to specify which filter type is used to filter UDP tunneling packet to a specified queue.
+The default value is 1, which means the filter type of inner MAC and tenant ID is used.
+
+.. code-block:: console
+
+    user@target:~$ ./build/app/tep_termination -c f -n 4 --huge-dir /mnt/huge --
+                --nb-devices 2 --udp-port 4789 --filter-type 1
+
+**TX Checksum.**
+
+The tx-checksum option is used to enable or disable the inner header checksum offload.
+The default value is 0, which means the checksum offload is disabled.
+
+.. code-block:: console
+
+    user@target:~$ ./build/app/tep_termination -c f -n 4 --huge-dir /mnt/huge --
+                --nb-devices 2 --tx-checksum
+
+**TCP segment sise.**
+
+The tso-segsz option specifies the TCP segment size for TSO offload for tunneling packet.
+The default value is 0, which means TSO offload is disabled. 
+
+.. code-block:: console
+
+    user@target:~$ ./build/app/tep_termination -c f -n 4 --huge-dir /mnt/huge --
+                --tx-checksum --tso-segsz 800
+
+**Decapsulation option.**
+
+The decap option is used to enable or disable decapsulation operation for received VXLAN packet.
+The default value is 1.
+ 
+.. code-block:: console
+    
+    user@target:~$ ./build/app/tep_termination -c f -n 4 --huge-dir /mnt/huge -- 
+                --nb-devices 4 --udp-port 4789 --decap 1
+
+**Encapsulation option.**
+
+The encap option is used to enable or disable encapsulation operation for transmitted packet.
+The default value is 1.
+ 
+.. code-block:: console
+       
+    user@target:~$ ./build/app/tep_termination -c f -n 4 --huge-dir /mnt/huge --
+                --nb-devices 4 --udp-port 4789 --encap 1
+ 
+
+Running the Virtual Machine (QEMU)
+----------------------------------
+
+Refer to the guide in section 27.7 in the vhost sample.
+
+Running DPDK in the Virtual Machine
+-----------------------------------
+
+Refer to the guide in section 27.8 in the vHost sample.
+
+Passing Traffic to the Virtual Machine Device
+---------------------------------------------
+
+For a virtio-net device to receive traffic, the traffic's Layer 2 header must include 
+both the virtio-net device's MAC address.
+The DPDK sample code behaves in a similar manner to a learning switch in that
+it learns the MAC address of the virtio-net devices from the first transmitted packet.
+On learning the MAC address,
+the DPDK vhost sample code prints a message with the MAC address and tenant ID virtio-net device.
+For example:
+ 
+.. code-block:: console
+    
+    DATA: (0) MAC_ADDRESS cc:bb:bb:bb:bb:bb and VNI 1000 registered
+ 
+The above message indicates that device 0 has been registered with MAC address cc:bb:bb:bb:bb:bb and VNI 1000.
+Any packets received on the NIC with these values are placed on the devices receive queue.
-- 
1.7.7.6

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-07-27 22:28 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-07-03  6:58 [dpdk-dev] [PATCH v2] doc/sample_app_ug:add a VXLAN sample guide Jijiang Liu
2015-07-03  8:53 ` Liu, Yong
2015-07-03  9:20   ` Thomas Monjalon
2015-07-27 22:28 ` Thomas Monjalon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).