[Standards-JIG] RFC 3921 Better User Presence Experience (Implementation Detail)

Mridul mridul at sun.com
Thu Oct 26 07:56:55 UTC 2006

JD Conley wrote:
> I was wondering what you guys thought about this and if anyone already
> implements something similar in their servers.
> Today if my server loses connectivity with any other server and I had
> received presence from a contact there they will remain online from my
> perspective even though they can't actually be reached. The server knows
> the contact can't be reached and sends out a stanza error to me the next
> time I try to communicate with my contact. However, my contact still
> appears online.
> I would propose that if a server is ever unable to deliver a stanza to a
> remote domain over an S2S link it SHOULD notify all locally connected
> entities that have received presence from that domain with an empty
> presence unavailable stanza. And this should be in the implementation
> notes or maybe in 3921.
> Thoughts?
> -JD

You have s2s connections being dropped frequently - cos of inactivity , 
configured timeouts , etc.
So losing of an s2s connection does not imply that the remote server is 
gone - just that the socket has been closed.
There are two cases here :
1) Socket's are closed but both server are still up.
2) Sockets are closed and remote server is down (immediately or 
subsequently after some time when one tries to reach the other).

In case 1 , as soon as the remote server wants to notify local server 
(presence change , message , etc) - it will initiate an s2s connection 
and then send the required stanzas. So , this case is not affected by 
dropping of the socket - and dropping of s2s connections is actually 
quite common from what I see.

Case 2 is tricky since you cannot distinguish it from case 1 (either 
side becoming unreachable , restarting , etc ).
Especially since it is the responsibility of the remote server to push 
presence updates - local server/components will end up with a bunch of 
stale presence state.
We would need some guideline regarding this imo .... btw , it looks like 
there might be a conflict in the rfc which I will be mailing out to the 


More information about the Standards mailing list