rconn: Speed up in-band control connections, by caching the remote address.
authorBen Pfaff <blp@nicira.com>
Wed, 2 Sep 2009 19:52:50 +0000 (12:52 -0700)
committerBen Pfaff <blp@nicira.com>
Wed, 2 Sep 2009 19:52:50 +0000 (12:52 -0700)
In-band control needs to know the IP and port of the controller, so that
it can set up the correct flows to talk to that controller.  Until now,
the rconn code has only made this available when a connection was actually
in progress.  This means that, say, ARP packets will not be allowed through
when the rconn backs off.  The same is true of packets sent by switches
that access the controller through this one.

This commit makes the rconn cache the remote IP and port and local IP
across connection attempts, improving the situation.  In particular, it
reduces the overall amount of time that it takes to connect in my own
simple test case from over 10 seconds to about 2 seconds.


No differences found