Design &
of Software-

Network & its components

We Will Write a Custom Essay Specifically
For You For Only $13.90/page!

order now

                         Shivam Verma

       School Of IT

                                                 Illinois State University

[email protected]



In this paper, I have designed and
implemented the software-defined network with its components like programming
nodes, sensor nodes on data plane, controller etc. For network control, the
centralized controller node is configured and for transferring the packets, the
sensor nodes are utilized. Hence, the goal of this paper is to design and
implement SDN and its components. This paper also describes the SDN
architecture in two ways. First is the high-level descriptive overview and the
second describe the essentials of the architecture.




Because of high
flexibility, Software-defined Networking (SDN) will be widely used in the
future generation. SDN has been deployed in many companies like Google, Amazon
etc. in their data center. In SDN the data plane and the control plane are
decoupled, and switches are made free from complex routing computation and are
more concerned in forwarding the packets. In the traditional computer network,
switches perform network routing with the help of built-in routing logic
whereas in Software-Defined Network (SDN) they don’t have such power 1. Instead
of this, the logic is extracted and forwarded to the SDN network controller
which in turn form the required programmable algorithm.



 2. Principles
and Architectural components


 The following defines the architectural
components which are used in the defining the SDN. They are-

SDN Application (SDN App): SDN Applications are programs that are used to communicate with the control layer via Southbound
Interface. For the internal decision-making purposes, they may also
abstract an abstracted view of the network.

          An SDN Application comprises of one SDN Application
Logic and at least one Northbound Interfaces (NBIs) drivers.

SDN Controller: The SDN Controller is a centralized
system which is responsible for translating all the requirements from the SDN
Application layer to all the SDN Data path, also provide the SDN Application (SDN
Apps) the abstract of the network, this view may also include all the
statistics and the events.

Controller consists of CDPI Driver, SDN Control Logic and at least one   

Interfaces(NBI) Agents .

SDN Data path:  It
is a network device in a Software-defined Network whose representation is a
software based. They are implemented in the devices like switches that are
responsible to move data packets on the network. They play a important role in
communicating with the control plane and the application plane layers.

                  SDN Data
path consists of a CDPI agent and a set of one or more traffic sending engines
and activity handling functions. The functions and the traffic sending engines
may also include simple sending of the data path’s external interfaces or
internal activity handling functions. One or more SDN Data paths may be defined
in one single network elements or in multiple physical network elements.

SDN Control to Data-Plane
Interface(CDPI): The
SDN Control to Data-Plane Interface can be defined as an interface between SDN
Controller and an SDN Data path which support and gives control to all the
moving forward operations, capabilities, reporting of statistics and
notification of events.

SDN Northbound Interfaces(NBI): The SDN Northbound Interfaces can
be defined as the interfaces between the SDN Applications and SDN Controllers.
Other than this they also provide an abstract network views and provide the
best network decision and requirements. This type of abstraction can be found
at both level of latitude and longitude i.e. level of abstraction and different
levels of functionality.

Interface Drivers & Agents: A driver-agent pair is required
for the successful implementation of each interface. The agent represents the
southside or the bottom of the network and the driver represent the northern or
the top side of the network.

Management & Admin: All the static tasks that occur
outside of the control, application and data planes are handled by the
management plane. For example: Business relationship management, assign
resources, equipment setup, configurations of various entities. Each business
entity has its own entities of management. One of the limitation of this SDN
Architecture is the communication between different management entities.



3. SDN


section describes the SDN architecture in two ways. 3.1
is the high-level descriptive overview and 3.2 describe the essentials of the



3.1   Descriptive


point of SDN is to give open interfaces that empower the improvement of
programming that can control the availability gave by an arrangement of system
assets and the stream of system activity however them, alongside conceivable
investigation and adjustment of movement that might be performed in the system.
The four main pillars 23 of SDN include:

•    Separation of control and data planes

•    The  
network   devices   can  
be   programmed through software applications
and/or application programming interfaces (APIs)

•    Logical centralization of (possibly
physically distributed) network   control
(e.g.,   routing   logic, bandwidth assignment) logic to an SDN
controller which has global view of data flow across network.

•    Forwarding decisions are flow-based (stream
of packets) rather than packet-based.

3.1 introduces the basic overview of Software-Defined Network. The basic view
consists of data plane, control plane ,and an application plane. The data plane
layer or the infrastructural layer comprises of network elements or the
forwarding devices, which interact with the control plane or control layer
through a southbound interface from the controller which is also known as the
control-data plane interface 4.  In the
Application layer, the SDN Applications exists which communicate to the network
requirement through the controller with the help of the northbound interfaces,
primarily known as NBIs. Then in the between of the data plane layer and
application layer exists the control layer where the SDN Controller translates
the network applications requirements and give relevant information to the SDN
applications (SDN Apps). The basic concept of the data plane in the SDN
Architecture comprises of the traffic forwarding and processing functions.


                             Figure 3.1   Overview
of Software-Defined Networking Architecture


Concise statement of architectural essentials


        Figure 3.2 describes the major
components and the interfaces of the SDN architecture. In this SDN Architecture,
there is no physical realization of the components.


Data Plane


The data plane comprises of one or more network elements or
the forwarding devices and each of consist of traffic sending and all the
resources required for the traffic processing.




The controller plane comprises of SDN Controller or network
controller which translates
the network applications requirements and give relevant information to the SDN
applications (SDN Apps).


Application Plane


