rfc-8651

Dynamic Link Exchange Protocol (DLEP) Control-Plane-Based Pause Extension

B. Cheng, D. Wiggins, L. Berger (Editor)
date2019-10 streamIETF areartg wgmanet statusPROPOSED STANDARD pages12 canonicalhttps://www.rfc-editor.org/rfc/rfc8651 doi10.17487/RFC8651
This document defines an extension to the Dynamic Link Exchange Protocol (DLEP) that enables a modem to use DLEP messages to pause and resume data traffic coming from its peer router.

Extracted elements (26)

design-rationale §1

The Control-Plane-Based Pause extension parallels the flow-control mechanism in PPPoE (RFC 5578) and Ethernet priority-based flow control (IEEE 802.1Q). DSCP-aware flow control is included to support Diffserv-aware modems, allowing per-traffic-class pause/resume rather than only all-or-nothing suppression.

routing, diffserv, qos, congestion

design-rationale §1

The pause mechanism applies only to traffic destined for transmission on the modem's attached data channel, not to DLEP control messages themselves, and only covers the single router-to-modem subnetwork. This scoping prevents deadlocks where a paused control plane could not send the Restart signal.

routing, qos

interoperability-note §3.1

An implementation that does not support DSCPs indicates one queue with zero DSCPs and reports the number of bytes that may be in its associated link transmit queue, ensuring backward compatibility with non-Diffserv-aware peers.

routing, diffserv, qos

interoperability-note §3.1.1

The Queue Parameter Sub-Data Item format is patterned after the standard DLEP Data Item format (RFC 8175, Section 11.3), and Sub-Data Item Type values are scoped within the parent Queue Parameters Data Item Type to avoid collisions with other DLEP extensions.

routing

normative-requirement §3.2 SHOULD

A modem SHOULD include multiple queue indexes in the same Pause message when possible, to reduce the number of messages sent.

routing

normative-requirement §3.2 MUST

A router that receives the Pause Data Item MUST cease sending the identified traffic to the modem. If a Pause Data Item contains a Queue Index value other than 255 or an index not established via Session Initialization/Update, the router MUST terminate the session with a Status Data Item indicating "Invalid Data".

routing, security

normative-requirement §3.1.1 MUST NOT

Queue Index 255 is reserved and MUST NOT be used in the Queue Index field of a Queue Parameter Sub-Data Item. Only the first instance of a particular Queue Index value is meaningful; subsequent duplicates MUST otherwise be ignored.

routing

normative-requirement §3.1.1 MUST

Sub-Data Item Type is scoped within the parent Data Item type. Parsing errors in Sub-Data Items MUST cause the receiving implementation to issue a Session Termination Message with a Status Data Item set to status code 130 ("Invalid Data") and transition to the Session Termination state.

routing, security

normative-requirement §3.1 MUST

The Num Queues field in the Queue Parameters Data Item MUST contain a value of at least one (1).

routing

normative-requirement §3.1 MUST

The Queue Parameters Data Item MUST be included in a Session Initialization Response Message that also contains the Control-Plane-Based Pause Extension Type Value in the Extensions Supported Data Item. Updates MAY be sent in Session Update Messages.

routing, diffserv

normative-requirement §2 MUST

The use of the Control-Plane-Based Pause Extension SHOULD be configurable. To indicate support, an implementation MUST include the Control-Plane-Based Pause Extension Type Value (2) in the Extensions Supported Data Item.

routing, registry

normative-requirement §3.2 MUST

To indicate device-wide traffic suppression, a modem MUST send the Pause Data Item in a Session Update Message. To suppress traffic to a particular destination, a modem MUST send it in a Destination Update Message.

routing

normative-requirement §3.3 SHOULD

To resume transmission to all destinations, a modem MUST send the Restart Data Item in a Session Update Message; to resume for a particular destination, it MUST use a Destination Update Message. A router receiving Restart SHOULD resume transmission of the identified traffic.

routing

protocol-element §3.1.1

Queue Parameter Sub-Data Items describe individual logical queues, each identified by a Queue Index, a 24-bit Queue Size Qn (scaled by the parent's Scale field), a Num DSCPs Qn count, and a sequence of 8-bit DS Field values. Queue index 255 is reserved and MUST NOT appear in this field.

routing, diffserv

protocol-element §3.2

The Pause Data Item (Type 24) is sent by a modem to instruct a router to suppress (pause) traffic. It can apply device-wide (via Session Update Message) or per-destination (via Destination Update Message), and identifies traffic by Queue Index, with special value 255 indicating all traffic.

routing, qos, congestion

protocol-element §3.1

The Queue Parameters Data Item (Type 23) is sent by a modem to a router to indicate DSCP values that may be independently paused. It groups DSCPs into logical queues identified by a Queue Index field, with queue index zero covering DSCPs not otherwise associated with a queue.

routing, diffserv, qos

protocol-element §3.3

The Restart Data Item (Type 25) is sent by a modem to a router to indicate that previously suppressed traffic may be resumed, typically when an internal queue length drops below a threshold. It follows the same rules as the Pause Data Item for session-wide vs. destination-specific scope.

routing, qos, congestion

registry §5.1

IANA assigned Extension Type Value 2 ("Control-Plane-Based Pause") in the DLEP "Extension Type Values" registry under the "Specification Required" policy.

registry, routing

registry §5.2

IANA assigned three new values in the DLEP "Data Item Type Values" registry: 23 (Queue Parameters), 24 (Pause), and 25 (Restart), under the "Specification Required" policy.

registry, routing

registry §5.3

IANA created a new DLEP registry "Queue Parameter Sub-Data Item Type Values" with initial values: 0 (Reserved), 1 (Queue Parameter), 2–65407 (Specification Required), 65408–65534 (Private Use), 65535 (Reserved).

registry, routing

security-consideration §4

A compromised or impersonating modem can use this extension to suppress router transmission. This attack vector is similar in scope to base DLEP threats (session reset, traffic drop). RFC 8175's TLS mechanism is the defined mitigation against impersonating attackers.

security, tls, routing

security-consideration §4 MUST

Implementations of this extension MUST support the configuration and use of TLS as described in RFC 8175, to protect against injection attacks when the link between a modem and router is not otherwise protected.

security, tls, routing

wire-format §3.2

The Pause Data Item encodes: a 16-bit Data Item Type (24), a variable Length equal to the number of Queue Index fields, and one or more 8-bit Queue Index fields. The special Queue Index value 255 means all traffic is to be suppressed.

routing, qos

wire-format §3.1.1

The Queue Parameter Sub-Data Item uses a 16-bit Sub-Data Item Type (MUST be 1), a variable Length, then a Value containing: Queue Index (8-bit), Queue Size Qn (24-bit unsigned), Num DSCPs Qn (8-bit), and a sequence of DS Fields (8-bit each, DSCP in upper 6 bits, CU bits MUST be zero).

routing, diffserv

wire-format §3.1

The Queue Parameters Data Item encodes: a 16-bit Data Item Type (23), a variable Length, an 8-bit Num Queues count, a 4-bit Scale (0=Bytes, 1=KB, 2=MB, 3=GB), a 20-bit Reserved field (MUST be zero), followed by variable-length Queue Parameter Sub-Data Items.

routing, diffserv

wire-format §3.3

The Restart Data Item has Data Item Type 25 and an identical wire format to the Pause Data Item: variable Length equal to the count of Queue Index fields, followed by one or more 8-bit Queue Index fields, with 255 meaning all traffic.

routing, qos