Skip to main content
Jump to: navigation, search

EUG:Introduction to XMPP

Introduction to XMPP

XMPP stands for eXtensible Messaging and Presence Protocol. It is an open XML based network protocol standard for instant messaging and presence notification. The XMPP protocol is used by many applications under which Google Talk.

When two users want to talk to each other the protocol takes the following form:

Suppose wants to chat with Juliet and Romeo, respectively, have an account on the servers and If Juliet wants to send a message to Romeo the following occurs:

  1. Juliet XMPP client sends the message to the XMPP server
  2. If is blocked on, then the message is discarded.
  3. The XMPP server opens a connection to the XMPP server
  4. The server sends the message to Romeo's XMPP client.
  5. If is blocked on, then the message is removed.
  6. If Romeo is not connected, then the message is stored until Romeo comes back online. (Assuming that the server allows offline messages.)
  7. Romeo receives the message.



  • Standardized
    The XMPP specifications are publicly available. The IETF has also formally adopted the basic protocols as instant messaging and presence technology and published these as RFC3920 and RFC3921.
  • Proven
    The specification of XMPP exist since 1998 and are more and more stabilized. Meanwhile, millions of users use it.
  • Expandable
    The protocol uses XML namespaces. This way everyone can extend the protocol without disturbing existing applications.
  • Decentralized
    A large number of servers can be woven together into one large network.
  • Safe
    Robust security with SASL and TLS are supported.

Back to the top