巡回冗長性チェックとそれが簡単な用語でどのように機能するのか(Dummiesスタイル)?
-
10-12-2019 - |
質問
醜い発音語「巡回冗長検査」の概念と働きを理解するのに問題があります。私はコンピュータネットワーク上の大学コースに参加しています、そして私はすでに失われました。
私の数学の理解は非常に限られている(学校で昔の数学を学んだし、それをほとんど忘れた)、そして私は何を得ることはできません。 CRCを使って、それを合計するために - それはすべて私にとっては全く理解できないようです。
CRCのWikiエントリを読みましたが、数学が得意であり、これらすべてのシンボルや数学の用語は私にとって中国語のようなものです。
CRCは、ネットワーク上のデータを送信するときが誤り検出に使用されているが、紛失したことから、エラー検出に使用されていることがわかります。
誰もがこの概念を簡単に説明し、場合によっては例を与えることができますか?
最後の講義中に教授がこれらすべてのものとゼロを描き始めた、分裂して、私は何を見つめて愚かな気分を感じていたのかわからなかった。
私は私が理解するのを手伝うことができるのはとても感謝しています!
解決
答えを非常に単純にする必要があるならば、あなたがそれと共に生きても構わないと思っているならば、いくつかの過剰置換を受け入れる必要があります、ここに行きます:
データは不完全なリンクを介して送信されます - 途中でエラーが発生する可能性があります。受信した情報があまりにも多くの帯域幅を無駄にすることなく、受信した情報が送信されたものと同じであることを確認したいです。
情報の一部を2回送信することができ、受信側に最初のものが2番目のものと異なる場合は、エラーが発生したことがわかり、データをリクエストする必要がありますが、これは非常に無駄になります。 、それは半分の帯域幅を効果的に削減します。
今、あなたがまだデータよりもはるかに小さいいくつかの価値を計算できるならば、それに依存するのでしょうか。そのため、データが途中で変化した場合(エラーのため)、計算値はデータに「一致」しなくなり、エラーが発生したことを知っています。そのような計算はありますか?
この値としての単純な分割について何を踏み出していますか?
情報/番号1,000を送信したいとします。私はそれを選択された数で分けて、例えば6のような6つと4つの残りの部分を与えます。帯域幅が多すぎるとIは1,000を送信し、続いて4.レシーバを取得し、1,000個の数字が6で割れ、残りが4の場合、エラーが発生していないと見なします。
エラーが発生した場合は、リンクのエラーのため、1,000の代わりに998を受信します - それは6で割れ、4と一致しない2の残りの部分を取得します。エラーが発生しました。それがCRCの基本原理です。
もちろん多項式で分割するのはもう少し複雑であるため、残りの値を「データを表す短い値」として、同じ方法でエラーのためにチェックします。
これがあなたが何が起こっているのか上にあなたの頭を歩き回るのを助けることを願っています;)