Ask is moving to Stack Overflow and! Please use the "opendaylight" tag on either of these sites. This site is now in Read-Only mode


Create flow over multiple switches

asked 2015-03-25 08:43:33 -0700

Luke123 gravatar image

updated 2015-03-25 08:44:25 -0700

I am able to create a flow on a switch. Which is great if there is only one swicht in network, in this case. But is there a way to create a flow on multiple switches at the same time? H1-->S1-->S2-->S3-->H2 Or is this something that you manual have to do on the two switches.

If I should make it manualy i would approach it something like this:

Creating a flow on S1:
Make that all packade that comes in from H1 will be sent out from the port connected to S2.
Creating a flow on S2:
Make all the package that comes in from the port connected to S1 sent out from the port connected to S3.
Creating a flow on S3:
Make all the package that comes in from the port connected to S2 be sent out to H2.

But as you can see the flow on S2 will just be a transport, and if the topology is much larger and there is 10 switches between H1 and H2 there will be many flows that have to be created manually. But they will almost look the same and could use the information from the REST API by the Topology to do this automatic.

Is there a way to create a flow in this way?

Thanks in advance.

edit retag flag offensive close merge delete

2 answers

Sort by ยป oldest newest most voted

answered 2015-03-26 02:43:15 -0700

Vishal Thapar gravatar image

If you were to use a sort of in-band controller configuration, you could setup flows so that any openflow packets sent to S1 get forwarded to S2 and so on further in the chain. However, it would still not help as each OF Flow Mod would be addressed to an S1's IP.

To achieve this you will need some sort of service/device that replicates the flows and best candidate for this would be an Application on top of ODL [could be a part of ODL or use NB Rest interface] that takes a list of switches as an additional parameter and programs the single flow on all the switches.

An alternative you could try [thinking out loud here] is use multicast; controller sends FlowMods to a multicast IP and all switches registered to that IP get the request. But even then I believe controller won't be equipped to handle OF Error messages from multiple switches.

edit flag offensive delete publish link more

answered 2015-03-25 09:33:41 -0700

checho gravatar image

updated 2015-03-25 09:34:13 -0700

To the best of my knowledge you can't do that with the actual features (bundles). I am actually working on the same application within a testbed (GENI) and what we have done was to create an application that utilizes ODL's northbound API to install the flows, i.e, build an application outside the controller to install the flows any way you want.

edit flag offensive delete publish link more
Login/Signup to Answer

Question Tools



Asked: 2015-03-25 08:43:33 -0700

Seen: 1,588 times

Last updated: Mar 26 '15