컴퓨터공학1학년/데이터통신

    [에러 제어] 해밍 코드

    해밍코드 에러 검출에 필요한 잉여 데이터 비트들의 수를 최소화한 방법 코드의 구성 : 7비트(1100110) + 해밍비트(4비트) = 11비트 110ㅁ011ㅁ0ㅁㅁ ( ㅁ = 해밍비트) 일반적인 7비트 아스키 문자의 해밍코드 추가될 자리 = 2의 제곱승 자리 연산방법 - 1의 값을 가진 비트의 위치값을 이진수로 Ex-OR한다. 11 10 6 5 1011 1010 0110 0101 ------ 0010 최종형태(전송) 11000110010 - 오류 검출 및 정정 방법 수신한 데이터내의 1의 값을 갖는 비트의 위치값을 다시 Ex-OR했을때 0이나오면 이상없음으로 판단한다. 해밍 코드는 단일에러의 수정 및 다중에러의 검출이 가능 해밍코드는 데이터 비트 수에 따라 해밍 비트의 수가 결정된다. 2m >= n + ..

    [에러 복구]에러 복구 방법

    에러 검출되면 -> 재전송 요청 -> 에러없는 데이터 수신- >일련의 과정을 ARC ( Automatic Repeat ReQuest) 자동 반복 요청 이라고 함 ARQ의 종류 : 1)Stop and Wait ARQ 2) 연속적 ARQ : Sliding Window라는 버퍼사용 Go-back-N ARQ, Selective-repeat ARQ) (1) Stop-and-Wait ARQ - 송신측이 하나의 프레임을 전송. 수신측에서는 해당 프레임의 에러 유무를 판단 - 에러가 없을경우 송신측에게 ACK를 전송 - 에러가 있는 경우 NAK을 전송하여 재전송 유도 특징 - ARQ 방식 중 가장 간단한 현태 - 한번에 한 개의 프레임만 전송 - 한 개의 연속적인 블록이나 프레임으로 메시지를 전송할 때 효율적 - 전송..

    [에러 제어] CRC (Cyclic Redundancy Check)

    CRC (Cyclic Redundancy Check) 현재 네트워크에서 널리 사용되며 다항식 코드로도 알려짐. 특정 방정식에 의한 연산결과를 원시프레임에 삽입함. 패리티 검사는 문자가 아닌 연속 2진 데이터는 적용 어려우므로 전체 블록검사가 필요하며, CRC는 전체 블록 대상 에러 검출 이진 나눗셈을 기반 = 패리티 검사보다 효율적, 에러검출능력우수 동작과정 ① 메시지는 하나의 긴 2진수로 간주 ② 특정한 제수에 의해 나누어지며, 이때 나머지는 송신되는 프레임에 첨부, 이 나머지를 CRC 비트 또는 FCS(Frame Check Sequence), BCC(Block Check Character)라고도 함 ③ 프레임이 수신되면 수신기는 같은 제수(생성다항식)를 사용하여 나눗셈의 나머지를 검사(Exor) ④ ..

    [에러 제어] 블록 합 검사

    이차원 패리티 검사 : 가로와 세로로 두 번 관찰 검사의 복잡도를 증가 - 다중 비트 오류와 집단 오류를 검출할 가능성을 높임-> 패리티 검사보다 높은 에러 검출 성능 동작과정 - 각 데이터 비트들을 배열에 넣고 마지막 열과 행을 비워둔 채로 패리티 비트 생산. 비워놓은 배열의 열과 행에 ㄱ ㅖ산된 결과를 넣는 방식이다. 1. 전송하고자 하는 데이터들을 일정 크기의 블록으로 묶는다. 2. 블록을 배열로 봤을 때 각 행의 패리티 수행 겱하 마지막 열에 붙인다. 3. 모든 행에 대해 패리티가 추가되면, 열을 중심으로 첫번째 열부터 마지막에 각 행이 패리티 비트 열까지 다시 패리티 수행하여 마지막 행에 추가한다. 4. 송신측은 재구성된 블록을 행단위로 전송한다. 5. 수신측은 블록을 구성하고, 블럭합을 검사함..

    [에러 제어] 패리티 검사

    한 블록의 데이터 끝에 한 비트 추가 가장 간단한 방법으로 구현이 간단하여 널리 사용됨. 단 하나의 비트라는 적은 부담으로 에러 검출할 수 있는 장점 종류 - 짝수 패리티 : 1의 전체 개수가 짝수개 - 홀수 패리티 : 1의 전체 개수가 홀수개 동작과정 1. 송신측은 7비트 길이 아스키 문자에 패리티 비트를 추가하여 8비트를 전송한다. 2. 이 때 추가하는 비트값은 문자 전체에서 1의 개수가 짝수(짝수패리티) 또는 홀수(홀수패리티)가 되도록 선택한다. 3. 수신측은 수신한 데이터 비트 내 1의 개수가 짝수(짝수패리티) 또는 홀수(홀수패리티)인지 확인한다. 4. 수신측은 위 과정이 맞지 않는 경우 재전송 요청한다. 동작예 - 전송하고자 하는 데이터 : 1101001 -> (전송방향) - 홀수 패리티 사용 ..