RFC 1171 (rfc1171) - Page 1 of 48
Point-to-Point Protocol for the transmission of multi-protocol datagrams over Point-to-Point links
Alternative Format: Original Text Document
Network Working Group D. Perkins Request for Comments: 1171 CMU Obsoletes: RFC 1134 July 1990 The Point-to-Point Protocol for the Transmission of Multi-Protocol Datagrams Over Point-to-Point Links Status of this Memo This RFC specifies an IAB standards track protocol for the Internet community. Please refer to the current edition of the "IAB Official Protocol Standards" for the standardization state and status of this protocol. This proposal is the product of the Point-to-Point Protocol Working Group of the Internet Engineering Task Force (IETF). Comments on this memo should be submitted to the IETF Point-to-Point Protocol Working Group chair. Distribution of this memo is unlimited. Abstract The Point-to-Point Protocol (PPP) provides a method for transmitting datagrams over serial point-to-point links. PPP is composed of three parts: 1. A method for encapsulating datagrams over serial links. 2. An extensible Link Control Protocol (LCP). 3. A family of Network Control Protocols (NCP) for establishing and configuring different network-layer protocols. This document defines the encapsulation scheme, the basic LCP, and an NCP for establishing and configuring the Internet Protocol (IP) (called the IP Control Protocol, IPCP). The options and facilities used by the LCP and the IPCP are defined in separate documents. Control protocols for configuring and utilizing other network-layer protocols besides IP (e.g., DECNET, OSI) are expected to be developed as needed. Perkins [Page i] RFC 1171 Point-to-Point Protocol July 1990 Table of Contents 1. Introduction .......................................... 1 1.1 Motivation ...................................... 1 1.2 Overview of PPP ................................. 1 1.3 Organization of the document .................... 2 2. Physical Layer Requirements ........................... 3 3. The Data Link Layer ................................... 4 3.1 Frame Format .................................... 5 4. The PPP Link Control Protocol (LCP) ................... 9 4.1 The LCP Automaton ............................... 11 4.1.1 Overview ........................................ 11 4.1.2 State Diagram ................................... 11 4.1.3 State Transition Table .......................... 13 4.1.4 Events .......................................... 13 4.1.5 Actions ......................................... 16 4.1.6 States .......................................... 17 4.2 Loop Avoidance .................................. 20 4.3 Timers and Counters ............................. 20 4.4 Packet Format ................................... 21 4.4.1 Configure-Request ............................... 23 4.4.2 Configure-Ack ................................... 24 4.4.3 Configure-Nak ................................... 25 4.4.4 Configure-Reject ................................ 27 4.4.5 Terminate-Request and Terminate-Ack ............. 29 4.4.6 Code-Reject ..................................... 31 4.4.7 Protocol-Reject ................................. 32 4.4.8 Echo-Request and Echo-Reply ..................... 34 4.4.9 Discard-Request ................................. 36 4.5 Configuration Options ........................... 38 4.5.1 Format .......................................... 39 5. A PPP Network Control Protocol (NCP) for IP ........... 40 5.1 Sending IP Datagrams ............................ 40 APPENDICES ................................................... 42 A. Asynchronous HDLC ..................................... 42 B. Fast Frame Check Sequence (FCS) Implementation ........ 44 B.1 FCS Computation Method .......................... 44 B.2 Fast FCS table generator ........................ 46 REFERENCES ................................................... 47 Perkins [Page ii] RFC 1171 Point-to-Point Protocol July 1990 SECURITY CONSIDERATIONS ...................................... 48 CHAIRMAN'S ADDRESS ........................................... 48 Perkins [Page iii] RFC 1171 Point-to-Point Protocol July 1990 1. Introduction 1.1. Motivation In the last few years, the Internet has seen explosive growth in the number of hosts supporting TCP/IP. The vast majority of these hosts are connected to Local Area Networks (LANs) of various types, Ethernet being the most common. Most of the other hosts are connected through Wide Area Networks (WANs) such as X.25 style Public Data Networks (PDNs). Relatively few of these hosts are connected with simple point-to-point (i.e., serial) links. Yet, point-to-point links are among the oldest methods of data communications and almost every host supports point-to-point connections. For example, asynchronous RS-232-C [1] interfaces are essentially ubiquitous. One reason for the small number of point-to-point IP links is the lack of a standard encapsulation protocol. There are plenty of non- standard (and at least one defacto standard) encapsulation protocols available, but there is not one which has been agreed upon as an Internet Standard. By contrast, standard encapsulation schemes do exist for the transmission of datagrams over most popular LANs. One purpose of this memo is to remedy this problem. But even more importantly, the Point-to-Point Protocol proposes more than just an encapsulation scheme. Point-to-Point links tend to exacerbate many problems with the current family of network protocols. For instance, assignment and management of IP addresses, which is a problem even in LAN environments, is especially difficult over circuit switched point-to-point circuits (e.g., dialups). Some additional issues addressed by this specification of PPP include 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 addresses these issues by providing an extensible Link Control Protocol (LCP) and a family of Network Control Protocols (NCP) to negotiate optional configuration parameters and facilities. 1.2. Overview of PPP PPP has three main components: 1. A method for encapsulating datagrams over serial links. PPP uses HDLC as a basis for encapsulating datagrams over point- to-point links. At this time, PPP specifies the use of Perkins



