All Posts By

opendaylight

Linux Foundation’s OpenDaylight Fluorine Release Brings Streamlined Support for Cloud, Edge and WAN Solutions

By | Announcement

Most pervasive open source SDN controller issues ninth platform release as more users and open source platforms leverage OpenDaylight Project to achieve promise of SDN/NFV

SAN FRANCISCO, September 13, 2018–The OpenDaylight Project, the leading open source platform for programmable, software-defined networks, today announced its ninth release, OpenDaylight Fluorine. The latest version brings major advancements for solution providers through key enhancements to the platform, including simplified packaging to speed solution development and enhanced capabilities for key use cases.

“Fluorine is one of the most streamlined releases to date for OpenDaylight, delivering a core set of mature components needed for most major use cases in a ‘managed release’ for easy consumption by commercial and in-house solution providers, as well as by downstream projects such as ONAP and OpenStack,” said Phil Robb, vice president, Operations, Networking, and Orchestration, The Linux Foundation. In addition, the release includes critical updates to clustering and service assurance to improve scalability, security and reliability to support our large end user deployments – including solutions from Cornell University, Globo.com, Orange,  Tencent, and others using all OpenDaylight to further their open networking initiatives.”

OpenDaylight is also seeing ongoing industry momentum as more users deploy the platform to realize the power of open SDN/NFV.  For example, Globo.com, a leading internet-related services and platforms company based in Brazil, is using OpenDaylight as their primary SDN controller platform. A new case study details the benefits the company is seeing from using OpenDaylight to deploy ACLs on virtual switches. FRINX has demonstrated customer success stories with its OpenDaylight Distribution together with SoftBank and China Telecom BRI while Red Hat’s new functional release in Red Hat OpenStack Platform (OSP) version 13 also features OpenDaylight.

OpenDaylight’s latest release includes new features important for cloud and edge environments, service function chaining, WAN connectivity, and optical transport. More details on what’s new in OpenDaylight Fluorine are outlined below.

Enhanced Functionality for Key SDN  Use Cases

 

  • WAN Connectivity. Fluorine includes an extremely mature and robust BGP stack, with improvements in BGPCEP and BGP/MPLS multicast support, making OpenDaylight a clear leader in SD-WAN innovation.
  • Optical Transport. Work on optical transport, including the TransportPCE project, has been nurtured within OpenDaylight for some time. Fluorine formally releases Transport PCE for the first time, as a component of the managed release. In addition, Fluorine  provides a new reference implementation for OpenROADM-based optical infrastructures control.
  • Cloud/edge Computing. Several new features were added to further enhance support for network virtualization within cloud and edge computing environments. This includes improved IPv6 support, support for both stateful and stateless security groups, and SR-IOV hardware offload for OVS. Much of this work has been developed for OpenStack environments, and is now being leveraged to integrate ODL with the Container Orchestration Engine for Kubernetes environments.  
  • Service Function Chaining (SFC). Updates to SFC accelerate delivery of services like network slicing, now supported by OpenvSwitch (OVS), allowing for improved adoption of SFC in the marketplace.

 

Increased Stability and Reliability

The OpenDaylight Fluorine release brings improvements in stability and scale, including complex bug fixes and enhancements to OpenDaylight infrastructure clustering capability. In addition, the new managed release process facilitates more thorough integration testing of the mature components, ensuring that release as a whole operates seamlessly.

Continued Cross-Community Integration

OpenDaylight continued its deep engagement with other open source projects and standards bodies such as OpenStack, OPNFV, Kubernetes, and ONAP. Notably, ODL code is integrated into OPNFV’s CI/CD toolchain, which slashes the time it takes the OPNFV community to provide feedback to ODL contributors from months to days.

Looking Ahead

The OpenDaylight project is hosting a Developer Forum in Amsterdam from September 23-24, in advance of the next platform release, Neon. The Neon release is expected in early 2019. Additional information and registration details can be found here.

About the Linux Foundation

