본문내용
하여 송신측에 알려주고, 송신측은 이를 이용하여 \" 가장 적절한 프레임의 길이\"를 결정하여 송신하는 방식이다.
이때 프레임의 길이는 통신회선의 품질이 좋지 않아서 오류발생율이 높을 때는 프레임의 길이를 짧게 하고, 오류발생율이 낮을 경우에는 길게 조절한다.
전송효율은 높으나, 각 장치의 제어회로가 매우 복잡해진다.
2.4 전진 오류 수정 방식(Forward error Correction)
데이터 송수신시 데이터비트에 여분의 잉여 비트들을 추가하여 오류의 유무를 검출(detection)하고 이를 재전송 없이 수신측 자체적으로 수정(correction)하는 방식이다.
오류율이 낮은 경우에 효과적이다.
* 단점
잉여 비트를 추가하므로 전송효율이 다소 떨어진다.
* 종류
단일 오류 수정을 위한 Parity 검사코드
Convolution코드
◆ 패리티 비트
ASCII는 7비트 코드인 데 반하여, 대부분의 컴퓨터는 기본단위로 바이트(Byte)라는 8비트 정보를 처리 단위로 하고 있다. 따라서 ASCII 문자는 대부분의 겨우 최대유효비트를 0으로 하여 바이트 당 한 문자를 저장하는데, 이 여분의 비트를 응용에 따라 특정 목적에 이용할 수 가 있다.
예를 들어 몇몇 프린터에서는 최대유효비트를 1로 세트한 128개의 8비트 ASCII 문자를 만들어서 그리스 문자나 이탤릭체의 문자로 이용한다.
데이타 통신에서는 이 여분의 비트를 문자의 패리티를 나타내는 데 이용한다. 즉 패리티 비트(parity bit)는 비트 전체 수를 짝나 홀수로 만들기 위하여 포함시키는 여분의 비트로서, 다음과 같이 두 문자에 대한 [식1]의 짝수 패리티와 [식2]의 홀수 피리티를 예로 들어보자.
[식1] ASCII코드의 A = 1000001 01000001 11000001
[식2] ASCII코드의 T = 1010100 11010100 01010100
위의 예에서 짝수 피리티를 위해서는, 문자코드의 1 개수를 짝수로 만들기 위하여, 홀수 패리티에서는 1 개수를 홀수로 만들기 위하여 코드의 최좌측 위치에 여분의 비트 하나를 추가하였다. 일반적으로 짝수 피래티 한개나 또는 그 이상의 비트를 주로 이용한다.
패리티 비트는 정보를 한 곳에서 다른 곳으로 전송하는 도중 발생한 에러를 검출하는 데 유용하게 이용할 수 있으며, 다음과 같이 처리한다. 우선 송신지에서 한 문자의 코드 끝에 짝수 피리티를 생성시켜서 피래티 비트를 포함한 8비트 문자를 수신지로 전송하면, 수신지에서는 수신한 문자의 패리티를 조사하여, 조사 결과 패리티가 짝수가 아니면 이것은 전송중에 적어도 한 비트 값이 바뀌어졌음을 알게 되어 에러를 검출하는 방법이다. 이 방법으로는 전송한 문자의 한 비트나 세 비트 등 홀수 개의 에러만을 검출할 수 있으며, 짝수 개의 에러는 검출할 수 없다. 따라서 짝수 개의 에러를 위하여는 별도의 에러검출코드(error detection codes)가 필요하다.
에러를 검출한 후의 조치는 응용에 따라 다르다. 한 가지 방법은 착오가 임의적으로 발생한 것으로, 앞으로 다시 발생하지 않을 것을 가정하여 메시지의 재전송을 요구하는 방법이다. 즉, 수신기가 패리티 에러를 검출하게 되면, 수신기는 짝수 패리티 8비트 10010101의 NAK(negative acknowledge) 제어문자를 송신기 쪽으로 전송하고, 에러를 발견하지 못하면 ACK(acknowledge) 제어문자 00000110을 되돌려 보낸다. 그러면 송신단에서 올바른 피리티가 수신될 때까지 해당 메시지를 재전송함으로써, NAK 제어문자에 대처할 것이다. 만약 일정한 횟수의 재전송에서도 계속 에러가 발생한다면 전송선로상의 오류 검출을 요구하는 메시지를 조작원에게 보낼 수도 있다.
==========================================================================================
패리티 비트(Parity Bit)
전송과정에서 생긴 자료상의 잘못을 찾아내기 위한 자료에 덧붙여진 비트.짝수 패리티와 홀수 패리티가 있는데 각각 패리티로 하여금 전체 자료 중의 1의 개수를 짝수/홀수로 만는다. 짝수 패리티의 경우를 예를 들면, 10010000이라는 7비트의 자료가 있다고 하자. 그러면 이미 1개의 개수가 둘로 짝수이기 때문에 패리티 비트에는 0이 들어간다. 또한 자료가 1011110으로 1의 개수가 다섯이라면 패리티 비트에 1을 넣어 전체 자료중의 1의 개수를 홀수개로 만들어 준다는 것을 제외하고는 동일하다. 그러나 동시에 두개의 비트에 잘못이 있으면 그 잘못을 찾지 못하는 식으로 약 95% 정도의 낮은 오류 검출률로 거의 쓰이지 않는다. 특히 우리나라에서는 한글을 쓰기 위해 전체 1바이트 중에서 7비트만 쓰는 것이 아니라 8비트를 다 쓰기 때문에 거의 쓰이지 않고 있다.
==================================================================================
네트워크나 하드웨어에서 자동적으로 에러가 검출되게 하는 방법이죠. odd parity와 even parity가 있습니다.
보통 7개의 bit 뒤에 하나의 parity bit을 추가하여 에러를 검출하는 방법을 사용합니다.
예를 들어봅시다.
0100010
1000101
1110101
이런 데이터를 전달하려고 할 때, 각 bit뒤에 parity bit 하나를 추가하는데, 여기서는 even parity를 사용한다고 하면, parity bit하나를 추가하여, 각 줄에 있는 1의 수가 짝수가 되게합니다. 다음과 같이 추가하면 되겠죠~
0100010 0
1000101 1
1110101 1
이렇게 하면 각 줄의 1의 수가 모두 짝수가 되게됩니다. 여기서 가장 마지막에 있는 bit을 parity bit이라고 합니다.만일 다음과 같은 메시지가 왔다고 하면,
0100010 0
1001101 1
1110101 1
parity 검사를 하면 두번째 줄에서 에러가 났다는 것을 알 수 있겠죠. 1의 수가 짝수가 아닌 홀수가 되었으니까요~
참고로 odd parity는 각줄의 1의 수가 홀수가 되게 하는 것입니다.
이때 프레임의 길이는 통신회선의 품질이 좋지 않아서 오류발생율이 높을 때는 프레임의 길이를 짧게 하고, 오류발생율이 낮을 경우에는 길게 조절한다.
전송효율은 높으나, 각 장치의 제어회로가 매우 복잡해진다.
2.4 전진 오류 수정 방식(Forward error Correction)
데이터 송수신시 데이터비트에 여분의 잉여 비트들을 추가하여 오류의 유무를 검출(detection)하고 이를 재전송 없이 수신측 자체적으로 수정(correction)하는 방식이다.
오류율이 낮은 경우에 효과적이다.
* 단점
잉여 비트를 추가하므로 전송효율이 다소 떨어진다.
* 종류
단일 오류 수정을 위한 Parity 검사코드
Convolution코드
◆ 패리티 비트
ASCII는 7비트 코드인 데 반하여, 대부분의 컴퓨터는 기본단위로 바이트(Byte)라는 8비트 정보를 처리 단위로 하고 있다. 따라서 ASCII 문자는 대부분의 겨우 최대유효비트를 0으로 하여 바이트 당 한 문자를 저장하는데, 이 여분의 비트를 응용에 따라 특정 목적에 이용할 수 가 있다.
예를 들어 몇몇 프린터에서는 최대유효비트를 1로 세트한 128개의 8비트 ASCII 문자를 만들어서 그리스 문자나 이탤릭체의 문자로 이용한다.
데이타 통신에서는 이 여분의 비트를 문자의 패리티를 나타내는 데 이용한다. 즉 패리티 비트(parity bit)는 비트 전체 수를 짝나 홀수로 만들기 위하여 포함시키는 여분의 비트로서, 다음과 같이 두 문자에 대한 [식1]의 짝수 패리티와 [식2]의 홀수 피리티를 예로 들어보자.
[식1] ASCII코드의 A = 1000001 01000001 11000001
[식2] ASCII코드의 T = 1010100 11010100 01010100
위의 예에서 짝수 피리티를 위해서는, 문자코드의 1 개수를 짝수로 만들기 위하여, 홀수 패리티에서는 1 개수를 홀수로 만들기 위하여 코드의 최좌측 위치에 여분의 비트 하나를 추가하였다. 일반적으로 짝수 피래티 한개나 또는 그 이상의 비트를 주로 이용한다.
패리티 비트는 정보를 한 곳에서 다른 곳으로 전송하는 도중 발생한 에러를 검출하는 데 유용하게 이용할 수 있으며, 다음과 같이 처리한다. 우선 송신지에서 한 문자의 코드 끝에 짝수 피리티를 생성시켜서 피래티 비트를 포함한 8비트 문자를 수신지로 전송하면, 수신지에서는 수신한 문자의 패리티를 조사하여, 조사 결과 패리티가 짝수가 아니면 이것은 전송중에 적어도 한 비트 값이 바뀌어졌음을 알게 되어 에러를 검출하는 방법이다. 이 방법으로는 전송한 문자의 한 비트나 세 비트 등 홀수 개의 에러만을 검출할 수 있으며, 짝수 개의 에러는 검출할 수 없다. 따라서 짝수 개의 에러를 위하여는 별도의 에러검출코드(error detection codes)가 필요하다.
에러를 검출한 후의 조치는 응용에 따라 다르다. 한 가지 방법은 착오가 임의적으로 발생한 것으로, 앞으로 다시 발생하지 않을 것을 가정하여 메시지의 재전송을 요구하는 방법이다. 즉, 수신기가 패리티 에러를 검출하게 되면, 수신기는 짝수 패리티 8비트 10010101의 NAK(negative acknowledge) 제어문자를 송신기 쪽으로 전송하고, 에러를 발견하지 못하면 ACK(acknowledge) 제어문자 00000110을 되돌려 보낸다. 그러면 송신단에서 올바른 피리티가 수신될 때까지 해당 메시지를 재전송함으로써, NAK 제어문자에 대처할 것이다. 만약 일정한 횟수의 재전송에서도 계속 에러가 발생한다면 전송선로상의 오류 검출을 요구하는 메시지를 조작원에게 보낼 수도 있다.
==========================================================================================
패리티 비트(Parity Bit)
전송과정에서 생긴 자료상의 잘못을 찾아내기 위한 자료에 덧붙여진 비트.짝수 패리티와 홀수 패리티가 있는데 각각 패리티로 하여금 전체 자료 중의 1의 개수를 짝수/홀수로 만는다. 짝수 패리티의 경우를 예를 들면, 10010000이라는 7비트의 자료가 있다고 하자. 그러면 이미 1개의 개수가 둘로 짝수이기 때문에 패리티 비트에는 0이 들어간다. 또한 자료가 1011110으로 1의 개수가 다섯이라면 패리티 비트에 1을 넣어 전체 자료중의 1의 개수를 홀수개로 만들어 준다는 것을 제외하고는 동일하다. 그러나 동시에 두개의 비트에 잘못이 있으면 그 잘못을 찾지 못하는 식으로 약 95% 정도의 낮은 오류 검출률로 거의 쓰이지 않는다. 특히 우리나라에서는 한글을 쓰기 위해 전체 1바이트 중에서 7비트만 쓰는 것이 아니라 8비트를 다 쓰기 때문에 거의 쓰이지 않고 있다.
==================================================================================
네트워크나 하드웨어에서 자동적으로 에러가 검출되게 하는 방법이죠. odd parity와 even parity가 있습니다.
보통 7개의 bit 뒤에 하나의 parity bit을 추가하여 에러를 검출하는 방법을 사용합니다.
예를 들어봅시다.
0100010
1000101
1110101
이런 데이터를 전달하려고 할 때, 각 bit뒤에 parity bit 하나를 추가하는데, 여기서는 even parity를 사용한다고 하면, parity bit하나를 추가하여, 각 줄에 있는 1의 수가 짝수가 되게합니다. 다음과 같이 추가하면 되겠죠~
0100010 0
1000101 1
1110101 1
이렇게 하면 각 줄의 1의 수가 모두 짝수가 되게됩니다. 여기서 가장 마지막에 있는 bit을 parity bit이라고 합니다.만일 다음과 같은 메시지가 왔다고 하면,
0100010 0
1001101 1
1110101 1
parity 검사를 하면 두번째 줄에서 에러가 났다는 것을 알 수 있겠죠. 1의 수가 짝수가 아닌 홀수가 되었으니까요~
참고로 odd parity는 각줄의 1의 수가 홀수가 되게 하는 것입니다.
소개글