Home > What is SDN?

What is SDN?

Most traditional devices use a distributed architecture, in which each control plane is resided in a networking device. Each device will make its own decision. Therefore they need to communicate with each other via messages to work correctly.

In contrast to distributed architecture, centralized (or controller-based) architectures centralizes the control of networking devices into one device, called SDN controller. This is also the main idea when creating SDN. In other words, SDN creates a king to control the whole networking kingdom!

king_chess.jpg

Software-Defined Networking (SDN) is an approach to networking that centralizes the control plane into an application called a controller. Therefore a big advantage of SDN is we do not have to manually configure each device or each interface. We just plan a policy framework, and the SDN controller configures all related underlying devices. This approach is faster, more reliable and reduces errors.

Northbound and Southbound Interfaces

As we took the control planes off networking devices but not data planes so we need a way to communicate with them. So we put a southbound interface (SBI) at the bottom of SDN controller for this task. An SBI communicates with the devices via an application programming interface (API).

SDN_controller_based_architecture.jpg

Now, in turn, the networking administrators and SDN applications want to control the controller! So the controller need a northbound interface (NBI) to communicate with the administrators.

Northbound_Interface.jpg

The NBI applications included various network services, including network virtualization, dynamic virtual network provisioning, firewall monitoring, user identity management and access policy control.

Application Programming Interfaces (APIs)

So we already knew there are two interfaces in the SDN controller, which are northbound and southbound interfaces. These two interfaces communicate with administrators and networking devices via Application Programming Interfaces (APIs).

An API uses client/server architecture in which each operation needs a client and a server. The server sends the data while the client receives the data. 

Southbound_Northbound_APIs.jpg

Northbound APIs

SDN northbound APIs are usually Representational State Transfer (RESTful) APIs, which are used to communicate between the administrators’ applications and the SDN Controller. With northbound APIs, the applications that the administrators use to configure the controller are the server, the SDN controller is the client.

Note: RESTful APIs are the most commonly used APIs in the world of web services. They use Hypertext Transfer Protocol (HTTP) requests to create, read, update, and delete (CRUD) data. We will have another tutorial for RESTful APIs so we will not mention more about it here.

Another northbound API is Simple Object Access Protocol (SOAP).

Southbound APIs

With the southbound APIs, the SDN controller is the server while the networking devices that receives configuration from the controller are the clients.

OpenFlow and NETCONF are Southbound APIs used for most SDN implementations. Another Southbound API is OpFlex, which is an open-standard, distributed control system. It send “summary policy” to network elements.

Benefits of SDN

1. Simplified Network Management and Configuration

By offering a centralized control plane, SDN solution helps simplify the network management and configuration compared to a traditional network, which requires lots of manual configuration and management device-by-device.

2. Programmability and Automation

SDN allows network administrators to programmatically control and manage the network using software applications. This programmability enables automation of network tasks, reducing the need for manual intervention and minimizing the potential for human errors.

3. Improved Network Visibility

SDN provides enhanced visibility into network traffic and performance through the centralized controller. This visibility enables better monitoring, analysis, and troubleshooting of network issues, leading to improved overall network performance.

4. Scalability

SDN is inherently scalable, making it well-suited for environments with varying workloads. As network demands change, SDN can easily scale to accommodate increased traffic and the addition of new devices and services.

5. Vendor-Neutral Environment

SDN promotes interoperability and reduces dependency on proprietary hardware and software. This vendor-neutral approach allows organizations to choose networking hardware and software components independently, fostering innovation and competition.

6. Security Enhancements

SDN can improve network security by providing a centralized point for monitoring and enforcing security policies. The ability to program security protocols and responses into the network fabric enhances threat detection and mitigation.

Comments (0) Comments
  1. No comments yet.
Add a Comment