19. STUN Extensions (STUN-Erweiterungen)
19.1. New Attributes (Neue Attribute)
Diese Spezifikation definiert vier neue Attribute: PRIORITY, USE-CANDIDATE, ICE-CONTROLLED und ICE-CONTROLLING.
Das PRIORITY-Attribut gibt die Priorität an, die einem Peer-Reflexive-Kandidaten zugeordnet werden soll, falls durch diese Prüfung einer entdeckt wird. Es ist eine 32-Bit-Ganzzahl ohne Vorzeichen und hat einen Attributwert von 0x0024.
Das USE-CANDIDATE-Attribut gibt an, dass das aus dieser Prüfung resultierende Kandidatenpaar für die Übertragung von Medien verwendet werden soll. Das Attribut hat keinen Inhalt (das Längenfeld des Attributs ist null); es dient als Flag. Es hat einen Attributwert von 0x0025.
Das ICE-CONTROLLED-Attribut ist in einer Binding-Anforderung vorhanden und gibt an, dass der Client glaubt, sich derzeit in der kontrollierten Rolle zu befinden. Der Inhalt des Attributs ist eine 64-Bit-Ganzzahl ohne Vorzeichen in Netzwerk-Byte-Reihenfolge, die eine Zufallszahl enthält, die zur Auflösung von Rollenkonflikten verwendet wird.
Das ICE-CONTROLLING-Attribut ist in einer Binding-Anforderung vorhanden und gibt an, dass der Client glaubt, sich derzeit in der kontrollierenden Rolle zu befinden. Der Inhalt des Attributs ist eine 64-Bit-Ganzzahl ohne Vorzeichen in Netzwerk-Byte-Reihenfolge, die eine Zufallszahl enthält, die zur Auflösung von Rollenkonflikten verwendet wird.
19.2. New Error Response Codes (Neue Fehlerantwortcodes)
Diese Spezifikation definiert einen einzigen Fehlerantwortcode:
487 (Role Conflict): Die Binding-Anforderung enthielt entweder das ICE-CONTROLLING- oder das ICE-CONTROLLED-Attribut, was auf eine Rolle hinweist, die mit dem Server in Konflikt steht. Der Server führte basierend auf dem Tie-Breaker-Wert in der Anforderung einen Tie-Breaker durch und stellte fest, dass der Client die Rolle wechseln muss.