[JDEV] Keep-Alives
Tijl Houtbeckers
tijl at druppel.nl
Thu Jul 4 10:51:07 CDT 2002
Matthias Wimmer <m at tthias.net> wrote:
>Hi Dave!
>
>Dave wrote:
>
>>Since keepalives seek to solve a problem created at the TCP level,
>>solving the problem at the TCP level makes most sense, IMHO. The current
>>practice of simply sending blanks solves the problem transparently
>>to the Jabber protocol, except that the data loss problem remains.
>>
>Right ... problems we have with TCP are already solved. Why don't use
>this? We don't need many lines of code in the server and every client
>benefits by this without being changed in any way.
>We can change the interval of the keep-alive packets to a more useful
>value and we don't need this probes while there is data exchanged (for
>the purpose to verfy that the connection is still alive and for the NAT
>routers to don't close the connection).
A few problems I see with using keep-alives (as far as I understand them)
1. It is very low level, not all programming languages / devices will have acces to it.
2. It is bound to TCP/IP, I could for example use a bluetooth link or a serial link instead
of TCP/IP. Jabber over HTTP also sort of falls into this catagory.
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).
4 I asume keep-alives will be for *all* user that log into jabber, some might not want
keep-alives or anything like it at all for their clients.
A few of these problems came up before on the mailinglist, and I haven't yet heard a
solution for them. It might not hinder any implemention for this on *nix, but the
problem will still remain for the platforms/implementations that can not use this.
--
Tijl Houtbeckers
JAVA/J2ME/GPRS Programmer @ Splendo
More information about the JDev
mailing list