In today's lesson, we will look at HDLC data link layer protocol,
as well as multiplexing.
While PPP is a character-oriented protocol, HDLC is bit-oriented.
HDLC provides a rich set of standards for
operating data link over bit-synchronous physical layers.
It is derived from IBM SDLC.
So data link control provides a communication service to the network layer
that transmits frames and makes use of
a bit transport service provided by the physical layer.
Data link layer can be configured to provide several types of services.
For example, connection-oriented and connectionless.
HDLC has two data transfer modes.
The Normal Response Mode is used in polling multi-drop lines.
Asynchronous Balance Mode is used in full-duplex point-to-point links.
The mode is selected during connection establishment.
The function of a protocol depends on the control fields that are defined in the header.
HDLC and PPP use the same flag byte in framing.
The frame has a field for
only one address which always contains the address of the secondary,
and there is only one primary.
There are three types of control fields.
If the first bit of control field is 0,
it is Information Frame.
A 1-0 in the first two bits of the control field identifies a Supervisory Frame.
Finally, a 1-1 in the first two bits of the control field identifies an Unnumbered Frame.
This frame's implement of the main function of data link control,
error, and flow control.
In communication, frames could
have been lost due to loss of synchronization or receiver buffer overflow.
Frames may undergo errors in transmission as well.
CRCs are used to detect errors on such frames treated as lost.
Recovery is done through acknowledgements, timeouts, and retransmission.
HDLC provides for options that implement several ARQ methods.
Now let's look at another important technique, multiplexing.
Computer applications generate data for transmission in a bursty manner.
Bursts of information are separated by idle periods and
also dedicating a transmission line to each computer is inefficient.
This behavior led to the development of
a statistical multiplexing technique for sharing a digital transmission line.
It achieved great efficiency and lower cost.
To the benefits,
consider the case where packets from three terminals are to be multiplexed.
Part A shows the times when the packets would have been transmitted
if each terminal had its own line at a speed of R bps.
Part B shows the time where the packets are transmitted if
the packets from the three flows are combined by a multiplexer.
Because the terminals generate a packet of the in a bursty manner,
it is possible to combine the streams into a single line of speed, R bps.
So significant efficiency and cost saving could be achieved.
But please note, because of the packet generation times overlap,
the multiplexer must buffer and delay some of the packets.
Nevertheless, all packets get transmitted in the order in which they were generated.
Packet multiplexers are used in two situations.
In the first, packets arrive for
multiple lines to a statistical multiplexer for transmission to a remote site.
Meaning the second packets arrive to
a packet switch for transmission over a specified data link.
In both situations, the multiplexer buffers the packets,
or arranges them in a buffer, called a queue.
Multiplexing occurs in these queues.
Typically, packets are transmitted in first-in, first-out fashion.
But increasingly, multiplexers use priorities
in scheduling to determine the order or packet transmission.
Packets are buffered in the queue.
There would be queued and delayed before the packets are transmitted.
Consequently, the multiplexers are operating so that it is
a trade of packet delay versus a utilization of the transmission line.
If the buffer overflows,
packets may be lost.
End-to-end the protocols are responsible for recovering them.
So in multiplexer modeling,
important factors are the packet arrival pattern,
the packet service time,
and the buffer discipline.
The performance measures are average delay distribution,
packet loss probability, and line utilization.
The delay equals the queue waiting time plus the packet service time.
The behavior of statistical multiplexer is
characterized by the number of packets in the multiplexer at a given time.
The valuations are given by the arrival and departure times of the packets.
A famous arrival pattern is described as Poisson Arrivals,
in which time between consecutive packet arrivals is an exponential random variable.
Queuing theory is very important to measure the delay and loss statistics.
It involves sophisticated monitoring and analysis,
but due to time constraint,
in this course we will not look into details of queuing.
Overall, multiplexing makes good trade off of delay and utilization.