Das Session In­itia­ti­on Protocol (SIP) ist für den Auf- und Abbau von Audio- und Vi­deo­ver­bin­dun­gen in Echtzeit zuständig. Es kommt ins­be­son­de­re in der IP-Telefonie zum Einsatz.

Was ist SIP?

Ob im Be­rufs­le­ben oder im privaten Kontext: Vi­deo­kon­fe­ren­zen, Instant Messaging, File­sha­ring, IP-Te­le­fon­ge­sprä­che und andere Formen der Echtzeit-Kom­mu­ni­ka­ti­on gehören für viele zum täglichen Leben. Ein wichtiger Faktor bei all diesen An­wen­dun­gen ist das Session In­itia­ti­on Protocol oder kurz SIP. Dieses ist als Netz­pro­to­koll ins­be­son­de­re für den initialen Aufbau, die Steuerung und den späteren Abbau von Audio- oder Vi­deo­ge­sprä­chen über VoIP (Voice over IP) mit zwei oder mehr Teil­neh­me­rin­nen bzw. Teil­neh­mern wichtig. Die Technik be­rück­sich­tigt die Be­son­der­hei­ten von IP-Netz­wer­ken und ist eine maß­geb­li­che Kom­po­nen­te im Bereich der Echtzeit-Kom­mu­ni­ka­ti­on.

Die Ein­füh­rung von SIP, das im RFC 3261 spe­zi­fi­ziert wurde, machte das Te­le­fo­nie­ren über das Internet erst zu einer tat­säch­li­chen Al­ter­na­ti­ve zum her­kömm­li­chen Te­le­fon­ge­spräch über eine hard­ware­ba­sier­te Te­le­fon­an­la­ge. Durch das SIP-Protokoll sind Nut­ze­rin­nen und Nutzer zum einen deutlich mobiler und pro­fi­tie­ren zum anderen von großen Kos­ten­vor­tei­len. Aus diesem Grund wurde SIP seit seiner Ein­füh­rung 2004 bis heute immer wichtiger und hat die sta­tio­nä­re Te­le­fon­an­la­ge nahezu voll­stän­dig abgelöst.

Das Session In­itia­ti­on Protocol ist text­ba­siert und in vielen Punkten ver­gleich­bar mit HTTP für das Web und SMTP (Simple Mail Transfer Protocol) für die Kom­mu­ni­ka­ti­on per E-Mail.

Welche Aufgaben hat das SIP-Protokoll?

Ähnlich wie die beiden anderen Pro­to­kol­le arbeitet auch SIP auf der fünften Ebene des OSI-Modells, der Sit­zungs­schicht (englisch: Session Layer). Die Aufgabe des SIP-Pro­to­kolls ähnelt dabei der einer Schalt­ta­fel aus den Anfängen des Telefons. Hierbei sorgten Te­le­fo­nis­tin­nen und Te­le­fo­nis­ten zunächst dafür, dass das Gespräch zwischen zwei Personen aufgebaut werden konnte. Im Verlauf des Gesprächs wurde die Leitung auf­recht­erhal­ten, und waren beide Parteien am Ende angelangt, wurde die Ver­bin­dung beendet und die Leitung damit wieder frei­ge­hal­ten für andere Anrufe. Diese Aufgaben erledigt auch SIP. Für andere Aspekte der Kom­mu­ni­ka­ti­on ist das Session In­itia­ti­on Protocol hingegen nicht zuständig.

Wie funk­tio­niert SIP?

SIP basiert auf einer her­kömm­li­chen Client-Server-Ar­chi­tek­tur. Das grund­sätz­li­che Protokoll funk­tio­niert über Anfragen und Antworten, wobei das Session In­itia­ti­on Protocol als Ver­mitt­ler zwischen den an­ge­schlos­se­nen End­ge­rä­ten agiert. Dabei kann es sich um beinahe jedes Device mit In­ter­net­an­bin­dung handeln. SIP empfängt dann die Anfragen von Clients oder User Agent Clients (UAC) und Antworten von den je­wei­li­gen Servern oder User Agent Servern (UAS). Über die Schnitt­stel­le SIP-Trunk werden Ruf­num­mern zur Verfügung gestellt. Für den ei­gent­li­chen Da­ten­aus­tausch sind danach al­ler­dings die anderen an­ge­spro­che­nen Pro­to­kol­le ver­ant­wort­lich. Weitere Kom­po­nen­ten für die Kom­mu­ni­ka­ti­on mit SIP können Proxy Server und andere Gateways sein.

Für die Ver­bin­dung ermittelt das Session De­scrip­ti­on Protocol, welche Art der Ver­bin­dung möglich ist, und regelt die Mo­da­li­tä­ten. Diese un­ter­schied­li­chen Methoden werden auch als Codecs be­zeich­net. Auch die Netz­adres­sen, die zum Einsatz kommen sollen, werden durch das SDP fest­ge­legt. Ist dies geklärt, sorgt ein Protokoll wie RTP für die Über­mitt­lung der ei­gent­li­chen Daten. Ist die Session beendet, wird die Ver­bin­dung durch das SIP-Protokoll ord­nungs­ge­mäß getrennt.

