]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commit
Extend vxlan_group option to allow a range of group addresses
authorJohn Nielsen <john@jnielsen.net>
Wed, 22 Jul 2015 18:43:04 +0000 (12:43 -0600)
committerJohn Nielsen <john@jnielsen.net>
Wed, 29 Jul 2015 00:28:14 +0000 (18:28 -0600)
commite34e67b8e6ad4a95762287161184a9f9ce81b429
tree8e702e947f15a9ab2d4a8ff6b7547fb05bc2ae42
parent8584987e51c4826284423373b5b86bce316acecf
Extend vxlan_group option to allow a range of group addresses

If vxlan_group is specified in CIDR notation, it is interpreted as a
range of group addresses. VXLAN VNIs are mapped to group addresses in
a many-to-one round robin fashion, or one-to-one if a large enough
range is provided. Since VNIs are 24 bits, a /8 such as 239.0.0.0/8
allows each VNI to use a unique multicast group. (239.0.0.0/8 also
happens to be the "site-local" multicast range.)

With multiple VNIs on a single multicast group, it is likely that
VTEPs will unnecessarily receive broadcast/unknown/multicast
datagrams for VNIs in which they do not participate. Using a range of
groups mitigates or eliminates this issue. It is thus an alternative
to the l2_population extension and driver for environments where both
multicast and linuxbridge are used.

The default setting is unchanged, but the comments in the ini file
suggest 239.0.0.0/8 as an alternative. Administrators are free to use
any valid multicast range that can be expressed in CIDR notation, and
should choose a size and starting address that make sense for their
environment.

DocImpact
Closes-Bug: #1477331
Change-Id: If9a3487a28ba2b02a6ef934c5421cec5d505b53c
etc/neutron/plugins/ml2/linuxbridge_agent.ini
neutron/plugins/ml2/drivers/linuxbridge/agent/common/config.py
neutron/plugins/ml2/drivers/linuxbridge/agent/linuxbridge_neutron_agent.py
neutron/tests/unit/plugins/ml2/drivers/linuxbridge/agent/test_linuxbridge_neutron_agent.py