Comment 0 for bug 1499637

Revision history for this message
Thomas Morin (tmmorin-orange) wrote :

In the networking-bgpvpn project, the reference driver interacts with the openvswitch agent (of the ML2 openvswitch mech driver) with new RPCs to (a) setup the OVS bridges for MPLS VPNs (b) exchange information with the BGP VPN implementation running on the BGP speaker.

We currently create an agent by mimicking the main() in ovs_neutron_agent.py with a main() instantiating a class that overloads the OVSAgent class with the additional behavior we need [1].

This is really not the ideal way of extending the agent and we would prefer using the L2 agent extension framework [2] to do better.

This approach works, but only partially: we are able to register our RPC consumers, but are missing access to some datastructures of the agent that we need to use (setup_entry_for_arp_reply and local_vlan_map, access to the OVSBridge objects to manipulate OVS ports).