The Linux Foundation is the organization of choice for the world’s top developers and companies to build ecosystems that accelerate open technology development and commercial adoption. Together with the worldwide open source community, it is solving the hardest technology problems by creating the largest shared technology investment in history. Founded in 2000, The Linux Foundation today provides tools, training and events to scale any open source project, which together deliver an economic impact not achievable by any one company. More information can be found at www.linuxfoundation.org.

The Linux Foundation has registered trademarks and uses trademarks. For a list of trademarks of The Linux Foundation, please see our trademark usage page: https://www.linuxfoundation.org/trademark-usage. Linux is a registered trademark of Linus Torvalds.

Additional Resources

 

###

OpenDaylight Oxygen: With Age Comes Maturity and Production Stability

By | Blog

This post originally appeared on the Inocybe Technologies blog

With development efforts focused on code cleanup, bug fixing, and security, OpenDaylight Oxygen showcases platform maturity with a keen focus on quality.  Although the community has rallied around stabilizing and improving existing functionality to reassure operational reliability, there were also some great features contributed.

Under the hood, all ODL projects upgraded odlparent and yangtools versions.  This was a cross project effort involving every project in the Oxygen distribution.  Changes adapted from the odlparent upgrade involve enforcing better code quality across the project through enhanced checkstyle and findbugs rules, as well as dependency upgrades.  One noteworthy upgrade, the move from karaf 4.0.9 to 4.1.3, enables runtime resolution of feature versions based on feature ranges. This unlocks developer agility, catalyzing the adaptation of future upgrades.  Yangtools contributions centralized around bug fixes and better code organization. Another noteworthy change is that the in-memory data tree now enforces mandatory leaf node presence for operational store by default.  This behaviour change may cause a few surprises during application upgrade, and can be disabled as a stop-gap measure, although it is not recommended.

The rest of the kernel contributors also focused mostly on bug-fixing during the Oxygen release, although there were a few other noteworthy changes.  The MD-SAL project team continued development on the second version of the binding specification, which will be utilized in future releases of ODL. The current plan is to stick with the first version of the binding specification for Fluorine though, and the community is working to close several gaps and deficiencies in what is currently available.  The NETCONF development team contributed functionality to utilize key based authentication with southbound NETCONF devices, which hitherto was limited to basic authentication. The AAA team debuted a new MD-SAL based authentication Realm which enables replication of ODL account information across a cluster, although it is not enabled by default.

A lot of work was done to complete the transition of all ODL projects off the configuration subsystem.  The configuration subsystem was replaced with blueprint many releases ago, but has been maintained as a deprecated system to ensure proper transition for non-ODL projects.  There are plans to remove the configuration subsystem in Fluorine, since the code is costly to maintain further into the future. However, there may be some compatibility layer maintained in Fluorine to bridge the gap before complete removal.  Additional work was done to transition projects off the DataChangeListener (DCL) in favor of DataTreeChangeListener (DTCL), which showcases much better performance. The controller development team plans to remove DCL APIs in Fluorine, so existing applications must migrate to using DTCL.  The Removal of core APIs is tricky, since the ODL development community does not have much insight into how they are consumed outside of the open-source codebase. However, the general strategy is to deprecate, maintain for several releases with clear messaging of upcoming demise, followed by actual removal.  Since DCL has been deprecated since Beryllium, it is time to finally get rid of it altogether. It also allows for continued transition off controller MD-SAL APIs, which have unfortunately been carried as baggage for a long time.

The protocol and application stacks received some upgrades.  BGP added support for EVPN VPWS Flexible Cross-Connect Service based on draft-sajassi-bess-evpn-vpws-fxc.  The netvirt & genius projects added support for IPv6 enabled L3VPNs utilizing BGPVPNs as well as support for MPLS/GRE tunnel creation for L3VPNS in OVS 2.8+.  Although less visible to end-users, these projects made great improvements in transaction chaining and threading under the hood. OVSDB and Openflowplugin projects focused efforts on closing several clustering bugs as well as creating more user-friendly libraries for utilizing functionality.  The Service Function Chaining project added support for statistics for Rendered Service Paths and bump-in-the-wire Service Functions, thus improving the usability of SFC from an operational standpoint. The JSON-RPC project was officially added to the release, and contains bindings to interact with ODL utilizing ZMQ.  This accelerates integration of non-Java based projects with the controller.

