[데이타통신] Chap.8 Error detect & correct

one_jeje·2022년 12월 16일
0

1. Error Detect

  • ①Parity Check
  • 1의 개수가 짝수인지 홀수인지 맞춰줌 > 수신측에서 1의 개수가 짝수나 홀수가 아니라면 error 발생

  • Checksum: 인터넷 표준 프로토콜(Ex. IP, TCP, UDP etc)에서 error를 detect하기 위해 사용하는 코드로 SW에서 사용 <-> HW에서는 data link 계층에서 error detect ???
  • ②CRC(Cyclic Redundancy Check)
  • 흔하고 강력한 error detect 방법
  • Dividend에 'Divisor(송수신자가 공유함) - 1'만큼 0으로 채워줌
  • → Dividend를 Divisor로 XOR함
  • → 끝까지 한 다음 Remainder를 Dividend에서 0으로 채웠던 부분에 대체시켜줌
  • → 이것을 수신측으로 전송하면 수신측에서 동일한 Divisor로 XOR했을 때 나머지가 반드시 0이 됨 vs 0이 되지 않는다면 error가 발생한 것

  • ③Forward Error Correction
  • 송신 측이 data에(k-bits) redundancy를(+ k-bits = n-bits) 첨부해서 보냄 → 수신 측이 이를 바탕으로 오류가 있는지 찾아냄 & recovery(?)
  • 보통은 오류가 있으면 재전송하는데 그렇게하기 어려운 환경에서 이루어짐(Ex. 시간이 오래 걸리는 경우)

  • ④Block Code Principles
  • 확률적으로 원래의 data로 복구 how? Hamming distance
  • Ex)
  • k = 2, n = 5

  • ⑤Using XOR
  • ⑥Interleaving
  • ⑦Compounding

+) Ref

https://twinw.tistory.com/132

0개의 댓글