Il est basé sur XML (Langage de balisage extensible) et offre des fonctionnalités au-delà de la messagerie instantanée typique. L’architecture de XMPP est similaire à celle du courrier électronique. Popularisée en 2003, la Norme a été étendue en termes de fonctionnalités au fil des ans et est responsable d’applications telles que Whatsapp.
Caractéristiques
Sécurité et Cryptage
XMPP utilise des technologies et des mécanismes de cryptographie tels que la Messagerie Confidentielle (OTR) pour assurer les plus hauts niveaux de sécurité.
Chat multi-utilisateurs
XMPP utilise le chat multi-utilisateurs (MUC) pour prendre en charge les instances de plusieurs utilisateurs.
Séances entre pairs (Peer-to-peer)
La messagerie machine à machine (peer-to-peer) est rendue possible par l’utilisation d’une extension appelée Jingle.
Découverte de services
XMPP fournit des services de découverte locaux ou distants, malgré l’existence d’autres protocoles tels que le protocole de localisation de service.
Comment ça marche
Le mécanisme de fonctionnement de XMPP est basé sur les composants suivants:
Connexions TCP stables
Les connexions TCP sont persistantes, il n’est donc pas nécessaire de créer des connexions à chaque envoi de messages. Cependant, certaines nouvelles connexions XMPP peuvent utiliser des sockets Web avec ou un cryptage TLS.
Architecture Client-Serveur
XMPP communique en transmettant de petits paquets de données structurés entre les clients via des serveurs intermédiaires. Chaque utilisateur possède un identifiant unique, généralement similaire à un e-mail utilisé à des fins d’identification et de routage d’itinéraire.
Hébergement décentralisé
Avec XMPP, chacun peut maintenir et exécuter ses propres serveurs car ils sont centralisés. Son mécanisme de fonctionnement est similaire à celui du courrier électronique : les clients ne partagent pas les données directement, mais via des serveurs intermédiaires.
Avantages de l’utilisation de XMPP
- Il est stable et fiable.
- Prise en charge multilingue, y compris Java #, C++, Ruby, Pearl et bien d’autres.
- Il est open source et offre aux utilisateurs la possibilité de créer n’importe quel client en fonction de leurs besoins.
- Offre une livraison fiable.