Session Initiation Protocol

Netzwerk-Kommunikationsprotokoll
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 11. Juli 2004 um 21:35 Uhr durch Laenzlinger (Diskussion | Beiträge) (typo). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Das Session Initiation Protocol (SIP) ist ein Netzwerkprotokoll zum Aufbau einer Kommunikationssitzung zwischen Benutzern. Das Protokoll wird in RFC 3261 (früher 2543) spezifiziert. Es wird bei der IP-Telefonie verwendet.

Im Gegensatz zu H.323, welcher von der ITU-T stammt, wurde SIP mit Blick auf das Internet von der IETF entwickelt und orientiert sich an der Architektur gängiger Internet-Anwendungen. Dabei wurde von Beginn an auf leichte Implementierbarkeit, Skalierbarkeit, Erweiterbarkeit und Flexibilität geachtet. Benutzt werden kann es, um beliebige Sessions mit einem oder mehreren Teilnehmern zu verwalten. Dabei ist es nicht auf Internet-Telefonie beschränkt, sondern Sessions können beliebige Multimediaströme, Konferenzen, Computerspiele, usw. sein.

Um jedoch ein Internet-Telefonat zu führen, braucht man mehr als nur SIP. SIP dient lediglich dazu, die Kommunikation zu ermöglichen -- die eigentlichen Daten für die Kommunikation müssen über andere, dafür geeignete Protokolle ausgetauscht werden. Hierzu werden das Session Description Protocol (SDP, RFC 2327) und das Realtime Transport Protocol (RTP, RFC 1889) eingesetzt. SDP dient dazu, die zwischen den Endpunkten zu verwendenden Codecs, Transportprotokolle, usw. auszuhandeln. Aufgabe von RTP ist es, den Multimedia-Datenstrom (Audio, Video, Text, ...) zu transportieren -- d.h. die Daten zu kodieren, zu paketieren und zu versenden.

SIP basiert unter anderem auf dem HTTP-Protokoll -- es verwendet eine ähnliche Header-Struktur und ist ebenfalls ein textbasiertes Protokoll. Zur Schreibweise der Teilnehmeradressen wird das bereits von e-mail bekannte Format (sip:user@domain) benutzt.

Unterstützung findet SIP bereits in vielen Geräten diverser Hersteller und es scheint sich zum Standard-Protokoll zu entwickeln. SIP wurde auch vom 3rd Generation Partnership Project (3GPP) als Protokoll für Multimediaunterstützung im 3G-Mobilfunk (UMTS) ausgewählt.


Zu den Nachteilen von SIP gehört, dass es zur Übertragung der Sprachdaten auf RTP zurückgreift. Die dafür verwendeten UDP-Ports werden dynamisch vergeben, was die Verwendung von SIP in Verbindung mit Firewalls oder Network Address Translation (NAT, RFC 2663) schwierig macht, da die meisten Firewalls bzw. NAT-Router die dynamisch vergebenen Ports nicht der Signalisierungsverbindung zuordnen können. Abhilfe für dieses Problem können z.B. andere Protokolle wie IAX schaffen.

Weiterhin sind auch viele Dienstmerkmale die aus dem Festnetz bekannt sind nicht im SIP-Protokoll selbst, sondern in Erweiterungen zum SIP-Protokoll definiert, so dass diese nicht von allen Endgeräten unterst"utzt werden. Im Gegensatz zu H.323 unterstützt SIP ausschließlich Blockwahl. Dies bedeutet, dass die Rufnummer erst in voller Länge gewählt werden muss und erst dann der Anruf gestartet werden kann -- im Gegensatz zu der vom herkömmlichen Telefon bekannten Weise, dass man durch Abnehmen des Hörers schon den Anruf startet und dann erst die Rufnummer wählt.