Multiplexing, Traffic Engineering, Error Detection & Correction

Slides:



Advertisements
Similar presentations
Noise, Information Theory, and Entropy (cont.) CS414 – Spring 2007 By Karrie Karahalios, Roger Cheng, Brian Bailey.
Advertisements

Cyclic Code.
Computer Networking Error Control Coding
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Introduction to Information Technologies
1 Wireless Sensor Networks Akyildiz/Vuran Administration Issues  Take home Mid-term Exam  Assign April 2, Due April 7  Individual work is required 
CSE 461: Error Detection and Correction. Next Topic  Error detection and correction  Focus: How do we detect and correct messages that are garbled during.
Chapter 6 Errors, Error Detection, and Error Control.
Data Link Layer – Part 1 V.T.Raja Oregon State University.
CSCI 4550/8556 Computer Networks Comer, Chapter 7: Packets, Frames, And Error Detection.
Chapter Six Errors, Error Detection, and Error Control Data Communications and Computer Networks: A Business User’s Approach Sixth Edition.
1 Chapter Six - Errors, Error Detection, and Error Control Chapter Six.
PART III DATA LINK LAYER. Position of the Data-Link Layer.
The Data Link Layer Chapter 3. Position of the data-link layer.
Long distance communication Multiplexing  Allow multiple signals to travel through one medium  Types Frequency division multiplexing Synchronous time.
CSIS 6251 CSIS 625 Week 4 Statistical TDM, Traffic Engineering, Error Detection & Correction Data Link Layer Copyright Dan Oelke For use by students.
Chapter 6: Errors, Error Detection, and Error Control
Data Communications Chapter 7 Error Detection. Despite the best prevention techniques, errors may still happen. To detect an error, something extra has.
William Stallings Data and Computer Communications 7 th Edition (Selected slides used for lectures at Bina Nusantara University) Error Control.
Chapter 6 Errors, Error Detection, and Error Control
Error Detection and Correction
Adapted from Tanenbaum's Slides for Computer Networking, 4e The Data Link Layer Chapter 3.
Rutvi Shah1 ERROR CORRECTION & ERROR DETECTION Rutvi Shah2 Data can be corrupted during transmission. For reliable communication, errors must be detected.
Data link layer: services
Lecture 10: Error Control Coding I Chapter 8 – Coding and Error Control From: Wireless Communications and Networks by William Stallings, Prentice Hall,
CS3502: Data and Computer Networks DATA LINK LAYER - 1.
1 Data Link Layer Lecture 20 Imran Ahmed University of Management & Technology.
PART III DATA LINK LAYER. Position of the Data-Link Layer.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Data Link Layer PART III.
CIT 307 Online Data Communications Error Detection Module 11 Kevin Siminski, Instructor.
Error Coding Transmission process may introduce errors into a message.  Single bit errors versus burst errors Detection:  Requires a convention that.
Data and Computer Communications
Part 2: Packet Transmission Packets, frames Local area networks (LANs) Wide area networks (LANs) Hardware addresses Bridges and switches Routing and protocols.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
جلسه هشتم شبکه های کامپیوتری به نــــــــــــام خدا.
Data Link Layer: Error Detection and Correction
Data and Computer Communications by William Stallings Eighth Edition Digital Data Communications Techniques Digital Data Communications Techniques Click.
Unit 5 Lecture 2 Error Control Error Detection & Error Correction.
Chapter Six Errors, Error Detection, and Error Control Data Communications and Computer Networks: A Business User’s Approach Eighth Edition.
EEC4113 Data Communication & Multimedia System Chapter 5: Error Control by Muhazam Mustapha, October 2011.
AS Computing Data Transmission and Networks. Transmission error Detecting errors in data transmission is very important for data integrity. There are.
CS3505: DATA LINK LAYER. data link layer  phys. layer subject to errors; not reliable; and only moves information as bits, which alone are not meaningful.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Data Link Layer PART III.
1 Chapter Six - Errors, Error Detection, and Error Control Chapter Six.
Error Detection and Correction
Data Communications & Computer Networks, Second Edition1 Chapter 6 Errors, Error Detection, and Error Control.
David Wetherall Professor of Computer Science & Engineering Introduction to Computer Networks Error Detection (§3.2.2)
Overview All data can be corrupted, for reliable communications we must be able to detect and correct errors implemented at the data link and transport.
Copyright ©2011 Cengage Learning. All rights reserved. May not be scanned, copied or duplicated, or posted to a publicly accessible web site, in whole.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Winter 2007CS244a Handout 141 CS244a: An Introduction to Computer Networks Handout 14: Error Detection and Correction Nick McKeown Professor of Electrical.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Data Link Layer PART III.
Hamming Distance & Hamming Code
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
ERROR DETECTION AND CORRECTION Chapter 8 Data Communications & Networking ERROR DETECTION AND CORRECTION Chapter 8 First Semester 2007/2008.
Simple Parity Check The simplest form of error detection is the parity check used with ASCII codes, originally on asynchronous modem links Each 7 bit ASCII.
Introduction to Information Technologies
ERROR DETECTION AND CORRECTION
DATA COMMUNICATION AND NETWORKINGS
Advanced Computer Networks
Data Link Layer.
Error Detection Bit Error Rate(BER): It is the ratio of number Ne of errors appearing over a certain time interval t to the number Nt of 1 and 0 pulses.
EEC4113 Data Communication & Multimedia System Chapter 5: Error Control by Muhazam Mustapha, August 2010.
Chapter 7 Error Detection and Correction
Introduction to Information Technologies
Packets, Frames, Parity, Checksums, and CRCs
COMPUTER NETWORKS CS610 Lecture-5 Hammad Khalid Khan.
Error Detection and Correction
Types of Errors Data transmission suffers unpredictable changes because of interference The interference can change the shape of the signal Single-bit.
Presentation transcript:

