1 / 24

CMPE 150 Fall 2005 Lecture 10

CMPE 150 Fall 2005 Lecture 10. Introduction to Computer Networks . Announcements. No labs next week! Except for make-up sessions. Homework 2 is up. Graded homework 1 should be back next week. Today. Layer 2!!!! Tanenbaum chapter 3. Data Link Layer. Application. Transport. Network.

latham
Download Presentation

CMPE 150 Fall 2005 Lecture 10

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CMPE 150Fall 2005Lecture 10 Introduction to Computer Networks

  2. Announcements • No labs next week! • Except for make-up sessions. • Homework 2 is up. • Graded homework 1 should be back next week.

  3. Today • Layer 2!!!! • Tanenbaum chapter 3.

  4. Data Link Layer Application Transport Network DLL PHY

  5. What does it do? • What functions it performs? • Typically: • Handling transmission errors, a.k.a., error control. • Flow control. • Framing.

  6. Framing

  7. DLL and the Stack • (a) Virtual communication • (b) Actual communication

  8. DLL Between Routers

  9. The DDL and PHY • The PHY delivers raw sequence of bits. • Unreliable service. • The DLL must detect and, in some cases, correct errors.

  10. DLL’s Error Control • Break bit stream into frames. • Check if frames arrived correctly. • If not: • Discards frame. • In some cases also request retransmisssion.

  11. Framing (Revisited) • Not trivial. • Different methods.

  12. Framing: Using Counters (a) Without errors. (b) With one error.

  13. Character Counter • Main problem?

  14. Framing: Flag Byte • Each frame starts and ends with special bytes: flag bytes. • Two consecutive flag bytes indicate end of frame and beginning on new frame. • Problem?

  15. Framing: Flag Byte • Each frame starts and ends with special bytes: flag bytes. • Two consecutive flag bytes indicate end of frame and beginning on new frame. • Problem? • What if flab bit pattern occurs in data?

  16. Byte Stuffing • (a) A frame delimited by flag bytes. • (b) Four examples of byte sequences before and after stuffing.

  17. Byte Stuffing (Cont’d) • Single ESC: part of the escape sequence. • Doubled ESC: single ESC is part of data. • De-stuffing. • Problem: • What if character encoding does not use 8-bit characters?

  18. Bit Stuffing • Allows character codes with arbitrary bits per character. • Each frames begins and ends with special pattern. • Example: 01111110. • When sender’s DLL finds 5 consecutive 1’s in data stream, stuffs 0. • When receiver sees 5 1’s followed by 0, de-stuffs.

  19. Bit Stuffing: Example • (a) Original data. • (b) Data as they appear on the line. • (c) Data after de-stuffing.

  20. Error Control

  21. Error Control • Reliable delivery. • Hop-by-hop! • Detecting errors. • Detecting and correcting errors.

  22. Acknowledgments • Special control info (in the case of the DLL, control frame) acknowledging receipt of data. • Positive and negative ACKs. • ACKs. • NACKs. • Are ACKs sufficient?

  23. Reliable Delivery • Timers. • Retransmission. • Duplicate detection.

  24. Flow Control • Handles mismatch between sender’s and receiver’s speed. • Receiver’s buffer limitation. • Feedback-based flow control. • Explicit permission from receiver. • Rate-based flow control. • Implicit mechanism for limiting sending rate. • DLL typically uses feedback-based flow control.

More Related