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
  • Compression Control Protocol

PPP Standards

PPP is officially defined in RFC 1661: The Point-to-Point-Protocol (PPP).