Skip to main content
Category

Blog

The Next Chapter of OpenDaylight

By Blog

The Next Chapter of OpenDaylight

Many of you already know that Neela Jacques, OpenDaylight’s Executive Director for the last 3 years, has decided to take a new role as an Entrepreneur in Residence with Bain Capital. As the OpenDaylight Project’s original Technical Director, and now, Interim Executive Director, I want to add on to the thoughts Neela shared in his final blog last week.

Like Neela, I am proud of all that the Project has accomplished to date, from building an increasingly robust platform capable of supporting some of the world’s largest networks, to our global and organizationally diverse community of contributors, many of whom are also users. One of the best measures of the real-world value of an open source project is an engaged user community, and I’m proud that with our most recent release, more than half of the new projects proposed came from users with active production deployments.

The user community itself spans many of the world’s largest carriers, Chinese webscale companies, leading research institutions, and increasingly, global enterprises in the finance and retail sectors. Of course, these are just the deployments that we at the OpenDaylight Project happen to know about. More than half of users who responded to our Fall 2016 survey have downloaded the code directly from opendaylight.org, for reasons ranging from personal experimentation and research to running small networks in places as farflung as Tunisia, Cameroon, Bolivia, and Nepal. Others use OpenDaylight-based solutions from our commercial ecosystem.

We’re not ones to rest on our laurels, though. Here’s what we’ll be doing in 2017:

  • Ongoing Stability, Scalability, Security, and Performance (S3P) enhancements.

  • Focus on feature robustness for leading use cases, eg. Service Function Chaining for NFV/Cloud and management plane programmability, as well a ops & analytics tools for network managers.

  • Continued integration with larger open networking initiatives; ODL has already become the leading controller embedded in other open source projects such as OPNFV, and the newly formed Open Networking and Automation Platform (ONAP) project, along with strong integration with OpenStack.

  • Supporting users with adoption and community engagement; look for a new set of tutorials coming soon, OpenDaylight User Groups (ODLUGs) to join (and lead!), regional workshops and more.

The success of OpenDaylight has contributed to the array of newer open networking projects hosted by the Linux Foundation. My colleague, Arpit Joshipura, recently joined the LF to identify synergies across the projects. I have recently taken on the role of VP of Operations for Networking and Orchestration for the Linux Foundation (in addition to the interim ED role for OpenDaylight), in order to improve developer and infrastructure efficiency, as part of our drive towards greater cross-project collaboration.

I’m excited to bring everything we’ve learned since OpenDaylight began to the related networking projects. At the same time, it is my firm belief that improved collaboration across projects will continue to sharpen the focus and velocity of OpenDaylight development. Finally, and most importantly, the assembly of a modular but well-integrated open networking stack will simplify operations for our developers, vendor members and users alike. I look forward to our continued journey together.

– Phil Robb, Interim Executive Director, OpenDaylight

Integrating ODL with PNDA open source data analytics platform

By Blog

Integrating ODL with PNDA open source data analytics platform

Blog originally posted on PNDAemic: The PNDA.io blog.

So you want to integrate OpenDaylight with PNDA!

It’s really easy to aggregate data into a PNDA instance. But it takes a little more work to stream data out of an OpenDaylight instance. There are three steps to set this up:

  1. Pick a data source, i.e. an OpenDaylight application that can supply data to an OpenDaylight event topic.
  2. Configure the OpenDaylight event aggregator to collect the desired data and publish it on a topic.
  3. Deploy the OpenDaylight Kafka Plugin and configure it to forward events to the Kafka message bus of your PNDA instance.

odltopnda

THE DATA SOURCE

If you have NECONF enabled devices that send notifications then the odl-netconf-connector might be sufficient to get started. Alternatively you can write a new OpenDaylight application to collect your desired dataset. I have chosen to write an application that uses SNMP to collect IF-MIB:ifTable data. You can get the application from github here: https://github.com/donaldh/if-table-collector.

Once built, the if-table-collector can be started as a standalone karaf instance:

$ cd if-table-collector
$ ./karaf/target/assembly/bin/karaf

