dongdorodongdong
ARQ (Automatic Repeat reQuest) 본문
정의
- 송신측과 수신측 사이에서 데이터 전송이 있을 때, 수신측에서는 오류 검출을 하게 되고 수신측에서 오류가 검출이 된다면 송신측에 재전송을 요청하는 과정을 뜻함.
Stop-and-Wait ARQ
- 정의
- 송신 측에서 한 개의 블록을 전송한 후 수신 측으로부터 응답을 기다리는 방식 - 과정
1. 송신측이 하나의 프레임을 전송
2. 오류가 없으면 수신측이 ACK 전송
3. 오류가 있을 때 NAK를 전송하여 재전송 유도
4. ACK를 받기 전 timeout이 일어나면 해당 프레임을 오류가 난 것으로 간주하고 재전송 - 특징
- 가장 간단한 형태
- 한번에 하나의 프레임
- 송신측이 기다리는 시간이 길어져 전송 효율이 떨어짐
- 송수신측 거리가 멀수록 응답을 기다리는데 시간이 낭비
Go-Back-N ARQ (슬라이딩 윈도우 프로토콜)
정의
- 오류 발생 블록 이후의 모든 블록을 재전송특징
- 연속적인 여러개의 프레임(윈도우)를 순차적으로 보냄
- 흐름을 동적으로 조절 가능
- 오류 발생 프레임부터 모두 재전송
- 하나의 프레임만 손상되어도 여러개의 프레임을 재전송
- 잡음이 많은 채널 경우 재전송이 반복되어 문제
Selective Repeat ARQ
정의
- 오류가 발생한 블록만을 재전송하는 방식특징
- 연속적으로 프레임을 보냄
- 손상된 프레임만 재전송하기 때문에 잡음이 많아도 괜찮음
- 전송하는 프레임별로 타이머가 필요
- 수신측에서는 데이터를 처리하기 전에 원래 순서대로 조립해야 하므로 복잡함
Adaptive ARQ
- 정의
- 데이터 블록의 길이를 채널의 상태에 따라 그때그때 동적으로 변경하는 방식 - 특징
- 전송 효율이 우수
- 구현이 복잡