4-4.通信に関する理論
誤り検出・訂正
(重点的に覚えておこう)
★CRC(Cyclic Redundancy Check:巡回冗長検査)
送信データから生成多項式によって誤り検出用のデータを付加して送信する。
受信側では送信側と同じ生成多項式を用いて受信データを除算し、送信されてきた誤り検出用のデータと比較することで誤りの有無を判断する。
⇒つまり、送信側では生成多項式を用いて検査対象のデータから検査用データを作り、これを検査対象のデータにつけて送信する。
★ハミング符号
情報ビットに対して検査ビットを付加することで、2ビットの誤り検出と1ビットの自動訂正機能をもった方式のこと
例:受信符号語が 1000101 の場合
誤り訂正の方式を下記とする。
受信ビットはx1x2x3x4x5x6x7(x=0or1)
C0=x1+x3+x5+x7
C1=x2+x3+x6+x7
C2=x4+x5+x6+x7
(いずれもmod2での計算)
これらの結果が0でない場合
i=C0+C1×2+c2×4
により、左からiビット目を反転し、訂正する。
これを当てはめて計算する
C0=(1+0+1+1)mod2=3mod2=1
C1=(0+0+0+1)mod2=1mod1=1
C2=(0+1+0+1)mod2=2mod2=0
間違っているビット数を計算します。
i=C0+C1×2+C2×4
=1+2+0=3
3ビット目を反転させて
1010101が訂正後の符号語になる
(1ビットの誤りにしか気づけないけどねww)
★パリティチェック
データ通信においてデータに1ビットの検査ビットを付加することで伝送途中のビット誤りを検出するための方法のこと
例:下記の場合の訂正可能ビット数
1 | 0 | 0 | 0 | 1 |
0 | 1 | 1 | 0 | 0 |
0 | 0 | 1 | 0 | 1 |
1 | 1 | 0 | 1 | 1 |
0 | 0 | 0 | 1 |
★ECC(Error Check and Correct)
誤り訂正符号としてハミング符号や垂直水平パリティを用いることで、記録内容に発生した誤りを検知&訂正できる機能をもつメモリのこと
例:使用例
障害発生時の影響が大きいサーバにおいて、誤り訂正に使われる。
★チェックサム
データの合計値を検査用に付加し、データに誤りが生じていないかを検査する方法のこと
【前へ】4-3.通信に関する理論 【次へ】4-5.通信に関する理論
- 最終更新:2017-08-20 16:35:08