The pattern in the ODL development community is trending towards improving what exists rather than reinventing the wheel.  Each subsequent release comes with a facelift for existing projects, which should come as no surprise as the project continues to mature.

For additional information on the OpenDaylight Oxygen release, please visit The Linux Foundation’s Oxygen release blog: https://goo.gl/fhnVfh

Written by Ryan Goulding, Principal Software Engineer at Inocybe Technologies.

OpenDaylight Nitrogen Release: It’s All About The Apache Karaf Upgrade (by Ryan Goulding)

By | Blog

This blog was originally published on Inocybe Technologies’ blog here.

With the release of Nitrogen, OpenDaylight continues to solidify itself as the de facto open networking controller standard.  Although the release contains widespread enhancements and improvements,  the main focus of the OpenDaylight Nitrogen release is the major version upgrade of the underlying Apache Karaf container from 3.0.8 to 4.0.9.  Among other functions, Apache Karaf is used to coordinate ODL microservices and lifecycle, provide a common logging infrastructure, enable remote management through JMX and a unix-like shell, facilitate dynamic configuration and hot deployment, and provide a common set of base resources across the product.  As such, Karaf has several responsibilities and has served as a crucial piece of infrastructure to the overall OpenDaylight architecture since its inclusion in the Helium release. It’s kind of a big deal ;)!

Since ODL Karaf dependency management is centralized in the odlparent project, an upgrade may initially seem trivial—  just a one-liner version bump, right?  Unfortunately, that is far from the case.  As previously stated, each release of Karaf provides a set of common dependencies that should remain constant across applications in the container.  This is done in order to centralize on a base set of hypothetically stable, interoperable and secure dependencies based on what is available from upstream projects at the time.  Thus, even a minor version bump of the Karaf container version in odlparent can result in the need for a number of changes cascading across consuming projects in ODL— especially if Karaf’s upstream dependencies contain API changes.

Major versions of Apache Karaf, which often contain new features, dependencies, frameworks, and API changes, are arduous and expensive to consume.  Moving to a new Karaf version becomes similar to transferring an existing building onto a new foundation;  there will be some jagged pieces along the bottom that will need work to fit properly.  With that said, it is critically important for ODL to keep current with Karaf releases in order to consume security fixes and avoid upstream dependency end-of-life scenarios.  Centralization of common ODL dependencies in odlparent eases some of the heartburn associated with cross-project upgrades.  Inclusion of the functionality to utilize version ranges in ODL, which continues to be developed, will ease upgrade woes in future releases.  Additionally, a significant amount of testing infrastructure was added in the Nitrogen release timeframe to enhance runtime dependency resolution checks and identify problems earlier and more predictably.

Another noteworthy change which occurred in the Nitrogen timeframe is the decision of odlparent contributors to disaggregate the subproject release from the traditional simultaneous release plan.  This means that odlparent now releases independently of the rest of ODL projects, and consuming projects depend on a released version rather than a snapshot.  Snapshot artifacts are prone to change from day to day, which can cause nuisance to consumers.  For example, imagine that a snippet of code compiles on Tuesday, and without any changes, fails to compile Wednesday morning.  This problem is avoided by depending on released artifacts, as released artifacts should never change without a proper version bump.  Consuming projects can treat the released odlparent artifacts as true upstream dependencies, and upgrades of those dependencies are now consumed with greater precision and control.  Breaking odlparent out of the simultaneous release additionally allows the odlparent development team to continue to perform necessary upgrades of widely used core dependencies without breaking downstream projects, enabling a disaggregated and saner development workflow.  Although odlparent is the only project to break off from the simultaneous release during the Nitrogen timeframe, contributors of other projects have expressed interest in following a similar plan in the near future.  This is exciting for developers and users alike, as it assists in breaking down the traditionally monolithic release process of OpenDaylight into more manageable chunks.

