Chapter 1

17
E5214 Data Communication 1 Sargunan Ainal (JKE) 1. What is Data Communications? Data Communications concerns the transmission of digital messages to devices external to the message source. "External" devices are generally thought of as being independently powered circuitry that exists beyond the chassis of a computer or other digital message source. As a rule, the maximum permissible transmission rate of a message is directly proportional to signal power, and inversely proportional to channel noise. It is the aim of any communications system to provide the highest possible transmission rate at the lowest possible power and with the least possible noise. 2. History 2.1 Telecommunications: 1837 - Samuel Morse exhibited a working telegraph system 1843 - The first telegraph lines were opened in between Paddington and Slough by the Great Western Railway 1846 - Alexander Bain patented printing telegraph 1876 - Alexander Graham Bell invented the telephone 1895 - Guglielmo Marconi invented radio 1901 - First Trans-Atlantic signal 1926 - John Logi Baird gave the first demonstration of the television 1951 - First direct long distance dialing without an operator 1958 - The US launched its first communications satellite It formed part of an early warning radar system First international satellite telephone call by 1962 1962 - Faxing service was introduced 1968 - AT&T and Bell Telephone Company had controlled the US-Telephone System 1983 - Introduction of cell phones 1984 - AT&T was split into 2-parts 1996 - Deregulation Act: U.S. Congress enacted the Telecommunications Act Replaced all the current laws and FCC regulations 2.2 Data Communications: 1940 - Bell Laboratories began experimenting with a communications system using the COMPLEX computer. This was the forerunner of the teletypewriter 1947 - Transistor invented in Bell Labs 1950s - Computer systems used batch processing with discrete files 1954 - IBM Remote Job Entry (RJE); it allowed a terminal to forward records to a host computer and receive reports back 1960 - AT&T Bell Labs 300 Baud Modem (MOdulator/DEModulator) 1960s - Data Communication across telephone lines became more commonplace 1969 - Internet started by the US DoD as a network of 4 computers known as ARPANET (American Research Project Agency network) 1976 - Introduction of Packet-Switched service (X.25, Frame Relay, ATM, SMDS) 1980 - Public service of digital networks (ISDN) 1984 - ARPANET became more commonly known as the Internet 2.3 The Internet: 1974 - Microcomputer revolution 1983 - Internet split into 2-parts: Milnet - devoted to military network Internet - devoted to the university research 1989 - Internet and CA*Net massed in great numbers - 200,000 servers combined 1990 - All networks around the world joined together as a worldwide network of networks

description

 

Transcript of Chapter 1

Page 1: Chapter 1

E5214 Data Communication

1 Sargunan Ainal (JKE)

1. What is Data Communications? Data Communications concerns the transmission of digital messages to devices external to the message source. "External" devices are generally thought of as being independently powered circuitry that exists beyond the chassis of a computer or other digital message source. As a rule, the maximum permissible transmission rate of a message is directly proportional to signal power, and inversely proportional to channel noise. It is the aim of any communications system to provide the highest possible transmission rate at the lowest possible power and with the least possible noise.

2. History 2.1 Telecommunications:

1837 - Samuel Morse exhibited a working telegraph system 1843 - The first telegraph lines were opened in between Paddington and Slough by the Great

Western Railway 1846 - Alexander Bain patented printing telegraph 1876 - Alexander Graham Bell invented the telephone 1895 - Guglielmo Marconi invented radio 1901 - First Trans-Atlantic signal 1926 - John Logi Baird gave the first demonstration of the television 1951 - First direct long distance dialing without an operator 1958 - The US launched its first communications satellite

It formed part of an early warning radar system First international satellite telephone call by 1962 1962 - Faxing service was introduced 1968 - AT&T and Bell Telephone Company had controlled the US-Telephone System 1983 - Introduction of cell phones 1984 - AT&T was split into 2-parts 1996 - Deregulation Act:

U.S. Congress enacted the Telecommunications Act Replaced all the current laws and FCC regulations

2.2 Data Communications:

1940 - Bell Laboratories began experimenting with a communications system using the COMPLEX computer. This was the forerunner of the teletypewriter

