<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin:0cm;
        margin-bottom:.0001pt;
        text-indent:21.0pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle19
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle20
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle21
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
span.EmailStyle22
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
span.EmailStyle23
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:950825041;
        mso-list-type:hybrid;
        mso-list-template-ids:-855874788 -1737209608 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l0:level1
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:18.0pt;
        text-indent:-18.0pt;}
@list l0:level2
        {mso-level-number-format:alpha-lower;
        mso-level-text:"%2\)";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:42.0pt;
        text-indent:-21.0pt;}
@list l0:level3
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        margin-left:63.0pt;
        text-indent:-21.0pt;}
@list l0:level4
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:84.0pt;
        text-indent:-21.0pt;}
@list l0:level5
        {mso-level-number-format:alpha-lower;
        mso-level-text:"%5\)";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:105.0pt;
        text-indent:-21.0pt;}
@list l0:level6
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        margin-left:126.0pt;
        text-indent:-21.0pt;}
@list l0:level7
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:147.0pt;
        text-indent:-21.0pt;}
@list l0:level8
        {mso-level-number-format:alpha-lower;
        mso-level-text:"%8\)";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:168.0pt;
        text-indent:-21.0pt;}
@list l0:level9
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        margin-left:189.0pt;
        text-indent:-21.0pt;}
ol
        {margin-bottom:0cm;}
ul
        {margin-bottom:0cm;}
--></style>
</head>
<body lang="EN-CA" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">See inline (MP>)<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span style="font-size:12.0pt;color:black">From: </span></b><span style="font-size:12.0pt;color:black">"Xu, Chenjie" <chenjie.xu@intel.com><br>
<b>Date: </b>Thursday, September 19, 2019 at 8:05 AM<br>
<b>To: </b>"Peters, Matt" <Matt.Peters@windriver.com><br>
<b>Cc: </b>"'starlingx-discuss@lists.starlingx.io'" <starlingx-discuss@lists.starlingx.io>, "Zhao, Forrest" <forrest.zhao@intel.com>, Ghada Khalil <Ghada.Khalil@windriver.com><br>
<b>Subject: </b>RE: [Starlingx-discuss] OVS collectd interface/port state monitoring<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;color:#1F497D">Hi Matt,</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;color:#1F497D">During my implementation, I have several questions as below:</span><o:p></o:p></p>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l0 level1 lfo2">
<![if !supportLists]><span style="mso-list:Ignore">1.<span style="font:7.0pt "Times New Roman"">      
</span></span><![endif]><span lang="EN-US" style="font-size:10.5pt;color:#1F497D">If a port is a bond, does the related bridge also has a name with format br-phy%index?</span><o:p></o:p></p>
<p class="MsoNormal">MP> Yes it does.  It would contain a bond port with the interfaces as members.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l0 level1 lfo2">
<![if !supportLists]><span style="mso-list:Ignore">2.<span style="font:7.0pt "Times New Roman"">      
</span></span><![endif]><span lang="EN-US" style="font-size:10.5pt;color:#1F497D">If OVS-DPDK is used, is bond still supported?</span><o:p></o:p></p>
<p class="MsoNormal">MP> Yes.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l0 level1 lfo2">
<![if !supportLists]><span style="mso-list:Ignore">3.<span style="font:7.0pt "Times New Roman"">      
</span></span><![endif]><span lang="EN-US" style="font-size:10.5pt;color:#1F497D">A bond may contain multiple interfaces. Do we have some restriction on the number of interfaces belonging to a same bond?</span><o:p></o:p></p>
<p class="MsoNormal">MP> The upper bound for DPDK is 32 (default).  However, practically speaking I have never seen anything more than 4.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l0 level1 lfo2">
<![if !supportLists]><span style="mso-list:Ignore">4.<span style="font:7.0pt "Times New Roman"">      
</span></span><![endif]><span lang="EN-US" style="font-size:10.5pt;color:#1F497D">How can I get the root password in StarlingX. Because it has to be root to execute OVS commands.</span><o:p></o:p></p>
<p class="MsoNormal">MP> The collectd process runs as root and would therefore have sufficient privileges to read/write to the OVS socket.  BTW, you should not need to execute and parse the output from ovs-xxxctl commands.  You can use the Python API / library
 to interact with AVS from the collectd python plugin.<o:p></o:p></p>
