반응형
Notice
Recent Posts
Recent Comments
관리 메뉴

꿈꾸는 사람.

[정보시스템감리사][시스템구조] 검사합 (Checksum) 본문

정보시스템감리사/시스템구조

[정보시스템감리사][시스템구조] 검사합 (Checksum)

현무랑 니니 2016. 12. 22. 22:55
반응형

검사합(Checksum)

정의

검사합은 전송 또는 저장 중에 발생했을 수 있는 오류검출하기 위한 디지털 데이터 블록의 작은 자료이다.

개념

검사합은 데이터 무결성을 확인하는데 사용되지만 데이터 신뢰성을 확인하지는 못한다.

검사합 과정은 데이터를 전송이나 저장할 때 검사합을 생성하고 수신 또는 사용할 때 검사합을 확인하는 절차로 이루어진다.

송신 측에서 데이터(= T)와 검사합(-T)를 함께 전송하면 수신 측에서 수신한 데이터의 합(T)와 검사합(-T)를 더한 결과의 1의 보수가 0이면 오류가 없는 것이다.


세부 과정

검사합 생성기

송신 측에서

검사합 생성기는 데이터를 n 비트 개의 동일 단위로 나눈다. (보통 16비트)

이 단위들의 값을 모두 더하여 전체 합(sum)을 구한다.

전체 합 계산 중 carry가 발생하면 wrap를 적용하여 wrapped sum을 얻는다.

 

그 전체 값을 1의 보수로 변환하여 원래 데이터에 검사합 필드란 잉여 비트로 추가한다.

전송할 모든 데이터들의 합이 T이면, 검사합은 –T가 될 것이다.

확장된 데이터가 네트웍을 통해 전송된다.


검사합 검증기

수신 측에서

수신자도 데이터를 n 비트 개의 동일 단위로 나눈다. (보통 16비트)

모든 데이터가 더해지고 그 합이 1의 보수로 변경된다.

그 결과가 0이면 받은 데이터는 수용되고 아니면 거부된다.

검사합 사용 분야

TCP/IP 프로토콜을 사용하는 인터넷 등의 통신시스템

마이크로프로세서에서 실행파일 검사합

검사합 사용 예

전송할 데이터 [8, 12, 9, 5]를 송신측에서는 합을 구하면 34이다.

4비트 단위로 전송하기 위해 발생한 캐리 10을 나머지 4비트 값  0010을 구한다.

이 값에 1의 보수를 적용한 1011이 검사합이 된다.

송신기는 이 검사합을 데이터에 포함하여 [8, 12, 9, 5, 11]을 전송한다.


수신한 데이터 [8, 12, 9, 5, 11]의 합을 구하면 45이다.

이 합을 4비트 크기로 적용하면 발생한 캐리 10을 나머지에 더하여 1111을 구한다.

이 값에 1의 보수를 적용한 결과가 0000이 된다.

결과 값이 0이므로 오류가 없다고 판단하고 수용한다.

반응형
Comments