In reply to Mike Silbersack <[EMAIL PROTECTED]> :

> 
> On Mon, 11 Oct 2004, Eli Dart wrote:
> 
> >
> >> Is there a way to change the time_wait timeout value in FreeBSD?
> >
> > sysctl -w net.inet.tcp.msl=<milliseconds>
> >
> > The default is 30000 (30 seconds).
> >
> >             --eli
> 
> That may have other sideeffects, however.

True enough.   I don't think I've ever set it below 10000.

> 
> In FreeBSD 5.x, the TIME_WAIT timeout is not configurable, but time_wait 
> sockets are stored in a seperate hash table.  Also, they are now 
> terminated prematurely when there is a shortage of ephemeral ports.  As a 
> result, time_wait sockets are no longer the problem they were in certain 
> situations under 4.x.

Most excellent!

There is one instance where this could be problematic, though. In 
the case where a network service needs to be restarted and cannot 
(for whatever reason) be restarted without closing and then 
re-opening its listening socket, if there is a socket in TIME_WAIT
state the new service instance cannot bind to its port until the
sockets from the previous instance have timed out.  This doesn't
happen all the time, and I've not got an example in front of me
just now (so I may be munging details) but this is one of the reasons
I typically drop the MSL down from its default.  I got bit by this
about 6 months ago, and the combination of dropping the MSL and a
short sleep in the restart script fixed the problem...

Of course, if the enhancements that come with 5.x have addressed 
this, then so much the better....(I could also be ignorant of an 
obvious fix, even under 4.x).

                --eli



> 
> Mike "Silby" Silbersack
> 


Attachment: pgpi3MT36moRS.pgp
Description: PGP signature

Reply via email to