Check that the if-table-collector is running:

opendaylight-user@root>bundle:list | grep if-table
270 | Active | 80 | 0.1.0.SNAPSHOT | if-table-collector-api
274 | Active | 80 | 0.1.0.SNAPSHOT | if-table-collector-impl

Now you can tell the application to collect ifTable data from a device. The application uses an augmentation of topology-netconf to enable SNMP collection for a device. Here’s an example:

POST http://localhost:8181/restconf/config/network-topology:network-topology/topology/topology-netconf
Content-Type: application/xml
<node xmlns=”urn:TBD:params:xml:ns:yang:network-topology”>
<node-id>{node-name}</node-id>
<host xmlns=”urn:opendaylight:netconf-node-topology”>{ip-address}</host>
<port xmlns=”urn:opendaylight:netconf-node-topology”>{netconf-port}</port>
<username xmlns=”urn:opendaylight:netconf-node-topology”>{username}</username>
<password xmlns=”urn:opendaylight:netconf-node-topology”>{password}</password>
<tcp-only xmlns=”urn:opendaylight:netconf-node-topology”>false</tcp-only>
<keepalive-delay xmlns=”urn:opendaylight:netconf-node-topology”>0</keepalive-delay>
<snmp-community xmlns=”urn:net:donaldh:if-table-collector”>{snmp-community}</snmp-community>
<poll-interval xmlns=”urn:net:donaldh:if-table-collector”>60</poll-interval>
</node>

You should see the device being polled every 60 seconds:

2017-02-22 16:48:24,079 | INFO | Executing poll cycle for 10.1.1.105 …
2017-02-22 16:48:24,460 | INFO | Polled 6 rows.

CONFIGURING THE EVENT AGGREGATOR

The OpenDaylight event aggregator is responsible for gathering events from the desired data sources within OpenDaylight and publishing them on an specific topic on the OpenDaylight message bus. To get started, we will use a simple topic configuration which matches all notification names for all nodes:

POST http://localhost:8181/restconf/operations/event-aggregator:create-topic
{ “event-aggregator:input”:
{ “notification-pattern”: “*”, “node-id-pattern”: “.*” }
}

DEPLOYING THE KAFKA PLUGIN

The odl-kafka-plugin can be built and added to any OpenDaylight installation. I have a fork of it here that builds for OpenDaylight Boron-SR2: https://github.com/donaldh/odl-kafka-plugin. Once you have built the kafka-agent plugin, you can copy it to the karaf deploy directory to have it auto-deploy into the running karaf instance.

The odl-kafka-plugin simply registers for messages on the OpenDaylight message bus and sends them on to the kafka message bus. It can be configured to listen for specific topics or, by default, listen for any topic. I used the simplest configuration which listens for any topic:

PUT http://localhost:8181/restconf/config/kafka-agent:kafka-producer-config
{
kafka-producer-config: {
kafka-broker-list: “{kafka-host}:9092”,
kafka-topic: “odl”,
compression-type: “none”,
message-serialization: “avro”,
avro-schema-namespace:”com.example.project”
}
}

VERIFYING THE END RESULTS

You can use the Kafka console consumer to verify that messages are being received by the Kafka bus. The messages are AVRO encoded so the textual representation looks a bit weird:

% ./bin/kafka-console-consumer.sh –bootstrap-server $(KAFKA_HOST):9092 –topic odl
?????V$if-table-collector172.16.1.105?
<?xml version=”1.0″ encoding=”UTF-8″?><payload xmlns=”urn:cisco:params:xml:ns:yang:messagebus:eventaggregator”><source>172.16.1.105</source><message><IfEntryBuilder><IfAdminStatus>Down</IfAdminStatus><IfInDiscards>0</IfInDiscards><IfInErrors>0</IfInErrors><IfInOctets>0</IfInOctets><IfInUcastPkts>0</IfInUcastPkts><IfInUnknownProtos>0</IfInUnknownProtos><IfIndex>6</IfIndex><IfMtu>1514</IfMtu><IfOperStatus>Down</IfOperStatus><IfOutDiscards>0</IfOutDiscards><IfOutErrors>0</IfOutErrors><IfOutOctets>373</IfOutOctets><IfOutUcastPkts>2</IfOutUcastPkts><IfPhysAddress/><IfSpeed>4294967295</IfSpeed><IfType>Eon</IfType></IfEntryBuilder></message></payload>