1947 - Transistor invented in Bell Labs 1950s - Computer systems used batch processing with discrete files 1954 - IBM Remote Job Entry (RJE); it allowed a terminal to forward records to a host computer

and receive reports back 1960 - AT&T Bell Labs 300 Baud Modem (MOdulator/DEModulator) 1960s - Data Communication across telephone lines became more commonplace 1969 - Internet started by the US DoD as a network of 4 computers known as ARPANET

(American Research Project Agency network) 1976 - Introduction of Packet-Switched service (X.25, Frame Relay, ATM, SMDS) 1980 - Public service of digital networks (ISDN) 1984 - ARPANET became more commonly known as the Internet

2.3 The Internet:

1974 - Microcomputer revolution 1983 - Internet split into 2-parts:

Milnet - devoted to military network Internet - devoted to the university research

1989 - Internet and CA*Net massed in great numbers - 200,000 servers combined 1990 - All networks around the world joined together as a worldwide network of networks

Page 2: Chapter 1

E5214 Data Communication

2 Sargunan Ainal (JKE)

1990s – Usage density grows rapidly Commercial networks began connecting to both NSFNET and CA*Net More than 60 percent of all U.S. PCs are networked (i.e. LANs)

1992 - More than 1 million servers on the Internet 1994 - Status of the Internet:

Almost 4 million servers on the Internet Commercialization of the Internet begins rapid growth

1995 - Commercialization continues at a rapid pace 6.5 million Hosts, 100,000 WWW Sites NSFNET reverts back to a research network. Main US backbone traffic now routed through interconnected network providers (TLA’s) www surpasses FTP data in March as the service with greatest traffic on NSFNET based on packet count, and in April based on byte count Traditional online dial-up systems (CompuServe, AOL & Prodigy) begin to provide Internet access A number of Net related companies go public, with Netscape leading the pack Registration of domain names is no longer free Technologies of the Year: WWW & Search engines (WAIS development) Microsoft enters the arena, Windows 95 essentially puts the Internet at millions of desktops The WWW browser war begin Microsoft Internet Explorer vs. Netscape Navigator) Software development cycles shorten due to the greater pool of beta users Software development cycles shorten due to the greater pool of beta users 12.8 million Hosts, 500,000 WWW Sites. Internet phones catch the attention of US telecommunication companies Clearly a case of anti-competitiveness from the Telecom industry

1997 - What Next? 19,5 million Hosts, 1 million WWW sites, 71,618 Newsgroups. International agreement signed by 68 countries to reduce regulation in TC markets Beginning with the telegraph in the 1840’s, Electronic Data Communications have greatly sped up the transmission rate of information Information that took days or weeks to transmit during the 1700’s could be transmitted in minutes or hours by the 1900’s Today, telecommunications networks transmit huge quantities of information in a fraction of a second.

3. Communication Codes 3.1 Morse Code Origin

Morse Code was invented by Samuel F. B. Morse (1791-1872), a painter and founder of the National Academy of Design. He conceived the basic idea of an electromagnetic telegraph in 1832, and produced the first working telegraph set in 1836. This made transmission possible over any distance. The first Morse Code message, "What hath God wrought?", was sent from Washington to Baltimore. Morse Code can be transmitted using sound or light, as sometimes happens between ships at sea. It is used in emergencies to transmit distress signals when no other form of communication is available. The standard international distress signal is •••---••• (SOS) Since December 2003, Morse Code has included the @ symbol: it is a combination of a and c: •--•-• and is the first change to the system since before World War II.

Page 3: Chapter 1

E5214 Data Communication

3 Sargunan Ainal (JKE)

Alphabet Code Alphabet Code Alphabet Code

A - Q -- - 9 ----

B - R - 0 -----

C - - S . - - -

D - T - , -- --

E U - ? --

F - V - / - -

G -- W -- : ---

H X - - ; - - -

I 1 --- ( - -- -

J --- 2 --- ) - --

K - - 3 -- ‘ ----

L - 4 - - - -

M -- 5 $ - -

