Chap 2.2 / 3 - Data transmission (error checking, encryption) Flashcards
types of error checking
-Cyclic Redundancy Checks (CRC)
-Check digit (ISBN-13 / Modulo 11)
-Checksum
-Echo check
-Parity Checks
-Automatic Repeat Request (ARQs)
which error checking check following transmission
-parity checks
-echo checks
-checksum
-ARQs
define CRC
-type of error checking where the no. of 1’s are counted and put as a Hex value in the trailer to be sent
how does CRC work
-count no. 1’s
-put value as Hex in the trailer
-receiving comp counts no. 1’s & CRC
-if match = no error; no match = error & packet resent
why do you need to check for errors
-risk that data may be tampered with during transmission
Errors can occur due to:
-interference = all cables can suffer from electrical interference
-problems during packet switching
-skewing of data = in parallel transmission, bits arrive out of sync
define parity checking
-type of error checking where a parity bit is added based on the chosen parity system
define parity bit
-extra bit added based on the chosen parity system
how does Parity Check work
-choose even or odd
even:
-count no. 1’s
-if even, parity bit = 0; if odd, parity bit = 1
odd:
-count no. 1’s
-if odd, parity bit = 0; if even, parity bit = 1
-receiving comp checks if no. 1’s matched chosen parity system
how to find faulty bit in parity check
-Criss cross method
-count no. 1’s in each column & row (parity bit & byte), find one that doesn’t match chosen parity system
-find intersection point
-can determine which digital stream was changed
define checksum
-type of error checking where a checksum is calculated form the data using and agreed algorithm & transmitted with the data
how does checksum work
-calculate checksum from agreed algorithm
-checksum is sent with data
-receiving comp recalculates checksum & compares them
-if match = no error; no match = error & resend
define Echo check
-type of error checking where sent data is sent back to sender to check if any error occurred during transmission
how does echo check work
(don’t know if error happened at 1 / 2 transmission)
-data is sent
-copy of data is sent back to sender
-returned & og data are compared
-no diff = no error, yes diff = yes error
define check digit
-final digit in code calculated from all other digits in the code
types of check digit
-ISBN-13
-Modulo 11
what can check digits identify
-incorrect digit entered
-transposition error occurred
-omitted or extra digits
-phonetic errors
how is check digit used
-check digit is calculated by human & added to code
-human types numerical code
-comp. calculate check digit based on numerical code & compare with human check digit
-no match = human made an error
-asked to re-enter code
ISBN 13 algorithm
1)from left to right, first digit is odd
2)-add all no.s in odd index sequence
2)-add all no.s in even index sequence x 3
3)- 1) + 2) / 10
4)- if remainder = 0, use
5)- else 10- remainder
6) do same for recalculation, 0 = corret transmission
Modulo-11 algorithm (generation)
1)-each digit has weighting starting from 2 from right
2)-each digit x their weighting and add all
3)-total / 11
4)-if remainder = 10, check digit = X
5)-else 11- remainder
Modulo-11 algorithm (recalculation)
1)-each digit has weighting starting from 1 from right to end
2)-each digit x their weighting and add all
3)-total / 11
4)-if remainder = 0, no. is correct
diff btw Checksum & check digit
checksum:
-calculated from block of data
-sent with block of data
-recalculated at receiving
-if diff = error occurred
-used to check errors flowing data transmission
check digit:
-final digit in code
-calculated form other digits in code
-used to check errors during data entry
-detects, incorrect digit entered, transposition error occurred, omitted or extra digits, phonetic errors
define ARQs
-type of error checking where an ( - )/( + ) acknowledgment is sent within the timeout before the data is resent
how does ARQs work
-data is sent to receiver with an error detection code
-no error = ( + ) acknowledgment, no resend
-yes error = ( - ) acknowledgment, yes resend
-no acknowledgment within timeout = yes resend