SIP vs XMPP (Jabber)
SIP a XMPP sú protokoly aplikačnej vrstvy, ktoré sa väčšinou používajú na odosielanie hlasu alebo okamžitých správ cez internet. SIP je definovaný v RFC 3621 a XMPP je definovaný v RFC 3920. XMPP je v zásade vyvinutý z okamžitých správ a prítomnosti, zatiaľ čo SIP sa vyvíjal z hlasu a videa cez IP. XMPP pridal rozšírenie s názvom Jingle pre vyjednávanie relácie a SIP pridalo rozšírenie s názvom SIMPLE na podporu okamžitých správ a prítomnosti.
SIP (Session Initiation Protocol)
Session Initiation Protocol (SIP) je protokol aplikačnej vrstvy používaný na nadviazanie, úpravu a ukončenie multimediálnych relácií, ako sú VoIP hovory. SIP tiež môže pozývať nové relácie na existujúce relácie, ako sú konferencie multicast. V zásade sa v prostredí VoIP označuje ako signalizačný protokol, ktorý dokáže spracovať zostavenie hovoru, kontrolu a ukončenie hovoru a generovanie CDR (Call Detail Record) na fakturačné účely.
XMPP (Extensible Messaging Presence Protocol)
XMPP je otvorený protokol XML (Extensible Markup Language) pre služby zasielania správ, prítomnosti a odozvy v reálnom čase. Pôvodne ho vyvinula komunita open source spoločnosti Jabber v roku 1999. V roku 2002 pracovná skupina XMPP vyvinula adaptáciu protokolu Jabber Protocol, ktorá je vhodná pre okamžité správy (Instant Messaging).
Rozdiel medzi SIP a XMPP
Nemôžeme porovnávať SIP a XMPP, pretože obe slúžia na rôzne účely, ako je vytváranie relácií a štruktúrovaná výmena dát. Úvod SIMPLE a Jingle ale predstavuje niektoré podobné funkcie.
(1) SIP poskytuje vytvorenie, úpravu a ukončenie relácie, ale XMPP poskytuje streamovacie potrubie na výmenu štruktúrovaných údajov medzi skupinou klientov.
(2) SIP je textový protokol odpovede na žiadosť a XMPP je architektúra klientskeho servera založená na XML.
(3) Signálne správy SIP prechádzajú cez hlavičky a telo SIP, zatiaľ čo správy XMPP prechádzajú cez streamovacie potrubie. XMPP odosiela požiadavku, odpoveď, indikáciu alebo chybu pomocou XML prostredníctvom streamovacieho kanálu.
(4) SIP funguje cez UDP, TCP a TLS, zatiaľ čo XMPP používa iba TCP a TLS.
(5) V rámci protokolu SIP môže byť používateľským agentom server alebo klient, a teda používateľský agent môže odosielať alebo prijímať správy, zatiaľ čo v XMPP klient iniciuje iba požiadavky na server, takže bude pracovať s NAT a Firewall.
(6) SIP aj XMPP sa dajú ľahko implementovať.
Technicky je porovnanie SIP a XMPP ako porovnanie jabĺk a pomarančov, pretože základné protokoly slúžia na rôzne účely: stretnutie zasadnutia / založenie vs výmena štruktúrovaných údajov.