gksrudtlr
|2025. 3. 14. 10:58
패리티 비트
- 패리티 비트란?
- 데이터 전송중 오류를 감지하기 위한 가장 간단한 형태의 오류 검출 코드
- 작동 방식
- 데이터의 비트 개수를 특정 규칙에 맞게 조정하여 오류를 감지
- 전송할 데이터에 추가적인 1비트(패리트 비트)를 붙여 오류 감지
- 짝수 패리티
- 데이터 비트 1의 갯수가 짝수가 되도록 패리티 비트를 설정
- 홀수 패리티
- 데이터 비트 1의 갯수가 홀수가 되도록 패리티 비트 설정
- 예시
- 데이터 : 1011001(1의 개수 4)
- 짝수 패리티 : 이미 1의 개수가 짝수이므로 0 추가
- 홀수 패리티 : 1을 추가하여 홀수로 만듦
- 한계
- 전송 과정에서 비트가 바뀌는 오류 발생시, 수신 측에서 패리티를 확인하여 오류 감지
- 하지만 짝수 개의 비트가 동시에 오류가 나면 감지하지 못함
블록합 검사
- 블록합 검사란?
- 체크섬은 데이터 블록의 무결성을 검증하기 이해 사용되는 값으로, 패리티 비트보다 더 강력한 오류 검출 능력을 제공
- 블록합 검사는 여러 개의 데이터 블록을 전송할 때, 각 블록의 데이터를 더한 합을 함께 전송하여 오류 감지
- 작동 방식
- 데이터를 일정 크기의 블록으로 나눔
- 각 블록에 대해 수학적 연산을 수행(일반적으로 덧셈)
- 연산 결과를 합계 블록으로 저장
- 수신측에서는 동일한 연산을 수행하여 계산된 체크섬과 전송된 체크섬을 비교
- 예시
- 8비트 데이터 블록 3개 존재
11001100
10101010
11110000
- 새개의 불록을 각 비트 위치별로 더해(mod 2 연산 적용) 합을 구하고, 이를 검사 블록으로 추가
블록 합(Checksum): 10010110
- 수신 측에서 받은 데이터 블록을 다시 합산해 원래 Checksum과 비교 오류 감지
- 알고리즘
- 단순 합: 모든 바이트 값을떠함
- 1의 보수 합: 모든빠이트를떠한 후 자리 올림 수를 더함(인터넷 체크섬에서 많이 사용)
- CRC(Cyclic Redundancy Check): 더 복잡하고 강력한 체크섬 알고리즘
- Checksum의 장단점
- 장점
- 다중 비트 오류 탐지 가능
- 구현이 상대적으로 간단
- 계산비용이 낮음
- 단점