Assuming you have already configured the PNDA instance to accept kafka messages on the “odl” topic, you will start to see ifTable data in the HDFS datastore.

A Note from Neela Jacques

By Blog

A Note from Neela Jacques

It is with mixed emotions that I am leaving my role as Executive Director of the OpenDaylight Project to join Bain Capital Ventures as an Entrepreneur in Residence. I’m excited by this next opportunity to pursue my entrepreneurial passions, but sad to leave such a great community that has been at the forefront of open source and SDN. I am so proud of what we have achieved together over the past 3+ years.

When I joined OpenDaylight as the Executive Director in 2013, our work was cut out for us. We all knew that SDN was necessary and would happen, but there were significant challenges to overcome. Could we get the networking industry to work together and build an open platform that everyone would agree on? Could we build a strong community that developers would want to be a part of? And most importantly, would end users deploy it and embrace open source at the heart of their networks?

Our goal was to unify the industry by building an open source platform for programmable, software-defined networks platform that could be broadly adopted. While there is still more work to be done, I’m proud of the progress and achievements that we have made over the past four years. We brought together service providers, enterprises, vendors, systems integrators, users and app developers to create the largest open SDN project to date. We’ve established a mature governance where people can disagree but still work together to build an even better solution. Our developer community is active and strong; more than 900 developers contributed to the five releases of the OpenDaylight platform.

Most importantly, OpenDaylight has proved to the networking industry that open source can serve as the foundation of their production infrastructures. AT&T, Verizon, Comcast, Bell and Canada in North America, Orange and Telefonica in Europe and China Telecom, China Mobile and China Unicom, Baidu, Alibaba and Tencent in China are members and/or users of OpenDaylight. We’ve seen large-scale production deployments by numerous major organizations including Tencent, CERN’s Large Hadron Collider project and AT&T, and OpenDaylight is the basis for solutions from Brocade, Ericsson, HPE and Red Hat among others.

On a more personal level, it is hard for me to express how much of a privilege it has been for me to lead this community over the past 3+ years. This role has given me a chance to get to know so many incredible engineers, technical and business leaders, and develop relationships across countries and cultures. I have been personally enriched by our interactions and proud of what we have been able to build, against steep odds, together.

I’m so proud to have been a part of the OpenDaylight community and grateful that you’ve trusted me to lead the project and serve as the voice for all of your hard work. I believe in this community, and I expect to stay engaged as I continue working with The Linux Foundation and the OpenDaylight Project as an advisor. I have full confidence in Phil Robb, our Board of Directors, TSC and technical leaders to be able to take the project to even greater heights. I look forward to cheering from the stands as OpenDaylight gets ever more deployed as the industry’s de-facto standard SDN platform.

Three Chinese Carriers in OpenDaylight City Tour

By Blog

Three Chinese Carriers in OpenDaylight City Tour

Blog by George Zhao, originally posted here.

On Dec. 12-16, the ODL city tour workshop was sponsored by OpenDaylight,  China Open SDN Committee (COS), ZTE, Huawei, H3C, Cisco, VCMY and Raysystem, and hosted by Baidu, Tencent, Tethrnet and SDNLAB. It was held in four cities of China: Nanjing, Beijing, Shenzhen and Shanghai, all are within a week.

People from many technology companies joined and shared their experience in using ODL, the following slide is from Neela’s keynote, Neela listed top three companies for Internet, Telco and ICT vendors in China.  Internet companies, a.k.a BAT in China, are all members of COS and members of OpenDaylight, Tencent and Baidu are two of the four city hosts. All three Telco companies participated in ODL city tour and gave presentations. All the three ICT vendors were sponsors for this event. This shows a big enthusiasm for OpenDaylight in China.

neela-1

