*** Go back here. To the top page here. Read on here.


2. What is PPP?

  1. Introduction
  2. PPP features which may or may not be present
  3. PPP glossary
  4. PPP-relevant RFC's

2.1 Introduction

PPP is the Internet Standard for transmission of IP packets over serial lines. PPP supports async and sync lines. For a general discussion of PPP, and of the PPP vs. SLIP question, look at this introductory paper, held at Sun Users Group (hypertext, PostScript) and sug91-cheapIP.shar.Z (overhead projector slides)

2.2 PPP features which may or may not be present

Above and beyond compatibility with basic PPP framing, note whether the software implements the following features. Not all features are needed or even desired in every product. Please note also that not every free or commercial product description in this document has a complete list of all features includes.
demand-dial
Bring up a PPP interface and dial the phone when packets are queued for delivery; bring the interface down after some period of inactivity.
redial (For lack of a better term)
Bring up a PPP interface whenever it goes down, to keep a line up. (sometimes called camping)
camping (on a line)
see redial
scripting
Negotiate through a series of prompts or intermediate connections to bring up a PPP link, much like the sequence of events used to bring up a UUCP link.
parallel
Configure several PPP lines to the same destination and do load sharing between them. Standardized as "Multilink PPP (RFC 1990). (I've been told that the Linux people coined (as usual) their own term, "EQL".)
filtering
Select which packets to send down a link or whether to bring up a "demand-dial" link based on IP or TCP packet type or TOS, e.g. don't dial the phone for ICMP ping packets.
header compression
TCP header compression according to RFC1144. Marginally useful on high speed lines, essential for low speed lines.
server
Accept incoming PPP connections, which might well also include doing the right things with routing.
tunneling
Build a virtual network over a PPP link across a TCP stream through an existing IP network.
extra escaping
Byte-stuffing characters outside the negotiated asyncmap, configurable in advance but not negotiable.

2.3 PPP glossary

