Netvirt:Lithium:Release_Review



Contents

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

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)

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.