<p class="MsoNormal"><a href="https://python-ovs-vsctl.readthedocs.io/en/latest/">https://python-ovs-vsctl.readthedocs.io/en/latest/</a><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l0 level1 lfo2">
<![if !supportLists]><span style="mso-list:Ignore">5.<span style="font:7.0pt "Times New Roman"">      
</span></span><![endif]><span lang="EN-US" style="font-size:10.5pt;color:#1F497D">How to decide the code is running on OpenStack worker node or not.</span><o:p></o:p></p>
<p class="MsoNormal">MP> I would simplify the plugin check and just have it look for the existence of the OVS unix socket or fail gracefully if it can’t connect or collect information.  The alternative would be to dynamically load the plugin in /etc/collectd.d
 and have Puppet setup the configuration file dynamically (or via soft link).  I prefer the first option since it avoids a bunch of end-to-end configuration just to identify the presence of OVS or OVS-DPDK.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;color:#1F497D">Best Regards,</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;color:#1F497D">Xu, Chenjie</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;color:#1F497D"> </span><o:p></o:p></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><a name="_____replyseparator"></a><b><span lang="EN-US">From:</span></b><span lang="EN-US"> Xu, Chenjie
<br>
<b>Sent:</b> Wednesday, September 18, 2019 11:28 AM<br>
<b>To:</b> Peters, Matt <Matt.Peters@windriver.com><br>
<b>Cc:</b> starlingx-discuss@lists.starlingx.io; Zhao, Forrest <forrest.zhao@intel.com>; Khalil, Ghada <Ghada.Khalil@windriver.com><br>
<b>Subject:</b> RE: [Starlingx-discuss] OVS collectd interface/port state monitoring</span><o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;color:#1F497D">Hi Matt,</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;color:#1F497D">Thank you for your information! I will submit a patch to implement this function.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;color:#1F497D">Best Regards,</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;color:#1F497D">Xu, Chenjie</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;color:#1F497D"> </span><o:p></o:p></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US">From:</span></b><span lang="EN-US"> Peters, Matt [<a href="mailto:Matt.Peters@windriver.com">mailto:Matt.Peters@windriver.com</a>]
<br>
<b>Sent:</b> Tuesday, September 17, 2019 9:32 PM<br>
<b>To:</b> Xu, Chenjie <<a href="mailto:chenjie.xu@intel.com">chenjie.xu@intel.com</a>><br>
<b>Cc:</b> <a href="mailto:starlingx-discuss@lists.starlingx.io">starlingx-discuss@lists.starlingx.io</a>; Zhao, Forrest <<a href="mailto:forrest.zhao@intel.com">forrest.zhao@intel.com</a>>; Khalil, Ghada <<a href="mailto:Ghada.Khalil@windriver.com">Ghada.Khalil@windriver.com</a>><br>
<b>Subject:</b> Re: [Starlingx-discuss] OVS collectd interface/port state monitoring</span><o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal">Hi Chenjie,<o:p></o:p></p>
<p class="MsoNormal">Yes, the dump-ports-desc can be used to obtain the current port state and negotiated state with the peer.  This data will need to be mapped back to the data interface mapping of the host so that the appropriate alarms may be raised against
 the proper entity.<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">In addition, if the data interface is a bond, the following information will also have to be retrieved in order to obtain the full state of the bond interface, including LACP information (if applicable).<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">ovs-appctl bond/show<o:p></o:p></p>
