Suchen

Definition Was ist SIP?

Mit dem Session Initiation Protocol (SIP) lassen sich Kommunikationsverbindungen zwischen zwei oder mehr Teilnehmern aufbauen, steuern und abbauen. Das Netzwerkprotokoll kommt häufig für den Aufbau von Sprachverbindungen in der VoIP-Telefonie (Voice over IP) zum Einsatz.

(© aga7ta - Fotolia)

Die Abkürzung SIP steht für Session Initiation Protocol. Es handelt sich dabei um ein Protokoll für den Auf- und Abbau sowie die Steuerung von Kommunikationsverbindungen zwischen zwei oder mehr Teilnehmern. Häufiges Einsatzgebiet ist die Voice-over-IP-Telefonie (VoIP), bei der SIP den Auf- und Abbau von Telefonverbindungen regelt.

Entwickelt wurde das Session Initiation Protocol von der IETF (Internet Engineering Task Force). Unter anderem finden sich zentrale Definitionen im RFC 3261. Wichtig zu wissen ist, dass SIP zwar den Aufbau von Gesprächsverbindungen steuert, jedoch nicht für die eigentliche Sprachübertragung zuständig ist. Ist eine Verbindung erfolgreich initiiert, findet die Kommunikation in der Regel direkt zwischen den beiden Kommunikationspartnern statt. Diese Aufgabe übernehmen andere Protokolle. Bei VoIP kommen hierfür Transportprotokolle wie bspw. RTP (Real-Time Transport Protocol) zum Einsatz. Die Mechanismen von SIP ermöglichen es, Verbindungen über Firewalls hinweg und vorbei an NAT-Grenzen (Network Address Translation) aufzubauen.

Grundsätzliche Funktionsweise und Aufbau einer Verbindung per SIP

Das Kommunikationsmodell des Session Initiation Protocols basiert auf einer klassischen Client-Server-Architektur. Eine andere Bezeichnung für den Client ist User Agent Client (UAC). Der Server wird User Agent Server (UAS) genannt. Weitere Komponenten im SIP-Umfeld können Proxy Server oder Redirect Server und andere Gateways sein.

Während der UAC den Verbindungsaufbau anfragt, übernimmt der UAS die Aufgabe, die Verbindungen zum Ziel zu vermitteln. Weitere Protokolle im Umfeld des Session Initiation Protocols dienen dazu, die Modalitäten der Kommunikation auszuhandeln und zwischen den Partnern zu vereinbaren. Details der Verbindungen managt zum Beispiel das Session Description Protocol (SDP).

Über das Session Initiation Protocol lassen sich sowohl Audio- als auch Videoverbindungen vermitteln und steuern. Mit Hilfe von SDP kann festgelegt werden, welche Codecs zum Einsatz kommen oder welche Netzadressen genutzt werden sollen. Dank der strikten Trennung von Verbindungsaufbau und Modalitätenaushandlung ergibt sich eine hohe Flexibilität. Die Übertragung der eigentlichen Daten findet über Transportprotokolle wie RTP (Real-Time Transport Protocol) statt.

Betrachtet man das Session Initiation Protocol aus Sicht des ISO-/OSI-Referenzmodells, agieren SIP und SDP in Layer 5 (Sitzungsschicht). SIP besitzt eine große Ähnlichkeit zu HTTP (Hypertext Transfer Protocol) und ist gut in verschiedene Anwendungen zu integrieren. Sobald eine Internetverbindung zur Verfügung steht, können Endgeräte über SIP eine Session aufbauen. Befinden sich die Teilnehmer einer Verbindung hinter einem NAT-Router, existieren Komponenten wie STUN-Server (Session Traversal Utilities for NAT), die die NAT-Grenzen überschreitbar machen. Hierfür kann der Client über den STUN-Server seine öffentliche IP-Adresse abfragen und diese mit Hilfe von SDP dem Server mitteilen. Dadurch ist sichergestellt, dass der Server den anderen Gesprächsteilnehmer informieren kann, an welche öffentliche IP-Adresse er die Gesprächsdaten per RTP zu senden hat.

Adressierung des Session Initiation Protocols

Die Adressierung für das Session Initiation Protocol erfolgt mittels URI (Uniform Resource Identifier) und DNS (Domain Name System). Jedem SIP-Teilnehmer wird eine Adresse zugewiesen, die starke Ähnlichkeit mit einer E-Mail-Adresse hat. So kann eine SIP-Adresse beispielsweise "teilnehmer-a@domain" lauten. Im hinteren Teil der Adresse ist das Netzwerk und im vorderen Teil der Benutzername oder die Telefonnummer definiert. Unverschlüsselte Verbindungen werden mit "sip:teilnehmer-a@domain" gekennzeichnet, verschlüsselte Verbindungen sind an der Benennung "sips:teilnehmer-a@domain" zu erkennen. Bei Geräten, die eine Schnittstelle zu herkömmlichen Telefonnetzen bereitstellen, findet sich im vorderen Teil der Adresse oft die Telefonnummer.

Sicherheitsrelevante Aspekte von SIP

Der einfache Aufbau des Session Initiation Protocols stellt einen großen Vorteil dar, bringt allerdings in puncto Sicherheit einige Probleme mit sich. Ohne besondere Maßnahmen überträgt das Session Initiation Protocol alle Informationen im Klartext. Dies macht das unbefugte Mitlesen und Abfangen von Verbindungsinformationen recht einfach.

Um diese Schwachstelle zu beseitigen, existiert eine verschlüsselte Variante SIPS (Session Initiation Protocol Secure). Die Trennung von Verbindungsaufbau und Übertragung der eigentlichen Nutzdaten gestattet es, beide Datenströme unabhängig voneinander zu verschlüsseln. Während SIPS für den geschützten Aufbau der Verbindung sorgt, stellt beispielsweise SRTP (Secure Real-Time Transport Protocol) sicher, dass auch alle Gesprächsdaten verschlüsselt sind. Im Hinblick auf die Sicherheit der kompletten Gesprächsverbindung ist darauf zu achten, dass stets sowohl der Verbindungsaufbau als auch die Nutzdatenübertragung verschlüsselt erfolgen.

Weitere Komponenten für Kommunikationsverbindungen mit SIP

In der Voice-over-IP-Telefonie basierend auf dem Session Initiation Protocol können neben dem User Agent Client (UAC) und dem User Agent Server (UAS) weitere Komponenten an einer Verbindung beteiligt sein. Dies sind beispielsweise:

  • Proxy Server
  • Registrar Server
  • Session Border Controller
  • Redirect Server
  • diverse Gateways

Proxy Server arbeiten als Vermittler und nehmen Verbindungsanfragen entgegen, die sie anderen über ihre eigene Absenderadresse zustellen. Für die Registrierung der Anfragen einer Domain ist der Registrar Server zuständig. Mit Hilfe des Redirect Servers ist es möglich, Einladungen zu SIP-Verbindungen an externe Domänen zu übermitteln. Session Border Controller und Gateways übernehmen die Rolle der Kopplung von Netzwerken mit unterschiedlichen Protokollen, Technologien oder Sicherheitsanforderungen.

(ID:45013040)

Über den Autor