https://blueprints.launchpad.net/fuel/+spec/neutron-l2-population
This blueprint describes Neutron L2 population plugin which can improve performance of tunneling protocols. The L2 Population driver enables broadcast, multicast, and unicast traffic to scale out on large overlay networks.
Destination MAC addresses aren’t initially known by the agents, so multicast or broadcast traffic is flooded out tunnels to all other compute nodes. Also currently if a node isn’t hosting any ports in a specific network it will receive broadcast traffic designated to that network. This is not an effective approach from network perfomance point of view, because Neutron service has full knowledge of the topology and can propagate the forwarding information among agents using a common RPC API.
Neutron supports L2 population since Havana. When using the ML2 plugin with tunnels, the l2pop mechanism driver uses RPC notifications to send updates in topology (ports) to all layer 2 agents. So agents can use this information instead of getting it via broadcast traffic.
An additional option will be added to astute.yaml and then passed to Puppet manifests to enable this feature. If testing results will not show any regression when this feature is enabled, it’s also proposed to enable it in Fuel by default.
None
None
None
Turning on L2 population during upgrade from previous releases can destroy all existing tunnels.
None
With L2pop mechanism driver enabled extra notifications are generated for every port create/update/delete.
None
None
None
L2 population option will be added to Fuel Web UI This option must be enabled if Neutron DVR is enabled
l2_population option should be enabled in neutron module when tunnelling is used (GRE/VXLAN) and L2 population feature is enabled in astute.yaml
l2population will be added to mechanism_drivers and passed to neutron module when L2 population feature is enabled in astute.yaml
--------------------- quantum_settings: l2_population: true ---------------------
None
None
None