Day 8: Simulating basic topologies on Mininet
Our aim for this week is to simulate our network architecture on Mininet. To do this, we need some background on how to build topologies on Mininet. Today, let's start with simple 1 controller architectures to get the hang of the tool and how to write your own scripts to build a topology that may not be built-in.
To install Mininet, follow this article.
I referred to these links to implement the code and build custom topologies. We need to learn custom topologies to be able to build our architecture.
This link explains how to include more than one controller in the topology.
This link explains how to install a controller - Ryu and run the controller on the topology built on Mininet.
I would be using Mininet as the emulator and Ryu as my SDN controller even in the upcoming posts. To familiarize yourself with Ryu, you can refer to this.
To install Mininet, follow this article.
I referred to these links to implement the code and build custom topologies. We need to learn custom topologies to be able to build our architecture.
This link explains how to include more than one controller in the topology.
This link explains how to install a controller - Ryu and run the controller on the topology built on Mininet.
I would be using Mininet as the emulator and Ryu as my SDN controller even in the upcoming posts. To familiarize yourself with Ryu, you can refer to this.
When adding two controllers in mininet, which controller will it talk to? Does it communicate with both and if so, whose response it takes. What happens when both the controllers respond?
ReplyDeleteAccording to my understanding and the sources I have referred to, the switch communicates with both the controllers. The flow table both the controller try to install on the switch should be same as they are part of the same domain. So it boils down to a race condition. I have observed through emulation, is both the controllers send the PCK_IN openflow message to the controller. Once a new flow is installed it sends an acknowledgemet to all controllers connected to it. In case the PCK_OUT message from the second controller has already left the controller, I am not sure what happens to this. But thus far, I have not observed the same flow installed twice on the switch. So I'm assuming it is dropped.
Delete