User Tools

Site Tools


ipv6_opnfv_project:juno_analysis

Top Down Use Case and Gap Analysis with OpenStack Juno

Here are some top down use cases of VIM-agnostic IPv6 functionality, including infrastructure layer and VNF (VM) layer, and its gap analysis with Juno Neutron:

Use Case / Requirement Supported in Juno Neutron? Notes To-Do
All topologies work in a multi-tenant environment Yes The tenant's subnets are based on Neutron, with ML2 plugin and Single Flat Network topology, dual-stacked. DHCPv6 BPIPv6 SLAAC BP
IPv6 VM to VM only Yes Configuration and IPv6 address assignment
IPv6 external L2 VLAN directly attached to a VM Yes Via Neutron and external router / border gateway. UPStream Provider Network BP Verify
IPv6 subnet routed via L3 agent to an external IPv6 network - (1) Both VLAN and overlay (e.g. GRE, VXLAN) subnet attached to VMs; (2) Must be able to support multiple L3 agents for a given external network to support scaling (neutron scheduler to assign vRouters to the L3 agents) (1) Roadmap (2) Yes The IPv6 support in Neutron L3 router isn't ready yet. Watch Kilo BPs. IPv6 Router BPMultiple IPv6 Prefixes. (2) is supported for scalability. Patches for HA are under review.
Ability for a VM to support a mix of multiple IPv4 and IPv6 networks, i.e. across the mix of all the above topologies including multiples of the same type Yes and Roadmap Dual-stack is supported via Single Flat Network topology. Refer to Kilo Blueprints Multiple IPv6 Prefixes for support of multiple IPv4 and IPv6 networks Verify
Support DHCPv6 stateful - (1) including the ability for a user to create a port on an IPv6 subnet and assign a specific IPv6 address to the port and have it taken out of the DHCP address pool; (2) Support the ability to assign multiple IPv6 address to an interface (1) Yes (2) Work-in-Progress Work-in-progress and expected in Juno release. All the IPv6 configuration modes such as SLAAC, DHCPv6 Stateless and DHCPv6 Stateful are expected in Juno release. For (1), see Patch 1 and Patch 2. This is verified by Sridhar. For (2), see BP in Kilo.
Should not prevent the ability to support non-DHCP statically assigned IPv6 addresses in the same fashion as is supported for IPv4 No The following patch disables this operation: https://review.openstack.org/#/c/129144/
Support for private IPv6 to external IPv6 Floating IP Rejected See https://review.openstack.org/#/c/139731/ for discussion
Provide IPv6/IPv4 feature parity in support for pass-through capabilities (e.g. SR-IOV support in OpenStack) as these features are provided in OpenStack Roadmap Blueprint “ Managing InfiniBand SR-IOV” is pending approval, “ Traffic Rate Support for SR-IOV NIC” is being drafted, and “ HA SR-IOV Ports” has not started yet.
Additional IPv6 extensions, for example: IPSEC, IPv6 Anycast, Multicast No It doesn’t appear to be considered yet
Access to the meta-data server to obtain user data and ssh keys etc. (may need more of a discussion) No Metadata (and GRE / VXLAN subnet) still requires IPv4. An alternate mechanism is to use config-drive. email-thread
Full support for IPv6 tcp/udp/icmp IPv6 security groups (same as we see for IPv4) Yes (1) BlueprintSupport ICMP type filter by security group” has not started yet. (2) BlueprintSecurity group rule for IPv6 RA guard and IPv6 Snooping” has not started. Whiteboard responses to BP (1) indicates that it is already supported. For BP(2), the author was looking at the following feature - IPv6 First-Hop Security
During network/subnet/router create, there should be an option to allow user to specify the type of address management they would like. (1) this includes all options including those low priority if implemented (e.g. toggle on/off router and address prefix advertisements); (2) It must be supported via Neutron API (restful and CLI) as well as via Horizon Yes and Roadmap The ability to create various types of IPv6 subnets (i.e., SLAAC / DHCPv6 Stateless / Stateful) is supported both using Neutron router and external router. Refer to various combinations and how to configure Neutron subnets. Refer to Blueprints IPv6 Prefix Delegation and Multiple IPv6 Prefixes for support of multiple IPv4 and IPv6 networks
Ability to specify Floating IPs via Neutron API (restful and CLI) as well as via Horizon, including combination of IPv6/IPv4 and IPv4/IPv6 Floating IPs if implemented No IPv6 Floating IPs will not be supported in Kilo. Ref BP. Refer to previous item of floating IPv6 functionality being rejected.
Ability to control and manage all IPv6 security group capabilities via Neutron/Nova API (restful and CLI) as well as via Horizon Yes Refer to previous item of IPv6 security group
ipv6_opnfv_project/juno_analysis.txt · Last modified: 2015/06/09 18:47 by Bin Hu