SIP (Session Initiation Protocol)
Was ist das Session Initiation Protocol (SIP)?
Das Session Initiation Protocol (SIP) ist ein Signalisierungsprotokoll, das für die Einleitung, Aufrechterhaltung, Änderung und Beendigung von Echtzeit-Kommunikationssitzungen zwischen IP-Geräten (Internet Protocol) verwendet wird. SIP ermöglicht Sprach-, Messaging-, Video- und andere Kommunikationsanwendungen und -dienste zwischen zwei oder mehr Endpunkten in IP-Netzwerken.
SIP wurde 1996 von der Internet Engineering Task Force (IETF) entwickelt und 1999 standardisiert.
SIP erfüllt die sich entwickelnden Anforderungen der IP-basierten Kommunikation. Die native Unterstützung von Mobilität, Interoperabilität und Multimedia war eine der treibenden Kräfte hinter der Entwicklung von SIP. SIP ergänzt andere Kommunikationsprotokolle, wie das Real-Time Transport Protocol (RTP) und das Real Time Streaming Protocol (RTSP), die in IP-basierten Sitzungen verwendet werden.
SIP-Merkmale
Das SIP-Kommunikationsprotokoll bestimmt fünf Attribute beim Aufbau und der Beendigung von Multimedia-Sitzungen:
- Standort des Nutzers
- Verfügbarkeit des Nutzers
- Benutzerfähigkeiten
- Sitzungsaufbau
- Sitzungsmanagement
SIP-Sitzungen können Internettelefonie, Videokonferenzen und andere Formen von Unified Communications umfassen. Das Protokoll eignet sich für die Einladung von Teilnehmern zu Unicast- oder Multicast-Sitzungen, an denen der Initiator nicht unbedingt beteiligt ist.
SIP bietet keine Kommunikationsdienste an. Stattdessen definiert es interoperable Implementierungen von SIP-Funktionen, sogenannte Primitives, die zur Erleichterung verschiedener Dienste verwendet werden. Mit Hilfe der Primitives lassen sich zusätzliche Informationen in eine SIP-Nachricht einbetten, zum Beispiel die Verknüpfung des Fotos eines Benutzers mit Verzeichnisinformationen, um seine Anrufer-ID zu verbessern.
SIP unterstützt auch Namenszuordnungs- und Umleitungsdienste, zwei Möglichkeiten, wie das Protokoll Mobilität ermöglicht. Benutzer und Endpunkte werden mit einem einzigen Identifikator, dem Uniform Resource Identifier (URI), erkannt, der unabhängig von ihrem Netzstandort ist. URIs sind alphanumerisch und verwenden eine Syntax, die eher an eine E-Mail-Adresse als an eine Telefonnummer oder IP-Adresse erinnert. Andere SIP-Funktionen sind über Anwendungsprogrammierschnittstellen verfügbar.
Zusätzlich zu den Echtzeitdiensten wird SIP für asynchrone Ereignisbenachrichtigungen verwendet, beispielsweise für automatische Rückrufe, Indikatoren für das Warten auf Nachrichten und auf Anwesenheit basierende Freundeslisten.
Wie funktioniert das SIP-Protokoll?
SIP funktioniert ähnlich wie das Hypertext Transfer Protocol (HTTP) und das Simple Mail Transfer Protocol (SMTP) und enthält Teile davon. Wie HTTP oder SMTP arbeitet SIP in der Anwendungsschicht des OSI-Modells. Es wird von IPv4 und IPv6 unterstützt.
SIP kann als eine Client-Server-Architektur betrachtet werden. Es arbeitet auch mit anderen Protokollen zusammen, nämlich dem Session Description Protocol (SDP), das in den SIP-Nachrichten enthalten ist. SDP dient zur Beschreibung der Multimedia-Kommunikation für Einladungen, Ankündigungen und Parameterverhandlungen.
Außerdem ist SIP ein textbasiertes Protokoll wie HTTP, das heißt, sein Inhalt ist in einem lesbaren Format. Dadurch ist SIP im Vergleich zu ähnlichen Signalisierungsprotokollen wie H.323 einfacher zu lesen und zu debuggen.
SIP ist ein Anfrage-Antwort-Protokoll. Anfragen und Antworten sind die Namen der Nachrichten, die Protokolle zwischen Geräten zur Kommunikation senden. SIP empfängt Anfragen von Clients und Antworten von Servern. Anfragen können über ein beliebiges Transportprotokoll gesendet werden, beispielsweise über das User Datagram Protocol (UDP), Stream Control Transmission Protocol (SCTP) oder Transmission Control Protocol (TCP).
Geräte, die SIP verwenden, kommunizieren direkt über einen SIP-Proxyserver miteinander. Der Proxy fungiert als zwischengeschaltetes System zur Entlastung von Aufgaben, die sonst von SIP erledigt würden.
SIP bestimmt den Endpunkt, der für eine Sitzung verwendet wird, die Kommunikationsmedien und Medienparameter und ob der angerufene Teilnehmer der Kommunikation zustimmt. Anschließend legt SIP die Anrufparameter an beiden Enden der Kommunikation fest und übernimmt auch das Weiterleiten und Beenden von Anrufen.
Beispiele für SIP-Anfragen
SIP stellt Anfragen, die auf seinen Merkmalen und Funktionen basieren. Hier sind Beispiele für einfache Anfragen:
- Invite: Startet einen Dialog, der einen Anruf einleitet.
- Ack: Bestätigt, dass der andere Benutzer auf eine Anfrage geantwortet hat.
- Update: Kann verwendet werden, um eine Sitzung zu ändern, ohne den Status des Dialogs zu ändern.
- Cancel: Stoppt ausstehende Anfragen.
- Bye: Beendet Dialoge und Anrufe.
SIP und VoIP
In der Telekommunikation besteht ein Sprachanruf aus zwei Phasen: dem Verbindungsaufbau und der Datenübertragung. Voice over IP (VoIP) wird zur Übertragung von Sprache und Multimediainhalten über das Internet verwendet. SIP kann in diesem Prozess als Telefonzentrale betrachtet werden. Es übernimmt die Phase des Verbindungsaufbaus bei VoIP-Anrufen.
Beim Verbindungsaufbau geht es darum, die Details zu organisieren, damit zwei Telefone oder Geräte miteinander verbunden werden können. Die Datenübertragung findet nach dem Verbindungsaufbau statt. Protokolle wie RTP senden Pakete in der Datenübertragungsphase eines Anrufs.
SIP-Netzwerke bestehen aus mehreren Elementen, die SIP-Anfragen zwischen zwei Endpunkten verwalten. Diese Elemente sind erforderlich, um einen VoIP-Anruf aufzubauen, jedem Endpunkt die IP-Adresse des anderen Endpunkts mitzuteilen und den Datenaustausch zu beginnen.
Nachfolgend sind die drei wichtigsten Elemente des SIP-Netzwerks aufgeführt:
- Benutzeragenten: Dies sind Endpunkte oder Geräte, die Clients oder Anrufer und Server oder Empfänger sein können.
- Registrierdienste: In diesem Fall auch Domain Name Systems (DNS) genannt, speichern Informationen über die Benutzeragenten – wie die Netzwerk/IP-Adresse – in einer Datenbank. Sie authentifizieren die Benutzer im Netz.
- Standortdienste: Diese Dienste erhalten Einladungsanfragen vom anrufenden Benutzer. Sie fragen das Register nach der IP-Adresse des Anrufempfängers ab und senden die Einladung an den Benutzeragenten des Empfängers. Die Antworten des Empfängers auf die Einladung werden über den Standortserver zurückgesendet.
Der Standortdienst und der Registrierdienst lassen sich gemeinsam auf einem einzigen Server, dem Proxy-Server, hosten. Der Proxy-Server ermöglicht es dem Registrier- und dem Standortserver, die gemeinsame Aufgabe der Benutzerauthentifizierung zu erfüllen. Sie stellen die für die Kommunikation erforderlichen Informationen bereit und können auch auf eigenen, unabhängigen Servern untergebracht werden.
Während sich VoIP nur mit der Sprachkommunikation befasst, kann SIP auch andere Medien wie Bilder und Videos übertragen. Außerdem ist SIP ein Protokoll, während VoIP eine Sammlung von Technologien und Methoden ist, die Internettelefonie ermöglichen. Viele Unternehmen verwenden eine Technik namens SIP-Trunking, um die VoIP-Effizienz im Unternehmen zu verbessern.
SIP ist heute der Standard für die Initiierung der IP-Netzwerkkommunikation. Erfahren Sie in dieser Einführung mehr über die Funktionsweise von SIP und SIP-Trunking.