The 19th XMPP Summit and FOSDEM 2016

19th XMPP Summit

In late January 2016, from the 28th to the 29th, the XSF held its XMPP Summit in Brussels, Belgium. It was the 19th meeting by XMPP standards writers, implementers, and enthusiasts since the first XMPP Summit in July 2006.
Among the topics we discussed were MIX, efficient reconnections and, as always, end-to-end security.

MIX, defined in XEP-0369: Mediated Information Exchange, is a replacement for the current multi-user chat standard (XEP-0045). Classic MUC was first standardized 14 years ago. While it has received some updates and fixes over the years, it still has severe issues considering modern usage scenarios: like mobile devices without a permanent connection and on low bandwith, or rich-media applications with images, movies and voice/video conversations.

MIX is a new protocol aiming to solve these issues and provide a clean solution, based on Publish-Subscribe allowing independent distribution of messages, configuration, presence and more, and Message Archive Management for chat history.

MIX related topics like mentioning others in a chat room, conversation threading and bookmarks have also been discussed and to some extent already standarized shortly after the summit. MIX will enable the implementation of modern group-chat applications with a good user experience in an easier fashion compared to classic MUC.

Simple and efficient reconnection was another large topic discussed at the XMPP Summit. The protocol for a full connection of modern XMPP clients has become more complex and extensive over the years as features have been added. This includes stuff like TLS negotiation, synchronization of contact lists, feature discovery and more.

We collectively analyzed the protocol a modern feature-full XMPP client uses to login, and highlighted opportunities to reduce traffic, round trips and latency. An efficient reconnection is becoming more important as more and more chat applications run on a mobile device and reconnect quite often. A writeup of our findings and directions to possible optimizations will soon follow in the form of an informational XEP.

Finally, end-to-end security between XMPP clients was shortly discussed. The current ideas mainly evolve around fixing OpenPGP usage in XMPP and the Axolotl-based OMEMO proposal. Here, our discussion mainly focused on current issues around the OMEMO proposal like missing support for full-stanza encryption and the threat model OMEMO is designed to protect against.

On the evening of the 28th, we also had our traditional XSF Dinner with interesting discussions and delicious food.