The last session of Ethernet Summit posed several interesting questions to the panelists, which included: David Meyer, David Ward, Pascale Vicat, Recep Ozdag and yours truly. Now that Open Daylight is public I’d like to share and expand on some of the answers I gave last week at the Ethernet Summit.
So, what is Software Defined Networking?
David Meyer gave a good definition for the controller part of SDN (Software Defined Networking) at last week’s Ethernet Summit. In summary, SDN provides a control mechanism for a spectrum of underlying network planes, including: Data plane – controller has direct control of the switch’s forwarding plane, through a protocol, such as Open Flow; Control plane – controller has influence over the switch’s distributed forwarding plane, through proprietary or IETF protocols, such as Interface to the Routing System (I2RS), Path Computation Element Communication Protocol (PCEP); and finally Overlay plane – controller has direct control of a distributed overlay virtual Ethernet switch’s forwarding plane, through either proprietary or OpenFlow protocols, an example is IBM’s Distributed Overlay Virtual Ethernet (DOVE) network technology.
In the Data Center, I would add one more plane to the left of Meyer’s list above: Link plane – controller has influence over the configuration of each of the switch’s links. Today this includes link-level discovery (LLDP) and data center bridging exchange (DCBX) protocols, along with the link level configuration each provides (e.g. flow control, bandwidth allocation and congestion management).
For SDN to succeed, I would highlight to the definition above several key aspects: a widely adopted API ecosystem that can be used by Applications (Apps) residing inside and outside the controller. Those APIs obviously need to enable Apps to configure and monitor network elements, but one could argue SNMP can be used for that. The APIs need to go further and allow Apps to: create multi-tier virtual systems, including all the linkages between compute tiers and network appliances (e.g., firewall, load balancer or intrusion prevention system); configure those tiers and network appliances; and use real-time feedback to maintain the Service Level Agreements (SLAs) required by the Apps.
What is the state of Open Software Defined Networking today?
SDN is in the early adoption phase today, but it is no longer technologies for companies that can spend significant resources in developing their own networks (e.g., Google, Microsoft). Instead smaller companies, such as Tervela and Selerity are using IBM’s SDN solutions in production environments today.
However, one of the issues SDN has faced is the lack of a widely available, common platform that application and appliance developers can focus on. In my view, Open Daylight addresses this need. In this sense, Open Daylight is analogous to Linux.
In the x86 world, prior to Linux, we had proprietary operating systems (OSs), with a mix of proprietary and “open” APIs — where the definition of each OS would have a different set of “open” APIs, making App porting cumbersome. Most application (App) developers only had access to the “open” APIs. Additionally, if clients or App developers wanted a new function supported in the operating system (OS), they had to wait for the OS vendor to prioritize the function into their release roadmap.
Linux provided a single code base that was open to the Linux community. If clients or App developers wanted a new function, they or others in the community could code it and if accepted by the Linux community, it became available. More importantly, Linux provided an open API eco-system for App developers to focus on.
The current networking world is in a state similar to where the x86 world was in the 1990s. Network switches have a completely closed OS. They also do not provide a common API ecosystem that App developers and Network Appliance vendors can focus on.
SDN has attempted to solve this problem, but today there are many SDN OS platforms to choose from, each with its own set of proprietary extensions. This too is similar to where the x86 world was in the 1990s. Given all the top-down support from network, OS and system companies, Open Daylight offers a single OS code tree, with a common set of APIs, thus enabling a truly open, common API eco-system for App developers to focus on.
Renato Recio is an IBM Fellow & CTO of IBM System Networking, specializing in System I/O and Network Architecture, Strategy, and Standards. For the past 15 years Renato has played a leadership role in the strategy, architecture and design of future IBM system I/O and Networks. He is currently responsible for cross-IBM Data Center and Virtual Switch Networking product strategy and roadmap.
To effectively compete in today’s changing world, it is essential that companies leverage innovative technology to differentiate from competitors. Learn how you can do that and more in the Smarter Computing Analyst Paper from Hurwitz and Associates.