Zum Hauptinhalt springen

3.2. Algorithmusüberblick

FB-Nachrichten sind Teil der RTCP-Steuerströme und daher den RTCP-Bandbreitenbeschränkungen unterworfen. Das bedeutet insbesondere, dass es nicht möglich sein kann, ein am Empfänger beobachtetes Ereignis sofort an den Sender zurückzumelden. Der Wert des Feedbacks für einen Sender nimmt jedoch typischerweise mit der Zeit ab -- gemessen an der vom Nutzer am Empfangsende wahrgenommenen Medienqualität und/oder den Kosten zur Reparatur des Mediendatenstroms.

RTP [1] und das gängige RTP-Profil [2] legen Regeln fest, wann zusammengesetzte RTCP-Pakete gesendet werden sollen. Dieses Dokument ändert diese Regeln, um Anwendungen zu ermöglichen, Ereignisse (z.B. Verlust oder Empfang von RTP-Paketen) zeitnah zu melden, und Algorithmen aufzunehmen, die FB-Nachrichten verwenden.

Der modifizierte RTCP-Übertragungsalgorithmus lässt sich wie folgt skizzieren: Solange keine FB-Nachrichten übertragen werden müssen, werden zusammengesetzte RTCP-Pakete nach den Regeln von RTP [1] gesendet -- mit der Ausnahme, dass das Fünf-Sekunden-Minimum zwischen RTCP-Berichten nicht erzwungen wird. Das Intervall zwischen RTCP-Berichten leitet sich daher nur aus der durchschnittlichen RTCP-Paketgröße und dem der RTP/RTCP-Entität zur Verfügung stehenden RTCP-Bandbreitenanteil ab. Optional kann ein Mindestabstand zwischen Regular-RTCP-Paketen erzwungen werden.

Erkennt ein Empfänger die Notwendigkeit, eine FB-Nachricht zu senden, kann er dies früher tun als beim nächsten regulären RTCP-Berichtsintervall (für das er nach dem obigen regulären RTCP-Algorithmus eingeplant wäre). Feedback-Unterdrückung (feedback suppression) vermeidet Feedback-Implosion in Mehrteilnehmer-Sitzungen: Der Empfänger wartet ein (kurzes) zufälliges Dithering-Intervall, um zu prüfen, ob er eine entsprechende FB-Nachricht eines anderen Empfängers zum selben Ereignis sieht. Für Punkt-zu-Punkt-Sitzungen gibt es diese Verzögerung nicht. Wird eine entsprechende FB-Nachricht eines anderen Mitglieds empfangen, unterlässt dieser Empfänger das Senden der FB-Nachricht und folgt weiter dem Regular-RTCP-Übertragungsplan. Hat der Empfänger noch keine entsprechende FB-Nachricht eines anderen Mitglieds gesehen, prüft er, ob Early Feedback senden darf. Ist das Senden von Early Feedback zulässig, sendet der Empfänger die FB-Nachricht als Teil eines minimalen zusammengesetzten RTCP-Pakets. Die Erlaubnis zum Senden von Early Feedback hängt vom Typ des zuvor von diesem Empfänger gesendeten RTCP-Pakets und vom Zeitpunkt der zuvor gesendeten Early-Feedback-Nachricht ab.

FB-Nachrichten können auch als Teil vollständiger zusammengesetzter RTCP-Pakete gesendet werden, die gemäß [1] (außer der Fünf-Sekunden-Untergrenze) in regelmäßigen Abständen übertragen werden.