Diferența dintre SIP și XMPP (Jabber)

SIP vs XMPP (Jabber)

SIP și XMPP sunt protocoalele de strat aplicație utilizate în principal pentru a trimite voce sau IM peste Internet . SIP este definit de RFC 3621 iar XMPP este definit în RFC 3920. În esență, XMPP este evoluat de la IM și Presence, în timp ce SIP a evoluat de la Voice and Video over IP. XMPP a adăugat o extensie numită Jingle pentru negocierea sesiunii, iar SIP a adăugat o extensie numită SIMPLE pentru a susține actualizarea și prezența.

Protocolul de inițiere a sesiunii (SIP) este un protocol de nivel de aplicație folosit pentru a stabili, modifica și termina sesiuni multimedia, cum ar fi apelurile VoIP. SIP poate, de asemenea, să invite sesiuni noi la sesiuni existente, cum ar fi conferințe de tip multicast. Practic, el este denumit protocol de semnalizare în mediul VoIP care poate gestiona stabilirea apelurilor, controlul apelurilor și terminarea apelurilor și generarea CDR (Call Detail Record) pentru scopuri de facturare.

XMPP (Extensible Messaging Presence Protocol)

XMPP este un protocol Open Language Markup (XML) deschis pentru servicii de mesagerie în timp real, prezență și răspuns la cerere. Inițial a fost dezvoltat de comunitatea open source Jabber în 1999. În 2002 grupul de lucru XMPP a dezvoltat adaptarea protocolului Jabber care este potrivit pentru IM (Instant Messaging).

Diferența dintre SIP și XMPP

Pur și simplu nu putem compara SIP și XMPP, deoarece ambele servesc scopuri diferite, cum ar fi stabilirea sesiunii și respectiv schimbul de date structurat. Dar introducerea SIMPLE și Jingle introduce câteva funcționalități similare.

(1) SIP oferă stabilirea, modificarea și terminarea sesiunii, dar XMPP oferă o conductă de streaming pentru schimbul de date structurat între un grup de clienți.

(2) SIP este un protocol de răspuns bazat pe text și XMPP este o arhitectură a serverului client bazată pe XML.

(3) Mesajele de semnalizare SIP trec prin anteturile SIP și corpul, în timp ce mesajele XMPP trec printr-o conductă de streaming. XMPP trimite cererea, răspunsul, indicația sau eroarea utilizând XML prin conducta de streaming.

(4) SIP rulează pe UDP, TCP și TLS, în timp ce XMPP utilizează numai TCP și TLS.

(5) În SIP, agentul utilizator ar putea fi server sau client, prin urmare agentul utilizator poate trimite sau primi mesaje, în timp ce clientul XMPP inițiază cereri doar pentru server, astfel încât acesta să funcționeze cu NAT și Firewall.

(6) Atât SIP cât și XMPP sunt ușor de implementat.

Compararea tehnică între SIP și XMPP este ca și cum ar fi compararea merelor și portocale, deoarece protocoalele de bază au diferite scopuri: întâlnirea de întâlnire / stabilirea vs. schimbul structurat de date