Software Defined Networking (SDN) refers to the network architecture model that allows programmatic management, control and optimization of network resources. SDN decouples network configuration and traffic engineering from the underlying hardware infrastructure to ensure holistic and consistent control of the network using open APIs.
The exploding volumes of data traffic, complex network architecture and growing demands to improve network performance renders the traditional approach to network management as obsolete. Traditional network architecture offers minimal flexibility to coordinate between fixed function network devices that must be configured manually. A single change can have a cascading effect on the network performance and has the potential to bring down the entire network.
It is the static nature of the traditional network architecture model that fails to meet the demands of a modern business IT. Organizations require network infrastructure to allow the flexibility to scale and support dynamic computing environments based on rapidly-evolving technology and business landscape. Software Defined Network offers the following key characteristics to address these concerns:
-
Decoupled Architecture Planes
A classic communication network architecture consists of three main components: data plane, control plane and management plane. Control Plane refers to the network architecture component that defines the traffic routing and network topology. Data Plane is the network architecture layer that physically handles the traffic based on the configurations supplied from the Control Plane. The Management Plane takes care of the wider network configuration, monitoring and management processes across all layers of the network stack. In the traditional network architecture, control plane and data plane are integrated and any changes to the system are dependent upon physical network devices, the protocols and software they support. Limited changes can be performed to the overall system as the network devices bottleneck logical network traffic flows. Devices function autonomously and offer limited logical awareness toward the wider network.
In contrast, SDN decouples the Control Plane from the Data Plane and centrally integrates the network logic at the controller level. A controller separated between the two Planes logically centralizes the network intelligence such that users can choose which programmable features can be moved from network devices onto the application server or controller.
The logically centralized and decoupled controller operations allow organizations the enhanced agility to automate, extend, monitor, maintain, manage, extend, provision and troubleshoot the network infrastructure. Applications interact directly with the controller to obtain a global view of the network state. The dynamic, scalable and flexible network infrastructure leads to simplified operations and the ability to test new business opportunities that are otherwise limited due to network architectural bottlenecks. -
Network Programmability
Imagine programming 10 routers, one by one and then keeping track of how every device was configured and supposed to behave. Scale it to hundreds and thousands of devices, and the manual processes involved in device monitoring, configuration and management are rendered ineffective. Even the network management systems (NMS) won’t suffice to eliminate network bottlenecks, errors and performance issues.
With SDN algorithms, the number of repeatable device configuration and management processes is not a limitation. An SDN would see 1000 routers in a similar way it sees 10 routers and algorithms can incorporate the changing dynamics of the network configurations realized in scaled environments. The SDN capability essentially lets sysadmins tell the network “what to do” in response to network changes or dynamic traffic flow patterns.
Additionally, network programmability is key to achieve global optimization toward a consistent network-wide state. Networks don’t converge to a single state when each component is programmed individually without awareness of the surrounding network environment, state and configuration patterns. SDN lets users replace local optimization with a logically centralized intelligence and control of network resources. The underlying dependencies and limitations don’t apply (at least in the same way) considering the decoupled nature of Data and Control Plane components of the network architecture. Instead of having to tweak settings on hundreds of individual management consoles, applications can interact with the appropriate network devices through APIs and maintain consistent overall network performance, functionality and control.
-
Openness and Interoperability
Vendor interoperability and network integration is a primary criterion for network traffic engineering – ranging from device planning and purchase to configuration and management. Vendor neutrality allows organizations to optimize infrastructure investments for technical and business requirements. Consider the two layers of SDN interoperability: the infrastructure and the service. At the infrastructure layer, SDN supports standard protocols for communication between devices from multiple vendors and maintain a common software environment. At the service layer, SDN manages infrastructure-wide organizational policies, systems and network applications. These can be divided into multiple open and modular dimensions.
In an SDN system, the open network orchestration, service and network management systems simplify deployment. For instance, RESTful APIs can be used for communication via open protocols supported by all network device vendors. As a result, the network infrastructure is easy to extend and the overall system doesn’t run into network performance and scalability bottleneck. The architecture abstraction layer allows controllers to manage traffic easily using open standards such as OpenFlow or other extensible protocols. Finally, the SDN controller platform itself operates as an open system that allows users to extend functionality, add applications via APIs or modules to perform specific network management functionality.
A Few SDN Misconceptions
SDN represents significant architectural change over traditional networking infrastructure. However, the technology doesn’t require organizations to disrupt their existing network and replace it with entirely new hardware and software resources that constitute SDN. In fact, organization can begin with specific SDN use cases such as optimizing the network by monitoring and identifying account affinities, access control limits or orchestrating specific workloads as they adopt the technology at scale. In essence, SDN doesn’t replace traditional networking devices or only apply to switches through automation. Instead, SDN only reshapes the architecture to enable centralized control with multiple levels of automation across the network.
The Open Networking Foundation identifies three main parts of the SDN: Application layer; Control layer and Infrastructure layer. The major architectural difference between SDN and traditional network infrastructure are identified within the Control and Infrastructure layers. However, it’s the SDN programs within the Application layer that define the new approach of data communication between controllers and services that run over the network.
Therefore, the Controller and centralized Control Plane define how SDN is different from traditional network architecture and technologies at the Application layer are responsible for realizing those difference into performance improvements that translate into tangible business results.