Zum Inhalt springen

Session Announcement Protocol

aus Wikipedia, der freien Enzyklopädie

Das Session Announcement Protocol (SAP) ist ein Netzwerkprotokoll aus dem Bereich der IP-Telefonie, welches Multicast-Multimediasitzungen und andere Multicast-Sitzungen unterstützt und die entsprechende Sitzungskonfiguration an in Frage kommende Teilnehmer weiterleitet.

Es wurde von der IETF entwickelt und in der RFC 2974[1] beschrieben.

Funktionsprinzip

[Bearbeiten | Quelltext bearbeiten]

Der SAP-Ankündiger sendet dabei periodisch Ankündigungspakete an die allgemein bekannte („well known“) Multicast-Adresse (sap.mcast.net = 224.2.127.254) auf den entsprechenden Port (Standard: 9875). Der SAP-Client horcht auf diesem Port, um eventuelle Anfragen für Multicast-Sitzungen erkennen und annehmen zu können.

Aufbau eines SAP-Paketes

[Bearbeiten | Quelltext bearbeiten]
0 3 4 5 6 7 8 16 31
V=1 A R T E C Auth len Msg ID hash
Originating source
Authentication Data (optional)
Timeout (optional)
Payload type (optional)
0
Payload
  • V – 3 BitVersionsnummer, muss auf 1 gesetzt sein
  • A – 1 Bit – Address Type, kann 0 oder 1 sein:
    • 0 – Feld Originating Source (s. u.) enthält IPv4-Adresse (32 Bit)
    • 1 – Feld Originating Source enthält IPv6-Adresse (128 Bit)
  • R – 1 Bit – Reserved, wird von SAP-Ankündigern auf 0 gesetzt und von SAP-Clients ignoriert
  • T – 1 Bit – Message Type, kann 0 oder 1 sein:
    • 0 – Paket zur Ankündigung einer Sitzung
    • 1 – Paket zum Löschen einer Sitzung
  • E – 1 Bit – Encryption Bit, kann 0 oder 1 sein:
    • 0 – Der Payload (s. u.) ist nicht verschlüsselt, das Timeout-Feld (s. u.) darf fehlen
    • 1 – Der Payload ist verschlüsselt, das Timeout-Feld muss dem Header hinzugefügt werden
  • C – 1 Bit – Compressed Bit, kann 0 oder 1 sein:
    • 0 – der Payload ist nicht komprimiert
    • 1 – der Payload ist komprimiert
  • Authentication Length – 8 Bit – Gibt die Anzahl an 32-Bit-Wörtern an, die dem Header folgen und Authentifizierungsdaten enthalten (Feld Authentication Data). Wenn 0, dann kein Authentifizierungs-Header vorhanden
  • Message Identifier Hash – 16 Bit – Wird zusammen mit dem Feld Origination Source benutzt, um einen global eindeutigen Identifikator für diese Nachricht zu erhalten.
  • Origination Source – 32 Bit oder 128 Bit – Die IP-Adresse des Urhebers der Nachricht:
    • wenn Feld A (s. o.) auf 0 gesetzt ist, dann steht hier eine IPv4-Adresse
    • wenn Feld A auf 1 gesetzt ist, dann steht hier eine IPv6-Adresse.
  • Timestamp bzw. Timeout – 32 Bit – Falls der Payload verschlüsselt ist, enthält diese Feld einen Zeitstempel, der vorschreibt, wie lange die Nachricht gültig ist. Er ist im NTP-Format gespeichert und in Sekunden angegeben.
  • Payload Type – Enthält den MIME-Type (sprich das Datenformat) des Payloads. Er ist als ASCII-String angegeben und wird von einem Null-Byte (ASCII NUL) abgeschlossen.
  • Payload – Enthält die eigentlichen Daten (Nutzlast) und ist noch einmal in diverse Unterfelder geteilt.
Commons: Session Announcement Protocol – Sammlung von Bildern, Videos und Audiodateien
  • M. Handley, C. Perkins, E. Whelan: RFC: 2974 – Session Announcement Protocol. Oktober 2000 (englisch).

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. M. Handley, C. Perkins, E. Whelan: RFC: 2974 – Session Announcement Protocol. Oktober 2000 (englisch).