<p class="MsoNormal">ovs-appctl lacp/show<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Finally, the alarming behavior should be the following:<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Data port is down and does not belong to a bond – Critical Alarm<o:p></o:p></p>
<p class="MsoNormal">Data port(s) down, but enabled port remains in bond – Major Alarm (degraded service)<o:p></o:p></p>
<p class="MsoNormal">All data ports down in a bond – Critical Alarm<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span style="font-size:12.0pt;color:black">From: </span></b><span style="font-size:12.0pt;color:black">"Xu, Chenjie" <</span><span lang="EN-US"><a href="mailto:chenjie.xu@intel.com"><span lang="EN-US" style="font-size:12.0pt"><span lang="EN-US">chenjie.xu@intel.com</span></span></a></span><span style="font-size:12.0pt;color:black">><br>
<b>Date: </b>Monday, September 16, 2019 at 11:32 PM<br>
<b>To: </b>"Peters, Matt" <</span><span lang="EN-US"><a href="mailto:Matt.Peters@windriver.com"><span lang="EN-US" style="font-size:12.0pt"><span lang="EN-US">Matt.Peters@windriver.com</span></span></a></span><span style="font-size:12.0pt;color:black">><br>
<b>Cc: </b>"</span><span lang="EN-US"><a href="mailto:starlingx-discuss@lists.starlingx.io"><span lang="EN-US" style="font-size:12.0pt"><span lang="EN-US">starlingx-discuss@lists.starlingx.io</span></span></a></span><span style="font-size:12.0pt;color:black">"
 <</span><span lang="EN-US"><a href="mailto:starlingx-discuss@lists.starlingx.io"><span lang="EN-US" style="font-size:12.0pt"><span lang="EN-US">starlingx-discuss@lists.starlingx.io</span></span></a></span><span style="font-size:12.0pt;color:black">>, "Zhao,
 Forrest" <</span><span lang="EN-US"><a href="mailto:forrest.zhao@intel.com"><span lang="EN-US" style="font-size:12.0pt"><span lang="EN-US">forrest.zhao@inte<span lang="EN-US">l.com</span></span></span></a></span><span style="font-size:12.0pt;color:black">>,
 Ghada Khalil <</span><span lang="EN-US"><a href="mailto:Ghada.Khalil@windriver.com"><span lang="EN-US" style="font-size:12.0pt"><span lang="EN-US">Ghada.Khalil@windriver.com</span></span></a></span><span style="font-size:12.0pt;color:black">><br>
