3.4 KiB
Support external physical bridge mapping in linuxbridge
Include the URL of your launchpad blueprint:
https://blueprints.launchpad.net/neutron/+spec/phy-net-bridge-mapping
This proposal implements physical bridge mapping for linuxbridge-agent. According to this proposal, linuxbridge-agent will be able to be aware of external user-defined physical bridges and attach tap devices on it.
Problem Description
The linuxbridge-agent currently creates a bridge for each physical network used as a flat network, moving any existing IP address from the interface to the newly created bridge. This is very helpful in some cases, but there are other cases where the ability to use a pre-existing (user-defined) bridge.
For instance, the same physical network might need to be bridged for other purposes, or the agent moving the system's IP might not be desired or cause some unexpected error for the pre-defined environment.
According to some enterprise end-users' feedbacks, they do need this feature to make neutron compatible with their pre-defined virtual network environment due to some security regulations.
Proposed Change
Add a bridge_mappings configuration variable, similar to that used by the openvswitch-agent, alongside the current physical_interface_mappings variable.
When a physical bridge for a flat network is needed, the bridge mappings would be checked first. If a bridge mapping for the physical network exists, it would be used.
If not, the interface mapping would be used and a bridge for the interface would be created automatically. Sub-interfaces and bridges for VLAN networks would continue to work as they do now, created by the agent using the interface mappings.
Data Model Impact
None.
REST API Impact
None.
Security Impact
None.
Notifications Impact
None.
Other End User Impact
None.
Performance Impact
None.
IPv6 Impact
None.
Other Deployer Impact
Add an option called bridge_mappings in /etc/neutron/plugins/linuxbridge/linuxbridge_conf.ini.
Developer Impact
None.
Community Impact
This change is a value-added feature for linuxbridge-agent, and it won't affect the current development cycle.
The implementation is simple and straightforward.
Alternatives
None.
Implementation
Assignee(s)
- Primary assignee:
-
nick-ma-z
- Other contributors:
-
None
Work Items
- Implement the feature
- Provide unit tests
Dependencies
None.
Testing
Tempest Tests
None.
Functional Tests
None. This new feature can be fully covered by unit test cases.
API Tests
None.
Documentation Impact
User Documentation
Add an option called bridge_mappings in /etc/neutron/plugins/linuxbridge/linuxbridge_conf.ini.
Developer Documentation
None.
References
See related bug: https://bugs.launchpad.net/neutron/+bug/1105488