Top Banner
1 CMPE 150- Introduction to Computer Networks CMPE 150 Fall 2005 Lecture 10 Introduction to Computer Networks
24

CMPE 150 Fall 2005 Lecture 10

Feb 12, 2016

Download

Documents

latham

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. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: CMPE 150 Fall 2005 Lecture 10

1CMPE 150- Introduction to Computer Networks

CMPE 150

Fall 2005Lecture 10

Introduction to Computer Networks

Page 2: CMPE 150 Fall 2005 Lecture 10

2CMPE 150- 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.

Page 3: CMPE 150 Fall 2005 Lecture 10

3CMPE 150- Introduction to Computer Networks

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

Page 4: CMPE 150 Fall 2005 Lecture 10

4CMPE 150- Introduction to Computer Networks

Data Link Layer

Application

Transport

Network

PHY

DLL

Page 5: CMPE 150 Fall 2005 Lecture 10

5CMPE 150- Introduction to Computer Networks

What does it do?• What functions it performs?• Typically:– Handling transmission errors, a.k.a., error

control.– Flow control.– Framing.

Page 6: CMPE 150 Fall 2005 Lecture 10

6CMPE 150- Introduction to Computer Networks

Framing

Page 7: CMPE 150 Fall 2005 Lecture 10

7CMPE 150- Introduction to Computer Networks

DLL and the Stack

• (a) Virtual communication• (b) Actual communication

Page 8: CMPE 150 Fall 2005 Lecture 10

8CMPE 150- Introduction to Computer Networks

DLL Between Routers

Page 9: CMPE 150 Fall 2005 Lecture 10

9CMPE 150- Introduction to Computer Networks

The DDL and PHY• The PHY delivers raw sequence of bits.– Unreliable service.

• The DLL must detect and, in some cases, correct errors.

Page 10: CMPE 150 Fall 2005 Lecture 10

10CMPE 150- Introduction to Computer Networks

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

Page 11: CMPE 150 Fall 2005 Lecture 10

11CMPE 150- Introduction to Computer Networks

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

Page 12: CMPE 150 Fall 2005 Lecture 10

12CMPE 150- Introduction to Computer Networks

Framing: Using Counters

(a) Without errors. (b) With one error.

Page 13: CMPE 150 Fall 2005 Lecture 10

13CMPE 150- Introduction to Computer Networks

Character Counter• Main problem?

Page 14: CMPE 150 Fall 2005 Lecture 10

14CMPE 150- Introduction to Computer Networks

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?

Page 15: CMPE 150 Fall 2005 Lecture 10

15CMPE 150- Introduction to Computer Networks

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?

Page 16: CMPE 150 Fall 2005 Lecture 10

16CMPE 150- Introduction to Computer Networks

Byte Stuffing

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

Page 17: CMPE 150 Fall 2005 Lecture 10

17CMPE 150- Introduction to Computer Networks

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?

Page 18: CMPE 150 Fall 2005 Lecture 10

18CMPE 150- Introduction to Computer Networks

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.

Page 19: CMPE 150 Fall 2005 Lecture 10

19CMPE 150- Introduction to Computer Networks

Bit Stuffing: Example

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

Page 20: CMPE 150 Fall 2005 Lecture 10

20CMPE 150- Introduction to Computer Networks

Error Control

Page 21: CMPE 150 Fall 2005 Lecture 10

21CMPE 150- Introduction to Computer Networks

Error Control• Reliable delivery.– Hop-by-hop!

• Detecting errors.• Detecting and correcting errors.

Page 22: CMPE 150 Fall 2005 Lecture 10

22CMPE 150- Introduction to Computer Networks

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?

Page 23: CMPE 150 Fall 2005 Lecture 10

23CMPE 150- Introduction to Computer Networks

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

Page 24: CMPE 150 Fall 2005 Lecture 10

24CMPE 150- Introduction to Computer Networks

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.