<b>Subject: </b>[Starlingx-discuss] OVS collectd interface/port state monitoring</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">Hi Matt,</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">For task “OVS collectd interface/port state monitoring”, which parts should be monitored? For example: Bridge, Port.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"><a href="https://storyboard.openstack.org/#!/story/2002948">https://storyboard.openstack.org/#!/story/2002948</a></span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"><a href="https://bugs.launchpad.net/starlingx/+bug/1834512">https://bugs.launchpad.net/starlingx/+bug/1834512</a></span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Bridge "br-phy1"</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">        Port "br-phy1"</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">            Interface "br-phy1"</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                type: internal</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">        Port "eth1"</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">            Interface "eth1"</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                type: dpdk</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                options: {dpdk-devargs="0000:18:00.1", n_rxq="1"}</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">        Port "lldp8a3c28ca-7f"</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">            Interface "lldp8a3c28ca-7f"</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                type: internal</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">The command “<b>ovs-ofctl dump-ports-desc $ovs_bridge</b>” can be used with collectd for both OVS and OVS-DPDK. The link status for interfaces can be detected as below:</span><o:p></o:p></p>
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:10.5pt">For OVS:</span></b><o:p></o:p></p>
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:10.5pt">After pull the cabel:</span></b><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">controller-0:/home/sysadmin# ovs-ofctl dump-ports-desc br-phy0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">OFPST_PORT_DESC reply (xid=0x2):</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">1(<b>enp51s0f3</b>): addr:0c:c4:7a:ff:5f:ef</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     config:     0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">    <b> state:      LINK_DOWN</b></span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     current:    COPPER AUTO_NEG</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     advertised: 10MB-HD 10MB-FD 100MB-HD 100MB-FD 1GB-FD COPPER AUTO_NEG AUTO_PAUSE</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     supported:  10MB-HD 10MB-FD 100MB-HD 100MB-FD 1GB-FD COPPER AUTO_NEG AUTO_PAUSE</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     speed: 0 Mbps now, 1000 Mbps max</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">2(phy-br-phy0): addr:1a:0a:21:03:6a:1e</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     config:     0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     state:      0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     speed: 0 Mbps now, 0 Mbps max</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">LOCAL(br-phy0): addr:0c:c4:7a:ff:5f:ef</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     config:     PORT_DOWN</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     state:      LINK_DOWN</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     speed: 0 Mbps now, 0 Mbps max</span><o:p></o:p></p>
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:10.5pt">After plug in the cable:</span></b><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">controller-0:/home/sysadmin# ovs-ofctl dump-ports-desc br-phy0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">OFPST_PORT_DESC reply (xid=0x2):</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">1(<b>enp51s0f3</b>): addr:0c:c4:7a:ff:5f:ef</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     config:     0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">    <b> state:      0</b></span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     current:    1GB-FD COPPER AUTO_NEG</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     advertised: 10MB-HD 10MB-FD 100MB-HD 100MB-FD 1GB-FD COPPER AUTO_NEG AUTO_PAUSE</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     supported:  10MB-HD 10MB-FD 100MB-HD 100MB-FD 1GB-FD COPPER AUTO_NEG AUTO_PAUSE</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     speed: 1000 Mbps now, 1000 Mbps max</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">2(phy-br-phy0): addr:1a:0a:21:03:6a:1e</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     config:     0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     state:      0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     speed: 0 Mbps now, 0 Mbps max</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">LOCAL(br-phy0): addr:0c:c4:7a:ff:5f:ef</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     config:     PORT_DOWN</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     state:      LINK_DOWN</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     speed: 0 Mbps now, 0 Mbps max</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt"> </span><o:p></o:p></p>
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:10.5pt">For OVS-DPDK:</span></b><o:p></o:p></p>
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:10.5pt">After pull the cabel:</span></b><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">controller-0:/home/sysadmin# ovs-ofctl dump-ports-desc br-phy1</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">OFPST_PORT_DESC reply (xid=0x2):</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">1(<b>eth1</b>): addr:3c:fd:fe:da:e8:85</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     config:     0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     <b>state:      LINK_DOWN</b></span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     current:    AUTO_NEG</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     speed: 0 Mbps now, 0 Mbps max</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">2(lldp8a3c28ca-7f): addr:52:97:0b:a4:ef:23</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     config:     0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     state:      0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     current:    10MB-FD COPPER</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     speed: 10 Mbps now, 0 Mbps max</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">LOCAL(br-phy1): addr:3c:fd:fe:da:e8:85</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     config:     0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     state:      0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     current:    10MB-FD COPPER</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     speed: 10 Mbps now, 0 Mbps max</span><o:p></o:p></p>
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:10.5pt">After plug in the cable:</span></b><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">controller-0:/home/sysadmin# ovs-ofctl dump-ports-desc br-phy1</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">OFPST_PORT_DESC reply (xid=0x2):</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">1(<b>eth1</b>): addr:3c:fd:fe:da:e8:85</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     config:     0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     <b>state:      0</b></span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     current:    10GB-FD AUTO_NEG</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     speed: 10000 Mbps now, 0 Mbps max</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">2(lldp8a3c28ca-7f): addr:52:97:0b:a4:ef:23</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     config:     0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     state:      0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     current:    10MB-FD COPPER</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     speed: 10 Mbps now, 0 Mbps max</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">LOCAL(br-phy1): addr:3c:fd:fe:da:e8:85</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     config:     0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     state:      0</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     current:    10MB-FD COPPER</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">     speed: 10 Mbps now, 0 Mbps max</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">Best Regards,</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt">Xu, Chenjie</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt"> </span><o:p></o:p></p>
</div>
</body>
</html>