N - 6 - ‘’ - -

O --- 7 -- Y - --

P -- 8 --- Z -- Table 1 : Morse code

3.2 EBCDIC (Extended Binary Coded Decimal Interchange Code) EBCDIC (Extended Binary Coded Decimal Interchange Code ) (pronounced either "ehb-suh-dik" or "ehb-kuh-dik") is a binary code for alphabetic and numeric characters that IBM developed for its larger operating systems. It is the code for text files that is used in IBM's OS/390 operating system for its S/390 servers and that thousands of corporations use for their legacy applications and databases. In an EBCDIC file, each alphabetic or numeric character is represented with an 8-bit binary number (a string of eight 0's or 1's). 256 possible characters (letters of the alphabet, numerals, and special characters) are defined.

Page 4: Chapter 1

E5214 Data Communication

4 Sargunan Ainal (JKE)

Table 2: EBCDIC

3.3 Baudot Code In the dawn of time (about 1875 A.D.), a Frenchman named Emile Baudot devised a way to connect two typing machines so that whatever was typed on one would be typed on the other automatically. The machines, some of which are still used today, are called teletypes. Teletype machines were used for data communications before computers were built, and were used as data terminals on computers until replaced by video display terminals (which have since been replaced by personal computers running programs which emulate teletype machines or video display terminals.) Baudot code has several limitations which make it less than ideal for modern use. The technology of the time imposed a 5 level (5 bit) limit to the code. This allows only 32 characters, normally not adequate for even the basic alphabet and digits. Baudot code extends the character set to 55 characters by using two codes, LTRS and FIGS, as shift controls. Each shift code determines the meaning of the codes which follow it. For example, the sequence 11111 00011 01010 00001 means "ARE", while the sequence 11011 00011 01010 00001 means "-43". There are no lower case letters in the Baudot code. There are only the 26 capitol letters, the 10 digits, three format control characters (space, LF, and CR), 15 punctuation marks, and an audible signal (Bell). There are actually several different versions of the Baudot code, with different meanings for the punctuation marks. Baudot code is typically transmitted using an asynchronous serial protocol. The least significant bit (LSB) is sent first, and the most significant bit (MSB) is sent last.

Bit 0123 Position Bit 4567 Position

Page 5: Chapter 1

E5214 Data Communication

5 Sargunan Ainal (JKE)

Table 3 : Baudot Code

3.4 ASCII Code ASCII is short for American Standard Code for Information Interchange, and is a 7 bit encoding of characters on computers. There are 128 values ranging from 0 to 127, of which 95 are printable characters and 33 are not visible but used for control characters. Carriage return (0xD16 in hexadecimal) and linefeed (0xA16 ) are two of the better known control characters.

Charater Data Bus

Page 6: Chapter 1

E5214 Data Communication

6 Sargunan Ainal (JKE)

Table 4: ASCII

4. Data Communication : Transmitting, Transmission Medium, Receiving There are three main component of data communication system. These are transmitter, receiver and transmission medium. The computer or device sending the data is called transmitter. The device or computer that receives the data is called receiver. The means through which data is sent from one location to another is called transmission medium. In electronic data communication, both the transmitter and the receivers are usually computers. A receiver can also be printer or a fax machine. The receiver and transmitter may be located within a building. In this case receiver and transmitter are connected by wire. If they are located at different locations, they may be connected through telephone lines, fiber optics or microwave. The coaxial cable, twisted pair cable, telephone lines, fiber optics and microwave acts as transmission medium. The rules according to which data is transmitted and received are called communication protocol. Different component of communication system such as receiver and transmitter must strictly follow these rules for successful transmission of data. First rule is ""how data is to be communicated"". How transmitter and receiver will communicate with each other and how transmitter knows that the receiver has received the data

Source A device that generates data to be transmitted; examples are telephones and computers. We will assume that we wish to transmit digital data (consisting of 0s and 1s) for the majority of this paper.

Transmitter A device that encodes the data to be transmitted in such a way as to create electromagnetic signals that can be transmitted across some kind of transmission system. Transmission System: The physical medium that carries the signals produced by the transmitter. This can be a single wire connecting two telephones or a vast network connecting thousands of computers.

