<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Hi,<br>
    In order to move forward with the blueprint <a
href="https://blueprints.launchpad.net/quantum/+spec/vif-plugging-improvements"
      title="Quantum VIF Plugging Improvements">vif-plugging-improvements</a>
    (<a class="moz-txt-link-freetext" href="https://blueprints.launchpad.net/quantum/+spec/vif-plugging-improvements">https://blueprints.launchpad.net/quantum/+spec/vif-plugging-improvements</a>).
    A description of the problem can be seen at
<a class="moz-txt-link-freetext" href="https://docs.google.com/presentation/d/1vD2bc2WyqQzOLODjFrfLgg661WU0nteY7NEaVS4pv5g/edit">https://docs.google.com/presentation/d/1vD2bc2WyqQzOLODjFrfLgg661WU0nteY7NEaVS4pv5g/edit</a>.<br>
    <br>
    A precursor to the blueprint is the following patches (which improve
    the way in which libvirt manages the linux bridge plugin - improved
    security and performance) [it would be nice if they could both land
    at the same time :)]:<br>
        Nova - <a class="moz-txt-link-freetext" href="https://review.openstack.org/#/c/14830/">https://review.openstack.org/#/c/14830/</a><br>
        Quantum - <a class="moz-txt-link-freetext" href="https://review.openstack.org/#/c/14961/">https://review.openstack.org/#/c/14961/</a><br>
    <br>
    The goals of the blueprint are:<br>
        - remove configuration variables from the nova.conf for the
    specific quantum plugin and have nova learn the networking
    "implementation" from quantum<br>
        - simplify the hypervisor drivers (when using quantum)<br>
        - more robust interface for the VIF plugins<br>
    <br>
    I would first like to tackle the first two items. Prior to doing
    this I would like to get input regarding the interfaces. The goal
    here is to have minimal changes in Nova and to have Quantum provide
    the necessary support and infrastructure. <br>
    <br>
    The third item has been very nicely described by Ian (aka ijw) -
    <a class="moz-txt-link-freetext" href="http://wiki.openstack.org/VifPlugging">http://wiki.openstack.org/VifPlugging</a>. This can be addressed once we
    have the building blocks and ready.<br>
    <br>
    I would like to get some input regarding the <b>Quantum API</b>. In
    order for Quantum to be able provide the necessary network
    "implementation" the proposal will be to have the following API:<br>
    GET /network-implementation-details/<net-id>. The plugin will
    be responsible for filling in the relevant details. These details
    will be used by Nova compute to create/manage/configure the vNic
    (depending on the underlying technology). This will initially be
    done as part of a generic Quantum VIF plugin. In the future this can
    have extensions to indicate if a host is on a specific network (in
    the event that Quantum can support more than one plugin or
    networking technology for a logical network)<br>
    <br>
    Open issues:<br>
    - permissions - can any user access this information or should it be
    an admin user? Will Nova need some privileged access to get this
    information?<br>
    - will this need to be extended to ports? For example if the
    hypervisor enables the guest to access a paravirtualized network
    adapter. If so then the API<br>
    GET /port-implementation-details/<port-id> can be added. Is
    this relevant?<br>
    <br>
    Thanks<br>
    Gary<br>
  </body>
</html>