RFC 2661:Layer Two Tunneling Protocol "L2TP"
RFC-Ref

L2TP


Click on the red underlined text to get to the source

... L2TP extends the PPP model by allowing the L2 and PPP endpoints ...
... endpoints to reside on different devices interconnected by a packet-switched network. With L2TP, a user has an L2 connection to an access concentrator (e.g., modem ...
... having the L2 circuit terminate in a NAS directly or using L2TP. ...
... L2TP may also solve the multilink hunt-group splitting problem. Multilink PPP ...
... PPP session to a location other than the point at which it was physically received, L2TP can be used to make all channels terminate at a single NAS ...
... Remote System and LAC results in a corresponding L2TP Session within a previously established Tunnel ...
... Outgoing Call). L2TP Access Concentrator (LAC) ...
... A node that acts as one side of an L2TP tunnel endpoint and is a peer to the L2TP Network Server ...
... L2TP tunnel endpoint and is a peer to the L2TP Network Server (LNS). The LAC sits between an ...
... LNS requires tunneling with the L2TP protocol as defined in this document. The connection from the LAC ...
... link. L2TP Network Server (LNS) ...
... A node that acts as one side of an L2TP tunnel endpoint and is a peer to the L2TP Access Concentrator ...
... L2TP tunnel endpoint and is a peer to the L2TP Access Concentrator (LAC). The LNS is the ...
... When used in context with L2TP, peer refers to either the LAC or LNS ...
... Session L2TP is connection-oriented. The LNS and LAC ...
... state for each Call that is initiated or answered by an LAC. An L2TP Session is created ...
... LAC and LNS. There is a one to one relationship between established L2TP Sessions and their associated Calls. (See also: Call). ...
... Tunnel consists of a Control Connection and zero or more L2TP Sessions. The Tunnel ...
... ZLB) Message A control packet with only an L2TP header. ZLB messages are used ...


... The following diagram depicts a typical L2TP scenario. The goal is to tunnel PPP ...
... A LAC Client (a Host which runs L2TP natively) may also participate in tunneling to the Home LAN ...
... PPP connection is then created and the local L2TP LAC Client software creates a tunnel ...


... L2TP utilizes two types of messages, control messages and data messages. Control messages ...
... tunnel. Control messages utilize a reliable Control Channel within L2TP to guarantee delivery (see section 5.1 for details). Data messages ...
... PPP Frames | +-------------------+ +-----------------------+ | L2TP Data Messages| | L2TP Control Messages ...
... | L2TP Data Messages| | L2TP Control Messages | +-------------------+ +-----------------------+ ...
... Control Messages | +-------------------+ +-----------------------+ | L2TP Data Channel | | L2TP Control Channel ...
... | L2TP Data Channel | | L2TP Control Channel | | (unreliable) | | (reliable) | ...
... +------------------------------------------------+ Figure 3.0 L2TP Protocol Structure Figure 3.0 depicts the relationship of PPP ...
... Figure 3.0 depicts the relationship of PPP frames and Control Messages over the L2TP Control and Data Channels. PPP Frames are ...
... passed over an unreliable Data Channel encapsulated first by an L2TP header and then a Packet Transport ...
... ATM, etc. Control messages are sent over a reliable L2TP Control Channel which transmits packets in-band ...
... L2TP Header Format ...
... L2TP packets for the control channel and data channel share a common ...
... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 3.1 L2TP Message Header ...
... Ver MUST be 2, indicating the version of the L2TP data message header ...
... L2F [RFC2341] packets should they arrive intermixed with L2TP packets. Packets received with an unknown Ver field MUST be discarded. ...
... Tunnel ID indicates the identifier for the control connection. L2TP tunnels are named by identifiers that have local significance only. That is, the same tunnel ...
... session within a tunnel. L2TP sessions are named by identifiers that have local significance ...
... The Offset Size field, if present, specifies the number of octets past the L2TP header at which the payload data is expected to start ...
... start. Actual data within the offset padding is undefined. If the offset field is present, the L2TP header ends after the last octet of the offset padding. ...


