# Session Border Controller

Ein Session Border Controller (SBC) ist eine Netzwerkkomponente zur sicheren Kopplung von verschiedenen Rechnernetzen oder Rechnernetzen mit unterschiedlichen Sicherheitsanforderungen. SBC werden hauptsächlich in IP-Telefonie-Netzwerken (VoIP) eingesetzt, um externe (unsichere) Datennetze mit internen (sicheren) IT-Strukturen zu koppeln beziehungsweise sogenannte Sitzungen zu implementieren.
Ein SBC ermöglicht die Steuerung und Kontrolle über Signalisierung und in der Regel auch Media Streaming sowie Aufbau, Durchführung und Abbau von Telefongesprächen oder anderen interaktiven Medien, die an einer Kommunikation beteiligt sind.

## Einsatzbereiche

Ein SBC wird an Netzwerkgrenzen eingesetzt und koppelt interne und externe Netze. Der SBC analysiert die verschiedenen Datenströme (engl.: sessions) und greift, je nach Konfiguration, in die verschiedenen Datenströme (hier: Sprache oder Signalisierungsdaten) ein. Im Bereich der IP-basierten Telekommunikation (VoIP) werden Signalisierungsdaten und die Sprach-/Bilddaten getrennt übertragen.
Ein SIP-basiertes Telefon sendet die Signalisierungsdaten in der Regel zur Telefonanlage, während die Sprachdaten in der Regel auf dem kürzesten Weg direkt von Telefon zu Telefon übertragen werden. Durch die Entkopplung von Signalisierungsdaten und Sprachdaten können einerseits die Vorteile von IP-basierten Datennetzen ausgeschöpft werden, andererseits kann die Übertragung der Sprachdaten (besser Mediendaten) nicht durch die Telefonanlage beeinflusst werden.
Eine SBC vereint folgende Funktionen:

### Security Offloading

    Unterstützung von Verschlüsselungstechniken (TLS, SRTP)

### Media Pinholing

    Gezielte Freischaltung von UDP/TCP-Ports zur Übertragung von Mediadaten

### Transcoding

    Transkodierung zwischen verschiedenen Sprach/Video-Codecs wie zum Beispiel G.711 nach G.729

### Protocol Translation

    Umwandlung und Anpassungen bei verschiedenen Signalisierungsprotokollen wie zum Beispiel SIP nach SIP-Q (QSIG over SIP)

### Header Manipulation

    Anpassung der SIP und SDP-Header um zum Beispiel Rufnummernformate (E.164) oder IP-Adressen anzupassen

### Media Anchoring

    Kopplung der Sprachdaten von SIP-Endgeräten, die nur über Network Address Translation erreichbar sind
    Sichere Kopplung von Sprach-/Videodaten

## Begriffsbestimmungen

Der Begriff Sitzung bezieht sich auf eine Kommunikation zwischen zwei Parteien im Rahmen der Telefonie. Jeder Anruf besteht aus einer oder mehreren signalisierten Nachrichten (Rufsignalen) sowie Media Streaming Komponenten, deren Qualität kontrolliert werden muss. Zusammen bilden diese Ströme eine Sitzung. Es ist die Aufgabe eines Session Border Controllers, Einfluss auf die Datenströme der Sitzungen auszuüben.
Der Begriff Netzwerkgrenze bezieht sich auf einen Trennungspunkt zwischen einem Teil eines Netzes und einem anderen Netzwerk. Ein einfaches Beispiel dazu ist ein lokales Unternehmensnetzwerk, das durch eine sogenannte Firewall vom Rest des Internets abgegrenzt ist. Ein komplexeres Beispiel ist ein lokales Unternehmensnetzwerk, das verschiedene Abteilungen mit unterschiedlichen Sicherheitsbedürfnissen für deren Standorte und Daten beinhaltet. In diesem Fall werden unterschiedliche Filterungen, Router oder andere Netzelemente verwendet, um den Fluss von Datenströmen zu steuern. Es ist die Aufgabe eines Session Border Controllers, diese Sitzungs-Daten über Grenzen hinweg zu unterstützen.
Der Begriff Steuerung bezieht sich auf den Einfluss, den der Session Border Controller auf Datenströme ausübt, die Sitzungen umfassen, um Grenzen zwischen einem Teil eines Netzes und einem anderen zu durchqueren. Zusätzlich bieten Session Border Controller oft Zugriffssteuerungen und Datenkonvertierungen für die Anrufe, die sie kontrollieren beziehungsweise steuern.