Beginner's Guide to Software Defined Networks

Textbook, 2020

52 Pages, Grade: 15













11. Introduction to OpenFlow


13. OpenFlow Messages

14. Virtualization

15. Platform uniformity improves operational efficiency

16. SDN Abstractions

17. Mininet and POX Installation

18. Bibliography

About The Contributors

Abbildung in dieser Leseprobe nicht enthalten


Figure 1. Network functionality migration

Figure 2. SDN layer view

Figure 3. Data Plane abstraction

Figure 4. Control Plane abstraction

Figure 5. Management Plane abstraction

Figure 6. Traditional Network

Figure 7. Software Defined Network (SDN)

Figure 8. Fully centralized control plane

Figure 9. Semi/logically centralized control plane

Figure 10. Fully distributed control plane

Figure 11. SDN Architecture

Figure 12. Flow Rule example

Figure 13. Software SDN Switch

Figure 14. Hardware SDN Switch

Figure 15. Flow Table structure

Figure 16. Flow Table entries

Figure 17. SDN Controller structure

Figure 18. SDN Controller details

Figure 19. SDN Controller Northbound API

Figure 20. OpenFlow development

Figure 21. OpenFlow structure

Figure 22. OpenFlow switch flow table header-match field entries

Figure 23. OpenFlow switch packet flow

Figure 24. OpenFlow switch V.1.0

Figure 25. OpenFlow controller-switch protocol session

Figure 26. NFV-SDN top view

Figure 27. NFV framework

Figure 28. Virtualization with OpenFlow and NOS


Table 1. SDN Plane details

Table 2. Technology Evolution

Table 3. Networking Evolution

Table 4. SDN use cases

Table 5. Examples of Existing SDN controllers

Table 6. OpenFlow compliant switches available

Table 7. OpenFlow message types

Table 8. OpenFlow compliant controllers available

Table 9. NFV device examples

Table 10. NFV advantages

Table 11. NFV challenges

Table 12. Mininet python API features


SDN need can be explained with the help of real life analogy corresponding to water supply system. Water reservoir has pipes (data cables) attached to it to carry water (data) to the destination. Water regulation is done with the help of numerous valves (routers and switches).

Plumber (network admin) is the in charge of addition, up gradation of pipes and valves. As the pipe changes, corresponding valves need to be changed. This is costly and time consuming process, which causes lot of overhead in case of frequent infrastructural updates as the valves need individual-manual intervention. Bulk updation may cause installation errors or are more likely to faulty installations.

Considering the above scenario it is desirable to have remotely controlled updation (increased width, new connections, extensions etc) regarding the pipe (data cables) & valves (switches and routers). So if this analogy is applied to real networking scenario, the SDN concept comes in picture. SDN provides programmable switches & routers which can be controlled remotely and will not require any manual intervention[1, 2, 3].


Telephone network was the only giant network during rise of 20th century. Because of circuit-switched connection oriented nature, it had to be centralized. This fact made it vulnerable to easily interruptible in case of war. To overcome this, a researcher Polish by birth working at Rand Corporation in US during 1960s, tried to bundle phone conversion voice signals in data packets1. These data packets were made to find their way to recipient on their own through network. As packets are travelling autonomously, even if some of their path, on the way to recipient, gets interrupted during war they can reroute. Paul’s work was implemented in ARPANET though it was not recognized as networking paradigm. So this was connection free.

Commonly networks are managed through consoles by using heavy commands. This is not a very user friendly task and needs expertise. So the need of software based control was much in demand20.

The above two scenarios, kind of, paved ways for Software –defined Network (SDN).

Abbildung in dieser Leseprobe nicht enthalten

Figure 1. Network functionality migration1


Software defined networking (SDN) is a networking technique to

1. Disintegrate control plane & data(forwarding) plane in the network
2. Allow use of open protocols to control network switches & routers using software controls
3. Abstract infrastructure as per application and network services requirements

There by implement network management and control through software. So here word software means that network devices are programmable and not everything is centrally controlled by software.

The approach helps to achieve network & infrastructure manageability, control plane modularity, cost-effectiveness, generalized data planes and adaptable network, making virtualization easy to implement as per need of the hour.

Abbildung in dieser Leseprobe nicht enthalten

Figure 2. SDN layer view2

SDN yields a network infrastructure a network which will be programmable. That inherently qualifies for control to be shifted to software and network flow and network devices to be operated by software programs. A network engineer must now be able to re-program instead of re-build the network infrastructure manually.

The advantages of software control are:

- Future costs efficiency.
- Device capabilities will be optimally explored by applications.
- Networks can easily be re-configured w.r.t. resource requirements of different applications.
- Optimized resources and bandwidth utilization .
- Dynamic traffic shaping.
- Transparent and flexible operational strategy.
- SDN approach facilitates runtime switch configuration
- On demand bandwidth requirements are fulfilled
- Vendor dependency is minimized by supporting open source technology
- Porting from hardware to software eliminates locking with vendor specific hardware technology
- Minimal hardware dependency paves ways to support “Bring Your Own Device” ( BYOD ) and IoT technologies.


Software Defined Network terminologies are as follows[1, 2]:

1) Forwarding Devices (FD):

Forwarding devices are data plane devices with predefined forwarding rules. Rules are used for routing packets to recipients. Rules are formed by southbound interfaces to be installed in devices by SDN controllers. Open protocols are needed for above work to be carried out. The examples of such protocols are OpenFlow, protocol oblivious forwarding (POF), ForCES.

2) Data Plane (DP):

Data plane is the group of coupled forwarding devices. Coupling is done using wireless or wired approach. Accordingly, radio channels or cables are employed.

