- Learning OpenStack Networking
- James Denton
- 289字
- 2025-02-24 14:51:46
Mechanism drivers
An ML2 Mechanism driver is responsible for taking information established by the type driver and ensuring that it is properly implemented. Multiple Mechanism drivers can be configured to operate simultaneously, and can be described using three types of models:
- Agent-based: Includes Linux bridge, Open vSwitch, SR-IOV, and others
- Controller-based: Includes Juniper Contrail, Tungsten Fabric, OVN, Cisco ACI, VMWare NSX, and others
- Top-of-Rack: Includes Cisco Nexus, Arista, Mellanox, and others
Mechanism drivers to be discussed in this book include the following:
- Linux bridge
- Open vSwitch
- L2 population
The Linux bridge and Open vSwitch ML2 Mechanism drivers are used to configure their respective virtual switching technologies within nodes that host instances and network services. The Linux bridge driver supports local, flat, vlan, and vxlan network types, while the Open vSwitch driver supports all of those as well as the gre network type. Support for other type drivers, such as geneve, will vary based on the implemented Mechanism driver.
The L2 population driver is used to limit the amount of broadcast traffic that is forwarded across the overlay network fabric when VXLAN networks are used. Under normal circumstances, unknown unicast, multicast, and broadcast traffic may be flooded out from all tunnels to other compute nodes. This behavior can have a negative impact on the overlay network fabric, especially as the number of hosts in the cloud scales out.
As an authority on what instances and other network resources exist in the cloud, Neutron can pre-populate forwarding databases on all hosts to avoid a costly learning operation. ARP proxy, a feature of the L2 population driver, enables Neutron to pre-populate the ARP table on all hosts in a similar manner to avoid ARP traffic from being broadcast across the overlay fabric.