Point-to-Point Protocol



in computer networking point-to-point protocol is a data link protocol used to establish a direct connection between two nodes it can provide connection authentication transmission encryption and compression PPP is used over many types of physical networks including serial cable phone line trunk line cellular telephone specialized radio links and fiber-optic links such as s o ne T PPP is also used over Internet access connections Internet service providers have used PPP for customer dial-up access to the Internet since IP packets cannot be transmitted over a modem line on their own without some data link protocol two derivatives of PPP point-to-point protocol over Ethernet and point-to-point protocol over ATM are used most commonly by Internet service providers to establish a digital subscriber line internet service connection with customers PPP is commonly used as a data link layer protocol for connection over synchronous and asynchronous circuits where it has largely superseded the older serial line Internet Protocol and telephone company mandated standards in the x.25 protocol suite the only requirement for PPP is that the circuit provided be full duplex PPP was designed to work with numerous network layer protocols including Internet Protocol trill novels internetwork packet exchange NBF decnet and Apple talk description PPP was designed somewhat after the original hdl-c specifications the designers of PPP included many additional features that had been seen only in proprietary data link protocols up to that time RFC 2516 describes point-to-point protocol over Ethernet as a method for transmitting PPP over ethernet that is sometimes used with dsl RFC 2364 describes point-to-point protocol over ATM as a method for transmitting PPP over ATM adaptation layer 5 which is also a common alternative to pppoe used with dsl PPP is a layered protocol that has three components an encapsulation component that is used to transmit data grams over the specified physical layer a link control protocol to establish configure and test the link as well as negotiate capabilities one or more NC PS used to negotiate optional configuration parameters and facilities for the network layer there is one network control protocol for each protocol supported by PPP PPP is specified in RFC 1661 automatic self configuration link control protocol initiates and terminates connections gracefully allowing hosts to negotiate connection options it is an integral part of PPP and is defined in the same standard specification LCP provides automatic configuration of the interfaces at each end and for selecting optional authentication the LCP protocol runs on top of PPP and therefore a basic PPP connection has to be established before LCP is able to configure it RFC 1994 describes challenge handshake authentication protocol which is preferred for establishing dial-up connections with ISPs although deprecated password authentication protocol is still sometimes used another option for authentication over PPP is extensible authentication protocol described in RFC 2284 after the link has been established additional network configuration may take place most commonly the Internet Protocol control protocol is used although internetwork packet exchange control protocol and appletalk control protocol were once very popular Internet Protocol version 6 control protocol will see extended use in the future when ipv6 replaces ipv4 s position as the dominant layer 3 protocol multiple network layer protocols PPP permits multiple network layer protocols to operate on the same communication link for every network layer protocol used a separate network control protocol is provided in order to encapsulate and negotiate options for the multiple Network Claire protocols it negotiates network layer information for example network address or compression options after the connection has been established for example Internet Protocol uses the IP control protocol and internetwork packet exchange uses the Novell IPX control protocol NCP s include fields containing standardized codes to indicate the network layer protocol type that the PPP connection encapsulates looped link detection PPP detects loop links using a feature involving magic numbers when the node sends PPP LCP messages these messages may include a magic number if a line is looped the node receives an LC P message with its own magic number instead of getting a message with the peers magic number PPP configuration options the previous section introduced the use of LCP options to meet specific wan connection requirements PPP may include the following LCP options authentication peer routers exchange authentication messages to authentication choices our password authentication protocol and challenge handshake authentication protocol authentication is explained in the next section compression increases the effective throughput on PPP connections by reducing the amount of data in the frame that must travel across the link the protocol decompresses the frame at its destination see RFC 1962 for more details error detection identifies fault conditions the quality and magic number options help ensure a reliable loop free data link the magic number field helps in detecting links that are in a looped back condition until the magic number configuration option has been successfully negotiated the magic number must be transmitted as 0 magic numbers are generated randomly at each end of the connection multi-link provides load balancing several interfaces used by PPP through multi-link PPP PPP frame structure of a PPP frame the protocol field indicates the type of payload packet the information field contains the PPP payload it has a variable length with a negotiated maximum called the maximum transmission unit by default the maximum is 1500 octets it might be padded on transmission if the information for a particular protocol can be padded that protocol must allow information to be distinguished from padding encapsulation PPP frames are encapsulated in a lower layer protocol that provides framing and may provide other functions such as a checksum to detect transmission errors PPP on serial links is usually encapsulated in a framing similar to hdl-c described by IETF RFC 1662 the flag field is present when PPP with hdl-c like framing is used the address and control fields always have the value hex FF and hex o 3 and can be omitted whenever PPP LCP address and control field compression is negotiated the frame check sequence field is used for determining whether an individual frame has an error it contains a checksum computed over the frame to provide basic protection against errors in transmission this is a CRC code similar to the one used for other layer 2 protocol error protection schemes such as the one used in Ethernet according to RFC 1662 it can be either 16 bits or 32 bits in size the FCS is calculated over the address control protocol information and padding fields after the message has been encapsulated PPP line activation and phases the phases of the point-to-point protocol according to RFC 1661 are listed below link dead this phase occurs when the link fails or one side has been told to disconnect link establishment phase this phase is where link control protocol negotiation is attempted if successful control goes either to the authentication phase or the network layer protocol phase depending on whether authentication is desired authentication phase this phase is optional allows the sides to authenticate each other before a connection is established if successful control goes to the network layer protocol phase Network layer protocol phase this phase is where each desired protocols network control protocols are invoked for example IP CP is used in establishing IP service over the line data transport for all protocols which are successfully started with their network controlled protocols also occurs in this phase closing down of network protocols also occur in this phase link termination phase this phase closes down this connection this can happen if there is an authentication failure if there are so many checksum errors that the two parties decide to tear down the link automatically if the link suddenly fails or if the user decides to hang up his connection PPP over several links multi-link PPP multi-link PPP provides a method for spreading traffic across multiple distinct PPP connections it is defined in RFC 1990 it can be used for example to connect a home computer to an Internet service provider using to traditional 56k modems or to connect a company through two leased lines on a single PPP line frames cannot arrive out of order but this is possible when the frames are divided among multiple PPP connections therefore multi-link PPP must number the fragments so they can be put in the right order again when they arrive multi-link PPP is an example of a link aggregation technology Cisco IOS release 11.1 and later supports multi-link PPP multi-class PPP with PPP one cannot establish several simultaneous distinct PPP connections over a single link that's not possible with multi-link PPP either multi-link PPP uses contiguous numbers for all the fragments of a packet and as a consequence it is not possible to suspend the sending of a sequence of fragments of one packet in order to send another packet this prevents from running multi-link PPP multiple times on the same links multi-class PPP is a kind of multi-link PPP where each class of traffic use is a separate sequence number space and reassembly buffer multi class PPP is defined in RFC 2686 PPP and tunnels derived protocols PPTP is a form of PPP between two hosts via GRE using encryption and compression PPP as a layer 2 protocol between both ends of a tunnel many protocols can be used to tunnel data over IP networks some of them like SSL SSH or l2tp create virtual network interfaces and give the impression of a direct physical connections between the tunnel endpoints on a linux host for example these interfaces would be called toneau as there are only two endpoints on a tunnel the tunnel is a point-to-point connection and PPP is a natural choice as a data link layer protocol between the virtual network interfaces PPP can assign IP addresses to these virtual interfaces and these IP addresses can be used for example to route between the networks on both sides of the tunnel EPSA in tunneling mode does not create virtual physical interfaces at the end of the tunnel since the tunnel is handled directly by the tcp/ip stack l2tp can be used to provide these interfaces this technique is called l2tp Zook in this case two PPP provides IP addresses to the extremities of the tunnel see also diameter extensible authentication protocol haze command set link access procedure for modems multi-protocol encapsulation for MPEG transport stream point-to-point protocol daemon pppoe X radius shortest path bridging unidirectional lightweight encapsulation for MPEG transport stream references RFC s PPP is defined in RFC 1661 RFC 1547 provides historical information about the need for PPP and its development a series of related rfcs have been written to define how a variety of network control protocols including tcp/ip decnet appletalk IPX and others work with PPP RFC 1661 standard 51 the point-to-point protocol RFC 1662 standard 51 PPP in hdl-c like framing RFC 1962 PPP compression control protocol RFC 1963 PPP serial data transport protocol RFC 1990 the PPP multi link protocol RFC 1994 PPP challenge handshake authentication protocol RFC 2153 informational PPP vendor extensions RFC 2284 PPP extensible authentication protocol RFC 2364 PPP over ATM RFC 2516 PPP over ethernet RFC 2615 PPP over s o n ET SDH RFC 2686 the multi-class extension to multi-link PPP RFC 2687 proposed standard PPP in a real-time oriented hdl-c like framing RFC 50 72 IP version 6 over PPP RFC 51 72 negotiation for ipv6 Datagram compression using ipv6 control protocol RFC 63-61 PPP transparent interconnection of lots of links protocol control protocol

3 thoughts on “Point-to-Point Protocol

Leave a Reply

Your email address will not be published. Required fields are marked *