SIP vs XMPP (Jabber)
SIP och XMPP är applikationslagerprotokoll som oftast används för att skicka röst eller IM via Internet. SIP definieras av RFC 3621 och XMPP definieras i RFC 3920. I grund och botten utvecklas XMPP från IM och närvaro, medan SIP utvecklats från Voice och Video över IP. XMPP lade till en anknytning som heter Jingle för sessionförhandling och SIP lade till en anknytning som heter SIMPLE för att stödja IM och Närvaro.
SIP (Session Initiation Protocol)
Session Initiation Protocol (SIP) är ett programlagringsprotokoll som används för att upprätta, ändra och avsluta multimediasessioner som VoIP-samtal. SIP kan också bjuda in nya sessioner till befintliga sessioner som multicast-konferenser. I grund och botten är det refererat som signaleringsprotokoll i VoIP-miljö som kan hantera samtalsinrättningar, samtalskontroll och samtalsterminering och generera CDR (Call Detail Record) för fakturering.
XMPP (Extensible Messaging Presence Protocol)
XMPP är ett öppet Extensible Markup Language (XML) -protokoll för realtidsmeddelanden, närvaro och begäran om svartjänster. Ursprungligen utvecklades den av Jabber Open Source Community 1999. Under 2002 utvecklade XMPP-arbetsgruppen anpassning av Jabber Protocol som passar för IM (Instant Messaging).
Skillnad mellan SIP och XMPP
Vi kan bara inte jämföra SIP och XMPP eftersom båda tjänar olika ändamål som sessionstjänst och strukturerad datautbyte respektive. Men introduktionen SIMPLE och Jingle introducerar några liknande funktioner.
(1) SIP tillhandahåller sessionstjänst, modifiering och uppsägning, men XMPP tillhandahåller strömmande rör för strukturerad datautbyte mellan grupper av klienter.
(2) SIP är ett textbaserat förfrågningsprotokoll och XMPP är en XML-baserad klientserverarkitektur.
(3) SIP-signaleringsmeddelanden går via SIP-headers och body medan i XMPP-meddelanden passerar via strömmande rör. XMPP skickar begäran, svar, indikation eller fel med XML via streamingröret.
(4) SIP körs över UDP, TCP och TLS medan XMPP endast använder TCP och TLS.
(5) I SIP kan användaragent vara en server eller en klient, därmed användaragent kan skicka eller ta emot meddelanden medan XMPP-klienten endast initierar förfrågningar till servern så att det kommer att fungera med NAT och Firewall.
(6) Både SIP och XMPP är lätta att genomföra.
Tekniskt jämförande SIP och XMPP är att jämföra äpplen och apelsiner eftersom kärnprotokollen tjänar olika syften: session rendezvous / establishment vs structured data exchange