Session Announcement Protocol
Netzwerkprotokoll
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[1] beschrieben.
Funktionsprinzip
BearbeitenDer 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
Bearbeiten0 | 3 | 4 | 5 | 6 | 7 | 8 | 16 | 31 |
---|---|---|---|---|---|---|---|---|
V=1 | A | R | T | E | C | Auth len | Msg ID hash | |
Originating source (32 Bit oder 128 Bit) | ||||||||
Optional Authentication Data | ||||||||
Optional timeout | ||||||||
Optional payload type | ||||||||
0 | ||||||||
Payload |
- V – 3 Bit – Versionsnummer, muss auf 1 gesetzt sein
- A – 1 Bit – Address Type, kann 0 oder 1 sein
- 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
BearbeitenWeblinks
BearbeitenCommons: Session Announcement Protocol – Sammlung von Bildern, Videos und Audiodateien
- M. Handley, C. Perkins, E. Whelan: RFC – Session Announcement Protocol. Oktober 2000 (englisch).