Maturity of the platform and its community is recognized by the decision to invest in an infrastructure focused release.  Focus is garnered around not only doing things, but doing them right.  Upgrade of the Karaf version in ODL Nitrogen is a double-edged sword;  the foundation of ODL is greatly improved but at the expense of requiring the sole focus of an entire, albeit shortened, release cycle to adapt to changes.  The improvements weren’t free, but were necessary in order to continue to deliver a stable and secure platform.  Fortunately for ODL application developers and consumers, several articles and code examples are available which provide assistance in transitioning to the updated ODL Nitrogen release.  Additionally, the support lifecycle of the previous release, ODL Carbon, has been extended beyond the traditional lifespan in order to help ease transition woes.

If you’d like to learn more about the OpenDaylight Nitrogen Release, the ODL Foundation’s Nitrogen blog is available here: https://www.opendaylight.org/blog/2017/09/26/opendaylight-introduces-nitrogen. Dive in and download OpenDaylight’s Nitrogen release today from: https://www.opendaylight.org/downloads.

Written by Ryan Goulding, Principal Software Engineer at Inocybe Technologies.

Enhanced Stability, Security and Network Programmability (by Ryan Goulding)

By | Blog

This post was originally published on Inocybe Technologies blog, reposted with their permission.

End users can rest assured that the early days of OpenDaylight releases that were jam-packed with tens-to-hundreds of new under-supported features are far gone. The latest release, Carbon, showcases the maturity and production-grade quality that Platform users have come to expect. Carbon provides significant improvements to security, stability and network programmability.

A driving goal for the OpenDaylight Carbon release is to improve the stability and reliability of ODL services.  Namely, several projects are converted to use Aries Blueprint for service activation over the bespoke configuration subsystem, an effort which was started in Boron and is improved in Carbon.  Blueprint is better documented and easier to debug, resulting in a more effective and satisfying application development experience.  Since Blueprint supports parallel service activation, there is less latency between starting the controller and utilizing the provided services.  Upgradability is improved through the Blueprint adoption, since efforts are made to separate application configuration from code wiring.  This is useful since most operators upgrading OpenDaylight wish to maintain configuration between releases, but pick up internal wiring changes.

Initial groundwork to add Apache Karaf 4.X features for each project was performed in hopes of transitioning to the newer container in the Nitrogen release.  Additionally, enhanced testing was added to ensure that features import all of the appropriate runtime bundles, improving stability of ODL features.  This groundwork should greatly help the community developers to perform the very non-trivial Karaf upgrade during the Nitrogen release cycle.

The RFC 6020 implementation of the YANG 1.0 Data Modeling Language is superseded by an implementation of RFC 7950, the YANG 1.1 Data Modeling Language.  For application developers this means that they’re now able to use YANG 1.1 constructs in their YANG models. On a similar note, interoperability with southbound NETCONF devices utilizing RFC 7950 is made possible in the Carbon release.

The clustered NETCONF implementation is greatly stabilized through re-architecture around the cluster singleton service, as well as greatly increased test coverage.  End users can expect a consistent clustered NETCONF experience to that of the Boron release, but have more peace of mind surrounding the stability of NETCONF in a distributed controller deployment.

A forward looking version of the MD-SAL Binding Specification version 2 is included in the Carbon release, though there are not yet any consuming applications.  The new version of the binding specification solves several deficiencies discovered in the original binding specification.  This implementation is Twirl-based, which has a similar function to the xtend implementation in the V1 spec, but generates the code in Scala instead of Java.  Don’t worry about running out to learn Scala; the generated Scala code is injected into the Java Runtime Environment, and is accessible to traditional Java clients.

