<br><br><div class="gmail_quote">On Sat, May 21, 2011 at 11:51 AM, Ram Durairaj (radurair) <span dir="ltr"><<a href="mailto:radurair@cisco.com">radurair@cisco.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;color:#1F497D">Hi Dan:</span></p><p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p><p class="MsoNormal">

<span style="font-size:11.0pt;color:#1F497D">As far as I remember, In Design summit, we’ve agreed to expose “extra” attributes for Virtual networks and any other vendor specific features using “API-Extensions” and possibly thru existing Openstack extension mechanisms. Don’t recall that we’ve concluded on Jorge’s proposal.</span></p>

</div></div></blockquote><div> </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 class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>

<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p><p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">Also I think it’s better to follow a consistent model across the Openstack , provided the current Jorge’s proposal is generic enough and flexible enough for what we are trying to do in our NetStack side. I think we should take a look at Jorge’s and Ying model and as a team we decide.</span></p>

</div></div></blockquote><div><br></div><div><meta charset="utf-8">Hi Ram,  </div><div><br></div><div>Apologies if I have misinterpreted the consensus here, but I seem to remember widespread verbal agreement during the summit on basing the API and its extensions off of the standard OpenStack mechanisms.  Also, the main Quantum Diablo Etherpad: <a href="http://etherpad.openstack.org/6LJFVsQAL7">http://etherpad.openstack.org/6LJFVsQAL7</a>  (specific text pasted below) seems to show you and Salvatore agreeing to Erik's comment that we should use the standard OpenStack API and it includes a link to Jorge's doc on OpenStack Extensions.   </div>

<div><br></div><div>Jorge's proposal for extensions includes things like extension querying/discovery, a mechanism for preventing conflicts between extension fields from different vendors, etc. that I think are pretty fundamental to the what we'll need to make Quantum successful.  As a result, I am personally still strongly in favor of using the standard OpenStack extension mechanism as the base of our API mechanism for Quantum.   </div>

<meta charset="utf-8"><div><br></div><meta charset="utf-8"><div>I think Jorge's work is still in progress (Jorge?) so there should be an opportunity to provide input on that front as well.  If there are types of extensions that you are thinking about that won't work in the standard OpenStack model or if you simply think there is a better way to do it, that is something we should try to flush out ASAP.   </div>

<div><br></div><div>Dan</div><div><br></div><div><br></div><div>=======  Start From Etherpad ======== </div><div><br></div><meta charset="utf-8"><div id="magicdomid123" class="" style="padding-right: 1px; font-family: Arial, sans-serif; font-size: 13px; line-height: 17px; ">

