PPP (Point-to-Point Protocol), is the most widely used method for transporting IP packets over a serial link between the user and the Internet Service Provider (ISP).
Although PPP is primarily used over dialup lines, variants such as PPoE (PPP over Ethernet) and PPoA (PPP over ATM) extend PPP to new data-link layer protocols.
PPP was designed to enable the transmission of different protocols over one point-to-point link by utilizing encapsulation. Encapsulation is the process of storing packets from the foreign protocol inside PPP frames.
In addition to this encapsulation function, PPP also provides:
A Link Control Protocol (LCP) for establishing, configuring, and testing the data-link connection.
A suite of Network Control Protocols (NCPs) for establishing and configuring different network-layer protocols.
PPP LCP
The PPP Link Control Protocol is responsible for establishing, configururing, managing, and terminating the point-to-point link.
LCP accomplishes these tasks through the use of simple control messages:
Link Configuration messages used to establish and configure a link:
Configure-Request
Configure-Ack
Configure-Nak
Configure-Reject
Link Termination messages used to terminate a link:
Terminate-Request
Terminate-Ack
Link Maintenance messages used to manage and debug a link:
Code-Reject
Protocol-Reject
Echo-Request
Echo-Reply
Discard-Request
PPP NCPs
A PPP Network Control Protocol must be defined for each type of network packet which is to be encapsulated and transmitted across the PPP link.
Some of the defined PPP NCP's are:
Internet Protocol Control Protocol
OSI Network Layer Control Protocol
Xerox NS IDP Control Protocol
DECnet Phase IV Control Protocol
Appletalk Control Protocol
Novell IPX Control Protocol
Bridging NCP
Stream Protocol Control Protocol
Banyan Vines Control Protocol
Multi-Link Control Protocol
NETBIOS Framing Control Protocol
Cisco Systems Control Protocol
Ascom Timeplex
Fujitsu LBLB Control Protocol
DCA Remote Lan Network Control Protocol (RLNCP)
Serial Data Control Protocol (PPP-SDCP)
SNA over 802.2 Control Protocol
SNA Control Protocol
IP6 Header Compression Control Protocol
Stampede Bridging Control Protocol
Compression on single link in multilink group control