Carbon contains an implementation of the recently (and finally) standardized RFC 8040, RESTCONF.  Hitherto, OpenDaylight users are probably most familiar interacting with the RESTCONF Draft 02 API.  The DRAFT 02 API still exists for compatibility purposes, since many pieces of software still rely on that API contract.  The new RFC 8040 RESTCONF API implementation is made available through a separate endpoint.  Users are encouraged to start exploring and using the standard version of the API, since it is still unclear how long the community should support the DRAFT 02 version.

Additionally, security of RESTCONF is improved through the addition of a model-based authorization schema in the AAA project.  Operators can now dynamically restrict sets of URL endpoints to specific classes of users at runtime.  This enhanced authorization mechanism is available for both RESTCONF versions.  AAA contributors have also added support for model-based certificate management.  Although the certificate management functionality is currently only integrated with OVSDB in the Carbon release, there are plans to provide hooks for use with other southbound protocols in the future.

An initial implementation of IETF Call Home based Draft 08 is added to the NETCONF project offering.  The implementation is currently not cluster aware, but offers the base functionality for Call Home functionality.  Overall, this improves the integration points for ODL, and enhances an operator’s ability to automate orchestration of ODL as part of a greater architecture.

Carbon debuts a new project called Daexim, a utility which allows the import and export of data from the MD-SAL datastore in JSON format.  Daexim is limited in the sense that it cannot tolerate YANG data model changes between releases.  However, developers can write external logic to manipulate data between import and export, providing for easier upgradability between releases of ODL.

Additionally, Carbon includes the first incarnation of jsonrpc, a project aimed towards enhancing external communication and federation with the controller.  For now, jsonrpc exposes a shim for ZMQ, a well tested, commodity message bus implementation.  Instead of utilizing RESTCONF, NETCONF or some other northbound interface, application developers can hook into the bus to manipulate data.  In essence, this unlocks the capability to write controller applications using non-JRE languages that support ZMQ integration.  This is compelling from the standpoint that it unlocks the ability for an entirely new set of developers to become involved with the project.

Overall, Carbon provides greater stability, security and enhanced network programability.  Groundwork is put in place to perform the Karaf upgrade in the Nitrogen release, and service activation is greatly stabilized and better tested to ensure a more consistent and friendly operational experience.  New functionality is added to help communicate with the controller, export data, and orchestrate ODL as part of a greater solution.  Dive in and download OpenDaylight’s Carbon release today from: https://www.opendaylight.org/downloads.

Written by Ryan Goulding, Senior Software Engineer at Inocybe Technologies.

Introducing OpenDaylight’s Sixth Platform Release, Carbon

By | Blog

Carbon has been released! OpenDaylight’s sixth platform release, Carbon, adds new enhancements to better support Metro Ethernet and cable operators as well as Internet of Things (IoT) deployments. As OpenDaylight continues to mature, a growing number of member use cases are emerging from companies including CenturyLink, China Mobile, Inocybe Technologies and Tencent.

OpenDaylight’s latest release further advances the platform’s scalability and robustness, with new capabilities supporting multi-site deployments for geographic reach, application performance and fault tolerance. Southbound protocols OpenFlow and Netconf gained in scalability and features, as did various administrative utilities.

Carbon also streamlines service function chaining by providing an integrated framework for NFV management. Much of this integration work and new capabilities available in Carbon were showcased as part of a proposed “Nirvana Stack,” presented in Boston last month.

As these toolchains are further integrated into higher level open source projects like ONAP, OpenStack and OPNFV, they are increasingly enabling innovators to productively explore new use cases such as IoT.

To learn more about Carbon or download the release, visit here.

We would like to thank our supportive community of developers and members who helped make the release possible!

OpenDaylight Matures with Carbon Release and New Market Deployments

By | Foundation News

The sixth release of the open SDN controller adds new enhancements to support IoT deployments and better integration with OpenStack  

SAN FRANCISCO, June 6, 2017–The OpenDaylight Project, the leading open source platform for programmable, software-defined networks, today announced its sixth release, Carbon. With this release, OpenDaylight adds new enhancements to better support Metro Ethernet and cable operators as well as Internet of Things (IoT) deployments.

