일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 리뷰
- python
- 뉴스타파
- 조세피난처
- Git
- 단통법
- 해외직구
- 김경문
- 우분투
- 블로그
- NC다이노스
- 문파문파
- Linux
- ubuntu
- 안드로이드
- 야구
- 인공지능
- 타이젠
- arm
- 손민한
- 데이터베이스
- NC 다이노스
- mysql
- ubuntu 12.04
- Tizen
- 문파문파 공략
- 프로야구
- 국정원
- 태그를 입력해 주세요.
- 애플
- Today
- Total
꿈꾸는 사람.
[정보시스템감리사][시스템구조] 검사합 (Checksum) 본문
검사합(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이므로 오류가 없다고 판단하고 수용한다.
'정보시스템감리사 > 시스템구조' 카테고리의 다른 글
[스토리지 구성] DAS, NAS, SAN, IP-SAN (5) | 2017.04.20 |
---|---|
[정보시스템감리사][시스템구조]IPv4 데이터그램 형식 (0) | 2016.12.07 |