오류 제어 방식

오류 제어 방식

오류 제어 방식, 데이터 전송 과정에서 발생할 수 있는 오류를 감지하고 복구하는 방법을 의미합니다. 주요 오류 제어 방식으로 순방향 오류 제어(FEC, Forward Error Correction), 역방향 오류 제어(Backward Error Correction), 그리고 자동 반복 요청(ARQ, Automatic Repeat reQuest) 기법이 있습니다.

순방향 오류 제어(FEC, Forward Error Correction)

  • 데이터 전송 시 송신 측에서 미리 오류를 감지하고 수정할 수 있도록 오류 정정 코드(ECC, Error Correction Code)를 추가하여 전송하는 방식입니다.
  • 수신 측에서는 추가된 오류 정정 코드를 활용하여 오류를 감지하고 자동으로 수정할 수 있습니다.
  • 장점: 재전송 없이 오류를 수정할 수 있어 실시간 전송(VoIP, 영상 스트리밍 등) 에 적합합니다.
  • 단점: 오류 정정을 위한 추가 데이터(오버헤드)가 발생하며, 복잡한 계산이 필요할 수 있습니다.
  • 예제: 해밍 코드(Hamming Code), Reed-Solomon 코드, 터보 코드(Turbo Code), LDPC(Low-Density Parity-Check) 코드 등.
  • 순방향 오류 제어 더 알아보기

역방향 오류 제어(BEC, Backward Error Correction)

  • 수신 측에서 오류가 감지되면 송신 측에 재전송 요청을 보내는 방식입니다.
  • 송신 측에서는 요청을 받으면 해당 데이터를 다시 전송합니다.
  • 장점: 오류 검출 후 필요한 데이터만 재전송하므로 효율적입니다.
  • 단점: 재전송이 필요하기 때문에 네트워크 부하 증가 및 지연이 발생할 수 있습니다.
  • 주로 ARQ(Automatic Repeat reQuest) 기법을 사용하여 구현됩니다.

자동 반복 요청(ARQ, Automatic Repeat reQuest)

ARQ는 역방향 오류 제어 기법의 일종으로, 오류가 검출되었을 때 재전송을 요청하는 방식입니다. 대표적인 ARQ 기법은 다음과 같습니다.

정지-대기 ARQ (Stop-and-Wait ARQ)

  • 송신 측에서 하나의 프레임을 전송한 후, 수신 측의 확인 응답(ACK 또는 NAK)을 받을 때까지 기다리는 방식.
  • 장점: 구현이 간단하며, 오류가 적은 환경에서 효율적.
  • 단점: 하나의 프레임을 전송한 후 응답을 기다려야 하므로 전송 속도가 느려짐.

연속적 ARQ (Continuous ARQ)

  • 여러 개의 프레임을 연속적으로 전송하는 방식으로, 슬라이딩 윈도우 기법을 사용합니다.
  • 대표적인 방식으로 Go-Back-N ARQSelective Repeat ARQ가 있습니다.

선택적 재전송 ARQ(Selective Repeat ARQ)

  • Go-Back-N ARQ의 단점을 보완한 방식으로, 오류가 발생한 프레임만 재전송하는 방식입니다.
  • 수신 측에서는 올바른 프레임을 버리지 않고 저장한 후, 필요한 프레임만 요청하여 수신합니다.
  • 장점: Go-Back-N에 비해 불필요한 재전송이 적어 전송 효율이 높음.
  • 단점: 수신 측에서 버퍼를 추가로 사용해야 하며, 복잡한 구현이 필요함.

비교 요약

오류 제어 방식 방식 장점 단점
순방향 오류 제어 (FEC) 오류 정정 코드 추가 실시간 전송 가능, 재전송 불필요 오버헤드 발생
역방향 오류 제어 (BEC) 오류 발생 시 재전송 요청 필요한 데이터만 재전송 지연 증가 가능
정지-대기 ARQ 하나의 프레임을 전송 후 ACK 대기 간단한 구현 속도가 느림
Go-Back-N ARQ 연속적 전송, 오류 발생 시 이후 프레임 재전송 상대적으로 빠름 불필요한 재전송 많음
선택적 재전송 ARQ (Selective Repeat) 오류 발생한 프레임만 재전송 높은 전송 효율 복잡한 구현

결론

  • 순방향 오류 제어(FEC) 는 재전송이 불가능한 환경(위성 통신, 영상 스트리밍 등)에서 적합합니다.
  • 역방향 오류 제어(BEC) 는 네트워크 트래픽을 줄이면서 오류를 수정할 수 있는 방식입니다.
  • ARQ 기법(Stop-and-Wait, Go-Back-N, Selective Repeat) 은 데이터 신뢰성이 중요한 환경에서 사용되며, Selective Repeat ARQ 가 가장 효율적인 방식이지만 구현이 복잡합니다.
0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments