Frage

Die Systeme könnten verwenden UDP und beschäftigt Vorwärtsfehlerkorrektur die gesamte Nachricht zu übertragen, ohne Retransmits, auch wenn einige Pakete verloren gehen. Hat dies jemals in der Praxis gut funktioniert oder ist der zusätzliche Aufwand zu viel von einem Abfall?

War es hilfreich?

Lösung

Ich denke, es ist für einige Anwendungen wie Voice (VoIP) nützlich ist, wo man Fehler vermeiden will, und wo Sie wollen nie aufhören (erneut zu senden ein nacktes Paket) und warten (bis es erneut gesendet) .

So könnte es auf dem Real-time Transport Protocol Geschmack UDP.

  

Wäre es nicht für Latenz schrecklich sein?

Sind Sie fragen, ob eine Vorwärtsfehlerkorrektur erhöht End-to-End-Verzögerung? Wenn ja, ich denke, die Antwort ist „nein“, aber es die benötigte Bandbreite nicht erhöht.

Ich glaube, Sie immer schon brauchen einige Latenz, Jitter zu vermeiden; so zum Beispiel, könnte man sagen „lassen Sie uns die ganze Sprachkanal Verzögerung von 200 ms, so dass jeder / jedes Paket kann von 0 bis 200 ms dauern, das Internet zu überqueren, und wieder zusammengebaut und an die durch den D-A-Wandler gesendet werden anderes Ende. "

diese Zahlen gegeben, dann könnte, dass in jeder 200 ms Periode bedeutet keine Vorwärtsfehlerkorrektur mit, Sie senden 10 Pakete mit jeweils 20 ms von Daten ... und wenn man verloren ist, dann ist das ein Spalt (eine Störung) am anderen Ende.

Während könnte einige Vorwärtsfehlerkorrektur zu haben bedeutet, dass in jeder 200 ms-Periode, Sie noch 10 Pakete senden ... jedes Paket enthält 20 ms von Daten, plus 10 ms von Daten, die in einem anderen Paket übertragen bereits (oder , vielleicht senden Sie 30 Pakete statt 20). Dann wird, wenn jedes einzelne Paket verloren geht, die die Daten wurden redundently geliefert getragen (die Hälfte in jedem der beiden anderen Paketen), die alle Fehler in dem dekodierten Ausgang vermeidet.

Andere Tipps

Es ist auch sinnvoll für Speichermedium, wie Festplatten und optische Laufwerke, wo man nicht nur zurück an die Quelle gehen kann, die unbeschädigten Daten zu erhalten. In der Tat, beide Festplatten und optische Laufwerke verwenden Vorwärtsfehlerkorrektur recht umfangreich.

Vorwärtsfehlerkorrektur wird auch ausführlich in der drahtlosen Kommunikation, wo Fehler neigen dazu, knock out nur ein paar Bits zu einer Zeit verwendet. Anstatt das gesamte Paket an einen einzelnen Bitfehler zu verlieren, Vorwärtsfehlerkorrektur verwendet wird, um die beschädigten Bits zu beheben.

Abhängig von der Anwendung ab.

Für Anwendungen wie Spiele, Fehlerkorrekturen sind immer notwendig, da es nicht einen großen Unterschied machen, wenn Sie ein wenig Daten verloren gehen.

Wenn jedoch die anwendungsspezifische erfordert, in Ordnung Daten, dann eine Art von Fehlerkorrektur erforderlich ist.

Es ist nicht eine Frage von "Overhead", es ist mehr über "Anwendung".

Die einfache Antwort ist, wenn Sie senden über eine hohe Bandbreite mit hohen Verzögerung (bedeutet „lange Strecke“) Link, Korrektur Vorwärtsfehler Sinn macht. Ansonsten ist es wahrscheinlich nicht.

Wenn der „Preis“ der Weiterverbreitung ist höher als das, was Sie bereit sind zu zahlen.
Satelliten zum Beispiel hat eine sehr lange Laufzeit, ist es besser, ein paar Bytes senden dann wieder ein Paket senden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top