Software Oriented Network and OpenFlow

I'm trying to dive into these new concepts, SDN and OpenFlow. The only thing that I don’t understand is how is traditional routing (OSPF, BGP, etc.) performed in the SDN, or is it completely gone and replaced by some lightweight mechanisms?

I would be grateful for any hints, links in order to better understand this. Thanks!

Mark

+6
source share
5 answers

In the world of SDNs, the controller sets up the data plane in each router and switches to ensure that the flows are redirected in some desired way. The controller must be provided with logic to make these routing decisions. If you want to use a traditional mechanism such as OSPF, you can install something like RouteFlow on your controller ( https://sites.google.com/site/routeflow/ ). Alternatively, although you may decide to use some other more relevant or desirable mechanism. SDN opens up a new world of possibilities.

For example, imagine that you have two routes between two locations. One route is extremely expensive to run, but it is also low latency and transfers traffic faster. the other route is longer and has a higher delay, but its very cheap to operate. You may decide that you want to route certain traffic flows through one path, and not another. For instance. your boss engine takes a quick route (so it doesn’t beat you up all the time), but the traffic of your colleagues takes a slower route (in the end, it stole the cookies that you left on your table!). Or your email traffic takes a slower route, and trade / real-time application traffic takes a quick route.

+2
source

In the SDN, each switch / router basically becomes a "dumb" device that does just what it is told. A centralized SDN server will have all the necessary information about the entire network in order to be able to determine and configure the necessary routing / switching tables for all involved switches / routers.

Therefore, I think the answer to your question is that traditional dynamic routing will not be performed on the SDN.

+1
source

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

Consider these two parts,

1) Controllers: These are programs that work on any device with logic, can be l2 / l3 and connect switches to them in accordance with the algorithms defined in the controller. There are some controllers, such as POX, NOX, PYRETIC, FLOODLIGHT in different languages, on the market, which you can implement to write your own controller.

2) Switches: Controllers control the switches. Excellent! But how? There must be some kind of protocol that is used to provide communication between them, this is what we call the OpenFlow protocol. The controller implements functionality, for example, OSPF / BGP, using the controller API and the OpenFlow API.

Finally, it is a structure that comes in the imagination.

A controller (on some IP it says 192.168.56.101) that provides OSPF / firewall / URL filtering or any function for openflow switches β†’ OpenFlow Switch or switches (dumb) used to connect hosts β†’ that is / there is Host (s): this is usually linux if you use mininet emulator.

+1
source

Routing is done using the SDN, but it is centralized on the so-called controller. Most legacy routing protocols are heavy only because of the need to synchronize a distributed database of routing tables in the network infrastructure. With the help of SDN, the routing process becomes a simple application that processes a centralized database. The controller then passes the routing tables to the network equipment ...

0
source

About part of the resources

I do not advertise or approve a single word, but Nick Feymster (from Georgia Tech) offers an SDN course on courses. The content is pretty neat. In addition, a search for several interviews conducted by Nick and many famous personalities from the SDN space talks about various issues.

PS: I do not advertise as such, I took a course and got a fairly clear idea of ​​SDN.

0
source

All Articles