draft-ietf-manet-dlep-05.txt   draft-ietf-manet-dlep-06.txt 
Mobile Ad hoc Networks Working S. Ratliff Mobile Ad hoc Networks Working S. Ratliff
Group B. Berry Group B. Berry
Internet-Draft G. Harrison Internet-Draft G. Harrison
Intended status: Standards Track S. Jury Intended status: Standards Track S. Jury
Expires: August 14, 2014 Cisco Systems Expires: February 14, 2015 Cisco Systems
D. Satterwhite D. Satterwhite
Broadcom Broadcom
Febuary 10, 2014 August 13, 2014
Dynamic Link Exchange Protocol (DLEP) Dynamic Link Exchange Protocol (DLEP)
draft-ietf-manet-dlep-05 draft-ietf-manet-dlep-06
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 25 skipping to change at page 2, line 25
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
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. Credits . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3. Mandatory Versus Optional Items . . . . . . . . . . . . . . . . 9
4. Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 4. Credits . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
5. Extensions to DLEP . . . . . . . . . . . . . . . . . . . . . . 10 5. Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
6. Normal Session Flow . . . . . . . . . . . . . . . . . . . . . 11 6. Extensions to DLEP . . . . . . . . . . . . . . . . . . . . . . 11
6.1 DLEP Modem session flow - Discovery case . . . . . . . . . . 11 7. Normal Session Flow . . . . . . . . . . . . . . . . . . . . . 11
6.2 DLEP Modem session flow - Configured case . . . . . . . . . 11 7.1 DLEP Router session flow - Discovery case . . . . . . . . . 11
6.3 DLEP Router session flow . . . . . . . . . . . . . . . . . 12 7.2 DLEP Router session flow - Configured case . . . . . . . . . 12
6.4 Common Session Flow . . . . . . . . . . . . . . . . . . . . 12 7.3 DLEP Modem session flow . . . . . . . . . . . . . . . . . . 12
7. Mandatory Signals and Data Items . . . . . . . . . . . . . . . 13 7.4 Common Session Flow . . . . . . . . . . . . . . . . . . . . 13
8. Generic DLEP Message Definition . . . . . . . . . . . . . . . . 14 8. Mandatory Signals and Data Items . . . . . . . . . . . . . . . 14
9. DLEP Data Items . . . . . . . . . . . . . . . . . . . . . . . . 15 9. Generic DLEP Signal Definition . . . . . . . . . . . . . . . . 15
9.1 DLEP Version . . . . . . . . . . . . . . . . . . . . . . . 16 10. DLEP Data Items . . . . . . . . . . . . . . . . . . . . . . . 16
9.2 DLEP Port . . . . . . . . . . . . . . . . . . . . . . . . . 17 10.1 DLEP Port . . . . . . . . . . . . . . . . . . . . . . . . 17
9.3 Peer Type . . . . . . . . . . . . . . . . . . . . . . . . . 17 10.2 Peer Type . . . . . . . . . . . . . . . . . . . . . . . . 17
9.4 MAC Address . . . . . . . . . . . . . . . . . . . . . . . . 18 10.3 MAC Address . . . . . . . . . . . . . . . . . . . . . . . 18
9.5 IPv4 Address . . . . . . . . . . . . . . . . . . . . . . . 18 10.4 IPv4 Address . . . . . . . . . . . . . . . . . . . . . . . 18
9.6 IPv6 Address . . . . . . . . . . . . . . . . . . . . . . . 19 10.5 IPv6 Address . . . . . . . . . . . . . . . . . . . . . . . 19
9.7 Maximum Data Rate (Receive) . . . . . . . . . . . . . . . . 20 10.6 Maximum Data Rate (Receive) . . . . . . . . . . . . . . . 20
9.8 Maximum Data Rate (Transmit) . . . . . . . . . . . . . . . 20 10.7 Maximum Data Rate (Transmit) . . . . . . . . . . . . . . . 21
9.9 Current Data Rate (Receive) . . . . . . . . . . . . . . . . 21 10.8 Current Data Rate (Receive) . . . . . . . . . . . . . . . 21
9.10 Current Data Rate (Transmit) . . . . . . . . . . . . . . . 22 10.9 Current Data Rate (Transmit) . . . . . . . . . . . . . . . 22
9.11 Expected Forwarding Time . . . . . . . . . . . . . . . . . 23 10.10 Latency . . . . . . . . . . . . . . . . . . . . . . . . . 23
9.12 Latency . . . . . . . . . . . . . . . . . . . . . . . . . 23 10.11 Resources (Receive) . . . . . . . . . . . . . . . . . . . 23
9.13 Resources (Receive) . . . . . . . . . . . . . . . . . . . 24 10.12 Resources (Transmit) . . . . . . . . . . . . . . . . . . 24
9.14 Resources (Transmit) . . . . . . . . . . . . . . . . . . . 25 10.13 Relative Link Quality (Receive) . . . . . . . . . . . . . 25
9.15 Relative Link Quality (Receive) . . . . . . . . . . . . . 25 10.14 Relative Link Quality (Transmit) . . . . . . . . . . . . 25
9.16 Relative Link Quality (Transmit) . . . . . . . . . . . . . 26 10.15 Status . . . . . . . . . . . . . . . . . . . . . . . . . 26
9.17 Status . . . . . . . . . . . . . . . . . . . . . . . . . . 26 10.16 Heartbeat Interval . . . . . . . . . . . . . . . . . . . 26
9.18 Heartbeat Interval . . . . . . . . . . . . . . . . . . . . 27 10.17 Link Characteristics ACK Timer . . . . . . . . . . . . . 27
9.19 Link Characteristics ACK Timer . . . . . . . . . . . . . . 28 10.18 Credit Window Status . . . . . . . . . . . . . . . . . . 28
9.20 Credit Window Status . . . . . . . . . . . . . . . . . . . 28 10.19 Credit Grant Request . . . . . . . . . . . . . . . . . . 28
9.21 Credit Grant Request . . . . . . . . . . . . . . . . . . . 29 10.20 Credit Request . . . . . . . . . . . . . . . . . . . . . 29
9.22 Credit Request . . . . . . . . . . . . . . . . . . . . . . 30 10.22 DLEP Optional Signals Supported . . . . . . . . . . . . . 30
10. DLEP Protocol Messages . . . . . . . . . . . . . . . . . . . . 31 10.21 DLEP Optional Data Items Supported . . . . . . . . . . . 31
10.1 Signal TLV Values . . . . . . . . . . . . . . . . . . . . 31 10.22 DLEP Vendor Extension . . . . . . . . . . . . . . . . . . 31
10.2 Peer Discovery Message . . . . . . . . . . . . . . . . . . 32 11. DLEP Protocol Signals . . . . . . . . . . . . . . . . . . . . 32
10.3 Peer Offer Message . . . . . . . . . . . . . . . . . . . . 32 11.1 Signal TLV Values . . . . . . . . . . . . . . . . . . . . 32
10.4 Peer Initialization Message . . . . . . . . . . . . . . . . 33 11.2 Peer Discovery Signal . . . . . . . . . . . . . . . . . . . 33
10.5 Peer Initialization ACK Message . . . . . . . . . . . . . . 33 11.3 Peer Offer Signal . . . . . . . . . . . . . . . . . . . . . 33
10.6 Peer Update Message . . . . . . . . . . . . . . . . . . . . 34 11.4 Peer Initialization Signal . . . . . . . . . . . . . . . . 34
10.7 Peer Update ACK Message . . . . . . . . . . . . . . . . . . 35 11.5 Peer Initialization ACK Signal . . . . . . . . . . . . . . 34
10.8 Peer Termination Message . . . . . . . . . . . . . . . . . 35 11.6 Peer Update Signal . . . . . . . . . . . . . . . . . . . . 35
10.9 Peer Termination ACK Message . . . . . . . . . . . . . . . 36 11.7 Peer Update ACK Signal . . . . . . . . . . . . . . . . . . 36
10.10 Destination Up Message . . . . . . . . . . . . . . . . . . 36 11.8 Peer Termination Signal . . . . . . . . . . . . . . . . . . 37
10.11 Destination Up ACK Message . . . . . . . . . . . . . . . . 37 11.9 Peer Termination ACK Signal . . . . . . . . . . . . . . . . 37
10.12 Destination Down Message . . . . . . . . . . . . . . . . . 37 11.10 Destination Up Signal . . . . . . . . . . . . . . . . . . 37
10.13 Destination Down ACK Message . . . . . . . . . . . . . . . 37 11.11 Destination Up ACK Signal . . . . . . . . . . . . . . . . 38
10.14 Destination Update Message . . . . . . . . . . . . . . . . 38 11.12 Destination Down Signal . . . . . . . . . . . . . . . . . 38
10.15 Heartbeat Message . . . . . . . . . . . . . . . . . . . . 38 11.13 Destination Down ACK Signal . . . . . . . . . . . . . . . 39
10.16 Link Characteristics Request Message . . . . . . . . . . . 39 11.14 Destination Update Signal . . . . . . . . . . . . . . . . 39
10.17 Link Characteristics ACK Message . . . . . . . . . . . . . 40 11.15 Heartbeat Signal . . . . . . . . . . . . . . . . . . . . . 40
11. Security Considerations . . . . . . . . . . . . . . . . . . . 40 11.16 Link Characteristics Request Signal . . . . . . . . . . . 40
12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 40 11.17 Link Characteristics ACK Signal . . . . . . . . . . . . . 41
12.1 Registrations . . . . . . . . . . . . . . . . . . . . . . 41 12. Security Considerations . . . . . . . . . . . . . . . . . . . 42
12.2 Expert Review: Evaluation Guidelines . . . . . . . . . . . 41 13. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 42
12.3 Message (Signal) TLV Type Registration . . . . . . . . . . 41 13.1 Registrations . . . . . . . . . . . . . . . . . . . . . . 42
12.4 DLEP Data Item Registrations . . . . . . . . . . . . . . . 42 13.2 Expert Review: Evaluation Guidelines . . . . . . . . . . . 42
12.5 DLEP Well-known Port . . . . . . . . . . . . . . . . . . . 42 13.3 Signal TLV Type Registration . . . . . . . . . . . . . . . 42
12.6 DLEP Multicast Address . . . . . . . . . . . . . . . . . . 42 13.4 DLEP Data Item Registrations . . . . . . . . . . . . . . . 43
13. Appendix A. . . . . . . . . . . . . . . . . . . . . . . . . . 42 13.5 DLEP Well-known Port . . . . . . . . . . . . . . . . . . . 44
13.1 Peer Level Message Flows . . . . . . . . . . . . . . . . . 42 13.6 DLEP Multicast Address . . . . . . . . . . . . . . . . . . 44
13.1.1 Modem Device Restarts Discovery . . . . . . . . . . . 43 14. Appendix A. . . . . . . . . . . . . . . . . . . . . . . . . . 44
13.1.2 Modem Device Detects Peer Offer Timeout . . . . . . . 43 14.1 Peer Level Signal Flows . . . . . . . . . . . . . . . . . 44
13.1.3 Router Peer Offer Lost . . . . . . . . . . . . . . . . 44 14.1.1 Modem Device Restarts Discovery . . . . . . . . . . . 44
13.1.4 Discovery Success . . . . . . . . . . . . . . . . . . 44 14.1.2 Modem Device Detects Peer Offer Timeout . . . . . . . 44
29.1.5 Router Detects a Heartbeat timeout . . . . . . . . . . 45 14.1.3 Router Peer Offer Lost . . . . . . . . . . . . . . . . 46
29.1.6 Modem Detects a Heartbeat timeout . . . . . . . . . . 45 14.1.4 Discovery Success . . . . . . . . . . . . . . . . . . 46
29.1.7 Peer Terminate (from Modem) Lost . . . . . . . . . . . 46 14.1.5 Router Detects a Heartbeat timeout . . . . . . . . . . 47
29.1.8 Peer Terminate (from Router) Lost . . . . . . . . . . 46 14.1.6 Modem Detects a Heartbeat timeout . . . . . . . . . . 47
29.2 Destination Specific Message Flows . . . . . . . . . . . . 46 14.1.7 Peer Terminate (from Modem) Lost . . . . . . . . . . . 48
29.2.1 Modem Destination Up Lost . . . . . . . . . . . . . . 47 14.1.8 Peer Terminate (from Router) Lost . . . . . . . . . . 48
29.2.2 Router Detects Duplicate Destination Ups . . . . . . . 47 14.2 Destination Specific Signal Flows . . . . . . . . . . . . 48
29.2.3 Destination Up, No Layer 3 Addresses . . . . . . . . . 48 14.2.1 Modem Destination Up Lost . . . . . . . . . . . . . . 49
29.2.4 Destination Up with IPv4, No IPv6 . . . . . . . . . . 48 14.2.2 Router Detects Duplicate Destination Ups . . . . . . . 49
29.2.5 Destination Up with IPv4 and IPv6 . . . . . . . . . . 48 14.2.3 Destination Up, No Layer 3 Addresses . . . . . . . . . 50
29.2.6 Destination Session Success . . . . . . . . . . . . . 49 14.2.4 Destination Up with IPv4, No IPv6 . . . . . . . . . . 50
14.2.5 Destination Up with IPv4 and IPv6 . . . . . . . . . . 50
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . 49 14.2.6 Destination Session Success . . . . . . . . . . . . . 51
Normative References . . . . . . . . . . . . . . . . . . . . . . . 50 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . 51
Informative References . . . . . . . . . . . . . . . . . . . . . . 50 Normative References . . . . . . . . . . . . . . . . . . . . . . . 52
Author's Addresses . . . . . . . . . . . . . . . . . . . . . . . . 50 Informative References . . . . . . . . . . . . . . . . . . . . . . 52
Author's Addresses . . . . . . . . . . . . . . . . . . . . . . . . 52
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) radios, satellite terminals, and include line-of-sight (LOS) terrestrial radios, satellite terminals,
cable/DSL modems. Fluctuations in speed and quality of these links and cable/DSL modems. Fluctuations in speed and quality of these
can occur due to configuration (in the case of cable/DSL modems), or links can occur due to configuration (in the case of cable/DSL
on a moment-to-moment basis, due to physical phenomena like multipath modems), or on a moment-to-moment basis, due to physical phenomena
interference, obstructions, rain fade, etc. It is also quite possible like multipath interference, obstructions, rain fade, etc. It is also
that link quality and datarate varies with respect to individual quite possible that link quality and datarate varies with respect to
destinations on a link, and with the type of traffic being sent. As individual destinations on a link, and with the type of traffic being
an example, consider the case of an 802.11g access point, serving 2 sent. As an example, consider the case of an 802.11g access point,
associated laptop computers. In this environment, the answer to the serving 2 associated laptop computers. In this environment, the
question "What is the datarate on the 802.11g link?" is "It depends answer to the question "What is the datarate on the 802.11g link?" is
on which associated laptop we're talking about, and on what kind of "It depends on which associated laptop we're talking about, and on
traffic is being sent." While the first laptop, being physically what kind of traffic is being sent." While the first laptop, being
close to the access point, may have a datarate of 54Mbps for unicast physically close to the access point, may have a datarate of 54Mbps
traffic, the other laptop, being relatively far away, or obstructed for unicast traffic, the other laptop, being relatively far away, or
by some object, can simultaneously have a datarate of only 32Mbps for obstructed by some object, can simultaneously have a datarate of only
unicast. However, for multicast traffic sent from the access point, 32Mbps for unicast. However, for multicast traffic sent from the
all traffic is sent at the base transmission rate (which is access point, all traffic is sent at the base transmission rate
configurable, but depending on the model of the access point, is (which is configurable, but depending on the model of the access
usually 24Mbps or less). point, is usually 24Mbps or less).
In addition to utilizing variable datarate links, mobile networks are In addition to utilizing variable datarate links, mobile networks are
challenged by the notion that link connectivity will come and go over challenged by the notion that link connectivity will come and go over
time. Effectively utilizing a relatively short-lived connection is time, without an effect on a router's interface state (Up or Down).
Effectively utilizing a relatively short-lived connection is
problematic in IP routed networks, as routing protocols tend to rely problematic in IP routed networks, as routing protocols tend to rely
on independent timers at OSI Layer 3 to maintain network convergence on interface state and independent timers at OSI Layer 3 to maintain
(e.g. HELLO messages and/or recognition of DEAD routing adjacencies). network convergence (e.g. HELLO messages and/or recognition of DEAD
These short-lived connections can be better utilized with an event- routing adjacencies). These dynamic connections can be better
driven paradigm, where acquisition of a new neighbor (or loss of an utilized with an event-driven paradigm, where acquisition of a new
existing one) is signaled, as opposed to a timer-driven paradigm. neighbor (or loss of an existing one) is signaled, as opposed to a
paradigm driven by timers and/or interface state.
Another complicating factor for mobile networks are the different Another complicating factor for mobile networks are the different
methods of physically connecting the modem devices to the router. methods of physically connecting the modem devices to the router.
Modems can be deployed as an interface card in a router's chassis, or Modems can be deployed as an interface card in a router's chassis, or
as a standalone device connected to the router via Ethernet, USB, or as a standalone device connected to the router via Ethernet or serial
even a serial link. In the case of Ethernet or serial attachment, link. In the case of Ethernet or serial attachment, with existing
with existing protocols and techniques, routing software cannot be protocols and techniques, routing software cannot be aware of
aware of convergence events occurring on the radio link (e.g. convergence events occurring on the radio link (e.g. acquisition or
acquisition or loss of a potential routing neighbor), nor can the loss of a potential routing neighbor), nor can the router be aware of
router be aware of the actual capacity of the link. This lack of the actual capacity of the link. This lack of awareness, along with
awareness, along with the variability in datarate, leads to a the variability in datarate, leads to a situation where finding the
situation where quality of service (QoS) profiles are extremely (current) best route through the network to a given destination is
difficult to establish and properly maintain. This is especially true difficult to establish and properly maintain. This is especially true
of demand-based access schemes such as Demand Assigned Multiple of demand-based access schemes such as Demand Assigned Multiple
Access (DAMA) implementations used on some satellite systems. With a Access (DAMA) implementations used on some satellite systems. With a
DAMA-based system, additional datarate may be available, but will not DAMA-based system, additional datarate may be available, but will not
be used unless the network devices emit traffic at rate higher than be used unless the network devices emit traffic at rate higher than
the currently established rate. Increasing the traffic rate does not the currently established rate. Increasing the traffic rate does not
guarantee additional datarate will be allocated; rather, it may guarantee additional datarate will be allocated; rather, it may
result in data loss and additional retransmissions on the link. result in data loss and additional retransmissions on the link.
Addressing the challenges listed above, the authors have developed Addressing the challenges listed above, the authors have developed
skipping to change at page 5, line 46 skipping to change at page 5, line 50
node, it (the local modem) sends a signal to its router via the DLEP node, it (the local modem) sends a signal to its router via the DLEP
protocol. Upon receipt of the signal, the local router may take protocol. Upon receipt of the signal, the local router may take
whatever action it deems appropriate, such as initiating discovery whatever action it deems appropriate, such as initiating discovery
protocols, and/or issuing HELLO messages to converge the network. On protocols, and/or issuing HELLO messages to converge the network. On
a continuing, as-needed basis, the modem devices utilize DLEP to a continuing, as-needed basis, the modem devices utilize DLEP to
report any characteristics of the link (datarate, latency, etc) that report any characteristics of the link (datarate, latency, etc) that
have changed. DLEP is independent of the link type and topology have changed. DLEP is independent of the link type and topology
supported by the modem. Note that the DLEP protocol is specified to supported by the modem. Note that the DLEP protocol is specified to
run only on the local link between router and modem. Some over the run only on the local link between router and modem. Some over the
air signaling may be necessary between the local and remote modem in air signaling may be necessary between the local and remote modem in
order to provide some parameters in DLEP messages between the local order to provide some parameters in DLEP signals between the local
modem and local router, but DLEP does not specify how such over the modem and local router, but DLEP does not specify how such over the
air signaling is carried out. Over the air signaling is purely a air signaling is carried out. Over the air signaling is purely a
matter for the modem implementer. matter for the modem implementer.
Figure 2 shows how DLEP can support a configuration where routers are Figure 2 shows how DLEP can support a configuration where routers are
connected with different link types. In this example, Modem A connected with different link types. In this example, Modem A
implements a point-to-point link, and Modem B is connected via a implements a point-to-point link, and Modem B is connected via a
shared medium. In both cases, the DLEP protocol is used to report the shared medium. In both cases, the DLEP protocol is used to report the
characteristics of the link (datarate, latency, etc.) to routers. The characteristics of the link (datarate, latency, etc.) to routers. The
modem is also able to use the DLEP session to notify the router when modem is also able to use the DLEP session to notify the router when
skipping to change at page 6, line 42 skipping to change at page 7, line 5
+---+----+ +---+----+
| |
| |
+---+----+ +---+----+
| Router | | Router |
| | | |
+--------+ +--------+
Figure 2: DLEP Network with Multiple Modem Devices Figure 2: DLEP Network with Multiple Modem Devices
DLEP defines a set of messages used by modems and their attached DLEP defines a set of signals used by modems and their attached
routers. The messages are used to communicate events that occur on routers. The signals are used to communicate events that occur on the
the physical link(s) managed by the modem: for example, a remote node physical link(s) managed by the modem: for example, a remote node
entering or leaving the network, or that the link has changed. entering or leaving the network, or that the link has changed.
Associated with these messages are a set of data items - information Associated with these signals are a set of data items - information
that describes the remote node (e.g., address information), and/or that describes the remote node (e.g., address information), and/or
the characteristics of the link to the remote node. the characteristics of the link to the remote node.
The protocol is defined as a collection of type-length-value (TLV) The protocol is defined as a collection of type-length-value (TLV)
based messages, specifying the signals that are exchanged between a based formats, specifying the signals that are exchanged between a
router and a modem, and the data items associated with the signal. router and a modem, and the data items associated with the signal.
This document specifies transport of DLEP signals and data items via This document specifies transport of DLEP signals and data items via
the TCP transport, with a UDP-based discovery mechanism. Other the TCP transport, with a UDP-based discovery mechanism. Other
transports for the protocol are possible, but are outside the scope transports for the protocol are possible, but are outside the scope
of this document. of this document.
DLEP signals are further defined as mandatory or optional. Signals DLEP signals are further defined as mandatory or optional. Signals
will additionally have mandatory and optional data items. will additionally have mandatory and optional data items.
Implementations MUST support all mandatory messages and their Implementations MUST support all mandatory signals and their
mandatory data items to be considered compliant. Implementations MAY mandatory data items to be considered compliant. Implementations MAY
also support some, or all, of the optional messages and data items. also support some, or all, of the optional signals and data items.
DLEP uses a session-oriented paradigm between the modem device and DLEP uses a session-oriented paradigm between the modem device and
its associated router. If multiple modem devices are attached to a its associated router. If multiple modem devices are attached to a
router (as in Figure 2), a separate DLEP session MUST exist for each router (as in Figure 2), a separate DLEP session MUST exist for each
modem. If a modem device supports multiple connections to a router modem. If a modem device supports multiple connections to a router
(via multiple logical or physical interfaces), or supports (via multiple logical or physical interfaces), or supports
connections to multiple routers, a separate DLEP session MUST exist connections to multiple routers, a separate DLEP session MUST exist
for each connection. This router/modem session provides a carrier for for each connection. This router/modem session provides a carrier for
information exchange concerning "destinations" that are available via information exchange concerning "destinations" that are available via
the modem device. A "destination" can be either physical (as in the the modem device. A "destination" can be either physical (as in the
case of a specific far-end router), or a logical destination (as in a case of a specific far-end router), or a logical destination (as in a
Multicast group). As such, all of the destination-level exchanges in Multicast group). As such, all of the destination-level exchanges in
DLEP can be envisioned as building an information base concerning the DLEP can be envisioned as building an information base concerning the
remote nodes, and the link characteristics to those nodes. remote nodes, and the link characteristics to those nodes.
Any DLEP signal that is NOT understood by a receiver MUST result in
an error indication being sent to the originator, and also MUST
result in termination of the session between the DLEP peers. Any data
item that is NOT understood by a receiver MUST be ignored.
Multicast traffic destined for the variable-quality network (the Multicast traffic destined for the variable-quality network (the
network accessed via the DLEP modem) is handled in IP networks by network accessed via the DLEP modem) is handled in IP networks by
deriving a Layer 2 MAC address based on the Layer 3 address. deriving a Layer 2 MAC address based on the Layer 3 address.
Leveraging on this scheme, Multicast traffic is supported in DLEP Leveraging on this scheme, Multicast traffic is supported in DLEP
simply by treating the derived MAC address as any other "destination" simply by treating the derived MAC address as any other "destination"
(albeit a logical one) in the network. To support these logical (albeit a logical one) in the network. To support these logical
destinations, one of the DLEP participants (typically, the router) destinations, one of the DLEP participants (typically, the router)
informs the other as to the existence of the logical neighbor. The informs the other as to the existence of the logical neighbor. The
modem, once it is aware of the existence of this logical neighbor, modem, once it is aware of the existence of this logical neighbor,
reports link characteristics just as it would for any other reports link characteristics just as it would for any other
skipping to change at page 8, line 16 skipping to change at page 8, line 23
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in BCP 14, RFC 2119 document are to be interpreted as described in BCP 14, RFC 2119
[RFC2119]. [RFC2119].
2. Assumptions 2. Assumptions
Routers and modems that exist as part of the same node (e.g., that Routers and modems that exist as part of the same node (e.g., that
are locally connected) can utilize a discovery technique to locate are locally connected) can utilize a discovery technique to locate
each other, thus avoiding a-priori configuration. The modem is each other, thus avoiding a-priori configuration. The router is
responsible for initialing the discovery process, using the Peer responsible for initialing the discovery process, using the Peer
Discovery message. Discovery signal.
DLEP utilizes a session-oriented paradigm. A router and modem form a DLEP utilizes a session-oriented paradigm. A router and modem form a
session by completing the discovery process. This router-modem session by completing the discovery process. This router-modem
session persists unless or until it either (1) times out, based on session persists unless or until it either (1) times out, based on
the timeout values supplied, or (2) is explicitly torn down by one of the timeout values supplied, or (2) is explicitly torn down by one of
the participants. Note that while use of timers in DLEP is OPTIONAL, the participants. Note that while use of timers in DLEP is OPTIONAL,
it is strongly recommended that implementations choose to run with it is strongly recommended that implementations choose to run with
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 bridge. Specifically, the assumption is that the as a transparent IEEE 802.1D bridge. Specifically, the assumption is
destination MAC address for data traffic in any frame emitted by the that the destination MAC address for data traffic (frames destined
router should be the MAC address of a device in the remote node. DLEP for the far-end node, as opposed to the DLEP control traffic itself)
also assumes that MAC addresses are unique within the context of the in any frame emitted by the router should be the MAC address of a
router-modem session. device in the remote node. DLEP also assumes that MAC addresses are
unique within the context of the router-modem session.
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 multicast group. As "destinations" to logical destinations, as in a derived multicast MAC address
are discovered, DLEP routers and modems build an information base on associated with a group. As "destinations" are discovered, DLEP
destinations accessible via the modem. Changes in link routers and modems build an information base on destinations
characteristics MAY then be reported as being "modem-wide" (effecting accessible via the modem. Changes in link characteristics MAY then be
ALL destinations accessed via the modem) or MAY be neighbor reported as being "modem-wide" (effecting ALL destinations accessed
(destination) specific. via the modem) or MAY be neighbor (destination) specific.
The DLEP messages concerning destinations thus become the way for The DLEP signals concerning destinations thus become the way for
routers and modems to maintain, and notify each other about, an routers and modems to maintain, and notify each other about, an
information base representing the physical and logical (e.g., information base representing the physical and logical (e.g.,
multicast) destinations accessible via the modem device. The multicast) destinations accessible via the modem device. The
information base would contain addressing information (e.g., MAC information base would contain addressing information (e.g., MAC
address, and OPTIONALLY, Layer 3 addresses), link characteristics address, and OPTIONALLY, Layer 3 addresses), link characteristics
(metrics), and OPTIONALLY, flow control information (credits). (metrics), and OPTIONALLY, flow control information (credits).
DLEP assumes that security on the session (e.g. authentication of DLEP assumes that security on the session (e.g. authentication of
session partners, encryption of traffic, or both) is dealt with by session partners, encryption of traffic, or both) is dealt with by
the underlying transport mechanism (e.g., by using a transport such the underlying transport mechanism (e.g., by using a transport such
as TLS [TLS]). as TLS [TLS]).
This document specifies an implementation of the DLEP messages and This document specifies an implementation of the DLEP signals and
data items running over the TCP transport, utilizing a well-known TCP data items running over the TCP transport. It is assumed that DLEP
Port number. It is assumed that DLEP running over other transport running over other transport mechanisms would be documented
mechanisms would be documented separately. separately.
3. Credits 3. Mandatory Versus Optional 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
an implementation to guarantee interoperability and therefore make an
implementation DLEP compliant. However, a mandatory signal or data
item is not necessarily REQUIRED - as an example, consider the data
item entitled "DLEP Optional Signals Supported", defined in section
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
Peer Initialization signal. Receiving implementations MUST be capable
of parsing and understanding the optional signals that are offered.
However, if the sending implementation has chosen NOT to implement
ANY optional functionality, this data item would NOT be included in
the Peer Initialization (e.g., absence of the mandatory 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 is REQUIRED.
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 credits are used, they MUST be granted by the receiver on a given If the OPTIONAL credit-windowing scheme is used, credits MUST be
window - that is, on the "Modem Receive Window" (MRW), the modem is granted by the receiver on a given window - that is, on the "Modem
responsible for granting credits to the router, allowing it (the Receive Window" (MRW), the modem is responsible for granting credits
router) to send data to the modem. Likewise, the router is to the router, allowing it (the router) to send data to the modem.
responsible for granting credits on the RRW, which allows the modem Likewise, the router is responsible for granting credits on the RRW,
to send data to the router. which allows the modem to send data to the router.
DLEP expresses all credit data in number of octets. The total number DLEP expresses all credit data in number of octets. The total number
of credits on a window, and the increment to add to a grant, are of credits on a window, and the increment to add to a grant, are
always expressed as a 64-bit unsigned quantity. always expressed as a 64-bit unsigned quantity.
If used, credits are managed on a neighbor-specific basis; that is, If used, credits are managed on a neighbor-specific basis; that is,
separate credit counts are maintained for each neighbor requiring the separate credit counts are maintained for each neighbor requiring the
service. Credits do not apply to the DLEP session that exists between service. Credits do not apply to the DLEP session that exists between
routers and modems. routers and modems.
4. Metrics 5. Metrics
DLEP includes the ability for the router and modem to communicate DLEP includes the ability for the router and modem to communicate
metrics that reflect the characteristics (e.g. datarate, latency) of metrics that reflect the characteristics (e.g. datarate, latency) of
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 are further subdivided
into transmit and receive metrics. Metrics supplied on DLEP Peer into transmit and receive metrics. Metrics supplied on DLEP Peer
signals are, by definition, modem-wide; metrics supplied on signals are, by definition, modem-wide; metrics supplied on
Destination messages signals are, by definition, used for the Destination signals are, by definition, used for the specific
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 message. 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 message), 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
on their specific characteristics. Modems having static (non- on their specific characteristics. Modems having static (non-
changing) link metric characteristics MAY report metrics only once changing) link metric characteristics MAY report metrics only once
for a given neighbor (or once on a modem-wide basis, if all for a given neighbor (or once on a modem-wide basis, if all
connections via the modem are of this static nature). connections via the modem are of this static nature).
The approach of allowing for different contexts for metric data The approach of allowing for different contexts for metric data
increases both the flexibility and the complexity of using metric increases both the flexibility and the complexity of using metric
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.
5. 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. To allow for future innovation, the draft
allocates numbering space for experimental implementations of both allocates numbering space for experimental implementations of both
signals and data items. signals and data items.
DLEP implementations MUST be capable of parsing and acting on the DLEP implementations MUST be capable of parsing and acting on the
mandatory messages and data items as documented in this mandatory signals and data items as documented in this specification.
specification. DLEP messages/data items that are optional, or are in DLEP signals/data items that are optional, or are in the experimental
the experimental numbering range SHOULD be silently dropped by an numbering range SHOULD be silently dropped by an implementation if
implementation if they are not understood. they are not understood.
The intent of the optional messages and data items, as well as the The intent of the optional signals and data items, as well as the
experimental numbering space, is to allow for further development of experimental numbering space, is to allow for further development of
DLEP protocol features and function. Having experimental space DLEP protocol features and function. Having experimental space
reserved for both signals and data items gives maximum flexibility reserved for both signals and data items gives maximum flexibility
for extending the protocol as conditions warrant. For example, for extending the protocol as conditions warrant. For example,
experimental data items could be used by implementations to send experimental data items could be used by implementations to send
additional metrics. A combination of experimental messages, and additional metrics. A combination of experimental signals, and
associated data items, could be used to implement new flow control associated data items, could be used to implement new flow control
schemes. If subsequent research and development define new features schemes. If subsequent research and development define new features
and function, then it should be standardized either as an update to and function, then it should be standardized either as an update to
this document, or as an additional stand-alone specification. this document, or as an additional stand-alone specification.
6. Normal Session Flow 7. Normal Session Flow
Normal session flow is slightly different, depending on whether the Normal session flow is slightly different, depending on whether the
implementation represents a modem or a router, and whether discovery implementation represents a modem or a router, and whether discovery
techniques are used. The normal flow by DLEP partner type is: techniques are used. The normal flow by DLEP partner type is:
6.1 DLEP Modem session flow - Discovery case 7.1 DLEP Router session flow - Discovery case
If the DLEP modem 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 message 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
message, which MUST contain the unicast address and port for TCP- signal, which MUST contain the unicast address and port for TCP-based
based communication with a DLEP router. The Peer Offer message MAY communication with a DLEP modem. The Peer Offer signal MAY contain
contain multiple address/port combinations. If more than one multiple address/port combinations. If more than one address/port
address/port combination is in the Peer Offer, the DLEP modem combination is in the Peer Offer, the DLEP router implementation
implementation SHOULD consider the list to be in priority sequence, SHOULD consider the list to be in priority sequence, with the "most
with the "most desired" address/port combination listed first. desired" address/port combination listed first. However, router
However, modem implementations MAY use their own heuristics to implementations MAY use their own heuristics to determine the best
determine the best address/port combination. At this point, the modem address/port combination. At this point, the router implementation
implementation MAY either destroy the UDP socket, or continue to MAY either destroy the UDP socket, or continue to issue Peer
issue Peer Discovery messages to the link-local address/port Discovery signals to the link-local address/port combination. In
combination. In either case, the TCP session initialization occurs as either case, the TCP session initialization occurs as in the
in the configured case. configured case.
6.2 DLEP Modem session flow - Configured case 7.2 DLEP Router session flow - Configured case
When a DLEP modem implementation has the address and port information When a DLEP router implementation has the address and port
for a TCP connection to the router (obtained either via configuration information for a TCP connection to a modem (obtained either via
or via the discovery process described above), the modem will configuration or via the discovery process described above), the
initialize and bind a TCP socket. This socket is used to connect to router will initialize and bind a TCP socket. This socket is used to
the DLEP router software. After a successful TCP connect, the modem connect to the DLEP modem software. After a successful TCP connect,
implementation MUST issue a Peer Initialization message to the DLEP the modem implementation MUST issue a Peer Initialization signal to
router. The Peer Initialization message MUST contain TLVs for ALL the DLEP router. The Peer Initialization signal MUST contain TLVs for
supported metrics from this modem (e.g. all MANDATORY metrics plus ALL supported metrics from this modem (e.g. all MANDATORY metrics
all OPTIONAL metrics supported by the implementation), along with the plus all OPTIONAL metrics supported by the implementation), along
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 should wait for receipt of a
Peer Initialization ACK message 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, messages regarding the "in session" state. At this point, signals regarding destinations
destinations in the network, and/or Peer Update messages, can flow on in the network, and/or Peer Update signals, can flow on the DLEP
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.
6.3 DLEP Router session flow 7.3 DLEP Modem session flow
DLEP router implementations MUST support the discovery mechanism. DLEP modem implementations MUST support the discovery mechanism.
Therefore, the normal flow is as follows: Therefore, the normal flow is as follows:
The implementation will initialize a UDP socket, binding that socket The implementation will initialize a UDP socket, binding that socket
to the DLEP link-local multicast address (TBD) and the DLEP well- to the DLEP link-local multicast address (TBD) and the DLEP well-
known port number (also TBD). The implementation will then initialize known port number (also TBD). The implementation will then initialize
a TCP socket, on a unicast address and port. This socket is used to a TCP socket, on a unicast address and port. This socket is used to
listen for incoming TCP connection requests. listen for incoming TCP connection requests.
When the router implementation receives a Peer Discovery message on When the modem implementation receives a Peer Discovery signal on the
the UDP socket, it responds by issuing a Peer Offer message to the UDP socket, it responds by issuing a Peer Offer signal to the sender
sender of the Peer Discovery. The Peer Offer message MUST contain the of the Peer Discovery. The Peer Offer signal MUST contain the unicast
unicast address and port of the TCP listen socket, described above. A address and port of the TCP listen socket, described above. A DLEP
DLEP router implementation MAY respond with ALL address/port modem implementation MAY respond with ALL address/port combinations
combinations that have an active TCP listen posted. If multiple that have an active TCP listen posted. If multiple address/port
address/port combinations are listed, the receiver of the Peer Offer combinations are listed, the receiver of the Peer Offer MAY connect
MAY connect on any available address/port pair. Anything other than on any available address/port pair. Anything other than Peer
Peer Discovery messages received on the UDP socket MUST be silently Discovery signals received on the UDP socket MUST be silently
dropped. dropped.
When the DLEP router implementation accepts a connection via TCP, it When the DLEP modem implementation accepts a connection via TCP, it
will wait for receipt of a Peer Initialization message. The received MUST send a Peer Initialization signal. The Peer Initialization MUST
Peer Initialization MUST contain metric TLVs for ALL mandatory contain metric TLVs for ALL mandatory metrics, and MUST contain
metrics, and MUST contain metric TLVs for ANY optional metrics metric TLVs for ANY optional metrics supported by the modem. If a new
supported by the modem. If a new metric is to be introduced, the DLEP metric is to be introduced, the DLEP session between router and modem
session between router and modem MUST be terminated and restarted, MUST be terminated and restarted, and the new metric described in a
and the new metric described in a Peer Initialization message. Peer Initialization signal.
6.4 Common Session Flow 7.4 Common Session Flow
In order to maintain the session between router and modem, periodic In order to maintain the session between router and modem, periodic
"Heartbeat" messages SHOULD be exchanged. These messages are intended "Heartbeat" signals MAY be exchanged. These signals are intended to
to keep the session alive, and to verify bidirectional connectivity keep the session alive, and to verify bidirectional connectivity
between the two participants. DLEP also provides for an OPTIONAL Peer between the two participants. DLEP also provides an OPTIONAL Peer
Update message, intended to communicate some change in status (e.g., Update signal, intended to communicate some change in status (e.g., a
a change of layer 3 address parameters, or a modem-wide link change). change of layer 3 address parameters, or a modem-wide link change).
In addition to the messages above, the participants will transmit In addition to the local (Peer level) signals above, the participants
DLEP messages concerning destinations in the network. These messages will transmit DLEP signals concerning destinations in the network.
trigger creation/maintenance/deletion of destinations in the These signals trigger creation/maintenance/deletion of destinations
information base of the recipient. For example, a modem will inform in the information base of the recipient. For example, a modem will
its attached router of the presence of a new destination via the inform its attached router of the presence of a new destination via
"Destination Up" signal. Receipt of a Destination Up causes the the "Destination Up" signal. Receipt of a Destination Up causes the
router to allocate the necessary resources, creating an entry in the router to allocate the necessary resources, creating an entry in the
information base with the specifics (e.g., MAC Address, Latency, Data information base with the specifics (e.g., MAC Address, Latency, Data
Rate, etc) of the neighbor. The loss of a destination is communicated Rate, etc) of the neighbor. The loss of a destination is communicated
via the "Neighbor Down" signal, and changes in status to the via the "Destination Down" signal, and changes in status to the
destination (e.g. varying link quality, or addressing changes) are destination (e.g. varying link quality, or addressing changes) are
communicated via the "Neighbor Update" signal. The information on a communicated via the "Destination Update" signal. The information on
given neighbor will persist in the router's information base until a given neighbor will persist in the router's information base until
(1) a "Neighbor Down" is received, indicating that the modem has lost (1) a "Destination Down" is received, indicating that the modem has
contact with the remote node, or (2) the router/modem session lost contact with the remote node, or (2) the router/modem session
terminates, indicating that the router has lost contact with its own terminates, indicating that the router has lost contact with its own
local modem. local modem.
Again, metrics can be expressed within the context of a specific Again, metrics can be expressed within the context of a specific
neighbor via the Neighbor Update message, or on a modem-wide basis neighbor via the Destination Update signal, or on a modem-wide basis
via the Peer Update message. In cases where metrics are provided on via the Peer Update signal. In cases where metrics are provided on
the router/modem session, the receiver MUST propagate the metrics to the router/modem session, the receiver MUST propagate the metrics to
all destinations in its information base that are accessed via the all destinations in its information base that are accessed via the
originator. A DLEP participant MAY send metrics both in a originator. A DLEP participant MAY send metrics both in a
router/modem session context (via the Peer Update message) and a router/modem session context (via the Peer Update signal) and a
specific neighbor context (via Neighbor Update) at any time. The specific neighbor context (via Destination Update) at any time. The
heuristics for applying received metrics is left to implementations. heuristics for applying received metrics is left to implementations.
In addition to receiving metrics about the link, DLEP provides an In addition to receiving metrics about the link, DLEP provides an
OPTIONAL signal allowing a router to request a different datarate, or OPTIONAL signal allowing a router to request a different datarate, or
latency, from the modem. This signal is referred to as the Link latency, from the modem. This signal is referred to as the Link
Characteristics Message, and gives the router the ability to deal Characteristics Signal, and gives the router the ability to deal with
with requisite increases (or decreases) of allocated datarate/latency requisite increases (or decreases) of allocated datarate/latency in
in demand-based schemes in a more deterministic manner. demand-based schemes in a more deterministic manner.
7. Mandatory Signals and Data Items 8. Mandatory Signals and Data Items
The following DLEP signals are considered core to the specification; The following DLEP signals are considered core to the specification;
implementations MUST support these signals, and the associated data implementations MUST support these signals, and the associated data
items, in order to be considered compliant: items, in order to be considered compliant:
Signal Data Items Signal Data Items
====== ========== ====== ==========
Peer Discovery (Modem Only) DLEP Version Peer Discovery (Router Only) None
Peer Offer (Router Only) DLEP Version
IPv4 or IPv6 address(es) Peer Offer (Modem Only) IPv4 Address
IPv6 address
DLEP Port DLEP Port
Peer Initialization DLEP Version Peer Initialization 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
Relative Link Quality (Receive) Relative Link Quality (Receive)
Relative Link Quality (Transmit) Relative Link Quality (Transmit)
DLEP Optional Signal Support
DLEP Optional Data Item Support
Peer Initialization ACK Status Peer Initialization ACK Status
Peer Termination None Peer Termination Status
Peer Termination ACK Status Peer Termination ACK Status
Destination Up MAC Address Destination Up MAC 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
Relative Link Quality (Receive) Relative Link Quality (Receive)
Relative Link Quality (Transmit) Relative Link Quality (Transmit)
skipping to change at page 14, line 45 skipping to change at page 15, line 28
Current Data Rate (Receive) Current Data Rate (Receive)
Current Data Rate (Transmit) Current Data Rate (Transmit)
Latency Latency
Relative Link Quality (Receive) Relative Link Quality (Receive)
Relative Link Quality (Transmit) Relative Link Quality (Transmit)
Destination Down MAC Address Destination Down MAC Address
All other DLEP signals and data items are OPTIONAL. Implementations All other DLEP signals and data items are OPTIONAL. Implementations
MAY choose to provide them. Implementations that do not support MAY choose to provide them. Implementations that do not support
optional signals and data items SHOULD parse, and silently drop, all optional signals MUST report an error condition and terminate the
unsupported messages and/or data items. router/modem session upon receipt of any such signal received.
OPTIONAL data items received that are not supported MUST be silently
dropped.
8. Generic DLEP Message Definition 9. Generic DLEP Signal Definition
The Generic DLEP Message consists of a sequence of TLVs. The first The Generic DLEP Signal consists of a sequence of TLVs. The first TLV
TLV represents the signal being communicated (e.g., a "Destination represents the signal being communicated (e.g., a "Destination Up",
Up", or a "Peer Offer"). Subsequent TLVs contain the data items or a "Peer Offer"). Subsequent TLVs contain the data items pertinent
pertinent to the signal (e.g., Maximum Data Rate, or Latency, etc). to the signal (e.g., Maximum Data Rate, or Latency, etc).
The Generic DLEP Packet Definition contains the following fields: The Generic DLEP Packet Definition 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Signal TLV Type | Length | DLEP data items... | |Signal TLV Type | Length | DLEP data items... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Signal - One of the DLEP Message TLV type values Signal - One of the DLEP Signal TLV type values
defined in this document. defined in this document.
Length - The length, expressed as a 16-bit Length - The length, expressed as a 16-bit
quantity, of all of the DLEP data items quantity, of all of the DLEP data items
associated with this signal. associated with this signal.
DLEP data items - One or more data items, encoded in TLVs, DLEP data items - One or more data items, encoded in TLVs,
as defined in this document. as defined in this document.
9. DLEP Data Items 10. DLEP Data Items
As mentioned earlier, DLEP protocol messages are transported as a As mentioned earlier, DLEP protocol signals are transported as a
collection of TLVs. The first TLV present in a DLEP message MUST be collection of TLVs. The first TLV present in a DLEP signal MUST be
one of the Signal TLVs, documented in section 10. The signals are one of the Signal TLVs, documented in section 10. The signals are
followed by one or more data items, indicating the specific changes followed by one or more data items, indicating the specific changes
that need to be instantiated in the receiver's information base. that need to be instantiated in the receiver's information base.
Valid DLEP Data Items are: Valid DLEP Data Items are:
TLV TLV TLV TLV
Value Description Value Description
========================================= =========================================
TBD DLEP Version
TBD DLEP Port TBD DLEP Port
TBD Peer Type TBD Peer Type
TBD IPv4 Address TBD IPv4 Address
TBD IPv6 Address TBD IPv6 Address
TBD Maximum Data Rate (Receive) (MDRR) TBD Maximum Data Rate (Receive) (MDRR)
TBD Maximum Data Rate (Transmit) (MDRT) TBD Maximum Data Rate (Transmit) (MDRT)
TBD Current Data Rate (Receive) (CDRR) TBD Current Data Rate (Receive) (CDRR)
TBD Current Data Rate (Transmit) (CDRT) TBD Current Data Rate (Transmit) (CDRT)
TBD Latency TBD Latency
TBD Receive Resources TBD Receive Resources
TBD Transmit Resources TBD Transmit Resources
TBD Expected Forwarding Time (EFT)
TBD Relative Link Quality (Receive) (RLQR) TBD Relative Link Quality (Receive) (RLQR)
TBD Relative Link Quality (Transmit) (RLQT) TBD Relative Link Quality (Transmit) (RLQT)
TBD Status TBD Status
TBD Heartbeat Interval/Threshold TBD Heartbeat Interval/Threshold
TBD Neighbor down ACK timer TBD Neighbor down ACK timer
TBD Link Characteristics ACK timer TBD Link Characteristics ACK timer
TBD Credit Window Status TBD Credit Window Status
TBD Credit Grant TBD Credit Grant
TBD Credit Request TBD Credit Request
TBD DLEP Optional Signals Supported
TBD DLEP Optional Data Items Supported
TBD DLEP Vendor Extension
DLEP data item TLVs contain the following fields: DLEP data item TLVs contain 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 | Length | Value... | | TLV Type | Length | Value... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
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.
9.1 DLEP Version 10.1 DLEP Port
The DLEP Version TLV is a MANDATORY TLV in Peer Discovery, Peer
Offer, and Peer Initialization messages. The Version TLV is used to
indicate the version of the protocol running in the sender. The
receiver SHOULD 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 '1', and the Minor Version to '5' (i.e. Version 1.5).
9.2 DLEP Port
The DLEP Port TLV is a MANDATORY TLV in the Peer Offer message. The 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.
Minor Version - Minor version of the modem or router protocol. 10.2 Peer Type
9.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 messages. The Peer Type TLV is used by the router and Peer Offer signals. The Peer Type TLV is used by the router and modem
modem to give additional information as to its type. The peer type is to give additional information as to its type. The peer type is a
a string and is envisioned to be used for informational purposes string and is envisioned to be used for informational purposes (e.g.
(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
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= peer |Peer Type String | |TLV Type =TBD |Length= peer |Peer Type String |
| |type string len| | | |type string len| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
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.
skipping to change at page 18, line 15 skipping to change at page 18, line 18
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
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'.
9.4 MAC Address 10.3 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 41 skipping to change at page 18, line 44
| 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).
9.5 IPv4 Address 10.4 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, and Peer Update messages. When in Destination Up, Destination Update, Peer Initialization, and Peer
included in Destination messages, the IPv4 Address TLV contains the Update signals. When included in Destination signals, the IPv4
IPv4 address of the destination, as well as a subnet mask value. In Address TLV contains the IPv4 address of the destination, as well as
the Peer Update message, it contains the IPv4 address of the a subnet mask value. In the Peer Update signal, it contains the IPv4
originator of the message. In either case, the TLV also contains an address of the originator of the signal. In either case, the TLV also
indication of whether this is a new or existing address, or is a contains an indication of whether this is a new or existing address,
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 = 6 | Add/Drop | IPv4 Address |
| | | Indicator | | | | Indicator |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 Address | Subnet Mask | | IPv4 Address | Subnet Mask |
skipping to change at page 19, line 28 skipping to change at page 19, line 30
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.
9.6 IPv6 Address 10.5 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 Discovery, and Peer in the Destination Up, Destination Update, Peer Initialization, and
Update Messages. When included in Destination messages, 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
skipping to change at page 20, line 20 skipping to change at page 20, line 23
Length - 18 Length - 18
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 Subnet Mask - A subnet mask value (0-128) to be applied to the Ipv6
address. address.
9.7 Maximum Data Rate (Receive) 10.6 Maximum Data Rate (Receive)
The Maximum Data Rate Receive (MDRR) TLV is used in Destination Up, The Maximum Data Rate Receive (MDRR) TLV is a mandatory data item,
Destination Update, Peer Discovery, Peer Update, and Link used in Destination Up, Destination Update, Peer Initialization, Peer
Characteristics ACK Messages to indicate the maximum theoretical data Update, and Link Characteristics ACK Signals to indicate the maximum
rate, in bits per second, that can be achieved while receiving data theoretical data rate, in bits per second, that can be achieved while
on the link. When metrics are reported via the messages listed above, receiving data on the link. When metrics are reported via the signals
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|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.
9.8 Maximum Data Rate (Transmit) 10.7 Maximum Data Rate (Transmit)
The Maximum Data Rate Transmit (MDRT) TLV is used in Destination Up,
Destination Update, Peer Discovery, Peer Update, and Link The Maximum Data Rate Transmit (MDRT) TLV is a mandatory data item,
Characteristics ACK Messages to indicate the maximum theoretical data used in Destination Up, Destination Update, Peer Initialization, Peer
rate, in bits per second, that can be achieved while transmitting Update, and Link Characteristics ACK Signals to indicate the maximum
data on the link. When metrics are reported via the messages listed theoretical data rate, in bits per second, that can be achieved while
above, the maximum data rate transmit MUST be reported. transmitting data on the link. When metrics are reported via the
signals listed above, the maximum data rate transmit 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length = 8 | MDRT (bps) | |TLV Type =TBD |Length = 8 | MDRT (bps) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MDRT (bps) | | MDRT (bps) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MDRT (bps) | | MDRT (bps) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
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.
9.9 Current Data Rate (Receive) 10.8 Current Data Rate (Receive)
The Current Data Rate Receive (CDRR) TLV is used in Destination Up, The Current Data Rate Receive (CDRR) TLV is a mandatory data item,
Destination Update, Peer Discovery, Peer Update, Link Characteristics used in Destination Up, Destination Update, Peer Initialization, Peer
Request, and Link Characteristics ACK messages to indicate the rate Update, Link Characteristics Request, and Link Characteristics ACK
at which the link is currently operating for receiving traffic. The signals to indicate the rate at which the link is currently operating
Current Data Rate Receive is a MANDATORY data item. In the case of for receiving traffic. In the case of the Link Characteristics
the Link Characteristics Request, CDRR represents the desired receive Request, CDRR represents the desired receive data rate for the link.
data rate for the link. When metrics are reported via the messages When metrics are reported via the signals above (e.g. Destination
above (e.g. Destination Update), the current data rate receive MUST Update), the current data rate receive MUST be reported.
be reported.
The Current Data Rate Receive TLV contains the following fields: The Current Data Rate Receive 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 |TLV Flags=0x10 |Length = 8 |CDRR (bps) | |TLV Type =TBD |TLV Flags=0x10 |Length = 8 |CDRR (bps) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| CDRR (bps) | | CDRR (bps) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 22, line 22 skipping to change at page 22, line 24
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.
9.10 Current Data Rate (Transmit) 10.9 Current Data Rate (Transmit)
The Current Data Rate Receive (CDRT) TLV is used in Destination Up, The Current Data Rate Receive (CDRT) TLV is a mandatory data item,
Destination Update, Peer Discovery, Peer Update, Link Characteristics used in Destination Up, Destination Update, Peer Initialization, Peer
Request, and Link Characteristics ACK messages to indicate the rate Update, Link Characteristics Request, and Link Characteristics ACK
at which the link is currently operating for transmitting traffic. signals to indicate the rate at which the link is currently operating
Current Data Rate Transmit is a MANDATORY data item. In the case of for transmitting traffic. In the case of the Link Characteristics
the Link Characteristics Request, CDRT represents the desired Request, CDRT represents the desired transmit data rate for the link.
transmit data rate for the link. When metrics are reported via the When metrics are reported via the signals above (e.g. Destination
messages above (e.g. Destination Update), the current data rate Update), the current data rate transmit MUST be reported.
transmit MUST be reported.
The Current Data Rate Transmit TLV contains the following fields: The Current Data Rate Transmit 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 |TLV Flags=0x10 |Length = 8 |CDRT (bps) | |TLV Type =TBD |TLV Flags=0x10 |Length = 8 |CDRT (bps) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| CDRT (bps) | | CDRT (bps) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 23, line 14 skipping to change at page 23, line 15
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.
9.11 Expected Forwarding Time 10.10 Latency
The Expected Forwarding Time (EFT) TLV is is an OPTIONAL data item.
If supported, it MAY be used in Destination Up, Destination Update,
Peer Discovery, and Peer Update messages to indicate the typical
latency between the arrival of a given packet at the transmitting
device and the reception of the packet at the other end of the link.
EFT combines transmission time, idle time, waiting time, freezing
time, and queuing time to the degree that those values are meaningful
to a given transmission medium.
The Expected Forwarding Time TLV contains the following fields: The Latency TLV is a mandatory data item. It is used in Peer
Initialization, Destination Up, Destination Update, Peer
Initialization, Peer Update, Link Characteristics Request, and Link
Characteristics ACK signals to indicate the amount of latency on the
link, or in the case of the Link Characteristics Request, to indicate
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length = 4 | EFT (ms) | |TLV Type =TBD |Length = 4 | Latency in microseconds |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| EFT (ms) | | Latency (Cont.) microsecs |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD TLV Type - TBD
Length - 4 Length - 4
EFT - A 32-bit unsigned number, representing the expected Latency - A 32-bit unsigned value, representing the transmission
forwarding time, in milliseconds, on the link.
9.12 Latency
The Latency TLV is an MANDATORY data item. It is used in Peer
Initialization, Destination Up, Destination Update, Peer Discovery,
Peer Update, Link Characteristics Request, and Link Characteristics
ACK messages to indicate the amount of latency on the link, or in the
case of the Link Characteristics Request, to indicate the maximum
latency required on the link.
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 = 2 | Latency (ms) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD
Length - 2
Latency - A 16-bit unsigned value, representing the transmission
delay that a packet encounters as it is transmitted delay that a packet encounters as it is transmitted
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 milliseconds. 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 Message, this value represents the maximum Request Signal, this value represents the maximum
delay, in milliseconds, expected on the link. delay, in microseconds, expected on the link.
9.13 Resources (Receive)
The Receive Resources TLV is an OPTIONAL data item. If supported, it 10.11 Resources (Receive)
is used in Destination Up, Destination Update, Peer Discovery, Peer The Receive Resources TLV is an optional data item. If supported, it
Update, and Link Characteristics ACK messages to indicate a is used in Destination Up, Destination Update, Peer Initialization,
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length = 1 | Rcv Resources| |TLV Type =TBD |Length = 1 | Rcv Resources|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 25, line 5 skipping to change at page 24, line 28
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.
9.14 Resources (Transmit) 10.12 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 Discovery, Peer is used in Destination Up, Destination Update, Peer Initialization,
Update, and Link Characteristics ACK messages 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
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length = 1 | Xmt Resources| |TLV Type =TBD |Length = 1 | Xmt Resources|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 25, line 31 skipping to change at page 25, line 6
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.
9.15 Relative Link Quality (Receive) 10.13 Relative Link Quality (Receive)
The Relative Link Quality Receive (RLQR) TLV is a MANDATORY 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 Discovery, Peer Update, and Link Up, Destination Update, Peer Initialization, Peer Update, and Link
Characteristics ACK messages 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:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length = 1 |RCV Rel. Link | |TLV Type =TBD |Length = 1 |RCV Rel. Link |
| | |Quality (RLQR) | | | |Quality (RLQR) |
skipping to change at page 26, line 4 skipping to change at page 25, line 25
fields: 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length = 1 |RCV Rel. Link | |TLV Type =TBD |Length = 1 |RCV Rel. Link |
| | |Quality (RLQR) | | | |Quality (RLQR) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
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.
9.16 Relative Link Quality (Transmit) 10.14 Relative Link Quality (Transmit)
The Transmit Link Quality Receive (RLQT) TLV is a MANDATORY 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 Discovery, Peer Update, and Link Characteristics ACK Update, Peer Initialization, Peer Update, and Link Characteristics
messages to indicate the quality of the link for transmitting data as ACK signals to indicate the quality of the link for transmitting data
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:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length = 1 |XMT Rel. Link | |TLV Type =TBD |Length = 1 |XMT Rel. Link |
| | |Quality (RLQR) | | | |Quality (RLQR) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 26, line 40 skipping to change at page 26, line 17
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.
9.17 Status 10.15 Status
The Status TLV is sent as part of an acknowledgement message, 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length = 1 | Code | |TLV Type =TBD |Length = 1 | Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
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
skipping to change at page 27, line 18 skipping to change at page 26, line 40
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).
9.18 Heartbeat Interval 10.16 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 router MUST either accept the timeout interval supplied by the The receiver MUST either accept the timeout interval supplied by the
modem, 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
Messages (See Section 23). By specifying an Interval value of 0, Signals (See Section 11.15). By specifying an Interval value of 0,
implementations MAY indicates the desire to disable Heartbeat implementations MAY indicates the desire to disable Heartbeat signals
messages entirely (e.g., the Interval is set to an infinite value), entirely (e.g., the Interval is set to an infinite value), however,
however, it is strongly recommended that implementations use non 0 it is strongly recommended that implementations use non 0 timer
timer values. values.
A DLEP session will be considered inactive, and MUST be torn down, by A DLEP session will be considered inactive, and MUST be torn down, by
an implementation detecting that two (2) Heartbeat intervals have an implementation detecting that two (2) Heartbeat intervals have
transpired without receipt of any DLEP messages. transpired without receipt of any DLEP signals.
The Heartbeat Interval TLV contains the following fields: The Heartbeat Interval 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 | Interval | |TLV Type =TBD |Length = 2 | Interval |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
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 messages. heartbeat signals.
9.19 Link Characteristics ACK Timer 10.17 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 a router receives this TLV from a modem Characteristics Request. If this TLV is omitted, implementations
during Peer Discovery, the router MUST either accept the timeout supporting the Link Characteristics Request SHOULD choose a default
value, or reject the Peer Discovery. If this TLV is omitted, value.
implementations supporting the Link Characteristics Request SHOULD
choose a default value.
The Link Characteristics ACK Timer TLV contains the following fields: The Link Characteristics ACK Timer 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length = 1 | Interval | |TLV Type =TBD |Length = 1 | Interval |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
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.
9.20 Credit Window Status 10.18 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length = 16 | Modem Receive Window Value | |TLV Type =TBD |Length = 16 | Modem Receive Window Value |
skipping to change at page 29, line 23 skipping to change at page 28, line 45
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.
9.21 Credit Grant Request 10.19 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 messages. 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 message 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
synchronization purposes. synchronization purposes.
In the Destination Up message, when credits are desired, the In the Destination Up signal, when credits are desired, the
originating peer MUST set the initial credit value of the window it originating peer MUST set the initial credit value of the window it
controls (e.g. the Modem Receive Window, or Router Receive Window) to controls (e.g. the Modem Receive Window, or Router Receive Window) to
an initial, non-zero value. If the receiver of a Destination Up an initial, non-zero value. If the receiver of a Destination Up
message with a Credit Grant Request TLV supports credits, the signal with a Credit Grant Request TLV supports credits, the receiver
receiver MUST either reject the use of credits, via a Destination Up MUST either reject the use of credits, via a Destination Up ACK
ACK response with the correct Status TLV, or set the initial value response with the correct Status TLV, or set the initial value from
from the data contained in the Credit Window Status TLV. If the the data contained in the Credit Window Status TLV. If the
initialization completes successfully, the receiver MUST respond to initialization completes successfully, the receiver MUST respond to
the Destination Up message with a Destination Up ACK message that the Destination Up signal with a Destination Up ACK signal that
contains a Credit Window Status TLV, initializing its receive window. contains a Credit Window Status TLV, initializing its receive window.
The Credit Grant TLV contains the following fields: The Credit Grant 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 = 8 | Credit Increment | |TLV Type =TBD |Length = 8 | Credit Increment |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Credit Increment | | Credit Increment |
skipping to change at page 30, line 28 skipping to change at page 29, line 50
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.
9.22 Credit Request 10.20 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 message 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 MUST be rejected by the receiver via a Destination Update ACK signal.
message.
The Credit Request TLV contains the following fields: The Credit Request 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TLV Type =TBD |Length = 0 | Reserved, MUST| |TLV Type =TBD |Length = 1 | Reserved, MUST|
| | | be set to 0 | | | | be set to 0 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD TLV Type - TBD
Length - 0
Length - 1
Reserved - This field is currently unused and MUST be set to 0. Reserved - This field is currently unused and MUST be set to 0.
10. DLEP Protocol Messages 10.22 DLEP Optional Signals Supported
DLEP messages are encoded as a string of Type-Length-Value (TLV) The DLEP Optional Signals Supported TLV is a mandatory data item. If
constructs. The first TLV in a DLEP message MUST be a valid DLEP optional signals (e.g., the Link Characteristics Request Signal) are
signal, as defined in section 11.1 of this document. The second TLV supported, they MUST be enumerated with this data item inserted into
MUST be the Identification data item, defined in section 10.1 the Peer Initialization and Peer Initialization ACK signals. Failure
Following those two TLVs are 0 or more TLVs, representing the data to indicate optional signals indicates to a receiving peer that the
items that are appropriate for the signal. The layout of a DLEP sending implementation ONLY supports the core (mandatory) items
message is thus: listed in this specification. Optional signals that are NOT
enumerated in this data item when issuing Peer Initialization or Peer
Initialization ACK MUST NOT be used during the DLEP session.
The DLEP Optional Signals Supported 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| DLEP Signal |DLEP Message |Identification |Identification | |TLV Type =TBD |Length = 2 + |List of optional signals ... |
| Type value |length (9 + |TLV Type |TLV length | | |number of opt. | |
| (value TBD) |optional TLVs) |(TBD) |(8) | | |signals. | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Router ID |
TLV Type - TBD
Length - 2 + the number of optional signals supported
List - An enumeration of the optional signal TLV Types
supported by the implementation.
10.21 DLEP Optional Data Items Supported
The DLEP Optional Data Items Supported TLV is a mandatory data item.
If optional data items (e.g., Resources) are supported, they MUST be
enumerated with this data item inserted into the Peer Initialization
and Peer Initialization ACK signals. Failure to indicate optional
data items indicates to a receiving peer that the sending
implementation ONLY supports the core (mandatory) data items listed
in this specification. Optional data items that are NOT listed in
this data item MUST NOT be used during the DLEP session.
The DLEP Optional Data Items Supported 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Modem ID | |TLV Type =TBD |Length = 2 + |List of optional data items ...|
| |number of opt. | |
| |signals. | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Start of optional DLEP |
| TLVs... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
All DLEP messages (signals) begin with this structure. Therefore, in TLV Type - TBD
the following descriptions of specific messages, this header
structure is assumed, and will not be replicated.
10.1 Signal TLV Values Length - 2 + the number of optional data items supported
List - An enumeration of the optional data item TLV Types
supported by the implementation.
As mentioned above, all DLEP messages begin with the Type value of 10.22 DLEP Vendor Extension
the appropriate DLEP signal. Valid DLEP signals are:
The DLEP Vendor Extension data item is an optional data item, and
allows for vendor-defined information to be passed between DLEP
participants. The precise data carried in the payload portion of the
data item is vendor-specific, however, the payload MUST adhere to a
Type-Length-Value format. This optional data item is ONLY valid on
Peer Initialization ACK, and if present, SHOULD contain device-
specific information geared to optimizing data transmission/reception
over the modem's link.
The DLEP Vendor Extension 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 + |
| | | | payload... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV Type - TBD
Length - 3 + length of OUI (in octets) + payload length
Vendor OUI - The vendor OUI, as specified in [IEEE]
Payload - Vendor-specific payload, formatted as Type, Length,
Value construct(s).
11. DLEP Protocol Signals
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
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
appropriate for the signal. The layout of a DLEP signal is thus:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| DLEP Signal |DLEP Signal length (3 + length |Start of DLEP |
| Type value |of all data items) |data item TLVs |
| (value TBD) | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
All DLEP signals begin with this structure. Therefore, in the
following descriptions of specific signals, this header structure is
assumed, and will not be replicated.
11.1 Signal TLV Values
As mentioned above, all DLEP signals begin with the Type value. Valid
DLEP signals are:
TLV TLV TLV TLV
Value Description Value Description
========================================= =========================================
TBD Peer Discovery TBD Peer Discovery
TBD Peer Offer TBD Peer Offer
TBD Peer Initialization TBD Peer Initialization
TBD Peer Update TBD Peer Update
TBD Peer Update ACK TBD Peer Update ACK
TBD Peer Termination TBD Peer Termination
TBD Peer Termination ACK TBD Peer Termination ACK
TBD Destination Up TBD Destination Up
TBD Destination Up ACK TBD Destination Up ACK
TBD Destination Down TBD Destination Down
TBD Destination Down ACK TBD Destination Down ACK
TBD Destination Update TBD Destination Update
TBD Heartbeat TBD Heartbeat
TBD Link Characteristics Request TBD Link Characteristics Request
TBD Link Characteristics ACK TBD Link Characteristics ACK
10.2 Peer Discovery Message 11.2 Peer Discovery Signal
The Peer Discovery Message is sent by a modem to discover DLEP The Peer Discovery Signal is sent by a router to discover DLEP
routers in the network. The Peer Offer message is required to routers in the network. The Peer Offer signal is required to complete
complete the discovery process. Implementations MAY implement their the discovery process. Implementations MAY implement their own retry
own retry heuristics in cases where it is determined the Peer heuristics in cases where it is determined the Peer Discovery Signal
Discovery Message has timed out. has timed out.
Given the packet format described in section 11, the initial TLV Type Given the packet format described in section 11, the initial TLV Type
value is set to DLEP_PEER_DISCOVERY (value TBD). value is set to DLEP_PEER_DISCOVERY (value TBD).
There are NO Data Item TLVs associated with the Peer Discovery There are NO Data Item TLVs associated with the Peer Discovery
message. signal.
10.3 Peer Offer Message 11.3 Peer Offer Signal
The Peer Offer Message is sent by a DLEP router in response to a Peer The Peer Offer Signal is sent by a DLEP modem in response to a Peer
Discovery Message. Upon receipt, and processing, of a Peer Offer Discovery Signal. Upon receipt, and processing, of a Peer Offer
message, the modem 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 message 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 message, 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
10.4 Peer Initialization Message 11.4 Peer Initialization Signal
The Peer Initialization message is sent by a modem to start the DLEP
TCP session. It is sent by the modem after a TCP connect to the
address/port combination in a received Peer Offer, or to an
address/port obtained from a-priori configuration.
All supported metric data items MUST be included in the Peer
Initialization message, with default values to be used on a "modem-
wide" basis. This can be viewed as the modem "declaring" all
supported metrics at DLEP session initialization. Receipt of any DLEP
message containing a metric data item NOT included in Peer
Initialization MUST be treated as an error, resulting in termination
of the DLEP session between router and modem.
To construct a Peer Initialization message, the initial TLV type The Peer Initialization signal is sent by a router to start the DLEP
value is set to DLEP_PEER_INIT (value TBD). The signal TLV is then TCP session. It is sent by the router after a TCP connect to an
followed by the required data items: address/port combination that was obtained either via receipt of a
Peer Offer, or from a-priori configuration. If any optional signals
or data items are supported by the implementation, they MUST be
enumerated in the DLEP Optional Signals Supported and DLEP Optional
Data Items Supported items.
Mandatory Data Item TLVs: Mandatory Data Item TLVs:
- DLEP Version
- Heartbeat Interval - Heartbeat Interval
- Maximum Data Rate Receive - Optional Signals Supported
- Maximum Data Rate Transmit - Optional Data Items Supported
- Current Data Rate Receive
- Current Data Rate Transmit
- Latency
- Relative Link Quality Receive
- Relative Link Quality Transmit
Optional Data Item TLVs: Optional Data Item TLVs:
- Peer Type - Peer Type
Note that metric data items MUST be supplied with the Peer Note that optional signals and data items supported MUST be supplied
Initialization, in order to populate default metric values. If, at with the Peer Initialization, so that the modem may determine what
any time, metrics are reported that were NOT in Peer Initialization, optional support is available within the router. If the Optional
the receiving DLEP peer MUST treat this as a fatal error requiring Signals Supported (or the Optional Data Items Supported) TLV is
termination of the DLEP session. absent in Peer Initialization, the receiver of the signal MUST
conclude that there is NO optional support in the sender.
10.5 Peer Initialization ACK Message 11.5 Peer Initialization ACK Signal
The Peer Initialization ACK message is a MANDATORY message, sent in The Peer Initialization ACK signal is a mandatory signal, sent in
response to a received Peer Initialization message. The Peer response to a received Peer Initialization signal. The Peer
Initialization ACK message completes the TCP-level DLEP session Initialization ACK signal completes the TCP-level DLEP session
establishment; the sender of the message should transition to an "in- establishment; the sender of the signal should transition to an "in-
session" state when the message 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.
To construct a Peer Initialization ACK message, the initial TLV type All supported metric data items MUST be included in the Peer
Initialization ACK signal, with default values to be used on a
"modem-wide" basis. This can be viewed as the modem "declaring" all
supported metrics at DLEP session initialization. Receipt of any DLEP
signal containing a metric data item NOT included in Peer
Initialization ACK MUST be treated as an error, resulting in
termination of the DLEP session between router and modem. If optional
signals and/or data items are supported by the modem, they MUST be
enumerated in the DLEP Optional Signals supported and DLEP Optional
data items supported TLVs.
The Peer Initialization ACK signal MAY contain the DLEP Vendor
Extension data item, as documented in section 10.22
After the Peer Initialization/Peer Initialization ACK signals have
been successfully exchanged, implementations SHOULD only utilize
options that are supported in BOTH peers (e.g. router and modem). Any
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.
Any optional data item sent to a peer without support will be ignored
and silently dropped.
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:
- Heartbeat Interval
- Maximum Data Rate Receive
- Maximum Data Rate Transmit
- Current Data Rate Receive
- Current Data Rate Transmit
- Latency
- Relative Link Quality Receive
- Relative Link Quality Transmit
- DLEP Optional Signals Supported
- DLEP Optional Data Items Supported
- Status - Status
Optional Data Item TLVs: Optional Data Item TLVs:
- Peer Type - Peer Type
- DLEP Vendor Extension
10.6 Peer Update Message 11.6 Peer Update Signal
The Peer Update message is an OPTIONAL message, sent by a DLEP peer The Peer Update signal is an optional signal, sent by a DLEP peer to
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 message 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 Message to its attached MAY reflect that change via a Peer Update Signal to its attached
router(s). router(s).
Concerning Layer 3 addresses, if the modem is capable of Concerning Layer 3 addresses, if the modem is capable of
understanding and forwarding this information (via proprietary understanding and forwarding this information (via proprietary
mechanisms), the address update would prompt any remote DLEP modems mechanisms), the address update would prompt any remote DLEP modems
(DLEP-enabled modems in a remote node) to issue a "Destination (DLEP-enabled modems in a remote node) to issue a "Destination
Update" message to their local routers with the new (or deleted) Update" signal to their local routers with the new (or deleted)
addresses. Modems that do not track Layer 3 addresses SHOULD silently addresses. Modems that do not track Layer 3 addresses SHOULD silently
parse and ignore the Peer Update Message. Modems that track Layer 3 parse and ignore the Peer Update Signal. Modems that track Layer 3
addresses MUST acknowledge the Peer Update with a Peer Update ACK addresses MUST acknowledge the Peer Update with a Peer Update ACK
message. Routers receiving a Peer Update with metric changes MUST signal. Routers receiving a Peer Update with metric changes MUST
apply the new metric to all destinations (remote nodes) accessible apply the new metric to all destinations (remote nodes) accessible
via the modem. Supporting implementations are free to employ via the modem. Supporting implementations are free to employ
heuristics to retransmit Peer Update messages. The sending of Peer heuristics to retransmit Peer Update signals. The sending of Peer
Update Messages for Layer 3 address changes SHOULD cease when a Update Signals for Layer 3 address changes SHOULD cease when a either
either participant (router or modem) determines that the other participant (router or modem) determines that the other
implementation does NOT support Layer 3 address tracking. implementation does NOT support Layer 3 address tracking.
If metrics are supplied with the Peer Update message (e.g. Maximum If metrics are supplied with the Peer Update signal (e.g. Maximum
Data Rate), these metrics are considered to be modem-wide, and Data Rate), these metrics are considered to be modem-wide, and
therefore MUST be applied to all destinations in the information base therefore MUST be applied to all destinations in the information base
associated with the router/modem session. associated with the router/modem session.
To construct a Peer Update message, the initial TLV type value is set To construct a Peer Update signal, the initial TLV type value is set
to DLEP_PEER_UPDATE (value TBD). The Signal TLV is followed by any to DLEP_PEER_UPDATE (value TBD). The Signal TLV is followed by any
OPTIONAL Data Item TLVs. OPTIONAL Data Item TLVs.
Optional Data Item TLVs: Optional Data Item TLVs:
- 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
- Expected Forwarding Time
- Resources (Receive) - Resources (Receive)
- Resources (Transmit) - Resources (Transmit)
- Relative Link Quality (Receive) - Relative Link Quality (Receive)
- Relative Link Quality (Transmit) - Relative Link Quality (Transmit)
10.7 Peer Update ACK Message 11.7 Peer Update ACK Signal
The Peer Update ACK message is an OPTIONAL message, 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 Message 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.
To construct a Peer Update ACK message, the initial TLV type value is To construct a Peer Update ACK signal, the initial TLV type value is
set to DLEP_PEER_UPDATE_ACK (value TBD). The Status data item TLV is set to DLEP_PEER_UPDATE_ACK (value TBD). The Status data item TLV is
placed in the packet next, completing the Peer Update ACK. placed in the packet next, completing the Peer Update ACK.
Mandatory Data Item TLVs: Mandatory Data Item TLVs:
- Status - Status
Note that there are NO OPTIONAL data item TLVs specified for this Note that there are NO optional data item TLVs specified for this
message. signal.
10.8 Peer Termination Message 11.8 Peer Termination Signal
The Peer Termination Message is sent by a DLEP participant when the The Peer Termination Signal is sent by a DLEP participant when the
router/modem session needs to be terminated. Implementations router/modem session needs to be terminated. Implementations
receiving a Peer Termination message MUST send a Peer Termination ACK receiving a Peer Termination signal MUST send a Peer Termination ACK
message to confirm the termination process. The sender of a Peer signal to confirm the termination process. The sender of a Peer
Termination message is free to define its heuristics in event of a Termination signal is free to define its heuristics in event of a
timeout. The receiver of a Peer Termination Message MUST release all timeout. The receiver of a Peer Termination Signal MUST release all
resources allocated for the router/modem session, and MUST eliminate resources allocated for the router/modem session, and MUST eliminate
all destinations in the information base accessible via the all destinations in the information base accessible via the
router/modem pair represented by the session. Router and modem state router/modem pair represented by the session. Router and modem state
machines are returned to the "discovery" state. No Destination Down machines are returned to the "discovery" state. No Destination Down
messages are sent. signals are sent.
To construct a Peer Termination message, the initial TLV type value To construct a Peer Termination signal, the initial TLV type value is
is set to DLEP_PEER_TERMINATION (value TBD). The Signal TLV is set to DLEP_PEER_TERMINATION (value TBD). The signal TLV is followed
followed by any OPTIONAL Data Item TLVs the implementation supports: by any OPTIONAL Data Item TLVs the implementation supports:
Optional Data Item TLVs: Optional Data Item TLVs:
- Status - Status
10.9 Peer Termination ACK Message 11.9 Peer Termination ACK Signal
The Peer Termination Message ACK is sent by a DLEP peer in response The Peer Termination Signal ACK is sent by a DLEP peer in response to
to a received Peer Termination order. Receipt of a Peer Termination a received Peer Termination order. Receipt of a Peer Termination ACK
ACK message completes the teardown of the router/modem session. signal completes the teardown of the router/modem session.
To construct a Peer Termination ACK message, the initial TLV type To construct a Peer Termination ACK signal, the initial TLV type
value is set to DLEP_PEER_TERMINATION_ACK (value TBD). The value is set to DLEP_PEER_TERMINATION_ACK (value TBD). The
Identification data item TLV is placed in the packet next, followed Identification data item TLV is placed in the packet next, followed
by any OPTIONAL TLVs the implementation supports: by any OPTIONAL TLVs the implementation supports:
Optional Data Item TLVs: Optional Data Item TLVs:
- Status - Status
10.10 Destination Up Message 11.10 Destination Up Signal
A DLEP participant sends the Destination Up message to report that a A DLEP participant sends the Destination Up signal to report that a
new destination has been detected. A Destination Up ACK Message is new destination has been detected. A Destination Up ACK Signal is
required to confirm a received Destination Up. A Destination Up required to confirm a received Destination Up. A Destination Up
message can be sent either by the modem, to indicate that a new signal can be sent either by the modem, to indicate that a new remote
remote node has been detected, or by the router, to indicate the node has been detected, or by the router, to indicate the presence of
presence of a new logical destination (e.g., a Multicast group) a new logical destination (e.g., a Multicast group) exists in the
exists in the network. network.
The sender of the Destination Up Message is free to define its retry The sender of the Destination Up Signal is free to define its retry
heuristics in event of a timeout. When a Destination Up message is heuristics in event of a timeout. When a Destination Up signal is
received and successfully parsed, the receiver should add knowledge received and successfully parsed, the receiver should add knowledge
of the new destination to its information base, indicating that the of the new destination to its information base, indicating that the
destination is accessible via the modem/router pair. destination is accessible via the modem/router pair.
To construct a Destination Up message, the initial TLV type value is To construct a Destination Up signal, the initial TLV type value is
set to DLEP_Destination_UP (value TBD). The MAC Address data item TLV set to DLEP_DESTINATION_UP (value TBD). The MAC Address data item TLV
is placed in the packet next, followed by any supported OPTIONAL Data is placed in the packet next, followed by any supported optional Data
Item TLVs into the packet: Item TLVs into the packet:
Optional Data Item TLVs: Optional Data Item TLVs:
- 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
- Expected Forwarding Time
- 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
10.11 Destination Up ACK Message 11.11 Destination Up ACK Signal
A DLEP participant sends the Destination Up ACK Message to indicate A DLEP participant sends the Destination Up ACK Signal to indicate
whether a Destination Up Message was successfully processed. whether a Destination Up Signal was successfully processed.
To construct a Destination Up ACK message, 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
supported OPTIONAL Data Item TLVs into the packet: supported optional Data Item TLVs into the packet:
Optional Data Item TLVs: Optional Data Item TLVs:
- Credit Window Status - Credit Window Status
10.12 Destination Down Message 11.12 Destination Down Signal
A DLEP peer sends the Destination Down message to report when a A DLEP peer sends the Destination Down signal to report when a
destination (a remote node or a multicast group) is no longer destination (a remote node or a multicast group) is no longer
reachable. The Destination Down message MUST contain the MAC Address reachable. The Destination Down signal MUST contain the MAC Address
data item TLV. Other TLVs as listed are OPTIONAL, and MAY be present data item TLV. Other TLVs as listed are OPTIONAL, and MAY be present
if an implementation supports them. A Destination Down ACK Message if an implementation supports them. A Destination Down ACK Signal
MUST be sent by the recipient of a Destination Down message to MUST be sent by the recipient of a Destination Down signal to confirm
confirm that the relevant data has been removed from the information that the relevant data has been removed from the information base.
base. The sender of the Destination Down message is free to define
its retry heuristics in event of a timeout.
To construct a Destination Down message, the initial TLV type value The sender of the Destination Down signal is free to define its retry
is set to DLEP_Destination_DOWN (value TBD). The signal TLV is heuristics in event of a timeout.
followed by the mandatory MAC Address data item TLV.
Note that there are NO OPTIONAL data item TLVs for this message. To construct a Destination Down signal, the initial TLV type value is
set to DLEP_DESTINATION_DOWN (value TBD). The signal TLV is followed
by the mandatory MAC Address data item TLV.
10.13 Destination Down ACK Message Note that there are NO OPTIONAL data item TLVs for this signal.
A DLEP participant sends the Destination Down ACK Message to indicate 11.13 Destination Down ACK Signal
whether a received Destination Down Message was successfully
A DLEP participant sends the Destination Down ACK Signal to indicate
whether a received Destination Down Signal was successfully
processed. If successfully processed, the sender of the ACK MUST have processed. If successfully processed, the sender of the ACK MUST have
removed all entries in the information base that pertain to the removed all entries in the information base that pertain to the
referenced destination. As with the Destination Down message, there referenced destination. As with the Destination Down signal, there
are NO OPTIONAL Data Item TLVs defined for the Destination Down ACK are NO OPTIONAL Data Item TLVs defined for the Destination Down ACK
message. signal.
To construct a Destination Down message, the initial TLV type value To construct a Destination Down signal, the initial TLV type value is
is set to DLEP_Destination_DOWN_ACK (value TBD). The mandatory data set to DLEP_DESTINATION_DOWN_ACK (value TBD). The mandatory data item
item TLVs follow: TLVs follow:
- MAC Address Data item - MAC Address Data item
- Status data item - Status data item
10.14 Destination Update Message 11.14 Destination Update Signal
A DLEP participant sends the Destination Update message when it A DLEP participant sends the Destination Update signal when it
detects some change in the information base for a given destination detects some change in the information base for a given destination
(remote node or multicast group). Some examples of changes that would (remote node or multicast group). Some examples of changes that would
prompt a Destination Update message are: prompt a Destination Update signal are:
- Change in link metrics (e.g., Data Rates) - Change in link metrics (e.g., Data Rates)
- Layer 3 addressing change (for implementations that support it) - Layer 3 addressing change (for implementations that support it)
To construct a Destination Update message, the initial TLV type value To construct a Destination Update signal, the initial TLV type value
is set to DLEP_Destination_UPDATE (value TBD). Following the signal is set to DLEP_DESTINATION_UPDATE (value TBD). Following the signal
TLV are the mandatory Data Item TLVs: TLV are the mandatory Data Item TLVs:
MAC Address data item TLV MAC Address data item TLV
After placing the mandatory data item TLV into the packet, the After placing the mandatory data item TLV into the packet, the
implementation would place any supported OPTIONAL data item TLVs. implementation would place any supported OPTIONAL data item TLVs.
Possible OPTIONAL data item TLVs are: Possible OPTIONAL data item TLVs are:
- IPv4 Address - IPv4 Address
- IPv6 Address - IPv6 Address
skipping to change at page 38, line 48 skipping to change at page 40, line 20
- 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)
- Credit Window Status - Credit Window Status
- Credit Grant - Credit Grant
- Credit Request - Credit Request
10.15 Heartbeat Message 11.15 Heartbeat Signal
A Heartbeat Message is sent by a DLEP participant every N seconds,
where N is defined in the "Heartbeat Interval" field of the discovery
message. Note that implementations setting the Heartbeat Interval to
0 effectively set the interval to an infinite value, therefore, in
those cases, this message would NOT be sent.
The message is used by participants to detect when a DLEP session A Heartbeat Signal is sent by a DLEP participant every N seconds,
where N is defined in the "Heartbeat Interval" field of the Peer
Initialization signal. Note that implementations setting the
Heartbeat Interval to 0 effectively set the interval to an infinite
value, therefore, in those cases, this signal would NOT be sent.
The signal is used by participants to detect when a DLEP session
partner (either the modem or the router) is no longer communicating. partner (either the modem or the router) is no longer communicating.
Participants SHOULD allow two (2) heartbeat intervals to expire with Participants SHOULD allow two (2) heartbeat intervals to expire with
no traffic on the router/modem session before initiating DLEP session no traffic on the router/modem session before initiating DLEP session
termination procedures. termination procedures.
To construct a Heartbeat message, the initial TLV type value is set To construct a Heartbeat signal, the initial TLV type value is set to
to DLEP_PEER_HEARTBEAT (value TBD). The signal TLV is followed by the DLEP_PEER_HEARTBEAT (value TBD). The signal TLV is followed by the
mandatory Heartbeat Interval/Threshold data item. mandatory Heartbeat Interval/Threshold data item.
Note that there are NO OPTIONAL data item TLVs for this message. Note that there are NO OPTIONAL data item TLVs for this signal.
10.16 Link Characteristics Request Message 11.16 Link Characteristics Request Signal
The Link Characteristics Request Message is an OPTIONAL message, and The Link Characteristics Request Signal is an optional signal, and is
is sent by the router to request that the modem initiate changes for sent by the router to request that the modem initiate changes for
specific characteristics of the link. The request can reference specific characteristics of the link. The request can reference
either a real (e.g., a remote node), or a logical (e.g., a multicast either a real (e.g., a remote node), or a logical (e.g., a multicast
group) destination within the network. group) destination within the network.
The Link Characteristics Request message contains either a Current The Link Characteristics Request signal contains either a Current
Data Rate (CDRR or CDRT) TLV to request a different datarate than Data Rate (CDRR or CDRT) TLV to request a different datarate than
what is currently allocated, a Latency TLV to request that traffic what is currently allocated, a Latency TLV to request that traffic
delay on the link not exceed the specified value, or both. A Link delay on the link not exceed the specified value, or both. A Link
Characteristics ACK Message is required to complete the request. Characteristics ACK Signal is required to complete the request.
Implementations are free to define their retry heuristics in event of Implementations are free to define their retry heuristics in event of
a timeout. Issuing a Link Characteristics Request with ONLY the MAC a timeout. Issuing a Link Characteristics Request with ONLY the MAC
Address TLV is a mechanism a peer MAY use to request metrics (via the Address TLV is a mechanism a peer MAY use to request metrics (via the
Link Characteristics ACK) from its partner. Link Characteristics ACK) from its partner.
To construct a Link Characteristics Request message, the initial TLV To construct a Link Characteristics Request signal, the initial TLV
type value is set to DLEP_Destination_LINK_CHAR_REQ (value TBD). type value is set to DLEP_Destination_LINK_CHAR_REQ (value TBD).
Following the signal TLV is the mandatory Data Item TLV: Following the signal TLV is the mandatory Data Item TLV:
MAC Address data item TLV MAC Address data item TLV
After placing the mandatory data item TLV into the packet, the After placing the mandatory data item TLV into the packet, the
implementation would place any supported OPTIONAL data item TLVs. implementation would place any supported OPTIONAL data item TLVs.
Possible OPTIONAL data item TLVs are: Possible optional data item TLVs are:
Current Data Rate - If present, this value represents the NEW (or Current Data Rate - If present, this value represents the NEW (or
unchanged, if the request is denied) Current unchanged, if the request is denied) Current
Data Rate in bits per second (bps). Data Rate in bits per second (bps).
Latency - If present, this value represents the maximum Latency - If present, this value represents the maximum
desired latency (e.g., it is a not-to-exceed desired latency (e.g., it is a not-to-exceed
value) in milliseconds on the link. value) in microseconds on the link.
10.17 Link Characteristics ACK Message 11.17 Link Characteristics ACK Signal
The LInk Characteristics ACK message is an OPTIONAL message, and is The LInk Characteristics ACK signal is an optional signal, and is
sent by modems supporting it to the router letting the router know sent by modems supporting it to the router letting the router know
the success or failure of a requested change in link characteristics. the success or failure of a requested change in link characteristics.
The Link Characteristics ACK message SHOULD contain a complete set The Link Characteristics ACK signal SHOULD contain a complete set of
of metric data item TLVs. It MUST contain the same TLV types as the metric data item TLVs. It MUST contain the same TLV types as the
request. The values in the metric data item TLVs in the Link request. The values in the metric data item TLVs in the Link
Characteristics ACK message MUST reflect the link characteristics Characteristics ACK signal MUST reflect the link characteristics
after the request has been processed. after the request has been processed.
To construct a Link Characteristics Request ACK message, the initial To construct a Link Characteristics Request ACK signal, the initial
TLV type value is set to DLEP_Destination_LINK_CHAR_ACK (value TBD). TLV type value is set to DLEP_Destination_LINK_CHAR_ACK (value TBD).
Following the signal TLV is the mandatory Data Item TLV: Following the signal TLV is the mandatory Data Item TLV:
MAC Address data item TLV MAC Address data item TLV
After placing the mandatory data item TLV into the packet, the After placing the mandatory data item TLV into the packet, the
implementation would place any supported OPTIONAL data item TLVs. implementation would place any supported OPTIONAL data item TLVs.
Possible OPTIONAL data item TLVs are: Possible OPTIONAL data item TLVs are:
Current Data Rate - If present, this value represents the requested Current Data Rate - If present, this value represents the requested
data rate in bits per second (bps). data rate in bits per second (bps).
Latency - If present, this value represents the NEW Latency - If present, this value represents the NEW
maximum latency (or unchanged, if the request maximum latency (or unchanged, if the request
is denied), expressed in milliseconds, on the is denied), expressed in microseconds, on the
link. link.
11. Security Considerations 12. Security Considerations
The protocol does not contain any mechanisms for security (e.g. The protocol does not contain any mechanisms for security (e.g.
authentication or encryption). The protocol assumes that any security authentication or encryption). The protocol assumes that any security
would be implemented in the underlying transport (for example, by use would be implemented in the underlying transport (for example, by use
of DTLS or some other mechanism), and is therefore outside the scope of DTLS or some other mechanism), and is therefore outside the scope
of this document. of this document.
12. IANA Considerations 13. IANA Considerations
This section specifies requests to IANA. This section specifies requests to IANA.
12.1 Registrations 13.1 Registrations
This specification defines: This specification defines:
o A new repository for DLEP signals, with fifteen values currently o A new repository for DLEP signals, with fifteen values currently
assigned. assigned.
o Reservation of numbering space for Experimental DLEP signals. o Reservation of numbering space for Experimental DLEP signals.
o A new repository for DLEP Data Items, with twenty-one values o A new repository for DLEP Data Items, with twenty-one values
currently assigned. currently assigned.
o Reservation of numbering space in the Data Items repository for o Reservation of numbering space in the Data Items repository for
experimental data items. experimental data items.
o A request for allocation of a well-known port for DLEP o A request for allocation of a well-known port for DLEP
communication. communication.
o A request for allocation of a multicast address for DLEP o A request for allocation of a multicast address for DLEP
discovery. discovery.
12.2 Expert Review: Evaluation Guidelines 13.2 Expert Review: Evaluation Guidelines
No additional guidelines for expert review are anticipated. No additional guidelines for expert review are anticipated.
12.3 Message (Signal) TLV Type Registration 13.3 Signal TLV Type Registration
A new repository must be created with the values of the DLEP A new repository must be created with the values of the DLEP signals.
messages. Valid signals are:
Valid signals are:
o Peer Discovery o Peer Discovery
o Peer Offer o Peer Offer
o Peer Initialization o Peer Initialization
o Peer Initialization ACK o Peer Initialization ACK
o Peer Update o Peer Update
o Peer Update ACK o Peer Update ACK
o Peer Termination o Peer Termination
o Peer Termination ACK o Peer Termination ACK
o Destination Up o Destination Up
skipping to change at page 42, line 8 skipping to change at page 43, line 27
o Destination Down o Destination Down
o Destination Down ACK o Destination Down ACK
o Destination Update o Destination Update
o Heartbeat o Heartbeat
o Link Characteristics Request o Link Characteristics Request
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.
12.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 Expected Forwarding Time
o Resources (Receive) o Resources (Receive)
o Resources (Transmit) o Resources (Transmit)
o Relative Link Quality (Receive) o Relative Link Quality (Receive)
o Relative Link Quality (Transmit) o Relative Link Quality (Transmit)
o Status o Status
o Heartbeat Interval/Threshold o Heartbeat Interval/Threshold
o Link Characteristics ACK Timer o Link Characteristics ACK Timer
o Credit Window Status o Credit Window Status
o Credit Grant o Credit Grant
o Credit Request o Credit Request
o DLEP Optional Signals Supported
o DLEP Optional Data Items Supported
o DLEP Vendor Extension
It is also requested that the registry allocation contain space for It is also requested that the registry allocation contain space for
experimental data items. experimental data items.
12.5 DLEP Well-known Port 13.5 DLEP Well-known Port
It is requested that IANA allocate a well-known port number for DLEP It is requested that IANA allocate a well-known port number for DLEP
communication. communication.
12.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 messages. discovery signals.
13. Appendix A. 14. Appendix A.
13.1 Peer Level Message Flows 14.1 Peer Level Signal Flows
13.1.1 Modem Device Restarts Discovery
Router Modem Message Description 14.1.1 Modem Device Restarts Discovery
Router Modem Signal Description
==================================================================== ====================================================================
<-------Peer Discovery--------- Modem initiates discovery <-------Peer Discovery--------- Modem initiates discovery
---------Peer Offer-----------> Router detects a problem, sends ---------Peer Offer-----------> Router 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 Modem accepts failure, restarts
discovery process. discovery process.
<-------Peer Discovery--------- Modem initiates discovery <-------Peer Discovery--------- Modem initiates discovery
---------Peer Offer-----------> Router accepts, sends Peer Offer ---------Peer Offer-----------> Router accepts, sends Peer Offer
w/ Zero Status TLV w/ Status TLV indicating success. w/ Zero Status TLV w/ Status TLV indicating success.
Discovery completed. Discovery completed.
13.1.2 Modem Device Detects Peer Offer Timeout 14.1.2 Modem Device Detects Peer Offer Timeout
Router Modem Signal Description
Router Modem Message Description
==================================================================== ====================================================================
<-------Peer Discovery--------- Modem initiates discovery, starts <-------Peer Discovery--------- Modem initiates discovery, starts
a guard timer. a guard timer.
Modem guard timer expires. Modem Modem guard timer expires. Modem
restarts discovery process. restarts discovery process.
<-------Peer Discovery--------- Modem initiates discovery, starts <-------Peer Discovery--------- Modem initiates discovery, starts
a guard timer. a guard timer.
---------Peer Offer-----------> Router accepts, sends Peer Offer ---------Peer Offer-----------> Router accepts, sends Peer Offer
w/ Zero Status TLV w/ Status TLV indicating success. w/ Zero Status TLV w/ Status TLV indicating success.
Discovery completed. Discovery completed.
13.1.3 Router Peer Offer Lost 14.1.3 Router Peer Offer Lost
Router Modem Message Description Router Modem Signal Description
==================================================================== ====================================================================
<-------Peer Discovery--------- Modem initiates discovery, starts <-------Peer Discovery--------- Modem initiates discovery, starts
a guard timer. a guard timer.
---------Peer Offer-------|| Router offers availability ---------Peer Offer-------|| Router offers availability
Modem times out on Peer Offer, Modem times out on Peer Offer,
restarts discovery process. restarts discovery process.
<-------Peer Discovery--------- Modem initiates discovery <-------Peer Discovery--------- Modem initiates discovery
---------Peer Offer-----------> Router detects subsequent ---------Peer Offer-----------> Router detects subsequent
discovery, internally terminates discovery, internally terminates
the previous, accepts the new the previous, accepts the new
association, sends Peer Offer association, sends Peer Offer
w/Status TLV indicating success. w/Status TLV indicating success.
Discovery completed. Discovery completed.
13.1.4 Discovery Success 14.1.4 Discovery Success
Router Modem Message Description Router Modem Signal Description
==================================================================== ====================================================================
<-------Peer Discovery--------- Modem initiates discovery <-------Peer Discovery--------- Modem initiates discovery
---------Peer Offer-----------> Router offers availability ---------Peer Offer-----------> Router offers availability
<-----Peer Initialization------ Modem Connects on TCP Port <-----Peer Initialization------ Modem Connects on TCP Port
<------Peer Heartbeat---------- <------Peer Heartbeat----------
-------Peer Heartbeat---------> -------Peer Heartbeat--------->
<==============================> Message flow about destinations <==============================> Signal flow about destinations
(i.e. Destination Up, Destination (i.e. Destination Up, Destination
Down, Destination update) Down, Destination update)
<-------Peer Heartbeat--------- <-------Peer Heartbeat---------
-------Peer Heartbeat---------> -------Peer Heartbeat--------->
--------Peer Term Req---------> Terminate Request --------Peer Term Req---------> Terminate Request
<--------Peer Term Res--------- Terminate Response <--------Peer Term Res--------- Terminate Response
29.1.5 Router Detects a Heartbeat timeout 14.1.5 Router Detects a Heartbeat timeout
Router Modem Message Description Router Modem Signal Description
==================================================================== ====================================================================
<-------Peer Heartbeat--------- <-------Peer Heartbeat---------
-------Peer Heartbeat---------> -------Peer Heartbeat--------->
||---Peer Heartbeat--------- ||---Peer Heartbeat---------
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
skipping to change at page 45, line 38 skipping to change at page 47, line 38
association. association.
------Peer Terminate ---------> Peer Terminate Request ------Peer Terminate ---------> Peer Terminate Request
Modem takes down all destination Modem takes down all destination
sessions, then acknowledges the sessions, then acknowledges the
Peer Terminate Peer Terminate
<----Peer Terminate ACK--------- Peer Terminate ACK <----Peer Terminate ACK--------- Peer Terminate ACK
29.1.6 Modem Detects a Heartbeat timeout 14.1.6 Modem Detects a Heartbeat timeout
Router Modem Message Description Router Modem Signal Description
==================================================================== ====================================================================
<-------Peer Heartbeat--------- <-------Peer Heartbeat---------
-------Peer Heartbeat------|| -------Peer Heartbeat------||
<-------Peer Heartbeat--------- <-------Peer Heartbeat---------
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
skipping to change at page 46, line 18 skipping to change at page 48, line 18
takes down all destination sessions takes down all destination sessions
<-------Peer Terminate-------- Peer Terminate Request <-------Peer Terminate-------- Peer Terminate Request
Router takes down all destination Router takes down all destination
sessions, then acknowledges the sessions, then acknowledges the
Peer Terminate Peer Terminate
------Peer Terminate ACK-----> Peer Terminate ACK ------Peer Terminate ACK-----> Peer Terminate ACK
29.1.7 Peer Terminate (from Modem) Lost 14.1.7 Peer Terminate (from Modem) Lost
Router Modem Message Description Router Modem Signal Description
==================================================================== ====================================================================
||------Peer Terminate-------- Modem Peer Terminate Request ||------Peer Terminate-------- Modem Peer Terminate Request
Router Heartbeat times out, Router Heartbeat times out,
terminates association. terminates association.
--------Peer Terminate-------> Router Peer Terminate --------Peer Terminate-------> Router Peer Terminate
<-----Peer Terminate ACK------ Modem sends Peer Terminate ACK <-----Peer Terminate ACK------ Modem sends Peer Terminate ACK
29.1.8 Peer Terminate (from Router) Lost 14.1.8 Peer Terminate (from Router) Lost
Router Modem Message Description Router Modem Signal Description
==================================================================== ====================================================================
-------Peer Terminate--------> Router Peer Terminate Request -------Peer Terminate--------> Router Peer Terminate Request
Modem HB times out, Modem HB times out,
terminates association. terminates association.
<------Peer Terminate-------- Modem Peer Terminate <------Peer Terminate-------- Modem Peer Terminate
------Peer Terminate ACK-----> Peer Terminate ACK ------Peer Terminate ACK-----> Peer Terminate ACK
29.2 Destination Specific Message Flows 14.2 Destination Specific Signal Flows
29.2.1 Modem Destination Up Lost 14.2.1 Modem Destination Up Lost
Router Modem Message Description Router Modem Signal Description
==================================================================== ====================================================================
||-----Destination Up ------------ Modem sends Destination Up ||-----Destination Up ------------ Modem sends Destination Up
Modem timesout on ACK Modem timesout on ACK
<------Destination Up ------------ Modem sends Destination Up <------Destination Up ------------ Modem sends Destination Up
------Destination Up ACK---------> Router accepts the destination ------Destination Up ACK---------> Router accepts the destination
session session
<------Destination Update--------- Modem Destination Metrics <------Destination Update--------- Modem Destination Metrics
. . . . . . . . . . . . . . . .
<------Destination Update--------- Modem Destination Metrics <------Destination Update--------- Modem Destination Metrics
29.2.2 Router Detects Duplicate Destination Ups 14.2.2 Router Detects Duplicate Destination Ups
Router Modem Message Description Router Modem Signal Description
==================================================================== ====================================================================
<------Destination Up ------------ Modem sends Destination Up <------Destination Up ------------ Modem sends Destination Up
------Destination Up ACK-------|| Router accepts the destination ------Destination Up ACK-------|| Router accepts the destination
session session
Modem timesout on ACK Modem timesout on ACK
<------Destination Up ------------ Modem resends Destination Up <------Destination Up ------------ Modem resends Destination Up
skipping to change at page 48, line 5 skipping to change at page 50, line 5
previous, accepts the new previous, accepts the new
Destination. Destination.
------Destination Up ACK---------> Router accepts the destination ------Destination Up ACK---------> Router accepts the destination
session session
<------Destination Update--------- Modem Destination Metrics <------Destination Update--------- Modem Destination Metrics
. . . . . . . . . . . . . . . .
<------Destination Update--------- Modem Destination Metrics <------Destination Update--------- Modem Destination Metrics
29.2.3 Destination Up, No Layer 3 Addresses 14.2.3 Destination Up, No Layer 3 Addresses
Router Modem Message Description Router Modem Signal Description
==================================================================== ====================================================================
<------Destination Up ------------ Modem sends Destination Up <------Destination Up ------------ Modem sends Destination Up
------Destination Up ACK---------> Router accepts the destination ------Destination Up ACK---------> Router accepts the destination
session session
Router ARPs for IPv4 if defined. Router ARPs for IPv4 if defined.
Router drives ND for IPv6 if Router drives ND for IPv6 if
defined. defined.
<------Destination Update--------- Modem Destination Metrics <------Destination Update--------- Modem Destination Metrics
. . . . . . . . . . . . . . . .
<------Destination Update--------- Modem Destination Metrics <------Destination Update--------- Modem Destination Metrics
29.2.4 Destination Up with IPv4, No IPv6 14.2.4 Destination Up with IPv4, No IPv6
Router Modem Message Description Router Modem Signal Description
==================================================================== ====================================================================
<------Destination Up ------------ Modem sends Destination Up with <------Destination Up ------------ Modem sends Destination Up with
the IPv4 TLV the IPv4 TLV
------Destination Up ACK---------> Router accepts the destination ------Destination Up ACK---------> Router accepts the destination
session session
Router drives ND for IPv6 if Router drives ND for IPv6 if
defined. defined.
<------Destination Update--------- Modem Destination Metrics <------Destination Update--------- Modem Destination Metrics
. . . . . . . . . . . . . . . .
<------Destination Update--------- Modem Destination Metrics <------Destination Update--------- Modem Destination Metrics
29.2.5 Destination Up with IPv4 and IPv6 14.2.5 Destination Up with IPv4 and IPv6
Router Modem Message Description Router Modem Signal Description
==================================================================== ====================================================================
<------Destination Up ------------ Modem sends Destination Up with <------Destination Up ------------ Modem sends Destination Up with
the IPv4 and IPv6 TLVs the IPv4 and IPv6 TLVs
------Destination Up ACK---------> Router accepts the destination ------Destination Up ACK---------> Router accepts the destination
session session
<------Destination Update--------- Modem Destination Metrics <------Destination Update--------- Modem Destination Metrics
. . . . . . . . . . . . . . . .
29.2.6 Destination Session Success 14.2.6 Destination Session Success
Router Modem Message Description Router Modem Signal Description
==================================================================== ====================================================================
---------Peer Offer-----------> Router offers availability ---------Peer Offer-----------> Router offers availability
-------Peer Heartbeat---------> -------Peer Heartbeat--------->
<------Destination Up ----------- Modem <------Destination Up ----------- Modem
------Destination Up ACK--------> Router ------Destination Up ACK--------> Router
skipping to change at page 50, line 12 skipping to change at page 52, line 12
contributions of Chris Olsen, Martin Duke, Subir Das, Jaewon Kang, contributions of Chris Olsen, Martin Duke, Subir Das, Jaewon Kang,
Vikram Kaul, and Nelson Powell. Vikram Kaul, and Nelson Powell.
Normative References Normative References
[RFC5578] Berry, B., Ed., "PPPoE with Credit Flow and Metrics", [RFC5578] Berry, B., Ed., "PPPoE with Credit Flow and Metrics",
RFC 5578, February 2010. RFC 5578, February 2010.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
[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 Cisco
170 West Tasman Drive 170 West Tasman Drive
San Jose, CA 95134 San Jose, CA 95134
USA USA
EMail: sratliff@cisco.com EMail: sratliff@cisco.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: boberry@cisco.com EMail:
Greg Harrison Greg Harrison
Cisco Cisco
170 West Tasman Drive 170 West Tasman Drive
San Jose, CA 95134 San Jose, CA 95134
USA USA
EMail: greharri@cisco.com EMail: greharri@cisco.com
Shawn Jury Shawn Jury
Cisco Cisco
 End of changes. 263 change blocks. 
665 lines changed or deleted 737 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/