Presentation is loading. Please wait.

Presentation is loading. Please wait.

20101 The Data Link Layer Chapter 3. 20102 Design Issues Controls communication between 2 machines directly connected by “wire”-like link Services Provided.

Similar presentations


Presentation on theme: "20101 The Data Link Layer Chapter 3. 20102 Design Issues Controls communication between 2 machines directly connected by “wire”-like link Services Provided."— Presentation transcript:

1 20101 The Data Link Layer Chapter 3

2 20102 Design Issues Controls communication between 2 machines directly connected by “wire”-like link Services Provided to the Network Layer Framing: frame as an unit for physical layer to send in one go Error Control Flow Control, not sending faster than can be received

3 20103 Services Provided to Network Layer Unacknowledged connectionless service. no recovering of lost or corrupted frame when the error rate is very low real-time traffic, like speech or video Acknowledged connectionless service. returns information a frame has safely arrived. time-out, resend, frames received twice unreliable channels, such as wireless systems. Acknowledged connection-oriented service. established connection before any data is sent. provides the network layer with a reliable bit stream.

4 20104 Framing, character count Time gaps between frames are not suitable times are variable in networks received gaps can be smaller or larger Need to be combined with other methods

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

6 20106 Framing, bit stuffing Flag is 6 “1” bits After 5 “1”’s a “0” is added

7 20107 Error-Detecting Codes, CRC Cyclic redundancy Checks related to polynomial theories usually implemented in hardware using 16 of 32 bit generators -detect burst errors fewer than r+1 bits -any odd number of bit errors -up to an certain even number of errors

8 20108 Error-Correcting Codes Use of a Hamming code, adding extra bits, to correct errors. Error-correcting codes used in the early days, noisy lines Later lines and electronics got better: error-detection and resend Now used for wireless communication and high speed ethernet

9 20109 Protocols ACK (acknowledgements) for correct frames possible NACK for lost or corrupted frames (piggybacked) Pipelining error correction by resend of lost or corrupted frames Flow control

10 201010 Stop and Wait Protocols A Simplex Protocol for a Noisy Channel sender waits for an ack for each send frame frames may be damaged or lost, same for acks no nacks for lost or error frames might be used to increase the data rate sender uses a timer and re-sends frame a 1-bit frame number (0 and 1) is needed for data and ack frames, to separate a re-send frame from the original one also called: alternating bit protocol

11 201011 Pipelining Sender needs to buffer a send frame until its ack has arrived the buffer is a sliding window on all frames in the stream last packet bit arrives, send ACK senderreceiver RTT last bit transmitted, t = L / R first packet bit arrives ACK arrives, send next packet, t = RTT + L / R

12 201012 Go Back N receiver has no buffer it can only accept (and send to its higher layer) a correct frame with the next expected sequence number sends an ack for that sequence number, this implies that all previous frames have arrived otherwise it discards the frame and either sends nothing back or an ack for the last accepted frame or a nack for the next frame receiver timer to send ack (or nack) in separate frame do not wait too long for return frame to piggyback the ack or nack

13 201013 Go Back N, sender buffer for a number of already send but not yet acked frames a timer for the oldest frame in the buffer resend in case of time-out, an ack for an already acked frame or a nack in case of a resend: all next already send frames must be resend more than 1 bit for sequence numbers are needed: Nr_Buf <= Max_Seq+1

14 201014 Selective Repeat also receiver buffers frames: can store out-of-order correct frames only 1 frame has to be resend in case of error or lost nacks are usually used for error or lost frames just makes it faster Nr_Buf <= (Max_Seq+1)/2 (0…Max_Seq) sender needs timer of each send frame receiver timer to send ack (or nack) in separate frame do not wait too long for return frame to piggyback the ack or nack

15 201015 Selective Repeat buffers

16 201016 Go Back N vs Selective Repeat

17 201017 Protocol Verification Modeling needed Finite State Machine Models Petri Net Models Formal verification Uppaal PVS


Download ppt "20101 The Data Link Layer Chapter 3. 20102 Design Issues Controls communication between 2 machines directly connected by “wire”-like link Services Provided."

Similar presentations


Ads by Google