Let’s take a closer look at the three Telco’s  approaches of SDN controller.

 

China Mobile

According to China Mobile, after deploy SDN, the network is expected to be more open, more flexible and more efficient , it is true for the latter two, however, compare to traditional network, to many people’s surprise,  today’s SDN deployment makes network less open.

In traditional networking, following IP standards, gateway, switch, firewall can come from different vendors, but for today’s SDN to work properly,  equipment needs to be from the same vendor as SDN controller. China Mobile’s solution to prevent vendor lock in is to develop SDN controller by themselves.  The best way to build a SDN controller is based on open source,  China Mobile selected OpenDaylight platform to develop their own SDN controller – AERO.

china-mobile

It is hard to ignore the gap between open source community release and commercial product release, China Mobile summarized three key areas for open source SDN controller:

  1. Clustering: high performance, high available and flexible clustering is the key.
  2. Model: common abstract model for apps and network equipment
  3. Exception handling: how to make sure data consistence during exception handling.

China Telecom

China Telecom gave a couple of use cases of how they leveraged OpenDaylight in their SDN controller; IP SDN & NFV on WAN and unified control/management for cloud/WAN.

CT-uc1

 

ct-uc2

While China Mobile is emphasized on southbound, China Telecom concentrates on northbound service plugin and Yang model, they would like northbound to be more abstracted, and they would like to have Yang model to be standardized and more mature in ODL. Their expectations of OpenDaylight are not very different than most of others, enhance core, cluster and performance.

CT-exp

 

China Unicom

Fast and automatic deployment is the main motivation for China Unicom to adapt SDN/NFV. At Shanghai, China Unicom gave an presentation of  SDN requirements from China Unicom and Practice of ODL through A-Network.

cu-cover

China unicom divided the controller into two layers, one is very like domain controller, it is vendor specific, the other is like super controller, it is ODL based and controls domain controllers.

cu-1

The controller in red box is Huawei controller and in blue box is Cisco controller, both controllers connects to their own equipment as well as other vendors equipment through Netconf/PCE/BGP-LS protocols. On top of vendor specific controllers, there is one control system, which controls controllers.

Summary

Clustering, YANG modeling, performance and stability are the common interests of almost everyone who participated the ODL city tour, we should combine the strength of community and members, to build a robust HA open source SDN platform that can be leveraged by many many companies and people.

At last, thanks again for organizers and sponsors for this ODL city tour event, it has been a huge success and we keep the momentum for fast SDN deployment.

Three Chinese Carriers in OpenDaylight City Tour

By Blog

Blog by George Zhao, originally posted here.

On Dec. 12-16, the ODL city tour workshop was sponsored by OpenDaylight,  China Open SDN Committee (COS), ZTE, Huawei, H3C, Cisco, VCMY and Raysystem, and hosted by Baidu, Tencent, Tethrnet and SDNLAB. It was held in four cities of China: Nanjing, Beijing, Shenzhen and Shanghai, all are within a week.

People from many technology companies joined and shared their experience in using ODL, the following slide is from Neela’s keynote, Neela listed top three companies for Internet, Telco and ICT vendors in China.  Internet companies, a.k.a BAT in China, are all members of COS and members of OpenDaylight, Tencent and Baidu are two of the four city hosts. All three Telco companies participated in ODL city tour and gave presentations. All the three ICT vendors were sponsors for this event. This shows a big enthusiasm for OpenDaylight in China.

Let’s take a closer look at the three Telco’s  approaches of SDN controller.

China Mobile

According to China Mobile, after deploy SDN, the network is expected to be more open, more flexible and more efficient , it is true for the latter two, however, compare to traditional network, to many people’s surprise,  today’s SDN deployment makes network less open.

In traditional networking, following IP standards, gateway, switch, firewall can come from different vendors, but for today’s SDN to work properly,  equipment needs to be from the same vendor as SDN controller. China Mobile’s solution to prevent vendor lock in is to develop SDN controller by themselves.  The best way to build a SDN controller is based on open source,  China Mobile selected OpenDaylight platform to develop their own SDN controller – AERO.