Multiplexing, Traffic Engineering, Error Detection & Correction CSIS 625 Week 5 Multiplexing, Traffic Engineering, Error Detection & Correction Copyright 2001, 2002 - Dan Oelke For use by students of CSIS 625 for purposes of this class only. CSIS 625

Overview Multiplexing Error Detection Forward Error Correction Statistical Time multiplexing Traffic Engineering a type of statistical multiplexing Error Detection Checksum, Parity, CRC Bit Error Rate (BER) Forward Error Correction Hamming Distance, Hamming Codes Reed-Solomon Codes CSIS 625

Statistical Time Division Multiplexing With Synchronous TDM, if an input has nothing to send, that timeslot is wasted. With Statistical TDM you are betting that at any given time only some of the inputs want to send data The sum of the input bit rates to the MUX may exceed the output bit rate of the MUX If you are “unlucky” some data may be delayed or discarded by the MUX CSIS 625

Statistical TDM Delaying data because others are using the line requires additional buffers at the MUX A burst of high speed data at the DEMUX may require the DEMUX to buffer data until the lower speed output can accept it Timeslots can be borrowed Some inputs can have priority over others Some systems have variable length timeslots CSIS 625

Statistical TDM Additional framing overhead required Just knowing the timeslots is not enough Each packet of data in a statistical TDM system must have overhead labeling its source or destination It is best to have relatively large timeslots to minimize overhead relative to data carried Almost all data systems today use statistical TDM at some point. CSIS 625

Traffic Engineering In telephony networks, not all phones are in use at the same time, so trunks between central offices are over-subscribed This is a form of statistical TDM Agner Krarup Erlang (1878-1929) developed equations on how the blocking probability relates to the amount of traffic and number of lines. CSIS 625

Traffic Engineering Definitions Trunk - a communication line between two switching systems Poisson Distribution - A mathematical formula that defines the probability of x events occurring in a certain time Busy Hour - The one hour during the day or year that has the most traffic CCS - Centum Call Seconds - amount of traffic offered on a line. 60 * 60 = 3600 seconds or 36 CCS CSIS 625

