"정보처리기사, 전산직 공무원, 대학원 네트워크 시험에서 항상 나오는 단골 계산 문제와 개념 문제는 무엇일까?"
"데이터가 전송 중에 깨지거나 손실되었을 때, 네트워크는 이를 어떻게 알아채고 다시 보낼까?"
네트워크 7계층 중 데이터 링크 계층(Data Link Layer)은 이더넷 케이블이나 Wi-Fi 같은 매체를 통해 인접한 기기 간에 '신뢰성 있는 데이터 전송'을 담당하는 핵심 계층입니다.
시험 및 실무에서 가장 중요한 핵심은 바로 1) 에러 검출 기술(CRC)과 2) 흐름 및 에러 제어 기술(ARQ)입니다. 이번 글에서는 직장인 자기계발 및 시험 준비용으로 꼭 알아야 할 핵심 이론과 유형을 단번에 이해하기 쉽게 정리해 드립니다!
1. 에러 검출의 핵심: CRC (Cyclic Redundancy Check, 순환 잉여 검사)
네트워크 전송 과정에서 잡음이나 간섭으로 인해 비트(0과 1)가 뒤바뀌는 에러가 발생할 수 있습니다. 이를 수신 측에서 빠르게 검출하기 위해 사용하는 대표적인 다항식 연산 기술이 바로 CRC입니다.
송신 측과 수신 측은 미리 공유된 생성 다항식 P(x)를 약속합니다.
생성 다항식이 n차 다항식이면, 원본 데이터 뒤에 n개의 0을 추가합니다. (예: 3차 다항식이면 000 추가)
0이 붙은 전송 데이터를 생성 다항식의 이진수 값으로 나눕니다.
이때 일반 나눗셈과 달리 뺄셈 대신 XOR(Exclusive OR) 연산을 수행합니다. (두 비트가 같으면 0, 다르면 1)
나눗셈을 마치고 남은 **나머지(Remainder)**가 바로 CRC 값이 됩니다.
원래 데이터 뒤에 패딩했던 0 대신 이 CRC 값을 붙여서 수신 측으로 전송합니다.
수신 측은 전달받은 프레임 전체를 동일한 생성 다항식으로 나눕니다.
- 나머지가 0인 경우: 전송 중 오류 없음 (정상 수신)
- 나머지가 0이 아닌 경우: 전송 중 오류 발생 (프레임 폐기)
2. 흐름 제어 및 에러 제어 (ARQ 프로토콜 3가지)
송신 측이 너무 빠른 속도로 데이터를 보내 수신 측 버퍼가 넘치는 것을 막는 흐름 제어(Flow Control)와, 프레임이 손실/훼손되었을 때 재전송을 요청하는 자동 재전송 요청(ARQ, Automatic Repeat Request) 기술입니다.
시험에서는 아래 3가지 ARQ 방식의 작동 특징과 윈도우 크기 비교가 핵심 포인트입니다.
① Stop-and-Wait ARQ (정지-대기 방식)
- 작동 원리: 송신 측은 프레임 1개를 보낸 후, 수신 측으로부터 확인 응답(ACK)이 도착할 때까지 다음 프레임을 보내지 않고 무조건 대기합니다.
- 장점: 구현이 매우 단순하고 수신 측 버퍼 부담이 적습니다.
- 단점: 전송 지연 시간(RTT)이 긴 네트워크 환경에서는 회선 효율(Utilization)이 매우 떨어집니다.
② Go-Back-N ARQ (GBN)
- 작동 원리: 슬라이딩 윈도우(Sliding Window) 기법을 사용하여, ACK를 받지 않고도 송신 윈도우 크기(N)만큼 프레임을 연속 전송합니다.
- 수신 윈도우 크기: 1 (반드시 순서대로 들어오는 프레임만 수신 가능)
- 오류 발생 시: 예를 들어 3번 프레임에 오류가 발생하면, 수신 측은 3번 이후에 도달하는 4번, 5번 프레임도 모두 버립니다. 송신 측은 타임아웃 발생 시 3번부터 그 이후 프레임을 모두 재전송(Go Back N)합니다.
③ Selective Repeat ARQ (선택적 재전송 방식)
- 작동 원리: Go-Back-N의 단점(정상 수신된 프레임까지 재전송하는 비효율성)을 개선한 방식입니다.
- 수신 윈도우 크기: N (> 1) (순서가 맞지 않게 도달한 프레임도 버퍼에 보관 가능)
- 오류 발생 시: 손실되거나 에러가 난 해당 프레임만 선택적으로 재전송합니다.
- 특징: 수신 측에 정렬을 위한 별도의 버퍼가 필요하므로 구현이 더 복잡합니다.
💡 한눈에 비교하는 ARQ 프로토콜 요약표 (시험 필수 암기!)
| 구분 | Stop-and-Wait | Go-Back-N | Selective Repeat |
| 송신 윈도우 크기 | 1 | N | N |
| 수신 윈도우 크기 | 1 | 1 | N |
| 재전송 범위 | 손실된 1개 프레임 | 손실된 프레임 이후 전체 | 손실된 해당 프레임만 |
| 수신 측 정렬 버퍼 | 불필요 | 불필요 | 필요 |
| 회선 전송 효율 | 매우 낮음 | 중간 | 높음 |
📌 시험 핵심 출제 포인트 체크
- CRC 연산 방법: 생성 다항식이 x^3 + x + 1 형태로 주어지면 이진수 1011로 변환하여 XOR 나눗셈을 수행하는 계산 과정을 익혀두세요.
- 윈도우 크기 제약 조건:
- Go-Back-N의 최대 송신 윈도우 크기: 2^m - 1 (m은 시퀀스 번호 비트 수)
- Selective Repeat의 최대 윈도우 크기: 2^(m-1)
- 수신 윈도우 차이: 수신 윈도우 크기가 1이면 Go-Back-N, 1보다 크면 Selective Repeat라는 구별 문제가 자주 나옵니다.
'전공과목 > 네트워크' 카테고리의 다른 글
| [네트워크] 네트워크 계층의 핵심 1: IPv4 주소 클래스, CIDR 및 서브네팅(Subnetting) 계산 완벽 정리 (0) | 2026.08.31 |
|---|---|
| [네트워크] 매체 접근 제어(MAC): 유선(CSMA/CD) vs 무선(CSMA/CA) 완벽 정리 (0) | 2026.08.31 |
| [웹개발/네트워크] 쿠키(Cookie), 세션(Session), JWT 개념과 차이점 완전 정리 (0) | 2026.08.19 |
| [네트워크] HTTP vs HTTPS 차이점 및 SSL/TLS 핸드셰이크와 암호화 원리 완전 정리 (0) | 2026.08.18 |
| [네트워크] TCP vs UDP 특징 비교 및 TCP 3-Way / 4-Way Handshake 완전 정리 (0) | 2026.08.17 |