Tuesday 20 November 2018

HDLC and PPP

HDLC and PPP

HDLC (High-Level Data Link Control)

HDLC (High-Level Data Link Control) is a Layer 2 WAN Encapsulation Protocol that is used on synchronous data links. It is the simplest WAN Protocol that can connect your remote offices over leased lines.

HDLC has two versions. One of them is the standard one and the other is the Cisco proprietary version. The frame of standard version and Cisco proprietary version is similar. Only in Cisco proprietary HDLC, there is one additional proprietary field. Below, both frame is showed:

Cisco HDLC is the default enabled WAN protocol of Cisco for Point to Point WAN links. And Cisco HDLC can be used only between Cisco devices. Other vendor devices can not use Cisco HDLC.
Lastly, there is no Authentication mechanism in HDLC. So, security is a concern for this WAN protocol.

PPP (Point to Point Protocol)
PPP (Point to Point Protocol) is also a WAN Encapsulation Protocol that is based on HDLC but we can say that it is the enhanced version of HDLC. There are many additional features in PPP if we compare with HDLC.

PPP Authentication
PPP supports two Authentication Protocols. These Authentication Protocols are:
• PAP (Password Authentication Protocol)
• CHAP (Challenge Handshake Authentication Protocol)

PAP (Password Authentication Protocol) is the simplest Authentication method. It uses 2-way handshake. The passwords are sent as clear text in this method. And passwords are exchanged only at the beginning.
CHAP (Challenge Handshake Authentication Protocol) is the more complex Authenticaion method. CHAP uses 3-way handshake and with this mechanims it checks the remote node periodically. CHAP uses MD5 hash. Hash is sent to other node and the other node also sent a hash. If the hashes are same, then the communication is accepted.
PPP Session Establishment

PPP Session Establishment is done in three main step. These steps are :
Link Establishment (LCP Messages)
Authentication (CHAP, PAP)
Network Layer Phase (NCP Messages)

Below, you can find the detailed PPP Session Establishment schema:
As you can see here, for the session establishment, firstly LCP Packets are sent eachother. The first message of LCP is Configure-Request LCP Message. If it is accepted, the other end send Configure-Ack LCP Message. If not, it sends Configure-Nak. Then, the first router send a second modified Configure-Request LCP Message.

After this LCP messaging step, Authentication is done with PAP or CHAP Authentication Protocols. Here, if we use PAP, we will use 2-way handshake. If we use, CHAP, then we will use 3-way handshake mechanims like above. These messages are Challenge, Response and Accept/Reject Messages.

After a successfull Authentication step, in Network Layer Phase , NCP messaging starts. Again, Configure-Request and Configure-Ack Messages are used. If the request is not accepted, it is rejected with Configure-Nak Messages. Here, for IP, IPCP (Internet Protocol Control Protocol) is used as NCP.

Other PPP Characteristics
First of all, PPP is fully standard protocol. It supports all of the vendor devices.
PPP supports Multilink PPP and provide Multilink connection. By doing this it provides a single function link.

PPS uses LCP (Link Control Protocol) and NCP (Network Control Protocol). LCP is responsible of the establishment of the link. NCP is responsible from the transmission of IP and other protocols across the PPP link.

PPP Frame
PPP has a similar frame like HDLC. But, in PPP there is an additional Protocol field that imply the protocol used. You can find PPP frame sheme below:
Comparison of HDLC and PPP

HDLC and PPP are two WAN Protocols. Beside the similar part of these WAN Protocols, they have sime differences. These differences are mentioned below: