Jump to: navigation, search

Difference between revisions of "Neutron"

(Havana Release and ML2 Plugin Update)
(OpenStack Networking ("Neutron"))
Line 37: Line 37:
  
 
* Give cloud tenants an API to build rich networking topologies, and configure advanced network policies in the cloud.   
 
* 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
+
** Example: create multi-tier web application topology
 
* Enable innovation plugins (open and closed source) that introduce advanced network capabilities
 
* 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]].  
 
** 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.   
 
* 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.
 
** Examples:  LB-aaS, VPN-aaS, firewall-aaS, IDS-aaS, data-center-interconnect-aaS.
 +
* Horizon GUI support for:
 +
** Neutron L2 and L3 network and subnet creation/deletion
 +
** Booting VMs on specific Neutron networks. 
 +
* API Extensibility Framework, including extensions for:
 +
** "provider network", which maps Neutron L2 networks to a specific VLAN in the physical data center
  
 
== Using Neutron ==
 
== Using Neutron ==
Line 64: Line 69:
 
* [http://www.osrg.net/ryu/using_with_openstack.html  Ryu OpenFlow Controller] Plugin
 
* [http://www.osrg.net/ryu/using_with_openstack.html  Ryu OpenFlow Controller] Plugin
 
* [[Neutron NEC OpenFlow Plugin|NEC OpenFlow]] Plugin  
 
* [[Neutron NEC OpenFlow Plugin|NEC OpenFlow]] Plugin  
 
The following plugins are coming in Grizzly release as the main Neutron distribution:
 
 
 
* [http://docs.projectfloodlight.org/display/floodlightcontroller/Quantum+REST+Proxy+Plugin  Big Switch Controller Plugin]
 
* [http://docs.projectfloodlight.org/display/floodlightcontroller/Quantum+REST+Proxy+Plugin  Big Switch Controller Plugin]
 
* [http://www.cloudbase.it/quantum-hyper-v-plugin/  Cloudbase Hyper-V] Plugin
 
* [http://www.cloudbase.it/quantum-hyper-v-plugin/  Cloudbase Hyper-V] Plugin
Line 100: Line 102:
 
* NCS Driver
 
* NCS Driver
  
== Current Project Status ==
 
 
The 2012.2 "Folsom" release includes:
 
 
* v2.0 of the Neutron 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 Neutron 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:
 
** Neutron network and subnet creation/deletion
 
** Booting VMs on specific Neutron networks. 
 
* Several plugins:
 
** [http://www.openvswitch.org Open vSwitch] Plugin
 
** [http://wiki.openstack.org/cisco-quantum  Cisco UCS/Nexus]  Plugin
 
** [http://wiki.openstack.org/Quantum-Linux-Bridge-Plugin  Linux Bridge]  Plugin
 
** [http://www.nicira.com  Nicira Network Virtualization Platform (NVP)]  Plugin
 
** [http://www.osrg.net/ryu/using_with_openstack.html  Ryu OpenFlow Controller]  Plugin
 
** (NEW) [http://wiki.openstack.org/Quantum-NEC-OpenFlow-Plugin  NEC OpenFlow]  Plugin
 
  
 
== Participate ==
 
== Participate ==

Revision as of 17:12, 9 October 2013

OpenStack Networking ("Neutron")

Administrator Guide
Neutron CLI Guide
API Developer Doc (v2)
Source code
Bug tracker
Blueprints

Related projects

What is Neutron?

Neutron 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, Neutron 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 Neutron).

If you're a networking geek and like to hack on OpenStack, please join!

More Info:

Why Neutron?

  • 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.
  • Horizon GUI support for:
    • Neutron L2 and L3 network and subnet creation/deletion
    • Booting VMs on specific Neutron networks.
  • API Extensibility Framework, including extensions for:
    • "provider network", which maps Neutron L2 networks to a specific VLAN in the physical data center

Using Neutron

Follow the instructions in the Neutron Administrator Guide to use Neutron with OpenStack Nova.

Forget documentation, I just want to get the code!: Neutron Downloads

Detailed information for programming against v2.0 of the Neutron web services API is available in the Neutron API Guide

If you are looking for information on using Neutron with devstack, please see: NeutronDevstack .

Neutron 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 Neutron release, or separately.

The set of plugins included in the main Neutron distribution and supported by the Neutron community include:

Additional plugins are available from other sources:

If you have your own plugin, feel free to add it to this list.

Havana Release and ML2 Plugin Update

Starting with Havana release, openvswitch and linuxbrdige plugins are deprecated. Modular Layer 2 (ML2) plugin replaces these plugins. L2 agents work with ML2 plugin and continue to work with the deprecated monolithic plugins.

ML2 plugin architecture facilitates the type drivers to support multiple networking technologies, and mechanism drivers to facilitate the access to the networking configuration in a transactional model. The details of these drivers is described here. Long term goal is to transition all vendor specific plugins to the type and mechanism drivers.

Following Type Drivers are supported:

  • Flat
  • Local
  • VLAN
  • GRE
  • VxLan


Following Vendor specific Mechanism Drivers are supported:


Participate

To get code, ask questions, view blueprints, etc, see: Neutron Launchpad Page

See NeutronDevelopment for some (rough) guides on how to contribute code to Neutron, 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

Check out NeutronStarterBugs for ideas on easy bugs or starter projects you might tackle. Or just start playing with NeutronDevstack and come up with your own ideas!

Related pages

Neutron/*

Network/*