“OpenDaylight-based networks are delivering business and consumer services to more than 1 billion subscribers around the globe today, as well as a growing number of users in the enterprise space,” said Phil Robb, Executive Director of OpenDaylight at The Linux Foundation. “Carbon delivers a deeper level of platform maturity, while solidifying the toolchains for leading use cases in private and hybrid cloud as well as the carrier market.”

OpenDaylight’s latest release further advances the platform’s scalability and robustness with new capabilities supporting multi-site deployments for geographic reach, application performance and fault tolerance. Southbound protocols OpenFlow and Netconf gained in scalability and features, as did various administrative utilities.

Carbon streamlines service function chaining by providing an integrated framework for NFV management. Much of Carbon’s integration work and new capabilities were showcased as part of a proposed “Nirvana Stack,” presented in Boston last month.

Carbon also supports a series of PCMM specs and other capabilities required by cable operators. It also improves operators’ ability to enable software applications and service orchestrators to configure and provision connectivity services in physical and virtual network elements–in particular, Carrier Ethernet services as defined by MEF Forum.

These toolchains are being incorporated as core components of higher-level open source frameworks, such as ONAP, OPNFV and OpenStack, as well as real-world implementations of designs from standards bodies such as MEF. These new combined stacks are increasingly enabling innovators to productively explore new use cases such as IoT.

Supporting quotes

China Mobile

“A SDN controller plays an important role for us to fast and flexibly launch services for public and private clouds, and it is a critical component in our next-generation network,” said YANG Zhiqiang, Deputy General Manager of China Mobile Research Institute. “The robustness of the OpenDaylight platform has enabled us to build our own controller and develop customized applications.”

Inocybe Technologies

Inocybe Technologies helps customers build and deploy production-grade products and services by leveraging the OpenDaylight platform as the foundation for numerous SDN deployments spanning a variety of industries, including healthcare, financial services, smart cities and industrial controls.

“We continue to see new use cases emerging for OpenDaylight, including our work with Avaya on supporting IoT,” said Mathieu Lemay, Chief Executive Officer of Inocybe Technologies. “Using OpenDaylight enabled us to develop an SDN architecture for IoT that is capable of managing and securing up to 168,000 connected devices, the largest implemented in the market today.”

CenturyLink

As CenturyLink virtualizes its network, SDN controllers provide pivotal functionality. The diverse requirements within the network, datacenters and central offices demand flexibility from OpenDaylight and applications such as the Edge Access Controller.

“As part of our work to achieve full network virtualization, we have created our own virtualized Broadband Network Gateway (vBNG) using open source components including OpenDaylight and OpenStack,” said Adam Dunstan, Vice President of SDN/NFV Engineering at CenturyLink. “We used OpenDaylight software to build our SDN access controller because of its flexibility to work with legacy operations support systems as well as newer orchestration platforms.”

Tencent

As a leading provider of internet services in China, Tencent has deepened its commitment to open source deploying OpenDaylight as a standard across their network. The open SDN platform provides Tencent with the flexibility and maturity to accommodate a growing user base and the massive scale required to provide those users with high quality services.

“We’ve selected OpenDaylight as our standard SDN controller as it has enabled us to build an agile infrastructure that can support our diverse network requirements,” said Wade Shao, deputy director of network architecture center, Tencent. “We are also hoping our partners will work together with us to build on and contribute to OpenDaylight, as we believe it matches our network strategy.”

About the OpenDaylight Project

The OpenDaylight Project is a collaborative open source project that aims to accelerate the adoption of Software-Defined Networking (SDN) and Network Functions Virtualization (NFV). Founded by industry leaders and open to all, the OpenDaylight community is developing a common, open SDN platform that fosters new innovation and reduces risk. Get involved: www.opendaylight.org.

OpenDaylight is a project at The Linux Foundation. Linux Foundation projects harness the power of collaborative development to fuel innovation across industries and ecosystems. www.linuxfoundation.org

Additional Resources

 

###