Page 7: Chapter 1

E5214 Data Communication

7 Sargunan Ainal (JKE)

Receiver A device that accepts a signal from the transmission system and converts it into a usable form for the destination device.

Destination Accepts the incoming data from the receiver. The destination device can be a telephone, a computer, a network switch, etc. The device usually processes the data in some way so that it is usable by a human user or a program running on the device.

The communications model defines the transmission system as the data carrier between source and destination. We will examine the structure and function of the transmission system in this paper. There are two physical ways to carry data: guided transmission media or unguided transmission media. Guided transmission occurs over solid wave carrying materials (wire or fiber optic cable). Unguided transmission (TV/radio, space communication) broadcasts signals into air or space and allows them to propagate to the receiver. Each of these will be discussed in greater depth later. We first examine the terminology of electromagnetic waves and then two specific cases of data transmission. After a general discussion of the transmission system we will discuss a specific example of how transmitter and receiver work in a system used in modern computer networks.

5. DTE and DCE The terms DTE and DCE are very common in the data communications market. DTE is short for Data Terminal Equipment and DCE stands for Data Communications Equipment. But what do they really mean? As the full DTE name indicates this is a piece of device that ends a communication line, whereas the DCE provides a path for communication. Let's say we have a computer on which wants to communicate with the Internet through a modem and a dial-up connection. To get to the Internet you tell your modem to dial the number of your provider. After your modems has dialed the number, the modem of the provider will answer your call and your will hear a lot of noise. Then it becomes quiet and you see your login prompt or your dialing program tells you the connection is established. Now you have a connection with the server from your provider and you can wander the Internet. In this example you PC is a Data Terminal (DTE). The two modems (yours and that one of your provider) are DCEs, they make the communication between you and your provider possible. But now we have to look at the server of your provider. Is that a DTE or DCE? The answer is a DTE. It ends the communication line between you and the server. Although it gives you the possibility to surf around the glode. The reason why it is a DTE is that when you want to go from your provides server to another place it uses another interface. So DTE and DCE are interface dependend. It is e.g. possible that for your connection to the server, the server is a DTE, but that that same server is a DCE for the equipment that it is attached to on the rest of the Net.

Fig 1 : DTE & DCE

Page 8: Chapter 1

E5214 Data Communication

8 Sargunan Ainal (JKE)

6. Transmission 6.1 Simplex Data flows in only one direction on the data communication line (medium). Examples are Radio and Television broadcasts. They go from the TV station to your home television.

Fig 3 : Simplex transmission

Fig 2 : DTE and DCE configaration

Page 9: Chapter 1

E5214 Data Communication

9 Sargunan Ainal (JKE)

6.2 Half-Duplex Data flows in both directions but only one direction at a time on the data communication line. Ex. Conversation on walkie-talkies is a half-duplex data flow. Each person takes turns talking. If both talk at once - nothing occurs! Bi-directional but only 1 direction at time!

Fig 4 : Half Duplex transmission 6.3 Full-Duplex Data flows in both directions simultaneously. Modems are configured to flow data in both directions. Bi-directional both directions simultaneously!

Fig 5 : Full Duplex transmission 6.4 Serial and parallel transmission The transmission mode refers to the number of elementary units of information (bits) that can be simultaneously translated by the communications channel. In fact, processors (and therefore computers in general) never process (in the case of recent processors) a single bit at a time; generally they are able to process several (most of the time it is 8: one byte), and for this reason the basic connections on a computer are parallel connections. 6.4.1 Parallel connection Parallel connection means simultaneous transmission of N bits. These bits are sent simultaneously over N different channels (a channel being, for example, a wire, a cable or any other physical medium). The parallel connection on PC-type computers generally requires 10 wires.

Page 10: Chapter 1

E5214 Data Communication

10 Sargunan Ainal (JKE)

Fig 6 : Parallel connection 6.4.2 Serial connection In a serial connection, the data are sent one bit at a time over the transmission channel. However, since most processors process data in parallel, the transmitter needs to transform incoming parallel data into serial data and the receiver needs to do the opposite.

