Prefix Delegation API Extension
This is an API extension to Neutron, to create IPv6 prefix delegation functionality in the Neutron API.
API Resource Design
One possible implementation is to create a new API Extension to Neutron, that creates a new resource:
The PrefixDelegation resource would contain the following attributes:
|Parent Port UUID|
|Child Subnet UUID|
A PrefixDelegation would be linked to a large Subnet (say a /56) by having a port created on the parent subnet (that could serve as the gateway for the child subnet, and is a /128 address) which would be stored in the Parent Port UUID attribute - and the prefix that was delegated would be created as another Subnet, that the PrefixDelegation resource would store in the Child Subnet UUID attribute.
An alternative to the Parent Port UUID - could be to store the UUID of a Neutron Router that is created when the prefix is delegated, and ensure that the Neutron Router has a port created on the subnet that is a /128 address.