The Data Link Layer. Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control.

Slides:



Advertisements
Similar presentations
Chapter 3 The Data Link Layer.
Advertisements

The Data Link Layer Chapter 3. Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control.
CS 4284 Systems Capstone Networking Godmar Back.
Transport Layer3-1 Homework r Chapter 2#10,13-18 r Due Wed September 17.
Transport Layer3-1 Pipelined protocols Pipelining: sender allows multiple, “in-flight”, yet-to- be-acknowledged pkts m range of sequence numbers must be.
Transport Layer 4 Slides from Kurose and Ross
Transport Layer 3-1 Transport services and protocols  provide logical communication between app processes running on different hosts  transport protocols.
The Future r There will be a Wireshark TCP homework up on the wiki later today. It will be due Wednesday. r The next test is coming soon – next Wednesday????
1 Outline r Transport-layer services r Multiplexing and demultiplexing r Connectionless transport: UDP r Principles of reliable data transfer.
Transport Layer3-1 Data Communication and Networks Lecture 6 Reliable Data Transfer October 12, 2006.
Announcement Project 1 due last night, how is that ? Project 2 almost ready, out tomorrow, will post online –Much harder than project 1, start early!
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.
Chapter 3 Transport Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 9.
The Data Link Layer Chapter 3. Position of the data-link layer.
Transport Layer3-1 Reliable Data Transfer. Transport Layer3-2 Principles of Reliable data transfer r important in app., transport, link layers r top-10.
1 Outline r Transport-layer services r Multiplexing and demultiplexing r Connectionless transport: UDP r Principles of reliable data transfer.
VLANs Port-based VLAN: switch ports grouped (by switch management software) so that single physical switch …… Switch(es) supporting VLAN capabilities can.
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.
1 Interconnection ECS 152A. 2 Interconnecting with hubs r Backbone hub interconnects LAN segments r Extends max distance between nodes r But individual.
CPSC 441: Reliable Transport1 Reliable Data Transfer Instructor: Carey Williamson Office: ICT Class.
CSC 450/550 Part 2: The Data Link Layer. CSC 450/550 Summary Part A Functions (1)Functions of the data link layer (2)Framing (3)Error control (3.1) Error.
The Data Link Layer Chapter 3. Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control.
Transport Layer3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley,
Some slides are in courtesy of J. Kurose and K. Ross Review of Previous Lecture r Transport-layer services r Multiplexing and demultiplexing r Connectionless.
Adapted from Tanenbaum's Slides for Computer Networking, 4e The Data Link Layer Chapter 3.
EEC-484/584 Computer Networks Lecture 7 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 
CSCI 3335: C OMPUTER N ETWORKS C HAPTER 3 T RANSPORT L AYER Vamsi Paruchuri University of Central Arkansas Some.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 5 th edition. Jim Kurose, Keith Ross Addison-Wesley, April 2009.
Transport Layer 3-1 Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m sockets m reliable data transfer m.
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.
Transport Layer 3-1 From Computer Networking: A Top Down Approach Featuring the Internet by Jim Kurose, Keith Ross Addison-Wesley, A note on the use of.
The data link layer. Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control.
The Data Link Layer. Functions of the Data Link Layer Provide service interface to the network layer Dealing with transmission errors Error detection.
The Data Link Layer. Functions of the Data Link Layer Provide service interface to the network layer Frame delineation Dealing with transmission errors.
The Data Link Layer Chapter 3 10/28/2015www.noteshit.com1.
rdt2.2: a NAK-free protocol
Part 3: Transport Layer: Reliable Data Transfer CSE 3461/5461 Reading: Section 3.4, Kurose and Ross 1.
Transport Layer3-1 rdt2.1: sender, handles garbled ACK/NAKs Wait for call 0 from above sndpkt = make_pkt(0, data, checksum) udt_send(sndpkt) rdt_send(data)
Transport Layer 3-1 Chapter 3 outline 3.4 Principles of reliable data transfer.
September 24 th, 2013 CS1652 The slides are adapted from the publisher’s material All material copyright J.F Kurose and K.W. Ross, All Rights.
1 John Magee 10 February 2014 CS 280: Transport Layer: Reliable Data Transfer Most slides adapted from Kurose and Ross, Computer Networking 6/e Source.
The Data Link Layer Chapter 3 1/21/2016www.ishuchita.com1.
Transport Layer Our goals:
5: DataLink Layer5-1 Hubs Hubs are essentially physical-layer repeaters: m bits coming from one link go out all other links m at the same rate m no frame.
9: Pipelined Protocols and RTT Transport Layer 3-1 Slides adapted from: J.F Kurose and K.W. Ross,
Important r Midterm will be on m FRIDAY, Feb. 12th 1.
Introduction 1 Lecture 11 Transport Layer (Reliable Data Transfer) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer Science.
Application Layer 2-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012.
1 COMP 431 Internet Services & Protocols The Transport Layer Pipelined Transport Protocols Jasleen Kaur March 29, 2016.
CS 457 – Lecture 3 Link Layer Protocols Fall 2011.
The Data Link Layer RIS 251 Dr. ir. S.S. Msanjila.
Chapter 3 Transport Layer
Chapter 3 outline 3.1 transport-layer services
Last time Reliable Data Transfer
Point to Point Data Link Control
Hubs Hubs are essentially physical-layer repeaters:
Chapter 3 – Part 1 The Data Link Layer.
Overview Jaringan Komputer (2)
Chapter 3 The Data Link Layer.
rdt2.2: a NAK-free protocol
EEC-484/584 Computer Networks
rdt2.2: a NAK-free protocol
rdt2.2: a NAK-free protocol
rdt2.2: a NAK-free protocol
rdt2.2: a NAK-free protocol
9: Pipelined Protocols and RTT
Chapter 3 Transport Layer
rdt2.0: FSM specification
rdt2.2: a NAK-free protocol
Presentation transcript:

