SIP εναντίον XMPP (Jabber)
SIP και XMPP είναι πρωτόκολλα επιπέδου εφαρμογής που χρησιμοποιούνται κυρίως για την αποστολή φωνής ή άμεσων μηνυμάτων μέσω Διαδικτύου. Το SIP ορίζεται από το RFC 3621 και το XMPP ορίζεται στο RFC 3920. Βασικά το XMPP εξελίσσεται από το IM και το Presence, ενώ το SIP εξελίχθηκε από τη φωνή και το βίντεο μέσω IP. Το XMPP πρόσθεσε μια επέκταση που ονομάζεται Jingle για διαπραγμάτευση συνεδρίας και το SIP πρόσθεσε μια επέκταση που ονομάζεται SIMPLE για υποστήριξη IM και Παρουσία.
SIP (Πρωτόκολλο έναρξης περιόδου σύνδεσης)
Session Initiation Protocol (SIP) είναι ένα πρωτόκολλο επιπέδου εφαρμογής που χρησιμοποιείται για τη δημιουργία, την τροποποίηση και τον τερματισμό περιόδων σύνδεσης πολυμέσων, όπως οι κλήσεις VoIP. Το SIP μπορεί επίσης να προσκαλέσει νέες συνεδρίες σε υπάρχουσες συνεδρίες, όπως συνέδρια πολλαπλής εκπομπής. Βασικά αναφέρεται ως πρωτόκολλο σηματοδότησης στο περιβάλλον VoIP που μπορεί να χειριστεί την πραγματοποίηση κλήσεων, τον έλεγχο κλήσεων και τον τερματισμό κλήσεων και τη δημιουργία CDR (Call Detail Record) για σκοπούς χρέωσης.
XMPP (Extensible Messaging Presence Protocol)
Το XMPP είναι ένα ανοιχτό πρωτόκολλο επεκτάσιμης γλώσσας σήμανσης (XML) για υπηρεσίες ανταλλαγής μηνυμάτων, παρουσίας και απόκρισης αιτημάτων σε πραγματικό χρόνο. Αρχικά αναπτύχθηκε από την κοινότητα ανοιχτού κώδικα Jabber το 1999. Το 2002 η ομάδα εργασίας XMPP ανέπτυξε προσαρμογή του πρωτοκόλλου Jabber που είναι κατάλληλο για IM (Instant Messaging).
Διαφορά μεταξύ SIP και XMPP
Απλώς δεν μπορούμε να συγκρίνουμε το SIP και το XMPP, επειδή και τα δύο εξυπηρετούν διαφορετικούς σκοπούς, όπως η δημιουργία συνεδρίας και η δομημένη ανταλλαγή δεδομένων αντίστοιχα. Αλλά η εισαγωγή SIMPLE and Jingle εισάγει μερικές παρόμοιες λειτουργίες.
(1) Το SIP παρέχει εγκατάσταση, τροποποίηση και τερματισμό συνεδρίας, αλλά το XMPP παρέχει σωλήνα ροής για δομημένη ανταλλαγή δεδομένων μεταξύ ομάδων πελατών.
(2) Το SIP είναι πρωτόκολλο απόκρισης αιτήματος βάσει κειμένου και το XMPP είναι αρχιτεκτονική διακομιστή πελάτη που βασίζεται σε XML.
(3) Τα μηνύματα σηματοδότησης SIP περνούν μέσω των κεφαλίδων και του σώματος SIP ενώ στα μηνύματα XMPP περνούν μέσω του σωλήνα ροής. Το XMPP στέλνει αίτημα, απάντηση, ένδειξη ή σφάλμα χρησιμοποιώντας XML μέσω του σωλήνα ροής.
(4) Το SIP εκτελείται μέσω UDP, TCP και TLS ενώ το XMPP χρησιμοποιεί μόνο TCP και TLS.
(5) Στο SIP, ο πράκτορας χρήστη θα μπορούσε να είναι διακομιστής ή πελάτης, επομένως ο πράκτορας χρήστη μπορεί να στέλνει ή να λαμβάνει μηνύματα, ενώ στο XMPP ο πελάτης εκκινεί μόνο αιτήματα στον διακομιστή, ώστε να λειτουργεί με NAT και Τείχος προστασίας.
(6) Και το SIP και το XMPP είναι εύκολο να εφαρμοστούν.
Η τεχνική σύγκριση SIP και XMPP είναι σαν να συγκρίνεις μήλα και πορτοκάλια, επειδή τα βασικά πρωτόκολλα εξυπηρετούν διαφορετικούς σκοπούς: ραντεβού/καθιέρωση συνεδρίας έναντι δομημένης ανταλλαγής δεδομένων