The application plane comprises of one or more applications
which have the control of resources which are given and exposed by the one or
more SDN Controllers.




The basic functionality of the manager is to give and
provide resources from the particular client in the lower plane to the client
entity in the higher plane.




Each entity in the north and south plane or layer belong to
the different administrative domain and it’s the duty of the manager to provide
appropriate administration domain to a different entity.



                                Figure 3.2 SDN Overview, with physical data





 The OpenFlow is the standard
interface or the APIs used between the control plane and the data
plane(forwarding layers) of the SDN Architecture. An open flow protocol is a
standardized protocol for interacting with the forwarding behaviors of switches
from multiple vendors. No other standard protocol can do what OpenFlow can do.
The protocol is implemented on both the SDN Control software and also on the
network infrastructure devices. OpenFlow identifies the network traffic based
on the pre-defined match rules that can be made or programmed by the SDN



According to the OpenFlow protocol, the SDN enabled switch
has to register all its status and configurations before it will be able to
forward the packets in the network. During this registration process and
configuration process, the SDN Controller builds a topology for the entire


4.1 Benefits of OpenFlow-Based
Software-Defined Networks


Few of the benefits are described below and they are 5:


control of multi-vendor environments: SDN control software can control
any OpenFlow enabled device from any vendor, they can use any SDN-based
management oriented tools to quickly configure and update any devices in the
entire network.

complexity through automation: OpenFlow based SDN gives a network
automation and management framework which make it possible to automate all the
tasks which are done manually today. This process of automation will reduce all
the operational overhead, decrease network instability which occurs due to the
operator error etc. It will also increase business agility by using the SDN, cloud-based

rate of innovation: It offers various business
innovation at real time to meet the business needs and user requirements. By
virtualizing the network, it gives the ability to control the behavior of the
network and can introduce new services and control the network capabilities in
only few hours.

network reliability and security: OpenFlow based SDN provides IT to
develop high-level configuration which is then translated with the help of the
OpenFlow protocol and policies. An OpenFlow-based SDN completely remove the
need for configuring the network devices each time, which help in reducing the
chance of network failures due to the configurations.

granular network control: OpenFlow based SDN defines a flow-based
control model which helps IT to apply policies at a very granular level. This
flow-based control provides cloud operators to support multi-tendency even if
they are controlling traffic, security etc.

user experience: By centralizing the whole network
and providing state information available to a higher-level application. Also
with OpenFlow-based SDN, the video application will be able to detect the
bandwidth which is available in the network in real time and automatically
change and adjust the resolution with respect to the bandwidth.




Few of the challenges which are been
faced are:


Switch Designs

currently available OpenFlow switches are very diverse and pose differences in
terms of performance, control channel throughput, interpretation of particular
protocol and architecture.

has provided an impact on the accuracy and performance of switches. One
approach to fix this problem is to use NOSIX 6, it is an API that is used to
separate the application expectations from the switch. For doing this NOSIX has
a pipeline of various switch drivers and flow tables.


2.      Controller

SDN model controller is the most important pillar of the architecture. As a
result of this efforts are given to increase the performance of the SDN
Controllers and to make it more scalable, highly available and a programmer-friendly



3.      Resilience

resilience of SDN is a challenge due to the various possible failure present in
the different pieces of the SDN Architecture. Google B4 7 is one of the
examples that have provided evidence and proven that SDN can be resilience.


4.      Scalability

of the major concerns of SDN network is the Scalability. The major scalability
problems are related to the decoupling of the control plane and data plane. As
a result, various scaling concerns protocol has been provided including
DevoFlow, DIFANE, Onix, HyperFlow etc.






In this paper I have
explained the SDN Architecture with two ways and how the implantation will
impact the network and how it is giving rise to the current research problems
and what all challenges are being faced or will be faced. Also, an API protocol
known as OpenFlow was also explained, how an OpenFlow based SDN is beneficial and
how it is impacting the IT world.





1 D. Kreutz, F. M.
V. Ramos, P. E. Verissimo, C. E. Rothenberg, S. Azodol-molky, and S. Uhlig,
“Software-defined networking: A comprehensive survey,”Proc. IEEE, vol. 103, no.
1, pp. 14–76, Jan. 2015.


2 L.  Cui, 
F.  Yu,  and 
Q.  Yan,  “When 
Big  Data  Meets 
Software-Defined  Networking:  SDN 

Big Data and Big Data
for SDN,” IEEE Network,  vol. 30, no. 1,
2016, pp. 58–65


3 D. Kreutz et al.,
“Software-Defined Networking: A Comprehensive Survey,”Proc. IEEE, vol. 103,

no. 1, 2015, pp.


Software-Defined Networking: The New Norm for Networks (2012), available at




6 M. Yu, A. Wundsam, and M. Raju,
“NOSIX: A lightweight portability layer for the SDN OS,” SIGCOMM Comput.
Commun. Rev., vol. 44, no. 2, pp. 28–35, Apr. 2014

7 S. Jain, A. Kumar, S. Mandal, J.
Ong, L. Poutievski, A. Singh, S. Venkata, J. Wanderer, J. Zhou, M. Zhu, J.
Zolla, U. Holzle, S. Stuart, and A. Vahdat, “B4: experience with a
globally-deployed software defined wan,” in Proceedings of the ACM SIGCOMM 2013
conference on SIGCOMM, ser. SIGCOMM ’13.New York, NY, USA: ACM,2013, pp. 3–14