에러 제어 (Error Control)
핵심 인사이트 (3줄 요약)
전송 중 발생하는 오류를 검출하고 정정하는 기술. 에러 검출(검사 코드), 에러 정정(재전송/전진), 흐름 제어로 신뢰성을 보장한다. 데이터 통신의 핵심 요소이다.
📝 기술사 모의답안 (2.5페이지 분량)
📌 예상 문제
"에러 제어 (Error Control)의 개념과 핵심 기술 요소를 설명하고, 관련 프로토콜·기술과 비교하여 실무 적용 방안을 논하시오."
Ⅰ. 개요
1. 개념
에러 제어는 데이터 전송 중 발생하는 오류를 검출하고 수정하여 신뢰성 있는 통신을 보장하는 기술이다.
비유: "택배 송장 번호 확인" - 번호로 분실/오배송 감지
Ⅱ. 구성 요소 및 핵심 원리
2. 오류의 종류
1. 비트 오류 (Bit Error)
0 → 1, 1 → 0 (단일 비트)
2. 버스트 오류 (Burst Error)
연속된 여러 비트 오류
3. 동기 오류 (Synchronization Error)
클럭 불일치로 인한 오류
4. 감쇠 (Attenuation)
신호 세기 감소
5. 잡음 (Noise)
외부 간섭
3. 에러 제어 기법 분류
에러 제어
├── 에러 검출 (Error Detection)
│ ├── 패리티 검사
│ ├── 체크섬
│ ├── CRC
│ └── 해밍 거리
│
├── 에러 정정 (Error Correction)
│ ├── 후진 오류 정정 (ARQ)
│ │ ├── Stop-and-Wait ARQ
│ │ ├── Go-Back-N ARQ
│ │ └── Selective Repeat ARQ
│ │
│ └── 전진 오류 정정 (FEC)
│ ├── 해밍 코드
│ ├── 리드-솔로몬 코드
│ └── 컨볼루션 코드
│
└── 흐름 제어 (Flow Control)
├── 정지-대기
└── 슬라이딩 윈도우
4. 에러 검출 기법
4.1 패리티 검사 (Parity Check)
개념: 1의 개수를 짝수/홀수로 맞춤
짝수 패리티 (Even Parity):
데이터: 1010001 (1이 3개)
패리티 비트: 1 → 1이 4개 (짝수)
전송: 10100011
수신 측:
1의 개수가 짝수면 OK, 홀수면 오류
단점:
- 짝수 개의 오류는 검출 못함
- 오류 위치 모름
4.2 수평/수직 패리티 (2D Parity)
데이터 패리티
1010 0
1100 1
0101 1
───── ─
0011 0
행과 열 모두 패리티 검사
→ 오류 위치 식별 가능
→ 2비트 오류 검출
4.3 체크섬 (Checksum)
개념: 데이터 합계의 보수
송신:
1. 데이터를 16비트 단위로 분할
2. 모두 더함 (오버플로우는 다시 더함)
3. 1의 보수 취함 → 체크섬
4. 데이터 + 체크섬 전송
수신:
1. 받은 모든 값 더함
2. 1의 보수 취함
3. 0이면 오류 없음
예:
데이터: 10011001 11100010 00100100 10000100
합계: 110010010 (오버플로우 1)
10010010 + 1 = 10010011
체크섬: 01101100
4.4 CRC (순환 중복 검사)
개념: 다항식 나눗셈 기반
과정:
1. 데이터 비트열을 다항식으로 표현
2. 생성 다항식(G)으로 나눔
3. 나머지를 FCS(Frame Check Sequence)로 추가
생성 다항식 예:
CRC-8: x⁸ + x² + x + 1
CRC-16: x¹⁶ + x¹⁵ + x² + 1
CRC-32: x³² + x²⁶ + x²³ + ... + 1
특징:
- 높은 검출률
- 하드웨어 구현 용이
- 이더넷, HDLC 등에서 사용
5. 에러 정정 기법
5.1 ARQ (Automatic Repeat reQuest)
Stop-and-Wait ARQ
송신 수신
│ │
├───[Frame 0]──────────→│
│←──────[ACK 0]─────────┤
│ │
├───[Frame 1]──────────→│
│←──────[ACK 1]─────────┤
│ │
특징:
- 단순
- 효율 낮음 (대기 시간)
- 1비트 순서 번호
Go-Back-N ARQ
송신 수신
│ │
├───[F0][F1][F2][F3]───→│
│←──────[ACK 0]─────────┤
│←──────[ACK 1]─────────┤
│ [F2 오류] │
│←──────[NAK 2]─────────┤
│ │
├───[F2][F3][F4][F5]───→│ (F2부터 재전송)
특징:
- 윈도우 크기: 2ⁿ-1
- 수신 측 버퍼 불필요
- 오류 시 전체 재전송
Selective Repeat ARQ
송신 수신
│ │
├───[F0][F1][F2][F3]───→│
│←──────[ACK 0]─────────┤
│←──────[ACK 1]─────────┤
│ [F2 오류] │
│←──────[NAK 2]─────────┤
│←──────[ACK 3]─────────┤
│ │
├───────────[F2]───────→│ (F2만 재전송)
특징:
- 윈도우 크기: 2ⁿ⁻¹
- 수신 측 버퍼 필요
- 오류 프레임만 재전송
- 효율 높음
5.2 전진 오류 정정 (FEC)
해밍 코드 (Hamming Code)
개념: 오류 검출 + 1비트 정정
구조 (7,4 해밍):
위치: 1 2 3 4 5 6 7
P P D P D D D
1 2 1 4 2 3 4
P: 패리티 비트
D: 데이터 비트
검사:
p1: 1, 3, 5, 7
p2: 2, 3, 6, 7
p4: 4, 5, 6, 7
오류 위치 = 검사 결과 이진수
리드-솔로몬 코드 (Reed-Solomon)
개념: 블록 기반 다중 오류 정정
특징:
- 버스트 오류에 강함
- CD, DVD, QR코드에 사용
- 위성통신, DVB
매개변수:
(n, k) = (255, 223)
- n: 전체 심볼
- k: 데이터 심볼
- 정정 가능: (n-k)/2 심볼
컨볼루션 코드 (Convolutional Code)
개념: 연속적 데이터 스트림 부호화
특징:
- 메모리 있음 (이전 비트 영향)
- 비터비 알고리즘 복호
- 이동통신, 위성통신
인코딩:
입력 ─→[메모리]─→ 출력1
└─→ 출력2
부호화율: k/n (k입력, n출력)
7. 흐름 제어 (Flow Control)
목적: 수신 측 버퍼 오버플로 방지
Stop-and-Wait:
- 1개 전송 후 ACK 대기
- 효율 낮음
Sliding Window:
- 윈도우 크기만큼 연속 전송
- 효율 높음
윈도우 크기 = min(송신 버퍼, 수신 버퍼, 혼잡 윈도우)
Ⅲ. 기술 비교 분석
6. ARQ vs FEC 비교
| 항목 | ARQ | FEC |
|---|---|---|
| 방식 | 재전송 요청 | 미리 정정 코드 |
| 지연 | 변동 | 고정 |
| 대역폭 | 정상시 작음 | 항상 추가 |
| 복잡도 | 낮음 | 높음 |
| 적용 | 인터넷 | 위성, 무선 |
9. 장단점
ARQ
| 장점 | 단점 |
|---|---|
| 단순 구현 | 지연 변동 |
| 높은 신뢰성 | 재전송 오버헤드 |
| 적은 대역폭 | 왕복 시간 의존 |
FEC
| 장점 | 단점 |
|---|---|
| 고정 지연 | 항상 오버헤드 |
| 재전송 불필요 | 복잡한 구현 |
| 단방향 가능 | 정정 능력 제한 |
Ⅳ. 실무 적용 방안
10. 실무에선? (기술사적 판단)
- TCP: ARQ 기반 (ACK, 재전송)
- 무선 통신: FEC + ARQ 하이브리드
- 위성: FEC 필수 (왕복 지연 큼)
- 스트리밍: FEC 우선 (지연 민감)
Ⅴ. 기대 효과 및 결론
| 효과 영역 | 내용 | 정량적 목표 |
|---|---|---|
| 통신 성능 | 최적화된 프로토콜·라우팅으로 지연 및 패킷 손실 감소 | 네트워크 지연 50% 단축 |
| 확장성 | 소프트웨어 정의 방식으로 트래픽 급증에도 유연 대응 | 대역폭 활용률 80% 이상 |
| 보안·안정성 | 계층적 보안 아키텍처로 가용성 및 무결성 보장 | SLA 99.99% (4-nine) 달성 |
결론
**에러 제어 (Error Control)**은(는) 네트워크 기술은 5G·SDN·NFV를 통해 소프트웨어 중심으로 진화하고 있으며, AI 기반 자율 네트워크(Autonomous Network)가 차세대 통신 인프라의 핵심이 될 것이다.
※ 참고 표준: RFC 표준 시리즈, ETSI NFV ISG, 3GPP TS 23.501, ITU-T 권고안
어린이를 위한 종합 설명
에러 제어를 쉽게 이해해보자!
전송 중 발생하는 오류를 검출하고 정정하는 기술. 에러 검출(검사 코드), 에러 정정(재전송/전진), 흐름 제어로 신뢰성을 보장한다. 데이터 통신의 핵심 요소이다.
왜 필요할까?
기존 방식의 한계를 넘기 위해
어떻게 동작하나?
복잡한 문제 → 에러 제어 적용 → 더 빠르고 안전한 결과!
핵심 한 줄:
에러 제어 = 똑똑하게 문제를 해결하는 방법
비유: 에러 제어은 마치 요리사가 레시피를 따르는 것과 같아. 혼란스러운 재료들을 정해진 순서대로 조합하면 → 맛있는 요리(최적 결과)가 나오지! 🍳