Skip to main content

What is SDN?


Software-Defined Networking is defined by “the decoupling of control and packet-forwarding planes in the network”.

TRADITIONAL NETWORK
The static architecture of traditional networks is
  • Decentralized
  • Complex
  • Hardware-based

LIMITATIONS OF TRADITIONAL NETWORK

  • Only dedicated devices can be used

Devices built for this sole purpose are only used

  • Flexibility is a challenge

Adaptability of the network is limited

  • Inability to scale

It is difficult to add or remove devices in the network

  • Vendor lock-in

The devices manufacture by a single manufacturer should be used throughout the network

SOFTWARE DEFINED NETWORK 

  • The networks are directly connected to applications through application programming interfaces (APIs) 
  • It improves application performance and security
  • It helps in creating a flexible, dynamic network architecture that can be changed as needed

SDN ARCHITECTURE


CONTROL PLANE

The control plane is frequently used for managing device configurations that are remotely connected to a software-defined network. It contains the controller of the network.

DATA PLANE

The data plane or infrastructure plane forwards traffic to its desired destination. Before traffic reaches the data plane, the control plane dictates what path flows it will take by using the flow protocol. It contains the network devices.


INTERFACES / APIs


  • North-Bound API helps in communication between Application Layer and Control Layer
  • South-Bound API helps in communication between Data Layer and Control Layer
  • East-West-Bound API helps in communication within the Control Layer


Good Luck!

Comments

Popular posts from this blog

Topologies in mininet

The default topology in mininet consists of two hosts and two switches. There are many other topologies available in mininet, such as single  single creates a topology with a single switch attached to the number of hosts that are mentioned by the user sudo mn --topo single,[no_of_hosts] Fig 1. [ sudo mn --topo single,2 ] reversed  reversed creates a topology similar to the single command but the interfaces are assigned in a reverse order sudo mn --topo reversed,[no_of_hosts] Fig 2. [ sudo mn --topo reversed,2 ] linear  The linear keyword creates a linear topology with the specified number of switches and hosts sudo mn --topo linear,[no_of_switches],[no_of_hosts_for_each_switch] Fig 3. [ sudo mn --topo linear,3,2 ] tree  The tree keyword creates a tree topology of the specified depth of switches. We can also specify the number of children sudo mn --topo tree,[depth],[no_of_children] Fig 4. [ sudo mn --topo ...

CUSTOM TOPOLOGY IN MININET

CREATE CUSTOM TOPOLOGY IN MININET To create a custom topology in the mininet environment, we are going to use a python code. It is very simple, no need to acquire deep knowledge of python programming language especially for this task. 1. Import necessary packages *Topo from mininet.topo import Topo subpackage topo is being imported from the package mininet. 2. Create a class object class MYTOPO ( Topo ) : (Don't forget to have a similar class name and filename) 3. Create init method init method in python has similar functions as constructors in java. def __init__( self ):    Topo.__init__( self ) 4. Add Hosts Hostname=self.addHost ( "hostname" ) 5. Add switches switch_name=self.addSwitch ( "switch name" ) 6. Add links self.addLink ( "node name 1", "node name 2" ) 7. Name your topology Finally, we name the topo to call it in the command line. topos = { 'cust': ( lambda: MYT...

dpctl in mininet

dpctl command in mininet The dpctl program is a command-line tool for monitoring OpenFlow switches. It can show the flows, features, configuration, table entries, etc. of the switches. It can work with any OpenFlow switches. dpctl is a switch management utility. dpctl show Shows the basic information of the switch, its flow table, ports. 2. dpctl dump-desc [switch] Prints switch description 3. dpctl dump-ports [switch] Prints port statistics of the network devices attached to the switch 4. dpctl dump-ports-desc [switch] Gives detailed statistics of the network devices attached to the switch 5. dpctl dump-flows [switch] Print all flow entries in the associated switch dpctl dump-flows [switch] [flow] Print all the matched flows in the associated switch Flows and flow table: Before data transfer Stimulating TCP data transfer Observing TCP flows in switches Stimulating ICMP flows using pingall and observing...