<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Mon, Nov 2, 2015 at 9:56 PM, Cathy Zhang <span dir="ltr"><<a href="mailto:Cathy.H.Zhang@huawei.com" target="_blank">Cathy.H.Zhang@huawei.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div lang="EN-US" link="blue" vlink="purple">
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<div style="border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> Giuseppe (Pino) de Candia [mailto:<a href="mailto:gdecandia@midokura.com" target="_blank">gdecandia@midokura.com</a>]
<br>
<b>Sent:</b> Saturday, October 31, 2015 10:08 PM<br>
<b>To:</b> Cathy Zhang<br>
<b>Cc:</b> Henry Fourie; OpenStack Development Mailing List (not for usage questions); Irena Berezovsky<br>
<b>Subject:</b> RE: [openstack-dev] [neutron][networking-sfc] API clarification questions<u></u><u></u></span></p>
</div><span class="">
<p>><br>
> Cathy> No restriction as long as the ports are routable. Originally we think we need to specify L2 and L3 service type. But later we found out it is not needed if we program the switch to set the next hop destination to the service function’s MAC. This way
 no matter whether it is L2 or L3, it always works.<br>
><u></u><u></u></p>
<p>Hi Cathy, my understanding is that:<br>
-for an L2 service, don't modify the packet (ignoring possible encapsulation to signal policy )<br>
-for an L3 service, set the dst MAC in the packet equal to the the service port's MAC<u></u><u></u></p>
<p>How can the SDN implementation know which kind of service it's dealing with to decide whether to modify the MAC?<u></u><u></u></p>
</span><p><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Cathy> You can always modify the MAC which will work for both L2 and L3 service.</span></p></div></div></blockquote><div>I don't think that works. For L3 services, the packet's destination MAC must be set equal to the service port's MAC. That means that all the original destination MACs get re-written to a single MAC.</div><div><br></div><div>In my L2 use-case, the VLAN is being used for signaling, and the VNF instance is shared across multiple tenants with overlapping IPs. Therefore, I use the MAC to identify the service chain instance and get a packet back on its original network path.</div><div><br></div><div>So, I won't modify the packet at all. Can you suggest another solution? And why so much resistance to adding a flag when we can actually show use-cases? Note that this is already actually running code today, using MidoNet's service chaining API.</div><div><br></div><div>thanks,</div><div>Pino</div><div> <br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="purple"><div><p><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">
<u></u><u></u></span></p>
<p><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Thanks,<u></u><u></u></span></p>
<p><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Cathy</span><u></u><u></u></p>
</div>
</div>

</blockquote></div><br></div></div>