It is hard to ignore the gap between open source community release and commercial product release, China Mobile summarized three key areas for open source SDN controller:

  1. Clustering: high performance, high available and flexible clustering is the key.
  2. Model: common abstract model for apps and network equipment
  3. Exception handling: how to make sure data consistence during exception handling.

China Telecom

China Telecom gave a couple of use cases of how they leveraged OpenDaylight in their SDN controller; IP SDN & NFV on WAN and unified control/management for cloud/WAN.

While China Mobile is emphasized on southbound, China Telecom concentrates on northbound service plugin and Yang model, they would like northbound to be more abstracted, and they would like to have Yang model to be standardized and more mature in ODL. Their expectations of OpenDaylight are not very different than most of others, enhance core, cluster and performance.

China Unicom

Fast and automatic deployment is the main motivation for China Unicom to adapt SDN/NFV. At Shanghai, China Unicom gave an presentation of  SDN requirements from China Unicom and Practice of ODL through A-Network.

China unicom divided the controller into two layers, one is very like domain controller, it is vendor specific, the other is like super controller, it is ODL based and controls domain controllers.

The controller in red box is Huawei controller and in blue box is Cisco controller, both controllers connects to their own equipment as well as other vendors equipment through Netconf/PCE/BGP-LS protocols. On top of vendor specific controllers, there is one control system, which controls controllers.

Summary

Clustering, YANG modeling, performance and stability are the common interests of almost everyone who participated the ODL city tour, we should combine the strength of community and members, to build a robust HA open source SDN platform that can be leveraged by many many companies and people.

At last, thanks again for organizers and sponsors for this ODL city tour event, it has been a huge success and we keep the momentum for fast SDN deployment.

Software Defined Networking Fundamentals Part 1: Intro to Networking Planes

By Blog

Software Defined Networking Fundamentals Part 1: Intro to Networking Planes

Article originally posted on Linux.com, see original post here:

Join us in this three-part weekly blog series to get a sneak peek at The Linux Foundation’s Software Defined Networking Fundamentals (LFS265) self-paced, online course.

Virtualization, which includes Software Defined Networking (SDN) and Network Function Virtualization (NFV) is changing the entire networking ecosystem. Virtualization is an innovation wave that cannot be ignored. The value proposition is too compelling for anyone operating a network (Enterprises and Service Providers) to ignore. All participants in this ecosystem must adapt, or they’ll be left behind.

This tutorial series, taken from the second session of the course, will provide the fundamental concepts of an SDN switch. This first part covers a short history of networking and the driving forces of innovation behind SDN. It also introduces the concept of planes and gives an overview of the three planes of networking.

The second part shows the architecture and operations of a traditional switch and how the planes are implemented therein. Then part three illustrates the architectural differences of a software defined switch and introduces the concept of an SDN Controller. It then covers RFC 7426 and how it introduced a number of abstraction layers to simplify the programming of complex networks.

Get all three parts and test questions by downloading a free sample chapter from the course today!

A Short History of Networking

The networks that drive today’s world, and the information technology industry in particular, are built on the concepts introduced by ALOHA and the U.S. Defense Advanced Research Project Agency (DARPA) initiative called ARPANET (Advanced Research Projects Agency Network).

What we now refer to as the “Internet” is the evolution of Arpanet. Created in the early 1960s, Arpanet was a packet-based network, as opposed to the widespread circuit switched Public Switched Telephone Network (PSTN).  The resilience, we now assume, was created to ensure survivability of a nuclear attack.  If a node (in this macabre case, a city) was removed from the network, the remaining nodes would adapt and route around the missing node.

In the 1980s, the Internet Protocol Suite (TCP/IP) was introduced, and the U.S. National Science Foundation funded numerous supercomputing centers at select universities and then funded connectivity to these sites to other research institutions. It was the advent of the web browser by Tim Berners-Lee of CERN that gave us a simple interface to the Internet and its resources and became the World Wide Web that’s become integrated in our lives.

The techniques and methods used in packet networking, as well as the hardware and the software, evolved over time. However, the actual network building blocks are the same, and we enhance them on top of the existing infrastructure.

