Tech pages/Core

Revision as of 13:21, 3 January 2015 by Flow (talk | contribs) (→‎Specifications)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search


At its core, XMPP is a technology for streaming XML over a network. The protocol, which emerged from the Jabber open-source community in 1999, was originally designed to provide an open, secure, decentralized alternative to consumer-oriented instant messaging (IM) services like ICQ, AIM, and MSN. The core technologies were formalized under the name Extensible Messaging and Presence Protocol (XMPP) at the IETF in 2004. These core technologies include:

  • The base XML streaming layer
  • Channel encryption using Transport Layer Security (TLS)
  • Strong authentication using the Simple Authentication and Security Layer (SASL)
  • Use of UTF-8 for complete Unicode support, including fully internationalized addresses
  • Built-in information about network availability ("presence")
  • Presence subscriptions for two-way authorization
  • Presence-enabled contact lists ("rosters")


The core XMPP technologies are defined in two RFCs published by the IETF:

  • RFC 6120: XMPP Core
  • RFC 6121: XMPP IM

These RFCs are currently undergoing revision based on implementation and deployment experience since 2004. The revised versions are available at


There are many implementations of the core XMPP specifications. See the following pages for details:

Discussion Venues

The XMPP Standards Foundation maintains several email discussion lists about the core XMPP technologies. The primary list is the list. As with all XSF technology lists, the list is open to all interested individuals.

  • Info page and subscription information
  • Subscribe via email
  • Discussion archives