오류제어
전송된 데이터의 오류를 검출/정정하는 기법
1) FEC(Forword Error Control)
- 수신측에서 오류를 스스로 검출/정정할 수 있는 방법
- 송신 시 오류 복구를 위한 잉여 비트를 추가
(1) 해밍코드
- 수신측에서 오류가 발생한 비트를 찾아 직접 수정
- 1비트의 오류 수정 가능
(2) 상승코드
- 여러 개의 비트 오류가 있어도 한계 값, 순차적 디코딩을 이용해 모두 수정 가능
2) BEC(Backword Error Control)
- 전송된 데이터에 오류가 발생할 경우(오류 검출), 재전송을 요청에 오류를 수정하는 방식(오류 수정)
(1) 오류 검출
- Parity Check
- CRC
- Checksum
(2) 오류 수정
- Stop and Wait ARQ
- Go Back N ARQ
- Selective Repeat ARQ
- Adaptive ARQ
ARQ(Automatic Repeat reQuest)
- 수신 측에서 수신한 정보에 오류가 있을 경우, 송신측에 재전송을 요청해 오류를 제어하는 방식
1) Stop and Wait ARQ
- 송신측에서 한 개의 프레임을 전송한 후 수신 측으로부터 응답을 기다리는 기법
- 구현이 간단
- 프레임을 전송할 때마다 응답을 기다리므로 전송 효율이 낮음
2) Go Back N ARQ
- 오류가 난 지점부터 전송한 지점까지 모두 재전송하는 기법
- 수신측에서 NAK을 보내면 송신측이 오류가 발생한 이후의 프레임을 모두 재송신
- 전송오류가 발생하지 않으면 쉬지 않고 송신 가능
- 중복전송의 단점
3) Selective-Repeat ARQ(SR ARQ)
- 여러 프레임을 연속적으로 전송하고, 수신측에서 NAK을 보내면 송신측에서는 오류가 난 부분의 프레임만 재전송
- 수신측에서는 오류가 발생할 경우, 해당 프레임을 재전송받을 때까지, 이후의 프레임을 버퍼에 담아놨다가 재조립하는 과정이 필요
4) Adaptive ARQ
- 전송 효율을 최대로 하기위해 데이터 프레임의 길이를 동적으로 변경
- 수신측은 오류 발생률을 판단해 송신측에 통보
- 송신측은 오류 발생률에 따라 프레임 길이를 동적으로 조절
- 효율이 좋음
- 많은 비용 발생
'CS > Network' 카테고리의 다른 글
[네트워크] 혼잡 제어(Congestion Control) (0) | 2020.06.26 |
---|---|
[네트워크] 흐름 제어(Flow Control) (0) | 2020.06.26 |
[네트워크] HTTP Request/Response (0) | 2020.06.26 |
[네트워크] HTTP 요청/응답 헤더 (0) | 2020.06.26 |
[네트워크] HTTP와 HTTPS (0) | 2020.06.24 |
댓글