Information Processes and Technology HSC Communications Unit
NetworksAnd Communication Systems
Protocols• Defined as a set of rules for communication
Handshaking• 2 devices will “shake” hands to establish what kind of protocol to use. This involves things like:• Are you ready for communication? (session level)• What speed can you talk at ( Application level. flow control)
Handshaking example with printer• Session level in which contact is established Are you ready for a print job? Sorry I’m offline
Handshaking: Application level (Flow Control) Starting to send 50 page print job Please send ½ page at a time. I am a cheap printer with a small cache and slow print speed.
Error checking methods• When data is sent, it can get damaged or lost or corrupted. Therefore data must be somehow checked for correctness.
Parity Check parity “to be equivalent to or the same”A byte of information is made of 8 bitsThe first 7 bits are used to transmit data, the 8 th bit is added to markthe total number of 1s as either odd or even. It is then used to checkif the data is correct. (It is the number of 1s that is checked)
Odd & Even Parity in useExample of even parity Parity Bit of 0 is added to keep the total number of 1s as even10101010 10000111 Parity Bit of 1 is added to keep the totals # of 1s as even.Example of odd parity Parity bit of 0 is added to 11100000 keep the total # of 1s as odd In this case a 1 is added to keep 11000001 the total number of 1s as odd
Even and Odd Parity• Parity can be set at even or odd
Parity in use… Suppose we send the letter A in ASCII. It might consist of the following 7 0s and 1s 1001101 0If we count the 1s, there are 4 The last 8th bit is used to indicatewhich is an even number that there was an even number of 1s If the A is corrupted and arrives with an odd number of 1s 1001100 0If we count the 1s, there are This indicates that the number of 1s should be even.now 3 which is an odd number Therefore an error has taken place.
Problems with ParityIf more than one error occurs then it might cancel the check out. This is known as “bit swapping” The parity bit may be corrupted, changing the end result. More than one error could occurwithin the first seven bits, cancelling out the detectable error (bit swapping)
Parity problems Original 1001101 0 Received with 1 detected error 1001100 0Cannot detect 2errors as parity is 1001000 0even The second group of bits has an even number of 1s and therefore it is accepted as correct.
Introduction to Checksum Checksum checks blocks of data made up of bytes rather than individual bytes. Entire block of data is checked using a checksum made up of the the last byte in the block 10101010 100101010 11101010 11101010Added up value /256 =
Pros and Cons of ChecksumPros: More accurate than parity. Faster as blocks of data can be checked.Cons: The precise byte or bytes in error can’t be identified so entire block must be retransmitted.Checking long message blocks is not reliable,
Example of Checksum I run above and I run above get checksum of and get 36 too. Data checksum of 36 block is correct
Cyclic Redundancy Check• CRC is the most accurate error checking method.• It uses much larger numbers than Checksum• Like checksum it checks a block of data• High level of accuracy with 16 bit check or a 32 bit check
Cyclic Redundancy Check The values of each of the block are read as 1 big number 12 9 18 2400011100 00001001 00010010 00011000 58,790,424/16 or 32 bit CRC value I run above I run above and and get CRC get CRC of 36 of 3692 92too. Data block is correct
Error Correction• When an error is detected using Parity, Checksum or CRC, then the error must be corrected.
Methods of Error Correction• Retransmission – The receiving computer having detected the error requests that the data block be transmitted again. I got an error, please send that last block again! Retransmit
Symbol Substitution• The receiving computer will replace faulty symbols with a substitute symbol such as It will then run a spell check to try and correct the data –example love you would be corrected to I love you. This does not always work.
Error Correction Code (ECC)• ECC is a technique that sends “extra” data so that if there is an error, it can be corrected with the extra data. At least one extra byte must be sent for every eight bytes of data.• Problems with this is that it is slow and much more data is sent overall. It is better to just resend each block of data that is in error,