ℹ️ 책정리
ℹ️ 굣님요약 정리!
✅ Error Detection in Serial Communication
⚠️ 원리
- 데이터 전송 속도가 높을수록 → bit error 영향도 커짐
- 프레임이 길어질수록 → 오류가 포함될 확률도 증가
🧪 주요 방식 (3가지)
방식 | 설명계층 | |
Parity Check | 1비트 패리티(홀수/짝수)를 붙여 오류 감지 | L2 |
CRC (Cyclic Redundancy Check) | 다항식 나눗셈 기반 고정밀 오류 검출 | L2 |
Internet Checksum | 1의 보수 합산 방식, TCP/IPv4 등에서 사용 | L3/L4 |
✅ 1. Parity Check (Physical Layer or Data Link Layer)
기본 원리 | Parity 비트를 추가하여 전체 비트의 1의 개수를 짝수 또는 홀수로 만듦 |
- 홀수 개 비트 오류는 검출 가능
- 짝수 개 비트 오류는 검출 불가 ❌
| 2차원 Parity (2D Parity) |
행과 열에 각각 parity 비트를 추가한 구조
- 단일 비트 오류: 검출 및 정정 가능
- 짝수 개 오류 (행 or 열만): 검출 가능, 정정 불가
- 짝수 개 오류 (직사각형): 검출도 안 됨
- 홀수 개 오류 (직사각형): 검출 가능, 정정은 완벽하지 않음
💡 참고
오류 감지만 되고 정정은 안 되는 경우 → “어느 비트가 바뀌었는지 예측할 수 없음”
→ 정확한 위치 식별이 어려워 100% 정확한 정정은 불가
✅ 2. Internet Checksum (IPv4 L3, TCP/UDP L4)
- 16비트 단위의 데이터를 모두 더하고
- 결과의 1의 보수를 취해 Checksum 생성
- 수신 측에서 다시 전체를 더해서 0xFFFF가 되는지 확인
| 검출 능력 |
- 대부분의 단일/소수 비트 오류는 검출 가능
- 하지만, 순서가 바뀐 경우에는 검출 못 함 |
| 검출 실패 예 |
- 송신: 5AD3 EE35
- 수신: 59D3 EF35 B6F6 → 오류가 발생했지만 Checksum 결과가 0xFFFF
- 이유: 16비트 단위로 순서 바뀐 경우, 덧셈의 교환법칙(Commutative law) 때문에 검출 실패
💡 참고 | Checksum은 순서를 고려하지 않는 연산, CRC는 순서 민감함 |
✅ 3. Cyclic Redundancy Check (CRC) at L2 / L1
- 송신자: D(k) 뒤에FCS 비트 F(n−k)를 붙여서 전송
- FCS는 다항식 나눗셈 나머지 (mod 2)
- 수신자: 전체 비트열 T(n)을 동일한P(x)로 나눠
- → 나머지가 0이면 오류 없음 |
- T(n) = D(k)·x^{n-k} + F(n-k)
- P(x)는 송수신자가 공유하는 생성 다항식 |
| 예시 |
- k = 10,
- P(x) = x^6 + x^4 + x^2 + 1 → 차수 6
- P(x)는 7비트 (계수 포함)
- FCS 비트 수 = 6비트
- 실제 전송 비트 수 = 10(data) + 6(FCS) = 16 bits |
| 디지털 회로 구현 시 |
- Shift Register: 6개 (P의 차수)
- XOR Gate: 3개 (계수가 1인 항이 4개이므로 -1) |
| 구현 방식 |
- Modulo-2 bit 연산 (XOR)
- 다항식 연산
- 디지털 논리 회로 (LFSR 구조) |
- | 💡 참고 | CRC는 순서에 민감 → 순서 바뀌면 검출 가능 |
✅ 전체 요약 비교
방식 | 구현 복잡도 | 검출 능력 | 정정 가능 여부 | 특이 사항 |
Parity | 매우 낮음 | 낮음 (홀수 개 오류만) | 일부 (2D만) | 짝수 개 비트 오류 감지 안 됨 |
Checksum | 낮음 | 중간 (위치 바뀜 취약) | 불가능 | 교환법칙으로 인해 검출 실패 가능 |
CRC | 중간~높음 | 매우 높음 (burst 포함) | 불가능 (정정은 안 됨) | LFSR로 고속 구현 가능, 가장 널리 사용됨 |
'📖 CS > 정보통신공학' 카테고리의 다른 글
정보통신공학 Chap 1 : Data Communications, Data Networks, and the Internet (0) | 2025.04.15 |
---|---|
정보통신공학 Chap 6 : Error Detection and Correction : 3. Error Correction (0) | 2025.04.14 |
정보통신공학 Chap 6 : Error Detection and Correction : 1. Timing (0) | 2025.04.12 |
정보통신공학 Chap 4 Transmission Media(교재) (0) | 2025.04.09 |
정보통신공학 퀴즈 1 (chap1/chap2) (0) | 2025.03.23 |