... encoding message types and bodies is used throughout L2TP. This encoding will be termed AVP (Attribute-Value ...
... AVPs defined within this document. Any vendor wishing to implement their own L2TP extensions can use their own Vendor ID along with private Attribute ...
... The following sections contain a list of all L2TP AVPs defined in this document. ...
... The Error Codes defined below pertain to types of errors that are not specific to any particular L2TP request, but rather to protocol or message format errors. If an L2TP ...
... L2TP request, but rather to protocol or message format errors. If an L2TP reply indicates in its Result Code that a general error occurred, the General Error value ...
... The Protocol Version AVP, Attribute Type 2, indicates the L2TP protocol version of the sender ...
... 1. Rev field is a 1 octet unsigned integer containing 0. This pertains to L2TP protocol version 1, revision 0. Note this is not the same version number ...
... For devices which do not have a firmware revision (general purpose computers running L2TP software modules, for instance), the revision of the L2TP software module may be reported instead. ...
... computers running L2TP software modules, for instance), the revision of the L2TP software module may be reported instead. This AVP ...
... tunnels between the LNS and LAC. The L2TP peer MUST place this value in the Tunnel ID header field ...
... LNS and LAC. The L2TP peer MUST place this value in the Session ID header field ...


... tunneling a PPP session with L2TP consists of two steps, (1) establishing the Control Connection for a Tunnel ...
... Control Connection MUST be established before an incoming or outgoing call is initiated. An L2TP Session MUST be established before L2TP ...
... L2TP Session MUST be established before L2TP can begin to tunnel PPP ...
... +-----+ +-----+ | |~~~~~~~~~~L2TP Tunnel~~~~~~~~~~| | | LAC | | LNS ...
... Control Connection######## | [Remote] | | | | [System]------Call----------*============L2TP Session=============* | PPP ...
... | | | | [Remote] | | | | [System]------Call----------*============L2TP Session=============* | PPP ...
... control connection includes securing the identity of the peer, as well as identifying the peer's L2TP version, framing, and bearer capabilities, etc. ...
... L2TP incorporates a simple, optional, CHAP-like [RFC1994] tunnel ...
... link framing, and transparency bytes, encapsulated in L2TP, and forwarded over the appropriate tunnel. The LNS ...
... appropriate tunnel. The LNS receives the L2TP packet, and processes the encapsulated PPP ...
... Sequence numbers are defined in the L2TP header for control messages ...
... tunnel. Unlike the L2TP control channel, the L2TP data channel ...
... Unlike the L2TP control channel, the L2TP data channel does not use sequence numbers ...
... A keepalive mechanism is employed by L2TP in order to differentiate tunnel outages from extended periods of no control or data activity ...
... L2TP provides a lower level reliable transport service for all control messages ...
... (see section 3.1) belong to this transport. The upper level functions of L2TP are not concerned with retransmission or ordering of control messages ...
... The last received message number, Nr, is used to acknowledge messages received by an L2TP peer. It contains the sequence number of the message the peer expects to receive next (e.g. the last Ns of a non- ...
... for flow controlling control messages. An L2TP implementation is expected to be able to keep up with incoming control messages, ...


... The following control connection messages are used to establish, clear and maintain L2TP tunnels. All data is sent in network order (high order octets first). Any "reserved" or "empty" fields MUST be ...
... The Hello (HELLO) message is an L2TP control message sent by either peer of a LAC-LNS ...
... message exchange used for establishing a session within an L2TP tunnel. ICRQ ...
... message exchange used for establishing sessions within an L2TP tunnel. ICRP ...
... to answer the call if it has not already done so. It also allows the LNS to indicate necessary parameters for the L2TP session. ...
... message exchange used for establishing sessions within an L2TP tunnel. ICCN ...
... ICCN is used to indicate that the ICRP was accepted, the call has been answered, and that the L2TP session should move to the established state ...
... message exchange used for establishing a session within an L2TP tunnel. OCRQ ...
... LAC for this call and provides the LAC with parameter information for both the L2TP session, and the call that is to be placed ...
... three message exchange used for establishing a session within an L2TP tunnel. OCRP ...
... message exchange used for establishing a session within an L2TP tunnel. OCCN ...
... The Call-Disconnect-Notify (CDN) message is an L2TP control message sent by either the LAC ...
... The WAN-Error-Notify message is an L2TP control message sent by the LAC ...
... The Set-Link-Info message is an L2TP control message sent by the LNS ...


... This section describes the operation of various L2TP control connection functions and the Control Connection messages which are ...
... The L2TP control connection protocol is not distinguishable between the LNS ...


... L2TP Over Specific Media ...
... L2TP is self-describing, operating at a level above the media over which it is carried. However, some details of its connection to media ...
... L2TP over UDP/IP ...
... L2TP uses the registered UDP port 1701 [RFC1700]. The entire L2TP ...
... L2TP uses the registered UDP port 1701 [RFC1700]. The entire L2TP packet, including payload and L2TP ...
... L2TP packet, including payload and L2TP header, is sent within a UDP ...
... datagram. The initiator of an L2TP tunnel picks an available source UDP port (which may or may not be 1701), and sends to the desired destination address ...
... initiating the tunnel, i.e., 1701) may make it more difficult for L2TP to traverse some NAT devices. Implementors should consider the ...
... IP fragmentation may occur as the L2TP packet travels over the IP substrate. L2TP ...
... L2TP packet travels over the IP substrate. L2TP makes no special efforts to optimize this. A LAC implementation MAY cause its LCP ...
... LAC environments in which the MTU's of the path over which the L2TP packets are likely to travel have a consistent value. ...
... consistent value. The default for any L2TP implementation is that UDP checksums MUST be enabled for both control and data messages ...
... UDP checksums MUST be enabled for both control and data messages. An L2TP implementation MAY provide an option to disable UDP checksums for data messages ...
... Port 1701 is used for both L2F [RFC2341] and L2TP packets. The Version field in each header ...
... two packet types (L2F uses a value of 1, and the L2TP version described in this document uses a value of 2). An L2TP ...
... L2TP version described in this document uses a value of 2). An L2TP implementation running on a system which does not support L2F MUST silently discard ...
... To the PPP clients using an L2TP-over-UDP/IP tunnel, the PPP ...
... per-packet indication of error, such as TCP header compression. Sequencing may be handled by using L2TP data message sequence numbers if any protocol being transported by the PPP ...
... no upper PPP protocol will encounter lost packets. If L2TP sequence numbers are enabled, L2TP can detect the packet loss ...
... lost packets. If L2TP sequence numbers are enabled, L2TP can detect the packet loss. In the case of an LNS ...
... an LNS, the PPP and L2TP stacks are both present within the LNS, and packet loss ...
... NOT be used. In general, it is wise to remember that the L2TP/UDP/IP transport ...
... When operating in IP environments, L2TP MUST offer the UDP encapsulation ...


