OVSDB: Lithium: Release Review
Contents
- 1 Project Name
- 2 Features
- 2.1 OpenDaylight Features
- 2.2 Standards
- 3 Non-Code Aspects (user docs, examples, tutorials, articles)
- 4 Architectural Issues
- 5 Security Considerations
- 6 Quality Assurance (test coverage, etc)
- 7 End-of-life (API/Features EOLed in Release)
- 8 Bugzilla (summary of bug situation)
- 9 Standards (summary of standard compliance)
- 10 Schedule (initial schedule and changes over the release cycle)
Project Name
Open vSwitch Database Integration Project
Features
Lithium marked the third release of the OVSDB project. The release delivers increased code and testing coverage, improved network virtualization integration with OpenStack and an MDSAL-based OVSDB plugin.
better parity with OpenStack Neutron
native DVR service including SNAT, external gateway and floating IP support
more robust and stable solution
increased code quality, unit, integration and system test coverage
MDSAL OVSDB southbound plugin
OpenDaylight Features
odl-ovsdb-schema-openvswitch: Schema wrapper that represents http://openvswitch.org/ovs-vswitchd.conf.db.5.pdf
odl-ovsdb-schema-hardwarevtep: Schema wrapper that represents http://openvswitch.org/docs/vtep.5.pdf
odl-ovsdb-library: Contains Schema-independent library that is a reference implementation for RFC 7047.
odl-ovsdb-openstack: OpenDaylight and OpenStack integration using OVSDB and Neutron to support network virtualization.
odl-ovsdb-southbound-api: YANG model for OVSDB
odl-ovsdb-southbound-impl: Implementation for the OVSDB YANG model
Standards
RFC7047: The Open vSwitch Database Management Protocol
Non-Code Aspects (user docs, examples, tutorials, articles)
Architectural Issues
There is a very steep learning curve to use OpenStack that is further complicated when integrating with OpenDaylight.
There is a compatibility layer to support VTN since they required the deprecated ADSAL interface and could not migrate to the newer MDSAL-based southbound.
Security Considerations
No known issues.
Quality Assurance (test coverage, etc)
Almost every module in the OVSDB project has UT, IT and system test coverage.
Sonar: UT: 29.8%, IT:16.3%
The UT coverage is actually better since 30% of the missing UT is from deprecated ADSAL components. The larger openstack component is probably 80% covered along with the library at 50% coverage. The southbound has barely any UT coverage.
The IT coverage is actually better also for the same reason as 30% of the code is deprecated ADSAL components. Also the majority of the southbound and openstack code is MDSAL-based which the Sonar IT inspection does not handle well. The majority of the code paths in the southbound are covered by IT and 50% of the code paths in openstack are covered.
System test is covered mainly via the OpenStack upstream which runs tempest tests against the latest OpenDaylight Lithium release.
There are limited southbound and openstack integration tests within the integration CSIT.
End-of-life (API/Features EOLed in Release)
All the ADSAL related components are deprecated: plugin and northbound
Bugzilla (summary of bug situation)
No major bugs exist. Most remaining bugs for supported code are for new features or minor fixes.
library: 2 bugs on scaling
openstack: 2 bugs for new features, 3 for updates to l3 and 3 for updates to LBaaS
southbound: 2 bugs
deprecated code: 22 bugs from helium, most likely to be marked as resolved, wont fix
Standards (summary of standard compliance)
RFC7047: The Open vSwitch Database Management Protocol
Schedule (initial schedule and changes over the release cycle)
Code hardening was a primary driver for this release but the introduction of the MDSAL to OVSDB impacted that deliverable as resources were diverted to the new MDSAL southbound. Also the instability of a reliable OpenStack and ODL integration test framework impacted testing coverage.