0

I start RYU controller which opens TCP listening port 6633.Now I connect my mininet topology to the controller port 6633.My mininet topology consists of 6 switches.Hence there will be 6 connections one from each switch to the RYU Controller port.

Now I bring down my controller and start the controller again.

I find that all the switches in my topology can talk to the controller as if the controller process were never killed.

This is not how I understand a TCP connection between a server and a client.If the server goes down I would expect the connection to be disconnected.

This set of connections seem to survive a server process restart.Can someone explain how this is happening?I am just curious

liv2hak
  • 14,472
  • 53
  • 157
  • 270
  • I guess the switches just try to reconnect once they loose a connection. At least it would make a lot of sense to do this to keep the network stable without manual intervention. – Steffen Ullrich Aug 16 '14 at 09:43

2 Answers2

0

When Ryu shuts down, it will close the active TCP connection with a FIN packet, upon receiving which the switches will also tear down the active TCP connection.

The reason why the switches and Ryu start talking again is simply because the switches always attempts reestablish a TCP session with the controller after the previous TCP connection is down.

Using Wireshark to capture the packets (by display-filtering on tcp.port==6633) will show you how this all happened.

Shu
  • 331
  • 1
  • 4
0

The OpenFlow rules present in the switches have an expiry time. So if the controller can restart within the expiry time, the topology will be fine. Completely turn off the controller for 30 seconds, then you will see the topology will be completely dead, that is, no one can ping each other.

xavier666
  • 87
  • 12