SIP (Session Initiation Protocol, RFC 3261) ist ein textbasiertes Request/Response-Signalisierungsprotokoll, das Echtzeit-Mediensitzungen wie Sprach- und Videoanrufe aufbaut, ändert und beendet. Es definiert User Agents, Proxies, Registrars und Redirect Server und trägt die Session Description (SDP), die die zwischen den Endpunkten auszutauschenden Medien aushandelt.
Was SIP ist
SIP ist ein Steuerprotokoll der Anwendungsschicht zum Erstellen und Verwalten von Multimedia-Sitzungen über IP — am häufigsten Sprache (VoIP), Video und Messaging. Es trägt die Medien nicht selbst; es handelt Sitzungen aus und steuert sie, dann fließen die Medien separat über RTP. Sein Design ist bewusst HTTP-ähnlich: menschenlesbare Textnachrichten, Request-Methoden und dreistellige Response-Codes sowie URI-basierte Adressierung (sip:alice@example.com). Diese Vertrautheit und seine Unabhängigkeit von den zugrunde liegenden Medien machten SIP zum Standard-Signalisierungsprotokoll für VoIP, SIP-Trunking und VoLTE/IMS.
SIP-Entitäten
SIP definiert einen kleinen Satz logischer Rollen. Ein User Agent ist ein Endpunkt: Er agiert als User Agent Client (UAC), wenn er einen Request sendet, und als User Agent Server (UAS), wenn er antwortet. Proxies routen Requests zum Ziel und können sie an mehrere Ziele forken. Ein Registrar erfasst über REGISTER, wo ein Nutzer derzeit erreichbar ist (sein Contact). Ein Redirect Server gibt einen alternativen Ort zurück, statt weiterzuleiten. Ein Back-to-Back User Agent (B2BUA) terminiert einen Anruf und initiiert ihn neu und sitzt mitten in der Signalisierung und oft in den Medien — das Modell, das Session Border Controller und PBX-Anlagen nutzen.
| Entität | Rolle |
|---|---|
| UAC | User Agent Client – initiiert eine Anfrage |
| UAS | User Agent Server – beantwortet eine Anfrage |
| Proxy | Routet/leitet Anfragen weiter, kann an mehrere Ziele forken |
| Registrar | Speichert den aktuellen Contact eines Benutzers (per REGISTER) |
| Umleitungsserver | Gibt einen alternativen Standort (3xx) zurück, statt weiterzuleiten |
| B2BUA | Beendet und initiiert einen Anruf neu (SBC, PBX) |
Transaktionen und Dialoge
SIP hat zwei Zustandsebenen. Eine Transaktion ist ein einzelner Request und seine Responses (zum Beispiel ein INVITE und die 100/180/200, die es auslöst), identifiziert durch den Via-branch-Parameter. Ein Dialog ist die längere Peer-to-Peer-Beziehung, die ein Anruf darstellt, identifiziert durch die Kombination aus Call-ID, dem From-Tag und dem To-Tag. INVITE erzeugt einen Dialog; nachfolgende In-Dialog-Requests (re-INVITE, BYE) verweisen darauf. Diese Trennung zu verstehen ist wesentlich, um einen SIP-Ablauf zu lesen, da Responses und Neuübertragungen auf Transaktionsebene zugeordnet werden, während der Anruf auf Dialogebene lebt.
Transport und Ports
SIP läuft über UDP, TCP oder TLS und (seltener) SCTP oder WebSocket für WebRTC. Der IANA-Standardport ist 5060 für UDP und TCP sowie 5061 für SIP über TLS (signalisiert durch eine sips:-URI). UDP ist wegen seines geringen Overheads verbreitet, doch große Nachrichten, die die Pfad-MTU überschreiten, sollten TCP nutzen, und jedes Deployment, das nicht vertrauenswürdige Netze quert, sollte TLS für die Signalisierung und SRTP für die Medien nutzen. Der Transport wird je Hop gewählt und kann sich entlang des Pfades ändern.
| Transport | Standardport | Anmerkungen |
|---|---|---|
| UDP | 5060 | Geringer Overhead; Wechsel zu TCP oberhalb der MTU |
| TCP | 5060 | Für große Nachrichten und zuverlässige Zustellung |
| TLS (sips:) | 5061 | Verschlüsselte Signalisierung |
| WSS (WebSocket) | — | SIP über Secure WebSocket für WebRTC |
Häufig gestellte Fragen
Wofür wird SIP verwendet?
SIP baut Echtzeit-Mediensitzungen über IP auf, ändert und beendet sie — Sprach- und Videoanrufe, SIP-Trunking zwischen Telefonanlagen und Carriern sowie VoLTE/IMS-Anrufsteuerung. Es übernimmt die Signalisierung; das eigentliche Audio oder Video reist separat über RTP.
Ist SIP wie HTTP?
Von Grund auf. SIP übernimmt das Request/Response-Modell von HTTP, textbasierte Nachrichten, die Header-Syntax, dreistellige Statuscodes und URI-Adressierung. Die Semantik unterscheidet sich — SIP verwaltet zustandsbehaftete Sitzungen über Proxies hinweg, und beide Endpunkte können Requests initiieren —, doch die Oberfläche wirkt für jeden vertraut, der HTTP kennt.
Was ist der Unterschied zwischen einer SIP-Transaktion und einem Dialog?
Eine Transaktion ist ein Request plus seine Responses, zugeordnet über den Via-branch. Ein Dialog ist die laufende Anrufbeziehung, identifiziert durch Call-ID plus die From- und To-Tags. Ein einzelner Dialog (ein Anruf) enthält mehrere Transaktionen — INVITE, dann später BYE.
Welchen Port verwendet SIP?
Der IANA-Standard ist 5060 für SIP über UDP und TCP sowie 5061 für SIP über TLS. Medien (RTP) nutzen einen separaten, dynamisch ausgehandelten UDP-Portbereich, der im SDP beschrieben ist, nicht den SIP-Signalisierungsport.
Trägt SIP die Sprache?
Nein. SIP trägt nur die Signalisierung — es handelt die Sitzung und die Medienparameter über SDP aus. Die Sprache oder das Video selbst fließt über RTP (oder SRTP, wenn verschlüsselt) direkt zwischen den Endpunkten oder über ein Media-Relay, auf separaten Ports von den SIP-Nachrichten.
Quellenspezifikationen
Diese Seite basiert auf den veröffentlichten Standards. (Wird in einem neuen Tab geöffnet.)