In 2008, initial excitement and discussion in the network industry was triggered through a Stanford research paper unveiling OpenFlow as an alternative approach to how network products could treat traffic flowing over a network. The promise of an OpenFlow network was:
- to enable a network that was defined, managed and measured through a centralised controller;
- to tie network traffic flows to business policy; and
- to respond to changing business conditions
OpenFlow focused on defining a software controller that could understand the network components and dynamically react to changing conditions. After an explosion of excitement and big sky thinking compared with traditional network approaches, products leveraging these approaches have resulted in new standards bodies, protocols and product efforts looking to define approaches and implementation for such a software controller. The collection of systems that have resulted since the OpenFlow software controller was proposed, have revealed an evolution of network thinking that can be categorised as Software Defined Networking (SDN).
SDN was a response to increasing complexity of network designers and vendor approaches to system and product design. The trend was towards obscuring network control through centralisation of network resources and proprietary protocols that introduced risk in changes to those systems. SDN shifts network thinking into programmable and composable components, through open protocols and communication to create an overall system. SDN focuses on evolving network design and enabling a supporting set of technologies that allow operational changes to the network with reduced risk at increased speed.
SDN technologies allow changes using programmatic, system to system data exchange via an open communication method. The principles of SDN technologies can be summarised by the following:
- Decentralised: distributed network design, where discrete components are scaled out in preference to scaling up systems
- Composable: discrete components can be configured to connect to each other in varying ways that offer flexibility of service
- Open: control-plane access is available via API, allowing access to system configuration, measurement and operational data
- Programmatic: removes reliance on manual CLI commands and creates opportunities to define automated policies through orchestration
The focus on creating a software controller has opened a wider change to network infrastructure. The network is no longer a brittle enterprise component that can only be changed with risk, but is accessible via open methods and designed to tolerate change. Software Defined Networking has changed to become a part of the automated organisation’s infrastructure by rejecting opaque system design or inflexible change models that introduce complexity to automation development and change implementation. Enterprises are now being challenged to define their network strategy in terms of an automated infrastructure that leverages the possibilities triggered by Software Defined Networking.