L2population
Revision as of 23:02, 3 November 2013 by Mathieu-rohon (talk | contribs) (L2population configuration)
L2 population is mechanism driver for ML2 plugin which tends to leverage the implementation of overlay networks. By populating the forwarding tables of virtual switches (LinuxBridge or OVS), l2population mech driver will decrease broadcast traffics inside the physical networks fabric while using overlays networks (VXLan, GRE). Full specifications of the blueprint are available here
Two topics are implemented with this mechanism driver :
- populating ARP proxy so that ARP broadcasts are not broadcasted in the network fabric anymore; (only available for Linuxbridge in havana-1, but OVS implementation should land soon with an ebtabless driver)
- implementing partial mesh so that when a broadcast is sent, it is not duplicated to every host, as it is done currently with OVS and GRE overlay network. It will be forwarded to hosts that are concerned by the network. (this is currently available for OVS with VXLan or GRE. It is also available on Linuxbridge, with kernel version 3.11. kernel version 3.8 and higher will use multicast groups. previous kernel doesn't implement VXLan)
here is the devsatck config to use L2population in havana with OVS :
- localrc
- ...
- Q_PLUGIN=ml2
- Q_SERVICE_PLUGIN_CLASSES=neutron.services.l3_router.l3_router_plugin.L3RouterPlugin
- Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch,linuxbridge,l2population
- Q_ML2_TENANT_NETWORK_TYPE=vxlan,gre
- ...
- /$Q_PLUGIN_CONF_FILE
- [agent]
- l2_population=True
- [ovs]
- local_ip=$HOST_IP
here is the devstack config to use L2population with linuxbridge and VXLan (remember minimal kernel version is 3.8 to use VXLan) :
- localrc
- ...
- Q_PLUGIN=ml2
- Q_AGENT=linuxbridge
- Q_SERVICE_PLUGIN_CLASSES=neutron.services.l3_router.l3_router_plugin.L3RouterPlugin
- Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch,linuxbridge,l2population
- Q_ML2_TENANT_NETWORK_TYPE=vxlan,gre
- ...
- /$Q_PLUGIN_CONF_FILE
- [vxlan]
- enable_vxlan=true
- local_ip=$HOST_IP
- l2_population=True