정보처리기사 전송 오류 제어 방식

KwonSungMin·2023년 10월 7일
1

정보처리기사

목록 보기
11/12

전진 오류 수정FEC(forward error correction)

  • 재전송 요구 없이 수신 측에서 스스로 오류 검출 및 수정하는 방식
  • 에러 발생시 송신에 재전송 요청 x
  • 송신 측에 통보 x
  • 해밍코드, 상승코드 방식이 있음

후진(역방향) 오류 수정 BEC, Backward Error Correction

  • 송신 측에 재전송을 요구하는 방식

  • 패리티검사, CRC, 블록 합 방식으로 오류 검출하고, 오류 제어는 자동 반복 요청 ARQ에 의해 이루어짐

자동 반복 요청 ARQ, Automatic repeat request

  • 수신측이 오류 발생을 송신측에 통보,
  • 송신측은 오류 발생 블록 재전송하는 절차

1) 정지-대기 ARQ , Stop-and-wait ARQ

  • 송신측에서 한개의 블록 전송 후 수신측으로 부터 응답을 기다리는 방식

  • 구현 단순하나 전송 효율 떨어짐

2) 연속 ARQ, Continuous ARQ

  • Stop-and-wait ARQ가 갖는 오버헤드를 줄이기 위해 연속적으로 데이터 블록을 보냄

 가.  Go-Back-N ARQ

  • 수신측에서 부정응답(NAK)을 보내면 오류가 발생한 블록 이후 모든 블록 재전송

나. 선택적 재전송 Selective repeat ARQ

  • 수신측에서 부정응답(NAK)을 보내면 오류가 발생한 블록만을 재전송

- 복잡한 논리 회로 및 큰 용량의 버퍼 필요

  • 연속적으로 전송하나 수신 확인은 각각에 대해 이뤄짐

3) 적응적 ARQ, Adaptive ARQ

  • 데이터 블록의 길이를 채널의 상태에 따라 동적으로 변경하는 방식

  • 효율이 제일 좋으나 제어회로가 복잡하고 고비용으로 인해 거의 사용되지 않음

오류 검출 방식

1) 패리티 검사 Parity Check

  • 전송비트에 1비트의 패리티 비트(검사비트)를 추가하여 에러발생 유무만 판별

  • 홀수 패리티 검사를 한다면 1의 수가 홀 수 여야 함

  • 짝수 수직 패리티 검사를 블록 합 검사 Block Sum Check 라고 함

순환 중복 검사 CRC, Cyclic Redundancy Check

  • 다항식 코드를 사용하여 에러 발생 유무만 판별

  • 집단오류 검출 가능, 검출률이 높아 HDLC프레임의 FCS(프레임검사순서필드)에 사용

블록 합 검사 Block Sum Check

  • 블록의 맨 마지막에 수평방향으로 패리티 비트를 부여하여 에러 발생 유무만 판별

  • 수평패리티 체크, 세로중복검사 LRC, Longitudinal redundancy check 라고도 함

해밍 코드 Hamming code

  • 수신측에서 직접 자기 정정 부호의 하나로 오류를 검출하고 수정까지 함

  • 1Bit의 오류만 수정가능

  • 해밍거리 Hamming Distance : 송,수신 데이터의 각 대응 비트가 서로다른 비트 의 수

ex) 1101 송신, 1011 수신 이라면 해밍거리는?  2.

  • 정정 가능한 최대 오류의 수 : (dmin - 1) / 2

  • 검출 가능한 최대 오류의 수 : dmin - 1          *dmin : 최소해밍거리

ex) 해밍거리가 8일때?

검출 최대 오류의 수 : 7

정정 최대 오류의 수 : 3.5

상승 코드

  • 순차적 디코딩과 한계값 디코딩을 사용하여 오류수정

  • 해밍코드처럼 검출과 정정 가능 + 여러비트의 오류도 수정 가능

profile
천천히

0개의 댓글