On Fri, 4 Feb 2005 03:50:38 -0600, Evan Schoenberg wrote
> After being online for a while, and usually late at night [okay,
> early in the morning] US central time (such as it is as I write this)
> , I'll suddenly be disconnected with the following debug logging:
> Every contact is of course marked offline as I disconnect. When I am
> (automatically) reconnected, I don't get any buddy updates so don't
> see anyone as online.
> A reasonably large number of people have reported this intermittent
> issue to me... generally the report seems to go that the major
> connection error happens in this same time frame. Any thoughts on
> how to track this down? Would anyone be able to make something of
> the logging if I turn on libfaim debug logging and watch for it to
> occur overnight again?
Here's what I think is happening:
AOL is restarting one of their oscar servers, or cycling a router or switch or
something. It disconnects a WHOLE bunch of people. All of these people
attempt to auto-reconnect after a few seconds, and the servers that store the
SSI data get flooded and are unable to respond to everyone.
A saw a packet capture of this once, and from a protocol level, here's what I
1. We get kicked offline.
2. Gaim (or Adium) waits a few seconds then tries to reconnect.
3. We sign on fine, for the most part
4. We request the SSI data
5. The server is unable to send us the SSI data, but they also do not send us
an SSI error SNAC
6. Gaim (or Adium) waits forever for the server to send us the data.
If they DID send us an SSI error SNAC, the oscar PRPL sets a 5 minute timer
for re-requesting the data. Another possibility is that they ARE sending us
the SSI error SNAC, but it's not the type of error that we're expecting
(0x0005), so we don't attempt to re-request the data.
I suspect that Windows AIM (and really all oscar clients using SSI) have this
problem. Sometimes when I wake up and I've been disconnected, if I try to get
the info of people on my buddy list I get a message saying they're not online
or unavailable or something. I'm guessing that's because they never received
their SSI data, and so they activated their buddy list, and so they're not
fully online. I could be very, very wrong.
The debug info you pasted is the standard oscar-lost-a-connection messages.
It happens when the TCP stream is interrupted (like if you stop your network
interface). I doubt turning on libfaim debugging would help much, but you
never know. A packet capture of someone trying to sign on after being
disconnected would be much more useful.
O O Mark Doliner
\ | mark@...
\ | http://www.kingant.net
"There needs to be a better word for weird."