High-Level Data Link Control (HDLC) Frames over Layer 2 Tunneling Protocol, Version 3 (L2TPv3)
updated by
- rfc-5641 — Layer 2 Tunneling Protocol Version 3 (L2TPv3) Extended Circuit Status Values
Extracted elements (19)
The FCS is stripped at the ingress LCCE and regenerated at the egress LCCE rather than transported end-to-end. This means corruption introduced during PSN transit may not be detected. IPsec can be used to provide payload integrity when needed.
The HDLCPW operates in an 'interface to interface' or 'port to port' fashion, passing all HDLC data and control PDUs transparently. This allows any protocol with HDLC-like framing (PPP, Frame-Relay, X.25/LAPB) to be transported without LCCE participation in higher-layer negotiations.
When HDLCPW transports PPP traffic, PPP negotiations (LCP, optional authentication, NCPs) are performed between Remote Systems; LCCEs do not participate. Similarly for Frame-Relay LMI and X.25 LAPB DCE/DTE roles.
An L2TPv3 Control Connection MUST first be established before tunneling HDLC over IP. The SCCRQ and SCCRP Control Messages MUST include the HDLC Pseudowire Type of 0x0006 in the Pseudowire Capabilities List.
An LCCE MUST be able to uniquely identify itself in SCCRQ and SCCRP messages via a globally unique value, by default using the structured Router ID AVP; the unstructured Hostname AVP MAY be used as well.
If LCCE B has not been provisioned for the interface identified in the ICRQ, it returns a CDN immediately. LCCE A SHOULD then exhibit a periodic retry mechanism; if so, the period and maximum number of retries MUST be configurable.
In the event a link is removed (unprovisioned) at either LCCE, the associated L2TP session MUST be torn down via the CDN message defined in Section 3.4.3 of RFC 3931.
The Circuit Status AVP MUST be present in the ICRQ and ICRP messages and MAY be present in the SLI message for HDLCPWs.
The Pseudowire Type AVP (Attribute Type 68) MUST be present in ICRQ messages and MUST include Pseudowire Type 0x0006 for HDLCPWs.
The Remote End ID AVP MUST be present in the ICRQ to identify the HDLC link. Implementations MUST at a minimum support an unstructured four-octet value known to both LCCEs.
The SLI message MUST be sent any time there is a status change of any values identified in the Circuit Status AVP, except for the initial ICRQ, ICRP, and CDN messages.
When data packet sequencing is enabled for HDLCPWs, the sequencing mechanisms in Section 4.6.1 of RFC 3931 MUST be used for signaling. HDLCPWs MUST request the L2TPv3 Default L2-Specific Sublayer when sequencing is enabled, and MAY request it at all times.
HDLCPWs use L2TPv3 default encapsulation. The HDLC PDU is stripped of flags and trailing FCS, bit/byte unstuffing is performed, and the remaining data including address, control, and protocol fields is transported over the PW.
IANA allocated L2TPv3 Pseudowire Type 0x0006 for the HDLC Pseudowire Type, within the Pseudowire Capabilities List and L2TPv3 Pseudowire Types number space created by RFC 3931.
Two new Result Code AVP values for the CDN message are registered: 20 = 'HDLC Link was deleted permanently (no longer provisioned)' and 21 = 'HDLC Link has been INACTIVE for an extended period of time'. Managed by IANA per BCP 68.
HDLC over L2TPv3 is subject to the security considerations defined in RFC 3931. There are no additional considerations specific to carrying HDLC beyond those for other data link types. IPsec (per Section 4.1.3 of RFC 3931) can be used for payload integrity checking transparency.
An HDLC interface transitions between INACTIVE and ACTIVE states. Provisioning triggers optional session initiation; the interface becoming ACTIVE triggers ICRQ (or SLI if session already exists). Unprovisioning triggers CDN and session teardown.
The Circuit Status AVP (Attribute Type 71) carries a 16-bit mask. Bit 0 (A) indicates ACTIVE (1) or INACTIVE (0). Bit 1 (N) indicates a new circuit (1) or existing (0). Reserved bits MUST be set to 0 on send and ignored on receipt.
The L2TPv3 encapsulation overhead N is 4–16 octets over IP and 16–28 octets over UDP. Fields are: Flags/Ver/Res (4 octets, UDP only), Session ID (4 octets), Cookie (0/4/8 octets), L2-Specific Sublayer (0 or 4 octets). The IP header is not included in N.