Wie wird das Session In­itia­ti­on Protocol adres­siert?

Für die korrekte Adres­sie­rung verwendet SIP den Uniform Resource Iden­ti­fier (URI) sowie das Domain Name System (DNS). Die Adressen, die allen Teil­neh­me­rin­nen und Teil­neh­mern so zu­ge­wie­sen werden, ähneln in ihrem Aufbau ge­wöhn­li­chen E-Mail-Adressen. Wie bei einer E-Mail-Adresse besteht eine SIP-Adresse aus zwei Teilen: einem Be­nut­zer­na­men oder einer Te­le­fon­num­mer am Anfang und dahinter dem ent­spre­chen­den Netzwerk. Te­le­fon­num­mern sind ins­be­son­de­re bei Geräten geläufig, die eine Schnitt­stel­le zu regulären Te­le­fon­net­zen anbieten.

Welche SIP-Anfragen gibt es?

SIP kennt ver­schie­de­ne Anfragen oder Requests, auf die dann mit Antworten bzw. Responses reagiert wird. Diese Antworten lehnen sich an die HTTP-Sta­tus­codes an. Die Requests der SIP-Pro­to­kol­le werden un­ter­teilt in ele­men­ta­re SIP-Anfragen und er­wei­ter­te SIP-Anfragen. Dies sind die Requests im Detail:

Ele­men­ta­re SIP-Requests

  • ACK bestätigt eine emp­fan­ge­ne Anfrage oder eine Antwort.
  • Mit BYE wird eine aktive Sitzung ord­nungs­ge­mäß beendet.
  • Die SIP-Anfrage CANCEL widerruft einen aus­ste­hen­den Request.
  • Über INVITE wird eine Anfrage an einen Server gesendet, um eine Session auf­zu­bau­en.
  • OPTIONS stellt End­ge­rä­ten eine Übersicht über die Spe­zi­fi­ka­tio­nen der anderen be­tei­lig­ten Devices zur Verfügung.
  • REGISTER meldet ein Device beim Service-Anbieter an.

Er­wei­ter­te SIP-Requests

  • Über INFO werden In­for­ma­tio­nen über­mit­telt, die nicht in direktem Zu­sam­men­hang zur SIP-Session stehen.
  • MESSAGE über­mit­telt eine Text­nach­richt an ein Device.
  • NOTIFY überprüft den Zustand der Ver­bin­dung und sendet Be­nach­rich­ti­gun­gen, falls es zu Än­de­run­gen kommt.
  • PRACK bestätigt einen Request vorläufig.
  • Diese SIP-Anfrage REFER leitet eine be­stehen­de Ver­bin­dung an einen weiteren Teil­neh­mer oder eine Teil­neh­me­rin weiter.
  • Durch SUBSCRIBE kann ein be­stimm­tes Ereignis überwacht und bei seinem Eintritt eine Nachricht versendet werden.
  • UPDATE kann den Status eines Anrufs verändern.

Welche SIP-Responses werden genutzt?

SIP-Responses werden als Antwort auf die oben auf­ge­führ­ten Anfragen genutzt. Man un­ter­teilt diese Antworten in sechs Ka­te­go­rien:

  • 1xx liefert vor­läu­fi­ge Sta­tus­in­for­ma­tio­nen, bevor es z. B. zu einer Reaktion des Servers kommt.
  • 2xx zeigt an, dass die Anfrage er­folg­reich war.
  • 3xx in­for­miert über mögliche oder nötige Wei­ter­lei­tun­gen.
  • 4xx zeigt an, dass ein Request nicht be­ar­bei­tet werden konnte.
  • 5xx in­for­miert über einen Fehler auf Server-Seite.
  • 6xx zeigt an, dass zwar der Server kon­tak­tiert werden konnte, die Trans­ak­ti­on aber aus über­grei­fen­den Gründen nicht zustande kommt.

Was ist der Un­ter­schied zwischen SIP und VoIP?

Auch wenn die Begriffe häufig im Zu­sam­men­hang verwendet werden und beide Pro­to­kol­le eng zu­sam­men­hän­gen, sind SIP und VoIP nicht synonym. Das SIP-Protokoll baut eine Ver­bin­dung auf, hält diese aufrecht und beendet sie. Für die ei­gent­li­che Über­mitt­lung der Da­ten­pa­ke­te über ver­schie­de­ne Netz­werk­ty­pen und Server wird dann al­ler­dings das Protokoll VoIP benötigt. Es setzt also da an, wo SIP die Vorarbeit geleistet hat.

Zum Hauptmenü