[jdev] XMPP vs SIMPLE

Dave Cridland dave at cridland.net
Mon Sep 29 12:43:05 CDT 2008


On Mon Sep 29 17:46:30 2008, aragalo at cs.uct.ac.za wrote:
> I am working on a masters project that compares XMPP and SIMPLE for  
> the
> conveyance of presence information. My question is very specific:

And although well-put, I'll skip it for brevity.

SIMPLE does presence confirmations for two reasons.

Firstly and most crucially, SIMPLE exchanges presence information in  
what are essentially VOIP signalling patterns, and as such are  
required by the transport-like layer that SIP provides to have a  
confirmation response - it's simply not a choice the SIMPLE folk had.

Secondly, SIP is, as you say, designed to involve a multi-hop  
scenario often involving UDP hops, whereas XMPP presence messages are  
exchanged across a maximum of three links, C2S-S2S-S2C, all of which  
are TCP, rather than UDP.

So to get to the core question of whether XMPP ought to [be capable  
of] sending confirmation of receipt of presence, that's probably a  
waste of time. More important would be checking the validity of each  
link, since TCP can go into a rather annoying blackhole state.

For the latter, XMPP does already have a technology in the  
Experimental stage, XEP-0198, which is not yet deployed anywhere (but  
if PSA updates the namespace to something stable, I might implement  
it).

Moreover, XMPP has a system of error responses for any stanza, so  
lack of error can be used to assume the other end got it - assuming  
each link is verified with XEP-0198.

There's several other advantages of the XMPP architecture here, too -  
such as by restricting the paths used and using a streaming protocol  
istead of a packetized one, we can take advantage of stream based  
compression across many presence (and other) stanzas, which itself  
leads to very efficient transmission compared to SIMPLE.

HTH,

Dave.
-- 
Dave Cridland - mailto:dave at cridland.net - xmpp:dwd at dave.cridland.net
  - acap://acap.dave.cridland.net/byowner/user/dwd/bookmarks/
  - http://dave.cridland.net/
Infotrope Polymer - ACAP, IMAP, ESMTP, and Lemonade



More information about the JDev mailing list