Fig 7 : Serial connection These operations are performed by a communications controller (normally a UART (Universal Asynchronous Receiver Transmitter) chip). The communications controller works in the following manner: The parallel-serial transformation is performed using a shift register. The shift register, working together with a clock, will shift the register (containing all of the data presented in parallel) by one position to the left, and then transmit the most significant bit (the leftmost one) and so on: The serial-parallel transformation is done in almost the same way using a shift register. The shift register shifts the register by one position to the left each time a bit is received, and then transmits the entire register in parallel when it is full:

(a) Parallel input, serial output (b) Serial input, parallel outpu

Fig 8 : Serial - Parallel connection

Page 11: Chapter 1

E5214 Data Communication

11 Sargunan Ainal (JKE)

7. Synchronous and asynchronous transmission Given the problems that arise with a parallel-type connection, serial connections are normally used. However, since a single wire transports the information, the problem is how to synchronise the transmitter and receiver, in other words, the receiver can not necessarily distinguish the characters (or more generally the bit sequences) because the bits are sent one after the other. There are two types of transmission that address this problem: An asynchronous connection, in which each character is sent at irregular intervals in time (for example a user sending characters entered at the keyboard in real time). So, for example, imagine that a single bit is transmitted during a long period of silence... the receiver will not be able to know if this is 00010000, 10000000 or 00000100... To remedy this problem, each character is preceded by some information indicating the start of character transmission (the transmission start information is called a START bit) and ends by sending end-of-transmission information (called STOP bit, there may even be several STOP bits). In a synchronous connection, the transmitter and receiver are paced by the same clock. The receiver continuously receives (even when no bits are transmitted) the information at the same rate the transmitter send it. This is why the transmitter and receiver are paced at the same speed. In addition, supplementary information is inserted to guarantee that there are no errors during transmission. During synchronous transmission, the bits are sent successively with no separation between each character, so it is necessary to insert synchronisation elements; this is called character-level synchronisation. The main disadvantage of synchronous transmission is recognising the data at the receiver, as there may be differences between the transmitter and receiver clocks. That is why each data transmission must be sustained long enough for the receiver to distinguish it. As a result, the transmission speed can not be very high in a synchronous link. 7.1 Timing Signal timing is a repetitive signal is used to control the timing of operations. Bit timing is the time for a bit if it bit '0 'or '1'. Slot time is any time that can be repeatedly identified and defined uniquely.

Fig 9 : Timing Importance of Timing Sender and receiver must have the same bit of timing, so the bit sampling can be made closer to the midpoint of the period of a bit received, to determine the level of bits, either 0 or 1, with the right.

Error due to sampling process, normally occur at receiver. It cause by differential in timing at Tx and Rx.

Page 12: Chapter 1

E5214 Data Communication

12 Sargunan Ainal (JKE)

Some bits (= 1 byte) will decoded of data flow, to determine which characters are represented by the byte. Decoding must be done as accurately as possible, starting from the first bit to last bit of the bit. Therefore, the receiver must know the timing word (byte) for a character who decoded 7.2 Framing Circumstances in which additional bits sent with the actual data. These additional bits may represent the station codes, error detection, control start bit and bit the end, or sync characters, either in front or behind the data, or both. All this will create a character, or a block of characters completely, which is sent in each shipment.

H= Header D = Data or P = Payload T= Trailer

Fig 10 : Framing data Header

Codes consist of the station, start bit, character SYN, STX and DLE. The header helps the recipient to know the data is for him or not. Each station will check the data arrived, and took data addressed to him.

SYN = character synchronization DLE STX = first rule text DLE ETX = text of the final rule FCS = frame detection rules Trailer

Consists of the final bit, character ETX, DLE and error detection (Frame Check Sequence, FCS), which covers the FCS error detection and correction.

Frame check sequence (FCS)

The frame check sequence is the product of an error-detecting code, normally inserted as the final field in a block of transmitted data, that can be used upon reception of the data to detect errors.

