1 ECE453 – Introduction to Computer Networks Lecture 5 – Data Link Protocols (II)

Slides:



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

Data Link Layer Protocols Flow Control in Data Link Layer.
Data Link Layer (cont’d)
The Data Link Layer Chapter 3. Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control.
Network Operations & administration CS 4592 Lecture 15 Instructor: Ibrahim Tariq.
Assume that a file is transferred from a node A to a node B. The file has been fragmented in 5 frames. Frame 0 is corrupted, the ACK of frame 1 is corrupted,
Data Link Layer Computer Networks.
Flow and Error Control. Flow Control Flow control coordinates the amount of data that can be sent before receiving acknowledgement It is one of the most.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Chapter 11 Data Link Control and Protocols.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 13 Introduction to the Transport.
Error-Detecting Codes Calculation of the polynomial code checksum.
Data Link Layer as a Reliable Data Transport Protocol Computer Networks Computer Networks Term B10.
Data Link Layer Review Advanced Computer Networks.
Networks: Data Link Layer1 Data Link Layer. Networks: Data Link Layer2 Data Link Layer Provides a well-defined service interface to the network layer.
Networks: Data Link Layer1 Data Link Layer. Networks: Data Link Layer2 Data Link Layer Provides a well-defined service interface to the network layer.
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.
Computer Networks: Data Link Layer 1 Data Link Layer.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 12 Introduction to Computer Networks.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 13 Introduction to Computer Networks.
Announcement Project 1 due last night, how is that ? Homework 1 grade, comments out –Will be discussed in the next lecture Homework 2 out Project 2 almost.
Transport Layer3-1 Reliable Data Transfer. Transport Layer3-2 Principles of Reliable data transfer r important in app., transport, link layers r top-10.
Networks: Data Link Layer1 Data Link Layer. Networks: Data Link Layer2 Data Link Layer Provides a well-defined service interface to the network layer.
Computer Networks Data Link Layer.
3-1 Sect. 3.4 Principles of reliable data transfer Computer Networking: A Top Down Approach Featuring the Internet, 1 st edition. Jim Kurose, Keith Ross.
Networks: Data Link Layer1 Data Link Layer. Networks: Data Link Layer2 Data Link Layer Provides a well-defined service interface to the network layer.
20101 The Data Link Layer Chapter Design Issues Controls communication between 2 machines directly connected by “wire”-like link Services Provided.
1 Reliable Data Transfer. 2 r Problem: Reliability  Want an abstraction of a reliable link even though packets can be corrupted or get lost r Solution:
15 - Winter 2006 ECE ECE 766 Computer Interfacing and Protocols 1 Data Link Control Physical layer is only responsible for data transmission Data link.
ARQ Mechanisms Rudra Dutta ECE/CSC Fall 2010, Section 001, 601.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Chapter 11 Data Link Control Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Data Link Layer Part I – Designing Issues and Elementary.
15-1 Last time □ Reliable Data Transfer ♦ Provide rdt over unreliable network layer ♦ FSM model ♦ rdt 1.0: rdt over reliable channels ♦ rdt 2.0: rdt over.
1 Transport Layer Lecture 10 Imran Ahmed University of Management & Technology.
Error/Flow Control Modeling (ARQ Modeling). Modeling of Go Back N.
The data link layer. Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control.
CS 453 Computer Networks Lecture 9 Layer 2 – Data Link Layer.
rdt2.2: a NAK-free protocol
Computer Networks Lecture 3: Data Link - part II Based on slides from D. Choffnes Northeastern U. and P. Gill from StonyBrook University Revised Autumn.
Data Link Layer: Data Link Control : Data Communication and Computer Networks Asst. Prof. Chaiporn Jaikaeo, Ph.D.
Chapter 3: Channel Coding (part 3). Automatic repeat request (ARQ) protocols ▫Used in combination with error detection/correction ▫Block of data with.
The Data Link Layer Chapter 3 1/21/2016www.ishuchita.com1.
Transport Layer: Sliding Window Reliability
Lecture Focus: Data Communications and Networking  Data Link Layer  Data Link Control Lecture 22 CSCS 311.
CSCI 465 D ata Communications and Networks Lecture 10 Martin van Bommel CSCI 465 Data Communications & Networks 1.
Fall 2005 By: H. Veisi Computer networks course Olum-fonoon Babol Chapter 3 Data Link Layer.
CSCI 465 D ata Communications and Networks Lecture 11 Martin van Bommel CSCI 465 Data Communications & Networks 1.
Chi-Cheng Lin, Winona State University CS412 Introduction to Computer Networking & Telecommunication Data Link Layer Part II – Sliding Window Protocols.
1 The utopia protocol  Unrealistic assumptions: –processing time ignored –infinite buffer space available –simplex: data transmitted in one direction.
DATA LINK CONTROL. DATA LINK LAYER RESPONSIBILTIES  FRAMING  ERROR CONTROL  FLOW CONTROL.
Data Link Layer as a Reliable Data Transport Protocol Advanced Computer Networks Advanced Computer Networks Term D11.
Ch 3. Transport Layer Myungchul Kim
1 COMP 431 Internet Services & Protocols The Transport Layer Pipelined Transport Protocols Jasleen Kaur March 29, 2016.
NET 222: COMMUNICATIONS AND NETWORKS FUNDAMENTALS ( NET 222: COMMUNICATIONS AND NETWORKS FUNDAMENTALS (PRACTICAL PART) Tutorial 4 : Chapter 7 Data & computer.
Chapter 3: The Data Link Layer –to achieve reliable, efficient communication between two physically connected machines. –Design issues: services interface.
Chapter 23 Introduction To Transport Layer Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Computer Communication & Networks
Advanced Computer Networks D12
Chapter 3 Data Link Layer Dr. N Amanquah
Chapter 3 Review on Data Link Layer
Chapter 3 – Part 1 The Data Link Layer.
ECE453 – Introduction to Computer Networks
Data Link Layer: Data Link Control
Data Link Layer as a Reliable Data Transport Protocol
CS412 Introduction to Computer Networking & Telecommunication
Data Link Layer (cont’d)
DATA COMMUNICATION Lecture-38.
Data Link Layer (cont’d)
Presentation transcript:

1 ECE453 – Introduction to Computer Networks Lecture 5 – Data Link Protocols (II)

2 Elementary Data Link Protocols An Unrestricted Simplex Protocol A Simplex Stop-and-Wait Protocol A Simplex Protocol for a Noisy Channel HeaderDataTrailer TBDCRC Checksum

3 Unrestricted Simplex Protocol – the Utopia Both the transmitting and receiving network layers are always ready Infinite buffer space is available The communication channel between the data link layers never damages or loses frames Data are transmitted in one direction only Processing time can be ignored

4 Unrestricted Simplex Protocol void sender1 (void) { frame s; packet buffer; while (true) { from_network_layer(&buffer); s.info = buffer; to_physical_layer(&s); } void receiver1 (void) { frame r; event_type event; while (true) { wait_for_event(&event); from_physical_layer(&r); to_network_layer(&r.info); }

5 Simplex Stop-and-Wait Protocol - Assumptions Both the transmitting and receiving network layers are always ready Infinite buffer space is available The communication channel between the data link layers never damages or loses frames Data are transmitted in one direction only Processing time can be ignored

6 Simplex Stop-and-Wait Protocol void sender2 (void) { frame s; packet buffer; event_type event; while (true) { from_network_layer(&buffer); s.info = buffer; to_physical_layer(&s); wait_for_event(&event); } void receiver2 (void) { frame r, s; event_type event; while (true) { wait_for_event(&event); from_physical_layer(&r); to_network_layer(&r.info); to_physical_layer(&s); }

7 Simplex Stop-and-Wait Protocol HeaderDataCRC TBD frame_kind kind

8 A Simplex Protocol for a Noisy Channel (also a Stop-and-Wait) Both the transmitting and receiving network layers are always ready Infinite buffer space is available The communication channel between the data link layers never damages or loses frames Data are transmitted in one direction only Processing time can be ignored

9 A Simplex Protocol for a Noisy Channel void sender3 (void) { seq_nr next_frame_to_send; frame s; packet buffer; event_type event; next_frame_to_send = 0; from_network_layer(&buffer); while (true) { s.info = buffer; s.seq = next_frame_to_send; to_physical_layer(&s); start_timer(s.seq); wait_for_event(&event); if (event == frame_arrival) { from_physical_layer(&s); if (s.ack == next_frame_to_send) { stop_timer(s.ack); from_network_layer(&buffer); inc(next_frame_to_send); } void receiver3 (void) { seq_nr frame_expected; frame r, s; event_type event; frame_expected = 0; while (true) { wait_for_event(&event); if (event == frame_arrival) { from_physical_layer(&r); if (r.seq == frame_expected) { to_network_layer(&r.info); inc(frame_expected); } s.ack = 1 – frame_expected; to_physical_layer(&s); }

10 Simplex Stop-and-Wait Protocol in Noisy Channel HeaderDataCRC TBD frame_kind kindseq_nr seqseq_nr ack

11 Problem with Stop-and-Wait

12 Sliding Window Protocols Assumptions Both the transmitting and receiving network layers are always ready Infinite buffer space is available The communication channel between the data link layers never damages or loses frames Data are transmitted in one direction only Processing time can be ignored Go Back N (GBN) Selective Repeat (SR)

13 Piggybacking Temporarily delaying outgoing acknowledgements so that they can be hooked onto the next outgoing data frame HeaderDataCRC frame_kind kindseq_nr seqseq_nr ack

14 GBN Sender is allowed to transmit multiple packets without waiting for an acknowledgement, but is constrained to have no more than some maximum allowable number (N) Use cumulative acknowledgement Discard out-of-order packets, no receiver buffering

15 Idea Behind Sliding Window … … Initial windowWindow slides Send packet 1 Send packet 2 Send packet 3 Receive ACK 1 Receive ACK 2 Receive ACK 3 Receive packet 1 Send ACK1 Receive packet 2 Send ACK2 Receive packet 3 Send ACK3

16 GBN Example

17 SR Out-of-order packets are buffered until any missing packets are received (receiver also has a window) Re-acknowledgement is required, otherwise the sender’s window will never move.

18 Example – Selective - Acknowledgement

19 Summary – Reliable Data Transfer (RDT) Protocols Utopia Stop-and-wait protocol Simplex stop-and-wait Simplex stop-and-wait in noisy channel Sliding window protocols Go-Back-N (GBN) Selective Repeat (SR)