The Data Link Layer

Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control

Functions of the Data Link Layer Provide service interface to the network layer Dealing with transmission errors Regulating data flow Slow receivers not swamped by fast senders

Functions of the Data Link Layer (2) Relationship between packets and frames.

Services Provided to Network Layer (a) Virtual communication. (b) Actual communication.

Services Provided to Network Layer (2) Placement of the data link protocol.

Framing A character stream. (a) Without errors. (b) With one error.

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

Framing (3) Bit stuffing (a) The original data. (b) The data as they appear on the line. (c) The data as they are stored in receiver’s memory after destuffing.

Sliding Window Protocols A One-Bit Sliding Window Protocol A Protocol Using Go Back N A Protocol Using Selective Repeat

Sliding Window Protocols (2) 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.

A Protocol Using Go Back N Pipelining and error recovery. Effect on an error when (a) Receiver’s window size is 1. (b) Receiver’s window size is large.

Go-Back-N Sender: a)k-bit seq # in pkt header b)“window” of up to N, consecutive unack’ed pkts allowed a)ACK(n): ACKs all pkts up to, including seq # n - “cumulative ACK” –may deceive duplicate ACKs (see receiver) b)timer for each in-flight pkt c)timeout(n): retransmit pkt n and all higher seq # pkts in window

GBN: sender extended FSM Wait start_timer udt_send(sndpkt[base]) udt_send(sndpkt[base+1]) … udt_send(sndpkt[nextseqnum-1]) timeout rdt_send(data) if (nextseqnum < base+N) { sndpkt[nextseqnum] = make_pkt(nextseqnum,data,chksum) udt_send(sndpkt[nextseqnum]) if (base == nextseqnum) start_timer nextseqnum++ } else refuse_data(data) base = getacknum(rcvpkt)+1 If (base == nextseqnum) stop_timer else start_timer rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) base=1 nextseqnum=1 rdt_rcv(rcvpkt) && corrupt(rcvpkt) 

GBN: receiver extended FSM ACK-only: always send ACK for correctly-received pkt with highest in-order seq # –may generate duplicate ACKs –need only remember expectedseqnum a)out-of-order pkt: –discard (don’t buffer) -> no receiver buffering! –Re-ACK pkt with highest in-order seq # Wait udt_send(sndpkt) default rdt_rcv(rcvpkt) && notcurrupt(rcvpkt) && hasseqnum(rcvpkt,expectedseqnum) extract(rcvpkt,data) deliver_data(data) sndpkt = make_pkt(expectedseqnum,ACK,chksum) udt_send(sndpkt) expectedseqnum++ expectedseqnum=1 sndpkt = make_pkt(expectedseqnum,ACK,chksum) 

GBN in action

Selective Repeat a)receiver individually acknowledges all correctly received pkts –buffers pkts, as needed, for eventual in-order delivery to upper layer b)sender only resends pkts for which ACK not received –sender timer for each unACKed pkt c)sender window –N consecutive seq #’s –again limits seq #s of sent, unACKed pkts

Selective repeat: sender, receiver windows

Selective repeat in action

Selective repeat: dilemma Example: a)seq #’s: 0, 1, 2, 3 b)window size=3 c)receiver sees no difference in two scenarios! d)incorrectly passes duplicate data as new in (a) Q: what relationship between seq # size and window size?

Example Data Link Protocols HDLC – High-Level Data Link Control The Data Link Layer in the Internet

High-Level Data Link Control Frame format for bit-oriented protocols.

High-Level Data Link Control (2) Control field of (a) An information frame. (b) A supervisory frame. (c) An unnumbered frame.

The Data Link Layer in the Internet A home personal computer acting as an internet host.

PPP – Point to Point Protocol The PPP full frame format for unnumbered mode operation.

PPP Design Requirements [RFC 1557] a)packet framing: encapsulation of network-layer datagram in data link frame –carry network layer data of any network layer protocol (not just IP) at same time –ability to demultiplex upwards b)bit transparency: must carry any bit pattern in the data field c)error detection (no correction) d)connection liveness: detect, signal link failure to network layer e)network layer address negotiation: endpoint can learn/configure each other’s network address

PPP non-requirements a)no error correction/recovery b)no flow control c)out of order delivery OK d)no need to support multipoint links (e.g., polling) Error recovery, flow control, data re-ordering all relegated to higher layers!

PPP Data Frame a)Flag: delimiter (framing) b)Address: does nothing (only one option) c)Control: does nothing; in the future possible multiple control fields d)Protocol: upper layer protocol to which frame delivered (eg, PPP-LCP, IP, IPCP, etc)

PPP Data Frame a)info: upper layer data being carried b)check: cyclic redundancy check for error detection

Byte Stuffing a) “data transparency” requirement: data field must be allowed to include flag pattern –Q: is received data or flag? b)Sender: adds (“stuffs”) extra byte after each data byte c)Receiver: –two bytes in a row: discard first byte, continue data reception –single : flag byte

Byte Stuffing flag byte pattern in data to send flag byte pattern plus stuffed byte in transmitted data

Other Topics a)Error recovery. Parity checking. Hamming distance. b)Maximal channel utilization rate. c)HDLC protocol (in more details).