8. Error Detection and Correction 8.1. Types of Errors Whenever bits flow from one point to another, they are subject to unpredictable changes because of interference. This interference can change the shape of the signal. In a single-bit error, a 0 is changed to a 1 or a 1 to a 0. The term single-bit error means that only 1 bit of a given data unit (such as a byte, character, or packet) is changed from 1 to 0 or from 0 to 1. The term burst error means that 2 or more bits in the data unit have changed from 1 to 0 or from 0 to 1. 2. 8.2 Redundancy The central concept in detecting or correcting errors is redundancy. To be able to detect or correct errors, we need to send some extra bits with our data. These redundant bits are added by the sender and removed by the receiver. Their presence allows the receiver to detect or correct corrupted bits. The concept of including extra information in the transmission for error detection is a good one. But instead of repeating the entire data stream, a shorter group of bits may be appended to the end of each unit. This technique is called redundancy because the extra bits are redundant to the information: they are discarded as soon as the accuracy of the transmission has been determined. Figure 11 shows the

Page 13: Chapter 1

E5214 Data Communication

13 Sargunan Ainal (JKE)

process of using redundant bits to check the accuracy of a data unit. Once the data stream has been generated, it passes through a device that analyses it and adds on an appropriately coded redundancy check. The data unit, now enlarged by several hits, travels over the link to the receiver. The receiver puts the entire stream through a checking function. If the received hit stream passes the checking criteria, the data portion of the data unit is accepted and the redundant bits are discarded.

Fig 11 Three types of redundancy checks are common in data communications: parity check, cyclic redundancy check (CRC) and checksum (see Fig. 12).

Fig 12 : Detection Method

10100000000101010

OK

10100000000101010 1011101

Data

Yes

No

Reject data

Data & Redundancy

Receiver Node

10100000000101010

10100000000101010 1011101

Data

Yes

Data & Redundancy

Sender Node

Transmission Medium

Detection Method

Cyclic redundancy check

Checksum Parity Check

Page 14: Chapter 1

E5214 Data Communication

14 Sargunan Ainal (JKE)

8.2.1 Simple Parity Check In this technique, a redundant bit called a parity bit is added to every data unit so that the total number of 1’s in the unit (including the parity bit) becomes even (or odd). Figure (13) shows this concept when transmit the binary data unit 1100001.

Fig 13

1100001

1

Data (7 bits)

Sender Node

Transmission Medium

Count b its

Bits

Drop parity bit & accept data

Yes

No

Reject data

Receiver Node

Calculate parity bit

1100001

Even?

Page 15: Chapter 1

E5214 Data Communication

15 Sargunan Ainal (JKE)

Example 1 Suppose the sender wants to send the word world. In ASCII, the 5 characters are coded as

1110111 1101111 1110010 1101100 1100100 w o r l d Each of the first four character has an even number of 1s, so the parity bit a 0. The last character (d), however, has three 1s (an odd number), so the parity bit is a 1 to make the total number of 1s even. The following shows the actual bits sent (the parity bits are underlined)

11101110 11011110 11100100 11011000 11001001 Eample 2 Now suppose the word world in Example 1 is received by the receiver without being corrupted in transmission.

11101110 11011110 11100100 11011000 11001001 The receiver counts the 1s in each character and comes up with even numbers (6,6,4,4,4). The data are accepted. Example 3 Now suppose the word world in Example 1 is corrupted during transmission