<span class="b" style="cursor: auto; padding-top: 1px; padding-bottom: 1px; "><b>4. For EACH network service (could be one or more depending on question #3), should there be a single, canonical REST API or should there be multiple APIs?  By canonical, we mean the base API is the same regardless of the driver/plugin that is implementing it.</b></span><span class="" style="cursor: auto; padding-top: 1px; padding-bottom: 1px; "> </span><span class="b" style="cursor: auto; padding-top: 1px; padding-bottom: 1px; "><b> How should API extensibility be handled? </b></span></div>

<div id="magicdomid124" class="" style="padding-right: 1px; font-family: Arial, sans-serif; font-size: 13px; line-height: 17px; "><br></div><div id="magicdomid125" class="" style="padding-right: 1px; font-family: Arial, sans-serif; font-size: 13px; line-height: 17px; ">

<span class="" style="cursor: auto; padding-top: 1px; padding-bottom: 1px; ">POSSIBLE ANSWERS:</span></div><div id="magicdomid126" class="" style="padding-right: 1px; font-family: Arial, sans-serif; font-size: 13px; line-height: 17px; ">

<br></div><div id="magicdomid127" class="" style="padding-right: 1px; font-family: Arial, sans-serif; font-size: 13px; line-height: 17px; "><span class="" style="cursor: auto; padding-top: 1px; padding-bottom: 1px; ">EC - [8] We should strive for a single approach across all Open Stack services.  To that end, we should follow the nova model and have a single "core" REST API that is applicable across all drivers/service engines.  Where particular operations, headers, attributes, etc. are niche or vendor specific, API extensions should be implemented that allow for those capabilities to be programatically exposed but not required to be supported by all drivers/service engines.  If you are not familiar with the concept of OpenStack API extensions, there is a presentation here - </span><span class=" url" style="cursor: auto; padding-top: 1px; padding-bottom: 1px; "><a href="http://wiki.openstack.org/JorgeWilliams?action=AttachFile&do=get&target=Extensions.pdf" style="cursor: pointer !important; ">http://wiki.openstack.org/JorgeWilliams?action=AttachFile&do=get&target=Extensions.pdf</a></span><span class="" style="cursor: auto; padding-top: 1px; padding-bottom: 1px; ">.  Jorge is also doing a talk about this on Tue, 2PM at the Diablo summit.</span></div>

<div id="magicdomid128" class="" style="padding-right: 1px; font-family: Arial, sans-serif; font-size: 13px; line-height: 17px; "><br></div><div id="magicdomid129" class="" style="padding-right: 1px; font-family: Arial, sans-serif; font-size: 13px; line-height: 17px; ">

<span class="" style="cursor: auto; padding-top: 1px; padding-bottom: 1px; ">RamD[8] Completely agree. APIs should be OpenStack API model</span></div><div id="magicdomid130" class="" style="padding-right: 1px; font-family: Arial, sans-serif; font-size: 13px; line-height: 17px; ">

<br></div><div><span class="Apple-style-span" style="font-family: Arial, sans-serif; font-size: 13px; line-height: 17px; ">SO[8]: Agree with Erik and Ram.</span></div><div><br></div><div><span class="Apple-style-span" style="font-family: Arial, sans-serif; font-size: 13px; line-height: 17px; "></span> =======  End From Etherpad ======== </div>

<div><br></div><div><br></div><meta charset="utf-8"><div><br></div><div> </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 class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p><p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">As I informed our Netstack team during our Design Summit, absolutely. we can take up the API extensions and Sure, Ying can lead and help develop the workstream and the related code contributions as part of overall Quantum. I’ll let Ying add more here .</span></p>

<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"><br>Thanks</span></p><p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"><br>Ram</span></p><p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </span></p>

<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"> </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">From:</span></b><span style="font-size:10.0pt"> openstack-bounces+radurair=<a href="http://cisco.com" target="_blank">cisco.com</a>@<a href="http://lists.launchpad.net" target="_blank">lists.launchpad.net</a> [mailto:<a href="mailto:openstack-bounces%2Bradurair" target="_blank">openstack-bounces+radurair</a>=<a href="http://cisco.com" target="_blank">cisco.com</a>@<a href="http://lists.launchpad.net" target="_blank">lists.launchpad.net</a>] <b>On Behalf Of </b>Dan Wendlandt<br>

<b>Sent:</b> Saturday, May 21, 2011 11:05 AM<br><b>To:</b> Ying Liu (yinliu2)</span></p><div class="im"><br><b>Cc:</b> <a href="mailto:openstack@lists.launchpad.net" target="_blank">openstack@lists.launchpad.net</a><br></div>

<div class="im"><b>Subject:</b> Re: [Openstack] [NetStack] Quantum Service API extension proposal</div><p></p></div><p class="MsoNormal"> </p><p class="MsoNormal">Hi Ying,</p><div><div></div><div class="h5"><div><p class="MsoNormal">

 </p></div><div><p class="MsoNormal">Thanks for sending this out.  I think many of the capabilities you are looking to introduce (ability to configure ACLs, QoS, packet statistics) are definitely things we will want Quantum to expose as API extensions (and possibly in the future, as part of the base API if they are sufficiently general). </p>

</div><div><p class="MsoNormal"> </p></div><div><p class="MsoNormal">During the summit we had agreed that extensions to Quantum would follow the "standard" openstack extension mechanisms proposed by Jorge Williams, see: <a href="http://www.slideshare.net/RackerWilliams/openstack-extensions" target="_blank">http://www.slideshare.net/RackerWilliams/openstack-extensions</a></p>

</div><div><p class="MsoNormal"> </p></div><div><p class="MsoNormal">I've been trying to find someone to take a lead on building the API extension framework within quantum to provide plugins with the ability to register such extensions in a way compatible with Jorge's proposal, so perhaps you would like to take the lead on designing and coding that?  The blueprint is at: <a href="https://blueprints.launchpad.net/network-service/+spec/quantum-api-extensions" target="_blank">https://blueprints.launchpad.net/network-service/+spec/quantum-api-extensions</a> .  Out plan from the summit was that all functionality except the base "network connectivity" would initially be exposed as extensions, with the ability for these extensions to be proposed as additions to the base API in the future.  Thanks, </p>

</div><div><p class="MsoNormal"> </p></div><div><p class="MsoNormal"> </p></div><div><p class="MsoNormal">Dan</p></div><div><p class="MsoNormal" style="margin-bottom:12.0pt"> </p><div><p class="MsoNormal">On Sat, May 21, 2011 at 10:09 AM, Ying Liu (yinliu2) <<a href="mailto:yinliu2@cisco.com" target="_blank">yinliu2@cisco.com</a>> wrote:</p>

<div><div><p class="MsoNormal">Hi all,</p><p class="MsoNormal"> </p><p class="MsoNormal">We just posted a proposal for OpenStack Quantum Service API extension on community wiki page at <a href="http://wiki.openstack.org/QuantumAPIExtensions?action=AttachFile&do=view&target=quantum_api_extension.pdf" target="_blank">http://wiki.openstack.org/QuantumAPIExtensions?action=AttachFile&do=view&target=quantum_api_extension.pdf</a></p>

<p class="MsoNormal">or </p><p class="MsoNormal"><a href="http://wiki.openstack.org/QuantumAPIExtensions?action=AttachFile&do=view&target=quantum_api_extension.docx" target="_blank">http://wiki.openstack.org/QuantumAPIExtensions?action=AttachFile&do=view&target=quantum_api_extension.docx</a></p>

<p class="MsoNormal"> </p><p class="MsoNormal">Please review and let us know your comments/suggestions. An etherpad page is created for API extension discussion <a href="http://etherpad.openstack.org/uWXwqQNU4s" target="_blank">http://etherpad.openstack.org/uWXwqQNU4s</a></p>

<p class="MsoNormal"> </p><p class="MsoNormal">Best,</p><p class="MsoNormal">Ying</p></div></div><p class="MsoNormal" style="margin-bottom:12.0pt"><br>_______________________________________________<br>Mailing list: <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>

Post to     : <a href="mailto:openstack@lists.launchpad.net" target="_blank">openstack@lists.launchpad.net</a><br>Unsubscribe : <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>

More help   : <a href="https://help.launchpad.net/ListHelp" target="_blank">https://help.launchpad.net/ListHelp</a></p></div><p class="MsoNormal" style="margin-bottom:12.0pt"><br><br clear="all"><br>-- <br>~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>

Dan Wendlandt <br>Nicira Networks, Inc. <br><a href="http://www.nicira.com" target="_blank">www.nicira.com</a> | <a href="http://www.openvswitch.org" target="_blank">www.openvswitch.org</a><br>Sr. Product Manager <br>cell: <a href="tel:650-906-2650" value="+16509062650" target="_blank">650-906-2650</a><br>

~~~~~~~~~~~~~~~~~~~~~~~~~~~</p></div></div></div></div></div></blockquote></div><br><br clear="all"><br>-- <br>~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>Dan Wendlandt <br>Nicira Networks, Inc. <br><a href="http://www.nicira.com">www.nicira.com</a> | <a href="http://www.openvswitch.org">www.openvswitch.org</a><br>

Sr. Product Manager <br>cell: 650-906-2650<br>~~~~~~~~~~~~~~~~~~~~~~~~~~~<br><br>