If you google for this you will find this problem has been well exercised in
the past, not on this list but on lists in general. It is a "feature" of the
way the TCP/IP stack works and unfortunately there is no magic bullet! It is
also possible that a client trying to reconnect may also put the port into
use, as the client actually returns a valid connect and then fails,
alternatively is the client disconnecting promptly, this would also hold the
port in use.
>From fairly (bitter) experience I think the 10 second cycle is more
productive. In our application if you get 2 frequent in your attempts to
rebind to the port with the server and the client is equally aggressive you
get the equivalent of a deadly embrace as each side tries to grab the port
and marks it in use to the opposing side!!
Hope this helps
Bob
On Tuesday 13 May 2008 21:19:12 Fred wrote:
> --- "naturalwatt" <> wrote:
> > I have the same problem. The kernel seems to hold
> > the socket in use for just about 60 seconds. My
> > process attempts to bind every 10 seconds until it
> > succeeds.
>
> That's probably the smart thing to do. I've got a test process which I
> use to try to find some way to force the bind() but it looks like I'll
> have to try what you did -- though I'll try once a second. }:-}
>
> There doesn't appear to be any ioctl() or fntcl() or sockopt() that's
> responsible for tailoring the timing on when the TCP/IP stack relents
> and "discovers" dead process resources that can be released and granted
> to others.
--
V +44 (0) 1296 747667
F +44 (0) 1296 747557
C +44 (0) 7860 406093
Diamond Consulting Services Ltd
Dinton
Aylesbury
Bucks, HP17 8UG
England
------------------------------------
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/ts-7000/
<*> Your email settings:
Individual Email | Traditional
<*> To change settings online go to:
http://groups.yahoo.com/group/ts-7000/join
(Yahoo! ID required)
<*> To change settings via email:
<*> To unsubscribe from this group, send an email to:
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
|