11111110 11011110 11101100 11011000 11001001 The receiver counts the 1s in each character and comes up with even and odd numbers (7,6,5,4,4). The receiver knows that the data are accepted, discards them, and asks for retransmission. Performance Simple parity check can detect all single-bit errors. It can also detect burst errors as long as the total number of bits changed is odd. This method cannot detect errors where the total number of hits changed is even. If any two bits change in transmission, the changes cancel each other and the data unit will pass a parity check even though the data unit is damaged. The same holds true fur any even lumber of errors. 8.2.3 Cyclic Redundancy Check (CRC) The third and most powerful of the redundancy checking techniques is the cyclic redundancy check (CRC). Unlike the parity check which is based on addition. CRC is based on binary division. In CRC, instead of adding bits to achieve a desired parity, a sequence of redundant bits, called the CRC or the CRC remainder, is appended to the end of a data unit so that the resulting data unit becomes exactly divisible by a second, predetermined binary number. At its destination, the incoming data unit is divided by the same number. If at this step there is no remainder the data unit is assumed to be intact and is therefore accepted. A remainder indicates that the data unit has been damaged in transit and therefore must be rejected. The redundancy bits used by CRC are derived by dividing the data unit by a predetermined divisor; the remainder is the CRC. To be valid, a CRC must have two qualities: It must have exactly one less bit than the divisor, and appending it to the end of the data string must make the resulting bit sequence exactly divisible by the divisor. Both the theory and the application of CRC error detection are straightforward. start with an overview and add complexity as we go.

Page 16: Chapter 1

E5214 Data Communication

16 Sargunan Ainal (JKE)

Fig 14 First, a string of n 0’s is appended to the data unit. The number n is 1 less if-number of bits in the predetermined divisor which is n + 1 bits. Second, the newly elongated data unit is divided by the divisor, using a p called binary division. The remainder resulting from this division is the CRC. Third, the CRC of n bits derived in step 2 replaces the appended 0’s at the data unit. Note that the CRC may consist of all 0’s. The data unit arrives at the receiver data first, followed by the CRC. The receiver treats the whole siring as a unit and divides it by the same divisor that was used the CRC remainder. If the siring arrives without error, the CRC checker yields a remainder of zero, the data unit passes. If the string has been changed in transit, the division yields zero remainder and the data unit does not pass. Figure 15 shows how we generate CRC A CRC checker functions exactly as the generator does. After receiving the data appended with the CRC, it does the same modulo-2 division. If the remainder is all 0’s, the CRC is dropped and the data are accepted: otherwise, the received stream of bits is discarded and data are resent. Figure 16 shows the same process of division in the receiver. We assume that there is no error The remainder is therefore all 0’s, and the data are accepted. 1 1 1 1 0 1 1101 1 0 0 1 0 0 0 0 1 1 1 0 1 1 0 0 0 1 1 0 1 1 0 1 0 1 1 0 1 1 1 1 0 1 1 0 1 0 1 1 0 0 0 0 0 1 1 0 1 1 1 0 1 0 0 0

Fig 15

Data CRC

Divisor

Reminder

0 accept, non-zero reject

Receiver Sender

Data 00…0

Divisor

CRC

n bits

n+1 bits

Reminder

n bits

Data CRC

Divisor Data plus CRC received

Whan the leftmost bit of the reminder is 0, use 0000 istead

of the original divisor Result

Page 17: Chapter 1

E5214 Data Communication

17 Sargunan Ainal (JKE)

1 1 1 1 0 1 1101 1 0 0 1 0 0 0 0 0 1 1 0 1 1 0 0 0 1 1 0 1 1 0 1 0 1 1 0 1 1 1 1 0 1 1 0 1 0 1 1 0 0 0 0 0 1 1 0 0 1 1 0 1 0 0 1

Fig .16 The divisor in the CRC generator is most often represented not as a string of 1’s and 0’s, but as an algebraic polynomial (see Fig. 17). The polynomial format is useful for two reasons: It is short, and it can be used to prove the concept mathematically. The relationship of a polynomial to its corresponding binary representation is shown in Figure 18.

Fig.17 Fig.18

Performance of CRC CRC is a very effective error detection method. If the divisor is chosen according to the previously mentioned rules,

1.CRC can detect all burst errors that affect an odd number of bits. 2.CRC can detect all burst errors of length less than or equal to the degree of the polynomial 3.CRC can detect, with a very high probability, burst errors of length greater than the degree of the polynomial.

Whan the leftmost bit of the reminder is 0, use 0000 istead

of the original divisor Reminder

Data plus extra 0 (bold)

1 0 1 0 0 1 1 1

x6

Polynomial

Divisor

x7 + x

5 + x

2 + x + 1

x4 x

3