draft-ietf-manet-dlep-06.txt   draft-ietf-manet-dlep-07.txt 
Mobile Ad hoc Networks Working S. Ratliff Mobile Ad hoc Networks Working S. Ratliff
Group B. Berry Group Independent Consultant
Internet-Draft G. Harrison Internet-Draft B. Berry
Intended status: Standards Track S. Jury Intended status: Standards Track G. Harrison
Expires: February 14, 2015 Cisco Systems Expires: April 2, 2015 S. Jury
Cisco Systems
D. Satterwhite D. Satterwhite
Broadcom Broadcom
August 13, 2014 October 24, 2014
Dynamic Link Exchange Protocol (DLEP) Dynamic Link Exchange Protocol (DLEP)
draft-ietf-manet-dlep-06 draft-ietf-manet-dlep-07
Abstract Abstract
When routing devices rely on modems to effect communications over When routing devices rely on modems to effect communications over
wireless links, they need timely and accurate knowledge of the wireless links, they need timely and accurate knowledge of the
characteristics of the link (speed, state, etc.) in order to make characteristics of the link (speed, state, etc.) in order to make
forwarding decisions. In mobile or other environments where these forwarding decisions. In mobile or other environments where these
characteristics change frequently, manual configurations or the characteristics change frequently, manual configurations or the
inference of state through routing or transport protocols does not inference of state through routing or transport protocols does not
allow the router to make the best decisions. A bidirectional, event- allow the router to make the best decisions. A bidirectional, event-
skipping to change at page 2, line 26 skipping to change at page 2, line 26
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . 8 1.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . 8
2. Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2. Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3. Mandatory Versus Optional Items . . . . . . . . . . . . . . . . 9 3. Mandatory Versus Optional Items . . . . . . . . . . . . . . . . 9
4. Credits . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 4. Credits . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
5. Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 5. Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
6. Extensions to DLEP . . . . . . . . . . . . . . . . . . . . . . 11 6. Extensions to DLEP . . . . . . . . . . . . . . . . . . . . . . 11
7. Normal Session Flow . . . . . . . . . . . . . . . . . . . . . 11 6.1 Protocol Extensions . . . . . . . . . . . . . . . . . . . . 11
7.1 DLEP Router session flow - Discovery case . . . . . . . . . 11 6.2 Vendor Extensions . . . . . . . . . . . . . . . . . . . . . 11
6.3 Experimental Extensions . . . . . . . . . . . . . . . . . . 11
7. Normal Session Flow . . . . . . . . . . . . . . . . . . . . . 12
7.1 DLEP Router session flow - Discovery case . . . . . . . . . 12
7.2 DLEP Router session flow - Configured case . . . . . . . . . 12 7.2 DLEP Router session flow - Configured case . . . . . . . . . 12
7.3 DLEP Modem session flow . . . . . . . . . . . . . . . . . . 12 7.3 DLEP Modem session flow . . . . . . . . . . . . . . . . . . 13
7.4 Common Session Flow . . . . . . . . . . . . . . . . . . . . 13 7.4 Common Session Flow . . . . . . . . . . . . . . . . . . . . 14
8. Mandatory Signals and Data Items . . . . . . . . . . . . . . . 14 8. Mandatory Signals and Data Items . . . . . . . . . . . . . . . 14
9. Generic DLEP Signal Definition . . . . . . . . . . . . . . . . 15 9. Generic DLEP Signal Definition . . . . . . . . . . . . . . . . 16
10. DLEP Data Items . . . . . . . . . . . . . . . . . . . . . . . 16 10. DLEP Data Items . . . . . . . . . . . . . . . . . . . . . . . 16
10.1 DLEP Port . . . . . . . . . . . . . . . . . . . . . . . . 17 10.1 DLEP Version . . . . . . . . . . . . . . . . . . . . . . . 17
10.2 Peer Type . . . . . . . . . . . . . . . . . . . . . . . . 17 10.2 DLEP Port . . . . . . . . . . . . . . . . . . . . . . . . 18
10.3 MAC Address . . . . . . . . . . . . . . . . . . . . . . . 18 10.3 Peer Type . . . . . . . . . . . . . . . . . . . . . . . . 18
10.4 IPv4 Address . . . . . . . . . . . . . . . . . . . . . . . 18 10.4 MAC Address . . . . . . . . . . . . . . . . . . . . . . . 19
10.5 IPv6 Address . . . . . . . . . . . . . . . . . . . . . . . 19 10.5 IPv4 Address . . . . . . . . . . . . . . . . . . . . . . . 19
10.6 Maximum Data Rate (Receive) . . . . . . . . . . . . . . . 20 10.6 IPv6 Address . . . . . . . . . . . . . . . . . . . . . . . 20
10.7 Maximum Data Rate (Transmit) . . . . . . . . . . . . . . . 21 10.7 Maximum Data Rate (Receive) . . . . . . . . . . . . . . . 21
10.8 Current Data Rate (Receive) . . . . . . . . . . . . . . . 21 10.8 Maximum Data Rate (Transmit) . . . . . . . . . . . . . . . 22
10.9 Current Data Rate (Transmit) . . . . . . . . . . . . . . . 22 10.9 Current Data Rate (Receive) . . . . . . . . . . . . . . . 22
10.10 Latency . . . . . . . . . . . . . . . . . . . . . . . . . 23 10.10 Current Data Rate (Transmit) . . . . . . . . . . . . . . 23
10.11 Resources (Receive) . . . . . . . . . . . . . . . . . . . 23 10.11 Latency . . . . . . . . . . . . . . . . . . . . . . . . . 24
10.12 Resources (Transmit) . . . . . . . . . . . . . . . . . . 24 10.12 Resources (Receive) . . . . . . . . . . . . . . . . . . . 25
10.13 Relative Link Quality (Receive) . . . . . . . . . . . . . 25 10.13 Resources (Transmit) . . . . . . . . . . . . . . . . . . 25
10.14 Relative Link Quality (Transmit) . . . . . . . . . . . . 25 10.14 Relative Link Quality (Receive) . . . . . . . . . . . . . 26
10.15 Status . . . . . . . . . . . . . . . . . . . . . . . . . 26 10.15 Relative Link Quality (Transmit) . . . . . . . . . . . . 27
10.16 Heartbeat Interval . . . . . . . . . . . . . . . . . . . 26 10.16 Status . . . . . . . . . . . . . . . . . . . . . . . . . 27
10.17 Link Characteristics ACK Timer . . . . . . . . . . . . . 27 10.17 Heartbeat Interval . . . . . . . . . . . . . . . . . . . 28
10.18 Credit Window Status . . . . . . . . . . . . . . . . . . 28 10.18 Link Characteristics ACK Timer . . . . . . . . . . . . . 28
10.19 Credit Grant Request . . . . . . . . . . . . . . . . . . 28 10.19 Credit Window Status . . . . . . . . . . . . . . . . . . 29
10.20 Credit Request . . . . . . . . . . . . . . . . . . . . . 29 10.20 Credit Grant Request . . . . . . . . . . . . . . . . . . 30
10.22 DLEP Optional Signals Supported . . . . . . . . . . . . . 30 10.21 Credit Request . . . . . . . . . . . . . . . . . . . . . 31
10.21 DLEP Optional Data Items Supported . . . . . . . . . . . 31 10.22 DLEP Optional Signals Supported . . . . . . . . . . . . . 31
10.22 DLEP Vendor Extension . . . . . . . . . . . . . . . . . . 31 10.23 DLEP Optional Data Items Supported . . . . . . . . . . . 32
11. DLEP Protocol Signals . . . . . . . . . . . . . . . . . . . . 32 10.24 DLEP Vendor Extension . . . . . . . . . . . . . . . . . . 33
11.1 Signal TLV Values . . . . . . . . . . . . . . . . . . . . 32 10.25 IPv4 Attached Subnet . . . . . . . . . . . . . . . . . . 33
11.2 Peer Discovery Signal . . . . . . . . . . . . . . . . . . . 33 10.26 IPv6 Attached Subnet . . . . . . . . . . . . . . . . . . 34
11.3 Peer Offer Signal . . . . . . . . . . . . . . . . . . . . . 33 11. DLEP Protocol Signals . . . . . . . . . . . . . . . . . . . . 35
11.4 Peer Initialization Signal . . . . . . . . . . . . . . . . 34 11.1 Signal TLV Values . . . . . . . . . . . . . . . . . . . . 35
11.5 Peer Initialization ACK Signal . . . . . . . . . . . . . . 34 11.2 Peer Discovery Signal . . . . . . . . . . . . . . . . . . . 36
11.6 Peer Update Signal . . . . . . . . . . . . . . . . . . . . 35 11.3 Peer Offer Signal . . . . . . . . . . . . . . . . . . . . . 36
11.7 Peer Update ACK Signal . . . . . . . . . . . . . . . . . . 36 11.4 Peer Initialization Signal . . . . . . . . . . . . . . . . 37
11.8 Peer Termination Signal . . . . . . . . . . . . . . . . . . 37 11.5 Peer Initialization ACK Signal . . . . . . . . . . . . . . 37
11.9 Peer Termination ACK Signal . . . . . . . . . . . . . . . . 37 11.6 Peer Update Signal . . . . . . . . . . . . . . . . . . . . 38
11.10 Destination Up Signal . . . . . . . . . . . . . . . . . . 37 11.7 Peer Update ACK Signal . . . . . . . . . . . . . . . . . . 39
11.11 Destination Up ACK Signal . . . . . . . . . . . . . . . . 38 11.8 Peer Termination Signal . . . . . . . . . . . . . . . . . . 40
11.12 Destination Down Signal . . . . . . . . . . . . . . . . . 38 11.9 Peer Termination ACK Signal . . . . . . . . . . . . . . . . 40
11.13 Destination Down ACK Signal . . . . . . . . . . . . . . . 39 11.10 Destination Up Signal . . . . . . . . . . . . . . . . . . 40
11.14 Destination Update Signal . . . . . . . . . . . . . . . . 39 11.11 Destination Up ACK Signal . . . . . . . . . . . . . . . . 41
11.15 Heartbeat Signal . . . . . . . . . . . . . . . . . . . . . 40 11.12 Destination Down Signal . . . . . . . . . . . . . . . . . 41
11.16 Link Characteristics Request Signal . . . . . . . . . . . 40 11.13 Destination Down ACK Signal . . . . . . . . . . . . . . . 42
11.17 Link Characteristics ACK Signal . . . . . . . . . . . . . 41 11.14 Destination Update Signal . . . . . . . . . . . . . . . . 42
12. Security Considerations . . . . . . . . . . . . . . . . . . . 42 11.15 Heartbeat Signal . . . . . . . . . . . . . . . . . . . . . 43
13. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 42 11.16 Link Characteristics Request Signal . . . . . . . . . . . 43
13.1 Registrations . . . . . . . . . . . . . . . . . . . . . . 42 11.17 Link Characteristics ACK Signal . . . . . . . . . . . . . 44
13.2 Expert Review: Evaluation Guidelines . . . . . . . . . . . 42 12. Security Considerations . . . . . . . . . . . . . . . . . . . 45
13.3 Signal TLV Type Registration . . . . . . . . . . . . . . . 42 13. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 45
13.4 DLEP Data Item Registrations . . . . . . . . . . . . . . . 43 13.1 Registrations . . . . . . . . . . . . . . . . . . . . . . 45
13.5 DLEP Well-known Port . . . . . . . . . . . . . . . . . . . 44 13.2 Expert Review: Evaluation Guidelines . . . . . . . . . . . 45
13.6 DLEP Multicast Address . . . . . . . . . . . . . . . . . . 44 13.3 Signal TLV Type Registration . . . . . . . . . . . . . . . 45
14. Appendix A. . . . . . . . . . . . . . . . . . . . . . . . . . 44 13.4 DLEP Data Item Registrations . . . . . . . . . . . . . . . 46
14.1 Peer Level Signal Flows . . . . . . . . . . . . . . . . . 44 13.5 DLEP Well-known Port . . . . . . . . . . . . . . . . . . . 47
14.1.1 Modem Device Restarts Discovery . . . . . . . . . . . 44 13.6 DLEP Multicast Address . . . . . . . . . . . . . . . . . . 47
14.1.2 Modem Device Detects Peer Offer Timeout . . . . . . . 44 14. Appendix A. . . . . . . . . . . . . . . . . . . . . . . . . . 47
14.1.3 Router Peer Offer Lost . . . . . . . . . . . . . . . . 46 14.1 Peer Level Signal Flows . . . . . . . . . . . . . . . . . 47
14.1.4 Discovery Success . . . . . . . . . . . . . . . . . . 46 14.1.1 Router Device Restarts Discovery . . . . . . . . . . . 47
14.1.5 Router Detects a Heartbeat timeout . . . . . . . . . . 47 14.1.2 Router Device Detects Peer Offer Timeout . . . . . . . 48
14.1.6 Modem Detects a Heartbeat timeout . . . . . . . . . . 47 14.1.3 Router Peer Offer Lost . . . . . . . . . . . . . . . . 49
14.1.7 Peer Terminate (from Modem) Lost . . . . . . . . . . . 48 14.1.4 Discovery Success . . . . . . . . . . . . . . . . . . 49
14.1.8 Peer Terminate (from Router) Lost . . . . . . . . . . 48 14.1.5 Router Detects a Heartbeat timeout . . . . . . . . . . 50
14.2 Destination Specific Signal Flows . . . . . . . . . . . . 48 14.1.6 Modem Detects a Heartbeat timeout . . . . . . . . . . 50
14.2.1 Modem Destination Up Lost . . . . . . . . . . . . . . 49 14.1.7 Peer Terminate (from Modem) Lost . . . . . . . . . . . 51
14.2.2 Router Detects Duplicate Destination Ups . . . . . . . 49 14.1.8 Peer Terminate (from Router) Lost . . . . . . . . . . 51
14.2.3 Destination Up, No Layer 3 Addresses . . . . . . . . . 50 14.2 Destination Specific Signal Flows . . . . . . . . . . . . 51
14.2.4 Destination Up with IPv4, No IPv6 . . . . . . . . . . 50 14.2.1 Modem Destination Up Lost . . . . . . . . . . . . . . 52
14.2.5 Destination Up with IPv4 and IPv6 . . . . . . . . . . 50 14.2.2 Router Detects Duplicate Destination Ups . . . . . . . 52
14.2.6 Destination Session Success . . . . . . . . . . . . . 51 14.2.3 Destination Up, No Layer 3 Addresses . . . . . . . . . 53
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . 51 14.2.4 Destination Up with IPv4, No IPv6 . . . . . . . . . . 53
Normative References . . . . . . . . . . . . . . . . . . . . . . . 52 14.2.5 Destination Up with IPv4 and IPv6 . . . . . . . . . . 53
Informative References . . . . . . . . . . . . . . . . . . . . . . 52 14.2.6 Destination Session Success . . . . . . . . . . . . . 54
Author's Addresses . . . . . . . . . . . . . . . . . . . . . . . . 52 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . 54
Normative References . . . . . . . . . . . . . . . . . . . . . . . 55
Informative References . . . . . . . . . . . . . . . . . . . . . . 55
Author's Addresses . . . . . . . . . . . . . . . . . . . . . . . . 55
1. Introduction 1. Introduction
There exist today a collection of modem devices that control links of There exist today a collection of modem devices that control links of
variable datarate and quality. Examples of these types of links variable datarate and quality. Examples of these types of links
include line-of-sight (LOS) terrestrial radios, satellite terminals, include line-of-sight (LOS) terrestrial radios, satellite terminals,
and cable/DSL modems. Fluctuations in speed and quality of these and cable/DSL modems. Fluctuations in speed and quality of these
links can occur due to configuration (in the case of cable/DSL links can occur due to configuration (in the case of cable/DSL
modems), or on a moment-to-moment basis, due to physical phenomena modems), or on a moment-to-moment basis, due to physical phenomena
like multipath interference, obstructions, rain fade, etc. It is also like multipath interference, obstructions, rain fade, etc. It is also
skipping to change at page 8, line 43 skipping to change at page 8, line 43
timers enabled. timers enabled.
DLEP assumes that participating modems, and their physical links, act DLEP assumes that participating modems, and their physical links, act
as a transparent IEEE 802.1D bridge. Specifically, the assumption is as a transparent IEEE 802.1D bridge. Specifically, the assumption is
that the destination MAC address for data traffic (frames destined that the destination MAC address for data traffic (frames destined
for the far-end node, as opposed to the DLEP control traffic itself) for the far-end node, as opposed to the DLEP control traffic itself)
in any frame emitted by the router should be the MAC address of a in any frame emitted by the router should be the MAC address of a
device in the remote node. DLEP also assumes that MAC addresses are device in the remote node. DLEP also assumes that MAC addresses are
unique within the context of the router-modem session. unique within the context of the router-modem session.
DLEP utilizes UDP multicast for single-hop discovery, and TCP for
transport of the control signals. Therefore, DLEP assumes that the
modem and router have topologically consistent IP addresses assigned.
It is recommended that DLEP implementations utilize IPv6 link-local
addresses to reduce the administrative burden of address assignment.
This document refers to a remote node as a "Destination". This document refers to a remote node as a "Destination".
Destinations can be identified by either the router or the modem, and Destinations can be identified by either the router or the modem, and
represent a specific destination (e.g., an address) that exists on represent a specific destination (e.g., an address) that exists on
the link(s) managed by the modem. A destination MUST contain a MAC the link(s) managed by the modem. A destination MUST contain a MAC
address, it MAY optionally include a Layer 3 address (or addresses). address, it MAY optionally include a Layer 3 address (or addresses).
Destinations MAY refer either to physical devices in the network, or Destinations MAY refer either to physical devices in the network, or
to logical destinations, as in a derived multicast MAC address to logical destinations, as in a derived multicast MAC address
associated with a group. As "destinations" are discovered, DLEP associated with a group. As "destinations" are discovered, DLEP
routers and modems build an information base on destinations routers and modems build an information base on destinations
accessible via the modem. Changes in link characteristics MAY then be accessible via the modem. Changes in link characteristics MAY then be
skipping to change at page 9, line 32 skipping to change at page 9, line 38
data items running over the TCP transport. It is assumed that DLEP data items running over the TCP transport. It is assumed that DLEP
running over other transport mechanisms would be documented running over other transport mechanisms would be documented
separately. separately.
3. Mandatory Versus Optional Items 3. Mandatory Versus Optional Items
As mentioned above, DLEP defines a core set of signals and data items As mentioned above, DLEP defines a core set of signals and data items
as mandatory. Support for those signals and data items MUST exist in as mandatory. Support for those signals and data items MUST exist in
an implementation to guarantee interoperability and therefore make an an implementation to guarantee interoperability and therefore make an
implementation DLEP compliant. However, a mandatory signal or data implementation DLEP compliant. However, a mandatory signal or data
item is not necessarily REQUIRED - as an example, consider the data item is not necessarily required - as an example, consider the data
item entitled "DLEP Optional Signals Supported", defined in section item entitled "DLEP Optional Signals Supported", defined in section
10.22 of this document. The data item allows a DLEP implementation to 10.22 of this document. The data item allows a DLEP implementation to
list all optional behavior it supports, and is sent as a part of the list all optional behavior it supports, and is sent as a part of the
Peer Initialization signal. Receiving implementations MUST be capable Peer Initialization signal. Receiving implementations MUST be capable
of parsing and understanding the optional signals that are offered. of parsing and understanding the optional signals that are offered.
However, if the sending implementation has chosen NOT to implement However, if the sending implementation has chosen NOT to implement
ANY optional functionality, this data item would NOT be included in ANY optional functionality, this data item would NOT be included in
the Peer Initialization (e.g., absence of the mandatory data item the Peer Initialization. Although parsing and understanding the data
would not be considered a protocol error, but as support for the core item is a mandatory function of a compliant DLEP, the data item
DLEP signals ONLY). Therefore, care should be taken to differentiate itself MAY, or MAY NOT, appear in the flow. Absence of the mandatory
the notion of a mandatory data item versus one that is REQUIRED. data item would not be considered a protocol error, but as support
for the core DLEP signals ONLY. Therefore, care should be taken to
differentiate the notion of a mandatory data item versus one that
MUST appear in a given message.
4. Credits 4. Credits
DLEP includes an OPTIONAL credit-windowing scheme analogous to the DLEP includes an OPTIONAL credit-windowing scheme analogous to the
one documented in [RFC5578]. In this scheme, traffic between the one documented in [RFC5578]. In this scheme, traffic between the
router and modem is treated as two unidirectional windows. This router and modem is treated as two unidirectional windows. This
document identifies these windows as the "Modem Receive Window", or document identifies these windows as the "Modem Receive Window", or
MRW, and the "Router Receive Window", or RRW. MRW, and the "Router Receive Window", or RRW.
If the OPTIONAL credit-windowing scheme is used, credits MUST be If the OPTIONAL credit-windowing scheme is used, credits MUST be
skipping to change at page 10, line 37 skipping to change at page 10, line 45
the variable-quality link in use. DLEP does NOT specify how a given the variable-quality link in use. DLEP does NOT specify how a given
metric value is to be calculated, rather, the protocol assumes that metric value is to be calculated, rather, the protocol assumes that
metrics have been calculated with a "best effort", incorporating all metrics have been calculated with a "best effort", incorporating all
pertinent data that is available to the modem device. pertinent data that is available to the modem device.
As mentioned in the introduction section of this document, metrics As mentioned in the introduction section of this document, metrics
have to be used within a context - for example, metrics to a unicast have to be used within a context - for example, metrics to a unicast
address in the network. DLEP allows for metrics to be sent within two address in the network. DLEP allows for metrics to be sent within two
contexts - metrics for a specific destination within the network contexts - metrics for a specific destination within the network
(e.g., a specific router), and "modem-wide" (those that apply to all (e.g., a specific router), and "modem-wide" (those that apply to all
destinations accessed via the modem). Metrics are further subdivided destinations accessed via the modem). Metrics can be further
into transmit and receive metrics. Metrics supplied on DLEP Peer subdivided into transmit and receive metrics. Metrics supplied on
signals are, by definition, modem-wide; metrics supplied on DLEP Peer signals are, by definition, modem-wide; metrics supplied on
Destination signals are, by definition, used for the specific Destination signals are, by definition, used for the specific
neighbor only. neighbor only.
DLEP modem implementations MUST announce all supported metric items, DLEP modem implementations MUST announce all supported metric items,
and provide default values for those metrics, in the Peer and provide default values for those metrics, in the Peer
Initialization signal. In order to introduce a new metric type, DLEP Initialization signal. In order to introduce a new metric type, DLEP
modem implementations MUST terminate the session with the router (via modem implementations MUST terminate the session with the router (via
the Peer Terminate signal), and re-establish the session. the Peer Terminate signal), and re-establish the session.
It is left to implementations to choose sensible default values based It is left to implementations to choose sensible default values based
skipping to change at page 11, line 19 skipping to change at page 11, line 29
data. This document details the mechanism whereby the data is data. This document details the mechanism whereby the data is
transmitted, however, the specific algorithms (precedence, etc) for transmitted, however, the specific algorithms (precedence, etc) for
utilizing the dual-context metrics is out of scope and not addressed utilizing the dual-context metrics is out of scope and not addressed
by this document. by this document.
6. Extensions to DLEP 6. Extensions to DLEP
While this draft represents the best efforts of the co-authors, and While this draft represents the best efforts of the co-authors, and
the working group, to be functionally complete, it is recognized that the working group, to be functionally complete, it is recognized that
extensions to DLEP will in all likelihood be necessary as more link extensions to DLEP will in all likelihood be necessary as more link
types are utilized. To allow for future innovation, the draft types are utilized. There are three possible avenues for DLEP
allocates numbering space for experimental implementations of both extensions: protocol extensions, vendor extensions, and experimental
signals and data items. extensions.
DLEP implementations MUST be capable of parsing and acting on the 6.1 Protocol Extensions
mandatory signals and data items as documented in this specification.
DLEP signals/data items that are optional, or are in the experimental
numbering range SHOULD be silently dropped by an implementation if
they are not understood.
The intent of the optional signals and data items, as well as the If/when protocol extensions are required, they should be standardized
experimental numbering space, is to allow for further development of either as an update to this document, or as an additional stand-alone
DLEP protocol features and function. Having experimental space specification.
reserved for both signals and data items gives maximum flexibility
for extending the protocol as conditions warrant. For example, 6.2 Vendor Extensions
experimental data items could be used by implementations to send
additional metrics. A combination of experimental signals, and Vendor extensions to DLEP are accommodated via the "DLEP Vendor
associated data items, could be used to implement new flow control Extension" TLV, documented in Section 10.22 of this document. If a
schemes. If subsequent research and development define new features perceived extension exceeds the scope of what can be contained in the
and function, then it should be standardized either as an update to DLEP Vendor Extension TLV, the proposed extension should be addressed
this document, or as an additional stand-alone specification. as either an update to this document, or as a stand-alone
specification.
6.3 Experimental Extensions
This document requests numbering space in both the Signal and Data
Item registries for experimental items. The intent is to allow for
experimentation with new signals and/or data items, while still
retaining the documented DLEP behavior. If a given experiment proves
successful, it SHOULD be documented as an update to this document, or
as a stand-alone specification. Experimental DLEP signals SHOULD be
treated as optional signals - e.g., they SHOULD be announced in the
"DLEP Optional Signals TLV" in Peer Initialization and/or Peer
Initialization ACK. Likewise, experimental data item TLVs SHOULD be
announced in the "DLEP Optioinal Data Items" TLV (also in Peer
Initialization/Peer Initialization ACK).
7. Normal Session Flow 7. Normal Session Flow
Normal session flow is slightly different, depending on whether the Normal session flow for a DLEP router has two sub-cases, depending on
implementation represents a modem or a router, and whether discovery whether the implementation supports the discovery process. Since
techniques are used. The normal flow by DLEP partner type is: modems MUST support the discovery process, there is only one
description necessary for modem implementations. The normal flow by
DLEP partner type is:
7.1 DLEP Router session flow - Discovery case 7.1 DLEP Router session flow - Discovery case
If the DLEP router implementation is utilizing the optional discovery If the DLEP router implementation is utilizing the optional discovery
mechanism, then the implementation will initialize a UDP socket, mechanism, then the implementation will initialize a UDP socket,
binding it to an arbitrary port. This UDP socket is used to send the binding it to an arbitrary port. This UDP socket is used to send the
Peer Discovery signal to the DLEP link-local multicast address and Peer Discovery signal to the DLEP link-local multicast address and
port (TBD). The implementation then waits on receipt of a Peer Offer port (TBD). The implementation then waits on receipt of a Peer Offer
signal, which MUST contain the unicast address and port for TCP-based signal, which MUST contain the unicast address and port for TCP-based
communication with a DLEP modem. The Peer Offer signal MAY contain communication with a DLEP modem. The Peer Offer signal MAY contain
skipping to change at page 12, line 29 skipping to change at page 13, line 5
7.2 DLEP Router session flow - Configured case 7.2 DLEP Router session flow - Configured case
When a DLEP router implementation has the address and port When a DLEP router implementation has the address and port
information for a TCP connection to a modem (obtained either via information for a TCP connection to a modem (obtained either via
configuration or via the discovery process described above), the configuration or via the discovery process described above), the
router will initialize and bind a TCP socket. This socket is used to router will initialize and bind a TCP socket. This socket is used to
connect to the DLEP modem software. After a successful TCP connect, connect to the DLEP modem software. After a successful TCP connect,
the modem implementation MUST issue a Peer Initialization signal to the modem implementation MUST issue a Peer Initialization signal to
the DLEP router. The Peer Initialization signal MUST contain TLVs for the DLEP router. The Peer Initialization signal MUST contain TLVs for
ALL supported metrics from this modem (e.g. all MANDATORY metrics ALL supported metrics from this modem (e.g. all mandatory metrics
plus all OPTIONAL metrics supported by the implementation), along plus all optional metrics supported by the implementation), along
with the default values of those metrics. After sending the Peer with the default values of those metrics. After sending the Peer
Initialization, the modem implementation should wait for receipt of a Initialization, the modem implementation MUST wait for receipt of a
Peer Initialization ACK signal from the router. Receipt of the Peer Peer Initialization ACK signal from the router. Receipt of the Peer
Initialization ACK indicates that the router has received and Initialization ACK indicates that the router has received and
processed the Peer Initialization, and the session MUST transition to processed the Peer Initialization, and the session MUST transition to
the "in session" state. At this point, signals regarding destinations the "in session" state. At this point, signals regarding destinations
in the network, and/or Peer Update signals, can flow on the DLEP in the network, and/or Peer Update signals, can flow on the DLEP
session between modem and router. The "in session" state is session between modem and router. The "in session" state is
maintained until one of the following conditions occur: maintained until one of the following conditions occur:
o The session is explicitly terminated (using Peer Termination), or o The session is explicitly terminated (using Peer Termination), or
o The session times out, based on supplied timeout values. o The session times out, based on supplied timeout values.
skipping to change at page 17, line 17 skipping to change at page 17, line 41
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - An 8-bit unsigned integer field specifying the data TLV Type - An 8-bit unsigned integer field specifying the data
item being sent. item being sent.
Length - An 8-bit length of the value field of the data item Length - An 8-bit length of the value field of the data item
Value - A field of length <Length> which contains data Value - A field of length <Length> which contains data
specific to a particular data item. specific to a particular data item.
10.1 DLEP Port 10.1 DLEP Version
The DLEP Port TLV is a MANDATORY TLV in the Peer Offer signal. The The DLEP Version TLV is a mandatory TLV in the Peer Discovery,
Peer Initialization, and Peer Initialization ACK signals. The Version
TLV is used to indicate the version of the protocol running in the
originator. A DLEP implementation MAY use this information to decide
if the potential session partner is running at a supported level.
The DLEP Version TLV contains the following fields:
0 1 2 3
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length=4 | Major Version |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Minor Version |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD
Length - Length is 4
Major Version - Major version of the modem or router protocol.
Minor Version - Minor version of the modem or router protocol.
Support of this draft is indicated by setting the Major Version to
'0', and the Minor Version to '7' (e.g. Version 0.7).
10.2 DLEP Port
The DLEP Port TLV is a mandatory TLV in the Peer Offer signal. The
DLEP Port TLV is used to indicate the TCP Port number on the DLEP DLEP Port TLV is used to indicate the TCP Port number on the DLEP
server available for connections. The receiver MUST use this server available for connections. The receiver MUST use this
information to perform the TCP connect to the DLEP server. information to perform the TCP connect to the DLEP server.
The DLEP Port TLV contains the following fields: The DLEP Port TLV contains the following fields:
0 1 2 3 0 1 2 3
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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length=2 | TCP Port Number | |TLV Type =TBD |Length=2 | TCP Port Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD TLV Type - TBD
Length - Length is 2 Length - Length is 2
TCP Port Number - TCP Port number on the DLEP server. TCP Port Number - TCP Port number on the DLEP server.
10.2 Peer Type 10.3 Peer Type
The Peer Type TLV is an OPTIONAL TLV in both the Peer Discovery and The Peer Type TLV is an OPTIONAL TLV in both the Peer Discovery and
Peer Offer signals. The Peer Type TLV is used by the router and modem Peer Offer signals. The Peer Type TLV is used by the router and modem
to give additional information as to its type. The peer type is a to give additional information as to its type. The peer type is a
string and is envisioned to be used for informational purposes (e.g. string and is envisioned to be used for informational purposes (e.g.
as output in a display command). as output in a display command).
The Peer Type TLV contains the following fields: The Peer Type TLV contains the following fields:
0 1 2 3 0 1 2 3
skipping to change at page 18, line 18 skipping to change at page 19, line 22
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD TLV Type - TBD
Length - Length of peer type string. Length - Length of peer type string.
Peer Type String - Non-Null terminated string, using UTF-8 encoding. Peer Type String - Non-Null terminated string, using UTF-8 encoding.
For example, a satellite modem might set this For example, a satellite modem might set this
variable to 'Satellite terminal'. variable to 'Satellite terminal'.
10.3 MAC Address 10.4 MAC Address
The MAC address TLV MUST appear in all destination-oriented signals The MAC address TLV MUST appear in all destination-oriented signals
(e.g. Destination Up, Destination Up ACK, Destination Down, (e.g. Destination Up, Destination Up ACK, Destination Down,
Destination Down ACK, Destination Update, Link Characteristics Destination Down ACK, Destination Update, Link Characteristics
Request, and Link Characteristics ACK). The MAC Address TLV contains Request, and Link Characteristics ACK). The MAC Address TLV contains
the address of the destination on the remote node. The MAC address the address of the destination on the remote node. The MAC address
MAY be either a physical or a virtual destination. Examples of a MAY be either a physical or a virtual destination. Examples of a
virtual destination would be a multicast MAC address, or the virtual destination would be a multicast MAC address, or the
broadcast MAC (0xFFFFFFFFFFFF). broadcast MAC (0xFFFFFFFFFFFF).
skipping to change at page 18, line 44 skipping to change at page 19, line 48
| MAC Address | | MAC Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD TLV Type - TBD
Length - 6 Length - 6
MAC Address - MAC Address of the destination (either physical or MAC Address - MAC Address of the destination (either physical or
virtual). virtual).
10.4 IPv4 Address 10.5 IPv4 Address
The IPv4 Address TLV is an optional TLV. If supported, it MAY appear The IPv4 Address TLV is an optional TLV. If supported, it MAY appear
in Destination Up, Destination Update, Peer Initialization, and Peer in Destination Up, Destination Update, Peer Initialization, and Peer
Update signals. When included in Destination signals, the IPv4 Update signals. When included in Destination signals, the IPv4
Address TLV contains the IPv4 address of the destination, as well as Address TLV contains the IPv4 address of the destination, as well as
a subnet mask value. In the Peer Update signal, it contains the IPv4 a subnet mask value. In the Peer Update signal, it contains the IPv4
address of the originator of the signal. In either case, the TLV also address of the originator of the signal. In either case, the TLV also
contains an indication of whether this is a new or existing address, contains an indication of whether this is a new or existing address,
or is a deletion of a previously known address. or is a deletion of a previously known address.
The IPv4 Address TLV contains the following fields: The IPv4 Address TLV contains the following fields:
0 1 2 3 0 1 2 3
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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length = 6 | Add/Drop | IPv4 Address | |TLV Type =TBD |Length = 5 | Add/Drop | IPv4 Address |
| | | Indicator | | | | Indicator |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 Address | Subnet Mask | | IPv4 Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD TLV Type - TBD
Length - 6 Length - 6
Add/Drop - Value indicating whether this is a new or existing Add/Drop - Value indicating whether this is a new or existing
address (0x01), or a withdrawal of an address (0x02). address (0x01), or a withdrawal of an address (0x02).
IPv4 Address - The IPv4 address of the destination or peer. IPv4 Address - The IPv4 address of the destination or peer.
Subnet Mask - A subnet mask (0-32) to be applied to the IPv4 Subnet Mask - A subnet mask (0-32) to be applied to the IPv4
address. address.
10.5 IPv6 Address 10.6 IPv6 Address
The IPv6 Address TLV is an optional TLV. If supported, it MAY be used The IPv6 Address TLV is an optional TLV. If supported, it MAY be used
in the Destination Up, Destination Update, Peer Initialization, and in the Destination Up, Destination Update, Peer Initialization, and
Peer Update Signals. When included in Destination signals, this data Peer Update Signals. When included in Destination signals, this data
item contains the IPv6 address of the destination. In the Peer item contains the IPv6 address of the destination. In the Peer
Discovery and Peer Update, it contains the IPv6 address of the Discovery and Peer Update, it contains the IPv6 address of the
originating peer. In either case, the data item also contains an originating peer. In either case, the data item also contains an
indication of whether this is a new or existing address, or is a indication of whether this is a new or existing address, or is a
deletion of a previously known address, as well as a subnet mask. deletion of a previously known address, as well as a subnet mask.
The IPv6 Address TLV contains the following fields: The IPv6 Address TLV contains the following fields:
0 1 2 3 0 1 2 3
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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length = 18 | Add/Drop | IPv6 Address | |TLV Type =TBD |Length = 17 | Add/Drop | IPv6 Address |
| | | Indicator | | | | | Indicator | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 Address | | IPv6 Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 Address | | IPv6 Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 Address | | IPv6 Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 Address | Subnet Mask | | IPv6 Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD TLV Type - TBD
Length - 18 Length - 17
Add/Drop - Value indicating whether this is a new or existing Add/Drop - Value indicating whether this is a new or existing
address (0x01), or a withdrawal of an address (0x02). address (0x01), or a withdrawal of an address (0x02).
IPv6 Address - IPv6 Address of the destination or peer. IPv6 Address - IPv6 Address of the destination or peer.
Subnet Mask - A subnet mask value (0-128) to be applied to the Ipv6 10.7 Maximum Data Rate (Receive)
address.
10.6 Maximum Data Rate (Receive)
The Maximum Data Rate Receive (MDRR) TLV is a mandatory data item, The Maximum Data Rate Receive (MDRR) TLV is a mandatory data item,
used in Destination Up, Destination Update, Peer Initialization, Peer used in Destination Up, Destination Update, Peer Initialization, Peer
Update, and Link Characteristics ACK Signals to indicate the maximum Update, and Link Characteristics ACK Signals to indicate the maximum
theoretical data rate, in bits per second, that can be achieved while theoretical data rate, in bits per second, that can be achieved while
receiving data on the link. When metrics are reported via the signals receiving data on the link. When metrics are reported via the signals
listed above, the maximum data rate receive MUST be reported. listed above, the maximum data rate receive MUST be reported.
0 1 2 3 0 1 2 3
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 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
skipping to change at page 20, line 43 skipping to change at page 22, line 4
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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length = 8 | MDRR (bps) | |TLV Type =TBD |Length = 8 | MDRR (bps) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MDRR (bps) | | MDRR (bps) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MDRR (bps) | | MDRR (bps) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD TLV Type - TBD
Length - 8 Length - 8
Maximum Data Rate Receive - A 64-bit unsigned number, representing Maximum Data Rate Receive - A 64-bit unsigned number, representing
the maximum theoretical data rate, in bits per the maximum theoretical data rate, in bits per
second (bps), that can be achieved while second (bps), that can be achieved while
receiving on the link. receiving on the link.
10.7 Maximum Data Rate (Transmit) 10.8 Maximum Data Rate (Transmit)
The Maximum Data Rate Transmit (MDRT) TLV is a mandatory data item, The Maximum Data Rate Transmit (MDRT) TLV is a mandatory data item,
used in Destination Up, Destination Update, Peer Initialization, Peer used in Destination Up, Destination Update, Peer Initialization, Peer
Update, and Link Characteristics ACK Signals to indicate the maximum Update, and Link Characteristics ACK Signals to indicate the maximum
theoretical data rate, in bits per second, that can be achieved while theoretical data rate, in bits per second, that can be achieved while
transmitting data on the link. When metrics are reported via the transmitting data on the link. When metrics are reported via the
signals listed above, the maximum data rate transmit MUST be signals listed above, the maximum data rate transmit MUST be
reported. reported.
0 1 2 3 0 1 2 3
skipping to change at page 21, line 34 skipping to change at page 22, line 40
TLV Type - TBD TLV Type - TBD
Length - 8 Length - 8
Maximum Data Rate Transmit - A 64-bit unsigned number, representing Maximum Data Rate Transmit - A 64-bit unsigned number, representing
the maximum theoretical data rate, in bits per the maximum theoretical data rate, in bits per
second (bps), that can be achieved while second (bps), that can be achieved while
transmitting on the link. transmitting on the link.
10.8 Current Data Rate (Receive) 10.9 Current Data Rate (Receive)
The Current Data Rate Receive (CDRR) TLV is a mandatory data item, The Current Data Rate Receive (CDRR) TLV is a mandatory data item,
used in Destination Up, Destination Update, Peer Initialization, Peer used in Destination Up, Destination Update, Peer Initialization, Peer
Update, Link Characteristics Request, and Link Characteristics ACK Update, Link Characteristics Request, and Link Characteristics ACK
signals to indicate the rate at which the link is currently operating signals to indicate the rate at which the link is currently operating
for receiving traffic. In the case of the Link Characteristics for receiving traffic. In the case of the Link Characteristics
Request, CDRR represents the desired receive data rate for the link. Request, CDRR represents the desired receive data rate for the link.
When metrics are reported via the signals above (e.g. Destination When metrics are reported via the signals above (e.g. Destination
Update), the current data rate receive MUST be reported. Update), the current data rate receive MUST be reported.
skipping to change at page 22, line 24 skipping to change at page 23, line 32
the current data rate, in bits per second, that the current data rate, in bits per second, that
is currently be achieved while receiving traffic is currently be achieved while receiving traffic
on the link. When used in the Link on the link. When used in the Link
Characteristics Request, CDRR represents the Characteristics Request, CDRR represents the
desired receive rate, in bits per second, on the desired receive rate, in bits per second, on the
link. If there is no distinction between current link. If there is no distinction between current
and maximum receive data rates, current data and maximum receive data rates, current data
rate receive SHOULD be set equal to the maximum rate receive SHOULD be set equal to the maximum
data rate receive. data rate receive.
10.9 Current Data Rate (Transmit) 10.10 Current Data Rate (Transmit)
The Current Data Rate Receive (CDRT) TLV is a mandatory data item, The Current Data Rate Receive (CDRT) TLV is a mandatory data item,
used in Destination Up, Destination Update, Peer Initialization, Peer used in Destination Up, Destination Update, Peer Initialization, Peer
Update, Link Characteristics Request, and Link Characteristics ACK Update, Link Characteristics Request, and Link Characteristics ACK
signals to indicate the rate at which the link is currently operating signals to indicate the rate at which the link is currently operating
for transmitting traffic. In the case of the Link Characteristics for transmitting traffic. In the case of the Link Characteristics
Request, CDRT represents the desired transmit data rate for the link. Request, CDRT represents the desired transmit data rate for the link.
When metrics are reported via the signals above (e.g. Destination When metrics are reported via the signals above (e.g. Destination
Update), the current data rate transmit MUST be reported. Update), the current data rate transmit MUST be reported.
skipping to change at page 23, line 15 skipping to change at page 24, line 32
the current data rate, in bits per second, that the current data rate, in bits per second, that
is currently be achieved while transmitting is currently be achieved while transmitting
traffic on the link. When used in the Link traffic on the link. When used in the Link
Characteristics Request, CDRT represents the Characteristics Request, CDRT represents the
desired transmit rate, in bits per second, on desired transmit rate, in bits per second, on
the link. If there is no distinction between the link. If there is no distinction between
current and maximum transmit data rates, current current and maximum transmit data rates, current
data rate transmit MUST be set equal to the data rate transmit MUST be set equal to the
maximum data rate transmit. maximum data rate transmit.
10.10 Latency 10.11 Latency
The Latency TLV is a mandatory data item. It is used in Peer The Latency TLV is a mandatory data item. It is used in Peer
Initialization, Destination Up, Destination Update, Peer Initialization, Destination Up, Destination Update, Peer
Initialization, Peer Update, Link Characteristics Request, and Link Initialization, Peer Update, Link Characteristics Request, and Link
Characteristics ACK signals to indicate the amount of latency on the Characteristics ACK signals to indicate the amount of latency on the
link, or in the case of the Link Characteristics Request, to indicate link, or in the case of the Link Characteristics Request, to indicate
the maximum latency required on the link. the maximum latency required on the link.
0 1 2 3 0 1 2 3
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 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
skipping to change at page 23, line 48 skipping to change at page 25, line 16
over the link. In Destination Up, Destination Update, over the link. In Destination Up, Destination Update,
and Link Characteristics ACK, this value is reported and Link Characteristics ACK, this value is reported
as delay, in microseconds. The calculation of latency as delay, in microseconds. The calculation of latency
is implementation dependent. For example, the latency is implementation dependent. For example, the latency
may be a running average calculated from the internal may be a running average calculated from the internal
queuing. If a device cannot calculate latency, this queuing. If a device cannot calculate latency, this
TLV SHOUD NOT be issued. In the Link Characteristics TLV SHOUD NOT be issued. In the Link Characteristics
Request Signal, this value represents the maximum Request Signal, this value represents the maximum
delay, in microseconds, expected on the link. delay, in microseconds, expected on the link.
10.11 Resources (Receive) 10.12 Resources (Receive)
The Receive Resources TLV is an optional data item. If supported, it The Receive Resources TLV is an optional data item. If supported, it
is used in Destination Up, Destination Update, Peer Initialization, is used in Destination Up, Destination Update, Peer Initialization,
Peer Update, and Link Characteristics ACK signals to indicate a Peer Update, and Link Characteristics ACK signals to indicate a
percentage (0-100) amount of resources (e.g. battery power), percentage (0-100) amount of resources (e.g. battery power),
committed to receiving data, remaining on the originating peer. committed to receiving data, remaining on the originating peer.
The Resources TLV contains the following fields: The Resources TLV contains the following fields:
0 1 2 0 1 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
skipping to change at page 24, line 28 skipping to change at page 25, line 42
TLV Type - TBD TLV Type - TBD
Length - 1 Length - 1
Receive Resources - A percentage, 0-100, representing the amount Receive Resources - A percentage, 0-100, representing the amount
of remaining resources, such as battery power, of remaining resources, such as battery power,
allocated to receiving data. If a device cannot allocated to receiving data. If a device cannot
calculate receive resources, this TLV SHOULD NOT be calculate receive resources, this TLV SHOULD NOT be
issued. issued.
10.12 Resources (Transmit) 10.13 Resources (Transmit)
The Transmit Resources TLV is an optional data item. If supported, it The Transmit Resources TLV is an optional data item. If supported, it
is used in Destination Up, Destination Update, Peer Initialization, is used in Destination Up, Destination Update, Peer Initialization,
Peer Update, and Link Characteristics ACK signals to indicate a Peer Update, and Link Characteristics ACK signals to indicate a
percentage (0-100) amount of resources (e.g. battery power), percentage (0-100) amount of resources (e.g. battery power),
committed to transmitting data, remaining on the originating peer. committed to transmitting data, remaining on the originating peer.
The Resources TLV contains the following fields: The Resources TLV contains the following fields:
0 1 2 0 1 2
skipping to change at page 25, line 6 skipping to change at page 26, line 23
TLV Type - TBD TLV Type - TBD
Length - 1 Length - 1
Transmit Resources - A percentage, 0-100, representing the amount Transmit Resources - A percentage, 0-100, representing the amount
of remaining resources, such as battery power, of remaining resources, such as battery power,
allocated to transmitting data. If the transmit allocated to transmitting data. If the transmit
resources cannot be calculated, then the TLV SHOULD resources cannot be calculated, then the TLV SHOULD
NOT be issued. NOT be issued.
10.13 Relative Link Quality (Receive) 10.14 Relative Link Quality (Receive)
The Relative Link Quality Receive (RLQR) TLV is an optional data The Relative Link Quality Receive (RLQR) TLV is an optional data
item. If supported, it is used in Peer Initialization, Destination item. If supported, it is used in Peer Initialization, Destination
Up, Destination Update, Peer Initialization, Peer Update, and Link Up, Destination Update, Peer Initialization, Peer Update, and Link
Characteristics ACK signals to indicate the quality of the link for Characteristics ACK signals to indicate the quality of the link for
receiving data as calculated by the originating peer. receiving data as calculated by the originating peer.
The Relative Link Quality (Receive) TLV contains the following The Relative Link Quality (Receive) TLV contains the following
fields: fields:
skipping to change at page 25, line 34 skipping to change at page 27, line 5
TLV Type - TBD TLV Type - TBD
Length - 1 Length - 1
Relative Link Quality (Receive) - A non-dimensional number, 1-100, Relative Link Quality (Receive) - A non-dimensional number, 1-100,
representing relative link quality. A value of representing relative link quality. A value of
100 represents a link of the highest quality. 100 represents a link of the highest quality.
If a device cannot calculate the RLQR, this If a device cannot calculate the RLQR, this
TLV SHOULD NOT be issued. TLV SHOULD NOT be issued.
10.14 Relative Link Quality (Transmit) 10.15 Relative Link Quality (Transmit)
The Transmit Link Quality Receive (RLQT) TLV is an optional data The Transmit Link Quality Receive (RLQT) TLV is an optional data
item. It is used in Peer Initialization, Destination Up, Destination item. It is used in Peer Initialization, Destination Up, Destination
Update, Peer Initialization, Peer Update, and Link Characteristics Update, Peer Initialization, Peer Update, and Link Characteristics
ACK signals to indicate the quality of the link for transmitting data ACK signals to indicate the quality of the link for transmitting data
as calculated by the originating peer. as calculated by the originating peer.
The Relative Link Quality (Transmit) TLV contains the following The Relative Link Quality (Transmit) TLV contains the following
fields: fields:
skipping to change at page 26, line 17 skipping to change at page 27, line 33
TLV Type - TBD TLV Type - TBD
Length - 1 Length - 1
Relative Link Quality (Transmit) - A non-dimensional number, 1-100, Relative Link Quality (Transmit) - A non-dimensional number, 1-100,
representing relative link quality. A value of representing relative link quality. A value of
100 represents a link of the highest quality. 100 represents a link of the highest quality.
If a device cannot calculate the RLQT, this If a device cannot calculate the RLQT, this
TLV SHOULD NOT be issued. TLV SHOULD NOT be issued.
10.15 Status 10.16 Status
The Status TLV is sent as part of an acknowledgement signal, from The Status TLV is sent as part of an acknowledgement signal, from
either the modem or the router, to indicate the success or failure of either the modem or the router, to indicate the success or failure of
a given request. a given request.
The Status TLV contains the following fields: The Status TLV contains the following fields:
0 1 2 0 1 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 26, line 40 skipping to change at page 28, line 8
TLV Type - TBD TLV Type - TBD
Length - 1 Length - 1
Termination Code - 0 = Success, Non-zero = Failure. Specific values Termination Code - 0 = Success, Non-zero = Failure. Specific values
of a non-zero termination code depend on the of a non-zero termination code depend on the
operation requested (e.g. Destination Up, operation requested (e.g. Destination Up,
Destination Down, etc). Destination Down, etc).
10.16 Heartbeat Interval 10.17 Heartbeat Interval
The Heartbeat Interval TLV is a mandatory TLV. It MUST be sent during The Heartbeat Interval TLV is a mandatory TLV. It MUST be sent during
Peer Initialization to indicate the desired Heartbeat timeout window. Peer Initialization to indicate the desired Heartbeat timeout window.
The receiver MUST either accept the timeout interval supplied by the The receiver MUST either accept the timeout interval supplied by the
sender, or reject the Peer Initialization, and close the socket. sender, or reject the Peer Initialization, and close the socket.
Implementations MUST implement heuristics such that DLEP signals Implementations MUST implement heuristics such that DLEP signals
sent/received reset the timer interval. sent/received reset the timer interval.
The Interval is used to specify a period (in seconds) for Heartbeat The Interval is used to specify a period (in seconds) for Heartbeat
Signals (See Section 11.15). By specifying an Interval value of 0, Signals (See Section 11.15). By specifying an Interval value of 0,
skipping to change at page 27, line 30 skipping to change at page 28, line 44
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD TLV Type - TBD
Length - 2 Length - 2
Interval - 0 = Do NOT use heartbeats on this peer-to-peer Interval - 0 = Do NOT use heartbeats on this peer-to-peer
session. Non-zero = Interval, in seconds, for session. Non-zero = Interval, in seconds, for
heartbeat signals. heartbeat signals.
10.17 Link Characteristics ACK Timer 10.18 Link Characteristics ACK Timer
The Link Characteristics ACK Timer TLV is an optional TLV. If The Link Characteristics ACK Timer TLV is an optional TLV. If
supported, it MAY be sent during Peer Initialization to indicate the supported, it MAY be sent during Peer Initialization to indicate the
desired number of seconds to wait for a response to a Link desired number of seconds to wait for a response to a Link
Characteristics Request. If this TLV is omitted, implementations Characteristics Request. If this TLV is omitted, implementations
supporting the Link Characteristics Request SHOULD choose a default supporting the Link Characteristics Request SHOULD choose a default
value. value.
The Link Characteristics ACK Timer TLV contains the following fields: The Link Characteristics ACK Timer TLV contains the following fields:
skipping to change at page 28, line 8 skipping to change at page 29, line 23
TLV Type - TBD TLV Type - TBD
Length - 1 Length - 1
Interval - 0 = Do NOT use timeouts for Link Characteristics Interval - 0 = Do NOT use timeouts for Link Characteristics
requests on this router/modem session. Non-zero = requests on this router/modem session. Non-zero =
Interval, in seconds, to wait before considering a Interval, in seconds, to wait before considering a
Link Characteristics Request has been lost. Link Characteristics Request has been lost.
10.18 Credit Window Status 10.19 Credit Window Status
The Credit Window Status TLV is an optional TLV. If credits are The Credit Window Status TLV is an optional TLV. If credits are
supported by the DLEP participants (both the router and the modem), supported by the DLEP participants (both the router and the modem),
the Credit Window Status TLV MUST be sent by the participant the Credit Window Status TLV MUST be sent by the participant
receiving a Credit Grant Request for a given destination. receiving a Credit Grant Request for a given destination.
The Credit Window Status TLV contains the following fields: The Credit Window Status TLV contains the following fields:
0 1 2 3 0 1 2 3
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 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
skipping to change at page 28, line 45 skipping to change at page 30, line 12
Modem Receive Window Value - A 64-bit unsigned number, indicating Modem Receive Window Value - A 64-bit unsigned number, indicating
the current (or initial) number of the current (or initial) number of
credits available on the Modem Receive credits available on the Modem Receive
Window. Window.
Router Receive Window Value - A 64-bit unsigned number, indicating Router Receive Window Value - A 64-bit unsigned number, indicating
the current (or initial) number of the current (or initial) number of
credits available on the Router Receive credits available on the Router Receive
Window. Window.
10.19 Credit Grant Request 10.20 Credit Grant Request
The Credit Grant Request TLV is an optional TLV. If credits are The Credit Grant Request TLV is an optional TLV. If credits are
supported, the Credit Grant Request TLV is sent from a DLEP supported, the Credit Grant Request TLV is sent from a DLEP
participant to grant an increment to credits on a window. The Credit participant to grant an increment to credits on a window. The Credit
Grant TLV is sent as a data item in either the Destination Up or Grant TLV is sent as a data item in either the Destination Up or
Destination Update signals. The value in a Credit Grant TLV Destination Update signals. The value in a Credit Grant TLV
represents an increment to be added to any existing credits available represents an increment to be added to any existing credits available
on the window. Upon successful receipt and processing of a Credit on the window. Upon successful receipt and processing of a Credit
Grant TLV, the receiver MUST respond with a signal containing a Grant TLV, the receiver MUST respond with a signal containing a
Credit Window Status TLV to report the updated aggregate values for Credit Window Status TLV to report the updated aggregate values for
skipping to change at page 29, line 50 skipping to change at page 31, line 17
additional credits to be assigned to the credit additional credits to be assigned to the credit
window. Since credits can only be granted by the window. Since credits can only be granted by the
receiver on a window, the applicable credit window receiver on a window, the applicable credit window
(either the MRW or the RRW) is derived from the (either the MRW or the RRW) is derived from the
sender of the grant. The Credit Increment MUST NOT sender of the grant. The Credit Increment MUST NOT
cause the window to overflow; if this condition cause the window to overflow; if this condition
occurs, implementations MUST set the credit window occurs, implementations MUST set the credit window
to the maximum value contained in a 64-bit to the maximum value contained in a 64-bit
quantity. quantity.
10.20 Credit Request 10.21 Credit Request
The Credit Request TLV is an optional TLV. If credits are supported, The Credit Request TLV is an optional TLV. If credits are supported,
the Credit Request TLV MAY be sent from either DLEP participant, via the Credit Request TLV MAY be sent from either DLEP participant, via
a Destination Update signal, to indicate the desire for the partner a Destination Update signal, to indicate the desire for the partner
to grant additional credits in order for data transfer to proceed on to grant additional credits in order for data transfer to proceed on
the session. If the corresponding Destination Up signal for this the session. If the corresponding Destination Up signal for this
session did NOT contain a Credit Window Status TLV, indicating that session did NOT contain a Credit Window Status TLV, indicating that
credits are to be used on the session, then the Credit Request TLV credits are to be used on the session, then the Credit Request TLV
MUST be rejected by the receiver via a Destination Update ACK signal. MUST be rejected by the receiver via a Destination Update ACK signal.
The Credit Request TLV contains the following fields: The Credit Request TLV contains the following fields:
skipping to change at page 31, line 4 skipping to change at page 32, line 20
0 1 2 3 0 1 2 3
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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length = 2 + |List of optional signals ... | |TLV Type =TBD |Length = 2 + |List of optional signals ... |
| |number of opt. | | | |number of opt. | |
| |signals. | | | |signals. | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD TLV Type - TBD
Length - 2 + the number of optional signals supported Length - 2 + the number of optional signals supported
List - An enumeration of the optional signal TLV Types List - An enumeration of the optional signal TLV Types
supported by the implementation. supported by the implementation.
10.21 DLEP Optional Data Items Supported 10.23 DLEP Optional Data Items Supported
The DLEP Optional Data Items Supported TLV is a mandatory data item. The DLEP Optional Data Items Supported TLV is a mandatory data item.
If optional data items (e.g., Resources) are supported, they MUST be If optional data items (e.g., Resources) are supported, they MUST be
enumerated with this data item inserted into the Peer Initialization enumerated with this data item inserted into the Peer Initialization
and Peer Initialization ACK signals. Failure to indicate optional and Peer Initialization ACK signals. Failure to indicate optional
data items indicates to a receiving peer that the sending data items indicates to a receiving peer that the sending
implementation ONLY supports the core (mandatory) data items listed implementation ONLY supports the core (mandatory) data items listed
in this specification. Optional data items that are NOT listed in in this specification. Optional data items that are NOT listed in
this data item MUST NOT be used during the DLEP session. this data item MUST NOT be used during the DLEP session.
skipping to change at page 31, line 36 skipping to change at page 33, line 5
| |number of opt. | | | |number of opt. | |
| |signals. | | | |signals. | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD TLV Type - TBD
Length - 2 + the number of optional data items supported Length - 2 + the number of optional data items supported
List - An enumeration of the optional data item TLV Types List - An enumeration of the optional data item TLV Types
supported by the implementation. supported by the implementation.
10.22 DLEP Vendor Extension 10.24 DLEP Vendor Extension
The DLEP Vendor Extension data item is an optional data item, and The DLEP Vendor Extension data item is an optional data item, and
allows for vendor-defined information to be passed between DLEP allows for vendor-defined information to be passed between DLEP
participants. The precise data carried in the payload portion of the participants. The precise data carried in the payload portion of the
data item is vendor-specific, however, the payload MUST adhere to a data item is vendor-specific, however, the payload MUST adhere to a
Type-Length-Value format. This optional data item is ONLY valid on Type-Length-Value format. This optional data item is ONLY valid on
Peer Initialization ACK, and if present, SHOULD contain device- Peer Initialization ACK, and if present, SHOULD contain device-
specific information geared to optimizing data transmission/reception specific information geared to optimizing data transmission/reception
over the modem's link. over the modem's link.
The DLEP Vendor Extension Data Item TLV contains the following The DLEP Vendor Extension Data Item TLV contains the following
fields: fields:
0 1 2 3 0 1 2 3
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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type = TBD | Length |OUI Length | Vendor OUI... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OUI TLV Subtype | Payload... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD
Length - 3 + length of OUI (in octets) + payload length
Vendor OUI - The vendor OUI, as specified in [IEEE]
OUI TLV Subtype - A 16-bit quantity, intended to indicate the
specific device.
Payload - Vendor-specific payload, formatted as Type, Length,
Value construct(s).
10.25 IPv4 Attached Subnet
The DLEP IPv4 Attached Subnet is an optional data item, and allows a
device to declare that it has an IPv4 subnet (e.g., a stub network)
attached. If supported, the DLEP IPv4 Attached Subnet TLV is allowed
ONLY in the DLEP "Destination Up" signal, and MUST NOT appear more
than once. All other occurrences of the DLEP IPv4 Attached Subnet TLV
MUST be treated as an error. Once an IPv4 Subnet has been declared by
a device, the declaration can NOT be withdrawn without terminating
the destination (via the "Destination Down" signal) and re-issuing
the "Destination Up" signal.
The DLEP IPv4 Attached Subnet data item TLV contains the following
fields:
0 1 2 3
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type = TBD | Length |OUI Length | Vendor OUI + | |TLV Type =TBD | Length = 5 | IPv4 Attached Subnet |
| | | | payload... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 Attached Subnet | Subnet Mask |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD TLV Type - TBD
Length - 3 + length of OUI (in octets) + payload length Length - 5
Vendor OUI - The vendor OUI, as specified in [IEEE] IPv4 Subnet - The IPv4 subnet reachable at the destination.
Payload - Vendor-specific payload, formatted as Type, Length, Subnet Mask - A subnet mask (0-32) to be applied to the IPv4
Value construct(s). subnet.
10.26 IPv6 Attached Subnet
The DLEP IPv6 Attached Subnet is an optional data item, and allows a
device to declare that it has an IPv6 subnet (e.g., a stub network)
attached. If supported, the DLEP IPv6 Attached Subnet TLV is allowed
ONLY in the DLEP "Destination Up" signal, and MUST NOT appear more
than once. All other occurrences of the DLEP IPv6 Attached Subnet TLV
MUST be treated as an error. As in the case of the IPv4 attached
subnet, once an IPv6 attached subnet has been declared, it can NOT be
withdrawn without terminating the destination (via "Destination
Down") and re-issuing the "Destination Up" signal.
The DLEP IPv6 Attached Subnet data item TLV contains the following
fields:
0 1 2 3
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length = 17 | IPv6 Attached Subnet |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 Attached Subnet |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 Attached Subnet |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 Attached Subnet |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv6 Attached Subnet | Subnet Mask |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD
Length - 17
IPv4 Subnet - The IPv6 subnet reachable at the destination.
Subnet Mask - A subnet mask (0-128) to be applied to the IPv6
subnet.
11. DLEP Protocol Signals 11. DLEP Protocol Signals
DLEP signals are encoded as a string of Type-Length-Value (TLV) DLEP signals are encoded as a string of Type-Length-Value (TLV)
constructs. The first TLV in a DLEP signal MUST be a valid DLEP constructs. The first TLV in a DLEP signal MUST be a valid DLEP
signal, as defined in section 11.1 of this document. Following the signal, as defined in section 11.1 of this document. Following the
signal TLV is 0 or more TLVs, representing the data items that are signal TLV is 0 or more TLVs, representing the data items that are
appropriate for the signal. The layout of a DLEP signal is thus: appropriate for the signal. The layout of a DLEP signal is thus:
0 1 2 3 0 1 2 3
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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| DLEP Signal |DLEP Signal length (3 + length |Start of DLEP | | DLEP Signal |DLEP Signal length (length of |Start of DLEP |
| Type value |of all data items) |data item TLVs | | Type value |all data items) |data item TLVs |
| (value TBD) | | | | (value TBD) | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
All DLEP signals begin with this structure. Therefore, in the All DLEP signals begin with this structure. Therefore, in the
following descriptions of specific signals, this header structure is following descriptions of specific signals, this header structure is
assumed, and will not be replicated. assumed, and will not be replicated.
11.1 Signal TLV Values 11.1 Signal TLV Values
As mentioned above, all DLEP signals begin with the Type value. Valid As mentioned above, all DLEP signals begin with the Type value. Valid
skipping to change at page 33, line 24 skipping to change at page 36, line 18
TBD Link Characteristics ACK TBD Link Characteristics ACK
11.2 Peer Discovery Signal 11.2 Peer Discovery Signal
The Peer Discovery Signal is sent by a router to discover DLEP The Peer Discovery Signal is sent by a router to discover DLEP
routers in the network. The Peer Offer signal is required to complete routers in the network. The Peer Offer signal is required to complete
the discovery process. Implementations MAY implement their own retry the discovery process. Implementations MAY implement their own retry
heuristics in cases where it is determined the Peer Discovery Signal heuristics in cases where it is determined the Peer Discovery Signal
has timed out. has timed out.
Given the packet format described in section 11, the initial TLV Type To construct a Peer Discovery signal, the initial TLV Type value is
value is set to DLEP_PEER_DISCOVERY (value TBD). set to DLEP_PEER_DISCOVERY (value TBD). The signal TLV MUST be
followed by the mandatory Data Item TLVs.
There are NO Data Item TLVs associated with the Peer Discovery Mandatory Data Item TLVs:
signal. - DLEP Version
- Heartbeat Interval
There are NO optional data items for the Peer Discovery signal.
11.3 Peer Offer Signal 11.3 Peer Offer Signal
The Peer Offer Signal is sent by a DLEP modem in response to a Peer The Peer Offer Signal is sent by a DLEP modem in response to a Peer
Discovery Signal. Upon receipt, and processing, of a Peer Offer Discovery Signal. Upon receipt, and processing, of a Peer Offer
signal, the router responds by issuing a TCP connect to the signal, the router responds by issuing a TCP connect to the
address/port combination specified in the received Peer Offer. address/port combination specified in the received Peer Offer.
The Peer Offer signal MUST be sent to the unicast address of the The Peer Offer signal MUST be sent to the unicast address of the
originator of Peer Discovery. originator of Peer Discovery.
To construct a Peer Offer signal, the initial TLV type value is set To construct a Peer Offer signal, the initial TLV type value is set
to DLEP_PEER_OFFER (value TBD). The signal TLV is then followed by to DLEP_PEER_OFFER (value TBD). The signal TLV is then followed by
all MANDATORY Data Item TLVs, then by any OPTIONAL Data Item TLVs the all mandatory Data Item TLVs, then by any optional Data Item TLVs the
implementation supports: implementation supports:
Mandatory Data Item TLVs: Mandatory Data Item TLVs:
- DLEP Version
- Heartbeat Interval - Heartbeat Interval
- At least one (1) IPv4 or IPv6 Address TLV - At least one (1) IPv4 or IPv6 Address TLV
- DLEP Port - DLEP Port
Optional Data Item TLVs: Optional Data Item TLVs:
- Peer Type - Peer Type
- Status - Status
11.4 Peer Initialization Signal 11.4 Peer Initialization Signal
The Peer Initialization signal is sent by a router to start the DLEP The Peer Initialization signal is sent by a router to start the DLEP
TCP session. It is sent by the router after a TCP connect to an TCP session. It is sent by the router after a TCP connect to an
address/port combination that was obtained either via receipt of a address/port combination that was obtained either via receipt of a
Peer Offer, or from a-priori configuration. If any optional signals Peer Offer, or from a-priori configuration. If any optional signals
or data items are supported by the implementation, they MUST be or data items are supported by the implementation, they MUST be
enumerated in the DLEP Optional Signals Supported and DLEP Optional enumerated in the DLEP Optional Signals Supported and DLEP Optional
Data Items Supported items. Data Items Supported items.
Mandatory Data Item TLVs: Mandatory Data Item TLVs:
- DLEP Version
- Heartbeat Interval - Heartbeat Interval
- Optional Signals Supported - Optional Signals Supported
- Optional Data Items Supported - Optional Data Items Supported
Optional Data Item TLVs: Optional Data Item TLVs:
- Peer Type - Peer Type
Note that optional signals and data items supported MUST be supplied If the Optional Signals Supported (or the Optional Data Items
with the Peer Initialization, so that the modem may determine what Supported) TLV is absent in Peer Initialization, the receiver of the
optional support is available within the router. If the Optional signal MUST conclude that there is NO optional support in the
Signals Supported (or the Optional Data Items Supported) TLV is sender.
absent in Peer Initialization, the receiver of the signal MUST
conclude that there is NO optional support in the sender.
11.5 Peer Initialization ACK Signal 11.5 Peer Initialization ACK Signal
The Peer Initialization ACK signal is a mandatory signal, sent in The Peer Initialization ACK signal is a mandatory signal, sent in
response to a received Peer Initialization signal. The Peer response to a received Peer Initialization signal. The Peer
Initialization ACK signal completes the TCP-level DLEP session Initialization ACK signal completes the TCP-level DLEP session
establishment; the sender of the signal should transition to an "in- establishment; the sender of the signal should transition to an "in-
session" state when the signal is sent, and the receiver should session" state when the signal is sent, and the receiver should
transition to the "in-session" state upon receipt (and successful transition to the "in-session" state upon receipt (and successful
parsing) of Peer Initialization ACK. parsing) of Peer Initialization ACK.
skipping to change at page 35, line 17 skipping to change at page 38, line 15
attempt by a DLEP session peer to send an optional signal to a peer attempt by a DLEP session peer to send an optional signal to a peer
without support MUST result in an error which terminates the session. without support MUST result in an error which terminates the session.
Any optional data item sent to a peer without support will be ignored Any optional data item sent to a peer without support will be ignored
and silently dropped. and silently dropped.
To construct a Peer Initialization ACK signal, the initial TLV type To construct a Peer Initialization ACK signal, the initial TLV type
value is set to DLEP_PEER_INIT_ACK (value TBD). The signal TLV is value is set to DLEP_PEER_INIT_ACK (value TBD). The signal TLV is
then followed by the required data items: then followed by the required data items:
Mandatory Data Item TLVs: Mandatory Data Item TLVs:
- DLEP Version
- Heartbeat Interval - Heartbeat Interval
- Maximum Data Rate Receive - Maximum Data Rate Receive
- Maximum Data Rate Transmit - Maximum Data Rate Transmit
- Current Data Rate Receive - Current Data Rate Receive
- Current Data Rate Transmit - Current Data Rate Transmit
- Latency
- Relative Link Quality Receive
- Relative Link Quality Transmit
- DLEP Optional Signals Supported - DLEP Optional Signals Supported
- DLEP Optional Data Items Supported - DLEP Optional Data Items Supported
- Status - Status
Optional Data Item TLVs: Optional Data Item TLVs:
- Peer Type - Peer Type
- DLEP Vendor Extension - DLEP Vendor Extension
- Latency
- Relative Link Quality Receive
- Relative Link Quality Transmit
- Resources (Receive)
- Resources (Transmit)
11.6 Peer Update Signal 11.6 Peer Update Signal
The Peer Update signal is an optional signal, sent by a DLEP peer to The Peer Update signal is an optional signal, sent by a DLEP peer to
indicate local Layer 3 address changes, or for metric changes on a indicate local Layer 3 address changes, or for metric changes on a
modem-wide basis. For example, addition of an IPv4 address to the modem-wide basis. For example, addition of an IPv4 address to the
router MAY prompt a Peer Update signal to its attached DLEP modems. router MAY prompt a Peer Update signal to its attached DLEP modems.
Also, a modem that changes its Maximum Data Rate for all destinations Also, a modem that changes its Maximum Data Rate for all destinations
MAY reflect that change via a Peer Update Signal to its attached MAY reflect that change via a Peer Update Signal to its attached
router(s). router(s).
skipping to change at page 36, line 30 skipping to change at page 39, line 31
- IPv4 Address - IPv4 Address
- IPv6 Address - IPv6 Address
- Maximum Data Rate (Receive) - Maximum Data Rate (Receive)
- Maximum Data Rate (Transmit) - Maximum Data Rate (Transmit)
- Current Data Rate (Receive) - Current Data Rate (Receive)
- Current Data Rate (Transmit) - Current Data Rate (Transmit)
- Latency - Latency
- Resources (Receive) - Resources (Receive)
- Resources (Transmit) - Resources (Transmit)
- Relative Link Quality (Receive) - Relative Link Quality (Receive)
- Relative Link Quality (Transmit) - Relative Link Quality (Transmit)
11.7 Peer Update ACK Signal 11.7 Peer Update ACK Signal
The Peer Update ACK signal is an optional signal, and is sent by The Peer Update ACK signal is an optional signal, and is sent by
implementations supporting Layer 3 address tracking and/or modem-wide implementations supporting Layer 3 address tracking and/or modem-wide
metrics to indicate whether a Peer Update Signal was successfully metrics to indicate whether a Peer Update Signal was successfully
processed. If the Peer Update ACK is issued, it MUST contain a Status processed. If the Peer Update ACK is issued, it MUST contain a Status
data item, indicating the success or failure of processing the data item, indicating the success or failure of processing the
received Peer Update. received Peer Update.
skipping to change at page 38, line 28 skipping to change at page 41, line 28
- Maximum Data Rate (Receive) - Maximum Data Rate (Receive)
- Maximum Data Rate (Transmit) - Maximum Data Rate (Transmit)
- Current Data Rate (Receive) - Current Data Rate (Receive)
- Current Data Rate (Transmit) - Current Data Rate (Transmit)
- Latency - Latency
- Resources (Receive) - Resources (Receive)
- Resources (Transmit) - Resources (Transmit)
- Relative Link Factor (Receive) - Relative Link Factor (Receive)
- Relative Link Factor (Transmit) - Relative Link Factor (Transmit)
- Credit Window Status - Credit Window Status
- IPv4 Attached Subnet
- IPv6 Attached Subnet
11.11 Destination Up ACK Signal 11.11 Destination Up ACK Signal
A DLEP participant sends the Destination Up ACK Signal to indicate A DLEP participant sends the Destination Up ACK Signal to indicate
whether a Destination Up Signal was successfully processed. whether a Destination Up Signal was successfully processed.
To construct a Destination Up ACK signal, the initial TLV type value To construct a Destination Up ACK signal, the initial TLV type value
is set to DLEP_DESTINATION_UP_ACK (value TBD). The MAC Address data is set to DLEP_DESTINATION_UP_ACK (value TBD). The MAC Address data
item TLV is placed in the packet next, containing the MAC address of item TLV is placed in the packet next, containing the MAC address of
the DLEP destination. The implementation would then place any the DLEP destination. The implementation would then place any
skipping to change at page 43, line 32 skipping to change at page 46, line 32
o Link Characteristics ACK o Link Characteristics ACK
It is also requested that the repository contain space for It is also requested that the repository contain space for
experimental signal types. experimental signal types.
13.4 DLEP Data Item Registrations 13.4 DLEP Data Item Registrations
A new repository for DLEP Data Items must be created. Valid Data A new repository for DLEP Data Items must be created. Valid Data
Items are: Items are:
o DLEP Version
o Peer Type o Peer Type
o MAC Address o MAC Address
o IPv4 Address o IPv4 Address
o IPv6 Address o IPv6 Address
o Maximum Data Rate (Receive) o Maximum Data Rate (Receive)
o Maximum Data Rate (Transmit) o Maximum Data Rate (Transmit)
o Current Data Rate (Receive) o Current Data Rate (Receive)
o Current Data Rate (Transmit) o Current Data Rate (Transmit)
o Latency o Latency
o Resources (Receive) o Resources (Receive)
skipping to change at page 44, line 24 skipping to change at page 47, line 25
13.6 DLEP Multicast Address 13.6 DLEP Multicast Address
It is requested that IANA allocate a multicast address for DLEP It is requested that IANA allocate a multicast address for DLEP
discovery signals. discovery signals.
14. Appendix A. 14. Appendix A.
14.1 Peer Level Signal Flows 14.1 Peer Level Signal Flows
14.1.1 Modem Device Restarts Discovery 14.1.1 Router Device Restarts Discovery
Router Modem Signal Description Router Modem Signal Description
==================================================================== ====================================================================
<-------Peer Discovery--------- Modem initiates discovery --------Peer Discovery--------> Router initiates discovery
---------Peer Offer-----------> Router detects a problem, sends <--------Peer Offer------------ Modem detects a problem, sends
w/ Non-zero Status TLV Peer Offer w/Status TLV indicating w/ Non-zero Status TLV Peer Offer w/Status TLV indicating
the error. the error.
Modem accepts failure, restarts Router accepts failure, restarts
discovery process. discovery process.
<-------Peer Discovery--------- Modem initiates discovery --------Peer Discovery--------> Router initiates discovery
---------Peer Offer-----------> Router accepts, sends Peer Offer <--------Peer Offer------------ Modem accepts, sends Peer Offer
w/ Zero Status TLV w/ Status TLV indicating success. w/Zero Status TLV indicating
success.
Discovery completed. Discovery completed.
14.1.2 Modem Device Detects Peer Offer Timeout 14.1.2 Router Device Detects Peer Offer Timeout
Router Modem Signal Description Router Modem Signal Description
==================================================================== ====================================================================
<-------Peer Discovery--------- Modem initiates discovery, starts --------Peer Discovery--------> Router initiates discovery, starts
a guard timer. a guard timer.
Modem guard timer expires. Modem Router guard timer expires. Router
restarts discovery process. restarts discovery process.
<-------Peer Discovery--------- Modem initiates discovery, starts --------Peer Discovery--------> Router initiates discovery, starts
a guard timer. a guard timer.
---------Peer Offer-----------> Router accepts, sends Peer Offer <--------Peer Offer------------ Modem accepts, sends Peer Offer
w/ Zero Status TLV w/ Status TLV indicating success. w/Zero Status TLV indicating
success.
Discovery completed. Discovery completed.
14.1.3 Router Peer Offer Lost 14.1.3 Router Peer Offer Lost
Router Modem Signal Description Router Modem Signal Description
==================================================================== ====================================================================
<-------Peer Discovery--------- Modem initiates discovery, starts <-------Peer Discovery--------- Modem initiates discovery, starts
a guard timer. a guard timer.
skipping to change at page 52, line 22 skipping to change at page 55, line 22
[IEEE] http://standards.ieee.org/develop/regauth/oui/index.html [IEEE] http://standards.ieee.org/develop/regauth/oui/index.html
Informative References Informative References
[TLS] Dierks, T. and Rescorla, E. "The Transport Layer Security [TLS] Dierks, T. and Rescorla, E. "The Transport Layer Security
(TLS) Protocol", RFC 5246, August 2008. (TLS) Protocol", RFC 5246, August 2008.
Author's Addresses Author's Addresses
Stan Ratliff Stan Ratliff
Cisco Independent Consultant
170 West Tasman Drive
San Jose, CA 95134
USA USA
EMail: sratliff@cisco.com EMail: ratliffstan@gmail.com
Bo Berry Bo Berry
Cisco Cisco
170 West Tasman Drive 170 West Tasman Drive
San Jose, CA 95134 San Jose, CA 95134
USA USA
EMail: EMail:
Greg Harrison Greg Harrison
Cisco Cisco
 End of changes. 82 change blocks. 
190 lines changed or deleted 329 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/