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 wird in der RFC 2974 beschrieben.

Funktionsprinzip

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

Aufbau eines SAP-Paketes

  • V - 3 Bit - Versionsnummer, muss auf 1 gesetzt sein
  • A - 1 Bit - Address Type, kann 0 oder 1 sein
    • 0 - Feld Originating Source 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 ist nicht verschlüsselt, das Timeout-Feld darf fehlen
    • 1 - Der Payload ist verschlüsselt, das Timeout-Feld muss dem Header hinzugefügt werden
  • C - 1 Bit - Compressed Bit, wenn 1 gesetzt, dann ist der Payload komprimiert
  • Authentication Length - 8 Bit - Gibt die Anzahl an 32-Bit-Wörtern an, die dem Header folgen und Authentifizierungsdaten enthalten, an. 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 0 gesetzt ist, dann steht hier eine IPv4-Adresse, wenn 1, dann eine IPv6-Adresse.
  • Timestamp - 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.

Siehe auch

Weblinks

Commons: Session Announcement Protocol – Sammlung von Bildern, Videos und Audiodateien
  • RFC 2974