General Feature Support¶
Warning
Please note, while this document is still being maintained, this is slowly being updated to re-group and classify features using the definitions described in here: Introduction.
This document covers the maturity and support of the Neutron API and its API extensions. Details about the API can be found at Networking API v2.0.
When considering which capabilities should be marked as mature the following general guiding principles were applied:
Inclusivity - people have shown ability to make effective use of a wide range of network plugins and drivers with broadly varying feature sets. Aiming to keep the requirements as inclusive as possible, avoids second-guessing how a user wants to use their networks.
Bootstrapping - a practical use case test is to consider that starting point for the network deploy is an empty data center with new machines and network connectivity. Then look at what are the minimum features required of the network service, in order to get user instances running and connected over the network.
Reality - there are many networking drivers and plugins compatible with neutron. Each with their own supported feature set.
Summary
Feature | Status | Linux Bridge | Networking MidoNet | Networking ODL | Networking OVN | Open vSwitch |
---|---|---|---|---|---|---|
Networks | required | ✔ |
✔ |
✔ |
✔ |
✔ |
Subnets | required | ✔ |
✔ |
✔ |
✔ |
✔ |
Ports | required | ✔ |
✔ |
✔ |
✔ |
✔ |
Routers | required | ✔ |
✔ |
✔ |
✔ |
✔ |
Security Groups | mature | ✔ |
✔ |
✔ |
✔ |
✔ |
External Networks | mature | ✔ |
✔ |
✔ |
✔ |
✔ |
Distributed Virtual Routers | immature | ✖ |
✔ |
✔ |
✔ |
✔ |
L3 High Availability | immature | ✔ |
✖ |
✔ |
✔ |
✔ |
Quality of Service | mature | ✔ |
✔ |
✔ |
✔ |
✔ |
Border Gateway Protocol | immature | ? |
✔ |
? |
? |
✔ |
DNS | mature | ✔ |
✖ |
✔ |
✔ |
✔ |
Trunk Ports | mature | ✔ |
✖ |
✖ |
✔ |
✔ |
Metering | mature | ✔ |
✖ |
✖ |
? |
✔ |
Routed Provider Networks | immature | ✔ |
✖ |
✖ |
✔ |
✔ |
Details
- Networks
Status: required
API Alias: core
CLI commands:
openstack network *
Notes: The ability to create, modify and delete networks. https://docs.openstack.org/api-ref/network/v2/#networks
Driver Support:
- Open vSwitch:
complete
- Linux Bridge:
complete
- Networking ODL:
complete
- Networking MidoNet:
complete
- Networking OVN:
complete
- Subnets
Status: required
API Alias: core
CLI commands:
openstack subnet *
Notes: The ability to create and manipulate subnets and subnet pools. https://docs.openstack.org/api-ref/network/v2/#subnets
Driver Support:
- Open vSwitch:
complete
- Linux Bridge:
complete
- Networking ODL:
complete
- Networking MidoNet:
complete
- Networking OVN:
complete
- Ports
Status: required
API Alias: core
CLI commands:
openstack port *
Notes: The ability to create and manipulate ports. https://docs.openstack.org/api-ref/network/v2/#ports
Driver Support:
- Open vSwitch:
complete
- Linux Bridge:
complete
- Networking ODL:
complete
- Networking MidoNet:
complete
- Networking OVN:
complete
- Routers
Status: required
API Alias: router
CLI commands:
openstack router *
Notes: The ability to create and manipulate routers. https://docs.openstack.org/api-ref/network/v2/#routers-routers
Driver Support:
- Open vSwitch:
complete
- Linux Bridge:
complete
- Networking ODL:
complete
- Networking MidoNet:
complete
- Networking OVN:
complete
- Security Groups
Status: mature
API Alias: security-group
CLI commands:
openstack security group *
Notes: Security groups are set by default, and can be modified to control ingress & egress traffic. https://docs.openstack.org/api-ref/network/v2/#security-groups-security-groups
Driver Support:
- Open vSwitch:
complete
- Linux Bridge:
complete
- Networking ODL:
complete
- Networking MidoNet:
complete
- Networking OVN:
complete
- External Networks
Status: mature
API Alias: external-net
Notes: The ability to create an external network to provide internet access to and from instances using floating IP addresses and security group rules.
Driver Support:
- Open vSwitch:
complete
- Linux Bridge:
complete
- Networking ODL:
complete
- Networking MidoNet:
complete
- Networking OVN:
complete
- Open vSwitch:
- Distributed Virtual Routers
Status: immature
API Alias: dvr
Notes: The ability to support the distributed virtual routers. https://wiki.openstack.org/wiki/Neutron/DVR
Driver Support:
- Open vSwitch:
complete
- Linux Bridge:
incomplete
- Networking ODL:
partial
- Networking MidoNet:
complete
- Networking OVN:
partial
- Open vSwitch:
- L3 High Availability
Status: immature
API Alias: l3-ha
Notes: The ability to support the High Availability features and extensions. https://wiki.openstack.org/wiki/Neutron/L3_High_Availability_VRRP.
Driver Support:
- Open vSwitch:
complete
- Linux Bridge:
complete
- Networking ODL:
partial
- Networking MidoNet:
incomplete
- Networking OVN:
partial
- Open vSwitch:
- Quality of Service
Status: mature
API Alias: qos
Notes: Support for Neutron Quality of Service policies and API. https://docs.openstack.org/api-ref/network/v2/#qos-policies-qos
Driver Support:
- Open vSwitch:
complete
- Linux Bridge:
partial
- Networking ODL:
partial
- Networking MidoNet:
complete
- Networking OVN:
complete
- Open vSwitch:
- Border Gateway Protocol
Status: immature
Notes: https://docs.openstack.org/api-ref/network/v2/#bgp-mpls-vpn-interconnection
Driver Support:
- Open vSwitch:
complete
- Linux Bridge:
unknown
- Networking ODL:
unknown
- Networking MidoNet:
complete
- Networking OVN:
unknown
- Open vSwitch:
- DNS
Status: mature
API Alias: dns-integration
Notes: The ability to integrate with an external DNS as a Service. https://docs.openstack.org/neutron/latest/admin/config-dns-int.html
Driver Support:
- Open vSwitch:
complete
- Linux Bridge:
complete
- Networking ODL:
complete
- Networking MidoNet:
incomplete
- Networking OVN:
complete
- Open vSwitch:
- Trunk Ports
Status: mature
API Alias: trunk
Notes: Neutron extension to access lots of neutron networks over a single vNIC as tagged/encapsulated traffic. https://docs.openstack.org/api-ref/network/v2/#trunk-networking
Driver Support:
- Open vSwitch:
complete
- Linux Bridge:
complete
- Networking ODL:
incomplete
- Networking MidoNet:
incomplete
- Networking OVN:
complete
- Open vSwitch:
- Metering
Status: mature
API Alias: metering
Notes: Meter traffic at the L3 router levels. https://docs.openstack.org/api-ref/network/v2/#metering-labels-and-rules-metering-labels-metering-label-rules
Driver Support:
- Open vSwitch:
complete
- Linux Bridge:
complete
- Networking ODL:
incomplete
- Networking MidoNet:
incomplete
- Networking OVN:
unknown
- Open vSwitch:
- Routed Provider Networks
Status: immature
Notes: The ability to present a multi-segment layer-3 network as a single entity. https://docs.openstack.org/neutron/latest/admin/config-routed-networks.html
Driver Support:
- Open vSwitch:
partial
- Linux Bridge:
partial
- Networking ODL:
incomplete
- Networking MidoNet:
incomplete
- Networking OVN:
partial
- Open vSwitch:
Notes:
- This document is a continuous work in progress