SIP contre XMPP (Jabber)
SIP et XMPP sont des protocoles de couche application principalement utilisés pour envoyer de la voix ou des messages instantanés sur Internet. SIP est défini par RFC 3621 et XMPP est défini dans RFC 3920. Fondamentalement, XMPP a évolué à partir de la messagerie instantanée et de la présence, tandis que SIP a évolué à partir de la voix et de la vidéo sur IP. XMPP a ajouté une extension appelée Jingle pour la négociation de session et SIP a ajouté une extension appelée SIMPLE pour prendre en charge la messagerie instantanée et la présence.
SIP (Session Initiation Protocol)
Session Initiation Protocol (SIP) est un protocole de couche application utilisé pour établir, modifier et terminer des sessions multimédia telles que les appels VoIP. SIP peut également inviter de nouvelles sessions à des sessions existantes telles que des conférences multidiffusion. Fondamentalement, il s'agit d'un protocole de signalisation dans un environnement VoIP qui peut gérer l'établissement d'appels, le contrôle d'appels et la terminaison d'appels et générer des CDR (Call Detail Record) à des fins de facturation.
XMPP (Extensible Messaging Presence Protocol)
XMPP est un protocole XML (Extensible Markup Language) ouvert pour les services de messagerie, de présence et de réponse aux demandes en temps réel. À l'origine, il a été développé par la communauté open source Jabber en 1999. En 2002, le groupe de travail XMPP a développé une adaptation du protocole Jabber adaptée à la messagerie instantanée (IM).
Différence entre SIP et XMPP
Nous ne pouvons tout simplement pas comparer SIP et XMPP car les deux ont des objectifs différents comme l'établissement de session et l'échange de données structurées respectivement. Mais l'introduction SIMPLE et Jingle introduit des fonctionnalités similaires.
(1) SIP fournit l'établissement, la modification et la terminaison de session, mais XMPP fournit un canal de diffusion en continu pour l'échange de données structuré entre un groupe de clients.
(2) SIP est un protocole de réponse à la demande basé sur du texte et XMPP est une architecture client-serveur basée sur XML.
(3) Les messages de signalisation SIP passent par les en-têtes et le corps SIP, tandis que dans les messages XMPP, ils passent par le canal de diffusion. XMPP envoie une requête, une réponse, une indication ou une erreur en utilisant XML via le tube de diffusion.
(4) SIP fonctionne sur UDP, TCP et TLS alors que XMPP utilise uniquement TCP et TLS.
(5) Dans SIP, l'agent utilisateur peut être un serveur ou un client, donc l'agent utilisateur peut envoyer ou recevoir des messages alors que dans XMPP, le client ne lance que des requêtes au serveur afin qu'il fonctionne avec NAT et pare-feu.
(6) SIP et XMPP sont faciles à mettre en œuvre.
Comparer techniquement SIP et XMPP, c'est comme comparer des pommes et des oranges, car les protocoles de base ont des objectifs différents: rendez-vous/établissement de session vs échange de données structuré