Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

software-defined networking & OpenFlow

I'm trying to dive into these new concepts, SDN and OpenFlow. One thing that is not clear to me, is how the traditional routing (OSPF, BGP etc.) done in SDN, or it is completely gone and replaced with some lightweight mechanisms instead?

I would appreciate any hints, links to get better understanding on this. Thanks!

Mark

like image 725
Mark Avatar asked Feb 06 '13 17:02

Mark


People also ask

What does Software-Defined Networking do?

Software-Defined Networking (SDN) is an approach to networking that uses software-based controllers or application programming interfaces (APIs) to communicate with underlying hardware infrastructure and direct traffic on a network.

What is Software-Defined Networking example?

An example of an SDN in action is the recent deployment at Tribune Media, which transferred more than 140 applications to the company's new SDN infrastructure using VMware NSX.

What are the 3 layers that make up SDN?

A typical representation of SDN architecture includes three layers: the application layer, the control layer and the infrastructure layer.

What are two characteristics of software-defined networking?

SDN consolidates network intelligence, which provides a holistic view of the network configuration and activity. Programmability. The ability to directly program network features and configure network resources quickly and easily through automated SDN services. Open connectivity.


3 Answers

In the SDN world the controller sets up the data plane in each router and switch to ensure flows are forwarded in some desirable way. The controller needs to be given the logic to make these routing decisions. If you would like to use a traditional mechanism such as OSPF you can install something like RouteFlow on your controller (https://sites.google.com/site/routeflow/). Alternatively though you may decide to use some other more relevant or desirable mechanism. SDN opens up a new world of possibilities.

For example imagine you have two routes between two locations. One route is extremely expensive to run but is also low latency and gets the traffic across more quickly. the other route is longer and has higher latency however it is very cheap to run. You may decide that you want to route specific traffic flows via one path rather than another. Eg. your bosses traffic takes the fast route (so he doesn't beat you up all the time) but your colleagues traffic takes the slower route (after all he did steal the cookies you left on your desk!). Or, your email traffic takes the slower route and your trading/real time application traffic takes the fast route.

like image 72
Khanivore Avatar answered Oct 22 '22 06:10

Khanivore


With SDN, each switch/router basically becomes a "dumb" device that only does what it is told to do. A centralized SDN server will have all the required information about the whole network to be able to determine and configure the required routing/switching tables for all switches/routers involved.

Therefore, I guess the answer to your question is that the traditional dynamic routing will not be done in SDN.

like image 28
wookie919 Avatar answered Oct 22 '22 07:10

wookie919


In SDN, controllers are used to provide functionality to the openflow switches(dumb).

Consider these two parts,

1) Controllers: These are the programs that run on any device with the logic may be l2/l3 and make the switches connected to it according to the algorithms defined in the controller. There are some controller APIs like POX,NOX,PYRETIC, FLOODLIGHT on different languages, in market that you can implement to write your own controller.

2) Switches: The controllers control the switches. Fine! But how? There must be some protocol that is used to provide communication between them, this is what we call OpenFlow Protocol. The controller implements the functionality say OSPF/BGP using the controller's API and the openFlow API together.

Finally this is the structure that comes in imagination.

Controller(at some IP say 192.168.56.101) providing OSPF/firewall/URL filtering or any functionality to the openflow switches >> OpenFlow Switch or switches(dumb) used for connectivity of hosts >> then there is/are Host(s): that are normally linux based if you use mininet emulator.

like image 1
Sarim Javaid Khan Avatar answered Oct 22 '22 08:10

Sarim Javaid Khan