doc: update bonding
authorDeclan Doherty <declan.doherty@intel.com>
Mon, 1 Dec 2014 17:10:12 +0000 (17:10 +0000)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Fri, 5 Dec 2014 16:26:54 +0000 (17:26 +0100)
Adding details for link status interrupts and link status polling.
Adding details for mode 4 / mode 5
Tidying up rst document to conform to 80 character line limit
Adding diagrams to explain bonding modes
Removed link_bonding.png file

Signed-off-by: Declan Doherty <declan.doherty@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
doc/guides/prog_guide/img/bond-mode-0.svg [new file with mode: 0644]
doc/guides/prog_guide/img/bond-mode-1.svg [new file with mode: 0644]
doc/guides/prog_guide/img/bond-mode-2.svg [new file with mode: 0644]
doc/guides/prog_guide/img/bond-mode-3.svg [new file with mode: 0644]
doc/guides/prog_guide/img/bond-mode-4.svg [new file with mode: 0644]
doc/guides/prog_guide/img/bond-mode-5.svg [new file with mode: 0644]
doc/guides/prog_guide/img/bond-overview.svg [new file with mode: 0644]
doc/guides/prog_guide/img/link_bonding.png [deleted file]
doc/guides/prog_guide/link_bonding_poll_mode_drv_lib.rst

