Software Defined Networking (SDN) simplifies network operations, increase agility, and accelerate deployment of new services without sacrificing security and control. SDN is a solution for the explosive increase of media consumption and fast-growing popularity of cloud-based applications.

As conventional network architectures unable to meet the needs of today’s businesses and end users, the key benefits for a Network Operator are:

- Lower cost networks
- More efficient use of optical transport and router resources
- Faster provisioning of services and applications
- Reduction in operating expense
- Increased reliability


SDN provides a new way to design, build and operate networks based on the following three key principles:

1.

Separation of the network’s intelligence (control plane) from the forwarding infrastructure (data plane).

2.

Providing a (logically) centralised view of the overall physical network.

3.

Abstraction of the underlying network infrastructure from the applications by using Application Programming Interfaces (APIs).


The principles above provide an unprecedented programmability, automation, and network control, which in turn enables the construction of highly scalable, flexible networks that easily adapt to changing market needs.

The ultimate goal of Software Defined Networking is to massively simplify network operations, increase agility,and accelerate deployment of new services without sacrificing security and control.

The high-level architecture of a software defined network is shown in the opposite figure.

Figure3

Components of a SDN Network

Software Defined Networking can mean different things to different people. We have adopted the following definitions which are better understood with reference to the simplified SDN-based network architecture shown in the opposite diagram.

1. Network Devices

In a telecoms network these are the physical or virtual switches which define the forwarding plane of the network. In a heterogeneous network they may include wireless access points, computing resources, sensors, etc.

2. Southbound API

The network devices are connected to the SDN Controller via an Application Programming Interface (API). OpenFlow is an open source Southbound API used in several commercial implementations. Proprietary southbound APIs can be also defined.

3. Controller

The SDN controller is the brain of the network which controls all underlying physical or virtual network devices (or both). OpenDayLight and ONOS are two of the most popular open source SDN controllers supported by many industry players.

4. Northbound API

This interface allows the Applications and Services to gain access and program the network devices via the Controller.

5. Applications & Services

This is the programmable layer of the network. The most common services discussed in these environments are:
- Network virtualisation
- Network monitoring and provisioning
- Data flow balancing
- Security services (e.g. intrusion detection)

6. Automation and Orchestration

The ultimate goal of a programmable network such as SDN is to tie it into an automation software stack to fully enable a cloud-like infrastructure.

Figure4