... L2TP encounters several security issues in its operation. The general approach of L2TP ...
... L2TP encounters several security issues in its operation. The general approach of L2TP to these issues is documented here. ...
... Securing L2TP requires that the underlying transport make available encryption ...
... encryption, integrity and authentication services for all L2TP traffic. This secure transport ...
... traffic. This secure transport operates on the entire L2TP packet and is functionally independent of PPP and the protocol being carried ...
... PPP and the protocol being carried by PPP. As such, L2TP is only concerned with confidentiality, authenticity, and integrity ...
... confidentiality, authenticity, and integrity of the L2TP packets between its tunnel endpoints (the LAC and LNS ...
... Protecting the L2TP packet stream via a secure transport does, in ...
... L2TP and IPsec ...
... ESP and/or AH. All L2TP control and data packets for a particular tunnel ...
... authentication provided by IPsec tunnel mode and that provided by L2TP secured with IPsec provide an equivalent level of security ...
... as IP address, ports, etc. In the L2TP tunneling model, analogous filtering ...
... network layer above L2TP. These network layer access control ...
... requirements for access control mechanisms are not a part of the L2TP specification and as such are outside the scope of this document. ...
... L2TP defines AVPs that MAY be exchanged during session establishment ...


... The basic concept for L2TP and many of its protocol constructs were adopted from L2F ...
... Dory Leifer made valuable refinements to the protocol definition of L2TP and contributed to the editing of this document. Steve Cobb and Evan Caves redesigned the state machine ...



Google
Web
RFC-Ref