SIP vs XMPP (Jabber)
SIP i XMPP to protokoły warstwy aplikacji używane głównie do wysyłania głosu lub wiadomości błyskawicznych przez Internet. SIP jest zdefiniowany przez RFC 3621, a XMPP jest zdefiniowany w RFC 3920. Zasadniczo XMPP ewoluuje z IM i Presence, podczas gdy SIP ewoluuje z Voice and Video over IP. XMPP dodało rozszerzenie o nazwie Jingle do negocjacji sesji, a SIP dodało rozszerzenie o nazwie SIMPLE do obsługi wiadomości błyskawicznych i obecności.
SIP (Session Initiation Protocol)
Session Initiation Protocol (SIP) to protokół warstwy aplikacji służący do nawiązywania, modyfikowania i kończenia sesji multimedialnych, takich jak połączenia VoIP. SIP może również zapraszać nowe sesje do istniejących sesji, takich jak konferencje multiemisji. Zasadniczo nazywany jest protokołem sygnalizacyjnym w środowisku VoIP, który może obsługiwać nawiązywanie połączeń, kontrolę połączeń i ich zakończenie oraz generowanie CDR (Call Detail Record) do celów rozliczeniowych.
XMPP (Extensible Messaging Presence Protocol)
XMPP to otwarty protokół XML (Extensible Markup Language) do przesyłania wiadomości w czasie rzeczywistym, usług obecności i odpowiedzi na żądania. Pierwotnie został opracowany przez społeczność open source Jabber w 1999 r. W 2002 r. Grupa robocza XMPP opracowała adaptację protokołu Jabber, która jest odpowiednia dla komunikatorów internetowych (Instant Messaging).
Różnica między SIP a XMPP
Po prostu nie możemy porównać SIP i XMPP, ponieważ oba służą różnym celom, takim jak ustanowienie sesji i odpowiednio zorganizowana wymiana danych. Ale wprowadzenie SIMPLE i Jingle wprowadza podobne funkcje.
(1) SIP zapewnia nawiązywanie, modyfikowanie i kończenie sesji, ale XMPP zapewnia potok przesyłania strumieniowego do ustrukturyzowanej wymiany danych między grupą klientów.
(2) SIP to tekstowy protokół odpowiedzi na żądanie, a XMPP to architektura serwera klienta oparta na języku XML.
(3) Komunikaty sygnalizacyjne SIP przechodzą przez nagłówki i treść SIP, natomiast w komunikatach XMPP przesyłane są przez potok strumieniowy. XMPP wysyła żądanie, odpowiedź, wskazanie lub błąd za pomocą XML za pośrednictwem potoku przesyłania strumieniowego.
(4) SIP działa na UDP, TCP i TLS, podczas gdy XMPP używa tylko TCP i TLS.
(5) W SIP agentem użytkownika może być serwer lub klient, dlatego agent użytkownika może wysyłać lub odbierać wiadomości, podczas gdy w XMPP klient inicjuje tylko żądania do serwera, więc będzie działał z NAT i Firewallem.
(6) Zarówno SIP, jak i XMPP są łatwe do wdrożenia.
Techniczne porównywanie SIP i XMPP przypomina porównywanie jabłek i pomarańczy, ponieważ podstawowe protokoły służą różnym celom: spotkanie / ustanowienie sesji a wymiana danych strukturalnych