CRCとは何か
CRCとは
Cyclic Redundancy Checkの略。あるネットワーク機器から別のネットワーク機器に通信する際、送信データに誤りを検出する符号を付加することで、データの伝送誤りを検出する方法。
伝送途中のデータはノイズなどが入って破損するケースもあるため、CRCのような方法を用いて受信側の機器でデータの正常性を確認するらしい。
CRCの手順
- 送信側の機器で、送信するデータに対して特定の数値を用いて割り算を行う(この割り算とは、2進数で構成されているデータを、同じく2進数で構成されている特定の数で割るということ)。
- 割り算した余りの数値を誤りを検出する符号としてデータに付加する。これにより送信データは特定の数値で割り切れる数値となる。
- 受信側の機器で、受け取ったデータに対し送信側と同じ特定の数を用いて割り算を行う
- 結果が割り切れていればデータは正常に伝送されたと判断されるが、そうでない場合はデータは正常に伝送されなかったと判断され、破棄されたのち送信側の機器にデータの再送を要求する。
FCSとは
Frame Check Sequenceの略。イーサネットフレームに入っている、受信したデータに誤りがないかどうかをチェックするためのフィールド。
上記の手順2でいう「割り算した余りの数値」がこのFCSに入っている。多分。