[JDEV] Heartbeat patch for dialup and laptop users and faulty presence info

David Waite mass at akuma.org
Tue May 28 21:40:53 CDT 2002


Nathan Sharp wrote:

<snip>

> I think note should be taken that IRC uses such a ping-pong solution. 
> I'd be willing to bet that AOL, Yahoo, and MSN all include such a 
> feature as the TCP timeout logic is severely limited (there was a 
> discussion of this point a month ago or so on this list).  

I know that Yahoo and MSN do not; I suspect that AOL does not either. 
ICQ used to use heartbeats, but that was because they were a UDP-based 
protocol. It took on average between 3-5 minutes for a disconnected user 
to register as disconnected, and later I believe the official clients 
started actually ignoring offline notifications because UDP traffic was 
too lossy.

IRC's use of ping/pong has been used many times in the past in peer DoS 
attacks - however that is neither here nor there.

As a counterpoint, however - a single-byte application-level ping/pong 
is still going to take a minimum of 82 bytes of network traffic. It is 
likely that for five million online users, the ~7MB/s traffic a 
once-a-minute ping/pong would generate might not considered worth it.

Some of the portal services above may have implicit pings via a tcp 
keepalive message; I wouldn't consider it beyond them to alter the 
underlying tcp stack to send faster keepalives and even to perform fewer 
retransmissions.

-David Waite




More information about the JDev mailing list