With the advent of virtual machines (VMs) and virtualized data centers, the landscape changed in the compute domain. Despite that, the networks have been slower to adapt. Networks are geographically large systems with dozens of purpose-built hardware devices connected with miles of fiber optic cables.  For an enterprise the network is critical infrastructure, and for service providers the network is their business. Upgrading these mission-critical systems while they are in use is wrought with challenges.  Additionally, these purpose-built hardware devices are not only proprietary vendor-specific implementations, they are also rigid and inflexible. Thus, network operators are at the mercy of each vendor’s upgrade cycle and roadmaps. This is often referred to as “vendor lock-in.” To make it more challenging, services are often tightly coupled to hardware devices. If you want to add a new network service, you need to qualify, test, and then integrate a new hardware device to your installed base. As an illustration of this point, AT&T has noted that their average central office has more than 300 unique hardware devices. This alone is an operational nightmare.

As the web skyrocketed, the number of Internet Service Providers (ISPs) did too, creating a large market for companies that made switches and routers.  Based on the technology at the time and subsequent technical and market forces, these hardware-centric systems grew in physical size, performance, power consumption, and price.

To achieve the levels of performance required, vendors were often forced to create custom application-specific integrated circuits (ASICS).  These complexities led to numerous vendor-specific (proprietary) implementations and management systems. As a result, the services that ran on the network were tightly coupled to the specific pieces of hardware. If a service provider, or enterprise, wanted to add a new service (e.g., VPNs, residential firewalls, etc.), this became a multi-year effort requiring both new hardware and new expensive integration efforts.

At the same time, aggressive cash-rich and nimble web or cloud companies (e.g., Google, Amazon, et al.) were introducing new services seemingly weekly. They accomplished this using Commercial Off-The-Shelf (COTS) hardware and open source software. In networking, the inflexibility, growing costs and services-hardware lock-in ignited the global innovation engine. Research projects led to the paradigm of a programmable network infrastructure, which we now know under the name of Software Defined Networking (SDN). Some of the research projects which led to SDN were:

SDN will transform the network away from specialized hardware with protocols and applications implemented for each switch/router hardware/software combination. Instead, the functionality is implemented at a higher level, using the controllers APIs independent of the underlying hardware. Instead of programming individual devices, we can now program the network.

Intro to Networking Planes

On a whiteboard, networks may be drawn as a cloud or a number of straight lines between nodes. In reality, there are three dimensions, called “planes,” of a network: the Data Plane, the Control Plane, and the Management Plane.  It is important to understand these planes and how each of them is treated in a software-defined network.

 • Data Plane

The data plane is responsible for handling the data packets and applying actions to them, based on rules that we program into lookup tables. The actions must happen at line speed, therefore we must be fast enough (e.g., 40Gbit/sec per port).  Also called the data path or the forwarding plane, the data plane takes packets in one port of a switch and sends them out another port.

Knowing what port to send them out requires input from the control plane. Once configured, packets come and go at “wire speed” (e.g., 10Gbps).  So the switch has .0000000001 second (at 10Gbps) to figure out which port to forward the packet to. If it can’t match the packet to a pre-programmed rule, it sends the packet to the control plane.

• Control Plane

The control plane is tasked with calculating and programming actions for the data plane. This is where the forwarding decisions are made and where other functions (e.g., Quality of Service, Virtual Local Area Networks, etc.) are implemented. The control plane is operating at a lower speed than the data plane. It does not operate — or need to operate — at wire speed.

• Management Plane

The management plane is where we can configure and monitor the network device (e.g., switch or router). The network device can be a shell, command-line interface (CLI) or web interface. The management plane usually runs on the same processor as the control plane.

In part 2 of this series, we’ll explain the architecture and operations of a traditional switch and how these planes are implemented in this environment.

The “Software Defined Networking Fundamentals” training course from The Linux Foundation is designed to provide system and network administrators and engineers with the skills necessary to maintain an SDN deployment in a virtual networking environment. Download the sample chapter today!