OpenStack Networking ("Quantum")
|API Developer Doc (v2)|
What is Quantum?
Quantum is an OpenStack project to provide "networking as a service" between interface devices (e.g., vNICs) managed by other Openstack services (e.g., nova).
Starting in the Folsom release, Quantum is a core and supported part of the OpenStack platform (for Essex, we were an "incubated" project, which means use is suggested only for those who really know what they're doing with Quantum).
If you're a networking geek and like to hack on OpenStack, please join!
- Overview of Quantum (slides) (3/12)
- Quantum Project Overview + Update from Grizzly Summit (video) (10/12)
- Video Quantum Overview (3/12)
- Slides on Technical Architecture of Quantum (9/12)
- Give cloud tenants an API to build rich networking topologies, and configure advanced network policies in the cloud.
- Example: create multi-tier web application topology
- Enable innovation plugins (open and closed source) that introduce advanced network capabilities
- Example: use L2-in-L3 tunneling to avoid VLAN limits, provide end-to-end QoS guarantees, used monitoring protocols like NetFlow.
- Let anyone build advanced network services (open and closed source) that plug into Openstack tenant networks.
- Examples: LB-aaS, VPN-aaS, firewall-aaS, IDS-aaS, data-center-interconnect-aaS.
Following the instructions in the Quantum Administrator Guide to use Quantum with OpenStack Nova.
Forget documentation, I just want to get the code!: Quantum Downloads
Detailed information for programming against v2.0 of the Quantum web services API is available in the Quantum API Guide
If you are looking for information on using Quantum with devstack, please see: QuantumDevstack .
Quantum lets you use a set of different backends called "plugins" that work with a growing variety of networking technologies. These plugins may be distributed as part of the main Quantum release, or separately.
The set of plugins included in the main Quantum distribution and supported by the Quantum community include:
- Open vSwitch Plugin
- Cisco UCS/Nexus Plugin
- Linux Bridge Plugin
- Nicira Network Virtualization Platform (NVP) Plugin
- Ryu OpenFlow Controller Plugin
- NEC OpenFlow Plugin
- Big Switch OpenFlow Controller Plugin
- Cloudbase Hyper-V Plugin
Additional plugins are available from other sources:
- Floodlight OpenFlow Controller Plugin
- MidoNet Plugin
- Extreme Networks Plugin
- (NEW) Ruijie Networks Plugin
- Brocade Quantum Plugin Brocade Quantum Plugin
If you have your own plugin, feel free to add it to this list.
Current Project Status
The 2012.2 "Folsom" release includes:
- v2.0 of the Quantum API, including support for L2 networking and IP Address Management (IPAM)
- Integration with Keystone for API authentication
- API Extensibility Framework, including extensions for:
- "provider network", which maps Quantum L2 networks to a specific VLAN in the physical data center
- "L3 routers", which supports a basic L3 router construct to route between L2 networks, and provide a gateway to external networks with support for SNAT and floating IPs.
- Updated API Client Library and CLI, including support for filtering.
- Horizon GUI support for:
- Quantum network and subnet creation/deletion
- Booting VMs on specific Quantum networks.
- Several plugins:
To get code, ask questions, view blueprints, etc, see: Quantum Launchpad Page
See QuantumDevelopment for some (rough) guides on how to contribute code to Quantum, including how to add your own plugin.
If you would like to participate, please send mail to the main openstack-dev list: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
You can also attend our regular IRC meetings, which start one hour after the main openstack meeting, on the same #openstack-meeting channel: http://wiki.openstack.org/Network/Meetings