Quantum Plugin Support for 802.1Qbh

Registered by Sumit Naiksatam

Implementation within the Quantum plugin to provide support for the proposed 802.1Qbh standard (http://www.ieee802.org/1/pages/802.1bh.html). The standard is currently supported in hardware on Cisco’s Unified Computing Systems deployed with Virtual Interface Cards (VICs, or also known as Palo Adapters). This blueprint will explore the support in the context of this hardware and the Unified Computing Systems Manager (UCSM) which manages the UCS and serves as the configuration point for 802.1Qbh related port-profile constructs.

Blueprint information

Status:
Complete
Approver:
None
Priority:
High
Drafter:
Sumit Naiksatam
Direction:
Approved
Assignee:
Sumit Naiksatam
Definition:
Approved
Series goal:
None
Implementation:
Implemented
Milestone target:
milestone icon diablo-4
Started by
Sumit Naiksatam
Completed by
dan wendlandt

Sprints

Whiteboard

Objective
Implementation within the Quantum plugin to provide support for the proposed 802.1Qbh standard (http://www.ieee802.org/1/pages/802.1bh.html). The standard is currently supported in hardware on Cisco’s Unified Computing Systems deployed with Virtual Interface Cards (VICs, or also known as Palo Adapters). This blueprint will explore the support in the context of this hardware and the Unified Computing Systems Manager (UCSM) which manages the UCS and serves as the configuration point for 802.1Qbh related port-profile constructs.

Support for 802.1Qbh has already been introduced in libvirt, and is available on RHEL distribution versions starting 6.1 on the KVM hypervisor.
Design
For Quantum to support 802.1Qbh, it requires performing the following steps from within the plugin:
• createNetwork: creates a port profile with default VLAN association (in UCSM)
• createPort: reserves a dynamic nic (if available) or signals an error (dynamic nic has to be reserved on one of the blades in the cluster, so a candidate blade also has to be indentified)
• VM comes up on that dynamic nic, and is on the default VLAN (limited connectivity)
• Plugin_interface: associates the tenant-specific VLAN with the port profile created earlier such that the VM is now on the tenant network

Support will also have to be incorporated on the Nova/OpenStack side. The following is an example of the 802.1Qbh libvirt interface configuration:

    <interface type='direct'>
      <mac address=${mac_address}/>
      <source dev=${device_name} mode='private'/>
      <virtualport type='802.1Qbh'>
        <parameters profileid=${profile_name}/>
      </virtualport>
      <model type='virtio'/>
    </interface>

An 802.1Qbh-specific VIF driver will be implemented and introduced in Nova which will populate the above interface configuration for a VM (follows the blueprint: http://wiki.openstack.org/network-refactoring#VIF_driver)

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.