CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 12 Introduction to Computer Networks.

Slides:



Advertisements
Similar presentations
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 14 Introduction to Computer Networks.
Advertisements

Network Operations & administration CS 4592 Lecture 15 Instructor: Ibrahim Tariq.
EE 4272Spring, 2003 Chapter 7 Data Link Control Objectives: Effective & reliable data communication between two directly connected transmitting-receiving.
EIE325: Telecommunication TechnologiesMaciej J. Ogorza ł ek, PolyU, EIE Telecommunication Technologies Week 8 Flow Control Error Control.
William Stallings Data and Computer Communications 7th Edition
Chapter 3: The Datalink Layer CS 455/555. Topics to be covered Design Issues Error detection and correction Elementary datalink protocols Sliding window.
8-Reliability and Channel Coding Dr. John P. Abraham Professor UTPA.
Error Detection and Correction
Chapter 6 Errors, Error Detection, and Error Control.
Transmission Errors Error Detection and Correction
Error Detection and Correction
Error Detection and Correction
1 Chapter Six - Errors, Error Detection, and Error Control Chapter Six.
EEC-484/584 Computer Networks Lecture 8 Wenbing Zhao (Part of the slides are based on materials supplied by Dr. Louise Moser at UCSB and.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 13 Introduction to Computer Networks.
The Data Link Layer Chapter 3. Position of the data-link layer.
EE 122: Error detection and reliable transmission Ion Stoica September 16, 2002.
1 ITC242 – Introduction to Data Communications Week 10 Topic 16 Data link control.
The OSI Reference Model
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 11 Introduction to Computer Networks.
1 K. Salah Module 4.0: Data Link Layer The Logical Link Control (LLC) sublayer –Framing –Flow Control –Error Control The Media Access Control (MAC) sublayer.
Chapter 9: Data Link Control Business Data Communications, 4e.
Chapter 6: Errors, Error Detection, and Error Control
CMPE 150 – Winter 2009 Lecture 6 January 22, 2009 P.E. Mantey.
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
20101 The Data Link Layer Chapter Design Issues Controls communication between 2 machines directly connected by “wire”-like link Services Provided.
Adapted from Tanenbaum's Slides for Computer Networking, 4e The Data Link Layer Chapter 3.
Transmission Errors Error Detection and Correction
18-Aug-154/598N: Computer Networks Overview Direct link networks –Error detection - Section 2.4 –Reliable transmission - Section 2.5.
Data Link Control Protocols
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Chapter 11 Data Link Control Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction.
William Stallings Data and Computer Communications 7th Edition
Data Link Layer - 1 Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
1 Data Link Layer Lecture 20 Imran Ahmed University of Management & Technology.
PART III DATA LINK LAYER. Position of the Data-Link Layer.
ICOM 6115©Manuel Rodriguez-Martinez ICOM 6115 – Computer Networks and the WWW Manuel Rodriguez-Martinez, Ph.D. Lecture 14.
Data Link Layer: Error Detection and Correction
Chapt 3 Data Link Layer1 Data Link Layer Functions –Provides services to network layer Well-defined interface –Framing –Flow control – between adjacent.
1 Chapter Six - Errors, Error Detection, and Error Control Chapter Six.
Data Communications & Computer Networks, Second Edition1 Chapter 6 Errors, Error Detection, and Error Control.
Chapter 6: Errors, Error Detection, and Error Control Data Communications and Computer Networks: A Business User’s Approach Third Edition.
Data Link and Flow Control Networks and Protocols Prepared by: TGK First Prepared on: Last Modified on: Quality checked by: Copyright 2009 Asia Pacific.
Error/Flow Control Modeling (ARQ Modeling). © Tallal Elshabrawy 2 Data Link Layer  Data Link Layer provides a service for Network Layer (transfer of.
Computer Communication & Networks Lecture 9 Datalink Layer: Error Detection Waleed Ejaz
Data Link Layer Flow and Error Control. Flow Control Flow Control Flow Control Specifies the amount of data can be transmitted by sender before receiving.
Transmission Errors Error Detection and Correction.
Telecommunications & Networking Lesson 3. ISO Open System Interconnect (OSI) Application Presentation Session Transport Network Data Link Physical Application.
Network Layer4-1 Chapter 5: The Data Link Layer Our goals: r understand principles behind data link layer services: m error detection, correction m sharing.
Data Link Layer. Link Layer The data unit to be transmited at the link layer is called a frame. Why link layer? How can it know where a frame begins and.
NET 221D : COMPUTER NETWORKS FUNDAMENTALS LECTURE 4: DATA LINK LAYER Behrouz A. Forouzan” Data communications and Networking 1.
CSCI 465 D ata Communications and Networks Lecture 11 Martin van Bommel CSCI 465 Data Communications & Networks 1.
1 The Data Link Layer A. S. Tanenbaum Computer Networks W. Stallings Data and Computer Communications Chapter 3.
Chapter 9: Data Link Control Business Data Communications, 4e.
NET 222: COMMUNICATIONS AND NETWORKS FUNDAMENTALS ( NET 222: COMMUNICATIONS AND NETWORKS FUNDAMENTALS (PRACTICAL PART) Tutorial 4 : Chapter 7 Data & computer.
Physical Link Layer.
Computer Communication & Networks
Chapter 9: Data Link Control
The Data Link Layer.
Data Link Layer Flow Control.
Data Link Layer - 3 Dr. Sanjay P. Ahuja, Ph.D.
Chap. 4 Data link layer 2.
Data Link Layer What does it do?
Overview Jaringan Komputer (2)
Computer Networks Bhushan Trivedi, Director, MCA Programme, at the GLS Institute of Computer Technology, Ahmadabad.
Communication Networks NETW 501
Protocols and the TCP/IP Suite
Transmission Errors Error Detection and Correction
Error detection: Outline
Chapter 9: Data Link Control
Presentation transcript:

CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 12 Introduction to Computer Networks

CMPE 150- Introduction to Computer Networks 2 Announcements TA office hours this week. –Instead of tomorrow, they will be held Friday 1-2pm at E Book should be on reserve at S&E Library.

CMPE 150- Introduction to Computer Networks 3 Last Class Layer 2 (Cont’d). –Mechanisms for error control: ACKs/NACKs, retransmissions, timers, etc. –Flow control. Flow- versus congestion control. Types of flow control. –Error detection and correction. Trade-offs. Hamming distance. Error detection mechanisms and examples. Error correction mechanisms and examples.

CMPE 150- Introduction to Computer Networks 4 Reading Assignment Tanenbaum Chapter 3.

CMPE 150- Introduction to Computer Networks 5 Today Error control (cont’d). Error + flow control.

CMPE 150- Introduction to Computer Networks 6 Error Correction (Cont’d)

CMPE 150- Introduction to Computer Networks 7 Hamming Code Bits in positions that are power of 2 are check bits. The rest are data bits. Each check bit used in parity (even or odd) computation of collection of bits. –Example: check bit in position 11, checks for bits in positions, 11 = Similarly, bit 11 is checked by bits 1, 2, and 8.

CMPE 150- Introduction to Computer Networks 8 Hamming Code: Example 7-bit. Hamming codes can only correct single errors.. But, to correct bursts of errors, send column by column.

CMPE 150- Introduction to Computer Networks 9 Error Detecting Codes Typically used in reliable media. Examples: parity bit, polynomial codes (a.k.a., CRC, or Cyclic redundancy Check).

CMPE 150- Introduction to Computer Networks 10 Polynomial Codes Treat bit strings as representations of polynomials with coefficients 1’s and 0’s. K-bit frame is coefficient list of polynomial with k terms (and degree k-1), from x k-1 to x 0. –Highest-order bit is coefficient of x k-1, etc. –Example: represents x 5 + x 4 +x 0. Generator polynomial G(x). –Agreed upon by sender and receiver.

CMPE 150- Introduction to Computer Networks 11 CRC Checksum appended to frame being transmitted. –Resulting polynomial divisible by G(x). When receiver gets checksummed frame, it divides it by G(x). –If remainder, then error!

CMPE 150- Introduction to Computer Networks 12 More on CRC

CMPE 150- Introduction to Computer Networks 13 Cyclic Redunancy Check At Transmitter, with M = , compute 2 r M= with G = T = 2 r M + R [note G starts and ends with “1” ]  R = Transmit T=

CMPE 150- Introduction to Computer Networks 14 Cyclic Redundancy Check At the Receiver, compute: Note remainder = 0  no errors detected

CMPE 150- Introduction to Computer Networks 15 CRC Performance Errors go through undetected only if divisible by G(x) With “suitably chosen” G(x) CRC code detects all single-bit errors. And more…

CMPE 150- Introduction to Computer Networks 16 Flow + Error Control

CMPE 150- Introduction to Computer Networks 17 Flow + Error Control How do Layer 2 protocols implement them? What’s a frame? F F H TPayload. What’s F?. What’s in T?. What’s in H?

CMPE 150- Introduction to Computer Networks 18 Header and Trailer Trailer typically has checksum. –How is it used/processed? Header has: type, sequence number, and ack.

CMPE 150- Introduction to Computer Networks 19 Stop-and-Wait Simplest form of flow control. How does it work? (assume error-free channel) –(1) Send 1 frame; –(2) Wait for ACK. –(3) Go to 1.

CMPE 150- Introduction to Computer Networks 20 Stop-and-Wait: Pros and Cons Very simple! But, poor link utilization. –High data rates. –Long propagation delay.

CMPE 150- Introduction to Computer Networks 21 Noisy Channels From Stallings: Data and Computer Communications

CMPE 150- Introduction to Computer Networks 22 Stop-and-Wait in Noisy Channels Need timers, retransmissions, and duplicate detection. Use sequence numbers. –Why? –Distinguish frames. –How large (e.g., in number of bits) are sequence numbers?

CMPE 150- Introduction to Computer Networks 23 ARQ Protocols Automatic Repeat Request. –Protocols that wait for ACK before sending more data. ACKs now are used for flow AND error control. What can happen? –At receiver: frame arrives correctly, frame arrives damaged, frame does not arrive. –At sender: ACK arrives correctly, ACK arrives damaged, ACK does not arrive.

CMPE 150- Introduction to Computer Networks 24 ARQ Protocols Sender: –Send frame 0. –Start timer. –If ACK 0, arrives, send frame 1. –If timeout, re-send frame 0. Receiver: –**Waits for frame. –If frame arrives, check if correct sequence number. –Then send ACK for that frame. –Go to (**)

CMPE 150- Introduction to Computer Networks 25 Simplex versus Duplex Transmission Simplex: –Send data in one channel and control in another channel. Duplex: –Send data and control on the same chanel.

CMPE 150- Introduction to Computer Networks 26 Can we do better? –Piggybacking. –Bi-directional transmission. –Wait for data packet and use that to piggyback the ACK. –Use ACK field: only a few additional bits in the header. But, how long should Layer 2 wait to send an ACK? –ACK timers!

CMPE 150- Introduction to Computer Networks 27 Sliding Window Protocols Window: number of “outstanding” frames at any given point in time. Every ACK received, window slides…

CMPE 150- Introduction to Computer Networks 28 Sliding Window Example A sliding window of size 1, with a 3-bit sequence number.(a) Initially; (b) After the first frame has been sent; (c) After the first frame has been received;(d) After the first acknowledgement has been received.