On Fri, 14 Dec 2007, Adrian Knoth wrote:
> Should we consider moving towards these mapped addresses? The
> - less code, only one socket to handle
> - better FD consumption
> - breaks WinXP support, but not Vista/Longhorn or later
> - requires non-default kernel runtime setting on OpenBSD for IPv4
> FWIW, FD consumption is the only real issue to consider.
My thought is no. The resource consumption isn't really an issue to
consider. It would also simplify the code (although work that Adrian and
I did later to clean up the TCP OOB component has limited that). If you
look at the FD count issue, you're going to reduce the number of FDs (for
the OOB anyway) by 2. Not (2 * NumNodes), but 2 (one for BTL, one for
OOB). Today we have a listen socket for IPv4 and another for IPv6. With
IPv4 mapped addresses, we'd have one that did both. In terms of per-peer
connections, the OOB tries one connection at a time, so there will be at
most 1 OOB connection between any two peers.
In return for 2 FDs, we'd have to play with code taht we know works and
with cleanups over the last year has actually become quite simple. We'd
have to break WinXP support (when it sounds like no one is really moving
to Vista), and we'd break out-of-the-box OpenBSD.