[JDEV] Keep-Alives

David Waite mass at akuma.org
Fri Jul 5 02:41:14 CDT 2002


Matthias Wimmer wrote:

> Hi Tijl!
>
> Tijl Houtbeckers wrote:

<snip>

>
>> 3. keep alive is OS dependant. Not all OSes provide acces to it, and 
>> some let you set it only for all applications, not specific ones (as 
>> I understand from earlyer postings).
>>
> On the one hand I know no operating system that doesn't support it, on 
> the other hand you only need support for it on the server side.
> Technical keep-alives is just the retransmission of already send IP 
> packets. The IP stack of the server that receives this packet will 
> just think that this is a packet that he already got but the sender 
> didn't get its acknowledge. Therefore it sends the acknowledge again 
> ... the server IP stack knows that the cient is still there.
> This meens:

There is no standard way of manipulating keepalives. There is no 
standard set of system calls to configure keepalives. Keepalives may not 
be configurable per socket (they might be a machine-wide configurable, 
affecting all other services running on that machine) or configurable at 
all.

Also, keep in mind that the worst case timeout due to a keepalive is 
going to be around ten minutes, even if the keepalive interval is 
reduced down to one minute. This means someone who unplugs their modem 
may still take 10 minutes to timeout, and that any messages sent to them 
during this period will still be lost.

-David Waite




More information about the JDev mailing list