Was ist cyclischer Redundanzprüfung und wie es in einfachen Bedingungen funktioniert (für-Dummies-Stil)?

StackOverflow https://stackoverflow.com//questions/9635561

  •  10-12-2019
  •  | 
  •  

Frage

Ich habe Probleme, das Konzept und die Arbeit des hässlichen klingenden Begriffs " cyclische Redundanzprüfung " zu verstehen. Ich besuche einen College-Kurs auf Computernetzwerken und ich verliere schon.

Das Problem ist, dass mein Verständnis der Mathematik sehr begrenzt ist (studierte Mathematik vor langer Zeit in der Schule und vergessen Sie den größten Teil davon), und ich kann nicht zum Beispiel, was zum Teufel ein Generator-Polynom ist, welche Polynome dies tun müssen Mit CRC und um es zusammenzufassen - alles, was mir völlig unverständlich erscheint.

Ich las den Wiki-Eintrag auf CRC, aber es hat mir nicht geholfen, da ich nicht gut in Mathematiken bin und all diese Symbole und Mathematikbedingungen für mich wie Chinese.

Ich verstehe, dass CRC für die Fehlererkennung verwendet wird, wenn Daten im Netzwerk gesendet werden, aber von damals bin ich verloren.

Kann mir jemand helfen, dieses Konzept in einfachen Bedingungen zu erklären und möglicherweise ein Beispiel zu geben?

Während der letzten Vorlesung begann der Professor all diese und null, teilzunehmen, teilzunehmen und ich weiß nicht, was und ich starrte gerade und fühlte sich dumm.

Ich wäre sehr dankbar, dass jeder helfen kann mir zu verstehen!

War es hilfreich?

Lösung

Wenn Sie möchten, dass die Antwort sehr einfach ist, müssen Sie einige Übereinstimmung akzeptieren, wenn Sie bereit sind, damit zu leben, hier geht es:

Daten werden über unvollständige Links übertragen - auf dem Weg können Fehler auftreten. Stellen Sie sich vor, Sie möchten sicherstellen, dass die empfangenen Informationen dasselbe wie der übertragene Informationen entsprechen, ohne zu viel Bandbreite zu verschwenden, wie würden Sie das tun?

Sie könnten jedes Information zweimal übertragen, und wenn Sie auf dem empfangenden Ende angezeigt werden, dass der erste der zweiten, den Sie kennen, den Sie wissen, dass ein Fehler aufgetreten ist, und Sie müssen die Daten erneut anfordern - das wäre jedoch sehr verschwenderisch Es würde Ihre Bandbreite in der Hälfte effektiv schneiden.

Jetzt, was, wenn Sie einen gewünschten Wert berechnen könnten, der viel kleiner als die Daten selbst ist, ist noch davon abhängig? Wenn sich die Daten auf dem Weg geändert haben (aufgrund des Fehlers), würde der berechnete Wert die Daten nicht mehr übereinstimmen, und Sie würden wissen, dass ein Fehler aufgetreten ist. Gibt es eine solche Berechnung?

Was ist mit der einfachen Division und einem Rest als dieser Wert?

sagen, ich möchte eine Information / Nummer 1.000 übertragen. Ich teile es von der gewählten Nummer - wie zum Beispiel wie 6 ... das gibt mir 166 und einen Rest von 4. Ich nehme den Rest als mein Überprüfungswert, der viel kleiner ist als die Informationen, die ich tatsächlich sende, also verschwenden ich nicht Zu viel Bandbreite und ich übertragen 1.000, gefolgt von 4, gefolgt von 4. Ein Receiver bekommt es, dauert die Nummer 1.000, die es um 6 unterteilt, und wenn der Rest 4 ist, wird davon ausgegangen, dass kein Fehler aufgetreten ist.

Wenn ein Fehler aufgetreten ist und es aufgrund eines Fehlers auf dem Link 998 anstelle von 1.000 empfangen würde - er würde es mit 6 aufteilen, um einen Rest von 2, der nicht mit 4 und Viola übereinstimmt. Es kennt, dass ein Fehler aufgetreten ist. Das ist das Grundprinzip der CRC.

Natürlich ist es etwas komplizierter, da es durch ein Polynom teilt, sondern das Prinzip der Verwendung eines Restes als "Kurzwert, der die Daten darstellt, um ihn auf dieselbe Weise auf die gleiche Weise zu überprüfen.

Ich hoffe, das hilft Ihnen, Ihren Kopf auf dem Laufenden zu bringen;)

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