The DataLink Layer

Goto Contents

Brian Bramer,
School of Computing and Mathematical Sciences,
De Montfort University, Leicester
8 March 1997



Introduction

The data link layer looks after the transmission of blocks of data over the physical link.  Fig 1 shows a simplified view (ignoring the network layer) of the hierarchy.

Fig 1 Simplified representation of the data link and associated layers

The host computers past data to/from the IMPS (interface message processors) which handle the communications over the physical communications link. The overall task of the data link layer is to make the physical line appear error free to the higher layers (this is usually called a virtual circuit). Thus the higher layer of the protocol hierarchy can pass data down to the lower layers and be able to assume that if the message reaches the destination it will error free.

In addition it is important that the receiver gets the data the exact form that it was given to the transmitter. This property is called data transparency and means that the transmission of the data does not corrupt the data no matter what bit patterns (or characters) it contains (this is a non-trivial problem and is usually done by the hardware at the physical level).

Contents

  1. Logical Link Control (LLC) protocol
  2. Problems faced by the data link layer
  3. Example data structures and library routines required for data link layer
  4. Unrestricted Simplex Protocol
  5. Simplex Stop and Wait Protocol
  6. Using a noisy physical channel
    1. Simplex ARQ protocol for a noisy channel
    2. Simplex ARQ protocol with sequence numbers for a noisy channel
  7. Programming Problem
  8. Sliding Window Protocols
    1. One bit sliding window protocol
  9. Piggybacking
  10. Pipelining
    1. Go-back-N ARQ protocol
    2. Selective-Reject ARQ protocol
    3. Comparison between Go-Back-N ARQ and Selective-Reject ARQ
  11. Data Transparency and Bit Stuffing
  12. The HDLC Family of Protocols