Point-to-Point Protocol


Introduction
The Point-to-Point Protocol (PPP) originally emerged as an encapsulation protocol for transporting IP
traffic over point-to-point links. PPP also established a standard for the assignment and management of
IP addresses, asynchronous (start/stop) and bit-oriented synchronous encapsulation, network protocol
multiplexing, link configuration, link quality testing, error detection, and option negotiation for such
capabilities as network layer address negotiation and data-compression negotiation. PPP supports these
functions by providing an extensible Link Control Protocol (LCP) and a family of Network Control
Protocols (NCPs) to negotiate optional configuration parameters and facilities. In addition to IP, PPP
supports other protocols, including Novell's Internetwork Packet Exchange (IPX) and DECnet.


PPP Components
PPP provides a method for transmitting datagrams over serial point-to-point links. PPP contains three
main components:
• Amethodforencapsulatingdatagramsoverseriallinks.PPPusestheHigh-LevelDataLinkControl
(HDLC) protocol as a basis for encapsulating datagrams over point-to-point links. (See Chapter 16,
“Synchronous Data Link Control and Derivatives,” for more information on HDLC.)
• An extensible LCP to establish, configure, and test the data link connection.
• A family of NCPs for establishing and configuring different network layer protocols. PPP is
designed to allow the simultaneous use of multiple network layer protocols.


General Operation
To establish communications over a point-to-point link, the originating PPP first sends LCP frames to
configure and (optionally) test the data link. After the link has been established and optional facilities
have been negotiated as needed by the LCP, the originating PPP sends NCP frames to choose and
configure one or more network layer protocols. When each of the chosen network layer protocols has
beenconfigured,packetsfromeachnetworklayerprotocolcanbesentoverthelink.Thelinkwillremain
configured for communications until explicit LCP or NCP frames close the link, or until some external
event occurs (for example, an inactivity timer expires or a user intervenes).


Physical Layer Requirements
PPPiscapableofoperatingacrossanyDTE/DCEinterface.ExamplesincludeEIA/TIA-232-C(formerly
RS-232-C), EIA/TIA-422 (formerly RS-422), EIA/TIA-423 (formerly RS-423), and International
TelecommunicationUnionTelecommunicationStandardizationSector(ITU-T)(formerlyCCITT)V.35.
The only absolute requirement imposed by PPP is the provision of a duplex circuit, either dedicated or
switched, that can operate in either an asynchronous or synchronous bit-serial mode, transparent to PPP
link layer frames. PPP does not impose any restrictions regarding transmission rate other than those
imposed by the particular DTE/DCE interface in use.



PPP Link Layer
PPP uses the principles, terminology, and frame structure of the International Organization for
Standardization (ISO) HDLC procedures (ISO 3309-1979), as modified by ISO 3309:1984/PDAD1
“Addendum 1: Start/Stop Transmission.” ISO 3309-1979 specifies the HDLC frame structure for use in
synchronousenvironments.ISO3309:1984/PDAD1specifiesproposedmodificationstoISO3309-1979
to allow its use in asynchronous environments. The PPP control procedures use the definitions and
controlfieldencodingsstandardizedinISO4335-1979andISO4335-1979/Addendum1-1979.

The following descriptions summarize the PPP frame fields :
• Flag—A single byte that indicates the beginning or end of a frame. The flag field consists of the
binary sequence 01111110.
• Address—A single byte that contains the binary sequence 11111111, the standard broadcast
address. PPP does not assign individual station addresses.
• Control—A single byte that contains the binary sequence 00000011, which calls for transmission
of user data in an unsequenced frame. A connectionless link service similar to that of Logical Link
Control (LLC) Type 1 is provided. (For more information about LLC types and frame types, refer
to Chapter 16.)
• Protocol—Two bytes that identify the protocol encapsulated in the information field of the frame.
The most up-to-date values of the protocol field are specified in the most recent Assigned Numbers
Request For Comments (RFC).
• Data—Zero or more bytes that contain the datagram for the protocol specified in the protocol field.
The end of the information field is found by locating the closing flag sequence and allowing 2 bytes
for the FCS field. The default maximum length
oftheinformationfieldis1,500bytes.Byprioragreement,consentingPPPimplementationscanuse
other values for the maximum information field length.
• Frame check sequence (FCS)—Normally 16 bits (2 bytes). By prior agreement, consenting PPP
implementations can use a 32-bit (4-byte) FCS for improved error detection.
The LCP can negotiate modifications to the standard PPP frame structure. Modified frames, however,
always will be clearly distinguishable from standard frames.


PPP Link-Control Protocol
The PPP LCP provides a method of establishing, configuring, maintaining, and terminating the
point-to-point connection. LCP goes through four distinct phases.
First, link establishment and configuration negotiation occur. Before any network layer datagrams (for
example, IP) can be exchanged, LCP first must open the connection and negotiate configuration
parameters.Thisphaseiscompletewhenaconfiguration-acknowledgmentframehasbeenbothsentand
received.
This is followed by link quality determination. LCP allows an optional link quality determination phase
following the link-establishment and configuration-negotiation phase. In this phase, the link is tested to
determine whether the link quality is sufficient to bring up network layer protocols. This phase is
optional.LCPcandelaytransmissionofnetworklayerprotocolinformationuntilthisphaseiscomplete.
At this point, network layer protocol configuration negotiation occurs. After LCP has finished the link
quality determination phase, network layer protocols can be configured separately by the appropriate
NCP and can be brought up and taken down at any time. If LCP closes the link, it informs the network
layer protocols so that they can take appropriate action.
Finally, link termination occurs. LCP can terminate the link at any time. This usually is done at the
request of a user but can happen because of a physical event, such as the loss of carrier or the expiration
of an idle-period timer.
ThreeclassesofLCPframesexist.Link-establishmentframesareusedtoestablishandconfigurealink.
Link-termination frames are used to terminate a link, and link-maintenance frames are used to manage
and debug a link.
These frames are used to accomplish the work of each of the LCP phases.


Summary
The Point-to-Point Protocol (PPP) originally emerged as an encapsulation protocol for transporting IP
traffic over point-to-point links. PPP also established a standard for assigning and managing IP
addresses, asynchronous and bit-oriented synchronous encapsulation, network protocol multiplexing,
link configuration, link quality testing, error detection, and option negotiation for added networking
capabilities.
PPP provides a method for transmitting datagrams over serial point-to-point links, which include the
following three components:
• A method for encapsulating datagrams over serial links
• An extensible LCP to establish, configure, and test the connection
• A family of NCPs for establishing and configuring different network layer protocols
PPP is capable of operating across any DTE/DCE interface. PPP does not impose any restriction
regarding transmission rate other than those imposed by the particular DTE/DCE interface in use.
Six fields make up the PPP frame. The PPP LCP provides a method of establishing, configuring,
maintaining, and terminating the point-to-point connection.