Multi-core for multimedia clients is all about diversification Do we need a Swiss army knife as a communication protocol?

 
Tsahi Levent-Levi

SIMPLE vs. XMPP Showdown

Categories: Standardization
July 17th, 2008

Presence is always positioned as the key to unified communications (UC) – at the very heart of UC is the ability to discern the current status of people and resources. Which protocol will be the one used to power Presence? SIMPLE or XMPP?

SIMPLE or XMPP? The showdown

XMPP

XMPP stands for “Extensible Messaging and Presence Protocol”. It is a streaming based protocol that routes XML messages between entities. It is mainly used for presence and instant messaging although other uses for it exist as well.

You can learn more about XMPP at the organization’s website.

SIMPLE

SIMPLE stands for “SIP for Instant Messaging and Presence Leveraging Extensions”. As the name suggest, it is designed for presence and instant messaging. Although it is also XML based (with XML components taken from XMPP for that matter), it is piggybacked on SIP as an event package mechanism.

OMA (Open Mobile Alliance), started with XMPP when they merged with wireless village but then decided to adopt SIMPLE, making it the protocol of choice for presence in IMS.

Showdown

You can say that XMPP is a protocol focused on presence, while SIMPLE is a parasite on SIP. On the other hand, the linkage between VoIP (which is done using SIP) and presence is large enough to make it worthwhile.

There is no reason to deploy two different protocols on the same kinds of networks – such a thing increases fragmentation, confusion and the need for interworking gateways. This being the case, which one is going to win the market?

The first impression is that SIMPLE is simply the more suitable solution:

  • VoIP today is done using SIP. SIMPLE uses SIP, so you simply use it – no need for a “standalone” protocol such as XMPP to work in parallel.
  • Since SIMPLE uses SIP, it can enjoy all of the features that SIP provides – this includes all authorization, authentication and even compression (SigComp).
  • SIMPLE has already been selected for IMS. This means service providers are going to use SIMPLE – this includes mobile, cable and fixed networks.
  • SIMPLE is also used for SMS over IP (IMS).

If you look at what internet companies are doing, XMPP seems like a reasonable choice:

  • Google uses XMPP in their GTalk application.
  • Yahoo started playing around with XMPP for their video services. Stephen Shankland wrote about it on CNET. I suggest reading the comments on his post – they become interesting closer to the end of the list.

However, Stephen misses an important point – Mobile VoIP and IMS (hence mobile) opting for SIMPLE. This changes the story, making both SIMPLE and XMPP strong proponents for the crown.

My take? We will end up with two different presence protocols – one dominant with internet companies (XMPP) and the other by service providers and unified communication vendors (SIMPLE). And as usual, the “convergence”/”unification” means more gateways and more complexity – and that is even without touching the issue of FMC when the same device will be connected to both XMPP and SIMPLE depending on the active network connection.

Life is definitely not going to be (only) simple.

6

Comments and trackbacks

  • 1. Nÿco  |  July 17th, 2008 at 11:57 am

    Come on, watch the other sides:

    VoIP today is done using MGCP, Skype, H.323; IAX, and Jingle, not only SIP.

    Since XMPP uses XMPP, it can enjoy all of the features that XMPP provides: authorization, authentication and even compression… and presence, status, TLS encryption, PubSub, Personal Eventing, Multi-User Chat (with admin!), commands, forms, avatar, directory, vCard, chat states, remote control, service discovery; serverless communication, privacy lists, transports, multiple connections, and so much more..

    XMPP has already been selected by IETF of course, but also IT industry leaders like Oracle, Google, Sun, Apple, Adobe, Red Hat/JBoss, IBM, HP, Nokia, Yahoo!, AOL, Facebook, LiveJournal, Gizmo, Wengo and of course a LOT of opensource communities. This means service providers are (going to use) widely using XMPP – this includes mobile, cable and fixed networks.

    Nÿco

  • 2. Eelco  |  July 17th, 2008 at 2:22 pm

    Internet telephony today is mostly done by SIP. Telephony extends VoIP with services like call waiting, call forwarding etc. These things are not done easily with for example jingle.

    The problem with SIMPLE is that it is highly inefficient for presence. It requires huge amounts of bandwidth. I wonder why SIP telephony client could not use XMPP for presence. Get the best from both worlds.

  • 3. Tsahi Levent-Levi  |  July 17th, 2008 at 4:44 pm

    Nÿco,
    Most VoIP solutions developed today are SIP based. I agree that there are a lot of other solutions out there, but SIP is the most developed and probably deployed one at this point in time. It will be the dominant protocol in the VoIP landscape in the next several years. I share your views that XMPP has a lot of penetration today, but I also think that SIMPLE is gaining a lot of ground. I think both solutions will live together and we will need gateways between them.

    Eelco,
    SIMPLE is efficient if you take into account solutions such as partial presence and SigComp which are embedded and mandatory when you use it over mobile handsets.
    The issue for SIP to use XMPP is simply the duplication of mechanisms and configurations that exist in both standards.

  • 4. Eelco  |  July 17th, 2008 at 5:59 pm

    Tsahi,

    I probably had to make my self more clear on this ;-)

    When I was referring to the inefficiency of SIP SIMPLE I meant that SIMPLE is very inefficient when it comes to federation. More information can be found in this IEFT draft: http://tools.ietf.org/html/draft-ietf-simple-interdomain-scaling-analysis-04

    When I was suggesting that SIP telephony clients would use XMPP for presence I did not mean that SIP should use XMPP I meant that clients would use protocols for what there best suitable for. I.e. SIP for setting up multimedia sessions and XMPP for presence and IM.

  • 5. Anisa  |  July 21st, 2008 at 8:38 pm

    Hi,
    Im an MSc Computer Science student at the University of Cape Town South Africa.

    My masters topic is: Proving that an elaborate rich presence platform, such as the Microsoft Office Communicator 2007 (implemented using SIMPLE) can be implemented using XMPP.

    Essentially rich presence involves collecting presence information from multiple devices belonging to a single user, and aggregating this to provide a single and consistent presence for the user.

    Is anyone aware if there are any existing rich presence implementations that use XMPP?

Required

Required, hidden

Notify me of followup comments via e-mail

Trackback this post  |  Subscribe to the comments via RSS Feed