diff --git a/doc/guides/prog_guide/img/bond-mode-0.svg b/doc/guides/prog_guide/img/bond-mode-0.svg
new file mode 100644 (file)
index 0000000..eff0edb
--- /dev/null
@@ -0,0 +1,638 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generated by Microsoft Visio, SVG Export link bonding - mode 0.svg Page-4 -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="332.15576"
+   height="334.46951"
+   viewBox="0 0 265.725 267.57566"
+   xml:space="preserve"
+   color-interpolation-filters="sRGB"
+   class="st16"
+   id="svg3406"
+   version="1.1"
+   inkscape:version="0.48.5 r10040"
+   sodipodi:docname="bond-mode-0.svg"
+   style="font-size:12px;fill:none;stroke-linecap:square;stroke-miterlimit:3;overflow:visible"><metadata
+     id="metadata3652"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1920"
+     inkscape:window-height="1056"
+     id="namedview3650"
+     showgrid="false"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0"
+     inkscape:zoom="1.1907084"
+     inkscape:cx="509.87351"
+     inkscape:cy="57.377583"
+     inkscape:window-x="0"
+     inkscape:window-y="29"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="svg3406" /><style
+     type="text/css"
+     id="style3408">
+               .st1 {visibility:visible}
+               .st2 {fill:#5b9bd5;fill-opacity:0.25;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.25}
+               .st3 {fill:#4f87bb;stroke:#40709c;stroke-width:0.75}
+               .st4 {fill:#feffff;font-family:Calibri;font-size:0.833336em}
+               .st5 {fill:url(#grad0-11);stroke:#4f87bb;stroke-width:0.75}
+               .st6 {fill:#4f87bb;font-family:Calibri;font-size:0.833336em}
+               .st7 {fill:#759fcc;fill-opacity:0.25;filter:url(#filter_2);stroke:#759fcc;stroke-opacity:0.25}
+               .st8 {fill:#668bb3;stroke:#547395;stroke-width:0.75}
+               .st9 {fill:#5b9bd5;fill-opacity:0.22;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.22}
+               .st10 {fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25}
+               .st11 {fill:#759fcc;fill-opacity:0.22;filter:url(#filter_2);stroke:#759fcc;stroke-opacity:0.22}
+               .st12 {fill:#759fcc;stroke:#c7c8c8;stroke-width:0.25}
+               .st13 {fill:url(#grad0-40);stroke:#a6b6cd;stroke-width:0.75}
+               .st14 {fill:#70ad47;fill-opacity:0.25;filter:url(#filter_2);stroke:#70ad47;stroke-opacity:0.25}
+               .st15 {fill:#61973d;stroke:#507e31;stroke-width:0.75}
+               .st16 {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-11"
+       x1="-0.24584444"
+       y1="740.8343"
+       x2="167.49742"
+       y2="740.8343"
+       gradientTransform="scale(1.5253548,0.65558519)"
+       gradientUnits="userSpaceOnUse"><stop
+         offset="0"
+         stop-color="#e9eff7"
+         stop-opacity="1"
+         id="stop3412" /><stop
+         offset="0.24"
+         stop-color="#f4f7fb"
+         stop-opacity="1"
+         id="stop3414" /><stop
+         offset="0.54"
+         stop-color="#feffff"
+         stop-opacity="1"
+         id="stop3416" /></linearGradient><linearGradient
+       id="grad0-40"
+       x1="0"
+       y1="0"
+       x2="1"
+       y2="0"
+       gradientTransform="matrix(0.5,0.8660254,-0.8660254,0.5,0.6830127,-0.1830127)"><stop
+         offset="0"
+         stop-color="#f3f6fa"
+         stop-opacity="1"
+         id="stop3419" /><stop
+         offset="0.24"
+         stop-color="#f9fafc"
+         stop-opacity="1"
+         id="stop3421" /><stop
+         offset="0.54"
+         stop-color="#feffff"
+         stop-opacity="1"
+         id="stop3423" /></linearGradient><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient3654"
+       gradientTransform="scale(2.9084098,0.3438305)"
+       x1="-0.12893644"
+       y1="1717.1688"
+       x2="28.140807"
+       y2="1717.1688"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient3656"
+       gradientTransform="scale(2.093628,0.47763977)"
+       x1="-0.17911492"
+       y1="1233.6389"
+       x2="25.111911"
+       y2="1233.6389"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient3658"
+       gradientTransform="scale(2.093628,0.47763977)"
+       x1="-0.17911492"
+       y1="1233.6389"
+       x2="25.111911"
+       y2="1233.6389"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient3660"
+       gradientTransform="scale(2.1254139,0.4704966)"
+       x1="-0.17643623"
+       y1="1252.3682"
+       x2="25.498563"
+       y2="1252.3682"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient3662"
+       gradientTransform="scale(2.1254139,0.4704966)"
+       x1="-0.17643623"
+       y1="1252.3682"
+       x2="25.498563"
+       y2="1252.3682"
+       gradientUnits="userSpaceOnUse" /></defs><defs
+     id="Filters"><filter
+       id="filter_2"
+       color-interpolation-filters="sRGB"><feGaussianBlur
+         stdDeviation="2"
+         id="feGaussianBlur3427" /></filter></defs><g
+     id="g3429"
+     transform="translate(-13.045598,-14.663414)"><title
+       id="title3431">Page-4</title><g
+       id="shape1-1"
+       transform="translate(18,-516.416)"><title
+         id="title3434">Rectangle.7</title><desc
+         id="desc3436">User Application</desc><g
+         id="shadow1-2"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="534.41602"
+           width="255.118"
+           height="60.859798"
+           class="st2"
+           id="rect3439"
+           style="fill:#5b9bd5;fill-opacity:0.25;stroke:#5b9bd5;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="534.41602"
+         width="255.118"
+         height="60.859798"
+         class="st3"
+         id="rect3441"
+         style="fill:#4f87bb;stroke:#40709c;stroke-width:0.75" /><text
+         x="94"
+         y="567.84998"
+         class="st4"
+         id="text3443"
+         style="fill:#feffff;font-family:Calibri">User Application</text>
+</g><g
+       id="group2-7"
+       transform="translate(18,-355.662)"><title
+         id="title3446">Sheet.2</title><g
+         id="shape3-8"><title
+           id="title3449">Rectangle.38</title><desc
+           id="desc3451">DPDK</desc><rect
+           x="0"
+           y="486.05499"
+           width="255.118"
+           height="109.22"
+           class="st5"
+           id="rect3453"
+           style="fill:url(#grad0-11);stroke:#4f87bb;stroke-width:0.75" /><text
+           x="228.45"
+           y="499.06"
+           class="st6"
+           id="text3455"
+           style="fill:#4f87bb;font-family:Calibri">DPDK</text>
+</g><g
+         id="shape4-13"
+         transform="translate(6.87402,-7.17304)"><title
+           id="title3458">Rectangle.16</title><desc
+           id="desc3460">bonded ethdev</desc><g
+           id="shadow4-14"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="523.16803"
+             width="241.157"
+             height="72.107201"
+             class="st7"
+             id="rect3463"
+             style="fill:#759fcc;fill-opacity:0.25;stroke:#759fcc;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="523.16803"
+           width="241.157"
+           height="72.107201"
+           class="st8"
+           id="rect3465"
+           style="fill:#668bb3;stroke:#547395;stroke-width:0.75" /><text
+           x="89.650002"
+           y="536.16998"
+           class="st4"
+           id="text3467"
+           style="fill:#feffff;font-family:Calibri">bonded ethdev</text>
+</g><g
+         id="shape5-19"
+         transform="translate(13.9606,-14.1732)"><title
+           id="title3470">Rectangle.11</title><desc
+           id="desc3472">ethdev port</desc><g
+           id="shadow5-20"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st9"
+             id="rect3475"
+             style="fill:#5b9bd5;fill-opacity:0.22000002;stroke:#5b9bd5;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st10"
+           id="rect3477"
+           style="fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           id="text3479"
+           style="fill:#feffff;font-family:Calibri">ethdev port</text>
+</g><g
+         id="shape6-25"
+         transform="translate(91.9134,-14.1732)"><title
+           id="title3482">Rectangle.14</title><desc
+           id="desc3484">ethdev port</desc><g
+           id="shadow6-26"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st11"
+             id="rect3487"
+             style="fill:#759fcc;fill-opacity:0.22000002;stroke:#759fcc;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st12"
+           id="rect3489"
+           style="fill:#759fcc;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           id="text3491"
+           style="fill:#feffff;font-family:Calibri">ethdev port</text>
+</g><g
+         id="shape7-31"
+         transform="translate(169.866,-14.1732)"><title
+           id="title3494">Rectangle.15</title><desc
+           id="desc3496">ethdev port</desc><g
+           id="shadow7-32"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st11"
+             id="rect3499"
+             style="fill:#759fcc;fill-opacity:0.22000002;stroke:#759fcc;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st12"
+           id="rect3501"
+           style="fill:#759fcc;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           id="text3503"
+           style="fill:#feffff;font-family:Calibri">ethdev port</text>
+</g></g><g
+       id="shape8-37"
+       transform="matrix(0.00130551,-0.99999915,0.99999915,0.00130551,-449.822,159.557)"><title
+         id="title3506">Simple Double Arrow.14</title><path
+         d="m 0,595.28 11.34,-4.49 0,2.24 58.8,0 0,-2.24 11.33,4.49 -11.33,4.48 0,-2.24 -58.8,0 0,2.24 L 0,595.28 z"
+         class="st13"
+         id="path3508"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient3654);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape9-41"
+       transform="matrix(0.01125714,-0.99993664,0.99993664,0.01125714,-532.876,272.07)"><title
+         id="title3511">Simple Arrow</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 40.86,0 0,2.84 0,2.83 -40.86,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path3513"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient3656);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape10-44"
+       transform="matrix(-0.01125714,0.99993664,-0.99993664,-0.01125714,670.114,232.099)"><title
+         id="title3516">Simple Arrow.37</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 40.86,0 0,2.84 0,2.83 -40.86,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path3518"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient3658);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape11-47"
+       transform="matrix(0.01448398,-0.9998951,0.9998951,0.01448398,-450.646,270.634)"><title
+         id="title3521">Simple Arrow.38</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 42.48,0 0,2.84 0,2.83 -42.48,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path3523"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient3660);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape12-50"
+       transform="matrix(-0.01185051,-0.99992978,0.99992978,-0.01185051,-371.297,286.31)"><title
+         id="title3526">Simple Arrow.39</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 42.48,0 0,2.84 0,2.83 -42.48,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path3528"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient3662);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape13-53"
+       transform="translate(124.724,-436.365)"><title
+         id="title3531">Square.114</title><desc
+         id="desc3533">1</desc><g
+         id="shadow13-54"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect3536"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect3538"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text3540"
+         style="fill:#feffff;font-family:Calibri">1</text>
+</g><g
+       id="shape14-59"
+       transform="translate(124.724,-455.698)"><title
+         id="title3543">Square.115</title><desc
+         id="desc3545">2</desc><g
+         id="shadow14-60"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect3548"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect3550"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text3552"
+         style="fill:#feffff;font-family:Calibri">2</text>
+</g><g
+       id="shape15-65"
+       transform="translate(124.724,-474.406)"><title
+         id="title3555">Square.116</title><desc
+         id="desc3557">3</desc><g
+         id="shadow15-66"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect3560"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect3562"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text3564"
+         style="fill:#feffff;font-family:Calibri">3</text>
+</g><g
+       id="shape16-71"
+       transform="translate(124.724,-493.739)"><title
+         id="title3567">Square.117</title><desc
+         id="desc3569">4</desc><g
+         id="shadow16-72"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect3572"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect3574"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text3576"
+         style="fill:#feffff;font-family:Calibri">4</text>
+</g><g
+       id="shape17-77"
+       transform="translate(124.724,-513.071)"><title
+         id="title3579">Square.118</title><desc
+         id="desc3581">5</desc><g
+         id="shadow17-78"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect3584"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect3586"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text3588"
+         style="fill:#feffff;font-family:Calibri">5</text>
+</g><g
+       id="shape18-83"
+       transform="translate(39.685,-320.315)"><title
+         id="title3591">Square.120</title><desc
+         id="desc3593">1</desc><g
+         id="shadow18-84"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect3596"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect3598"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text3600"
+         style="fill:#feffff;font-family:Calibri">1</text>
+</g><g
+       id="shape19-89"
+       transform="translate(119.055,-320.315)"><title
+         id="title3603">Square.121</title><desc
+         id="desc3605">2</desc><g
+         id="shadow19-90"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect3608"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect3610"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text3612"
+         style="fill:#feffff;font-family:Calibri">2</text>
+</g><g
+       id="shape20-95"
+       transform="translate(198.425,-320.315)"><title
+         id="title3615">Square.122</title><desc
+         id="desc3617">3</desc><g
+         id="shadow20-96"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect3620"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect3622"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text3624"
+         style="fill:#feffff;font-family:Calibri">3</text>
+</g><g
+       id="shape21-101"
+       transform="translate(39.685,-338.74)"><title
+         id="title3627">Square.123</title><desc
+         id="desc3629">4</desc><g
+         id="shadow21-102"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect3632"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect3634"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text3636"
+         style="fill:#feffff;font-family:Calibri">4</text>
+</g><g
+       id="shape22-107"
+       transform="translate(119.055,-338.74)"><title
+         id="title3639">Square.124</title><desc
+         id="desc3641">5</desc><g
+         id="shadow22-108"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect3644"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect3646"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text3648"
+         style="fill:#feffff;font-family:Calibri">5</text>
+</g></g></svg>
\ No newline at end of file
diff --git a/doc/guides/prog_guide/img/bond-mode-1.svg b/doc/guides/prog_guide/img/bond-mode-1.svg
new file mode 100644 (file)
index 0000000..c177e85
--- /dev/null
@@ -0,0 +1,724 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generated by Microsoft Visio, SVG Export link bonding - mode 1.svg Page-4 -->
+
+<svg
+   xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/"
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="332.147"
+   height="304.04852"
+   viewBox="0 0 265.71799 243.23887"
+   xml:space="preserve"
+   color-interpolation-filters="sRGB"
+   class="st16"
+   id="svg4008"
+   version="1.1"
+   inkscape:version="0.48.5 r10040"
+   sodipodi:docname="bond-mode-1.svg"
+   style="font-size:12px;fill:none;stroke-linecap:square;stroke-miterlimit:3;overflow:visible"><metadata
+     id="metadata4196"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="640"
+     inkscape:window-height="480"
+     id="namedview4194"
+     showgrid="false"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0"
+     inkscape:zoom="0.29932695"
+     inkscape:cx="509.87351"
+     inkscape:cy="-49.657453"
+     inkscape:window-x="0"
+     inkscape:window-y="29"
+     inkscape:window-maximized="0"
+     inkscape:current-layer="svg4008" /><v:documentProperties
+     v:langID="1033"
+     v:metric="true"
+     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:userDefs></v:documentProperties><style
+     type="text/css"
+     id="style4010">
+               .st1 {visibility:visible}
+               .st2 {fill:#5b9bd5;fill-opacity:0.25;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.25}
+               .st3 {fill:#4f87bb;stroke:#40709c;stroke-width:0.75}
+               .st4 {fill:#feffff;font-family:Calibri;font-size:0.833336em}
+               .st5 {fill:url(#grad0-11);stroke:#4f87bb;stroke-width:0.75}
+               .st6 {fill:#4f87bb;font-family:Calibri;font-size:0.833336em}
+               .st7 {fill:#759fcc;fill-opacity:0.25;filter:url(#filter_2);stroke:#759fcc;stroke-opacity:0.25}
+               .st8 {fill:#668bb3;stroke:#547395;stroke-width:0.75}
+               .st9 {fill:#5b9bd5;fill-opacity:0.22;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.22}
+               .st10 {fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25}
+               .st11 {fill:#bdd0e9;fill-opacity:0.22;filter:url(#filter_2);stroke:#bdd0e9;stroke-opacity:0.22}
+               .st12 {fill:#bdd0e9;stroke:#c7c8c8;stroke-width:0.25}
+               .st13 {fill:url(#grad0-40);stroke:#a6b6cd;stroke-width:0.75}
+               .st14 {fill:#70ad47;fill-opacity:0.25;filter:url(#filter_2);stroke:#70ad47;stroke-opacity:0.25}
+               .st15 {fill:#61973d;stroke:#507e31;stroke-width:0.75}
+               .st16 {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-11"
+       x1="-0.24584444"
+       y1="740.8343"
+       x2="167.49742"
+       y2="740.8343"
+       gradientTransform="scale(1.5253548,0.65558519)"
+       gradientUnits="userSpaceOnUse"><stop
+         offset="0"
+         stop-color="#e9eff7"
+         stop-opacity="1"
+         id="stop4014" /><stop
+         offset="0.24"
+         stop-color="#f4f7fb"
+         stop-opacity="1"
+         id="stop4016" /><stop
+         offset="0.54"
+         stop-color="#feffff"
+         stop-opacity="1"
+         id="stop4018" /></linearGradient><linearGradient
+       id="grad0-40"
+       x1="0"
+       y1="0"
+       x2="1"
+       y2="0"
+       gradientTransform="matrix(0.5,0.8660254,-0.8660254,0.5,0.6830127,-0.1830127)"><stop
+         offset="0"
+         stop-color="#f3f6fa"
+         stop-opacity="1"
+         id="stop4021" /><stop
+         offset="0.24"
+         stop-color="#f9fafc"
+         stop-opacity="1"
+         id="stop4023" /><stop
+         offset="0.54"
+         stop-color="#feffff"
+         stop-opacity="1"
+         id="stop4025" /></linearGradient><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient4198"
+       gradientTransform="scale(2.2585002,0.44277172)"
+       x1="-0.16603939"
+       y1="1333.4524"
+       x2="21.786582"
+       y2="1333.4524"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient4200"
+       gradientTransform="scale(2.093628,0.47763977)"
+       x1="-0.17911492"
+       y1="1233.6389"
+       x2="25.111911"
+       y2="1233.6389"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient4202"
+       gradientTransform="scale(2.093628,0.47763977)"
+       x1="-0.17911492"
+       y1="1233.6389"
+       x2="25.111911"
+       y2="1233.6389"
+       gradientUnits="userSpaceOnUse" /></defs><defs
+     id="Filters"><filter
+       id="filter_2"
+       color-interpolation-filters="sRGB"><feGaussianBlur
+         stdDeviation="2"
+         id="feGaussianBlur4029" /></filter></defs><g
+     v:mID="6"
+     v:index="4"
+     v:groupContext="foregroundPage"
+     id="g4031"
+     transform="translate(-13.045598,-14.67318)"><v:userDefs><v:ud
+         v:nameU="msvThemeOrder"
+         v:val="VT0(0):26" /></v:userDefs><title
+       id="title4033">Page-4</title><v:pageProperties
+       v:drawingScale="0.0393701"
+       v:pageScale="0.0393701"
+       v:drawingUnits="24"
+       v:shadowOffsetX="8.50394"
+       v:shadowOffsetY="-8.50394" /><g
+       id="shape39-1"
+       v:mID="39"
+       v:groupContext="shape"
+       transform="translate(18,-516.416)"><title
+         id="title4036">Rectangle.40</title><desc
+         id="desc4038">User Application</desc><v:userDefs><v:ud
+           v:nameU="visVersion"
+           v:val="VT0(15):26" /></v:userDefs><v:textBlock
+         v:margins="rect(4,4,4,4)"
+         v:tabSpace="42.5197" /><v:textRect
+         cx="127.559"
+         cy="564.846"
+         width="255.12"
+         height="60.8598" /><g
+         id="shadow39-2"
+         v:groupContext="shadow"
+         v:shadowOffsetX="0.345598"
+         v:shadowOffsetY="-1.97279"
+         v:shadowType="1"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="534.41602"
+           width="255.118"
+           height="60.859798"
+           class="st2"
+           id="rect4041"
+           style="fill:#5b9bd5;fill-opacity:0.25;stroke:#5b9bd5;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="534.41602"
+         width="255.118"
+         height="60.859798"
+         class="st3"
+         id="rect4043"
+         style="fill:#4f87bb;stroke:#40709c;stroke-width:0.75" /><text
+         x="94"
+         y="567.84998"
+         class="st4"
+         v:langID="2057"
+         id="text4045"
+         style="fill:#feffff;font-family:Calibri"><v:paragraph
+   v:horizAlign="1" /><v:tabList />User Application</text>
+</g><g
+       id="group40-7"
+       transform="translate(18,-388.303)"
+       v:mID="40"
+       v:groupContext="group"><title
+         id="title4048">Sheet.40</title><g
+         id="shape41-8"
+         v:mID="41"
+         v:groupContext="shape"><title
+           id="title4051">Rectangle.38</title><desc
+           id="desc4053">DPDK</desc><v:userDefs><v:ud
+             v:nameU="visVersion"
+             v:val="VT0(15):26" /></v:userDefs><v:textBlock
+           v:margins="rect(4,4,4,4)"
+           v:tabSpace="42.5197"
+           v:verticalAlign="0" /><v:textRect
+           cx="127.559"
+           cy="540.665"
+           width="255.12"
+           height="109.22" /><rect
+           x="0"
+           y="486.05499"
+           width="255.118"
+           height="109.22"
+           class="st5"
+           id="rect4055"
+           style="fill:url(#grad0-11);stroke:#4f87bb;stroke-width:0.75" /><text
+           x="228.45"
+           y="499.06"
+           class="st6"
+           v:langID="2057"
+           id="text4057"
+           style="fill:#4f87bb;font-family:Calibri"><v:paragraph
+   v:horizAlign="2" /><v:tabList />DPDK</text>
+</g><g
+         id="shape42-13"
+         v:mID="42"
+         v:groupContext="shape"
+         transform="translate(6.87402,-7.17304)"><title
+           id="title4060">Rectangle.16</title><desc
+           id="desc4062">bonded ethdev</desc><v:userDefs><v:ud
+             v:nameU="visVersion"
+             v:val="VT0(15):26" /></v:userDefs><v:textBlock
+           v:margins="rect(4,4,4,4)"
+           v:tabSpace="42.5197"
+           v:verticalAlign="0" /><v:textRect
+           cx="120.579"
+           cy="559.222"
+           width="241.16"
+           height="72.1072" /><g
+           id="shadow42-14"
+           v:groupContext="shadow"
+           v:shadowOffsetX="0.345598"
+           v:shadowOffsetY="-1.97279"
+           v:shadowType="1"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="523.16803"
+             width="241.157"
+             height="72.107201"
+             class="st7"
+             id="rect4065"
+             style="fill:#759fcc;fill-opacity:0.25;stroke:#759fcc;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="523.16803"
+           width="241.157"
+           height="72.107201"
+           class="st8"
+           id="rect4067"
+           style="fill:#668bb3;stroke:#547395;stroke-width:0.75" /><text
+           x="89.650002"
+           y="536.16998"
+           class="st4"
+           v:langID="2057"
+           id="text4069"
+           style="fill:#feffff;font-family:Calibri"><v:paragraph
+   v:horizAlign="1" /><v:tabList />bonded ethdev</text>
+</g><g
+         id="shape43-19"
+         v:mID="43"
+         v:groupContext="shape"
+         transform="translate(13.9606,-14.1732)"><title
+           id="title4072">Rectangle.11</title><desc
+           id="desc4074">ethdev port</desc><v:userDefs><v:ud
+             v:nameU="visVersion"
+             v:val="VT0(15):26" /></v:userDefs><v:textBlock
+           v:margins="rect(4,4,4,4)"
+           v:tabSpace="42.5197" /><v:textRect
+           cx="35.4331"
+           cy="577.516"
+           width="70.87"
+           height="35.5195" /><g
+           id="shadow43-20"
+           v:groupContext="shadow"
+           v:shadowOffsetX="0.345598"
+           v:shadowOffsetY="-1.97279"
+           v:shadowType="1"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st9"
+             id="rect4077"
+             style="fill:#5b9bd5;fill-opacity:0.22000002;stroke:#5b9bd5;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st10"
+           id="rect4079"
+           style="fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           v:langID="2057"
+           id="text4081"
+           style="fill:#feffff;font-family:Calibri"><v:paragraph
+   v:horizAlign="1" /><v:tabList />ethdev port</text>
+</g><g
+         id="shape44-25"
+         v:mID="44"
+         v:groupContext="shape"
+         transform="translate(91.9134,-14.1732)"><title
+           id="title4084">Rectangle.14</title><desc
+           id="desc4086">ethdev port</desc><v:userDefs><v:ud
+             v:nameU="visVersion"
+             v:val="VT0(15):26" /></v:userDefs><v:textBlock
+           v:margins="rect(4,4,4,4)"
+           v:tabSpace="42.5197" /><v:textRect
+           cx="35.4331"
+           cy="577.516"
+           width="70.87"
+           height="35.5195" /><g
+           id="shadow44-26"
+           v:groupContext="shadow"
+           v:shadowOffsetX="0.345598"
+           v:shadowOffsetY="-1.97279"
+           v:shadowType="1"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st11"
+             id="rect4089"
+             style="fill:#bdd0e9;fill-opacity:0.22000002;stroke:#bdd0e9;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st12"
+           id="rect4091"
+           style="fill:#bdd0e9;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           v:langID="2057"
+           id="text4093"
+           style="fill:#feffff;font-family:Calibri"><v:paragraph
+   v:horizAlign="1" /><v:tabList />ethdev port</text>
+</g><g
+         id="shape45-31"
+         v:mID="45"
+         v:groupContext="shape"
+         transform="translate(169.866,-14.1732)"><title
+           id="title4096">Rectangle.15</title><desc
+           id="desc4098">ethdev port</desc><v:userDefs><v:ud
+             v:nameU="visVersion"
+             v:val="VT0(15):26" /></v:userDefs><v:textBlock
+           v:margins="rect(4,4,4,4)"
+           v:tabSpace="42.5197" /><v:textRect
+           cx="35.4331"
+           cy="577.516"
+           width="70.87"
+           height="35.5195" /><g
+           id="shadow45-32"
+           v:groupContext="shadow"
+           v:shadowOffsetX="0.345598"
+           v:shadowOffsetY="-1.97279"
+           v:shadowType="1"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st11"
+             id="rect4101"
+             style="fill:#bdd0e9;fill-opacity:0.22000002;stroke:#bdd0e9;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st12"
+           id="rect4103"
+           style="fill:#bdd0e9;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           v:langID="2057"
+           id="text4105"
+           style="fill:#feffff;font-family:Calibri"><v:paragraph
+   v:horizAlign="1" /><v:tabList />ethdev port</text>
+</g></g><g
+       id="shape46-37"
+       v:mID="46"
+       v:groupContext="shape"
+       transform="matrix(0.00217642,-0.99999763,0.99999763,0.00217642,-449.821,126.396)"><title
+         id="title4108">Simple Double Arrow.47</title><v:userDefs><v:ud
+           v:nameU="visVersion"
+           v:val="VT0(15):26" /><v:ud
+           v:nameU="ArrowType"
+           v:prompt=""
+           v:val="VT0(3):26" /></v:userDefs><path
+         d="m 0,595.28 11.34,-4.49 0,2.24 26.15,0 0,-2.24 11.34,4.49 -11.34,4.48 0,-2.24 -26.15,0 0,2.24 L 0,595.28 z"
+         class="st13"
+         id="path4110"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient4198);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape47-41"
+       v:mID="47"
+       v:groupContext="shape"
+       transform="matrix(0.01125714,-0.99993664,0.99993664,0.01125714,-532.876,239.429)"><title
+         id="title4113">Simple Arrow.47</title><v:userDefs><v:ud
+           v:nameU="visVersion"
+           v:val="VT0(15):26" /><v:ud
+           v:nameU="ArrowType"
+           v:prompt=""
+           v:val="VT0(2):26" /></v:userDefs><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 40.86,0 0,2.84 0,2.83 -40.86,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path4115"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient4200);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape48-44"
+       v:mID="48"
+       v:groupContext="shape"
+       transform="matrix(-0.01125714,0.99993664,-0.99993664,-0.01125714,670.114,199.457)"><title
+         id="title4118">Simple Arrow.49</title><v:userDefs><v:ud
+           v:nameU="visVersion"
+           v:val="VT0(15):26" /><v:ud
+           v:nameU="ArrowType"
+           v:prompt=""
+           v:val="VT0(2):26" /></v:userDefs><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 40.86,0 0,2.84 0,2.83 -40.86,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path4120"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient4202);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape49-47"
+       v:mID="49"
+       v:groupContext="shape"
+       transform="translate(156.898,-472.791)"><title
+         id="title4123">Square.108</title><desc
+         id="desc4125">1</desc><v:userDefs><v:ud
+           v:nameU="visVersion"
+           v:val="VT0(15):26" /></v:userDefs><v:textBlock
+         v:margins="rect(4,4,4,4)"
+         v:tabSpace="42.5197" /><v:textRect
+         cx="7.08661"
+         cy="588.189"
+         width="14.18"
+         height="14.1732" /><g
+         id="shadow49-48"
+         v:groupContext="shadow"
+         v:shadowOffsetX="0.345598"
+         v:shadowOffsetY="-1.97279"
+         v:shadowType="1"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect4128"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect4130"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         v:langID="2057"
+         id="text4132"
+         style="fill:#feffff;font-family:Calibri"><v:paragraph
+   v:horizAlign="1" /><v:tabList />1</text>
+</g><g
+       id="shape50-53"
+       v:mID="50"
+       v:groupContext="shape"
+       transform="translate(156.898,-492.123)"><title
+         id="title4135">Square.109</title><desc
+         id="desc4137">2</desc><v:userDefs><v:ud
+           v:nameU="visVersion"
+           v:val="VT0(15):26" /></v:userDefs><v:textBlock
+         v:margins="rect(4,4,4,4)"
+         v:tabSpace="42.5197" /><v:textRect
+         cx="7.08661"
+         cy="588.189"
+         width="14.18"
+         height="14.1732" /><g
+         id="shadow50-54"
+         v:groupContext="shadow"
+         v:shadowOffsetX="0.345598"
+         v:shadowOffsetY="-1.97279"
+         v:shadowType="1"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect4140"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect4142"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         v:langID="2057"
+         id="text4144"
+         style="fill:#feffff;font-family:Calibri"><v:paragraph
+   v:horizAlign="1" /><v:tabList />2</text>
+</g><g
+       id="shape51-59"
+       v:mID="51"
+       v:groupContext="shape"
+       transform="translate(156.898,-510.831)"><title
+         id="title4147">Square.110</title><desc
+         id="desc4149">3</desc><v:userDefs><v:ud
+           v:nameU="visVersion"
+           v:val="VT0(15):26" /></v:userDefs><v:textBlock
+         v:margins="rect(4,4,4,4)"
+         v:tabSpace="42.5197" /><v:textRect
+         cx="7.08661"
+         cy="588.189"
+         width="14.18"
+         height="14.1732" /><g
+         id="shadow51-60"
+         v:groupContext="shadow"
+         v:shadowOffsetX="0.345598"
+         v:shadowOffsetY="-1.97279"
+         v:shadowType="1"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect4152"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect4154"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         v:langID="2057"
+         id="text4156"
+         style="fill:#feffff;font-family:Calibri"><v:paragraph
+   v:horizAlign="1" /><v:tabList />3</text>
+</g><g
+       id="shape52-65"
+       v:mID="52"
+       v:groupContext="shape"
+       transform="translate(39.2598,-344.636)"><title
+         id="title4159">Square.111</title><desc
+         id="desc4161">1</desc><v:userDefs><v:ud
+           v:nameU="visVersion"
+           v:val="VT0(15):26" /></v:userDefs><v:textBlock
+         v:margins="rect(4,4,4,4)"
+         v:tabSpace="42.5197" /><v:textRect
+         cx="7.08661"
+         cy="588.189"
+         width="14.18"
+         height="14.1732" /><g
+         id="shadow52-66"
+         v:groupContext="shadow"
+         v:shadowOffsetX="0.345598"
+         v:shadowOffsetY="-1.97279"
+         v:shadowType="1"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect4164"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect4166"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         v:langID="2057"
+         id="text4168"
+         style="fill:#feffff;font-family:Calibri"><v:paragraph
+   v:horizAlign="1" /><v:tabList />1</text>
+</g><g
+       id="shape53-71"
+       v:mID="53"
+       v:groupContext="shape"
+       transform="translate(39.2598,-363.969)"><title
+         id="title4171">Square.112</title><desc
+         id="desc4173">2</desc><v:userDefs><v:ud
+           v:nameU="visVersion"
+           v:val="VT0(15):26" /></v:userDefs><v:textBlock
+         v:margins="rect(4,4,4,4)"
+         v:tabSpace="42.5197" /><v:textRect
+         cx="7.08661"
+         cy="588.189"
+         width="14.18"
+         height="14.1732" /><g
+         id="shadow53-72"
+         v:groupContext="shadow"
+         v:shadowOffsetX="0.345598"
+         v:shadowOffsetY="-1.97279"
+         v:shadowType="1"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect4176"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect4178"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         v:langID="2057"
+         id="text4180"
+         style="fill:#feffff;font-family:Calibri"><v:paragraph
+   v:horizAlign="1" /><v:tabList />2</text>
+</g><g
+       id="shape54-77"
+       v:mID="54"
+       v:groupContext="shape"
+       transform="translate(39.2598,-382.677)"><title
+         id="title4183">Square.113</title><desc
+         id="desc4185">3</desc><v:userDefs><v:ud
+           v:nameU="visVersion"
+           v:val="VT0(15):26" /></v:userDefs><v:textBlock
+         v:margins="rect(4,4,4,4)"
+         v:tabSpace="42.5197" /><v:textRect
+         cx="7.08661"
+         cy="588.189"
+         width="14.18"
+         height="14.1732" /><g
+         id="shadow54-78"
+         v:groupContext="shadow"
+         v:shadowOffsetX="0.345598"
+         v:shadowOffsetY="-1.97279"
+         v:shadowType="1"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect4188"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect4190"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         v:langID="2057"
+         id="text4192"
+         style="fill:#feffff;font-family:Calibri"><v:paragraph
+   v:horizAlign="1" /><v:tabList />3</text>
+</g></g></svg>
\ No newline at end of file
diff --git a/doc/guides/prog_guide/img/bond-mode-2.svg b/doc/guides/prog_guide/img/bond-mode-2.svg
new file mode 100644 (file)
index 0000000..3dbb598
--- /dev/null
@@ -0,0 +1,702 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generated by Microsoft Visio, SVG Export link bonding - mode 2.svg Page-4 -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="332.147"
+   height="358.22595"
+   viewBox="0 0 265.71799 286.58082"
+   xml:space="preserve"
+   color-interpolation-filters="sRGB"
+   class="st20"
+   id="svg5449"
+   version="1.1"
+   inkscape:version="0.48.5 r10040"
+   sodipodi:docname="bond-mode-2.svg"
+   style="font-size:12px;fill:none;stroke-linecap:square;stroke-miterlimit:3;overflow:visible"><metadata
+     id="metadata5725"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="640"
+     inkscape:window-height="480"
+     id="namedview5723"
+     showgrid="false"
+     inkscape:zoom="0.29932695"
+     inkscape:cx="509.87351"
+     inkscape:cy="4.5199676"
+     inkscape:window-x="0"
+     inkscape:window-y="29"
+     inkscape:window-maximized="0"
+     inkscape:current-layer="svg5449"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0" /><style
+     type="text/css"
+     id="style5451">
+               .st1 {visibility:visible}
+               .st2 {fill:#5b9bd5;fill-opacity:0.25;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.25}
+               .st3 {fill:#4f87bb;stroke:#40709c;stroke-width:0.75}
+               .st4 {fill:#feffff;font-family:Calibri;font-size:0.833336em}
+               .st5 {fill:url(#grad0-11);stroke:#4f87bb;stroke-width:0.75}
+               .st6 {fill:#4f87bb;font-family:Calibri;font-size:0.833336em}
+               .st7 {fill:#759fcc;fill-opacity:0.25;filter:url(#filter_2);stroke:#759fcc;stroke-opacity:0.25}
+               .st8 {fill:#668bb3;stroke:#547395;stroke-width:0.75}
+               .st9 {fill:#5b9bd5;fill-opacity:0.22;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.22}
+               .st10 {fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25}
+               .st11 {fill:#759fcc;fill-opacity:0.22;filter:url(#filter_2);stroke:#759fcc;stroke-opacity:0.22}
+               .st12 {fill:#759fcc;stroke:#c7c8c8;stroke-width:0.25}
+               .st13 {fill:url(#grad0-40);stroke:#a6b6cd;stroke-width:0.75}
+               .st14 {fill:#70ad47;fill-opacity:0.25;filter:url(#filter_2);stroke:#70ad47;stroke-opacity:0.25}
+               .st15 {fill:#61973d;stroke:#507e31;stroke-width:0.75}
+               .st16 {fill:#fec000;fill-opacity:0.25;filter:url(#filter_2);stroke:#fec000;stroke-opacity:0.25}
+               .st17 {fill:#dfa800;stroke:#ba8c00;stroke-width:0.75}
+               .st18 {fill:#ed7d31;fill-opacity:0.25;filter:url(#filter_2);stroke:#ed7d31;stroke-opacity:0.25}
+               .st19 {fill:#d06d29;stroke:#ae5a21;stroke-width:0.75}
+               .st20 {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-11"
+       x1="-0.24584444"
+       y1="740.8343"
+       x2="167.49742"
+       y2="740.8343"
+       gradientTransform="scale(1.5253548,0.65558519)"
+       gradientUnits="userSpaceOnUse"><stop
+         offset="0"
+         stop-color="#e9eff7"
+         stop-opacity="1"
+         id="stop5455" /><stop
+         offset="0.24"
+         stop-color="#f4f7fb"
+         stop-opacity="1"
+         id="stop5457" /><stop
+         offset="0.54"
+         stop-color="#feffff"
+         stop-opacity="1"
+         id="stop5459" /></linearGradient><linearGradient
+       id="grad0-40"
+       x1="0"
+       y1="0"
+       x2="1"
+       y2="0"
+       gradientTransform="matrix(0.5,0.8660254,-0.8660254,0.5,0.6830127,-0.1830127)"><stop
+         offset="0"
+         stop-color="#f3f6fa"
+         stop-opacity="1"
+         id="stop5462" /><stop
+         offset="0.24"
+         stop-color="#f9fafc"
+         stop-opacity="1"
+         id="stop5464" /><stop
+         offset="0.54"
+         stop-color="#feffff"
+         stop-opacity="1"
+         id="stop5466" /></linearGradient><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6619"
+       gradientTransform="scale(3.1025013,0.32232057)"
+       x1="-0.12087021"
+       y1="1831.7633"
+       x2="30.035443"
+       y2="1831.7633"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6621"
+       gradientTransform="scale(2.093628,0.47763977)"
+       x1="-0.17911492"
+       y1="1233.6389"
+       x2="25.111911"
+       y2="1233.6389"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6623"
+       gradientTransform="scale(2.093628,0.47763977)"
+       x1="-0.17911492"
+       y1="1233.6389"
+       x2="25.111911"
+       y2="1233.6389"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6625"
+       gradientTransform="scale(2.1254139,0.4704966)"
+       x1="-0.17643623"
+       y1="1252.3682"
+       x2="25.498563"
+       y2="1252.3682"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6627"
+       gradientTransform="scale(2.1254139,0.4704966)"
+       x1="-0.17643623"
+       y1="1252.3682"
+       x2="25.498563"
+       y2="1252.3682"
+       gradientUnits="userSpaceOnUse" /></defs><defs
+     id="Filters"><filter
+       id="filter_2"
+       color-interpolation-filters="sRGB"><feGaussianBlur
+         stdDeviation="2"
+         id="feGaussianBlur5470" /></filter></defs><g
+     id="g5472"
+     transform="translate(-13.045598,-14.67318)"><title
+       id="title5474">Page-4</title><g
+       id="shape55-1"
+       transform="translate(18,-516.416)"><title
+         id="title5477">Rectangle.151</title><desc
+         id="desc5479">User Application</desc><g
+         id="shadow55-2"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="534.41602"
+           width="255.118"
+           height="60.859798"
+           class="st2"
+           id="rect5482"
+           style="fill:#5b9bd5;fill-opacity:0.25;stroke:#5b9bd5;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="534.41602"
+         width="255.118"
+         height="60.859798"
+         class="st3"
+         id="rect5484"
+         style="fill:#4f87bb;stroke:#40709c;stroke-width:0.75" /><text
+         x="94"
+         y="567.84998"
+         class="st4"
+         id="text5486"
+         style="fill:#feffff;font-family:Calibri">User Application</text>
+</g><g
+       id="group56-7"
+       transform="translate(18,-344.323)"><title
+         id="title5489">Sheet.56</title><g
+         id="shape57-8"><title
+           id="title5492">Rectangle.38</title><desc
+           id="desc5494">DPDK</desc><rect
+           x="0"
+           y="486.05499"
+           width="255.118"
+           height="109.22"
+           class="st5"
+           id="rect5496"
+           style="fill:url(#grad0-11);stroke:#4f87bb;stroke-width:0.75" /><text
+           x="228.45"
+           y="499.06"
+           class="st6"
+           id="text5498"
+           style="fill:#4f87bb;font-family:Calibri">DPDK</text>
+</g><g
+         id="shape58-13"
+         transform="translate(6.87402,-7.17304)"><title
+           id="title5501">Rectangle.16</title><desc
+           id="desc5503">bonded ethdev</desc><g
+           id="shadow58-14"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="523.16803"
+             width="241.157"
+             height="72.107201"
+             class="st7"
+             id="rect5506"
+             style="fill:#759fcc;fill-opacity:0.25;stroke:#759fcc;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="523.16803"
+           width="241.157"
+           height="72.107201"
+           class="st8"
+           id="rect5508"
+           style="fill:#668bb3;stroke:#547395;stroke-width:0.75" /><text
+           x="89.650002"
+           y="536.16998"
+           class="st4"
+           id="text5510"
+           style="fill:#feffff;font-family:Calibri">bonded ethdev</text>
+</g><g
+         id="shape59-19"
+         transform="translate(13.9606,-14.1732)"><title
+           id="title5513">Rectangle.11</title><desc
+           id="desc5515">ethdev port</desc><g
+           id="shadow59-20"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st9"
+             id="rect5518"
+             style="fill:#5b9bd5;fill-opacity:0.22000002;stroke:#5b9bd5;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st10"
+           id="rect5520"
+           style="fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           id="text5522"
+           style="fill:#feffff;font-family:Calibri">ethdev port</text>
+</g><g
+         id="shape60-25"
+         transform="translate(91.9134,-14.1732)"><title
+           id="title5525">Rectangle.14</title><desc
+           id="desc5527">ethdev port</desc><g
+           id="shadow60-26"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st11"
+             id="rect5530"
+             style="fill:#759fcc;fill-opacity:0.22000002;stroke:#759fcc;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st12"
+           id="rect5532"
+           style="fill:#759fcc;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           id="text5534"
+           style="fill:#feffff;font-family:Calibri">ethdev port</text>
+</g><g
+         id="shape61-31"
+         transform="translate(169.866,-14.1732)"><title
+           id="title5537">Rectangle.15</title><desc
+           id="desc5539">ethdev port</desc><g
+           id="shadow61-32"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st11"
+             id="rect5542"
+             style="fill:#759fcc;fill-opacity:0.22000002;stroke:#759fcc;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st12"
+           id="rect5544"
+           style="fill:#759fcc;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           id="text5546"
+           style="fill:#feffff;font-family:Calibri">ethdev port</text>
+</g></g><g
+       id="shape62-37"
+       transform="matrix(0.00114494,-0.99999934,0.99999934,0.00114494,-449.822,170.991)"><title
+         id="title5549">Simple Double Arrow.158</title><path
+         d="m 0,595.28 11.34,-4.49 0,2.24 70.13,0 0,-2.24 11.34,4.49 -11.34,4.48 0,-2.24 -70.13,0 0,2.24 L 0,595.28 z"
+         class="st13"
+         id="path5551"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6619);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape63-41"
+       transform="matrix(0.01125714,-0.99993664,0.99993664,0.01125714,-532.876,283.409)"><title
+         id="title5554">Simple Arrow.159</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 40.86,0 0,2.84 0,2.83 -40.86,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path5556"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6621);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape64-44"
+       transform="matrix(-0.01125714,0.99993664,-0.99993664,-0.01125714,670.114,243.437)"><title
+         id="title5559">Simple Arrow.160</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 40.86,0 0,2.84 0,2.83 -40.86,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path5561"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6623);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape65-47"
+       transform="matrix(0.01448398,-0.9998951,0.9998951,0.01448398,-450.646,281.973)"><title
+         id="title5564">Simple Arrow.161</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 42.48,0 0,2.84 0,2.83 -42.48,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path5566"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6625);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape66-50"
+       transform="matrix(-0.01185051,-0.99992978,0.99992978,-0.01185051,-371.297,297.649)"><title
+         id="title5569">Simple Arrow.162</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 42.48,0 0,2.84 0,2.83 -42.48,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path5571"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6627);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape67-53"
+       transform="translate(121.039,-421.115)"><title
+         id="title5574">Square.163</title><desc
+         id="desc5576">1</desc><g
+         id="shadow67-54"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect5579"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect5581"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text5583"
+         style="fill:#feffff;font-family:Calibri">1</text>
+</g><g
+       id="shape68-59"
+       transform="translate(121.039,-440.447)"><title
+         id="title5586">Square.164</title><desc
+         id="desc5588">2</desc><g
+         id="shadow68-60"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st16"
+           id="rect5591"
+           style="fill:#fec000;fill-opacity:0.25;stroke:#fec000;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st17"
+         id="rect5593"
+         style="fill:#dfa800;stroke:#ba8c00;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text5595"
+         style="fill:#feffff;font-family:Calibri">2</text>
+</g><g
+       id="shape69-65"
+       transform="translate(121.039,-459.156)"><title
+         id="title5598">Square.165</title><desc
+         id="desc5600">3</desc><g
+         id="shadow69-66"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect5603"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect5605"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text5607"
+         style="fill:#feffff;font-family:Calibri">3</text>
+</g><g
+       id="shape70-71"
+       transform="translate(121.039,-478.488)"><title
+         id="title5610">Square.166</title><desc
+         id="desc5612">4</desc><g
+         id="shadow70-72"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st16"
+           id="rect5615"
+           style="fill:#fec000;fill-opacity:0.25;stroke:#fec000;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st17"
+         id="rect5617"
+         style="fill:#dfa800;stroke:#ba8c00;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text5619"
+         style="fill:#feffff;font-family:Calibri">4</text>
+</g><g
+       id="shape71-77"
+       transform="translate(121.039,-497.82)"><title
+         id="title5622">Square.167</title><desc
+         id="desc5624">5</desc><g
+         id="shadow71-78"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect5627"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect5629"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text5631"
+         style="fill:#feffff;font-family:Calibri">5</text>
+</g><g
+       id="shape72-83"
+       transform="translate(121.039,-517.153)"><title
+         id="title5634">Square.168</title><desc
+         id="desc5636">6</desc><g
+         id="shadow72-84"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st18"
+           id="rect5639"
+           style="fill:#ed7d31;fill-opacity:0.25;stroke:#ed7d31;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st19"
+         id="rect5641"
+         style="fill:#d06d29;stroke:#ae5a21;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text5643"
+         style="fill:#feffff;font-family:Calibri">6</text>
+</g><g
+       id="group73-89"
+       transform="translate(116.787,-301.294)"><title
+         id="title5646">Sheet.73</title><g
+         id="shape74-90"><title
+           id="title5649">Square.172</title><desc
+           id="desc5651">2</desc><g
+           id="shadow74-91"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st16"
+             id="rect5654"
+             style="fill:#fec000;fill-opacity:0.25;stroke:#fec000;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st17"
+           id="rect5656"
+           style="fill:#dfa800;stroke:#ba8c00;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text5658"
+           style="fill:#feffff;font-family:Calibri">2</text>
+</g><g
+         id="shape75-96"
+         transform="translate(0,-19.0205)"><title
+           id="title5661">Square.173</title><desc
+           id="desc5663">4</desc><g
+           id="shadow75-97"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st16"
+             id="rect5666"
+             style="fill:#fec000;fill-opacity:0.25;stroke:#fec000;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st17"
+           id="rect5668"
+           style="fill:#dfa800;stroke:#ba8c00;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text5670"
+           style="fill:#feffff;font-family:Calibri">4</text>
+</g></g><g
+       id="shape76-102"
+       transform="translate(194.74,-301.294)"><title
+         id="title5673">Square.175</title><desc
+         id="desc5675">6</desc><g
+         id="shadow76-103"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st18"
+           id="rect5678"
+           style="fill:#ed7d31;fill-opacity:0.25;stroke:#ed7d31;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st19"
+         id="rect5680"
+         style="fill:#d06d29;stroke:#ae5a21;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text5682"
+         style="fill:#feffff;font-family:Calibri">6</text>
+</g><g
+       id="group77-108"
+       transform="translate(38.8346,-301.294)"><title
+         id="title5685">Sheet.77</title><g
+         id="shape78-109"><title
+           id="title5688">Square.169</title><desc
+           id="desc5690">1</desc><g
+           id="shadow78-110"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st14"
+             id="rect5693"
+             style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st15"
+           id="rect5695"
+           style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text5697"
+           style="fill:#feffff;font-family:Calibri">1</text>
+</g><g
+         id="shape79-115"
+         transform="translate(0,-19.0205)"><title
+           id="title5700">Square.170</title><desc
+           id="desc5702">3</desc><g
+           id="shadow79-116"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st14"
+             id="rect5705"
+             style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st15"
+           id="rect5707"
+           style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text5709"
+           style="fill:#feffff;font-family:Calibri">3</text>
+</g><g
+         id="shape80-121"
+         transform="translate(0,-38.1813)"><title
+           id="title5712">Square.171</title><desc
+           id="desc5714">5</desc><g
+           id="shadow80-122"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st14"
+             id="rect5717"
+             style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st15"
+           id="rect5719"
+           style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text5721"
+           style="fill:#feffff;font-family:Calibri">5</text>
+</g></g></g></svg>
\ No newline at end of file
diff --git a/doc/guides/prog_guide/img/bond-mode-3.svg b/doc/guides/prog_guide/img/bond-mode-3.svg
new file mode 100644 (file)
index 0000000..d2dbe3a
--- /dev/null
@@ -0,0 +1,702 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generated by Microsoft Visio, SVG Export link bonding - mode 3.svg Page-4 -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="332.147"
+   height="300.50479"
+   viewBox="0 0 265.71799 240.40388"
+   xml:space="preserve"
+   color-interpolation-filters="sRGB"
+   class="st16"
+   id="svg5727"
+   version="1.1"
+   inkscape:version="0.48.5 r10040"
+   sodipodi:docname="bond-mode-3.svg"
+   style="font-size:12px;fill:none;stroke-linecap:square;stroke-miterlimit:3;overflow:visible"><metadata
+     id="metadata6009"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="640"
+     inkscape:window-height="480"
+     id="namedview6007"
+     showgrid="false"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0"
+     inkscape:zoom="0.29932695"
+     inkscape:cx="509.87351"
+     inkscape:cy="-53.201198"
+     inkscape:window-x="0"
+     inkscape:window-y="29"
+     inkscape:window-maximized="0"
+     inkscape:current-layer="svg5727" /><style
+     type="text/css"
+     id="style5729">
+               .st1 {visibility:visible}
+               .st2 {fill:#5b9bd5;fill-opacity:0.25;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.25}
+               .st3 {fill:#4f87bb;stroke:#40709c;stroke-width:0.75}
+               .st4 {fill:#feffff;font-family:Calibri;font-size:0.833336em}
+               .st5 {fill:url(#grad0-11);stroke:#4f87bb;stroke-width:0.75}
+               .st6 {fill:#4f87bb;font-family:Calibri;font-size:0.833336em}
+               .st7 {fill:#759fcc;fill-opacity:0.25;filter:url(#filter_2);stroke:#759fcc;stroke-opacity:0.25}
+               .st8 {fill:#668bb3;stroke:#547395;stroke-width:0.75}
+               .st9 {fill:#5b9bd5;fill-opacity:0.22;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.22}
+               .st10 {fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25}
+               .st11 {fill:#759fcc;fill-opacity:0.22;filter:url(#filter_2);stroke:#759fcc;stroke-opacity:0.22}
+               .st12 {fill:#759fcc;stroke:#c7c8c8;stroke-width:0.25}
+               .st13 {fill:url(#grad0-40);stroke:#a6b6cd;stroke-width:0.75}
+               .st14 {fill:#70ad47;fill-opacity:0.25;filter:url(#filter_2);stroke:#70ad47;stroke-opacity:0.25}
+               .st15 {fill:#61973d;stroke:#507e31;stroke-width:0.75}
+               .st16 {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-11"
+       x1="-0.24584444"
+       y1="740.8343"
+       x2="167.49742"
+       y2="740.8343"
+       gradientTransform="scale(1.5253548,0.65558519)"
+       gradientUnits="userSpaceOnUse"><stop
+         offset="0"
+         stop-color="#e9eff7"
+         stop-opacity="1"
+         id="stop5733" /><stop
+         offset="0.24"
+         stop-color="#f4f7fb"
+         stop-opacity="1"
+         id="stop5735" /><stop
+         offset="0.54"
+         stop-color="#feffff"
+         stop-opacity="1"
+         id="stop5737" /></linearGradient><linearGradient
+       id="grad0-40"
+       x1="0"
+       y1="0"
+       x2="1"
+       y2="0"
+       gradientTransform="matrix(0.5,0.8660254,-0.8660254,0.5,0.6830127,-0.1830127)"><stop
+         offset="0"
+         stop-color="#f3f6fa"
+         stop-opacity="1"
+         id="stop5740" /><stop
+         offset="0.24"
+         stop-color="#f9fafc"
+         stop-opacity="1"
+         id="stop5742" /><stop
+         offset="0.54"
+         stop-color="#feffff"
+         stop-opacity="1"
+         id="stop5744" /></linearGradient><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6590"
+       gradientTransform="scale(2.2585002,0.44277172)"
+       x1="-0.16603939"
+       y1="1333.4524"
+       x2="21.786582"
+       y2="1333.4524"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6592"
+       gradientTransform="scale(2.093628,0.47763977)"
+       x1="-0.17911492"
+       y1="1233.6389"
+       x2="25.111911"
+       y2="1233.6389"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6594"
+       gradientTransform="scale(2.093628,0.47763977)"
+       x1="-0.17911492"
+       y1="1233.6389"
+       x2="25.111911"
+       y2="1233.6389"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6596"
+       gradientTransform="scale(2.1254139,0.4704966)"
+       x1="-0.17643623"
+       y1="1252.3682"
+       x2="25.498563"
+       y2="1252.3682"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6598"
+       gradientTransform="scale(2.1254139,0.4704966)"
+       x1="-0.17643623"
+       y1="1252.3682"
+       x2="25.498563"
+       y2="1252.3682"
+       gradientUnits="userSpaceOnUse" /></defs><defs
+     id="Filters"><filter
+       id="filter_2"
+       color-interpolation-filters="sRGB"><feGaussianBlur
+         stdDeviation="2"
+         id="feGaussianBlur5748" /></filter></defs><g
+     id="g5750"
+     transform="translate(-13.045598,-14.67318)"><title
+       id="title5752">Page-4</title><g
+       id="shape81-1"
+       transform="translate(18,-516.416)"><title
+         id="title5755">Rectangle.74</title><desc
+         id="desc5757">User Application</desc><g
+         id="shadow81-2"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="534.41602"
+           width="255.118"
+           height="60.859798"
+           class="st2"
+           id="rect5760"
+           style="fill:#5b9bd5;fill-opacity:0.25;stroke:#5b9bd5;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="534.41602"
+         width="255.118"
+         height="60.859798"
+         class="st3"
+         id="rect5762"
+         style="fill:#4f87bb;stroke:#40709c;stroke-width:0.75" /><text
+         x="94"
+         y="567.84998"
+         class="st4"
+         id="text5764"
+         style="fill:#feffff;font-family:Calibri">User Application</text>
+</g><g
+       id="group82-7"
+       transform="translate(18,-388.303)"><title
+         id="title5767">Sheet.82</title><g
+         id="shape83-8"><title
+           id="title5770">Rectangle.38</title><desc
+           id="desc5772">DPDK</desc><rect
+           x="0"
+           y="486.05499"
+           width="255.118"
+           height="109.22"
+           class="st5"
+           id="rect5774"
+           style="fill:url(#grad0-11);stroke:#4f87bb;stroke-width:0.75" /><text
+           x="228.45"
+           y="499.06"
+           class="st6"
+           id="text5776"
+           style="fill:#4f87bb;font-family:Calibri">DPDK</text>
+</g><g
+         id="shape84-13"
+         transform="translate(6.87402,-7.17304)"><title
+           id="title5779">Rectangle.16</title><desc
+           id="desc5781">bonded ethdev</desc><g
+           id="shadow84-14"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="523.16803"
+             width="241.157"
+             height="72.107201"
+             class="st7"
+             id="rect5784"
+             style="fill:#759fcc;fill-opacity:0.25;stroke:#759fcc;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="523.16803"
+           width="241.157"
+           height="72.107201"
+           class="st8"
+           id="rect5786"
+           style="fill:#668bb3;stroke:#547395;stroke-width:0.75" /><text
+           x="89.650002"
+           y="536.16998"
+           class="st4"
+           id="text5788"
+           style="fill:#feffff;font-family:Calibri">bonded ethdev</text>
+</g><g
+         id="shape85-19"
+         transform="translate(13.9606,-14.1732)"><title
+           id="title5791">Rectangle.11</title><desc
+           id="desc5793">ethdev port</desc><g
+           id="shadow85-20"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st9"
+             id="rect5796"
+             style="fill:#5b9bd5;fill-opacity:0.22000002;stroke:#5b9bd5;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st10"
+           id="rect5798"
+           style="fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           id="text5800"
+           style="fill:#feffff;font-family:Calibri">ethdev port</text>
+</g><g
+         id="shape86-25"
+         transform="translate(91.9134,-14.1732)"><title
+           id="title5803">Rectangle.14</title><desc
+           id="desc5805">ethdev port</desc><g
+           id="shadow86-26"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st11"
+             id="rect5808"
+             style="fill:#759fcc;fill-opacity:0.22000002;stroke:#759fcc;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st12"
+           id="rect5810"
+           style="fill:#759fcc;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           id="text5812"
+           style="fill:#feffff;font-family:Calibri">ethdev port</text>
+</g><g
+         id="shape87-31"
+         transform="translate(169.866,-14.1732)"><title
+           id="title5815">Rectangle.15</title><desc
+           id="desc5817">ethdev port</desc><g
+           id="shadow87-32"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st11"
+             id="rect5820"
+             style="fill:#759fcc;fill-opacity:0.22000002;stroke:#759fcc;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st12"
+           id="rect5822"
+           style="fill:#759fcc;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           id="text5824"
+           style="fill:#feffff;font-family:Calibri">ethdev port</text>
+</g></g><g
+       id="shape88-37"
+       transform="matrix(0.00217642,-0.99999763,0.99999763,0.00217642,-449.821,126.396)"><title
+         id="title5827">Simple Double Arrow.81</title><path
+         d="m 0,595.28 11.34,-4.49 0,2.24 26.15,0 0,-2.24 11.34,4.49 -11.34,4.48 0,-2.24 -26.15,0 0,2.24 L 0,595.28 z"
+         class="st13"
+         id="path5829"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6590);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape89-41"
+       transform="matrix(0.01125714,-0.99993664,0.99993664,0.01125714,-532.876,239.429)"><title
+         id="title5832">Simple Arrow.82</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 40.86,0 0,2.84 0,2.83 -40.86,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path5834"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6592);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape90-44"
+       transform="matrix(-0.01125714,0.99993664,-0.99993664,-0.01125714,670.114,199.457)"><title
+         id="title5837">Simple Arrow.83</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 40.86,0 0,2.84 0,2.83 -40.86,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path5839"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6594);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape91-47"
+       transform="matrix(0.01448398,-0.9998951,0.9998951,0.01448398,-450.646,237.992)"><title
+         id="title5842">Simple Arrow.84</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 42.48,0 0,2.84 0,2.83 -42.48,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path5844"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6596);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape92-50"
+       transform="matrix(-0.01185051,-0.99992978,0.99992978,-0.01185051,-371.297,253.669)"><title
+         id="title5847">Simple Arrow.85</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 42.48,0 0,2.84 0,2.83 -42.48,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path5849"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6598);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="group93-53"
+       transform="translate(37.8425,-347.471)"><title
+         id="title5852">Sheet.93</title><g
+         id="shape94-54"><title
+           id="title5855">Square.125</title><desc
+           id="desc5857">1</desc><g
+           id="shadow94-55"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st14"
+             id="rect5860"
+             style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st15"
+           id="rect5862"
+           style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text5864"
+           style="fill:#feffff;font-family:Calibri">1</text>
+</g><g
+         id="shape95-60"
+         transform="translate(0,-19.3323)"><title
+           id="title5867">Square.126</title><desc
+           id="desc5869">2</desc><g
+           id="shadow95-61"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st14"
+             id="rect5872"
+             style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st15"
+           id="rect5874"
+           style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text5876"
+           style="fill:#feffff;font-family:Calibri">2</text>
+</g><g
+         id="shape96-66"
+         transform="translate(0,-38.0409)"><title
+           id="title5879">Square.127</title><desc
+           id="desc5881">3</desc><g
+           id="shadow96-67"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st14"
+             id="rect5884"
+             style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st15"
+           id="rect5886"
+           style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text5888"
+           style="fill:#feffff;font-family:Calibri">3</text>
+</g></g><g
+       id="group97-72"
+       transform="translate(119.055,-347.471)"><title
+         id="title5891">Sheet.97</title><g
+         id="shape98-73"><title
+           id="title5894">Square.125</title><desc
+           id="desc5896">1</desc><g
+           id="shadow98-74"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st14"
+             id="rect5899"
+             style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st15"
+           id="rect5901"
+           style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text5903"
+           style="fill:#feffff;font-family:Calibri">1</text>
+</g><g
+         id="shape99-79"
+         transform="translate(0,-19.3323)"><title
+           id="title5906">Square.126</title><desc
+           id="desc5908">2</desc><g
+           id="shadow99-80"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st14"
+             id="rect5911"
+             style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st15"
+           id="rect5913"
+           style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text5915"
+           style="fill:#feffff;font-family:Calibri">2</text>
+</g><g
+         id="shape100-85"
+         transform="translate(0,-38.0409)"><title
+           id="title5918">Square.127</title><desc
+           id="desc5920">3</desc><g
+           id="shadow100-86"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st14"
+             id="rect5923"
+             style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st15"
+           id="rect5925"
+           style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text5927"
+           style="fill:#feffff;font-family:Calibri">3</text>
+</g></g><g
+       id="group101-91"
+       transform="translate(200.268,-347.471)"><title
+         id="title5930">Sheet.101</title><g
+         id="shape102-92"><title
+           id="title5933">Square.125</title><desc
+           id="desc5935">1</desc><g
+           id="shadow102-93"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st14"
+             id="rect5938"
+             style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st15"
+           id="rect5940"
+           style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text5942"
+           style="fill:#feffff;font-family:Calibri">1</text>
+</g><g
+         id="shape103-98"
+         transform="translate(0,-19.3323)"><title
+           id="title5945">Square.126</title><desc
+           id="desc5947">2</desc><g
+           id="shadow103-99"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st14"
+             id="rect5950"
+             style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st15"
+           id="rect5952"
+           style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text5954"
+           style="fill:#feffff;font-family:Calibri">2</text>
+</g><g
+         id="shape104-104"
+         transform="translate(0,-38.0409)"><title
+           id="title5957">Square.127</title><desc
+           id="desc5959">3</desc><g
+           id="shadow104-105"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st14"
+             id="rect5962"
+             style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st15"
+           id="rect5964"
+           style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text5966"
+           style="fill:#feffff;font-family:Calibri">3</text>
+</g></g><g
+       id="group105-110"
+       transform="translate(122.882,-473.386)"><title
+         id="title5969">Sheet.105</title><g
+         id="shape106-111"><title
+           id="title5972">Square.125</title><desc
+           id="desc5974">1</desc><g
+           id="shadow106-112"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st14"
+             id="rect5977"
+             style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st15"
+           id="rect5979"
+           style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text5981"
+           style="fill:#feffff;font-family:Calibri">1</text>
+</g><g
+         id="shape107-117"
+         transform="translate(0,-19.3323)"><title
+           id="title5984">Square.126</title><desc
+           id="desc5986">2</desc><g
+           id="shadow107-118"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st14"
+             id="rect5989"
+             style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st15"
+           id="rect5991"
+           style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text5993"
+           style="fill:#feffff;font-family:Calibri">2</text>
+</g><g
+         id="shape108-123"
+         transform="translate(0,-38.0409)"><title
+           id="title5996">Square.127</title><desc
+           id="desc5998">3</desc><g
+           id="shadow108-124"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="581.10199"
+             width="14.1732"
+             height="14.1732"
+             class="st14"
+             id="rect6001"
+             style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st15"
+           id="rect6003"
+           style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+           x="4.5500002"
+           y="591.19"
+           class="st4"
+           id="text6005"
+           style="fill:#feffff;font-family:Calibri">3</text>
+</g></g></g></svg>
\ No newline at end of file
diff --git a/doc/guides/prog_guide/img/bond-mode-4.svg b/doc/guides/prog_guide/img/bond-mode-4.svg
new file mode 100644 (file)
index 0000000..45749bd
--- /dev/null
@@ -0,0 +1,784 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generated by Microsoft Visio, SVG Export link bonding - mode 4.svg Page-4 -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="332.147"
+   height="380.51215"
+   viewBox="0 0 265.71799 304.40978"
+   xml:space="preserve"
+   color-interpolation-filters="sRGB"
+   class="st22"
+   id="svg6011"
+   version="1.1"
+   inkscape:version="0.48.5 r10040"
+   sodipodi:docname="bond-mode-4.svg"
+   style="font-size:12px;fill:none;stroke-linecap:square;stroke-miterlimit:3;overflow:visible"><metadata
+     id="metadata6317"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="640"
+     inkscape:window-height="480"
+     id="namedview6315"
+     showgrid="false"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0"
+     inkscape:zoom="0.29932695"
+     inkscape:cx="509.87351"
+     inkscape:cy="26.806185"
+     inkscape:window-x="0"
+     inkscape:window-y="29"
+     inkscape:window-maximized="0"
+     inkscape:current-layer="svg6011" /><style
+     type="text/css"
+     id="style6013">
+               .st1 {visibility:visible}
+               .st2 {fill:#5b9bd5;fill-opacity:0.25;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.25}
+               .st3 {fill:#4f87bb;stroke:#40709c;stroke-width:0.75}
+               .st4 {fill:#feffff;font-family:Calibri;font-size:0.833336em}
+               .st5 {fill:url(#grad0-11);stroke:#4f87bb;stroke-width:0.75}
+               .st6 {fill:#4f87bb;font-family:Calibri;font-size:0.833336em}
+               .st7 {fill:#759fcc;fill-opacity:0.25;filter:url(#filter_2);stroke:#759fcc;stroke-opacity:0.25}
+               .st8 {fill:#668bb3;stroke:#547395;stroke-width:0.75}
+               .st9 {fill:#5b9bd5;fill-opacity:0.22;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.22}
+               .st10 {fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25}
+               .st11 {fill:#759fcc;fill-opacity:0.22;filter:url(#filter_2);stroke:#759fcc;stroke-opacity:0.22}
+               .st12 {fill:#759fcc;stroke:#c7c8c8;stroke-width:0.25}
+               .st13 {fill:url(#grad0-40);stroke:#a6b6cd;stroke-width:0.75}
+               .st14 {fill:#70ad47;fill-opacity:0.25;filter:url(#filter_2);stroke:#70ad47;stroke-opacity:0.25}
+               .st15 {fill:#61973d;stroke:#507e31;stroke-width:0.75}
+               .st16 {fill:#fec000;fill-opacity:0.25;filter:url(#filter_2);stroke:#fec000;stroke-opacity:0.25}
+               .st17 {fill:#dfa800;stroke:#ba8c00;stroke-width:0.75}
+               .st18 {fill:#ed7d31;fill-opacity:0.25;filter:url(#filter_2);stroke:#ed7d31;stroke-opacity:0.25}
+               .st19 {fill:#d06d29;stroke:#ae5a21;stroke-width:0.75}
+               .st20 {fill:#bdd0e9;fill-opacity:0.25;filter:url(#filter_2);stroke:#bdd0e9;stroke-opacity:0.25}
+               .st21 {fill:#a6b6cd;stroke:#8a98ab;stroke-width:0.75}
+               .st22 {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-11"
+       x1="-0.24584444"
+       y1="740.8343"
+       x2="167.49742"
+       y2="740.8343"
+       gradientTransform="scale(1.5253548,0.65558519)"
+       gradientUnits="userSpaceOnUse"><stop
+         offset="0"
+         stop-color="#e9eff7"
+         stop-opacity="1"
+         id="stop6017" /><stop
+         offset="0.24"
+         stop-color="#f4f7fb"
+         stop-opacity="1"
+         id="stop6019" /><stop
+         offset="0.54"
+         stop-color="#feffff"
+         stop-opacity="1"
+         id="stop6021" /></linearGradient><linearGradient
+       id="grad0-40"
+       x1="0"
+       y1="0"
+       x2="1"
+       y2="0"
+       gradientTransform="matrix(0.5,0.8660254,-0.8660254,0.5,0.6830127,-0.1830127)"><stop
+         offset="0"
+         stop-color="#f3f6fa"
+         stop-opacity="1"
+         id="stop6024" /><stop
+         offset="0.24"
+         stop-color="#f9fafc"
+         stop-opacity="1"
+         id="stop6026" /><stop
+         offset="0.54"
+         stop-color="#feffff"
+         stop-opacity="1"
+         id="stop6028" /></linearGradient><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6580"
+       gradientTransform="scale(3.1025013,0.32232057)"
+       x1="-0.12087021"
+       y1="1831.7633"
+       x2="30.035443"
+       y2="1831.7633"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6582"
+       gradientTransform="scale(2.093628,0.47763977)"
+       x1="-0.17911492"
+       y1="1233.6389"
+       x2="25.111911"
+       y2="1233.6389"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6584"
+       gradientTransform="scale(2.093628,0.47763977)"
+       x1="-0.17911492"
+       y1="1233.6389"
+       x2="25.111911"
+       y2="1233.6389"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6586"
+       gradientTransform="scale(2.1254139,0.4704966)"
+       x1="-0.17643623"
+       y1="1252.3682"
+       x2="25.498563"
+       y2="1252.3682"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6588"
+       gradientTransform="scale(2.1254139,0.4704966)"
+       x1="-0.17643623"
+       y1="1252.3682"
+       x2="25.498563"
+       y2="1252.3682"
+       gradientUnits="userSpaceOnUse" /></defs><defs
+     id="Filters"><filter
+       id="filter_2"
+       color-interpolation-filters="sRGB"><feGaussianBlur
+         stdDeviation="2"
+         id="feGaussianBlur6032" /></filter></defs><g
+     id="g6034"
+     transform="translate(-13.045598,-14.67318)"><title
+       id="title6036">Page-4</title><g
+       id="shape109-1"
+       transform="translate(18,-516.416)"><title
+         id="title6039">Rectangle.177</title><desc
+         id="desc6041">User Application</desc><g
+         id="shadow109-2"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="534.41602"
+           width="255.118"
+           height="60.859798"
+           class="st2"
+           id="rect6044"
+           style="fill:#5b9bd5;fill-opacity:0.25;stroke:#5b9bd5;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="534.41602"
+         width="255.118"
+         height="60.859798"
+         class="st3"
+         id="rect6046"
+         style="fill:#4f87bb;stroke:#40709c;stroke-width:0.75" /><text
+         x="94"
+         y="567.84998"
+         class="st4"
+         id="text6048"
+         style="fill:#feffff;font-family:Calibri">User Application</text>
+</g><g
+       id="group110-7"
+       transform="translate(18,-344.323)"><title
+         id="title6051">Sheet.110</title><g
+         id="shape111-8"><title
+           id="title6054">Rectangle.38</title><desc
+           id="desc6056">DPDK</desc><rect
+           x="0"
+           y="486.05499"
+           width="255.118"
+           height="109.22"
+           class="st5"
+           id="rect6058"
+           style="fill:url(#grad0-11);stroke:#4f87bb;stroke-width:0.75" /><text
+           x="228.45"
+           y="499.06"
+           class="st6"
+           id="text6060"
+           style="fill:#4f87bb;font-family:Calibri">DPDK</text>
+</g><g
+         id="shape112-13"
+         transform="translate(6.87402,-7.17304)"><title
+           id="title6063">Rectangle.16</title><desc
+           id="desc6065">bonded ethdev</desc><g
+           id="shadow112-14"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="523.16803"
+             width="241.157"
+             height="72.107201"
+             class="st7"
+             id="rect6068"
+             style="fill:#759fcc;fill-opacity:0.25;stroke:#759fcc;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="523.16803"
+           width="241.157"
+           height="72.107201"
+           class="st8"
+           id="rect6070"
+           style="fill:#668bb3;stroke:#547395;stroke-width:0.75" /><text
+           x="89.650002"
+           y="536.16998"
+           class="st4"
+           id="text6072"
+           style="fill:#feffff;font-family:Calibri">bonded ethdev</text>
+</g><g
+         id="shape113-19"
+         transform="translate(13.9606,-14.1732)"><title
+           id="title6075">Rectangle.11</title><desc
+           id="desc6077">ethdev port</desc><g
+           id="shadow113-20"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st9"
+             id="rect6080"
+             style="fill:#5b9bd5;fill-opacity:0.22000002;stroke:#5b9bd5;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st10"
+           id="rect6082"
+           style="fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           id="text6084"
+           style="fill:#feffff;font-family:Calibri">ethdev port</text>
+</g><g
+         id="shape114-25"
+         transform="translate(91.9134,-14.1732)"><title
+           id="title6087">Rectangle.14</title><desc
+           id="desc6089">ethdev port</desc><g
+           id="shadow114-26"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st11"
+             id="rect6092"
+             style="fill:#759fcc;fill-opacity:0.22000002;stroke:#759fcc;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st12"
+           id="rect6094"
+           style="fill:#759fcc;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           id="text6096"
+           style="fill:#feffff;font-family:Calibri">ethdev port</text>
+</g><g
+         id="shape115-31"
+         transform="translate(169.866,-14.1732)"><title
+           id="title6099">Rectangle.15</title><desc
+           id="desc6101">ethdev port</desc><g
+           id="shadow115-32"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st11"
+             id="rect6104"
+             style="fill:#759fcc;fill-opacity:0.22000002;stroke:#759fcc;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st12"
+           id="rect6106"
+           style="fill:#759fcc;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           id="text6108"
+           style="fill:#feffff;font-family:Calibri">ethdev port</text>
+</g></g><g
+       id="shape116-37"
+       transform="matrix(0.00114494,-0.99999934,0.99999934,0.00114494,-449.822,170.991)"><title
+         id="title6111">Simple Double Arrow.184</title><path
+         d="m 0,595.28 11.34,-4.49 0,2.24 70.13,0 0,-2.24 11.34,4.49 -11.34,4.48 0,-2.24 -70.13,0 0,2.24 L 0,595.28 z"
+         class="st13"
+         id="path6113"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6580);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape117-41"
+       transform="matrix(0.01125714,-0.99993664,0.99993664,0.01125714,-532.876,283.409)"><title
+         id="title6116">Simple Arrow.185</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 40.86,0 0,2.84 0,2.83 -40.86,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path6118"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6582);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape118-44"
+       transform="matrix(-0.01125714,0.99993664,-0.99993664,-0.01125714,670.114,243.437)"><title
+         id="title6121">Simple Arrow.186</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 40.86,0 0,2.84 0,2.83 -40.86,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path6123"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6584);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape119-47"
+       transform="matrix(0.01448398,-0.9998951,0.9998951,0.01448398,-450.646,281.973)"><title
+         id="title6126">Simple Arrow.187</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 42.48,0 0,2.84 0,2.83 -42.48,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path6128"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6586);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape120-50"
+       transform="matrix(-0.01185051,-0.99992978,0.99992978,-0.01185051,-371.297,297.649)"><title
+         id="title6131">Simple Arrow.188</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 42.48,0 0,2.84 0,2.83 -42.48,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path6133"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6588);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape121-53"
+       transform="translate(121.039,-421.115)"><title
+         id="title6136">Square.189</title><desc
+         id="desc6138">1</desc><g
+         id="shadow121-54"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect6141"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect6143"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text6145"
+         style="fill:#feffff;font-family:Calibri">1</text>
+</g><g
+       id="shape122-59"
+       transform="translate(121.039,-440.447)"><title
+         id="title6148">Square.190</title><desc
+         id="desc6150">2</desc><g
+         id="shadow122-60"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st16"
+           id="rect6153"
+           style="fill:#fec000;fill-opacity:0.25;stroke:#fec000;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st17"
+         id="rect6155"
+         style="fill:#dfa800;stroke:#ba8c00;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text6157"
+         style="fill:#feffff;font-family:Calibri">2</text>
+</g><g
+       id="shape123-65"
+       transform="translate(121.039,-459.156)"><title
+         id="title6160">Square.191</title><desc
+         id="desc6162">3</desc><g
+         id="shadow123-66"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect6165"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect6167"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text6169"
+         style="fill:#feffff;font-family:Calibri">3</text>
+</g><g
+       id="shape124-71"
+       transform="translate(121.039,-478.488)"><title
+         id="title6172">Square.192</title><desc
+         id="desc6174">4</desc><g
+         id="shadow124-72"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st16"
+           id="rect6177"
+           style="fill:#fec000;fill-opacity:0.25;stroke:#fec000;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st17"
+         id="rect6179"
+         style="fill:#dfa800;stroke:#ba8c00;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text6181"
+         style="fill:#feffff;font-family:Calibri">4</text>
+</g><g
+       id="shape125-77"
+       transform="translate(121.039,-497.82)"><title
+         id="title6184">Square.193</title><desc
+         id="desc6186">5</desc><g
+         id="shadow125-78"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect6189"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect6191"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text6193"
+         style="fill:#feffff;font-family:Calibri">5</text>
+</g><g
+       id="shape126-83"
+       transform="translate(121.039,-517.153)"><title
+         id="title6196">Square.194</title><desc
+         id="desc6198">6</desc><g
+         id="shadow126-84"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st18"
+           id="rect6201"
+           style="fill:#ed7d31;fill-opacity:0.25;stroke:#ed7d31;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st19"
+         id="rect6203"
+         style="fill:#d06d29;stroke:#ae5a21;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text6205"
+         style="fill:#feffff;font-family:Calibri">6</text>
+</g><g
+       id="shape127-89"
+       transform="translate(117.213,-283.465)"><title
+         id="title6208">Square.172</title><desc
+         id="desc6210">2</desc><g
+         id="shadow127-90"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st16"
+           id="rect6213"
+           style="fill:#fec000;fill-opacity:0.25;stroke:#fec000;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st17"
+         id="rect6215"
+         style="fill:#dfa800;stroke:#ba8c00;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text6217"
+         style="fill:#feffff;font-family:Calibri">2</text>
+</g><g
+       id="shape128-95"
+       transform="translate(117.213,-301.493)"><title
+         id="title6220">Square.173</title><desc
+         id="desc6222">4</desc><g
+         id="shadow128-96"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st16"
+           id="rect6225"
+           style="fill:#fec000;fill-opacity:0.25;stroke:#fec000;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st17"
+         id="rect6227"
+         style="fill:#dfa800;stroke:#ba8c00;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text6229"
+         style="fill:#feffff;font-family:Calibri">4</text>
+</g><g
+       id="shape129-101"
+       transform="translate(196.583,-301.493)"><title
+         id="title6232">Square.198</title><desc
+         id="desc6234">6</desc><g
+         id="shadow129-102"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st18"
+           id="rect6237"
+           style="fill:#ed7d31;fill-opacity:0.25;stroke:#ed7d31;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st19"
+         id="rect6239"
+         style="fill:#d06d29;stroke:#ae5a21;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text6241"
+         style="fill:#feffff;font-family:Calibri">6</text>
+</g><g
+       id="shape130-107"
+       transform="translate(38.8346,-283.465)"><title
+         id="title6244">Square.169</title><desc
+         id="desc6246">1</desc><g
+         id="shadow130-108"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect6249"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect6251"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text6253"
+         style="fill:#feffff;font-family:Calibri">1</text>
+</g><g
+       id="shape131-113"
+       transform="translate(38.8346,-320.315)"><title
+         id="title6256">Square.170</title><desc
+         id="desc6258">3</desc><g
+         id="shadow131-114"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect6261"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect6263"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text6265"
+         style="fill:#feffff;font-family:Calibri">3</text>
+</g><g
+       id="shape132-119"
+       transform="translate(38.8346,-339.476)"><title
+         id="title6268">Square.171</title><desc
+         id="desc6270">5</desc><g
+         id="shadow132-120"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st14"
+           id="rect6273"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st15"
+         id="rect6275"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.5500002"
+         y="591.19"
+         class="st4"
+         id="text6277"
+         style="fill:#feffff;font-family:Calibri">5</text>
+</g><g
+       id="shape133-125"
+       transform="translate(38.8346,-301.154)"><title
+         id="title6280">Square.203</title><desc
+         id="desc6282">O</desc><g
+         id="shadow133-126"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st20"
+           id="rect6285"
+           style="fill:#bdd0e9;fill-opacity:0.25;stroke:#bdd0e9;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st21"
+         id="rect6287"
+         style="fill:#a6b6cd;stroke:#8a98ab;stroke-width:0.75" /><text
+         x="4"
+         y="591.19"
+         class="st4"
+         id="text6289"
+         style="fill:#feffff;font-family:Calibri">O</text>
+</g><g
+       id="shape134-131"
+       transform="translate(117.213,-320.315)"><title
+         id="title6292">Square.204</title><desc
+         id="desc6294">O</desc><g
+         id="shadow134-132"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st20"
+           id="rect6297"
+           style="fill:#bdd0e9;fill-opacity:0.25;stroke:#bdd0e9;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st21"
+         id="rect6299"
+         style="fill:#a6b6cd;stroke:#8a98ab;stroke-width:0.75" /><text
+         x="4"
+         y="591.19"
+         class="st4"
+         id="text6301"
+         style="fill:#feffff;font-family:Calibri">O</text>
+</g><g
+       id="shape135-137"
+       transform="translate(196.583,-283.465)"><title
+         id="title6304">Square.205</title><desc
+         id="desc6306">O</desc><g
+         id="shadow135-138"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="14.1732"
+           height="14.1732"
+           class="st20"
+           id="rect6309"
+           style="fill:#bdd0e9;fill-opacity:0.25;stroke:#bdd0e9;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="14.1732"
+         height="14.1732"
+         class="st21"
+         id="rect6311"
+         style="fill:#a6b6cd;stroke:#8a98ab;stroke-width:0.75" /><text
+         x="4"
+         y="591.19"
+         class="st4"
+         id="text6313"
+         style="fill:#feffff;font-family:Calibri">O</text>
+</g></g></svg>
\ No newline at end of file
diff --git a/doc/guides/prog_guide/img/bond-mode-5.svg b/doc/guides/prog_guide/img/bond-mode-5.svg
new file mode 100644 (file)
index 0000000..5ee82fc
--- /dev/null
@@ -0,0 +1,642 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generated by Microsoft Visio, SVG Export link bonding - mode 5.svg Page-4 -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="332.147"
+   height="392.50714"
+   viewBox="0 0 265.71799 314.00578"
+   xml:space="preserve"
+   color-interpolation-filters="sRGB"
+   class="st17"
+   id="svg6319"
+   version="1.1"
+   inkscape:version="0.48.5 r10040"
+   sodipodi:docname="bond-mode-5.svg"
+   style="font-size:12px;fill:none;stroke-linecap:square;stroke-miterlimit:3;overflow:visible"><metadata
+     id="metadata6568"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="640"
+     inkscape:window-height="480"
+     id="namedview6566"
+     showgrid="false"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0"
+     inkscape:zoom="0.29932695"
+     inkscape:cx="509.87351"
+     inkscape:cy="38.801168"
+     inkscape:window-x="0"
+     inkscape:window-y="29"
+     inkscape:window-maximized="0"
+     inkscape:current-layer="svg6319" /><style
+     type="text/css"
+     id="style6321">
+               .st1 {visibility:visible}
+               .st2 {fill:#5b9bd5;fill-opacity:0.25;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.25}
+               .st3 {fill:#4f87bb;stroke:#40709c;stroke-width:0.75}
+               .st4 {fill:#feffff;font-family:Calibri;font-size:0.833336em}
+               .st5 {fill:url(#grad0-11);stroke:#4f87bb;stroke-width:0.75}
+               .st6 {fill:#4f87bb;font-family:Calibri;font-size:0.833336em}
+               .st7 {fill:#759fcc;fill-opacity:0.25;filter:url(#filter_2);stroke:#759fcc;stroke-opacity:0.25}
+               .st8 {fill:#668bb3;stroke:#547395;stroke-width:0.75}
+               .st9 {fill:#5b9bd5;fill-opacity:0.22;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.22}
+               .st10 {fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25}
+               .st11 {fill:#759fcc;fill-opacity:0.22;filter:url(#filter_2);stroke:#759fcc;stroke-opacity:0.22}
+               .st12 {fill:#759fcc;stroke:#c7c8c8;stroke-width:0.25}
+               .st13 {fill:url(#grad0-40);stroke:#a6b6cd;stroke-width:0.75}
+               .st14 {fill:#70ad47;fill-opacity:0.25;filter:url(#filter_2);stroke:#70ad47;stroke-opacity:0.25}
+               .st15 {fill:#61973d;stroke:#507e31;stroke-width:0.75}
+               .st16 {fill:#feffff;font-family:Calibri;font-size:0.666664em}
+               .st17 {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-11"
+       x1="-0.24584444"
+       y1="740.8343"
+       x2="167.49742"
+       y2="740.8343"
+       gradientTransform="scale(1.5253548,0.65558519)"
+       gradientUnits="userSpaceOnUse"><stop
+         offset="0"
+         stop-color="#e9eff7"
+         stop-opacity="1"
+         id="stop6325" /><stop
+         offset="0.24"
+         stop-color="#f4f7fb"
+         stop-opacity="1"
+         id="stop6327" /><stop
+         offset="0.54"
+         stop-color="#feffff"
+         stop-opacity="1"
+         id="stop6329" /></linearGradient><linearGradient
+       id="grad0-40"
+       x1="0"
+       y1="0"
+       x2="1"
+       y2="0"
+       gradientTransform="matrix(0.5,0.8660254,-0.8660254,0.5,0.6830127,-0.1830127)"><stop
+         offset="0"
+         stop-color="#f3f6fa"
+         stop-opacity="1"
+         id="stop6332" /><stop
+         offset="0.24"
+         stop-color="#f9fafc"
+         stop-opacity="1"
+         id="stop6334" /><stop
+         offset="0.54"
+         stop-color="#feffff"
+         stop-opacity="1"
+         id="stop6336" /></linearGradient><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6570"
+       gradientTransform="scale(3.5585925,0.28100998)"
+       x1="-0.10537874"
+       y1="2101.0464"
+       x2="34.48414"
+       y2="2101.0464"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6572"
+       gradientTransform="scale(2.093628,0.47763977)"
+       x1="-0.17911492"
+       y1="1233.6389"
+       x2="25.111911"
+       y2="1233.6389"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6574"
+       gradientTransform="scale(2.093628,0.47763977)"
+       x1="-0.17911492"
+       y1="1233.6389"
+       x2="25.111911"
+       y2="1233.6389"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6576"
+       gradientTransform="scale(2.1254139,0.4704966)"
+       x1="-0.17643623"
+       y1="1252.3682"
+       x2="25.498563"
+       y2="1252.3682"
+       gradientUnits="userSpaceOnUse" /><linearGradient
+       inkscape:collect="always"
+       xlink:href="#grad0-40"
+       id="linearGradient6578"
+       gradientTransform="scale(2.1254139,0.4704966)"
+       x1="-0.17643623"
+       y1="1252.3682"
+       x2="25.498563"
+       y2="1252.3682"
+       gradientUnits="userSpaceOnUse" /></defs><defs
+     id="Filters"><filter
+       id="filter_2"
+       color-interpolation-filters="sRGB"><feGaussianBlur
+         stdDeviation="2"
+         id="feGaussianBlur6340" /></filter></defs><g
+     id="g6342"
+     transform="translate(-13.045598,-14.67318)"><title
+       id="title6344">Page-4</title><g
+       id="shape136-1"
+       transform="translate(18,-516.416)"><title
+         id="title6347">Rectangle.209</title><desc
+         id="desc6349">User Application</desc><g
+         id="shadow136-2"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="534.41602"
+           width="255.118"
+           height="60.859798"
+           class="st2"
+           id="rect6352"
+           style="fill:#5b9bd5;fill-opacity:0.25;stroke:#5b9bd5;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="534.41602"
+         width="255.118"
+         height="60.859798"
+         class="st3"
+         id="rect6354"
+         style="fill:#4f87bb;stroke:#40709c;stroke-width:0.75" /><text
+         x="94"
+         y="567.84998"
+         class="st4"
+         id="text6356"
+         style="fill:#feffff;font-family:Calibri">User Application</text>
+</g><g
+       id="group137-7"
+       transform="translate(18,-314.793)"><title
+         id="title6359">Sheet.137</title><g
+         id="shape138-8"><title
+           id="title6362">Rectangle.38</title><desc
+           id="desc6364">DPDK</desc><rect
+           x="0"
+           y="486.05499"
+           width="255.118"
+           height="109.22"
+           class="st5"
+           id="rect6366"
+           style="fill:url(#grad0-11);stroke:#4f87bb;stroke-width:0.75" /><text
+           x="228.45"
+           y="499.06"
+           class="st6"
+           id="text6368"
+           style="fill:#4f87bb;font-family:Calibri">DPDK</text>
+</g><g
+         id="shape139-13"
+         transform="translate(6.87402,-7.17304)"><title
+           id="title6371">Rectangle.16</title><desc
+           id="desc6373">bonded ethdev</desc><g
+           id="shadow139-14"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="523.16803"
+             width="241.157"
+             height="72.107201"
+             class="st7"
+             id="rect6376"
+             style="fill:#759fcc;fill-opacity:0.25;stroke:#759fcc;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="523.16803"
+           width="241.157"
+           height="72.107201"
+           class="st8"
+           id="rect6378"
+           style="fill:#668bb3;stroke:#547395;stroke-width:0.75" /><text
+           x="89.650002"
+           y="536.16998"
+           class="st4"
+           id="text6380"
+           style="fill:#feffff;font-family:Calibri">bonded ethdev</text>
+</g><g
+         id="shape140-19"
+         transform="translate(13.9606,-14.1732)"><title
+           id="title6383">Rectangle.11</title><desc
+           id="desc6385">ethdev port</desc><g
+           id="shadow140-20"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st9"
+             id="rect6388"
+             style="fill:#5b9bd5;fill-opacity:0.22000002;stroke:#5b9bd5;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st10"
+           id="rect6390"
+           style="fill:#5b9bd5;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           id="text6392"
+           style="fill:#feffff;font-family:Calibri">ethdev port</text>
+</g><g
+         id="shape141-25"
+         transform="translate(91.9134,-14.1732)"><title
+           id="title6395">Rectangle.14</title><desc
+           id="desc6397">ethdev port</desc><g
+           id="shadow141-26"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st11"
+             id="rect6400"
+             style="fill:#759fcc;fill-opacity:0.22000002;stroke:#759fcc;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st12"
+           id="rect6402"
+           style="fill:#759fcc;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           id="text6404"
+           style="fill:#feffff;font-family:Calibri">ethdev port</text>
+</g><g
+         id="shape142-31"
+         transform="translate(169.866,-14.1732)"><title
+           id="title6407">Rectangle.15</title><desc
+           id="desc6409">ethdev port</desc><g
+           id="shadow142-32"
+           transform="translate(0.345598,1.97279)"
+           class="st1"
+           style="visibility:visible"><rect
+             x="0"
+             y="559.75598"
+             width="70.866096"
+             height="35.519501"
+             class="st11"
+             id="rect6412"
+             style="fill:#759fcc;fill-opacity:0.22000002;stroke:#759fcc;stroke-opacity:0.22000002;filter:url(#filter_2)" /></g><rect
+           x="0"
+           y="559.75598"
+           width="70.866096"
+           height="35.519501"
+           class="st12"
+           id="rect6414"
+           style="fill:#759fcc;stroke:#c7c8c8;stroke-width:0.25" /><text
+           x="11.46"
+           y="580.52002"
+           class="st4"
+           id="text6416"
+           style="fill:#feffff;font-family:Calibri">ethdev port</text>
+</g></g><g
+       id="shape143-37"
+       transform="matrix(8.6917386e-4,-0.99999962,0.99999962,8.6917386e-4,-449.823,200.685)"><title
+         id="title6419">Simple Double Arrow.216</title><path
+         d="m 0,595.28 11.34,-4.49 0,2.24 99.66,0 0,-2.24 11.34,4.49 -11.34,4.48 0,-2.24 -99.66,0 0,2.24 L 0,595.28 z"
+         class="st13"
+         id="path6421"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6570);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape144-41"
+       transform="matrix(0.01125714,-0.99993664,0.99993664,0.01125714,-532.876,312.939)"><title
+         id="title6424">Simple Arrow.217</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 40.86,0 0,2.84 0,2.83 -40.86,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path6426"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6572);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape145-44"
+       transform="matrix(-0.01125714,0.99993664,-0.99993664,-0.01125714,670.114,272.967)"><title
+         id="title6429">Simple Arrow.218</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 40.86,0 0,2.84 0,2.83 -40.86,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path6431"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6574);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape146-47"
+       transform="matrix(0.01448398,-0.9998951,0.9998951,0.01448398,-450.646,311.502)"><title
+         id="title6434">Simple Arrow.219</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 42.48,0 0,2.84 0,2.83 -42.48,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path6436"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6576);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="shape147-50"
+       transform="matrix(-0.01185051,-0.99992978,0.99992978,-0.01185051,-371.297,327.178)"><title
+         id="title6439">Simple Arrow.220</title><path
+         d="m 0,595.28 11.34,-5.67 0,2.83 42.48,0 0,2.84 0,2.83 -42.48,0 0,2.83 L 0,595.28 z"
+         class="st13"
+         id="path6441"
+         inkscape:connector-curvature="0"
+         style="fill:url(#linearGradient6578);stroke:#a6b6cd;stroke-width:0.75" /></g><g
+       id="group148-53"
+       transform="translate(37.8425,-273.961)"><title
+         id="title6444">Sheet.148</title></g><g
+       id="shape149-54"
+       transform="translate(108.709,-473.712)"><title
+         id="title6447">Rectangle</title><desc
+         id="desc6449">5006</desc><g
+         id="shadow149-55"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="28.3465"
+           height="14.1732"
+           class="st14"
+           id="rect6452"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="28.3465"
+         height="14.1732"
+         class="st15"
+         id="rect6454"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="6.0599999"
+         y="590.59003"
+         class="st16"
+         id="text6456"
+         style="fill:#feffff;font-family:Calibri">5006</text>
+</g><g
+       id="shape150-60"
+       transform="translate(108.709,-453.869)"><title
+         id="title6459">Rectangle.242</title><desc
+         id="desc6461">5005</desc><g
+         id="shadow150-61"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="28.3465"
+           height="14.1732"
+           class="st14"
+           id="rect6464"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="28.3465"
+         height="14.1732"
+         class="st15"
+         id="rect6466"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="6.0599999"
+         y="590.59003"
+         class="st16"
+         id="text6468"
+         style="fill:#feffff;font-family:Calibri">5005</text>
+</g><g
+       id="shape151-66"
+       transform="translate(108.85,-405.893)"><title
+         id="title6471">Rectangle.243</title><desc
+         id="desc6473">0001</desc><g
+         id="shadow151-67"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="28.3465"
+           height="14.1732"
+           class="st14"
+           id="rect6476"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="28.3465"
+         height="14.1732"
+         class="st15"
+         id="rect6478"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="6.0599999"
+         y="590.59003"
+         class="st16"
+         id="text6480"
+         style="fill:#feffff;font-family:Calibri">0001</text>
+</g><g
+       id="shape152-72"
+       transform="translate(108.85,-425.523)"><title
+         id="title6483">Rectangle.244</title><desc
+         id="desc6485">0002</desc><g
+         id="shadow152-73"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="28.3465"
+           height="14.1732"
+           class="st14"
+           id="rect6488"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="28.3465"
+         height="14.1732"
+         class="st15"
+         id="rect6490"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="6.0599999"
+         y="590.59003"
+         class="st16"
+         id="text6492"
+         style="fill:#feffff;font-family:Calibri">0002</text>
+</g><g
+       id="shape153-78"
+       transform="translate(108.709,-503.476)"><title
+         id="title6495">Rectangle.246</title><desc
+         id="desc6497">12003</desc><g
+         id="shadow153-79"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="28.3465"
+           height="14.1732"
+           class="st14"
+           id="rect6500"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="28.3465"
+         height="14.1732"
+         class="st15"
+         id="rect6502"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.04"
+         y="590.59003"
+         class="st16"
+         id="text6504"
+         style="fill:#feffff;font-family:Calibri">12003</text>
+</g><g
+       id="shape154-84"
+       transform="translate(24.2437,-273.976)"><title
+         id="title6507">Rectangle.247</title><desc
+         id="desc6509">0001</desc><g
+         id="shadow154-85"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="28.3465"
+           height="14.1732"
+           class="st14"
+           id="rect6512"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="28.3465"
+         height="14.1732"
+         class="st15"
+         id="rect6514"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="6.0599999"
+         y="590.59003"
+         class="st16"
+         id="text6516"
+         style="fill:#feffff;font-family:Calibri">0001</text>
+</g><g
+       id="shape155-90"
+       transform="translate(24.2437,-293.606)"><title
+         id="title6519">Rectangle.248</title><desc
+         id="desc6521">0002</desc><g
+         id="shadow155-91"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="28.3465"
+           height="14.1732"
+           class="st14"
+           id="rect6524"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="28.3465"
+         height="14.1732"
+         class="st15"
+         id="rect6526"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="6.0599999"
+         y="590.59003"
+         class="st16"
+         id="text6528"
+         style="fill:#feffff;font-family:Calibri">0002</text>
+</g><g
+       id="shape156-96"
+       transform="translate(108.537,-293.712)"><title
+         id="title6531">Rectangle.249</title><desc
+         id="desc6533">5006</desc><g
+         id="shadow156-97"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="28.3465"
+           height="14.1732"
+           class="st14"
+           id="rect6536"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="28.3465"
+         height="14.1732"
+         class="st15"
+         id="rect6538"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="6.0599999"
+         y="590.59003"
+         class="st16"
+         id="text6540"
+         style="fill:#feffff;font-family:Calibri">5006</text>
+</g><g
+       id="shape157-102"
+       transform="translate(108.537,-273.869)"><title
+         id="title6543">Rectangle.250</title><desc
+         id="desc6545">5005</desc><g
+         id="shadow157-103"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="28.3465"
+           height="14.1732"
+           class="st14"
+           id="rect6548"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="28.3465"
+         height="14.1732"
+         class="st15"
+         id="rect6550"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="6.0599999"
+         y="590.59003"
+         class="st16"
+         id="text6552"
+         style="fill:#feffff;font-family:Calibri">5005</text>
+</g><g
+       id="shape158-108"
+       transform="translate(187.236,-273.869)"><title
+         id="title6555">Rectangle.251</title><desc
+         id="desc6557">12003</desc><g
+         id="shadow158-109"
+         transform="translate(0.345598,1.97279)"
+         class="st1"
+         style="visibility:visible"><rect
+           x="0"
+           y="581.10199"
+           width="28.3465"
+           height="14.1732"
+           class="st14"
+           id="rect6560"
+           style="fill:#70ad47;fill-opacity:0.25;stroke:#70ad47;stroke-opacity:0.25;filter:url(#filter_2)" /></g><rect
+         x="0"
+         y="581.10199"
+         width="28.3465"
+         height="14.1732"
+         class="st15"
+         id="rect6562"
+         style="fill:#61973d;stroke:#507e31;stroke-width:0.75" /><text
+         x="4.04"
+         y="590.59003"
+         class="st16"
+         id="text6564"
+         style="fill:#feffff;font-family:Calibri">12003</text>
+</g></g></svg>
\ No newline at end of file
diff --git a/doc/guides/prog_guide/img/bond-overview.svg b/doc/guides/prog_guide/img/bond-overview.svg
new file mode 100644 (file)
index 0000000..489282a
--- /dev/null
@@ -0,0 +1,121 @@
+<?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 Link Bonding Modes.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"
+               width="4.42446in" height="2.20365in" viewBox="0 0 318.561 158.663" xml:space="preserve" color-interpolation-filters="sRGB"
+               class="st13">
+       <style type="text/css">
+       <![CDATA[
+               .st1 {fill:url(#grad0-4);stroke:#4f87bb;stroke-width:0.75}
+               .st2 {fill:#4f87bb;font-family:Calibri;font-size:0.833336em}
+               .st3 {visibility:visible}
+               .st4 {fill:#759fcc;fill-opacity:0.25;filter:url(#filter_2);stroke:#759fcc;stroke-opacity:0.25}
+               .st5 {fill:#668bb3;stroke:#547395;stroke-width:0.75}
+               .st6 {fill:#feffff;font-family:Calibri;font-size:0.833336em}
+               .st7 {fill:#5b9bd5;fill-opacity:0.25;filter:url(#filter_2);stroke:#5b9bd5;stroke-opacity:0.25}
+               .st8 {fill:#4f87bb;stroke:#40709c;stroke-width:0.75}
+               .st9 {fill:#759fcc;fill-opacity:0.22;filter:url(#filter_2);stroke:#759fcc;stroke-opacity:0.22}
+               .st10 {fill:#759fcc;stroke:#c7c8c8;stroke-width:0.25}
+               .st11 {font-size:1em}
+               .st12 {fill:url(#grad0-56);stroke:#a6b6cd;stroke-width:0.75}
+               .st13 {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-4" x1="0" y1="0" x2="1" y2="0" gradientTransform="rotate(60 0.5 0.5)">
+                       <stop offset="0" stop-color="#e9eff7" stop-opacity="1"/>
+                       <stop offset="0.24" stop-color="#f4f7fb" stop-opacity="1"/>
+                       <stop offset="0.54" stop-color="#feffff" stop-opacity="1"/>
+               </linearGradient>
+               <linearGradient id="grad0-56" x1="0" y1="0" x2="1" y2="0" gradientTransform="rotate(60 0.5 0.5)">
+                       <stop offset="0" stop-color="#f3f6fa" stop-opacity="1"/>
+                       <stop offset="0.24" stop-color="#f9fafc" stop-opacity="1"/>
+                       <stop offset="0.54" stop-color="#feffff" stop-opacity="1"/>
+               </linearGradient>
+       </defs>
+       <defs id="Filters">
+               <filter id="filter_2">
+                       <feGaussianBlur stdDeviation="2"/>
+               </filter>
+       </defs>
+       <g>
+               <title>Page-1</title>
+               <g id="shape38-1" transform="translate(3.0294,-0.75)">
+                       <title>Rectangle.38</title>
+                       <desc>DPDK</desc>
+                       <rect x="0" y="70.7886" width="311.811" height="87.874" class="st1"/>
+                       <text x="285.14" y="83.79" class="st2">DPDK</text>              </g>
+               <g id="shape8-6" transform="translate(12.5358,-7.83661)">
+                       <title>Rectangle.8</title>
+                       <desc>bonded ethdev</desc>
+                       <g id="shadow8-7" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st3">
+                               <rect x="0" y="87.7965" width="171.911" height="70.8661" class="st4"/>
+                       </g>
+                       <rect x="0" y="87.7965" width="171.911" height="70.8661" class="st5"/>
+                       <text x="55.03" y="100.8" class="st6">bonded ethdev</text>              </g>
+               <g id="shape3-12" transform="translate(3.0294,-121.309)">
+                       <title>Rectangle</title>
+                       <desc>User Application</desc>
+                       <g id="shadow3-13" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st3">
+                               <rect x="0" y="122.711" width="311.811" height="35.9516" class="st7"/>
+                       </g>
+                       <rect x="0" y="122.711" width="311.811" height="35.9516" class="st8"/>
+                       <text x="122.34" y="143.69" class="st6">User Application</text>         </g>
+               <g id="shape5-18" transform="translate(17.2026,-14.9232)">
+                       <title>Rectangle.5</title>
+                       <desc>ethdev port</desc>
+                       <g id="shadow5-19" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st3">
+                               <rect x="0" y="123.143" width="47.3593" height="35.5195" class="st9"/>
+                       </g>
+                       <rect x="0" y="123.143" width="47.3593" height="35.5195" class="st10"/>
+                       <text x="9.52" y="137.9" class="st6">ethdev <tspan x="15" dy="1.2em" class="st11">port</tspan></text>           </g>
+               <g id="shape6-25" transform="translate(73.8955,-14.9232)">
+                       <title>Rectangle.6</title>
+                       <desc>ethdev port</desc>
+                       <g id="shadow6-26" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st3">
+                               <rect x="0" y="123.143" width="47.3593" height="35.5195" class="st9"/>
+                       </g>
+                       <rect x="0" y="123.143" width="47.3593" height="35.5195" class="st10"/>
+                       <text x="9.52" y="137.9" class="st6">ethdev <tspan x="15" dy="1.2em" class="st11">port</tspan></text>           </g>
+               <g id="shape7-32" transform="translate(130.588,-14.9232)">
+                       <title>Rectangle.7</title>
+                       <desc>ethdev port</desc>
+                       <g id="shadow7-33" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st3">
+                               <rect x="0" y="123.143" width="47.3593" height="35.5195" class="st9"/>
+                       </g>
+                       <rect x="0" y="123.143" width="47.3593" height="35.5195" class="st10"/>
+                       <text x="9.52" y="137.9" class="st6">ethdev <tspan x="15" dy="1.2em" class="st11">port</tspan></text>           </g>
+               <g id="shape9-39" transform="translate(199.035,-14.8368)">
+                       <title>Rectangle.9</title>
+                       <desc>ethdev port</desc>
+                       <g id="shadow9-40" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st3">
+                               <rect x="0" y="123.143" width="47.3593" height="35.5195" class="st9"/>
+                       </g>
+                       <rect x="0" y="123.143" width="47.3593" height="35.5195" class="st10"/>
+                       <text x="9.52" y="137.9" class="st6">ethdev <tspan x="15" dy="1.2em" class="st11">port</tspan></text>           </g>
+               <g id="shape10-46" transform="translate(255.728,-14.8368)">
+                       <title>Rectangle.10</title>
+                       <desc>ethdev port</desc>
+                       <g id="shadow10-47" transform="matrix(1,0,0,1,0.345598,1.97279)" class="st3">
+                               <rect x="0" y="123.143" width="47.3593" height="35.5195" class="st9"/>
+                       </g>
+                       <rect x="0" y="123.143" width="47.3593" height="35.5195" class="st10"/>
+                       <text x="9.52" y="137.9" class="st6">ethdev <tspan x="15" dy="1.2em" class="st11">port</tspan></text>           </g>
+               <g id="shape28-53" transform="translate(-60.1711,80.2563) rotate(-90.107)">
+                       <title>Simple Double Arrow</title>
+                       <path d="M0 158.66 L11.34 154.18 L11.34 156.42 L29.38 156.42 L29.38 154.18 L40.72 158.66 L29.38 163.15 L29.38 160.9 L11.34
+                                                160.9 L11.34 163.15 L0 158.66 Z" class="st12"/>
+               </g>
+               <g id="shape30-57" transform="translate(120.746,108.97) rotate(-90.2397)">
+                       <title>Simple Double Arrow.30</title>
+                       <path d="M0 158.66 L11.34 154.18 L11.34 156.42 L56.41 156.42 L56.41 154.18 L67.75 158.66 L56.41 163.15 L56.41 160.9 L11.34
+                                                160.9 L11.34 163.15 L0 158.66 Z" class="st12"/>
+               </g>
+               <g id="shape42-60" transform="translate(64.0521,108.636) rotate(-90.1191)">
+                       <title>Simple Double Arrow.42</title>
+                       <path d="M0 158.66 L11.34 154.18 L11.34 156.42 L56.87 156.42 L56.87 154.18 L68.21 158.66 L56.87 163.15 L56.87 160.9 L11.34
+                                                160.9 L11.34 163.15 L0 158.66 Z" class="st12"/>
+               </g>
+       </g>
+</svg>
diff --git a/doc/guides/prog_guide/img/link_bonding.png b/doc/guides/prog_guide/img/link_bonding.png
deleted file mode 100644 (file)
index 6843879..0000000
Binary files a/doc/guides/prog_guide/img/link_bonding.png and /dev/null differ
index badd891..08e4424 100644 (file)
@@ -35,21 +35,25 @@ In addition to Poll Mode Drivers (PMDs) for physical and virtual hardware,
 Intel® DPDK also includes a pure-software library that
 allows physical PMD's to be bonded together to create a single logical PMD.
 
-|link_bonding|
+|bond-overview|
 
-The Link Bonding PMD library(librte_pmd_bond) supports bonding of groups of physical ports of the same speed (1GbE, 10GbE and 40GbE) and
-duplex to provide similar the capabilities to that found in Linux bonding driver to allow the aggregation of multiple (slave) NICs
-into a single logical interface between a server and a switch.
-The new bonded PMD will then process these interfaces based on the mode of operation specified to provide support for features
-such as redundant links, fault tolerance and/or load balancing.
+The Link Bonding PMD library(librte_pmd_bond) supports bonding of groups of
+``rte_eth_dev`` ports of the same speed and duplex to provide
+similar the capabilities to that found in Linux bonding driver to allow the
+aggregation of multiple (slave) NICs into a single logical interface between a
+server and a switch. The new bonded PMD will then process these interfaces
+based on the mode of operation specified to provide support for features such
+as redundant links, fault tolerance and/or load balancing.
 
-The librte_pmd_bond library exports a C API which provides an API for the creation of bonded devices
-as well as the configuration and management of the bonded device and its slave devices.
+The librte_pmd_bond library exports a C API which provides an API for the
+creation of bonded devices as well as the configuration and management of the
+bonded device and its slave devices.
 
 .. note::
 
-    The Link Bonding PMD Library is enabled by default in the build configuration files,
-    the library can be disabled by setting CONFIG_RTE_LIBRTE_PMD_BOND=n and recompiling the Intel® DPDK.
+    The Link Bonding PMD Library is enabled by default in the build
+    configuration files, the library can be disabled by setting
+    ``CONFIG_RTE_LIBRTE_PMD_BOND=n`` and recompiling the Intel® DPDK.
 
 Link Bonding Modes Overview
 ---------------------------
@@ -57,143 +61,255 @@ Link Bonding Modes Overview
 Currently the Link Bonding PMD library supports 4 modes of operation:
 
 *   **Round-Robin (Mode 0):**
-    This mode provides load balancing and fault tolerance by transmission of packets
-    in sequential order from the first available slave device through the last.
-    Packets are bulk dequeued from devices then serviced in round-robin manner.
+
+|bond-mode-0|
+
+    This mode provides load balancing and fault tolerance by transmission of
+    packets in sequential order from the first available slave device through
+    the last. Packets are bulk dequeued from devices then serviced in a
+    round-robin manner. This mode does not guarantee in order reception of
+    packets and down stream should be able to handle out of order packets.
 
 *   **Active Backup (Mode 1):**
-    In this mode only one slave in the bond is active at any time, a different slave becomes active if,
-    and only if, the primary active slave fails,
-    thereby providing fault tolerance to slave failure.
-    The single logical bonded interface's MAC address is externally visible on only one NIC (port)
+
+|bond-mode-1|
+
+    In this mode only one slave in the bond is active at any time, a different
+    slave becomes active if, and only if, the primary active slave fails,
+    thereby providing fault tolerance to slave failure. The single logical
+    bonded interface's MAC address is externally visible on only one NIC (port)
     to avoid confusing the network switch.
 
 *   **Balance XOR (Mode 2):**
-    This mode provides load balancing based on transmit packets based on the selected XOR transmission policy and fault tolerance.
-    The default policy (layer2) uses a simple XOR calculation on the packet source / destination MAC address to select the slave to transmit on.
-    Alternate transmission policies supported are layer 2+3, this uses the IP source and destination addresses in the calculation of the slave port and
-    the final supported policy is layer 3+4, this uses IP source and destination addresses as well as the UDP source and destination port.
+
+|bond-mode-2|
+
+    This mode provides transmit load balancing (based on the selected
+    transmission policy) and fault tolerance. The default policy (layer2) uses
+    a simple calculation based on the packet flow source and destination MAC
+    addresses aswell as the number of active slaves available to the bonded
+    device to classify the packet to a specific slave to transmit on. Alternate
+    transmission policies supported are layer 2+3, this takes the IP source and
+    destination addresses into the calculation of the transmit slave port and
+    the final supported policy is layer 3+4, this uses IP source and
+    destination addresses as well as the TCP/UDP source and destination port.
+
+.. note::
+    The colouring differences of the packets are used to identify different flow
+    classification calculated by the selected transmit policy
+
 
 *   **Broadcast (Mode 3):**
-    This mode provides fault tolerance by transmission of packets on all slave ports.
+
+|bond-mode-3|
+
+    This mode provides fault tolerance by transmission of packets on all slave
+    ports.
+
+*   **Link Aggregation 802.3AD (Mode 4):**
+
+|bond-mode-4|
+
+    This mode provides dynamic link aggregation according to the 802.3ad
+    specification. It negotiates and monitors aggregation groups that share the
+    same speed and duplex settings using the selected balance transmit policy
+    for balancing outgoing traffic.
+
+    DPDK implementation of this mode provide some additional requirements of
+    the application.
+
+    #. It needs to call ``rte_eth_tx_burst`` and ``rte_eth_rx_burst`` with
+       intervals period of less than 100ms.
+
+    #. Calls to ``rte_eth_tx_burst`` must have a buffer size of at least 2xN,
+       where N is the number of slaves. This is a space required for LACP
+       frames. Additionally LACP packets are included in the statistics, but
+       they are not returned to the application.
+
+*   **Transmit Load Balancing (Mode 5):**
+
+|bond-mode-5|
+
+    This mode provides an adaptive transmit load balancing. It dynamically
+    changes the transmitting slave, according to the computed load. Statistics
+    are collected in 100ms intervals and scheduled every 10ms.
+
 
 Implementation Details
 ----------------------
 
-The librte_pmd_bond onded device are compatible with the Ethernet device API exported by the Ethernet PMDs described in the *Intel® DPDK API Reference*.
+The librte_pmd_bond bonded device are compatible with the Ethernet device API
+exported by the Ethernet PMDs described in the *Intel® DPDK API Reference*.
 
-The Link Bonding Library supports the creation of bonded devices at application startup time during EAL initialization using the
---vdev option as well as programmatically via the C API rte_eth_bond_create function.
+The Link Bonding Library supports the creation of bonded devices at application
+startup time during EAL initialization using the ``--vdev`` option as well as
+programmatically via the C API ``rte_eth_bond_create`` function.
 
 Bonded devices support the dynamical addition and removal of slave devices using
-the rte_eth_bond_slave_add / rte_eth_bond_slave_remove APIs.
+the ``rte_eth_bond_slave_add`` / ``rte_eth_bond_slave_remove`` APIs.
 
 After a slave device is added to a bonded device slave is stopped using
-rte_eth_dev_stop and the slave reconfigured using rte_eth_dev_configure the RX and TX queues are also reconfigured
-using rte_eth_tx_queue_setup / rte_eth_rx_queue_setup with the parameters use to configure the bonding device.
+``rte_eth_dev_stop`` and then reconfigured using ``rte_eth_dev_configure``
+the RX and TX queues are also reconfigured using ``rte_eth_tx_queue_setup`` /
+``rte_eth_rx_queue_setup`` with the parameters use to configure the bonding
+device.
+
+Link Status Change Interrupts / Polling
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Link bonding devices support the registration of a link status change callback,
+using the ``rte_eth_dev_callback_register`` API, this will be called when the
+status of the bonding device changes. For example in the case of a bonding
+device which has 3 slaves, the link status will change to up when one slave
+becomes active or change to down when all slaves become inactive. There is no
+callback notification when a single slave changes state and the previous
+conditions are not met. If a user wishes to monitor individual slaves then they
+must register callbacks with that slave directly.
+
+The link bonding library also supports devices which do not implement link
+status change interrupts, this is achieve by polling the devices link status at
+a defined period which is set using the ``rte_eth_bond_link_monitoring_set``
+API, the default polling interval is 10ms. When a device is added as a slave to
+a bonding device it is determined using the ``RTE_PCI_DRV_INTR_LSC`` flag
+whether the device supports interrupts or whether the link status should be
+monitored by polling it.
 
 Requirements / Limitations
 ~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-The current implementation only supports physical devices of the same type, speed and duplex to be added as slaves.
-The bonded device inherits these values from the first active slave added to the bonded device
-and then all further slaves added to the bonded device must match these parameters.
+The current implementation only supports devices that support the same speed
+and duplex to be added as a slaves to the same bonded device. The bonded device
+inherits these attributes from the first active slave added to the bonded
+device and then all further slaves added to the bonded device must support
+these parameters.
 
-A bonding device must have a minimum of one slave before the bonding device itself can be started.
+A bonding device must have a minimum of one slave before the bonding device
+itself can be started.
 
-Like all other PMD, all functions exported by a PMD are lock-free functions that are assumed
-not to be invoked in parallel on different logical cores to work on the same target object.
+Like all other PMD, all functions exported by a PMD are lock-free functions
+that are assumed not to be invoked in parallel on different logical cores to
+work on the same target object.
 
-It should also be noted that the PMD receive function should not be invoked directly on a slave devices after they have
-been to a bonded device since packets read directly from the slave device will no longer be available to the bonded device to read.
+It should also be noted that the PMD receive function should not be invoked
+directly on a slave devices after they have been to a bonded device since
+packets read directly from the slave device will no longer be available to the
+bonded device to read.
 
 Configuration
 ~~~~~~~~~~~~~
 
-Link bonding devices are created using the rte_eth_bond_create API
+Link bonding devices are created using the ``rte_eth_bond_create`` API
 which requires a unique device name, the bonding mode,
 and the socket Id to allocate the bonding device's resources on.
-The other configurable parameters for a bonded device are its slave devices, its primary slave,
-a user defined MAC address and transmission policy to use if the device is balance XOR mode.
+The other configurable parameters for a bonded device are its slave devices,
+its primary slave, a user defined MAC address and transmission policy to use if
+the device is in balance XOR mode.
 
 Slave Devices
 ^^^^^^^^^^^^^
 
-Bonding devices support up to a maximum of RTE_MAX_ETHPORTS slave devices of the same speed and duplex.
-Ethernet devices can be added as a slave to a maximum of one bonded device.
-Slave devices are reconfigured with the configuration of the bonded device on being added to a bonded device.
+Bonding devices support up to a maximum of ``RTE_MAX_ETHPORTS`` slave devices
+of the same speed and duplex. Ethernet devices can be added as a slave to a
+maximum of one bonded device. Slave devices are reconfigured with the
+configuration of the bonded device on being added to a bonded device.
 
-The bonded also guarantees to return the MAC address of the slave device to its original value of removal of a slave from it.
+The bonded also guarantees to return the MAC address of the slave device to its
+original value of removal of a slave from it.
 
 Primary Slave
 ^^^^^^^^^^^^^
 
-The primary slave is used to define the default port to use when a bonded device is in active backup mode.
-A different port will only be used if, and only if, the current primary port goes down.
-If the user does not specify a primary port it will default to being the first port added to the bonded device.
+The primary slave is used to define the default port to use when a bonded
+device is in active backup mode. A different port will only be used if, and
+only if, the current primary port goes down. If the user does not specify a
+primary port it will default to being the first port added to the bonded device.
 
 MAC Address
 ^^^^^^^^^^^
 
-The bonded device can be configured with a user specified MAC address,
-this address will be inherited by the some/all slave devices depending on the operating mode.
-If the device is in active backup mode then only the primary device will have the user specified MAC,
-all other slaves will retain their original MAC address.
-In mode 0, 2, and 3 all slaves devices are configure with the bonded devices MAC address.
+The bonded device can be configured with a user specified MAC address, this
+address will be inherited by the some/all slave devices depending on the
+operating mode. If the device is in active backup mode then only the primary
+device will have the user specified MAC, all other slaves will retain their
+original MAC address. In mode 0, 2, 3, 4 all slaves devices are configure with
+the bonded devices MAC address.
 
-If a user defined MAC address is not defined then the bonded device will default to using the primary slaves MAC address.
+If a user defined MAC address is not defined then the bonded device will
+default to using the primary slaves MAC address.
 
 Balance XOR Transmit Policies
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
-There are 3 supported transmission policies for bonded device running in Balance XOR mode. Layer 2, Layer 2+3, Layer 3+4.
+There are 3 supported transmission policies for bonded device running in
+Balance XOR mode. Layer 2, Layer 2+3, Layer 3+4.
 
-*   **Layer 2:**   Ethernet MAC address based balancing is the default transmission policy for Balance XOR bonding mode.
-    It uses a simple XOR calculation on the source MAC address and destination MAC address of the packet and
-    then calculate the modulus of this value to calculate the slave device to transmit the packet on.
+*   **Layer 2:**   Ethernet MAC address based balancing is the default
+    transmission policy for Balance XOR bonding mode. It uses a simple XOR
+    calculation on the source MAC address and destination MAC address of the
+    packet and then calculate the modulus of this value to calculate the slave
+    device to transmit the packet on.
 
-*   **Layer 2 + 3:** Ethernet MAC address & IP Address based balancing uses a combination of source/destination MAC addresses and
-    the source/destination IP addresses of the data packet to decide which slave port the packet will be transmitted on.
+*   **Layer 2 + 3:** Ethernet MAC address & IP Address based balancing uses a
+    combination of source/destination MAC addresses and the source/destination
+    IP addresses of the data packet to decide which slave port the packet will
+    be transmitted on.
 
-*   **Layer 3 + 4:**  IP Address & UDP Port based  balancing uses a combination of source/destination IP Address and
-    the source/destination UDP ports of the packet of the data packet to decide which slave port the packet will be transmitted on.
+*   **Layer 3 + 4:**  IP Address & UDP Port based  balancing uses a combination
+    of source/destination IP Address and the source/destination UDP ports of
+    the packet of the data packet to decide which slave port the packet will be
+    transmitted on.
 
-All these policies support 802.1Q VLAN Ethernet packets, as well as IPv4, IPv6 and UDP protocols for load balancing.
+All these policies support 802.1Q VLAN Ethernet packets, as well as IPv4, IPv6
+and UDP protocols for load balancing.
 
 Using Link Bonding Devices
 --------------------------
 
-The librte_pmd_bond library support two modes of device creation, the libraries export full C API or
-using the EAL command line to statically configure link bonding devices at application startup.
-Using the EAL option it is possible to use link bonding functionality transparently without specific knowledge of the libraries API,
-this can be used, for example, to add bonding functionality, such as active backup,
-to an existing application which has no knowledge of the link bonding C API.
+The librte_pmd_bond library support two modes of device creation, the libraries
+export full C API or using the EAL command line to statically configure link
+bonding devices at application startup. Using the EAL option it is possible to
+use link bonding functionality transparently without specific knowledge of the
+libraries API, this can be used, for example, to add bonding functionality,
+such as active backup, to an existing application which has no knowledge of
+the link bonding C API.
 
 Using the Poll Mode Driver from an Application
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-Using the librte_pmd_bond libraries API it is possible to dynamicall create and manage link bonding device from within any application.
-Link bonding device are created using the rte_eth_bond_create API which requires a unqiue device name,
-the link bonding mode to initial the device in and finally the socket Id which to allocate the devices resources onto.
-After successful creation of a bonding device it must be configured using the generic Ethernet device configure API rte_eth_dev_configure
-and then the RX and TX queues which will be used must be setup using rte_eth_tx_queue_setup / rte_eth_rx_queue_setup.
-
-Slave devices can be dynamically added and removed from a link bonding device using the rte_eth_bond_slave_add / rte_eth_bond_slave_remove
-APIs but at least one slave device must be added to the link bonding device before it can be started using rte_eth_dev_start.
-
-The link status of a bonded device is dictated by that of its slaves, if all slave device link status are down or
-if all slaves are removed from the link bonding device then the link status of the bonding device will go down.
-
-It is also possible to configure / query the configuration of the control parameters of a bonded device using the provided APIs
-rte_eth_bond_mode_set/get, rte_eth_bond_primary_set/get, rte_eth_bond_mac_set/reset and rte_eth_bond_xmit_policy_set/get.
+Using the librte_pmd_bond libraries API it is possible to dynamically create
+and manage link bonding device from within any application. Link bonding
+device are created using the ``rte_eth_bond_create`` API which requires a
+unique device name, the link bonding mode to initial the device in and finally
+the socket Id which to allocate the devices resources onto. After successful
+creation of a bonding device it must be configured using the generic Ethernet
+device configure API ``rte_eth_dev_configure`` and then the RX and TX queues
+which will be used must be setup using ``rte_eth_tx_queue_setup`` /
+``rte_eth_rx_queue_setup``.
+
+Slave devices can be dynamically added and removed from a link bonding device
+using the ``rte_eth_bond_slave_add`` / ``rte_eth_bond_slave_remove``
+APIs but at least one slave device must be added to the link bonding device
+before it can be started using ``rte_eth_dev_start``.
+
+The link status of a bonded device is dictated by that of its slaves, if all
+slave device link status are down or if all slaves are removed from the link
+bonding device then the link status of the bonding device will go down.
+
+It is also possible to configure / query the configuration of the control
+parameters of a bonded device using the provided APIs
+``rte_eth_bond_mode_set/ get``, ``rte_eth_bond_primary_set/get``,
+``rte_eth_bond_mac_set/reset`` and ``rte_eth_bond_xmit_policy_set/get``.
 
 Using Link Bonding Devices from the EAL Command Line
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-Link bonding devices can be created at application startup time using the --vdev EAL command line option.
-The device name must start with the eth_bond prefix followed by numbers or letters. The name must be unique for each device.
-Each device can have multiple options arranged in a comma separated list.
-Multiple devices definitions can be arranged by calling the --vdev option multiple times.
+Link bonding devices can be created at application startup time using the
+``--vdev`` EAL command line option. The device name must start with the
+eth_bond prefix followed by numbers or letters. The name must be unique for
+each device. Each device can have multiple options arranged in a comma
+separated list. Multiple devices definitions can be arranged by calling the
+``--vdev`` option multiple times.
+
 Device names and bonding options must be separated by commas as shown below:
 
 .. code-block:: console
@@ -203,7 +319,8 @@ Device names and bonding options must be separated by commas as shown below:
 Link Bonding EAL Options
 ^^^^^^^^^^^^^^^^^^^^^^^^
 
-There are multiple ways of definitions that can be assessed and combined as long as the following two rules are respected:
+There are multiple ways of definitions that can be assessed and combined as
+long as the following two rules are respected:
 
 *   A unique device name, in the format of eth_bondX is provided,
     where X can be any combination of numbers and/or letters,
@@ -216,37 +333,79 @@ There are multiple ways of definitions that can be assessed and combined as long
 The different options are:
 
 *   mode: Integer value defining the bonding mode of the device.
-    Currently supports modes 0,1,2,3 (round-robin, active backup, balance, and broadcast).
+    Currently supports modes 0,1,2,3,4,5 (round-robin, active backup, balance,
+    broadcast, link aggregation, transmit load balancing).
+
+.. code-block:: console
 
         mode=2
 
-*   slave: Defines the PMD device which will be added as slave to the bonded device.
-    This option can be selected multiple time, for each device to be added as a slave.
-    Physical devices should be specified using their PCI address, in the format domain:bus:devid.function
+*   slave: Defines the PMD device which will be added as slave to the bonded
+    device. This option can be selected multiple time, for each device to be
+    added as a slave. Physical devices should be specified using their PCI
+    address, in the format domain:bus:devid.function
+
+.. code-block:: console
 
         slave=0000:0a:00.0,slave=0000:0a:00.1
 
 *   primary: Optional parameter which defines the primary slave port,
-    is used in active backup mode to select the primary slave for data TX/RX if it is available.
-    The primary port also is used to select the MAC address to use when it is not defined by the user.
-    This defaults to the first slave added to the device if it is specified.
-    The primary device must be a slave of the bonded device.
+    is used in active backup mode to select the primary slave for data TX/RX if
+    it is available. The primary port also is used to select the MAC address to
+    use when it is not defined by the user. This defaults to the first slave
+    added to the device if it is specified. The primary device must be a slave
+    of the bonded device.
+
+.. code-block:: console
 
         primary=0000:0a:00.0
 
-*   socket_id: Optional parameter used to select which socket on a NUMA device the bonded devices resources will be allocated on.
+*   socket_id: Optional parameter used to select which socket on a NUMA device
+    the bonded devices resources will be allocated on.
+
+.. code-block:: console
 
         socket_id=0
 
-*   mac: Optional parameter to select a MAC address for link bonding device, this overrides the value of the primary slave device.
+*   mac: Optional parameter to select a MAC address for link bonding device,
+    this overrides the value of the primary slave device.
+
+.. code-block:: console
 
         mac=00:1e:67:1d:fd:1d
 
-*   xmit_policy: Optional parameter which defines the transmission policy when the bonded device is in  balance mode.
-    If not user specified this defaults to l2 (layer 2) forwarding,
-    the other transmission policies available are l23 (layer 2+3) and l34 (layer 3+4)
+*   xmit_policy: Optional parameter which defines the transmission policy when
+    the bonded device is in  balance mode. If not user specified this defaults
+    to l2 (layer 2) forwarding, the other transmission policies available are
+    l23 (layer 2+3) and l34 (layer 3+4)
+
+.. code-block:: console
+
+        xmit_policy=l23
+
+*   lsc_poll_period_ms: Optional parameter which defines the polling interval
+    in milli-seconds at which devices which don't support lsc interrupts are
+    checked for a change in the devices link status
+
+.. code-block:: console
+
+        lsc_poll_period_ms=100
+
+*   up_delay: Optional parameter which adds a delay in milli-seconds to the
+    propagation of a devices link status changing to up, by default this
+    parameter is zero.
+
+.. code-block:: console
+
+        up_delay=10
+
+*   down_delay: Optional parameter which adds a delay in milli-seconds to the
+    propagation of a devices link status changing to down, by default this
+    parameter is zero.
+
+.. code-block:: console
 
-        xmit_policy=l2
+        down_delay=50
 
 Examples of Usage
 ^^^^^^^^^^^^^^^^^
@@ -275,4 +434,10 @@ Create a bonded device in balance mode with two slaves specified by their PCI ad
 
     $RTE_TARGET/app/testpmd -c '0xf' -n 4 --vdev 'eth_bond0,mode=2, slave=0000:00a:00.01,slave=0000:004:00.00,xmit_policy=l34' -- --port-topology=chained
 
-.. |link_bonding| image:: img/link_bonding.png
+.. |bond-overview| image:: img/bond-overview.svg
+.. |bond-mode-0| image:: img/bond-mode-0.svg
+.. |bond-mode-1| image:: img/bond-mode-1.svg
+.. |bond-mode-2| image:: img/bond-mode-2.svg
+.. |bond-mode-3| image:: img/bond-mode-3.svg
+.. |bond-mode-4| image:: img/bond-mode-4.svg
+.. |bond-mode-5| image:: img/bond-mode-5.svg