RFC3931 L2TPV3
RFC3931 L2TPV3
RFC3931 L2TPV3
J. Lau, Ed. M. Townsley, Ed. Cisco Systems I. Goyret, Ed. Lucent Technologies March 2005
Status of this Memo This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited. Copyright Notice Copyright (C) The Internet Society (2005). Abstract This document describes "version 3" of the Layer Two Tunneling Protocol (L2TPv3). L2TPv3 defines the base control protocol and encapsulation for tunneling multiple Layer 2 connections between two IP nodes. Additional documents detail the specifics for each data link type being emulated. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . 1.1. Changes from RFC 2661. . . . . . . . . . . . . . . 1.2. Specification of Requirements. . . . . . . . . . . 1.3. Terminology. . . . . . . . . . . . . . . . . . . . Topology . . . . . . . . . . . . . . . . . . . . . . . . Protocol Overview. . . . . . . . . . . . . . . . . . . . 3.1. Control Message Types. . . . . . . . . . . . . . . 3.2. L2TP Header Formats. . . . . . . . . . . . . . . . 3.2.1. L2TP Control Message Header. . . . . . . . 3.2.2. L2TP Data Message. . . . . . . . . . . . . 3.3. Control Connection Management. . . . . . . . . . . 3.3.1. Control Connection Establishment . . . . . 3.3.2. Control Connection Teardown. . . . . . . . 3.4. Session Management . . . . . . . . . . . . . . . . 3.4.1. Session Establishment for an Incoming Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 4 4 5 8 9 10 11 11 12 13 14 14 15 15
2. 3.
3.4.2.
Lau, et al.
Standards Track
[Page 1]
RFC 3931
L2TPv3
March 2005
3.4.3.
Session Teardown . . . . . . . . . . . . . . . . 16
4.
Protocol Operation . . . . . . . . . . . . . . . . . . . . . . 16
4.1.
4.1.1.
L2TPv3 over IP . . . . . . . . . . . . . . . . . 17
4.1.2.
4.1.3.
4.1.4.
IP Fragmentation Issues. . . . . . . . . . . . . 21
4.2.
4.3.
4.4.
Keepalive (Hello). . . . . . . . . . . . . . . . . . . . 26
4.5.
4.6.
4.6.1.
4.7.
4.7.1.
L2TPv3 over IP . . . . . . . . . . . . . . . . . 29
4.7.2.
4.7.3.
5.
5.1.
AVP Format . . . . . . . . . . . . . . . . . . . . . . . 30
5.2.
5.3.
5.4.
AVP Summary. . . . . . . . . . . . . . . . . . . . . . . 36
5.4.1.
5.4.2.
5.4.3.
5.4.4.
5.4.5.
6.
6.1.
Start-Control-Connection-Request (SCCRQ) . . . . . . . . 60
6.2.
Start-Control-Connection-Reply (SCCRP) . . . . . . . . . 60
6.3.
Start-Control-Connection-Connected (SCCCN) . . . . . . . 61
6.4.
Stop-Control-Connection-Notification (StopCCN) . . . . . 61
6.5.
Hello (HELLO). . . . . . . . . . . . . . . . . . . . . . 61
6.6.
Incoming-Call-Request (ICRQ) . . . . . . . . . . . . . . 62
6.7.
Incoming-Call-Reply (ICRP) . . . . . . . . . . . . . . . 63
6.8.
Incoming-Call-Connected (ICCN) . . . . . . . . . . . . . 63
6.9.
Outgoing-Call-Request (OCRQ) . . . . . . . . . . . . . . 64
7.
7.1.
7.2.
7.3.
Incoming Calls . . . . . . . . . . . . . . . . . . . . . 71
7.3.1.
Lau, et al.
Standards Track
[Page 2]
RFC 3931
L2TPv3
March 2005
7.3.2.
7.4.
Outgoing Calls . . . . . . . . . . . . . . . . . . . . . 74
7.4.1.
7.4.2.
7.5.
8.
Security Considerations. . . . . . . . . . . . . . . . . . . . 78
8.1.
8.2.
9.
Internationalization Considerations. . . . . . . . . . . . . . 79
11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 85
12. Acknowledgments. . . . . . . . . . . . . . . . . . . . . . . . 87
Editors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 93
1.
Introduction
[RFC1661] sessions.
The base L2TP protocol defined in this document consists of (1) the
L2TP sessions, and (2) the L2TP data encapsulation to multiplex and
network.
Lau, et al.
Standards Track
[Page 3]
RFC 3931
L2TPv3
March 2005
(Layer 2
At times,
general.
1.1.
tasks.
portion of the L2TP data header that was specific to the needs of
PPP.
document.
messages.
1.2.
Specification of Requirements
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
Lau, et al.
Standards Track
[Page 4]
RFC 3931
L2TPv3
March 2005
1.3.
Terminology
Zero or
more AVPs make up the body of control messages, which are used in
connections.
(See also:
A call may be
properties (e.g., type of call, called number, etc.) and its data
traffic.
Circuit
connections.
For the
Client
Control Connection
Lau, et al.
Standards Track
[Page 5]
RFC 3931
L2TPv3
March 2005
Control Message
(See also:
Control Connection.)
Data Message
Data Channel.)
Data Channel
(See also:
Incoming Call
The
call may have been placed by a remote system (e.g., a phone call
An
(See also:
an L2TP Network Server (LNS) for some sessions and an LAC for
connection.
Lau, et al.
Standards Track
[Page 6]
RFC 3931
L2TPv3
March 2005
(LNS).
A given LCCE may act as both an LNS for some sessions and
an LAC for others, so these terms must only be used within the
Outgoing Call
(See
The request
a number to dial).
Call.)
Peer
When used in context with L2TP, Peer refers to the far end of an
An LAC's peer
Pseudowire (PW)
There is one
Session.)
Pseudowire Type
Examples
Remote System
Lau, et al.
Standards Track
[Page 7]
RFC 3931
L2TPv3
March 2005
Session
connection.
Control Connection.
connection.
2.
Topology
circuit connections.)
(a) LAC-LNS Reference Model: On one side, the LAC receives traffic
packet-based network.
network.
+-----+
L2
+-----+
+-----+
+-----+
+-----+
+-----+
remote
system
(b) LAC-LAC Reference Model: In this model, both LCCEs are LACs.
Each LAC forwards circuit traffic from the remote system to the peer
L2TP session.
that is, either side of the connection may initiate a session at any
utilized).
Lau, et al.
Standards Track
[Page 8]
RFC 3931
L2TPv3
March 2005
+-----+
L2
+-----+
+-----+
L2
+-----+
+-----+
+-----+
+-----+
+-----+
remote
remote
system
system
(c) LNS-LNS Reference Model: This model has two LNSs as the LCCEs.
For example, a
premises equipment.
+-----+
+-----+
+-----+
+-----+
3.
Protocol Overview
packets", respectively).
sessions.
Data
with the associated protocol state machines that govern the dynamic
format for tunneling data packets may be utilized with or without the
information.
Lau, et al.
Standards Track
[Page 9]
RFC 3931
L2TPv3
March 2005
+-------------------+
+-----------------------+
| Tunneled Frame
+-------------------+
+-----------------------+
+-------------------+
+-----------------------+
| (unreliable)
| (reliable)
+-------------------+----+-----------------------+
+------------------------------------------------+
Data
a reliable L2TP control channel, which operates over the same PSN.
The necessary setup for tunneling a session with L2TP consists of two
An L2TP
frames.
3.1.
The Message Type AVP (see Section 5.4.1) defines the specific type of
Sections 6.1 through 6.15 for details on the construction and use of
each message):
(reserved)
(SCCRQ)
Start-Control-Connection-Request
(SCCRP)
Start-Control-Connection-Reply
(SCCCN)
Start-Control-Connection-Connected
(StopCCN)
Stop-Control-Connection-Notification
(reserved)
(HELLO)
Hello
20
(ACK)
Explicit Acknowledgement
Lau, et al.
Standards Track
[Page 10]
RFC 3931
L2TPv3
March 2005
Call Management
(OCRQ)
Outgoing-Call-Request
(OCRP)
Outgoing-Call-Reply
(OCCN)
Outgoing-Call-Connected
10
(ICRQ)
Incoming-Call-Request
11
(ICRP)
Incoming-Call-Reply
12
(ICCN)
Incoming-Call-Connected
13
(reserved)
14
(CDN)
Call-Disconnect-Notify
Error Reporting
15
(WEN)
WAN-Error-Notify
16
(SLI)
Set-Link-Info
3.2.
This section defines header formats for L2TP control messages and
3.2.1.
The L2TP control message header provides information for the reliable
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|T|L|x|x|S|x|x|x|x|x|x|x|
Ver
Length
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Control Connection ID
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Ns
Nr
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
message.
Lau, et al.
Standards Track
[Page 11]
RFC 3931
L2TPv3
March 2005
The L and S bits MUST be set to 1, indicating that the Length field
messages.
The Ver field indicates the version of the L2TP control message
The Length field indicates the total length of the message in octets,
always calculated from the start of the control message header itself
control connection.
number space.
Non-zero Control
at zero and incrementing by one (modulo 2**16) for each message sent.
to be received.
3.2.2.
depicted below.
Lau, et al.
Standards Track
[Page 12]
RFC 3931
L2TPv3
March 2005
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
L2-Specific Sublayer
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Tunnel Payload
...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
control messages.
Each type of encapsulating PSN MUST define its own session header,
for transport over UDP and one for transport over IP.
It contains
documents.
3.3.
itself.
Section 4.2.
teardown exchanges.
Lau, et al.
Standards Track
[Page 13]
RFC 3931
L2TPv3
March 2005
by the Host Name AVP, the Router ID AVP, or a combination of the two
3.3.1.
LCCE A
LCCE B
------
------
SCCRQ ->
<- SCCRP
SCCCN ->
3.3.2.
As part of
LCCE A
LCCE B
------
------
StopCCN ->
(Clean up)
(Wait)
(Clean up)
StopCCN.
Lau, et al.
Standards Track
[Page 14]
RFC 3931
L2TPv3
March 2005
3.4.
Session Management
3.4.1.
The
LCCE A
LCCE B
------
------
(Call
Detected)
ICRQ ->
<- ICRP
(Call
Accepted)
ICCN ->
3.4.2.
The
LCCE A
LCCE B
------
------
<- OCRQ
OCRP ->
(Perform
Call
Operation)
OCCN ->
(Call Operation
Completed
Successfully)
Lau, et al.
Standards Track
[Page 15]
RFC 3931
L2TPv3
March 2005
3.4.3.
Session Teardown
message exchange:
LCCE A
LCCE B
------
------
CDN ->
(Clean up)
(Clean up)
4.
Protocol Operation
4.1.
described for operation over IP, L2TP directly over IP (see Section
L2TPv3 implementations
MUST support L2TP over IP and SHOULD support L2TP over UDP for better
NAT and firewall traversal, and for easier migration from L2TPv2.
L2TP over other PSNs may be defined, but the specifics are outside
The following field definitions are defined for use in all L2TP
Session ID
significance only.
session.
Lau, et al.
Standards Track
[Page 16]
RFC 3931
L2TPv3
March 2005
Cookie
The Cookie
session.
that a data message has been directed to the proper session by the
Session ID.
4.1.1.
L2TPv3 over IP
ID 115.
4.1.1.1.
Unlike L2TP over UDP, the L2TPv3 session header over IP is free of
As
processing.
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Session ID
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The
Section 4.1.1.2).
Lau, et al.
Standards Track
[Page 17]
RFC 3931
L2TPv3
March 2005
4.1.1.2.
Unlike L2TP over UDP, which uses the T bit to distinguish between
L2TP control and data packets, L2TP over IP uses the reserved Session
It is presumed that
The entire control message header over IP, including the zero session
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|T|L|x|x|S|x|x|x|x|x|x|x|
Ver
Length
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Control Connection ID
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Ns
Nr
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
When operating directly over IP, L2TP packets lose the ability to
4.1.2.
L2TPv3 over UDP must consider other L2 tunneling protocols that may
L2F [RFC2341].
While there are efficiencies gained by running L2TP directly over IP,
Lau, et al.
Standards Track
[Page 18]
RFC 3931
L2TPv3
March 2005
4.1.2.1.
over UDP:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|T|x|x|x|x|x|x|x|x|x|x|x|
Ver
Reserved
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Session ID
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The x bits and Reserved field are reserved for future extensions.
on incoming messages.
Thus, for UDP mode on a system that supports both versions of L2TP,
the Version of the header before acting upon any of these bits.
4.1.2.2.
[RFC1700].
available source UDP port (which may or may not be 1701) and sends to
free port on its own system (which may or may not be 1701) and sends
its reply to the initiator's UDP port and address, setting its own
Lau, et al.
Standards Track
[Page 19]
RFC 3931
L2TPv3
March 2005
through this control connection) must use these same UDP ports.
source port (as opposed to using the destination port in the packet
Implementations
traffic with variant UDP ports should be able to pass L2TP UDP
4.1.2.3.
UDP Checksum
The tunneled frames that L2TP carry often have their own checksums or
L2TP endpoints.
The L2TP header itself does not have its own checksum or integrity
check.
data messages.
4.1.3.
The L2TP data channel does not provide cryptographic security of any
kind.
Either L2TP over UDP or L2TP over IP may be secured with IPsec.
L2TPv3
Lau, et al.
Standards Track
[Page 20]
RFC 3931
L2TPv3
March 2005
ignored.
The packet-level
These
communicating hosts.
are not a part of the L2TP specification, and as such, are outside
Protecting the L2TP packet stream with IPsec does, in turn, also
4.1.4.
IP Fragmentation Issues
a single unit.
sizes among the Remote System, the LCCE, and the IP network, as well
For
that, after encapsulation with its associated framing, L2TP, and IP,
does not fit in the available path MTU towards its LCCE peer, the
local LCCE may perform IPv4 fragmentation on the packet before tunnel
encapsulation.
Lau, et al.
Standards Track
[Page 21]
RFC 3931
L2TPv3
March 2005
This
encapsulation with associated framing, L2TP and IP, does not fit in
the available path MTU towards its L2TP peer, the Generic Packet
In this case, the LCCE should either send an ICMP Packet Too Big
MTU between tunnel endpoints and should work for any type of L2-
encapsulated packet.
path towards an L2TP peer must be known in advance (or the last
on the path between LCCE peers to tunnel a frame from any other
packet between the tunnel endpoints, are all valid methods for
application using L2TP would certainly not wish to have ICMP messages
LCCEs have a very large MTU (e.g., SDH/SONET) and it is known that
the MTU of all links being tunneled by L2TP have smaller MTUs (e.g.,
An implementation MUST
Lau, et al.
Standards Track
[Page 22]
RFC 3931
L2TPv3
March 2005
4.2.
L2TP provides a lower level reliable delivery service for all control
messages.
of control messages.
Each subsequent
The
65536.
value lies in the range of the last received number and the preceding
number was 15, then messages with sequence numbers 0 through 15, as
This acknowledgment
an ACK message.
All control messages take up one slot in the control message sequence
While the Nr in a
retransmit queue (see below), the Nr of the next message sent is not
Nr SHOULD be sanity-checked
for making sure that control messages are delivered in order and
order may be queued for in-order delivery when the missing messages
Lau, et al.
Standards Track
[Page 23]
RFC 3931
L2TPv3
March 2005
are received.
arrives from the peer in which the Nr field indicates receipt of this
message.
message is retransmitted.
same Ns value, but the Nr value MUST be updated with the sequence
An implementation MAY
This
If no peer
When a control connection is being shut down for reasons other than
acknowledged.
and retransmission.
Suppose A
SCCRP message.
An implementation may
Lau, et al.
Standards Track
[Page 24]
RFC 3931
L2TPv3
March 2005
avoidance mechanisms.
Appendix B contains
retransmission.
4.3.
hash over the header and body of the L2TP control message, a pre-
configured shared secret, and a local and remote nonce (random value)
calculation.
the Challenge AVP and Message Type) as in L2TPv2, the entire message
hash digest in just the SCCRP and SCCCN messages, it is now included
used for security and integrity checking between the LCCEs, the
Authentication is enabled.
Lau, et al.
Standards Track
[Page 25]
RFC 3931
L2TPv3
March 2005
The
If an
accordingly.
4.4.
Keepalive (Hello)
control messages (see Section 6.5) after a period of time has elapsed
sending LCCE declares that the control connection is down and resets
Since the control channel is operated in-band with data traffic over
the PSN, this single mechanism can be used to infer basic data
of Hello messages.
4.5.
For every
Lau, et al.
Standards Track
[Page 26]
RFC 3931
L2TPv3
March 2005
In
The peer LCCE receiving the L2TP data packet identifies the session
packet's header.
packet against the Cookie value received in the Assigned Cookie AVP
note that the Cookie field check occurs after looking up the session
match of the Cookie field and that stored in the retrieved context.
as a single value.
Finally,
the LCCE either forwards the network packet within the tunneled frame
LAC).
4.6.
operations.
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|S|x|x|x|x|x|x|
Sequence Number
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
the Sequence Number contents are undefined and MUST be ignored by the
receiver.
Lau, et al.
Standards Track
[Page 27]
RFC 3931
L2TPv3
March 2005
sequence numbers.
MUST be set to 1.
The
less than or equal to the last received number if its value lies in
the range of the last received number and the preceding (2^23-1)
values, inclusive.
4.6.1.
data channel, this part of the link has the characteristic of being
Reordering may
the link.
header compression.
using the S bit and Sequence Number field defined in the Default L2-
4.7.
Lau, et al.
Standards Track
[Page 28]
RFC 3931
L2TPv3
March 2005
4.7.1.
L2TPv3 over IP
to RFC 2661.
If one wishes to tunnel PPP over L2TPv3, and fallback to L2TPv2 only
over UDP.
4.7.2.
4.1.2.1.
When operating over UDP, L2TPv3 uses the same port (1701) as L2TPv2
and shares the first two octets of header format with L2TPv2.
The
The details of
4.7.3.
with its Ver field set to 2 (for L2TPv2), and ensuring that any
L2TPv3-specific AVPs (i.e., AVPs present within this document and not
defined within RFC 2661) in the message are sent with each M bit set
to 0, and that all L2TPv2 AVPs are present as they would be for
L2TPv2.
L2TPv2-only implementation.
Lau, et al.
Standards Track
[Page 29]
RFC 3931
L2TPv3
March 2005
This
effectively hides the fact that there are a pair of 16-bit fields in
the Ver field set to 3 and an L2TPv3 header and message format will
L2TPv3.
Note Well: The L2TPv2/v3 auto-detection mode requires that all L2TPv3
message with the Ver field set to 2 or 3 and the presence of L2TPv2-
specific AVPs.
AVPs (e.g., those defined in RFC 2661 and not in this document)
within an SCCRQ with the Ver field set to 2 (even if the M bit is set
5.
This encoding will be termed AVP (Attribute Value Pair) for the
5.1.
AVP Format
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|M|H| rsvd
Length
Vendor ID
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Attribute Type
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The first six bits comprise a bit mask that describes the general
Reserved bits
Lau, et al.
Standards Track
[Page 30]
RFC 3931
L2TPv3
March 2005
The M bit of a
given AVP MUST only be inspected and acted upon if the AVP is
Hidden (H) bit: Identifies the hiding of data in the Attribute Value
field of an AVP.
If the
this document.
extensions can use its own Vendor ID along with private Attribute
values, guaranteeing that they will not collide with any other
16 bits allocated for the Vendor ID, thus limiting this feature to
Type field and runs for the remaining octets indicated in the Length
Length is 6.
following manner:
Lau, et al.
Standards Track
[Page 31]
RFC 3931
L2TPv3
March 2005
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|M|H| rsvd
Length
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
58
32-bit Vendor ID
...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Attribute Type
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Attribute Value
...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
that this is an IETF-defined AVP, and the Attribute Type MUST be 58,
Vendor ID code.
5.2.
an ICRQ, ICRP, ICCN, SLI, etc.), then the session MUST be issued a
Code of 2 and Error Code of 8 (as defined in Section 5.4.2) and shut
down.
Thus, the M bit should only be set for AVPs that are deemed crucial
sender.
Lau, et al.
Standards Track
[Page 32]
RFC 3931
L2TPv3
March 2005
If the
AVP is recognized (as all AVPs defined in this document MUST be for a
no consequence.
For example,
extensions.
determine support for a given feature rather than using the M bit
alone.
message), rather than simply sending an AVP in the message with the M
reply message.
preferred.
5.3.
to the receiving peer whether the contents of the AVP are hidden or
present in cleartext.
information.
The H bit MUST only be set if (1) a shared secret exists between the
4.3).
at least one Random Vector AVP must also be present in the message
Lau, et al.
Standards Track
[Page 33]
RFC 3931
L2TPv3
March 2005
The shared secret between LCCEs is used to derive a unique shared key
consisting of the shared secret, and with the data being hashed
take the length and value fields of the original (cleartext) AVP and
encode them into the Hidden AVP Subformat, which appears as follows:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
...
Padding ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
This is necessary to
To mask the size of the data being hidden, the resulting subformat
For
length).
would be 6 + 4 + 2 + 12 = 24 octets.
Lau, et al.
Standards Track
[Page 34]
RFC 3931
L2TPv3
March 2005
The value of the random vector used in this hash is passed in the
The same
random vector may be used for more than one hidden AVP in the same
message, but not for hiding two or more instances of an AVP with the
same Attribute Type unless the Attribute Values in the two AVPs are
also identical.
The MD5 hash value is then XORed with the first 16-octet (or less)
segment of the Hidden AVP Subformat and placed in the Attribute Value
present in the Subformat are modified, and the length of the AVP is
not altered.
second 16-octet (or less) segment of the Subformat and placed in the
along with each XOR result to generate the next hash to XOR the next
The hiding method was adapted from [RFC2865], which was taken from
A detailed explanation of
Call the shared key S, the Random Vector RV, and the Attribute Type
A.
Break the value field into 16-octet chunks p_1, p_2, etc., with
the last one padded at the end with random data to a 16-octet
boundary.
We will also
Lau, et al.
Standards Track
[Page 35]
RFC 3931
L2TPv3
March 2005
The String will contain c_1 + c_2 +...+ c_i, where "+" denotes
concatenation.
On receipt, the random vector is taken from the last Random Vector
The
5.4.
AVP Summary
this document.
Following the name of the AVP is a list indicating the message types
of the format for the Attribute Value, and any additional information
5.4.1.
message herein and defines the context in which the exact meaning
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Message Type
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Section 3.2.1).
Lau, et al.
Standards Track
[Page 36]
RFC 3931
L2TPv3
March 2005
The Mandatory (M) bit within the Message Type AVP has special
meaning.
If the M
bit is set within the Message Type AVP and the Message Type is
cleared.
Vendor ID of the Message Type AVP to a value other than the IETF
body.
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Digest Type
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
calculation algorithm:
0 HMAC-MD5 [RFC2104]
1 HMAC-SHA-1 [RFC2104]
Lau, et al.
Standards Track
[Page 37]
RFC 3931
L2TPv3
March 2005
bytes.
MUST be 20 bytes.
A second
The derived
the key consisting of the shared secret, and with the data being
remote_nonce + control_message)
(MD5 or SHA1)
LCCE.
section.)
Note that the control message header in this case begins after
4.1.1.2), and after the UDP header when running over UDP (see
Section 4.1.2.1).
When calculating the Message Digest, the Message Digest AVP MUST
be present within the control message with the Digest Type set to
its proper value, but the Message Digest itself set to zeros.
Lau, et al.
Standards Track
[Page 38]
RFC 3931
L2TPv3
March 2005
reversed.
control message.
dropped.
nonce available.
LCCE.
valid.
control message, the Value field for both of the Message Digest
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
2 (HMAC-SHA-1).
This
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Lau, et al.
Standards Track
[Page 39]
RFC 3931
L2TPv3
March 2005
recommended.
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
AVP Hiding.
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
octets is recommended.
More than one Random Vector AVP may appear in a message, in which
case a hidden AVP uses the Random Vector AVP most closely
preceding it.
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
String.
5.4.2.
The Result Code AVP, Attribute Type 1, indicates the reason for
Lau, et al.
Standards Track
[Page 40]
RFC 3931
L2TPv3
March 2005
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Result Code
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
Defined Result Code values for the StopCCN message are as follows:
0 - Reserved.
connection.
General Result Code values for the CDN message are as follows:
0 - Reserved.
circuit disconnect.
Code.
Lau, et al.
Standards Track
[Page 41]
RFC 3931
L2TPv3
March 2005
document.
The Error Codes defined below pertain to types of errors that are
its Result Code that a General Error occurred, the General Error
The
follows:
0 - No General Error.
2 - Length is wrong.
7 - Try another.
This can
The
may choose.
Language [RFC2277].
For IPv4,
described in [RFC2732].
Lau, et al.
Standards Track
[Page 42]
RFC 3931
L2TPv3
March 2005
vendor-specific problem.
5.4.3.
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The recipient of
a SCCRQ must check to see if a SCCRQ has been sent to the peer; if
its Control Connection Tie Breaker value with the one received in
the SCCRQ.
value.
no need for tie breaking, and MAY omit this AVP or disable tie
breaking functionality.
an SCCRQ.
Router ID AVP.
Lau, et al.
Standards Track
[Page 43]
RFC 3931
L2TPv3
March 2005
In
L2TPv3, the AVP serves the same purpose of tie breaking, but is
The Control
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
The Host Name AVP, Attribute Type 7, indicates the name of the
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
octet.
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
Lau, et al.
Standards Track
[Page 44]
RFC 3931
L2TPv3
March 2005
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Router Identifier
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Its value is
The Host
IP address.
implementation-specific means.
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
being used.
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
vendor string.
this AVP SHOULD be set to 0, but MAY vary (see Section 5.2).
The
Vendor Name.
Lau, et al.
Standards Track
[Page 45]
RFC 3931
L2TPv3
March 2005
sender.
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
integer.
field of all control packets sent to the peer for the lifetime of
Connection ID value.
ID AVP from the peer (i.e., SCCRQ sent, no SCCRP received yet).
In this case, the Assigned Control Connection ID AVP that had been
sent to the peer earlier (i.e., in the SCCRQ) MUST be sent as the
This policy
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
The Receive Window Size AVP, Attribute Type 10, specifies the
Lau, et al.
Standards Track
[Page 46]
RFC 3931
L2TPv3
March 2005
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Window Size
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
transmit window.
The remote peer may send the specified number of control messages
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
Attribute Type 62, indicates the L2 payload types the sender can
support.
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
PW Type 0
...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
...
PW Type N
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Defined PW types that may appear in this list are managed by IANA
each PW type.
Lau, et al.
Standards Track
[Page 47]
RFC 3931
L2TPv3
March 2005
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
US-ASCII charset.
If (1) an
this AVP in the SCCRQ or SCCRP, (2) the Preferred Language AVP is
the peer LCCE, the default language [RFC2277] MUST be used for all
this AVP SHOULD be set to 0, but MAY vary (see Section 5.2).
The
Preferred Language.
5.4.4.
Local Session ID (ICRQ, ICRP, ICCN, OCRQ, OCRP, OCCN, CDN, WEN, SLI)
Lau, et al.
Standards Track
[Page 48]
RFC 3931
L2TPv3
March 2005
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Local Session ID
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Each LCCE
chooses any free value it desires, and sends it to the remote LCCE
Additionally, for
received (e.g., ICRP, ICCN, CDN, SLI, etc.), the remote LCCE MUST
See Section 4.1 for additional information about the Session ID.
this AVP SHOULD be 1 set to 1, but MAY vary (see Section 5.2).
Remote Session ID (ICRQ, ICRP, ICCN, OCRQ, OCRP, OCCN, CDN, WEN, SLI)
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Remote Session ID
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
control messages.
It is the
Lau, et al.
Standards Track
[Page 49]
RFC 3931
L2TPv3
March 2005
control message.
before the Local Session ID AVP has been received, the value of
Additionally, the
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
The Assigned Cookie AVP, Attribute Type 65, contains the Cookie
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The Assigned Cookie AVP contains the value used to check the
Cookie.
Lau, et al.
Standards Track
[Page 50]
RFC 3931
L2TPv3
March 2005
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Serial Number
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Note that in RFC 2661, this value was referred to as the "Call
this AVP SHOULD be set to 0, but MAY vary (see Section 5.2).
The
bridging instance.
ties.
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Lau, et al.
Standards Track
[Page 51]
RFC 3931
L2TPv3
March 2005
3.3.
OCRQ with an End ID AVP whose value matches that which was just
If the two
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
In the case of a
The LCCE
with the lower value "wins" and MUST send a CDN with result code
ICRQ or OCRQ.
Lau, et al.
Standards Track
[Page 52]
RFC 3931
L2TPv3
March 2005
breakers are sent by both sides, and the tie breaker values are
equal, both sides MUST discard their sessions and restart session
If a tie is detected but only one side sends a Session Tie Breaker
AVP, the session initiator that included the Session Tie Breaker
AVP "wins".
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
The Pseudowire Type (PW Type) AVP, Attribute Type 68, indicates
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
PW Type
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
AVP requires on all incoming data packets for this L2TP session.
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Lau, et al.
Standards Track
[Page 53]
RFC 3931
L2TPv3
March 2005
is used.
If this AVP is received and has a value other than zero, the
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
The Data Sequencing AVP, Attribute Type 70, indicates that the
to be sequenced.
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
the degree of incoming data traffic that the sender of this AVP
applied.
Lau, et al.
Standards Track
[Page 54]
RFC 3931
L2TPv3
March 2005
If a packet is unable to be
sequenced.
If sequencing
5.4.2).
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
The Tx Connect Speed BPS AVP, Attribute Type 74, contains the
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
perspective of the LAC (i.e., data flowing from the LAC to the
remote system).
present, the connection speed between the remote system and LAC is
Lau, et al.
Standards Track
[Page 55]
RFC 3931
L2TPv3
March 2005
this AVP.
this AVP SHOULD be set to 0, but MAY vary (see Section 5.2).
The
The Rx Connect Speed AVP, Attribute Type 75, represents the speed
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
per second.
this AVP SHOULD be set to 0, but MAY vary (see Section 5.2).
The
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Physical Channel ID
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Lau, et al.
Standards Track
[Page 56]
RFC 3931
L2TPv3
March 2005
this AVP SHOULD be set to 0, but MAY vary (see Section 5.2).
The
5.4.5.
The Circuit Status AVP, Attribute Type 71, indicates the initial
is bound.
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Reserved
|N|A|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Otherwise, the New bit SHOULD still be set the first time the L2TP
Reserved bits
receive traffic.
status types.
"Inactive".
concept remains the same regardless of the PW type for the L2TP
session.
Lau, et al.
Standards Track
[Page 57]
RFC 3931
L2TPv3
March 2005
circuits.
L2TP session, all data traffic for that session MUST cease (or not
Inactive.
traffic.
The ICCN, OCCN, and SLI control messages all MAY contain
document.
this AVP SHOULD be set to 1, but MAY vary (see Section 5.2).
The
The Circuit Errors AVP, Attribute Type 34, conveys circuit error
Lau, et al.
Standards Track
[Page 58]
RFC 3931
L2TPv3
March 2005
The Attribute Value field for this AVP has the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Reserved
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Hardware Overruns
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Buffer Overruns
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Timeout Errors
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Alignment Errors
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Reserved
was established.
established.
established.
this AVP SHOULD be set to 0, but MAY vary (see Section 5.2).
The
6.
Section 3.3.
Lau, et al.
Standards Track
[Page 59]
RFC 3931
L2TPv3
March 2005
6.1.
Start-Control-Connection-Request (SCCRQ)
It is sent by
establishment process.
Message Type
Host Name
Router ID
Random Vector
Message Digest
Vendor Name
Preferred Language
6.2.
Start-Control-Connection-Reply (SCCRP)
that the SCCRQ was accepted and that establishment of the control
Message Type
Host Name
Router ID
Random Vector
Message Digest
Vendor Name
Preferred Language
Lau, et al.
Standards Track
[Page 60]
RFC 3931
L2TPv3
March 2005
6.3.
Start-Control-Connection-Connected (SCCCN)
Message Type
Random Vector
Message Digest
6.4.
Stop-Control-Connection-Notification (StopCCN)
sent by either LCCE to inform its peer that the control connection is
being shut down and that the control connection should be closed.
In
There is no explicit
reply to the message, only the implicit ACK that is received by the
Message Type
Result Code
Random Vector
Message Digest
6.5.
Hello (HELLO)
Lau, et al.
Standards Track
[Page 61]
RFC 3931
L2TPv3
March 2005
The Session ID
Message Type
Random Vector
Message Digest
6.6.
Incoming-Call-Request (ICRQ)
It is the first in a
control connection.
Message Type
Local Session ID
Remote Session ID
Serial Number
Pseudowire Type
Remote End ID
Circuit Status
Random Vector
Message Digest
Assigned Cookie
L2-Specific Sublayer
Data Sequencing
Tx Connect Speed
Rx Connect Speed
Physical Channel ID
Lau, et al.
Standards Track
[Page 62]
RFC 3931
L2TPv3
March 2005
6.7.
Incoming-Call-Reply (ICRP)
connection.
The ICRP is used to indicate that the ICRQ was successful and that
the peer should establish (i.e., answer) the incoming call if it has
Message Type
Local Session ID
Remote Session ID
Circuit Status
Random Vector
Message Digest
Assigned Cookie
L2-Specific Sublayer
Data Sequencing
Tx Connect Speed
Rx Connect Speed
Physical Channel ID
6.8.
Incoming-Call-Connected (ICCN)
LCCE that originally sent an ICRQ upon receiving an ICRP from its
peer.
The ICCN is used to indicate that the ICRP was accepted, that the
call has been established, and that the L2TP session should move to
not have been available at the time the ICRQ was issued).
Message Type
Local Session ID
Remote Session ID
Lau, et al.
Standards Track
[Page 63]
RFC 3931
L2TPv3
March 2005
Random Vector
Message Digest
L2-Specific Sublayer
Data Sequencing
Tx Connect Speed
Rx Connect Speed
Circuit Status
6.9.
Outgoing-Call-Request (OCRQ)
message.
LCCE.
This call
Message Type
Local Session ID
Remote Session ID
Serial Number
Pseudowire Type
Remote End ID
Circuit Status
Random Vector
Message Digest
Assigned Cookie
Tx Connect Speed
Rx Connect Speed
L2-Specific Sublayer
Data Sequencing
Lau, et al.
Standards Track
[Page 64]
RFC 3931
L2TPv3
March 2005
6.10.
Outgoing-Call-Reply (OCRP)
It is the second in a
control connection.
OCRP is used to indicate that the LAC has been able to attempt the
outbound call.
Message Type
Local Session ID
Remote Session ID
Circuit Status
Random Vector
Message Digest
Assigned Cookie
L2-Specific Sublayer
Tx Connect Speed
Rx Connect Speed
Data Sequencing
Physical Channel ID
6.11.
Outgoing-Call-Connected (OCCN)
to another LCCE after the OCRP and after the outgoing call has been
completed.
was successful.
requested the call about the particular parameters obtained after the
Message Type
Local Session ID
Remote Session ID
Lau, et al.
Standards Track
[Page 65]
RFC 3931
L2TPv3
March 2005
Random Vector
Message Digest
L2-Specific Sublayer
Tx Connect Speed
Rx Connect Speed
Data Sequencing
Circuit Status
6.12.
Call-Disconnect-Notify (CDN)
Its purpose is to
inform the peer of the disconnection and the reason for the
disconnection.
Message Type
Result Code
Local Session ID
Remote Session ID
Random Vector
Message Digest
6.13.
WAN-Error-Notify (WEN)
The counters
Message Type
Local Session ID
Remote Session ID
Circuit Errors
Lau, et al.
Standards Track
[Page 66]
RFC 3931
L2TPv3
March 2005
Random Vector
Message Digest
6.14.
Set-Link-Info (SLI)
message.
Message Type
Local Session ID
Remote Session ID
Random Vector
Message Digest
Circuit Status
6.15.
Explicit-Acknowledgement (ACK)
Receipt of this message does not trigger an event for the L2TP
A message received without any AVPs (including the Message Type AVP),
is not enabled.
Lau, et al.
Standards Track
[Page 67]
RFC 3931
L2TPv3
March 2005
Message Type
Message Digest
7.
4.2).
7.1.
If
the M bit can be reasonably inspected within the malformed AVP and is
If the M
Lau, et al.
Standards Track
[Page 68]
RFC 3931
L2TPv3
March 2005
bit set (as would typically be the case), this condition is not
considered catastrophic.
accepted as though the AVP were not present (though a local error
establishment.
7.2.
receiver.
See the
State
Event
Action
New State
-----
-----
------
---------
idle
Local open
Send SCCRQ
wait-ctl-reply
request
idle
Receive SCCRQ,
Send SCCRP
wait-ctl-conn
acceptable
idle
Receive SCCRQ,
Send StopCCN,
idle
not acceptable
clean up
idle
Receive SCCRP
Send StopCCN,
idle
clean up
idle
Receive SCCCN
Send StopCCN,
idle
clean up
Lau, et al.
Standards Track
[Page 69]
RFC 3931
L2TPv3
March 2005
wait-ctl-reply
Receive SCCRP,
Send SCCCN,
established
acceptable
send control-conn
open event to
waiting sessions
wait-ctl-reply
Receive SCCRP,
Send StopCCN,
idle
not acceptable
clean up
wait-ctl-reply
Receive SCCRQ,
Send SCCRP,
wait-ctl-conn
Clean up losing
SCCRQ acceptable
connection
wait-ctl-reply
Receive SCCRQ,
Send StopCCN,
idle
Clean up losing
wait-ctl-reply
Receive SCCRQ,
wait-ctl-reply
losing connection
wait-ctl-reply
Receive SCCCN
Send StopCCN,
idle
clean up
wait-ctl-conn
Receive SCCCN,
Send control-conn
established
acceptable
open event to
waiting sessions
wait-ctl-conn
Receive SCCCN,
Send StopCCN,
idle
not acceptable
clean up
wait-ctl-conn
Receive SCCRQ,
Send StopCCN,
idle
SCCRP
clean up
established
Local open
Send control-conn
established
request
open event to
(new call)
waiting sessions
established
Administrative
Send StopCCN,
idle
control-conn
clean up
close event
established
Receive SCCRQ,
Send StopCCN,
idle
SCCRP, SCCCN
clean up
idle,
Receive StopCCN
Clean up
idle
wait-ctl-reply,
wait-ctl-conn,
established
Lau, et al.
Standards Track
[Page 70]
RFC 3931
L2TPv3
March 2005
idle
An initiator
wait-ctl-reply
requested from the same peer, and if so, handles the collision
wait-ctl-conn
Awaiting an SCCCN.
established
control connection.
7.3.
Incoming Calls
circuit) until the peer has indicated with an ICRP that it will
The peer may choose not to accept the call if, for
session.
When the local LCCE receives the ICRP, it attempts to establish the
call.
local LCCE to the peer to indicate that the call states for both
before the peer can accept it, a CDN is sent by the local LCCE to
Similarly, if
the peer wishes to clear a call, it sends a CDN and cleans up its
session.
Lau, et al.
Standards Track
[Page 71]
RFC 3931
L2TPv3
March 2005
7.3.1.
State
Event
Action
New State
-----
-----
------
---------
idle
Call signal or
Initiate local
wait-control-conn
ready to receive
control-conn
incoming conn
open
idle
Receive ICCN,
Clean up
idle
ICRP, CDN
wait-control-
Clean up
idle
conn
or local close
request
wait-control-
control-conn-open
Send ICRQ
wait-reply
conn
wait-reply
Receive ICRP,
Send ICCN
established
acceptable
wait-reply
Receive ICRP,
Send CDN,
idle
Not acceptable
clean up
wait-reply
Receive ICRQ,
Process as
idle
ICRQ Recipient
(Section 7.3.2)
wait-reply
Receive ICRQ,
Send CDN
wait-reply
for losing
session
wait-reply
Receive CDN,
Clean up
idle
ICCN
wait-reply
Local close
Send CDN,
idle
request
clean up
established
Receive CDN
Clean up
idle
established
Receive ICRQ,
Send CDN,
idle
ICRP, ICCN
clean up
established
Local close
Send CDN,
idle
request
clean up
Lau, et al.
Standards Track
[Page 72]
RFC 3931
L2TPv3
March 2005
idle
wait-control-conn
may be exchanged.
wait-reply
The ICRQ sender receives either (1) a CDN indicating the peer is
and moves back into the idle state, or (2) an ICRP indicating the
call is accepted.
established
7.3.2.
State
Event
Action
New State
-----
-----
------
---------
idle
Receive ICRQ,
Send ICRP
wait-connect
acceptable
idle
Receive ICRQ,
Send CDN,
idle
not acceptable
clean up
idle
Receive ICRP
Send CDN
idle
clean up
idle
Receive ICCN
Clean up
idle
wait-connect
Receive ICCN,
Prepare for
established
acceptable
data
Lau, et al.
Standards Track
[Page 73]
RFC 3931
L2TPv3
March 2005
wait-connect
Receive ICCN,
Send CDN,
idle
not acceptable
clean up
wait-connect
Receive ICRQ,
Send CDN,
idle
ICRP
clean up
idle,
Receive CDN
Clean up
idle
wait-connect,
established
wait-connect
Local close
Send CDN,
idle
established
request
clean up
established
Receive ICRQ,
Send CDN,
idle
ICRP, ICCN
clean up
idle
An ICRQ is received.
sent back to the peer LCCE, and the local LCCE remains in the idle
state.
The session
wait-connect
Upon receipt
established
the initiator.
7.4.
Outgoing Calls
An LCCE first
respond to the OCRQ with an OCRP once it determines that the proper
administratively authorized.
the LAC sends an OCCN to the peer indicating the final result of the
call attempt.
Lau, et al.
Standards Track
[Page 74]
RFC 3931
L2TPv3
March 2005
7.4.1.
State
Event
Action
New State
-----
-----
------
---------
idle
Local open
Initiate local
wait-control-conn
request
control-conn-open
idle
Receive OCCN,
Clean up
idle
OCRP
wait-control-
control-conn-open
Send OCRQ
wait-reply
conn
wait-reply
Receive OCRP,
none
wait-connect
acceptable
wait-reply
Receive OCRP,
Send CDN,
idle
not acceptable
clean up
wait-reply
Receive OCCN
Send CDN,
idle
clean up
wait-reply
Receive OCRQ,
Process as
idle
OCRQ Recipient
(Section 7.4.2)
wait-reply
Receive OCRQ,
Send CDN
wait-reply
for losing
session
wait-connect
Receive OCCN
none
established
wait-connect
Receive OCRQ,
Send CDN,
idle
OCRP
clean up
idle,
Receive CDN
Clean up
idle
wait-reply,
wait-connect,
established
established
Receive OCRQ,
Send CDN,
idle
OCRP, OCCN
clean up
wait-reply,
Local close
Send CDN,
idle
wait-connect,
request
clean up
established
Lau, et al.
Standards Track
[Page 75]
RFC 3931
L2TPv3
March 2005
wait-control-
Local close
Clean up
idle
conn
request
idle, wait-control-conn
Once the
wait-reply
idle state.
wait-connect
idle state.
established
idle state.
7.4.2.
State
Event
Action
New State
-----
-----
------
---------
idle
Receive OCRQ,
Send OCRP,
wait-cs-answer
acceptable
Place call
idle
Receive OCRQ,
Send CDN,
idle
not acceptable
clean up
idle
Receive OCRP
Send CDN,
idle
clean up
idle
Receive OCCN,
Clean up
idle
CDN
wait-cs-answer
Call placement
Send OCCN
established
successful
wait-cs-answer
Call placement
Send CDN,
idle
failed
clean up
Lau, et al.
Standards Track
[Page 76]
RFC 3931
L2TPv3
March 2005
wait-cs-answer
Receive OCRQ,
Send CDN,
idle
OCRP, OCCN
clean up
established
Receive OCRQ,
Send CDN,
idle
OCRP, OCCN
clean up
Clean up
idle
established
Send CDN,
idle
established
request
clean up
The states associated with the LAC for outgoing calls are as follows:
idle
Otherwise,
state.
wait-cs-answer
If a circuit-switched
to established state.
established
If the LAC receives a CDN from the peer, the call MUST be released
If the
7.5.
issuing a StopCCN.
The
control connection.
Lau, et al.
Standards Track
[Page 77]
RFC 3931
L2TPv3
March 2005
Others may
8.
Security Considerations
8.1.
control messages.
Section 4.3 and in the definition of the Message Digest and Control
The
The shared secret that is used for all control connection, control
8.2.
constructed rogue packets into the VPN transit network could result
customer VPN.
L2TPv3 provides traffic separation for its VPNs via a 32-bit Session
that the Session ID lookup was performed properly and that the
Lau, et al.
Standards Track
[Page 78]
RFC 3931
L2TPv3
March 2005
customer VPN.
packets.
the permitted IP addresses from hackers who may obtain and spoof
them.
A 32-bit Cookie is
attack.
The Assigned Cookie AVP is used to signal the value and size of the
Cookie that must be present in all data packets for a given session.
9.
Internationalization Considerations
The Host Name and Vendor Name AVPs are not internationalized.
The
is represented in US-ASCII.
Lau, et al.
Standards Track
[Page 79]
RFC 3931
L2TPv3
March 2005
(3) the requested language is not supported by the peer LCCE, the
10.
IANA Considerations
the IANA.
The following
Sections 10.1 through 10.3 are requests for new values already
The remaining sections are for new registries that have been added to
10.1.
Attribute
Type
Description
---------
------------------
58
59
Message Digest
60
Router ID
61
62
63
Local Session ID
64
Remote Session ID
65
Assigned Cookie
66
Remote End ID
68
Pseudowire Type
69
L2-Specific Sublayer
70
Data Sequencing
71
Circuit Status
72
Preferred Language
73
74
Tx Connect Speed
75
Rx Connect Speed
Lau, et al.
Standards Track
[Page 80]
RFC 3931
L2TPv3
March 2005
10.2.
There is one
new message type, defined in Section 3.1, that was allocated for this
specification:
------------------------------------------
20 (ACK)
Explicit Acknowledgement
10.3.
New Result Code values for the CDN message are defined in Section
5.4.
-----------------------------------------
PW type (L2TPv3).
Lau, et al.
Standards Track
[Page 81]
RFC 3931
L2TPv3
March 2005
10.4.
-----------------------------------
Bit 2 - Reserved
Bit 3 - Reserved
Bit 4 - Reserved
Bit 5 - Reserved
10.5.
-----------------------------------------------
Header.
Action [RFC2434].
Bit
Bit
Bit
2 - Reserved
Bit
3 - Reserved
Bit
Bit
5 - Reserved
Bit
Bit
Bit
8 - Reserved
Bit
9 - Reserved
Bit 10 - Reserved
Bit 11 - Reserved
Lau, et al.
Standards Track
[Page 82]
RFC 3931
L2TPv3
March 2005
10.6.
Pseudowire Types
-----------------------
The Pseudowire Type (PW Type, see Section 5.4) is a 2-octet value
used in the Pseudowire Type AVP and Pseudowire Capabilities List AVP
10.7.
-------------------
The Circuit Status field is a 16-bit mask, with the two low order
bits assigned.
[RFC2434].
Lau, et al.
Standards Track
[Page 83]
RFC 3931
L2TPv3
March 2005
10.8.
---------------------------------
Consensus [RFC2434].
Bit 0 - Reserved
Bit 2 - Reserved
Bit 3 - Reserved
Bit 4 - Reserved
Bit 5 - Reserved
Bit 6 - Reserved
Bit 7 - Reserved
10.9.
-------------------------
0 - No L2-Specific Sublayer
10.10.
---------------------
Lau, et al.
Standards Track
[Page 84]
RFC 3931
L2TPv3
March 2005
11.
References
11.1.
Normative References
October 1998.
[RFC2661] Townsley, W., Valencia, A., Rubens, A., Pall, G., Zorn, G.,
[RFC3193] Patel, B., Aboba, B., Dixon, W., Zorn, G., and Booth, S.,
11.2.
Informative References
November 1990.
April 1992.
Lau, et al.
Standards Track
[Page 85]
RFC 3931
L2TPv3
March 2005
[RFC1981] McCann, J., Deering, S., and Mogul, J., "Path MTU Discovery
January 1997.
Keyed-
1997.
[RFC2341] Valencia, A., Littlewood, M., and Kolar, T., "Cisco Layer
[RFC2581] Allman, M., Paxson, V., and Stevens, W., "TCP Congestion
[RFC2637] Hamzeh, K., Pall, G., Verthein, W., Taarud, J., Little, W.,
[RFC2732] Hinden, R., Carpenter, B., and Masinter, L., "Format for
[RFC3070] Rawat, V., Tio, R., Nanji, S., and Verma, R., "Layer Two
February 2001.
Lau, et al.
Standards Track
[Page 86]
RFC 3931
L2TPv3
March 2005
[RFC3355] Singh, A., Turner, R., Tio, R., and Nanji, S., "Layer Two
[KPS]
Security:
12.
Acknowledgments
Many of the protocol constructs were originally defined in, and the
RFC 2661
B. Palter.
The basic concept for L2TP and many of its protocol constructs were
Authors of these
Danny Mcpherson and Suhail Nanji published the first "L2TP Service
Type" version, which defined the use of L2TP for tunneling of various
The team for splitting RFC 2661 into this base document and the
Stewart Bryant and Simon Barber provided valuable input for the
effort.
Jan Vilhuber, Scott Fluhrer, David McGrew, Scott Wainner, Skip Booth
Lau, et al.
Standards Track
[Page 87]
RFC 3931
L2TPv3
March 2005
James Carlson, Thomas Narten, Maria Dos Santos, Steven Bellovin, Ted
Hardie, and Pekka Savola provided very helpful review of the final
versions of text.
mechanism.
Zorn helped get all of the language and character references straight
in this document.
A number of people provided valuable input and effort for RFC 2661,
John Bray, Greg Burns, Rich Garrett, Don Grosser, Matt Holdrege,
Terry Johnson, Dory Leifer, and Rich Shea provided valuable input and
formatting.
section.
2661.
Steve Cobb and Evan Caves redesigned the state machine tables.
Lau, et al.
Standards Track
[Page 88]
RFC 3931
L2TPv3
March 2005
Although each side has indicated the maximum size of its receive
[RFC2581]).
The variable
congestion avoidance.
SSHTRESH.
CWND is initialized to
piggybacked).
piggybacked) is received.
exponential increase.
slow start phase ends and the congestion avoidance phase begins.
Specifically,
increased by one packet after CWND new ACKs have been received.
is set to one.
Lau, et al.
Standards Track
[Page 89]
RFC 3931
L2TPv3
March 2005
This
message.
within a message sent as a reply to the ICRQ or OCRQ that will likely
LCCE A
LCCE B
------
------
SCCRQ
->
Nr: 0, Ns: 0
<-
SCCRP
Nr: 1, Ns: 0
SCCCN
->
Nr: 1, Ns: 1
<-
ACK
Nr: 2, Ns: 1
of the ICRP has two effects: It not only keeps the upper level state
machine from progressing, but also keeps LCCE A from seeing a timely
LCCE A
LCCE B
------
------
ICRQ
->
Nr: 1, Ns: 2
(packet lost)
<-
ICRP
Nr: 3, Ns: 1
ICRQ
->
Nr: 1, Ns: 2
<-
ACK
Nr: 3, Ns: 2
Lau, et al.
Standards Track
[Page 90]
RFC 3931
L2TPv3
March 2005
<-
ICRP
Nr: 3, Ns: 1
ICCN
->
Nr: 2, Ns: 3
<-
ACK
Nr: 4, Ns: 2
Each
sequenced data packet that is sent must contain the sequence number,
L2TP session.
Note that the 24-bit sequence number space includes zero as a valid
counter if desired).
numbers at zero.
number field.
The
window may be sized based on the link speed and sequence number space
and SHOULD be configurable with a default equal to one half the size
Lau, et al.
Standards Track
[Page 91]
RFC 3931
L2TPv3
March 2005
Upon receipt, packets that exactly match the expected sequence number
incremented.
Packets that fall within the window for new packets may
updated to one plus that received in the new packet, or held for a
packet(s).
An exception
has been fragmented into a very small packet followed by a very large
sequence numbers and enforcing packet order for any remaining non-IP
data packets.
tunneled and the network data traversing the data link, this is
If a large number of packets (i.e., more than one new packet window)
follows:
Lau, et al.
Standards Track
[Page 92]
RFC 3931
L2TPv3
March 2005
dropped.
packets would be dropped after the outage until the sequence number
This may be
The
configurable.
Editors' Addresses
Jed Lau
cisco Systems
San Jose, CA
95134
EMail: jedlau@cisco.com
W. Mark Townsley
cisco Systems
EMail: mark@townsley.net
Ignacio Goyret
Lucent Technologies
EMail: igoyret@lucent.com
Lau, et al.
Standards Track
[Page 93]
RFC 3931
L2TPv3
March 2005
contained in BCP 78, and except as set forth therein, the authors
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
Intellectual Property
this document or the extent to which any license under such rights
Information
http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any
this standard.
ipr@ietf.org.
Acknowledgement
Internet Society.