Jump to: navigation, search

Difference between revisions of "L2population"

(L2population configuration)
 
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
 
L2 population is mechanism driver for ML2 plugin which tends to leverage the implementation of overlay networks.
 
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 [https://docs.google.com/document/d/1sUrvOQ9GIl9IWMGg3qbx2mX0DdXvMiyvCw2Lm6snaWQ/edit here]
 
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 [https://docs.google.com/document/d/1sUrvOQ9GIl9IWMGg3qbx2mX0DdXvMiyvCw2Lm6snaWQ/edit here]
 +
<br />
  
 
Two topics are implemented with this mechanism driver :
 
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)
 
* 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)
+
* populating forwarding tables because when ARP proxy is used, virtual switch forwarding tables don't learn where to send packets anymore.
 +
<br />
 +
Here is the devsatck config to use  L2population in havana  with OVS  :
  
here is the devsatck config to use  L2population in havana  with OVS  :
+
:<nowiki>[[local|localrc]]</nowiki>
 
 
:[[local|localrc]]
 
 
:...
 
:...
 
:Q_PLUGIN=ml2
 
:Q_PLUGIN=ml2
Line 15: Line 16:
 
:Q_ML2_TENANT_NETWORK_TYPE=vxlan,gre
 
:Q_ML2_TENANT_NETWORK_TYPE=vxlan,gre
 
:...
 
:...
:[[post-config|/$Q_PLUGIN_CONF_FILE]]
+
:<nowiki>[[post-config|Ț/$Q_PLUGIN_CONF_FILE]]</nowiki>
 
:[agent]
 
:[agent]
 
:l2_population=True
 
:l2_population=True
Line 22: Line 23:
 
:local_ip=$HOST_IP
 
: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) :
+
Here is the devstack config to use L2population with linuxbridge and VXLan (remember minimal kernel version is 3.8 to use VXLan) :
:[[local|localrc]]
+
:<nowiki>[[local|localrc]]</nowiki>
 
:...
 
:...
 
:Q_PLUGIN=ml2
 
:Q_PLUGIN=ml2
Line 31: Line 32:
 
:Q_ML2_TENANT_NETWORK_TYPE=vxlan,gre
 
:Q_ML2_TENANT_NETWORK_TYPE=vxlan,gre
 
:...
 
:...
:[[post-config|/$Q_PLUGIN_CONF_FILE]]
+
:<nowiki>[[post-config|/$Q_PLUGIN_CONF_FILE]]</nowiki>
 
:[vxlan]
 
:[vxlan]
 
:enable_vxlan=true
 
:enable_vxlan=true
 
:local_ip=$HOST_IP
 
:local_ip=$HOST_IP
 
:l2_population=True
 
:l2_population=True

Latest revision as of 23:40, 3 November 2013

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)
  • populating forwarding tables because when ARP proxy is used, virtual switch forwarding tables don't learn where to send packets anymore.


Here is the devsatck config to use L2population in havana with OVS  :

[[local|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
...
[[post-config|Ț/$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) :

[[local|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
...
[[post-config|/$Q_PLUGIN_CONF_FILE]]
[vxlan]
enable_vxlan=true
local_ip=$HOST_IP
l2_population=True