Post

computer network - link layer(2)

에러 체킹

parity를 사용함.

홀수? 짝수?

오류 검출에 사용되는 bit임.

사람도 이야기를 하면 뭐라고? 하며 잘 못듣는 경우가 많은데 컴퓨터는 오죽하겠음?

짝수 parity 비트 : data에서 1의 개수가 짝수가 되게 하는 비트임. ex) 100001 / [parity] -> parity bit는 0임. ex2) 110001 / [parity] -> parity bit 1임.

홀수 parity 비트 : data에서 1의 개수가 홀수가 되게 해야 함.

ex) 100001 / [parity] -> parity bit는 1임. ex2) 110001 / [parity] -> parity bit 0임.

parity bit는 ascii code에서도 나타남. ascii code는 8bit인데 128개까지밖에 없는 이유가 마지막 1bit는 parity bit기 때문임.

하지만 이는 검출만 가능함. 숫자 다른데 뭐가 바뀐지를 모르니까.

특히 2개 이상 나면 ex)1 ->0, 0->1 되면 바뀐건지 알 길이 없음. 따라서 이 때는, 검출조차 불가능한 한계를 지님.

엄밀하게 말해서 홀수 개는 감지 가능(폭주 오류도 가능함. 폭주 오류란 2개이상연속된 오류임.) 짝수 개 감지 불가능이다. 한계가 심함.

심지어 data는 간단하지가 않음. ㅈㄴ많을거임. -> 2차원 패리티

에러 위치만 안다면, 수정은 쉬움. 비트는 0,1로 이루어져 있으니까. 한 열에서 짝수개 일어나도 하나의 행을 사용해서 비트 오류를 바꾸기 가능함. 하지만, 이 녀석도 한계가 있다. 왜? 행도 오류가 날 수 있으니까.

2차원(Two-Dimensional) 패리티 검사

  • 단순 패리티 검사는 오류를 검출하는데 한계

  • 2차원 패리티 검사는 문자의 비트를 2차원 배열형태로 구성하여 각 행(Row)과 열(Column)마다 패리티 비트를 계산

  • 2차원 패리티 검사는 3비트의 오류까지 검출할 수 있음

  • 한계점 : 행과 열 방향에서 모두 짝수 개의 오류가 발생하면 오류를 검출 불가

This post is licensed under CC BY 4.0 by the author.