0

I'm working with POX for the first time. What I'm trying to do is install rules in a switch to forward the packets that they were sended originally to hosts that they are connected to this switch.

H1---S1----S2---H3

         |---H4

Example: H1 send a certain packet to H3 and H4 that when they arrive to S2 they have to be forwarded to the controller. What I had in mind is to install these rules when I start the controller but to do that I need to get the hosts connected to the switches.

Are there some method to know the hosts connected to a given switch?

2 Answers2

0

At first, Daniel you have to see some examples (e.g. on youtube) about mininet and then about pox and controllers. The first ping from h1 to h3 goes from h1 to s1 and then s1 asks controller about routing flow. Then the controller replies to s1 with the corresponding routing flow (depending on the controller logic) and s1 write the routing flow in its "routing flow table". Then s1 forwords the packet to s2 and then s2 to h3. That's why the next pings is faster than the first. Ping from h1 to h4 follows the above procces.

To install rules on switches depends on the switch type. The general idea is to preconfigure from python script, or parsing commands from mininet cli, or via xterm on switches or via REST api (depending on controller).

dside
  • 98
  • 7
  • Yes, I know how it works. What I want to know if there's some method to know which hosts are connected in a given switch to install rules in a proactive way when I connect my controller to the mininet topology. – Daniel Romero Nov 16 '17 at 12:11
  • https://ervikrant06.wordpress.com/2015/09/17/learning-ovs-open-vswitch-using-mininet-part-1/ or http://www.opencloudblog.com/?p=130 In the above link you can find usefull information, but I haven't tested it yet. Otherwise try xterm on switch – dside Nov 17 '17 at 12:51
0

Ok there are many ways to discover a topology and also you can make your own way. Topology discovery and management is a very hot topic in SDNs.

The most common way to make that is using LLDP (Link Layer Discovery Protocol) and BDDP (Broadcast Domain Discovery Protocol) packets through all of switches ports. (FLOOD)

Here is a link to that

Discovery in Software Defined Networks

Hope that helps!