Checksum

JSG·2024년 3월 21일
0

Checksum(검사합)

  • 전송된 Segment의 오류를 검출하기 위한 수단
  • Segment의 내용을 16bit씩 끊어서 더한 결과에 1의 보수를 취한 것

Checksum로 오류 찾는 과정

  • Sender(송신자)

    • checksum을 구해 패킷에 넣어 보냄.
    • checksum 구하는 과정
      1. Segment의 내용을 16bit씩 끊는다.
      2. 16bit씩 끊긴 내용들의 합을 구한다.
        2-1. 더하는 과정에서 overflow가 발생하면, 규칙에 따라 버리거나 wraparound 한다.
      3. 결과값의 1의 보수를 수행한다.
  • Receiver(수신자)

    • Segment를 수신 후 checksum을 포함한 모든 16bit의 내용들을 더한다.
    • 결과값이 모두 1(1111 1111 1111 1111)이면 에러가 없는 것이다.
      • checksum은 결과값의 1의 보수이기 때문에 결과값과 checksum을 더하면 모든 자리가 1이 나온다.

두 개의 16bit 수의 checksum 구하는 과정

  • 여기서는 overflow 발생 시 wraparound를 하였다.

6개의 8비트 수의 checksum 구하는 과정

  • 본인 영문이름 앞 6글자의 ASCII코드(2진수)를 사용하였다.
  • overflow 발생 시 wraparound를 하였다.

0개의 댓글

관련 채용 정보