On Wed, 2 Jul 2008, Robert G. Brown wrote:

The way TCP daemons that listen on a well-known/privileged port work is that they accept a connection on that port, then fork a connection on a higher unprivileged (>1023) port on both ends so that the daemon can listen once again.

'man 7 socket' and look up SO_REUSEADDR. I don't quite know what you mean by 'forking a connection'; when the daemon encounters a fork() all open file descriptors (including sockets) are being kept in both the parent and the child. The child (usually the part of the daemon that processes the content that comes on that connection) gets the same 4-tuple as the parent. The parent closes its file handle so that only the child is then active on that connection.

You can see this by running e.g. netstat -a.

I seriously doubt that you have seen such a behaviour. Empirical evidence which might pass easier than theoretical one: on the e-mail server that I admin, there is an iptable rule to only allow incoming connections to port 25 - if connections would suddenly be migrated to different ports they would be blocked and I would not receive any e-mails from this list. But I do, especially during the past few days... (not that I complain :-))

--
Bogdan Costescu

IWR, University of Heidelberg, INF 368, D-69120 Heidelberg, Germany
Phone: +49 6221 54 8869/8240, Fax: +49 6221 54 8868/8850
E-mail: [EMAIL PROTECTED]
_______________________________________________
Beowulf mailing list, [email protected]
To change your subscription (digest mode or unsubscribe) visit 
http://www.beowulf.org/mailman/listinfo/beowulf

Reply via email to