Abbildung in dieser Leseprobe nicht enthalten

Figure 3. Data Plane abstraction2

3) Southbound Interface (SI):

Southbound Interface consists of API(Application Program Interface) to form routing rules. It has a platform to structure protocol which decides control and data plane component communication ways.

4) Control Plane (CP):

As the name suggests it’s a brain like structure consisting of entire logic to successfully drive network activities. Various applications and controllers are its basic elements.

Abbildung in dieser Leseprobe nicht enthalten

Figure 4. Control Plane abstraction2

5) Northbound Interface (NI):

Northbound Interface provides abstraction platform for the rule formation required by Southbound Interface. It provides low level instructions to build rules. So it is a developing applications interface in form of API.

6) Management Plane (MP):

As the name suggests Management Plane is a policy maker component. Policies are defined related to monitoring, routing, firewalls, load balancers etc. regarding the way of working. These in turn decide the behavior of forwarding devices.

Abbildung in dieser Leseprobe nicht enthalten

Figure 5. Management Plane abstraction2

Table 1. SDN Plane details[1, 2]

Abbildung in dieser Leseprobe nicht enthalten


Commonly networks are managed through consoles by using heavy commands. This is not a very user friendly task and needs expertise.

Today’s networks need speed, flexibility, automation, interoperability, scaling along with cost effectiveness. Limitations of existing networking scenario to be overcome is as follows [3, 4, 5]:

- Increased complexity level

Greater availability of network resources with variations and versions contributed to increased network complexity.

- Consistency discrepancy

Increased network sizes have thousands of network devices employed. Policy updates require large manpower &/or money power in such scenario. But updates may be largely inconsistently done. If any application is removed, the related policies must be refreshed at every location which is a huge and error prone task currently.

- Non scalability

As the number of network users are increasing day by day, the services and accordingly bandwidth requirement is on rise. Traditional networks are designed in such a fashion that to incorporate new services lots of planning and structural changes are required. So rigidity of scalability is main concern of traditional network architecture.

Abbildung in dieser Leseprobe nicht enthalten

Figure 6. Traditional Network5

Abbildung in dieser Leseprobe nicht enthalten

Figure 7. Software Defined Network (SDN)5


In the beginning of computer era, the individual computing machines of giant size existed without networking. As there was no connection between machines, data transfer and sharing were done with the help of external devices like magnetic tapes. Following tables show the technology evolutions and SDN case studies implemented successfully.

Table 2. Technology Evolution21

Abbildung in dieser Leseprobe nicht enthalten


To implement SDN main tasks to perform are1:

1. Separation of Planes
2. Simplification of Device
3. Control Centralization
4. Automation of Network
5. Network Virtualization
6. Openness of interfaces

1. Separation of Plane

Foundation of SDN architecture is to have both planes, control and data, separated.

The ways in which this can be achieved are:

i) Fully centralized
ii) Semi/logically centralized control plane
iii) Fully distributed control plane

1.1 Fully centralized control plane

Only one device will control all data planes. So in case of control failure, only a single point needs to be inspected. But the disadvantage is of horizontal scaling, as a single device will have control limitations. Hence this way is mostly adapted for experimental SDN set-ups. The reconfiguration ease is the biggest advantage of this strategy.

Abbildung in dieser Leseprobe nicht enthalten

Figure 8. Fully centralized control plane19

Abbildung in dieser Leseprobe nicht enthalten

1.2 Semi/logically centralized control plane

Abbildung in dieser Leseprobe nicht enthalten

Figure 9. Semi/logically centralized control plane5

Forwarding tables are computed by remote controller by coordinating with local control agents (CAs) located in routers. This strategy yields ease of horizontal scaling. The control device is logically replicated for the data planes. Synchronization of each instance of control device will be a time consuming process.

1.3 Fully distributed control plane

Each data device gets either physical/logical instance of control plane. This forms a fully distributed strategy which is difficult and time consuming to configure, but highly immune to failures and needs new device for horizontal scaling.

Abbildung in dieser Leseprobe nicht enthalten

Figure 10. Fully distributed control plane19

2. Simplification of Device

Traditionally a device containing software to control forwarding is used along with data device underneath to compute routing table. This makes the device autonomous control unit. But with autonomy comes the complexity. So the first thing done to reduce it is to simplify device by separating software from it.

3. Control Centralization

The software removed from device in above step will be placed in some central controller. This helps simplified device to quickly decide about packet deliveries. Central control will be dealing with all the data devices.

4. Automation of Network

SDN controller has an open interfaces. They are used to control network automatically. These open interfaces are named as northbound (upside) and southbound (downside), as per the direction they are working in. Northbound interface communicate and control applications. Southbound interface communicate and control devices. Southbound interface is majorly implemented using a standard framework called as OpenFlow. The corresponding northbound interface has no such standard defined. Northbound interface allows various programs to be installed on controller which will in turn help network work with greater productivity. These programs can configure network as per infrastructure requirements. This provides faster network upgration service.


Excerpt out of 52 pages


Beginner's Guide to Software Defined Networks
Catalog Number
ISBN (eBook)
ISBN (Book)
SDN, smart networks, programmable networks
Quote paper
Prof Sheetal Thakare (Author)Dr. M.A. Pund (Author)Prof. Anand A. Chaudhari (Author), 2020, Beginner's Guide to Software Defined Networks, Munich, GRIN Verlag,


  • No comments yet.
Read the ebook
Title: Beginner's Guide to Software Defined Networks

Upload papers

Your term paper / thesis:

- Publication as eBook and book
- High royalties for the sales
- Completely free - with ISBN
- It only takes five minutes
- Every paper finds readers

Publish now - it's free