Chapter 7 : Error Detection and Correction
- physical layer에는 이 기능이 없다
Types of Errors
데이터(비트)가 한 지점에서 다른 지점으로 전송될 때, interference(간섭), 감쇠, noise 등의 이유로 비트 값이 원래 의도한 것과 달라질 수 있음
-
Single-bit Error

- 한 개의 비트만 잘못 전송된 경우
- 드물게 발생
- 쉽게 복구 가능
-
Burst error

- 연속된 2개 이상의 비트가 변경된 오류
- 전송 중 특정 구간에 신호 간섭이 크게 발생했을 때 여러 비트가 손상
- 오류 수정이 더 어렵고 복잡
- 오류 시작점부터 끝나는 지점까지를 “length of burst error”라고 함
Redundancy(중복성)
오류를 감지하거나 수정하기 위해, 원래 데이터에 추가되는 불필요하지만 유용한 비트
- 추가 주체 : 송신자 | 제거 추제 : 수신자
- 목적 : 전송 중 발생한 오류를 탐지하거나 자동으로 수정하기 위해 사용
- 다양한 코딩 방식(부호화 기법)을 통해 구현
- 송신자는 실제 데이터 비트와 일정한 관계를 가지는 방식으로 여분의 비트(중복 비트)를 추가 ex) Parity bit, hamming code
- 수신자는 데이터 비트와 중복 비트 간의 관계를 계산해서 오류가 있는지 검사
Coding
중요 요소
- Redundant bit의 비율 : 중복 비트를 너무 많이 쓰면 비효율적, 너무 적게 쓰면 오류 감지가 어려움
- Robustness(견고성) : 얼마나 정확하게 오류를 탐지/수정할 수 있는지
- 효율성 : 데이터 비트 대비 전체 전송량이 얼마나 효율적인가
Dectection(오류 탐지) and Correction(오류 수정)
- Detection에서는 오류의 발생 여부만 확인.