Big Switch - Convert L3 functions to L3 Service plugin

Big Switch - Convert L3 functions to L3 Service plugin

Move the L3 functions from the Big Switch monolithic plugin to a separate L3 service plugin so the fabric can provide L3 functionality for ML2 or the Big Switch Plugin from one common code base.

Problem description

There is no way to use the Big Switch L3 features when using the Big Switch ML2 driver.

Proposed change

Remove the L3 functions from the Big Switch core plugin and put them into an L3 service plugin. This will allow the Big Switch backend to provide L3 service when using the Big Switch plugin or the ML2 driver.



Data model impact

Database migration for L3 tables will be needed for new service plugin.

REST API impact


Security impact


Notifications impact


Other end user impact


Performance Impact


Other deployer impact

An L3 service plugin configuration will be required for the BSN core plugin.

Developer impact




Primary assignee:


Work Items

  • Separate code into L3 service plugin module

  • Re-organize BSN L3 tests into separate code from current unit test files


This will be completed after the L3 offload functionality is done since that will require more L3 factoring and is a higher priority.[1]


The current unit tests and 3rd party CI will cover this change since no new features are being added.

Documentation Impact

The service plugin will have to be referenced in the configuration guide for the Big Switch plugin and the Big Switch ML2 agent.

Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.