<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" 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=us-ascii">
<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;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        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;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:"Courier New";}
span.n
        {mso-style-name:n;}
span.p
        {mso-style-name:p;}
span.o
        {mso-style-name:o;}
span.mi
        {mso-style-name:mi;}
span.mh
        {mso-style-name:mh;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">Hi DragonFlow Team,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">We noticed that you are adding support for automatic responder for neighbor solicitation via OpenFlow Rules here:<o:p></o:p></p>
<p class="MsoNormal"><a href="https://review.openstack.org/#/c/412208/">https://review.openstack.org/#/c/412208/</a><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Can you please let us know with latest OVS release are you using to test this feature?<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">We are pursuing Automatic NS Responder in OpenDaylight Controller implementation, and we noticed that there are no NXM extensions to manage the ‘R’ bit and ’S’ bit correctly.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">From the RFC: <a href="https://tools.ietf.org/html/rfc4861">
https://tools.ietf.org/html/rfc4861</a><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<pre><span style="color:black">      R              Router flag.  When set, the R-bit indicates that<o:p></o:p></span></pre>
<pre><span style="color:black">                     the sender is a router.  The R-bit is used by<o:p></o:p></span></pre>
<pre><span style="color:black">                     Neighbor Unreachability Detection to detect a<o:p></o:p></span></pre>
<pre><span style="color:black">                     router that changes to a host.<o:p></o:p></span></pre>
<pre><span style="color:black"><o:p> </o:p></span></pre>
<pre><span style="color:black">      S              Solicited flag.  When set, the S-bit indicates that<o:p></o:p></span></pre>
<pre><span style="color:black">                     the advertisement was sent in response to a<o:p></o:p></span></pre>
<pre><span style="color:black">                     Neighbor Solicitation from the Destination address.<o:p></o:p></span></pre>
<pre><span style="color:black">                     The S-bit is used as a reachability confirmation<o:p></o:p></span></pre>
<pre><span style="color:black">                     for Neighbor Unreachability Detection.  It MUST NOT<o:p></o:p></span></pre>
<pre><span style="color:black">                     be set in multicast advertisements or in<o:p></o:p></span></pre>
<p class="MsoNormal"><span style="color:black">                     unsolicited unicast advertisements.<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">We noticed that this dragonflow rule is being programmed for automatic response generation for NS:<o:p></o:p></p>
<div style="mso-element:para-border-div;border:solid #CCCCCC 1.0pt;padding:15.0pt 23.0pt 15.0pt 23.0pt;background:#333333">
<p class="MsoNormal" style="margin-bottom:7.5pt;background:#333333;word-break:break-all;border:none;padding:0in">
<span style="font-size:10.0pt;font-family:Consolas;color:#D0D0D0">icmp6,ipv6_dst=</span><span style="font-size:10.0pt;font-family:Consolas;color:#3677A9">1</span><span style="font-size:10.0pt;font-family:Consolas;color:#D0D0D0">::</span><span style="font-size:10.0pt;font-family:Consolas;color:#3677A9">1</span><span style="font-size:10.0pt;font-family:Consolas;color:#D0D0D0">,icmp_type=</span><span style="font-size:10.0pt;font-family:Consolas;color:#3677A9">135</span><span style="font-size:10.0pt;font-family:Consolas;color:white">
</span><span style="font-size:10.0pt;font-family:Consolas;color:#D0D0D0">actions=load:</span><span style="font-size:10.0pt;font-family:Consolas;color:#3677A9">0x88</span><span style="font-size:10.0pt;font-family:Consolas;color:#D0D0D0">->NXM_NX_ICMPV6_TYPE[],move:NXM_NX_IPV6_SRC[]->NXM_NX_IPV6_DST[],mod_dl_src:</span><span style="font-size:10.0pt;font-family:Consolas;color:#3677A9">00</span><span style="font-size:10.0pt;font-family:Consolas;color:#D0D0D0">:</span><span style="font-size:10.0pt;font-family:Consolas;color:#3677A9">11</span><span style="font-size:10.0pt;font-family:Consolas;color:#D0D0D0">:</span><span style="font-size:10.0pt;font-family:Consolas;color:#3677A9">22</span><span style="font-size:10.0pt;font-family:Consolas;color:#D0D0D0">:</span><span style="font-size:10.0pt;font-family:Consolas;color:#3677A9">33</span><span style="font-size:10.0pt;font-family:Consolas;color:#D0D0D0">:</span><span style="font-size:10.0pt;font-family:Consolas;color:#3677A9">44</span><span style="font-size:10.0pt;font-family:Consolas;color:#D0D0D0">:</span><span style="font-size:10.0pt;font-family:Consolas;color:#3677A9">55</span><span style="font-size:10.0pt;font-family:Consolas;color:#D0D0D0">,load:</span><span style="font-size:10.0pt;font-family:Consolas;color:#3677A9">0</span><span style="font-size:10.0pt;font-family:Consolas;color:#D0D0D0">->NXM_NX_ND_SLL[],IN_PORT</span><span style="font-size:10.0pt;font-family:Consolas;color:white"><o:p></o:p></span></p>
</div>
<p class="MsoNormal">above line from spec <a href="https://docs.openstack.org/dragonflow/latest/specs/ipv6.html">
https://docs.openstack.org/dragonflow/latest/specs/ipv6.html</a><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">However, from the flow rule by dragonflow for automatic response above, we couldn’t notice that R and S bits of the NS Response is being managed.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Can you please clarify if you don’t intend to use ‘R’ and ‘S’ bits at all in dragonflow implementation?  
<o:p></o:p></p>
<p class="MsoNormal">Or you intend to use them but you weren’t able to get NXM extensions for the same with OVS and so wanted to start ahead without managing those bits (as per RFC)?<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Thanks in advance for your help.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">--<o:p></o:p></p>
<p class="MsoNormal">Thanks,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Vivek<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>