Traffic Engineering Amount of traffic offered can be calculated from the average number of calls and average length. For example: 2 calls / hour * 3 minutes / call = 2 * 180 = 360 call seconds = 3.6 CCS If one phone offers 3.6CCS, then 100 phones offer 360 CCS Often Erlangs are used in describe the amount of traffic offered. 36 CCS = 1 Erlang CSIS 625

Different Traffic Engineering models Poisson distribution - simplest Assumes that blocked calls are held. Infinite number of sources Erlang B Assumes that blocked calls never return Used originally for blocked calls that went to higher cost lines. Extended Erlang B Has a retry probability CSIS 625

Different Traffic Engineering models Erlang C Assumes that blocked calls are delayed Infinite number of sources Used for Call Center applications “Trunks” are service people There are models for Finite number of sources, but they are used much less often. Even if they should be used - people don’t Equations given are nice, but either look up tables, or calculators are really used. CSIS 625

Poisson Distribution Poisson assumes that blocked calls wait forever. This will tend to over estimate the number of trunks needed Equation for Poisson N = Number of events to occur in a unit time (Number of trunks) A = Average number of events occuring per unit time (Traffic in Erlangs) CSIS 625

Erlang B Erlang B assumes that blocked calls never retry This will tend to under estimate the number of trunks needed Equation for Erlang B N = Number of trunks A = Traffic offered in Erlangs CSIS 625

Traffic Engineering example problem Given 100 homes, with average 1.5 phones / home First line of a home has 3.6CCS Second line of a home has 30CCS 50% of blocked calls retry immediately Calculate number of trunks to serve these homes with a blocking probability of 0.02 100 * 3.6 CCS = 360CCS 50 * 30 CCS = 1500CCS 360 CCS + 1500 CCS = 51.67 Erlangs From Extended Erlang B calculator - 63 trunks CSIS 625

Traffic Engineering Web pages http://www.erlang.com/calculator/ http://www.iinet.net.au/~clark CSIS 625

Error Detection Errors always occur during transmission Bit Error - an error that changes only one bit Burst Error - an error that changes several adjacent bits. Coding Violations - When the line coding mechanism tells us of an error. Need to use something like Bipolar-AMI, 8b10b, etc. CSIS 625

Error Detection - Parity Bits Parity Bit - an extra bit of data sent with every data packet. Even Parity - The extra bit is set so that the number of bits is always even Odd Parity - The extra bit is set so that the number of bits is always odd Receiver checks parity and discards data if parity is not valid Regular parity is also known as Vertical Redundancy Check Parity is sometimes mis-used as any redundant bit CSIS 625

Error Detection - BIP BIP-8 - Bit Interleaved Parity - 8 bits BIP is also known as Longitudinal Redundancy Check Takes bytes and calculates a parity bit for each bit position Diagram of BIP: Provides better 1 Byte 1: Byte 2: Byte 3: Byte 4: Byte 5: BIP-8: detection for burst errors CSIS 625

Error Detection - Checksum Checksum - a byte added to the end of the frame to catch errors Simplest form is calculated by adding up all the bytes in the frame There are several algorithms - so check specifics on any one algorithm BIP-8 is sometimes called a checksum CSIS 625

Error Detection - CRC CRC - Cyclic Redundancy Check Catches many errors that Parity or BIP-8 will miss. Adds bits to the end of a frame so that it can be evenly divided by a number Usually 8, 16, or 32-bit CRC Easy to implement in hardware with shift register and feedback xor’s. See book for examples CSIS 625

CRC - Strength All bursts of errors  r (r = length of CRC) All odd number of errors Probability of missing error if burst is r+1 => 0.5r-1 (0.532-1 = 4.6E-10) if burst is  r+1 => 0.5r (0.532 = 2.3E-10) CRC’s are considered quite strong See also: http://www.ross.net/crc/ CSIS 625

