1<?xml version="1.0" encoding="UTF-8" standalone="no"?> 2<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> 3<!-- Generated by Microsoft Visio, SVG Export virtio_user_as_exceptional_pathvsdx.svg Page-1 --> 4<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events" 5 xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="5.77778in" height="3.88851in" 6 viewBox="0 0 416 279.973" xml:space="preserve" color-interpolation-filters="sRGB" class="st13"> 7 <v:documentProperties v:langID="1033" v:viewMarkup="false"/> 8 9 <style type="text/css"> 10 <![CDATA[ 11 .st1 {visibility:visible} 12 .st2 {fill:#5b9bd5;fill-opacity:0.22;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.22} 13 .st3 {fill:#ffffff;stroke:#c7c8c8;stroke-width:0.25} 14 .st4 {stroke:#000000;stroke-dasharray:7,5;stroke-linecap:round;stroke-linejoin:round;stroke-width:1} 15 .st5 {fill:#000000;font-family:Calibri;font-size:0.833336em} 16 .st6 {fill:none;stroke:none;stroke-width:0.25} 17 .st7 {fill:#000000;font-family:Calibri;font-size:1.00001em;font-style:italic} 18 .st8 {fill:#70ad47;stroke:#c7c8c8;stroke-width:0.25} 19 .st9 {stroke:#5b9bd5;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.75} 20 .st10 {marker-end:url(#mrkr4-68);marker-start:url(#mrkr4-66);stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:1} 21 .st11 {fill:#000000;fill-opacity:1;stroke:#000000;stroke-opacity:1;stroke-width:0.28409090909091} 22 .st12 {fill:#d8d8d8;stroke:#c7c8c8;stroke-width:0.25} 23 .st13 {fill:none;fill-rule:evenodd;font-size:12px;overflow:visible;stroke-linecap:square;stroke-miterlimit:3} 24 ]]> 25 </style> 26 27 <defs id="Markers"> 28 <g id="lend4"> 29 <path d="M 2 1 L 0 0 L 2 -1 L 2 1 " style="stroke:none"/> 30 </g> 31 <marker id="mrkr4-66" class="st11" v:arrowType="4" v:arrowSize="2" v:setback="6.68" refX="6.68" orient="auto" 32 markerUnits="strokeWidth" overflow="visible"> 33 <use xlink:href="#lend4" transform="scale(3.52) "/> 34 </marker> 35 <marker id="mrkr4-68" class="st11" v:arrowType="4" v:arrowSize="2" v:setback="7.04" refX="-7.04" orient="auto" 36 markerUnits="strokeWidth" overflow="visible"> 37 <use xlink:href="#lend4" transform="scale(-3.52,-3.52) "/> 38 </marker> 39 </defs> 40 <defs id="Filters"> 41 <filter id="filter_2"> 42 <feGaussianBlur stdDeviation="2"/> 43 </filter> 44 </defs> 45 <g v:mID="0" v:index="1" v:groupContext="foregroundPage"> 46 <title>Page-1</title> 47 <v:pageProperties v:drawingScale="1" v:pageScale="1" v:drawingUnits="0" v:shadowOffsetX="9" v:shadowOffsetY="-9"/> 48 <v:layer v:name="Connector" v:index="0"/> 49 <g id="shape23-1" v:mID="23" v:groupContext="shape" transform="translate(195.804,-74.9728)"> 50 <title>Rectangle.23</title> 51 <v:userDefs> 52 <v:ud v:nameU="visVersion" v:val="VT0(15):26"/> 53 </v:userDefs> 54 <g id="shadow23-2" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1" 55 transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1"> 56 <rect x="0" y="113.473" width="216.6" height="166.5" class="st2"/> 57 </g> 58 <rect x="0" y="113.473" width="216.6" height="166.5" class="st3"/> 59 </g> 60 <g id="shape42-6" v:mID="42" v:groupContext="shape" v:layerMember="0" transform="translate(146.904,-277.473)"> 61 <title>Dynamic connector.42</title> 62 <path d="M-9 279.97 L-9 540.97" class="st4"/> 63 </g> 64 <g id="shape45-9" v:mID="45" v:groupContext="shape" transform="translate(2.9044,-142.292)"> 65 <title>Rectangle.45</title> 66 <desc>tap</desc> 67 <v:userDefs> 68 <v:ud v:nameU="visVersion" v:val="VT0(15):26"/> 69 </v:userDefs> 70 <v:textBlock v:margins="rect(4,4,4,4)"/> 71 <v:textRect cx="34.05" cy="264.132" width="68.1" height="31.6807"/> 72 <g id="shadow45-10" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1" 73 transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1"> 74 <rect x="0" y="248.292" width="68.1" height="31.6807" class="st2"/> 75 </g> 76 <rect x="0" y="248.292" width="68.1" height="31.6807" class="st3"/> 77 <text x="27.35" y="267.13" class="st5" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>tap</text> </g> 78 <g id="shape46-15" v:mID="46" v:groupContext="shape" transform="translate(2.9044,-43.2921)"> 79 <title>Rectangle.46</title> 80 <desc>vhost ko</desc> 81 <v:userDefs> 82 <v:ud v:nameU="visVersion" v:val="VT0(15):26"/> 83 </v:userDefs> 84 <v:textBlock v:margins="rect(4,4,4,4)"/> 85 <v:textRect cx="34.05" cy="264.132" width="68.1" height="31.6807"/> 86 <g id="shadow46-16" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1" 87 transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1"> 88 <rect x="0" y="248.292" width="68.1" height="31.6807" class="st2"/> 89 </g> 90 <rect x="0" y="248.292" width="68.1" height="31.6807" class="st3"/> 91 <text x="16.86" y="267.13" class="st5" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>vhost ko </text> </g> 92 <g id="shape47-21" v:mID="47" v:groupContext="shape" transform="translate(18.9544,-257.223)"> 93 <title>Sheet.47</title> 94 <desc>Kernel space</desc> 95 <v:textBlock v:margins="rect(4,4,4,4)"/> 96 <v:textRect cx="44.025" cy="268.723" width="88.05" height="22.5"/> 97 <rect x="0" y="257.473" width="88.05" height="22.5" class="st6"/> 98 <text x="13.44" y="272.32" class="st7" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Kernel space</text> </g> 99 <g id="shape48-24" v:mID="48" v:groupContext="shape" transform="translate(148.854,-257.223)"> 100 <title>Sheet.48</title> 101 <desc>User space</desc> 102 <v:textBlock v:margins="rect(4,4,4,4)"/> 103 <v:textRect cx="44.025" cy="268.723" width="88.05" height="22.5"/> 104 <rect x="0" y="257.473" width="88.05" height="22.5" class="st6"/> 105 <text x="17.7" y="272.32" class="st7" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>User space</text> </g> 106 <g id="shape49-27" v:mID="49" v:groupContext="shape" transform="translate(218.904,-182.792)"> 107 <title>Rectangle.49</title> 108 <desc>ETHDEV</desc> 109 <v:userDefs> 110 <v:ud v:nameU="visVersion" v:val="VT0(15):26"/> 111 </v:userDefs> 112 <v:textBlock v:margins="rect(4,4,4,4)"/> 113 <v:textRect cx="83.25" cy="264.132" width="166.5" height="31.6807"/> 114 <g id="shadow49-28" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1" 115 transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1"> 116 <rect x="0" y="248.292" width="166.5" height="31.6807" class="st2"/> 117 </g> 118 <rect x="0" y="248.292" width="166.5" height="31.6807" class="st3"/> 119 <text x="66.9" y="267.13" class="st5" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>ETHDEV</text> </g> 120 <g id="shape50-33" v:mID="50" v:groupContext="shape" transform="translate(218.904,-142.292)"> 121 <title>Rectangle.50</title> 122 <desc>virtio PMD</desc> 123 <v:userDefs> 124 <v:ud v:nameU="visVersion" v:val="VT0(15):26"/> 125 </v:userDefs> 126 <v:textBlock v:margins="rect(4,4,4,4)"/> 127 <v:textRect cx="38.7911" cy="264.132" width="77.59" height="31.6807"/> 128 <g id="shadow50-34" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1" 129 transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1"> 130 <rect x="0" y="248.292" width="77.5823" height="31.6807" class="st2"/> 131 </g> 132 <rect x="0" y="248.292" width="77.5823" height="31.6807" class="st3"/> 133 <text x="17.12" y="267.13" class="st5" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>virtio PMD</text> </g> 134 <g id="shape51-39" v:mID="51" v:groupContext="shape" transform="translate(308.904,-142.292)"> 135 <title>Rectangle.51</title> 136 <desc>other PMDs</desc> 137 <v:userDefs> 138 <v:ud v:nameU="visVersion" v:val="VT0(15):26"/> 139 </v:userDefs> 140 <v:textBlock v:margins="rect(4,4,4,4)"/> 141 <v:textRect cx="38.7911" cy="264.132" width="77.59" height="31.6807"/> 142 <g id="shadow51-40" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1" 143 transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1"> 144 <rect x="0" y="248.292" width="77.5823" height="31.6807" class="st2"/> 145 </g> 146 <rect x="0" y="248.292" width="77.5823" height="31.6807" class="st3"/> 147 <text x="14.6" y="267.13" class="st5" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>other PMDs</text> </g> 148 <g id="shape52-45" v:mID="52" v:groupContext="shape" transform="translate(218.904,-86.3131)"> 149 <title>Rectangle.52</title> 150 <desc>virtio-user</desc> 151 <v:userDefs> 152 <v:ud v:nameU="visVersion" v:val="VT0(15):26"/> 153 </v:userDefs> 154 <v:textBlock v:margins="rect(4,4,4,4)"/> 155 <v:textRect cx="38.7911" cy="256.393" width="77.59" height="47.1597"/> 156 <g id="shadow52-46" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1" 157 transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1"> 158 <rect x="0" y="232.813" width="77.5823" height="47.1597" class="st2"/> 159 </g> 160 <rect x="0" y="232.813" width="77.5823" height="47.1597" class="st8"/> 161 <text x="17.84" y="247.39" class="st5" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>virtio-user<v:newlineChar/><v:newlineChar/></text> </g> 162 <g id="shape53-51" v:mID="53" v:groupContext="shape" transform="translate(223.404,-90.1829)"> 163 <title>Rectangle.53</title> 164 <desc>vhost adapter</desc> 165 <v:userDefs> 166 <v:ud v:nameU="visVersion" v:val="VT0(15):26"/> 167 </v:userDefs> 168 <v:textBlock v:margins="rect(4,4,4,4)"/> 169 <v:textRect cx="34.05" cy="268.183" width="68.1" height="23.5798"/> 170 <g id="shadow53-52" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1" 171 transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1"> 172 <rect x="0" y="256.393" width="68.1" height="23.5798" class="st2"/> 173 </g> 174 <rect x="0" y="256.393" width="68.1" height="23.5798" class="st3"/> 175 <text x="5.82" y="271.18" class="st5" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>vhost adapter</text> </g> 176 <g id="shape54-57" v:mID="54" v:groupContext="shape" v:layerMember="0" transform="translate(71.0044,-59.1325)"> 177 <title>Dynamic connector</title> 178 <path d="M0 279.97 L63.9 279.97 A3 3 0 1 1 69.9 279.97 L186.69 279.97 L186.69 252.79" class="st9"/> 179 </g> 180 <g id="shape55-60" v:mID="55" v:groupContext="shape" v:layerMember="0" transform="translate(71.0044,-149.132)"> 181 <title>Dynamic connector.55</title> 182 <path d="M6.68 270.97 L7.04 270.97 L63.9 270.97 A3 3 0 0 1 69.9 270.97 L140.86 270.97" class="st10"/> 183 </g> 184 <g id="shape56-69" v:mID="56" v:groupContext="shape" transform="translate(308.904,-5.2228)"> 185 <title>Rectangle.38</title> 186 <v:userDefs> 187 <v:ud v:nameU="visVersion" v:val="VT0(15):26"/> 188 </v:userDefs> 189 <g id="shadow56-70" v:groupContext="shadow" v:shadowOffsetX="0.345598" v:shadowOffsetY="-1.97279" v:shadowType="1" 190 transform="matrix(1,0,0,1,0.345598,1.97279)" class="st1"> 191 <rect x="0" y="257.473" width="77.5823" height="22.5" rx="11.25" ry="11.25" class="st2"/> 192 </g> 193 <rect x="0" y="257.473" width="77.5823" height="22.5" rx="11.25" ry="11.25" class="st12"/> 194 </g> 195 <g id="shape57-74" v:mID="57" v:groupContext="shape" transform="translate(318.204,-5.2228)"> 196 <title>Sheet.57</title> 197 <desc>NIC</desc> 198 <v:textBlock v:margins="rect(4,4,4,4)"/> 199 <v:textRect cx="28.125" cy="268.723" width="56.25" height="22.5"/> 200 <rect x="0" y="257.473" width="56.25" height="22.5" class="st6"/> 201 <text x="19.61" y="272.32" class="st7" v:langID="2052"><v:paragraph v:horizAlign="1"/><v:tabList/>NIC</text> </g> 202 <g id="shape58-77" v:mID="58" v:groupContext="shape" v:layerMember="0" transform="translate(356.696,-142.292)"> 203 <title>Dynamic connector.41</title> 204 <path d="M-9 286.65 L-9 287.01 L-9 387.5" class="st10"/> 205 </g> 206 </g> 207</svg> 208