誤り検出・訂正

誤り検出・訂正

 ネットワーク通信中にデータが誤って伝送された場合、それを検出するための誤り検出(Error Detection)や、誤ったデータを訂正するための誤り訂正(Error Correction)があります。

 誤り検出には、チェックサム(Checksum)、CRC(Cyclic Redundancy Check)、パリティ(Parity)などがあります。これらは、送信側がデータに対して特定の計算を行い、その結果をデータに付加することで、受信側が同じ計算を行い、送信側と同じ値が得られるかどうかで誤り検出を行います。ただし、誤りが検出された場合は、再送要求を送信側に送信するなどの対応が必要です。

 一方、誤り訂正には、ハミング符号(Hamming Code)やリード・ソロモン符号(Reed-Solomon Code)などがあります。これらは、データに冗長な情報を付加することで、一定量の誤りを訂正できるようになっています。ただし、誤りを検出するだけではなく、訂正するためには、より多くの冗長情報を付加する必要があるため、通信速度の低下などのデメリットもあります。