본문 바로가기
IT기술노트/디지털네트워크

오류제어

by 비트코기 2021. 2. 21.
반응형

I. 오류제어의 개요

가. 오류제어의 정의

   - 네트워크상의 정보 전달 과정에서 발생하는 전송중단, 혼선 등의 예외 상황을 처리하기 위한 기술

나. 네트워크 통신오류의 종류

   - 단일-비트 오류, 다중-비트 오류, 집단 오류


II. 네트워크 통신오류제어 방식 및 오류정정 방법

가. 네트워크 통신오류제어 방식

전진오류수정(FEC)

수신측에서 오류를 스스로 검출/복원할 수 있는 방법으로 송신시 오류 복구를 위한 잉여 비트를 추가하여 전송하는 방식

후진오류수정(BEC)

전송된 데이터에 오류가 발생된 경우, 송신측에 오류 사실을 알려 재전송하여 복원하는 방식

나. 네트워크 통신오류정정 방법

방법

내용

단일 비트 오류 정정

오류 교정 원리는 잘못된 비트의 위치를 알아내는 것으로 패리티 비트

ASCII 코드는 3비트의 잉여 코드가 필요

중복 비트 오류 정정

주어진 데이터 비트의 수를 정정하기 위해 요구되는 중복 비트 수를 계산하기 위해 데이터 비트 수와 중복 비트 수 사이의 관계를 확인하는 방식

해밍 코드

해밍 코드에서 중복 비트의 위치를 알아내는 방식

다중 비트 오류 정정

데이터 비트의 집합을 중복하여 계산되는 중복 비트를 다중 비트 오류를 정정하는데 사용


III. 네트워크 통신오류 검출기법

검출기법

구분

내용

패리티검사

(Parity Check)

개념

한 블록의 데이터 끝에 1비트 추가, 구현이 간단하여 널리 사용

종류

짝수 패리티 : 1의 전체 개수가 짝수 개가 되게 한다.

홀수 패리티 : 1의 전체 개수가 홀수 개가 되게 한다.

동작과정

송신측

짝수 또는 홀수 패리티의 협의에 따라 패리티비트 생성

ASCII(7Bit) + 패리티비트(1bit) 전송

수신측

1의 개수를 세어 에러 유무 판단

맞지 않으면 재전송 요청

단점

짝수개의 에러는 검출 불가

블록 합 검사

(Block Sum

Check)

개념

행 단위 패리티에 열 단위의 오류 검사를 수행 할 수 있는 열 패리티 문자를 추가하여 이중으로 오류 검출 작업 수행

동작과정

데이터를 일정 크기의 블록으로 묶음

각 블록을 배열의 열로 보고 패리티 비트를 계산하여 추가

각 블록의 행에 대한 패리티 비트를 계산하여 추가한 후 전송

단점

하나의 블록에 두개의 에러가 생기고 다른 블록의 동일한 위치에 두개의 에러가 발생한 경우 검출 불가능

순환중복검사

(CRC : Cyclic Redundancy Check)

개념

정확한 오류를 검출하기 위해 다항식 코드 사용

오류 검출 방식 중 가장 우수하며, 여러 비트에서 발생하는 집단 오류도 검출 가능

계산방법

- 송신측이 데이터를 전송하기 전에 송수신 측은 동일한 다항식 결정

- 송신측에서 K비트의 전송 데이터를 생성 다항식으로 나눈 n비트의 나머지 값 구함

- K 비트의 전송 데이터에 n비트의 나머지 값을 추가, K+n비트의 데이터를 수신측으로 전송

- 수신측에서 수신된 K+n비트의 데이터를 생성 다항식으로 나누어 나머지가 0이 아니면 오류 발생

검사 합

(Checksum)

개념

전송 데이터의 맨 마지막에 앞서 보낸 모든 데이터를 다 합한 합계를 보수화하여 전송

수신 측에서는 모든 수를 합산하여 검사하는 방법으로 오류 검출

패리티 체크 기법의 오류검출 능력을 향상하기 위해 개발된 기법

동작과정

송신측

1. 데이터 단위를 n비트의 여러 세그먼트로 분할

2. 세그먼트들의 전체 길이 또한 n비트가 되도록 유지하며 Checksum 생성

3. 1의 보수 연산을 이용하여 전체 Checksum은 보수화

4. 원래 데이터 단위의 끝에 삽입하여 네트워크를 통해 전송

수신측

1. Checksum을 포함하여 모든 세그먼트들을 더했을 때 모든 비트가 1이 나오면 정상, 모든 비트가 1이 나오지 않으면 오류

 

반응형

'IT기술노트 > 디지털네트워크' 카테고리의 다른 글

Queuing  (0) 2021.02.21
TCP 혼잡제어  (0) 2021.02.21
라우팅(Routing)  (0) 2021.02.21
ARQ (Automatic Repeat request)  (0) 2021.02.21
슬라이딩 윈도우  (0) 2021.02.20
흐름제어  (0) 2021.02.20
CDMA/CD, CDMA/CA  (0) 2021.02.20
NAT(Network Address Translation)  (0) 2021.02.20

댓글