Error Rates - BER BER - Bit Error Rate - the probability of a bit being changed Used to describe transmission lines All transmission lines have some non-zero BER Calculate by counting the number of errors and dividing by the number of bits Need to adjust for errors that occur but are not detected For example - an odd number of errors when using parity CSIS 625

Error Rates - BER Normal practice is to measure 10 times the period to report a BER This means that to state the line has a 1E-10 error rate (or better) you must measure 1E+11 bits A T1 would require 18 hours to have 1E+11 bits go through. Voice sounds ok at BER of 1E-5 Still intelligible at 1E-3 Data doesn’t work very well below 1E-7 CSIS 625

FEC - Forward Error Correction FEC – A method by which errors in received data can be corrected without requiring retransmission Sometimes it is advantageous to correct an error instead of just detecting it. May take too long for retransmission to occur Real-time Data may not be able to wait for the round trip time May not be possible to ask for retransmission One way transmissions – Satellite, Broadcast data, etc. CSIS 625

FEC – Forward Error Correction Brute force method: Send data repeatedly To correct n errors, send data 2n+1 times Not very efficient - there are better ways. Hamming codes or Reed-Solomon codes do it much more efficiently CSIS 625

Hamming Distance Hamming distance - the number of bits that have to be changed to go from one valid code to another. To detect d errors -Hamming distance of d+1 parity gives a Hamming distance of 2, so it detects up to one bit error To correct d errors - Hamming distance of 2d+1 Need to be able to distinguish “closest” valid code CSIS 625

Hamming Code A symbol is a block of bits to be transmitted from source to destination. Hamming Code - an error correcting code to correct 1 bit error in a symbol For 4 data bits, 3 redundancy bits needed For 8 data bits, 5 redundancy bits needed Hamming Codes may also be used to detect up to 2 bit errors in the code word. CSIS 625

Hamming Code Rule for Hamming Codes: Codes often notated as (c,d) (d + p + 1)  2P d = message bits (data) p = redundant bits (parity Codes often notated as (c,d) c = code size or d + p Therefore a (12,8) code has 8 data bits and 4 parity bits. A 50% overhead. (12 + 1) < 24 CSIS 625

Hamming Codes To handle burst errors, multiple codes can be interleaved. Errors normally occur in bursts. Hamming code can handle only one bit error in the code word. Solution is to spread out the bits so that more than one won’t be hit by a burst of errors. CSIS 625

Perfect Code Perfect code – an error correcting code where all possible codes are within hamming distance of a symbol. No “wasted” space in the code. Most efficient code that is possible for that symbol size, and code size. For Hamming codes a perfect code is when there is equality in the Hamming Code equation above (7,4) code is an example – m = 4, r = 3 (4 + 3 + 1) = 23 CSIS 625

Reed-Solomon codes Another error correcting code Designed to have redundant symbols Allows for whole symbols to be errored It handles bursts of errors Common applications CD Players, Spacecraft communication DSL lines CSIS 625

Reed Solomon Codes Notation - RS(NN,KK) MM - the code symbol size in bits NN - the block size in symbols (2**MM - 1) KK - the number of data symbols per block KK < NN Can correct (NN-KK)/2 errors per block If known that there are missing symbols, then RS can correct NN-KK “erasures” CSIS 625

Common Reed Solomon Codes RS (255,223) Sends 255 8 bit characters, 223 of them are data and 32 are parity Can correct 16 errors or 32 erasures RS(204,188) - Used in Digital Video Sends 204 8 bit characters, 188 of them are data and 16 are parity Can correct 8 symbol errors Can be done on other than 8-bit characters CSIS 625

More on FEC FEC is often used to improve the BER of lines. Can be more cost effective than boosting the power sent over the line Retransmission at higher levels may not be practical Error Correcting web pages http://www.piclist.com/techref/method/errors.htm http://people.qualcomm.com/karn/code/fec/ http://www.engelschall.com/u/sb/hamming/ CSIS 625