Dynamic VXLAN

StarlingX OpenStack supports dynamic mode (learning) VXLAN implementation that has each vSwitch instance registered on the network for a particular IP multicast group, MAC addresses, and VTEP endpoints that are populated based on neutron configuration data.

The IP multicast group, (for example, 239.1.1.1), is input when a new neutron data network is provisioned. The selection of the IP multicast group constraints flooding to only those nodes that have registered for the specified group. The IP multicast network can work in both a single subnet (that is, local Layer2 environment) or can span Layer3 segments in the customer network for more complex routing requirements but requires IP multicast enabled routers.

In the dynamic VXLAN mode, when a VM instance sends a packet to some destination node the VXLAN implementation examines the destination MAC address to determine how to treat the packet. If the destination is known, a unicast packet is sent to the compute node hosting that VM instance. If the destination is unknown or the packet is a broadcast/multicast packet then a multicast packet is sent to all compute nodes. Once the destination VM instance receives the packet and responds to the initial source compute node, it learns that the VM is hosted from that compute node, and any future packets destined to that VM instance are unicasted to that compute node.

../../_images/eol1510005391750.png

Multicast Endpoint Distribution

For broadcast and multicast packets originating from the VM instances implements head-end replication to clone and send a copy of the packet to each known compute node. This operation is expensive and will negatively impact performance if the network is experiencing high volume of broadcast or multicast packets.

Workflow to Configure Dynamic VXLAN Data Networks

Use the following workflow to create dynamic VXLAN data networks and add segmentation ranges using the CLI.

  1. Create a VXLAN data network, see Adding Data Networks.

  2. Add segmentation ranges to dynamic VXLAN (Multicast VXLAN) data networks, see Adding Segmentation Ranges Using the CLI.

  3. Configure the endpoint IP addresses of the compute nodes using the OpenStack Horizon Web Interface or the CLI:

  4. Establish routes between the hosts, see Adding and Maintaining Routes for a VXLAN Network.

For more information on the differences between the dynamic and static VXLAN modes, see Differences Between Dynamic and Static VXLAN Modes.