Every new technology breeds its own set of acronyms. PPP is no different. Here is a glossary of sorts.
ack
Acknowledgement.
AO
Active open [state diagram] (no lonter part of the FSM as of RFC1331)
C
Close [state diagram]
CHAP
Challenge-Handshake Authentication Protocol (RFC1334)
D
Lower layer down [state diagram]
DES
Data Encryption Standard
DNA
Digital Network Architecture
IETF
Internet Engineering Task Force.
IP
Internet Protocol
IPCP
IP Control Protocol.
IPX
Internetwork Packet Exchange (Novell's networking stack)
FCS
Frame Check Sequence [X.25]
FSA
Finite State Automaton
FSM
Finite State Maschine
LCP
Link Control Protocol.
LQR
Link Quality Report.
MD4
MD4 digital signature algorithm
MD5
MD5 digital signature algorithm
MRU
Maximum Receive Unit
MTU
Maximum Transmission Unit
nak
Negative Acknowledgement
NCP
Network Control Protocol.
NRZ
Non-Return to Zero bit encoding. (SYNC ppp default because of availability)
NRZI
Non-Return to Zero Inverted bit encoding. (SYNC ppp preferred alternative to NRZ)
OSI
Open Systems Interconnect
PAP
Password Authentication Protocol (RFC1334)
PDU
Protocol Data Unit (i.e., packet)
PO
Passive open [no longer part of state diagram]
PPP
Point to Point Protocol ( RFC1548 / RFC1549, 1332, 1333, 1334, 1551, 1376, 1377, 1378)
RCA
Receive Configure-Ack [state diagram]
RCJ
Receive Code-Reject [state diagram]
RCN
Receive Configure-Nak or -Reject [state diagram]
RCR+
Receive good Configure-Request [state diagram]
RER
Receive Echo-Request [no longer part of state diagram]
RFC
Request for Comments (internet standard)
RTA
Receive Terminate-Ack [state diagram]
RTR
Receive Terminate-Request [state diagram]
RUC
Receive unknown code [state diagram]
sca
Send Configure-Ack [state diagram]
scj
Send Code-Reject [state diagram]
scn
Send Configure-Nak or -Reject [state diagram]
scr
Send Configure-Request [state diagram]
ser
Send Echo-Reply [no longer part of state diagram]
sta
Send Terminate-Ack [state diagram]
str
Send Terminate-Request [state diagram]
ST-II
Stream Protocol
TO+
Timeout with counter > 0 [state diagram]
TO-
Timeout with counter expired [state diagram]
VJ
Van Jacobson (RFC1144 header compression algorithm)
XNS
Xerox Network Services

2.4 PPP relevant RFCs

Here's a list with descriptions. Note some of these are obsolete. You might also want to search for recent RFCs or internet drafts in an up-to-date RFC archive.
1990
Sklower, K.; Lloyd, B.; McGregor, G.; Carr, D.; Coradetti, T.:
The PPP Multilink Protocol(MP). 1996 August 16; 24 p. (Format: TXT=53271 bytes)
1663
Rand, D
PPP Reliable Transmission. 1994 July; 8 p. (Format: TXT=17281 bytes)
1662
Simpson, W.,ed
PPP in HDLC-like Framing. 1994 July; 25 p. (Format: TXT=48058 bytes) (Obsoletes RFC 1549)
1661
Simpson, W.,ed
The Point-to-Point Protocol (PPP). 1994 July; 52 p. (Format: TXT=103026 bytes) (Obsoletes RFC 1548)
1638
Baker, F.; Bowen, R.,eds
PPP Bridging Control Protocol (BCP). 1994 June; 28 p. (Format: TXT=58477 bytes)
1619
Simpson, W
PPP over SONET/SDH. 1994 May; 4 p. (Format: TXT=8893 bytes)
1618
Simpson, W
PPP over ISDN. 1994 May; 6 p. (Format: TXT=14896 bytes)
1598
Simpson, W
PPP in X.25. 1994 March; 7 p. (Format: TXT=13835 bytes)
1570
Simpson, W.,ed. PPP LCP Extensions. 1994 January; 18 p. (Format: TXT=35719 bytes) (Updates RFC 1548)
1553
Mathur, S.; Lewis, M. Compressing IPX Headers Over WAN Media (CIPX). 1993 December; 23 p. (Format: TXT=47450 bytes)
1552
Simpson, W. The PPP Internetwork Packet Exchange Control Protocol (IPXCP). 1993 December; 14 p. (Format: TXT=29174 bytes)
1551
Allen, M. Novell IPX Over Various WAN Media (IPXWAN). 1993 December; 22 p. (Format: TXT=54210 bytes) (Obsoletes RFC 1362)
1549
Simpson, W.,ed. PPP in HDLC Framing. 1993 December; 18 p. (Format: TXT=36353 bytes) (Obsoleted by RFC 1662)
1548
Simpson, W. The Point-to-Point Protocol (PPP). 1993 December; 53 p. (Format: TXT=111638 bytes) (Obsoletes RFC 1331; Obsoleted by RFC 1661; Updated by RFC 1570)
1547
Perkins, D. Requirements for an Internet Standard Point-to-Point Protocol. 1993 December; 21 p. (Format: TXT=49811 bytes)
1378
PPP AppleTalk Control Protocol (ATCP). Parker, B. 1992 November; 16 p. (Format: TXT=28496 bytes)
1377
PPP OSI Network Layer Control Protocol (OSINLCP). Katz, D. 1992 November; 10 p. (Format: TXT=22109 bytes)
1376
PPP DECnet Phase IV Control Protocol (DNCP). Senum, S.J. 1992 November; 6 p. (Format: TXT=12448 bytes)
1362
Allen, M. Novell IPX Over Various WAN Media (IPXWAN). 1992 September; 18 p. (Format: TXT=30220 bytes)
1334
PPP authentication protocols. Lloyd, B.; Simpson, W.A. 1992 October; 16 p. (Format: TXT=33248 bytes)
1333
PPP link quality monitoring. Simpson, W.A. 1992 May; 15 p. (Format: TXT=29965 bytes)
1332
PPP Internet Protocol Control Protocol (IPCP). McGregor, G. 1992 May; 12 p. (Format: TXT=17613 bytes) (Obsoletes RFC1172)
1331
Point-to-Point Protocol (PPP) for the transmission of multi-protocol datagrams over point-to-point links. Simpson, W.A. 1992 May; 66 p. (Format: TXT=129892 bytes) (Obsoletes RFC1171, RFC1172; obsoleted by RFC 1548)
1220
Point-to-Point Protocol extensions for bridging. Baker, F.,ed. 1991 April; 18 p. (Format: TXT=38165 bytes)
1172
Point-to-Point Protocol (PPP) initial configuration options. Perkins, D.; Hobby, R. 1990 July; 38 p. (Format: TXT=76132 bytes) (Obsoleted by RFC1331, RFC1332)
1171
Point-to-Point Protocol for the transmission of multi-protocol datagrams over Point-to-Point links. Perkins, D. 1990 July; 48 p. (Format: TXT=92321 bytes) (Obsoletes RFC1134; Obsoleted by RFC1331)
1134
Point-to-Point Protocol: A proposal for multi-protocol transmission of datagrams over Point-to-Point links. Perkins, D. 1989 November; 38 p. (Format: TXT=87352 bytes) (Obsoleted by RFC1171)
1144
Compressing TCP/IP headers for low-speed serial links. Jacobson, V. 1990 February; 43 p. (Format: TXT=120959 PS=534729 bytes)
In comp.protocols.ppp (Message-ID: <BOB.92Dec3145948@volitans.MorningStar.Com>)
bob@MorningStar.Com (Bob Sutterfield)
wrote :

All of 1134, 1171, and 1172 (and 1055, for that matter :-) have been obsoleted. They're interesting only if you want to debug a connection with an ancient PPP implementation, and you're wondering why (e.g.) it asked you for IPCP option 2 with a length of only 4, and Compression-Type 0x0037.

(There's a lot of that still running around - be careful out there.)


*** Go back here. To the top page here. Read on here.