Skip to content


The Extensible Messaging and Presence Protocol (XMPP) formalizes the core protocols developed within the Jabber open-source community in 1999. The first XMPP RFCs were produced by the IETF’s XMPP Working Group in October 2004. In 2011 they were revised, resulting in the most up-to-date specifications (RFC 6120, RFC 6121, and RFC 6122).

In addition to the RFCs, there are many XMPP extensions defined in the XEP series produced by the XMPP Standards Foundation, and several XMPP-related Internet-Drafts are currently under consideration within the IETF.

RFCShort NameFormatsDescription
RFC 6120XMPP COREText | HTMLXML streams, SASL, TLS, stanza semantics (supersedes RFC 3920)
RFC 6121XMPP IMText | HTMLXMPP extensions for basic instant messaging and presence (supersedes RFC 3921)
RFC 6122XMPP ADDRText | HTMLXMPP address format
RFC 3923XMPP E2EText | HTMLEnd-to-end signing and object encryption for XMPP
RFC 4854XMPP URNText | HTMLA Uniform Resource Name (URN) namespace for use in XMPP extensions
RFC 4979XMPP ENUMText | HTMLIANA registration of an Enumservice (see RFC 3761) for XMPP
RFC 5122XMPP URIText | HTMLA Uniform Resource Identifier (URI) scheme for XMPP (this specification corrects several errors in RFC 4622)

2 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.

Continuing the Discussion

  1. xmpp rfc « linked to this post on November 19, 2011

    [...] xmpp rfc this:TwitterFacebookLike this:LikeBe the first to like this post.   [...]

  2. Partychat — migrating from Google App Engine to EC2 « Vijay Pandurangan's blog linked to this post on December 17, 2011

    [...] order to run an XMPP proxy, we need to deploy an XMPP server with the ability to federate to other servers, and code [...]