eec-484/584 computer networks
Post on 16-Mar-2016
35 Views
Preview:
DESCRIPTION
TRANSCRIPT
-
EEC-484/584Computer NetworksLecture 7
Wenbing Zhao
wenbing@ieee.org(Part of the slides are based on Drs. Kurose & Rosss slides for their Computer Networking book, and on materials supplied by Dr. Louise Moser at UCSB and Prentice-Hall)
EEC-484/584: Computer Networks
*
OutlineQuiz 1 resultData Link layerData Link Layer Design IssuesFramingError Detection and CorrectionIS&T Tour ScheduledDecember 6 (Wednesday) 2-3pm (MW session)December 7 (Thursday) 4-5pm (TTh session)
EEC-484/584: Computer Networks
*
EEC484 Quiz1 ResultHigh 89; Low 65; Average 80Average of Q1 25, Q2 27, Q3 18, Q4 - 11
EEC-484/584: Computer Networks
Chart1
1
2
4
Grade Range
Number of Students
classroster_EEC_484_51
Title
Fall 06 - Class Nbr: 5125
Instructor
Wenbing Zhao
ClassDescrSectionSession
EEC484Computer Networks511
CSUIDLast NameFirst NameStatusPhoneEmail
First sessesion studentsLecture 3Lecture 4Lecture 5Lab1
2222324CriderHasaniEnrolled216/662-9549h.a.crider@csuohio.edu111
2339416RachedWaelEnrolled440/463-8696w.rached@csuohio.edu1111
second session students
2257129RichardReedEnrolled4408866522r.a.reed50@csuohio.edu111
2292249FiskeRobertEnrolled440/734-4955r.fiske@csuohio.edu1111
2313661MatthewSlagleEnrolled330/723-6561m.l.slagle@csuohio.edu1111
2370723DavidDresslerEnrolled216/521-7577d.dressler@csuohio.edu1111
2392069DavidBojackEnrolled440/884-4650d.bojack@csuohio.edu1111
Quiz 1Q1Q2Q3Q4Total
RichardReed282620108460-691
FiskeRobert24261056570-792
MatthewSlagle28301758080-894
DavidDressler2628201589
DavidBojack2426201989
CriderHasani2228171077
RachedWael2022191576
24.626.617.611.380
classroster_EEC_484_51
Grade Range
Number of Students
*
EEC584 Quiz1 Result(MW Session)High 88, low 68, average 77Average of Q1 24, Q2 24, Q3 19, Q4 - 11
EEC-484/584: Computer Networks
Chart1
2
6
6
Grade Range
Number of Students
classroster_EEC_584_51
Title
Fall 06 - Class Nbr: 5131
Instructor
Wenbing Zhao
ClassDescrSectionSession
EEC584Computer Networks511
CSUIDLast NameFirst NameStatusPhoneEmail
2016451KassemSoufan216/351-7377k.soufan@csuohio.edu
2274861MrunalParikh440/888-1375m.r.parikh@csuohio.edu
2416269SreedeviGatiganti216/802-0042s.gatiganti@csuohio.edu
2418299SujanaSiruvolu614/843-7546s.siruvolu@csuohio.edu
2426371NiranjanKodati216/861-0516n.kodati@csuohio.edu
(withdraw) 2428739Vinay KumarChitla216/334-6741v.chitla@csuohio.edu
2429059HardikBhavsar216/583-0785h.bhavsar@csuohio.edu
2431658MalavShah216/696-5028m.p.shah99@csuohio.edu
2438958Vikas ReddyRamalingam216/357-9489v.ramalingam@csuohio.edu
2443159MaulikkumarGajjar(792) 323-1968m.gajjar@csuohio.edu
2444940Vamsi KrishnaNagalla216/543-7876v.nagalla@csuohio.edu
2445263DhanashreeBora216/861-5264d.bora@csuohio.edu
2445934AnuroopKatta732/822-8696a.katta@csuohio.edu
2446009RavinderBellam216/861-0516r.bellam@csuohio.edu
2446290UchitShah216/394-8777u.r.shah@csuohio.edu
2447451KetanPatel216/357-2534k.m.patel99@csuohio.edu
2448923Venkata DineshManne(944) 035-0257v.manne@csuohio.edu
2454215TirupathiMangalarapu(402) 355-1896t.mangalarapu@csuohio.edu
2460747SritambariThakur216/338-2515s.thakur100@csuohio.edu
2449105RajamaniBhadriraju216/269-4536r.bhadriraju@csuohio.edu
2451943SalamehElieEnrolled440/617-0736e.salameh@csuohio.edu
Session #2 students
2403255SandeepChittoor Krishna Reddy216/392-2857s.chittoorkrishnared@csuohio.edu
2415675MADHUKAR REDDYTHUMMA216/694-0099m.thumma@csuohio.edu
2423983HongleiZhangNo Phoneh.zhang105@csuohio.edu
2435899IshaVedire216/696-5862i.vedire@csuohio.edu
2446092Sai KiranEde(402) 409-0355s.ede@csuohio.edu
2446506ShoebKhaja216/589-0186s.khaja1@csuohio.edu
2446699Vinay DeepAyinapurapu(891) 556-4063v.ayinapurapu@csuohio.edu
2446886SongCui(334) 760-0660s.cui99@csuohio.edu
2447079SuryaAllena978/996-3907s.k.allena@csuohio.edu
2447546Anil ReddyImmadi404/518-1310a.immadi@csuohio.edu
2448086BoChenb.chen100@csuohio.edu
2448605AngaiSalankar404/323-8983a.salankar@csuohio.edu
2451221PavanKambhatla440/319-5590p.kambhatla@csuohio.edu
Attendance (session 1)+A77HomeworkLecture 3Lecture 4Lecture 5Lab1Lecture 6Lab2
2445934KattaAnuroop111111
2445263BoraDhanashree111family emergency10
2429059BhavsarHardik111111
2016451SoufanKassem111111
2447451PatelKetan111111
2431658ShahMalav111111
2443159GajjarMaulikkumar111111
2274861ParikhMrunal111111
2426371KodatiNiranjan111111
2449105BhadrirajuRajamani111111
2446009BellamRavinder111111
2416269GatigantiSreedevi111111
2460747ThakurSritambari11111
2418299SiruvoluSujana111111
2446290ShahUchit111111
2444940NagallaVamsi Krishna111111
2448923ManneVenkata Dinesh111111
2438958RamalingamVikas Reddy111111
(late registeration 2wks)2451943SalamehElie111
Attendance (session 2)HomeworkLecture 3Lecture 4Lecture 5Lab1Lecture 6quiz 1
2448605SalankarAngai111111
2447546ImmadiAnil Reddy111111
2448086ChenBo111111
2423983ZhangHonglei111111
2435899VedireIsha111111
2451221KambhatlaPavan111111
2403255Chittoor Krishna ReddySandeep111111
2446506KhajaShoeb111111
2446886CuiSong111111
2447079AllenaSurya111111
2446699AyinapurapuVinay Deep111111
2446092Sai KiranEde101111
MangalarapuTirupathi111111
THUMMAMADHUKAR REDDY111111
Quiz 1Q1Q2Q3Q4Total
SalankarAngai24241915826860-692
ImmadiAnil Reddy2026195706870-796
ChenBo24262010807080-896
ZhangHonglei283020108870
VedireIsha242619158471
KambhatlaPavan242019157876
Chittoor Krishna ReddySandeep242219208578
KhajaShoeb24241757078
CuiSong24201956880
AllenaSurya20261756882
AyinapurapuVinay Deep222619158282
Sai KiranEde242019157884
MangalarapuTirupathi222415157685
THUMMAMADHUKAR REDDY26261907188
23.624.318.610.777.1
KattaAnuroop222820209098
BoraDhanashree9660-691
BhavsarHardik26241020809670-791
SoufanKassem28282020969480-894
PatelKetan22302020929490-10012
ShahMalav243020209493
GajjarMaulikkumar20202036392
ParikhMrunal242620209092
KodatiNiranjan242820209291
BhadrirajuRajamani222820209090
BellamRavinder283020209890
GatigantiSreedevi282820209690
ThakurSritambari223019209189
SiruvoluSujana262819209387
ShahUchit262018208484
NagallaVamsi Krishna203015107580
ManneVenkata Dinesh203019208975
RamalingamVikas Reddy243020209463
SalamehElie2426172087
24.027.418.618.488.5
classroster_EEC_584_51
Grade Range
Number of Students
Grade Range
Number of Students
*
EEC584 Quiz1 Result(TTh Session)High 98, low 63, average 88Average of Q1 24, Q2 27, Q3 19, Q4 - 18
EEC-484/584: Computer Networks
Chart2
1
1
4
12
Grade Range
Number of Students
classroster_EEC_584_51
Title
Fall 06 - Class Nbr: 5131
Instructor
Wenbing Zhao
ClassDescrSectionSession
EEC584Computer Networks511
CSUIDLast NameFirst NameStatusPhoneEmail
2016451KassemSoufan216/351-7377k.soufan@csuohio.edu
2274861MrunalParikh440/888-1375m.r.parikh@csuohio.edu
2416269SreedeviGatiganti216/802-0042s.gatiganti@csuohio.edu
2418299SujanaSiruvolu614/843-7546s.siruvolu@csuohio.edu
2426371NiranjanKodati216/861-0516n.kodati@csuohio.edu
(withdraw) 2428739Vinay KumarChitla216/334-6741v.chitla@csuohio.edu
2429059HardikBhavsar216/583-0785h.bhavsar@csuohio.edu
2431658MalavShah216/696-5028m.p.shah99@csuohio.edu
2438958Vikas ReddyRamalingam216/357-9489v.ramalingam@csuohio.edu
2443159MaulikkumarGajjar(792) 323-1968m.gajjar@csuohio.edu
2444940Vamsi KrishnaNagalla216/543-7876v.nagalla@csuohio.edu
2445263DhanashreeBora216/861-5264d.bora@csuohio.edu
2445934AnuroopKatta732/822-8696a.katta@csuohio.edu
2446009RavinderBellam216/861-0516r.bellam@csuohio.edu
2446290UchitShah216/394-8777u.r.shah@csuohio.edu
2447451KetanPatel216/357-2534k.m.patel99@csuohio.edu
2448923Venkata DineshManne(944) 035-0257v.manne@csuohio.edu
2454215TirupathiMangalarapu(402) 355-1896t.mangalarapu@csuohio.edu
2460747SritambariThakur216/338-2515s.thakur100@csuohio.edu
2449105RajamaniBhadriraju216/269-4536r.bhadriraju@csuohio.edu
2451943SalamehElieEnrolled440/617-0736e.salameh@csuohio.edu
Session #2 students
2403255SandeepChittoor Krishna Reddy216/392-2857s.chittoorkrishnared@csuohio.edu
2415675MADHUKAR REDDYTHUMMA216/694-0099m.thumma@csuohio.edu
2423983HongleiZhangNo Phoneh.zhang105@csuohio.edu
2435899IshaVedire216/696-5862i.vedire@csuohio.edu
2446092Sai KiranEde(402) 409-0355s.ede@csuohio.edu
2446506ShoebKhaja216/589-0186s.khaja1@csuohio.edu
2446699Vinay DeepAyinapurapu(891) 556-4063v.ayinapurapu@csuohio.edu
2446886SongCui(334) 760-0660s.cui99@csuohio.edu
2447079SuryaAllena978/996-3907s.k.allena@csuohio.edu
2447546Anil ReddyImmadi404/518-1310a.immadi@csuohio.edu
2448086BoChenb.chen100@csuohio.edu
2448605AngaiSalankar404/323-8983a.salankar@csuohio.edu
2451221PavanKambhatla440/319-5590p.kambhatla@csuohio.edu
Attendance (session 1)+A77HomeworkLecture 3Lecture 4Lecture 5Lab1Lecture 6Lab2
2445934KattaAnuroop111111
2445263BoraDhanashree111family emergency10
2429059BhavsarHardik111111
2016451SoufanKassem111111
2447451PatelKetan111111
2431658ShahMalav111111
2443159GajjarMaulikkumar111111
2274861ParikhMrunal111111
2426371KodatiNiranjan111111
2449105BhadrirajuRajamani111111
2446009BellamRavinder111111
2416269GatigantiSreedevi111111
2460747ThakurSritambari11111
2418299SiruvoluSujana111111
2446290ShahUchit111111
2444940NagallaVamsi Krishna111111
2448923ManneVenkata Dinesh111111
2438958RamalingamVikas Reddy111111
(late registeration 2wks)2451943SalamehElie111
Attendance (session 2)HomeworkLecture 3Lecture 4Lecture 5Lab1Lecture 6quiz 1
2448605SalankarAngai111111
2447546ImmadiAnil Reddy111111
2448086ChenBo111111
2423983ZhangHonglei111111
2435899VedireIsha111111
2451221KambhatlaPavan111111
2403255Chittoor Krishna ReddySandeep111111
2446506KhajaShoeb111111
2446886CuiSong111111
2447079AllenaSurya111111
2446699AyinapurapuVinay Deep111111
2446092Sai KiranEde101111
MangalarapuTirupathi111111
THUMMAMADHUKAR REDDY111111
Quiz 1Q1Q2Q3Q4Total
SalankarAngai242419208760-693
ImmadiAnil Reddy20261906570-792
ChenBo242620108080-899
ZhangHonglei2830201088
VedireIsha2426191887
KambhatlaPavan2420192083
Chittoor Krishna ReddySandeep2422191580
KhajaShoeb242417570
CuiSong242019568
AllenaSurya202617063
AyinapurapuVinay Deep2226192087
Sai KiranEde2420192083
MangalarapuTirupathi2224152081
THUMMAMADHUKAR REDDY262619071
23.624.318.611.678.1
KattaAnuroop222820209098
BoraDhanashree9660-691
BhavsarHardik26241020809670-791
SoufanKassem28282020969480-894
PatelKetan22302020929490-10012
ShahMalav243020209493
GajjarMaulikkumar20202036392
ParikhMrunal242620209092
KodatiNiranjan242820209291
BhadrirajuRajamani222820209090
BellamRavinder283020209890
GatigantiSreedevi282820209690
ThakurSritambari223019209189
SiruvoluSujana262819209387
ShahUchit262018208484
NagallaVamsi Krishna203015107580
ManneVenkata Dinesh203019208975
RamalingamVikas Reddy243020209463
SalamehElie2426172087
24.027.418.618.488.5
classroster_EEC_584_51
Grade Range
Number of Students
Grade Range
Number of Students
*
Data Link Layer Design IssuesServices Provided to the Network LayerPoint-to-point, source-to-destinationFramingPhysical bit stream divided up into framesError ControlAcknowledgements (acks) and negative acks (nacks)Sender has timer within timeout get ack, or send againIf frame transmitted multiple times, receiver may get several copies - Use sequence numbers
EEC-484/584: Computer Networks
*
Data Link Layer Design IssuesFlow ControlSender may transmit frames faster than receiver can receive themThrottle sender so sends no faster than receiver can receive them
EEC-484/584: Computer Networks
*
Functions of Data Link LayerProvide service interface to the network layerVirtual source-to-destination communication channelDealing with transmission errorsRegulating data flowSlow receivers not swamped by fast senders
EEC-484/584: Computer Networks
*
Services Provided to Network Layer(a) Virtual communication(b) Actual communication
EEC-484/584: Computer Networks
*
Placement of Data Link Protocol
EEC-484/584: Computer Networks
*
Types of Services Provided to Network LayerUnacked connectionlessOk if low error rate, real time applicationsAcked connectionlessUnacked connection-orientedAcked connection-oriented
EEC-484/584: Computer Networks
*
FramingDL layer divides physical bit stream into framesChecksum computed by source included in frameChecksum recomputed by destination and checked against checksum included in the frameDiscard/recover bad frame, notify source
EEC-484/584: Computer Networks
*
How Does DL Layer Form Frames?Insert time gaps between frames: too riskyCharacter countFlag bytes with byte stuffingStarting and ending flags, with bit stuffingPhysical layer coding violationsExample: encode 1 bit with 2 bits1 => 100 => 01Can use 00 or 11 to delimit frames
EEC-484/584: Computer Networks
*
Framing Based on Character CountUse field in header to indicate number of characters in frame
Count might be garbled, not used
EEC-484/584: Computer Networks
*
Framing Based on Byte StuffingEach frame starts and ends with a special flag byteProblem: flag byte might appear in dataSolution: Source inserts ESC (DL escape) before each flag byte; ESC before each ESCDestination removes inserted ESC bytesDisadvantage: depends on 8-bits characters in ASCII
EEC-484/584: Computer Networks
*
Framing Based on Byte Stuffing
EEC-484/584: Computer Networks
*
Framing Based on Bit StuffingEach frame begins and ends with special bit patterns, 01111110 (in fact, a flag byte)When sources data contains 11111, stuff 0 When destination receives 111110, deletes 0Advantages: Allows arbitrary number of bits per frameAllows arbitrary number of bits per character
EEC-484/584: Computer Networks
*
Framing Based on Bit Stuffing: ExampleOriginal Frame (payload only)Frame after bit stuffingReceived Frame after taken stuffed bit out
EEC-484/584: Computer Networks
*
Error Detection and CorrectionCauses of errorsTransmission errors on phone lines due to thermal noiseData transmission errors due to impulse noiseSignals are separated, distorted, recombinedCrosstalk between physically adjacent wiresCompression and decompressionReceiver out of synch with senderErrors usually occur in bursts
EEC-484/584: Computer Networks
*
Error-Correcting Codesn-bit codeword an n-bit unit containing data and check bits m bits of data, r bits redundant/check bits (n = m+r)How to measure the differences between two codewords (num of different bits)Using exclusive OR and counting number of 1 bits in the result
EEC-484/584: Computer Networks
*
Error-Correcting CodesHamming distance number of bit positions in which two codewords differIf two codewords are a Hamming distance d apart, it will require d single-bit errors to convert one into the other
EEC-484/584: Computer Networks
*
Error-Correcting CodesComplete codeComplete list of all legal codewords: 2m possible data messagesRecall that there are m bits of dataHamming distance of the complete codeFind two codewords whose Hamming distance is minimum
EEC-484/584: Computer Networks
*
Error-Detection CodesA distance d+1 code can detect up to d errors, why?If there are d+1 errors, one valid codeword might be turned into another valid codeword d errors will change a valid codeword into an illegal codeword can be detected!
EEC-484/584: Computer Networks
*
Error-Correcting CodesTo correct d errors, need a distance 2d+1 codeLegal codewords are so far part that even with d changes, original codeword is still closer than any other codeword, so it can be uniquely determined
EEC-484/584: Computer Networks
*
Error-Correcting Codes: ExampleConsider a code with only four valid codewords0000000000, 0000011111, 1111100000, 1111111111This code has a distance 5 can correct double errorsIf 0000000111 arrives, receiver knows the original must have been 0000011111However, if triple error changes 0000000000 to 0000000111, the error will not be corrected properly
EEC-484/584: Computer Networks
*
Parity BitParity bit a single bit is appended to the dataParity bit is chosen so that number of 1 bits in the codeword is even or oddExample: Given 1011010With even parity 10110100With odd parity 10110101A code with a single parity bit has a distance 2Since any single-bit error produces a codeword with wrong parity can be used to detect single bit errors
EEC-484/584: Computer Networks
*
Error-Detecting CodesIf a single parity bit is appended to a block, error detecting probability is only 0.5 if burst error occurs (why?)This can be improved by treating a block as a matrix, n bits wide and k bits high, A parity bit is computed for each column and affixed to the matrix as the last rowThe matrix is transmitted one row at a timeProbability of accepting bad block is 2-n
EEC-484/584: Computer Networks
*
Error-Detecting Codes: CRCPolynomial code, also known as CRC (Cyclic Redundant Code)Treat bit string as polynomial with 0 and 1 coefficientsm-bit frame: M(x) = bm-1xm-1 + + b0E.g.: 11011010 => M(x) = x7 + x6 + x4 + x3 + x1Use modulo 2 arithmeticNo carries or borrows: XOR
EEC-484/584: Computer Networks
*
Cyclic Redundant CodeSender and receiver agree on generator polynomial G(x) (High & low order bits must be 1)For a frame with m bits corresponding to M(x), m > deg G(x) = rAppend checksum to end of frame so polynomial T(x) corresponding to checksummed frame is divisible by G(x)When receiver gets checksummed frame, divides T(x) by G(x)If remainder R(x) != 0, then transmission error
EEC-484/584: Computer Networks
*
Algorithm to Compute CRC ChecksumLet m = deg M(x), r = deg G(x)Append r 0 bits to lower-order end of frame: xrM(x)Divide bit string corresponding to xrM(x) by bit string corresponding to G(x)Subtract remainder R(x) from bit string corresponding to xrM(x), result is checksummed frame. Let T(x) be its polynomialxrM(x) = Q(x)G(x) + R(x)xrM(x) R(x) = Q(x)G(x) = T(x)
EEC-484/584: Computer Networks
*
Compute CRC ChecksumXOR
EEC-484/584: Computer Networks
*
International Standard PolynomialsCRC-12 G(x) = x12 + x11 + x3 + x2 + x1 + 1Used for 6-bit charactersCRC-16 G(x) = x16 + x15 + x2 + 1 CRC-CCITTG(x) = x16 + x12 + x5 + 1Used for 8-bit charactersCRC-32G(x) = x32 + x26 + x23 + x22 + x16 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x1 + 1Used in IEEE 802Detects all bursts of length 32 or less and all bursts affecting an odd number of bits
EEC-484/584: Computer Networks
*
Optional HomeworkQ1. The following character encoding is used in a data link protocol: A: 01000111; B: 11100011; FLAG: 01111110; ESC: 11100000 Show the bit sequence transmitted (in binary) for the four-character frame: A B ESC FLAG when each of the following framing methods are used:(a) Character count.(b) Flag bytes with byte stuffing.(c) Starting and ending flag bytes, with bit stuffing
EEC-484/584: Computer Networks
*
Optional HomeworkQ2. The following data fragment occurs in the middle of a data stream for which the byte-stuffing algorithm described in the text is used: A B ESC C ESC FLAG FLAG D. What is the output after stuffing?Q3. A bit string, 0111101111101111110, needs to be transmitted at the data link layer. What is the string actually transmitted after bit stuffing?
EEC-484/584: Computer Networks
*
Optional HomeworkQ4. One of your classmates, Scrooge, has pointed out that it is wasteful to end each frame with a flag byte and then begin the next one with a second flag byte. One flag byte could do the job as well, and a byte saved is a byte earned. Do you agree?
EEC-484/584: Computer Networks
*
Optional HomeworkQ5. To provide more reliability than a single parity bit can give, an error-detecting coding scheme uses one parity bit for checking all the odd-numbered bits and a second parity bit for all the even-numbered bits. What is the Hamming distance of this code?
EEC-484/584: Computer Networks
*
Optional HomeworkQ6. A bit stream 10011101 is transmitted using the standard CRC method described in the text. The generator polynomial is x3 + 1. Show the actual bit string transmitted. Suppose the third bit from the left is inverted during transmission. Show that this error is detected at the receiver's end.
EEC-484/584: Computer Networks
When frame arrives at routerhardware verifies checksumPasses frame to DL layer softwareDL layer software checks if frame is one expectedIf so, gives packet in payload of frame to routing softwareRouting software chooses appropriate outgoing line passes packet back down to DL layer softwareDL layer software transmits it
, but not all 2n possible codewords are used
No need to remember these generator polynomials
top related