draft-ietf-manet-dlep-23.txt   draft-ietf-manet-dlep-24.txt 
Mobile Ad hoc Networks Working Group S. Ratliff Mobile Ad hoc Networks Working Group S. Ratliff
Internet-Draft VT iDirect Internet-Draft VT iDirect
Intended status: Standards Track S. Jury Intended status: Standards Track S. Jury
Expires: January 19, 2017 Cisco Systems Expires: January 26, 2017 Cisco Systems
D. Satterwhite D. Satterwhite
Broadcom Broadcom
R. Taylor R. Taylor
Airbus Defence & Space Airbus Defence & Space
B. Berry B. Berry
July 25, 2016
July 18, 2016
Dynamic Link Exchange Protocol (DLEP) Dynamic Link Exchange Protocol (DLEP)
draft-ietf-manet-dlep-23 draft-ietf-manet-dlep-24
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
routing decisions. In mobile or other environments where these routing 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 1, line 44 skipping to change at page 1, line 44
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on January 19, 2017. This Internet-Draft will expire on January 26, 2017.
Copyright Notice Copyright Notice
Copyright (c) 2016 IETF Trust and the persons identified as the Copyright (c) 2016 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
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
skipping to change at page 2, line 21 skipping to change at page 2, line 24
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
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
2. Protocol Overview . . . . . . . . . . . . . . . . . . . . . . 7 2. Protocol Overview . . . . . . . . . . . . . . . . . . . . . . 7
2.1. Destinations . . . . . . . . . . . . . . . . . . . . . . 7 2.1. Destinations . . . . . . . . . . . . . . . . . . . . . . 8
3. Extensions . . . . . . . . . . . . . . . . . . . . . . . . . 8 3. Extensions . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.1. Requirements . . . . . . . . . . . . . . . . . . . . . . 8 3.1. Requirements . . . . . . . . . . . . . . . . . . . . . . 9
4. Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 4. Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
5. DLEP Session Flow . . . . . . . . . . . . . . . . . . . . . . 11 5. DLEP Session Flow . . . . . . . . . . . . . . . . . . . . . . 11
5.1. Peer Discovery State . . . . . . . . . . . . . . . . . . 11 5.1. Peer Discovery State . . . . . . . . . . . . . . . . . . 11
5.2. Session Initialization State . . . . . . . . . . . . . . 12 5.2. Session Initialization State . . . . . . . . . . . . . . 12
5.3. In-Session State . . . . . . . . . . . . . . . . . . . . 12 5.3. In-Session State . . . . . . . . . . . . . . . . . . . . 13
5.3.1. Heartbeats . . . . . . . . . . . . . . . . . . . . . 13 5.3.1. Heartbeats . . . . . . . . . . . . . . . . . . . . . 13
5.4. Session Termination State . . . . . . . . . . . . . . . . 13 5.4. Session Termination State . . . . . . . . . . . . . . . . 14
5.5. Session Reset state . . . . . . . . . . . . . . . . . . . 14 5.5. Session Reset state . . . . . . . . . . . . . . . . . . . 14
5.5.1. Unexpected TCP connection termination . . . . . . . . 14 5.5.1. Unexpected TCP connection termination . . . . . . . . 14
6. Transaction Model . . . . . . . . . . . . . . . . . . . . . . 14 6. Transaction Model . . . . . . . . . . . . . . . . . . . . . . 15
7. Extensions . . . . . . . . . . . . . . . . . . . . . . . . . 15 7. Extensions . . . . . . . . . . . . . . . . . . . . . . . . . 15
7.1. Experiments . . . . . . . . . . . . . . . . . . . . . . . 15 7.1. Experiments . . . . . . . . . . . . . . . . . . . . . . . 16
8. Scalability . . . . . . . . . . . . . . . . . . . . . . . . . 16 8. Scalability . . . . . . . . . . . . . . . . . . . . . . . . . 16
9. DLEP Signal and Message Structure . . . . . . . . . . . . . . 16 9. DLEP Signal and Message Structure . . . . . . . . . . . . . . 17
9.1. DLEP Signal Header . . . . . . . . . . . . . . . . . . . 17 9.1. DLEP Signal Header . . . . . . . . . . . . . . . . . . . 17
9.2. DLEP Message Header . . . . . . . . . . . . . . . . . . . 17 9.2. DLEP Message Header . . . . . . . . . . . . . . . . . . . 18
9.3. DLEP Generic Data Item . . . . . . . . . . . . . . . . . 18 9.3. DLEP Generic Data Item . . . . . . . . . . . . . . . . . 18
10. DLEP Signals and Messages . . . . . . . . . . . . . . . . . . 18 10. DLEP Signals and Messages . . . . . . . . . . . . . . . . . . 19
10.1. General Processing Rules . . . . . . . . . . . . . . . . 19 10.1. General Processing Rules . . . . . . . . . . . . . . . . 19
10.2. Status code processing . . . . . . . . . . . . . . . . . 20 10.2. Status code processing . . . . . . . . . . . . . . . . . 20
10.3. Peer Discovery Signal . . . . . . . . . . . . . . . . . 20 10.3. Peer Discovery Signal . . . . . . . . . . . . . . . . . 20
10.4. Peer Offer Signal . . . . . . . . . . . . . . . . . . . 20 10.4. Peer Offer Signal . . . . . . . . . . . . . . . . . . . 21
10.5. Session Initialization Message . . . . . . . . . . . . . 21 10.5. Session Initialization Message . . . . . . . . . . . . . 21
10.6. Session Initialization Response Message . . . . . . . . 22 10.6. Session Initialization Response Message . . . . . . . . 22
10.7. Session Update Message . . . . . . . . . . . . . . . . . 23 10.7. Session Update Message . . . . . . . . . . . . . . . . . 24
10.8. Session Update Response Message . . . . . . . . . . . . 25 10.8. Session Update Response Message . . . . . . . . . . . . 25
10.9. Session Termination Message . . . . . . . . . . . . . . 25 10.9. Session Termination Message . . . . . . . . . . . . . . 25
10.10. Session Termination Response Message . . . . . . . . . . 25 10.10. Session Termination Response Message . . . . . . . . . . 25
10.11. Destination Up Message . . . . . . . . . . . . . . . . . 26 10.11. Destination Up Message . . . . . . . . . . . . . . . . . 26
10.12. Destination Up Response Message . . . . . . . . . . . . 27 10.12. Destination Up Response Message . . . . . . . . . . . . 27
10.13. Destination Announce Message . . . . . . . . . . . . . . 27 10.13. Destination Announce Message . . . . . . . . . . . . . . 28
10.14. Destination Announce Response Message . . . . . . . . . 28 10.14. Destination Announce Response Message . . . . . . . . . 28
10.15. Destination Down Message . . . . . . . . . . . . . . . . 30 10.15. Destination Down Message . . . . . . . . . . . . . . . . 30
10.16. Destination Down Response Message . . . . . . . . . . . 30 10.16. Destination Down Response Message . . . . . . . . . . . 30
10.17. Destination Update Message . . . . . . . . . . . . . . . 30 10.17. Destination Update Message . . . . . . . . . . . . . . . 31
10.18. Link Characteristics Request Message . . . . . . . . . . 32 10.18. Link Characteristics Request Message . . . . . . . . . . 32
10.19. Link Characteristics Response Message . . . . . . . . . 32 10.19. Link Characteristics Response Message . . . . . . . . . 33
10.20. Heartbeat Message . . . . . . . . . . . . . . . . . . . 33 10.20. Heartbeat Message . . . . . . . . . . . . . . . . . . . 34
11. DLEP Data Items . . . . . . . . . . . . . . . . . . . . . . . 34 11. DLEP Data Items . . . . . . . . . . . . . . . . . . . . . . . 34
11.1. Status . . . . . . . . . . . . . . . . . . . . . . . . . 35 11.1. Status . . . . . . . . . . . . . . . . . . . . . . . . . 35
11.2. IPv4 Connection Point . . . . . . . . . . . . . . . . . 37 11.2. IPv4 Connection Point . . . . . . . . . . . . . . . . . 37
11.3. IPv6 Connection Point . . . . . . . . . . . . . . . . . 37 11.3. IPv6 Connection Point . . . . . . . . . . . . . . . . . 38
11.4. Peer Type . . . . . . . . . . . . . . . . . . . . . . . 39 11.4. Peer Type . . . . . . . . . . . . . . . . . . . . . . . 39
11.5. Heartbeat Interval . . . . . . . . . . . . . . . . . . . 39 11.5. Heartbeat Interval . . . . . . . . . . . . . . . . . . . 40
11.6. Extensions Supported . . . . . . . . . . . . . . . . . . 40 11.6. Extensions Supported . . . . . . . . . . . . . . . . . . 41
11.7. MAC Address . . . . . . . . . . . . . . . . . . . . . . 40 11.7. MAC Address . . . . . . . . . . . . . . . . . . . . . . 41
11.8. IPv4 Address . . . . . . . . . . . . . . . . . . . . . . 41 11.8. IPv4 Address . . . . . . . . . . . . . . . . . . . . . . 42
11.9. IPv6 Address . . . . . . . . . . . . . . . . . . . . . . 42 11.9. IPv6 Address . . . . . . . . . . . . . . . . . . . . . . 43
11.10. IPv4 Attached Subnet . . . . . . . . . . . . . . . . . . 43 11.10. IPv4 Attached Subnet . . . . . . . . . . . . . . . . . . 44
11.11. IPv6 Attached Subnet . . . . . . . . . . . . . . . . . . 44 11.11. IPv6 Attached Subnet . . . . . . . . . . . . . . . . . . 45
11.12. Maximum Data Rate (Receive) . . . . . . . . . . . . . . 45 11.12. Maximum Data Rate (Receive) . . . . . . . . . . . . . . 46
11.13. Maximum Data Rate (Transmit) . . . . . . . . . . . . . . 45 11.13. Maximum Data Rate (Transmit) . . . . . . . . . . . . . . 46
11.14. Current Data Rate (Receive) . . . . . . . . . . . . . . 46 11.14. Current Data Rate (Receive) . . . . . . . . . . . . . . 47
11.15. Current Data Rate (Transmit) . . . . . . . . . . . . . . 47 11.15. Current Data Rate (Transmit) . . . . . . . . . . . . . . 48
11.16. Latency . . . . . . . . . . . . . . . . . . . . . . . . 48 11.16. Latency . . . . . . . . . . . . . . . . . . . . . . . . 48
11.17. Resources . . . . . . . . . . . . . . . . . . . . . . . 48 11.17. Resources . . . . . . . . . . . . . . . . . . . . . . . 49
11.18. Relative Link Quality (Receive) . . . . . . . . . . . . 49 11.18. Relative Link Quality (Receive) . . . . . . . . . . . . 50
11.19. Relative Link Quality (Transmit) . . . . . . . . . . . . 50 11.19. Relative Link Quality (Transmit) . . . . . . . . . . . . 51
11.20. Maximum Transmission Unit (MTU) . . . . . . . . . . . . 50 11.20. Maximum Transmission Unit (MTU) . . . . . . . . . . . . 52
12. Security Considerations . . . . . . . . . . . . . . . . . . . 51 12. Security Considerations . . . . . . . . . . . . . . . . . . . 52
13. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 52 13. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 53
13.1. Registrations . . . . . . . . . . . . . . . . . . . . . 52 13.1. Registrations . . . . . . . . . . . . . . . . . . . . . 53
13.2. Signal Type Registration . . . . . . . . . . . . . . . . 52 13.2. Signal Type Registration . . . . . . . . . . . . . . . . 53
13.3. Message Type Registration . . . . . . . . . . . . . . . 52 13.3. Message Type Registration . . . . . . . . . . . . . . . 53
13.4. DLEP Data Item Registrations . . . . . . . . . . . . . . 53 13.4. DLEP Data Item Registrations . . . . . . . . . . . . . . 54
13.5. DLEP Status Code Registrations . . . . . . . . . . . . . 54 13.5. DLEP Status Code Registrations . . . . . . . . . . . . . 55
13.6. DLEP Extensions Registrations . . . . . . . . . . . . . 55 13.6. DLEP Extensions Registrations . . . . . . . . . . . . . 56
13.7. DLEP Well-known Port . . . . . . . . . . . . . . . . . . 55 13.7. DLEP Well-known Port . . . . . . . . . . . . . . . . . . 56
13.8. DLEP IPv4 Link-local Multicast Address . . . . . . . . . 55 13.8. DLEP IPv4 Link-local Multicast Address . . . . . . . . . 57
13.9. DLEP IPv6 Link-local Multicast Address . . . . . . . . . 55 13.9. DLEP IPv6 Link-local Multicast Address . . . . . . . . . 57
14. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 55 14. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 57
15. References . . . . . . . . . . . . . . . . . . . . . . . . . 56 15. References . . . . . . . . . . . . . . . . . . . . . . . . . 57
15.1. Normative References . . . . . . . . . . . . . . . . . . 56 15.1. Normative References . . . . . . . . . . . . . . . . . . 57
15.2. Informative References . . . . . . . . . . . . . . . . . 56 15.2. Informative References . . . . . . . . . . . . . . . . . 57
Appendix A. Discovery Signal Flows . . . . . . . . . . . . . . . 57
Appendix B. Peer Level Message Flows . . . . . . . . . . . . . . 57 Appendix A. Discovery Signal Flows . . . . . . . . . . . . . . . 58
B.1. Session Initialization . . . . . . . . . . . . . . . . . 57 Appendix B. Peer Level Message Flows . . . . . . . . . . . . . . 59
B.2. Session Initialization - Refused . . . . . . . . . . . . 58 B.1. Session Initialization . . . . . . . . . . . . . . . . . 59
B.3. Router Changes IP Addresses . . . . . . . . . . . . . . . 58 B.2. Session Initialization - Refused . . . . . . . . . . . . 59
B.4. Modem Changes Session-wide Metrics . . . . . . . . . . . 58 B.3. Router Changes IP Addresses . . . . . . . . . . . . . . . 60
B.5. Router Terminates Session . . . . . . . . . . . . . . . . 59 B.4. Modem Changes Session-wide Metrics . . . . . . . . . . . 60
B.6. Modem Terminates Session . . . . . . . . . . . . . . . . 59 B.5. Router Terminates Session . . . . . . . . . . . . . . . . 61
B.7. Session Heartbeats . . . . . . . . . . . . . . . . . . . 60 B.6. Modem Terminates Session . . . . . . . . . . . . . . . . 61
B.8. Router Detects a Heartbeat timeout . . . . . . . . . . . 60 B.7. Session Heartbeats . . . . . . . . . . . . . . . . . . . 62
B.9. Modem Detects a Heartbeat timeout . . . . . . . . . . . . 61 B.8. Router Detects a Heartbeat timeout . . . . . . . . . . . 63
Appendix C. Destination Specific Message Flows . . . . . . . . . 61 B.9. Modem Detects a Heartbeat timeout . . . . . . . . . . . . 64
C.1. Common Destination Notification . . . . . . . . . . . . . 61 Appendix C. Destination Specific Message Flows . . . . . . . . . 64
C.2. Multicast Destination Notification . . . . . . . . . . . 62 C.1. Common Destination Notification . . . . . . . . . . . . . 64
C.3. Link Characteristics Request . . . . . . . . . . . . . . 63 C.2. Multicast Destination Notification . . . . . . . . . . . 65
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 63 C.3. Link Characteristics Request . . . . . . . . . . . . . . 66
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 67
1. Introduction 1. Introduction
There exist today a collection of modem devices that control links of There exist today a collection of modem devices that control links of
variable datarate and quality. Examples of these types of links variable datarate and quality. Examples of these types of links
include line-of-sight (LOS) terrestrial radios, satellite terminals, include line-of-sight (LOS) terrestrial radios, satellite terminals,
and broadband modems. Fluctuations in speed and quality of these and broadband modems. Fluctuations in speed and quality of these
links can occur due to configuration, or on a moment-to-moment basis, links can occur due to configuration, or on a moment-to-moment basis,
due to physical phenomena like multipath interference, obstructions, due to physical phenomena like multipath interference, obstructions,
rain fade, etc. It is also quite possible that link quality and rain fade, etc. It is also quite possible that link quality and
skipping to change at page 9, line 13 skipping to change at page 9, line 31
14, RFC 2119 [RFC2119]. 14, RFC 2119 [RFC2119].
DLEP MUST be implemented on a single Layer 2 domain. The protocol DLEP MUST be implemented on a single Layer 2 domain. The protocol
identifies next-hop destinations by using the MAC address for identifies next-hop destinations by using the MAC address for
delivering data traffic. No manipulation or substitution is delivering data traffic. No manipulation or substitution is
performed; the MAC address supplied in all DLEP Messages is used as performed; the MAC address supplied in all DLEP Messages is used as
the Destination MAC address for frames emitted by the participating the Destination MAC address for frames emitted by the participating
router. MAC addresses MUST be unique within the context of router- router. MAC addresses MUST be unique within the context of router-
modem session. modem session.
To enforce the single Layer 2 domain, implementations MUST support
The Generalized TTL Security Mechanism [RFC5082].
DLEP specifies UDP multicast for single-hop discovery signaling, and DLEP specifies UDP multicast for single-hop discovery signaling, and
TCP for transport of the Messages. Modems and routers participating TCP for transport of the Messages. Modems and routers participating
in DLEP sessions MUST have topologically consistent IP addresses in DLEP sessions MUST have topologically consistent IP addresses
assigned. It is RECOMMENDED that DLEP implementations utilize IPv6 assigned. It is RECOMMENDED that DLEP implementations utilize IPv6
link-local addresses to reduce the administrative burden of address link-local addresses to reduce the administrative burden of address
assignment. Implementations MUST adhere to the procedure documented assignment.
in [RFC5082] for all DLEP Messages (TCP traffic).
To enforce the single Layer 2 domain for DLEP Messages,
implementations MUST adhere to the Generalized TTL Security Mechanism
documented in [RFC5082] for all TCP-based DLEP Messages.
In order to keep the DLEP discovery Signals, which are multicast UDP- In order to keep the DLEP discovery Signals, which are multicast UDP-
based, limited to the same Layer 2 domain, implementations MUST set based, limited to the same Layer 2 domain, implementations MUST set
the TTL of all DLEP Signals to 1, and MUST check for TTL = 1 on the TTL of all DLEP Signals to 1, and MUST check for TTL = 1 on
receipt of DLEP Signals. Any signal received with a TTL not equal to receipt of DLEP Signals. Any signal received with a TTL not equal to
1 MUST be discarded. 1 MUST be discarded.
DLEP relies on the guaranteed delivery of its Messages between router DLEP relies on the guaranteed delivery of its Messages between router
and modem, once the 1 hop discovery process is complete, hence, the and modem, once the 1 hop discovery process is complete, hence, the
specification of TCP to carry the Messages. Other reliable specification of TCP to carry the Messages. Other reliable
skipping to change at page 19, line 4 skipping to change at page 19, line 13
of Data Item being sent. of Data Item being sent.
Length: The length in octets, expressed as a 16-bit unsigned Length: The length in octets, expressed as a 16-bit unsigned
integer, of the Value field of the Data Item. This length MUST integer, of the Value field of the Data Item. This length MUST
NOT include the length of the Data Item Type and Length fields. NOT include the length of the Data Item Type and Length fields.
Value: A field of <Length> octets, which contains data specific to a Value: A field of <Length> octets, which contains data specific to a
particular Data Item. particular Data Item.
10. DLEP Signals and Messages 10. DLEP Signals and Messages
10.1. General Processing Rules 10.1. General Processing Rules
If an unrecognized, or unexpected Signal is received, or a received If an unrecognized, or unexpected Signal is received, or a received
Signal contains unrecognized, invalid, or disallowed duplicate Data Signal contains unrecognized, invalid, or disallowed duplicate Data
Items, the receiving implementation MUST ignore the Signal. Items, the receiving implementation MUST ignore the Signal.
If a Signal is received with a TTL value that is NOT equal to 1, the If a Signal is received with a TTL value that is NOT equal to 1, the
receiving implementation MUST ignore the Signal. receiving implementation MUST ignore the Signal.
If a received Message contains a TTL value other than 255, the
receiving implementation MUST close the session, and transition to
the Session Termination state.
If an unrecognized Message is received, the receiving implementation If an unrecognized Message is received, the receiving implementation
MUST issue a Session Termination Message (Section 10.9) containing a MUST issue a Session Termination Message (Section 10.9) containing a
Status Data Item (Section 11.1) with status code set to 128 'Unknown Status Data Item (Section 11.1) with status code set to 128 'Unknown
Message', see Table 2, and transition to the Session Termination Message', see Table 2, and transition to the Session Termination
state. state.
If an unexpected Message is received, the receiving implementation If an unexpected Message is received, the receiving implementation
MUST issue a Session Termination Message containing a Status Data MUST issue a Session Termination Message containing a Status Data
Item with status code set to 129 'Unexpected Message', and transition Item with status code set to 129 'Unexpected Message', and transition
to the Session Termination state. to the Session Termination state.
If a received Message contains unrecognized, invalid, or disallowed If a received Message contains unrecognized, invalid, or disallowed
duplicate Data Items, the receiving implementation MUST issue a duplicate Data Items, the receiving implementation MUST issue a
Session Termination Message containing a Status Data Item with status Session Termination Message containing a Status Data Item with status
code set to 130 'Invalid Data', and transition to the Session code set to 130 'Invalid Data', and transition to the Session
Termination state. Termination state.
If a packet in the TCP stream is received with a TTL value other than
255, the receiving implementation MUST immediately transition to the
Session Reset state.
Prior to the exchange of Destination Up (Section 10.11) and Prior to the exchange of Destination Up (Section 10.11) and
Destination Up Response (Section 10.12) Messages, or Destination Destination Up Response (Section 10.12) Messages, or Destination
Announce (Section 10.13) and Destination Announce Response Announce (Section 10.13) and Destination Announce Response
(Section 10.14) Messages, no Messages concerning a destination may be (Section 10.14) Messages, no Messages concerning a destination may be
sent. An implementation receiving any Message with such an sent. An implementation receiving any Message with such an
unannounced destination MUST terminate the session by issuing a unannounced destination MUST terminate the session by issuing a
Session Termination Message containing a Status Data Item with status Session Termination Message containing a Status Data Item with status
code set to 131 'Invalid Destination', and transition to the Session code set to 131 'Invalid Destination', and transition to the Session
Termination state. Termination state.
skipping to change at page 27, line 43 skipping to change at page 28, line 4
MUST set the status code of the included Status Data Item to 0 MUST set the status code of the included Status Data Item to 0
'Success', see Table 2. 'Success', see Table 2.
If the router has no interest in the destination identified in the If the router has no interest in the destination identified in the
corresponding Destination Up Message, then it MAY set the status code corresponding Destination Up Message, then it MAY set the status code
of the included Status Data Item to 1 'Not Interested'. of the included Status Data Item to 1 'Not Interested'.
A modem receiving a Destination Up Response Message containing a A modem receiving a Destination Up Response Message containing a
Status Data Item with status code of any value other than 0 'Success' Status Data Item with status code of any value other than 0 'Success'
MUST NOT send further Destination messages about the destination, MUST NOT send further Destination messages about the destination,
e.g. Destination Down (Section 10.15) or Destination Update e.g. Destination Down (Section 10.15) or Destination Update
(Section 10.17) with the same MAC address. (Section 10.17) with the same MAC address.
10.13. Destination Announce Message 10.13. Destination Announce Message
Usually a modem will discover the presence of one or more remote Usually a modem will discover the presence of one or more remote
router/modem pairs and announce each destination's arrival by sending router/modem pairs and announce each destination's arrival by sending
a corresponding Destination Up Message (Section 10.11) to the router. a corresponding Destination Up Message (Section 10.11) to the router.
However, there may be times when a router wishes to express an However, there may be times when a router wishes to express an
interest in a destination that has yet to be announced, typically a interest in a destination that has yet to be announced, typically a
multicast destination. Destination Announce Messages MAY be sent by multicast destination. Destination Announce Messages MAY be sent by
skipping to change at page 34, line 21 skipping to change at page 35, line 5
11. DLEP Data Items 11. DLEP Data Items
Following is the list of core Data Items that MUST be recognized by a Following is the list of core Data Items that MUST be recognized by a
DLEP compliant implementation. As mentioned before, not all Data DLEP compliant implementation. As mentioned before, not all Data
Items need be used during a session, but an implementation MUST Items need be used during a session, but an implementation MUST
correctly process these Data Items when correctly associated with a correctly process these Data Items when correctly associated with a
Signal or Message. Signal or Message.
The core DLEP Data Items are: The core DLEP Data Items are:
+--------------------+----------------------------------------------+ +-------------+-----------------------------------------------------+
| Type Code | Description | | Type Code | Description |
+--------------------+----------------------------------------------+ +-------------+-----------------------------------------------------+
| 0 | Reserved | | 0 | Reserved |
| 1 | Status (Section 11.1) | | 1 | Status (Section 11.1) |
| 2 | IPv4 Connection Point (Section 11.2) | | 2 | IPv4 Connection Point (Section 11.2) |
| 3 | IPv6 Connection Point (Section 11.3) | | 3 | IPv6 Connection Point (Section 11.3) |
| 4 | Peer Type (Section 11.4) | | 4 | Peer Type (Section 11.4) |
| 5 | Heartbeat Interval (Section 11.5) | | 5 | Heartbeat Interval (Section 11.5) |
| 6 | Extensions Supported (Section 11.6) | | 6 | Extensions Supported (Section 11.6) |
| 7 | MAC Address (Section 11.7) | | 7 | MAC Address (Section 11.7) |
| 8 | IPv4 Address (Section 11.8) | | 8 | IPv4 Address (Section 11.8) |
| 9 | IPv6 Address (Section 11.9) | | 9 | IPv6 Address (Section 11.9) |
| 10 | IPv4 Attached Subnet (Section 11.10) | | 10 | IPv4 Attached Subnet (Section 11.10) |
| 11 | IPv6 Attached Subnet (Section 11.11) | | 11 | IPv6 Attached Subnet (Section 11.11) |
| 12 | Maximum Data Rate (Receive) (MDRR) (Section | | 12 | Maximum Data Rate (Receive) (MDRR) (Section 11.12) |
| | 11.12) | | 13 | Maximum Data Rate (Transmit) (MDRT) (Section 11.13) |
| 13 | Maximum Data Rate (Transmit) (MDRT) (Section | | 14 | Current Data Rate (Receive) (CDRR) (Section 11.14) |
| | 11.13) | | 15 | Current Data Rate (Transmit) (CDRT) (Section 11.15) |
| 14 | Current Data Rate (Receive) (CDRR) (Section | | 16 | Latency (Section 11.16) |
| | 11.14) | | 17 | Resources (RES) (Section 11.17) |
| 15 | Current Data Rate (Transmit) (CDRT) (Section | | 18 | Relative Link Quality (Receive) (RLQR) (Section |
| | 11.15) | | | 11.18) |
| 16 | Latency (Section 11.16) | | 19 | Relative Link Quality (Transmit) (RLQT) (Section |
| 17 | Resources (RES) (Section 11.17) | | | 11.19) |
| 18 | Relative Link Quality (Receive) (RLQR) | | 20 | Maximum Transmission Unit (MTU) (Section 11.20) |
| | (Section 11.18) | | 21-65407 | Reserved for future extensions |
| 19 | Relative Link Quality (Transmit) (RLQT) | | 65408-65534 | Private Use. Available for experiments |
| | (Section 11.19) | | 65535 | Reserved |
| 20 | Maximum Transmission Unit (MTU) (Section | +-------------+-----------------------------------------------------+
| | 11.20) |
| 21-65407 | Reserved for future extensions |
| 65408-65534 | Private Use. Available for experiments |
| 65535 | Reserved |
+--------------------+----------------------------------------------+
Table 1: DLEP Data Item types Table 1: DLEP Data Item types
11.1. Status 11.1. Status
For the Session Termination Message (Section 10.9), the Status Data For the Session Termination Message (Section 10.9), the Status Data
Item indicates a reason for the termination. For all response Item indicates a reason for the termination. For all response
Messages, the Status Data Item is used to indicate the success or Messages, the Status Data Item is used to indicate the success or
failure of the previously received Message. failure of the previously received Message.
skipping to change at page 35, line 48 skipping to change at page 36, line 28
Text: UTF-8 encoded string of UNICODE [UNIV8] characters, describing Text: UTF-8 encoded string of UNICODE [UNIV8] characters, describing
the cause, used for implementation defined purposes. Since this the cause, used for implementation defined purposes. Since this
field is used for description, implementations SHOULD limit field is used for description, implementations SHOULD limit
characters in this field to printable characters. Implementations characters in this field to printable characters. Implementations
receiving this Data Item SHOULD check for printable characters in receiving this Data Item SHOULD check for printable characters in
the field. the field.
An implementation MUST NOT assume the Text field is NUL-terminated. An implementation MUST NOT assume the Text field is NUL-terminated.
+---------+-----------+---------------+-----------------------------+ +----------+-------------+------------------+-----------------------+
| Status | Failure | Description | Reason | | Status | Failure | Description | Reason |
| Code | Mode | | | | Code | Mode | | |
+---------+-----------+---------------+-----------------------------+ +----------+-------------+------------------+-----------------------+
| 0 | Continue | Success | The Message was processed | | 0 | Continue | Success | The Message was |
| | | | successfully. | | | | | processed |
| 1 | Continue | Not | The receiver is not | | | | | successfully. |
| | | Interested | interested in this Message | | 1 | Continue | Not Interested | The receiver is not |
| | | | subject, e.g. in a | | | | | interested in this |
| | | | Destination Up Response | | | | | Message subject, e.g. |
| | | | Message (Section 10.12) to | | | | | in a Destination Up |
| | | | indicate no further | | | | | Response Message |
| | | | Messages about the | | | | | (Section 10.12) to |
| | | | destination. | | | | | indicate no further |
| 2 | Continue | Request | The receiver refuses to | | | | | Messages about the |
| | | Denied | complete the request. | | | | | destination. |
| 3-111 | Continue | <Reserved> | Reserved for future | | 2 | Continue | Request Denied | The receiver refuses |
| | | | extensions. | | | | | to complete the |
| 112-127 | Continue | <Private Use> | Available for experiments. | | | | | request. |
| 128 | Terminate | Unknown | The Message was not | | 3-111 | Continue | <Reserved> | Reserved for future |
| | | Message | recognized by the | | | | | extensions. |
| | | | implementation. | | 112-127 | Continue | <Private Use> | Available for |
| 129 | Terminate | Unexpected | The Message was not | | | | | experiments. |
| | | Message | expected while the device | | 128 | Terminate | Unknown Message | The Message was not |
| | | | was in the current state, | | | | | recognized by the |
| | | | e.g., a Session | | | | | implementation. |
| | | | Initialization Message | | 129 | Terminate | Unexpected | The Message was not |
| | | | (Section 10.5) in the In- | | | | Message | expected while the |
| | | | Session state. | | | | | device was in the |
| 130 | Terminate | Invalid Data | One or more Data Items in | | | | | current state, e.g., |
| | | | the Message are invalid, | | | | | a Session |
| | | | unexpected or incorrectly | | | | | Initialization |
| | | | duplicated. | | | | | Message (Section |
| 131 | Terminate | Invalid | The destination included in | | | | | 10.5) in the In- |
| | | Destination | the Message does not match | | | | | Session state. |
| | | | a previously announced | | 130 | Terminate | Invalid Data | One or more Data |
| | | | destination. For example, | | | | | Items in the Message |
| | | | in the Link Characteristic | | | | | are invalid, |
| | | | Response Message (Section | | | | | unexpected or |
| | | | 10.19). | | | | | incorrectly |
| 132 | Terminate | Timed Out | The session has timed out. | | | | | duplicated. |
| 133 | Terminate | Invalid TTL | Message received with a TTL | | 131 | Terminate | Invalid | The destination |
| | | | other than 255. | | | | Destination | included in the |
| 134-239 | Terminate | <Reserved> | Reserved for future | | | | | Message does not |
| | | | extensions. | | | | | match a previously |
| 240-254 | Terminate | <Private Use> | Available for experiments. | | | | | announced |
| 255 | Terminate | <Reserved> | Reserved. | | | | | destination. For |
+---------+-----------+---------------+-----------------------------+ | | | | example, in the Link |
| | | | Characteristic |
| | | | Response Message |
| | | | (Section 10.19). |
| 132 | Terminate | Timed Out | The session has timed |
| | | | out. |
| 133-239 | Terminate | <Reserved> | Reserved for future |
| | | | extensions. |
| 240-254 | Terminate | <Private Use> | Available for |
| | | | experiments. |
| 255 | Terminate | <Reserved> | Reserved. |
+----------+-------------+------------------+-----------------------+
Table 2: DLEP Status Codes Table 2: DLEP Status Codes
11.2. IPv4 Connection Point 11.2. IPv4 Connection Point
The IPv4 Connection Point Data Item indicates the IPv4 address and, The IPv4 Connection Point Data Item indicates the IPv4 address and,
optionally, the TCP port number on the modem available for optionally, the TCP port number on the modem available for
connections. If provided, the router MUST use this information to connections. If provided, the router MUST use this information to
initiate the TCP connection to the modem. initiate the TCP connection to the modem.
skipping to change at page 40, line 4 skipping to change at page 40, line 45
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Data Item Type | Length | | Data Item Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Heartbeat Interval | | Heartbeat Interval |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Data Item Type: 5 Data Item Type: 5
Length: 4 Length: 4
Heartbeat Interval: The interval in milliseconds, expressed as a Heartbeat Interval: The interval in milliseconds, expressed as a
32-bit unsigned integer, for Heartbeat Messages. 32-bit unsigned integer, for Heartbeat Messages. This value MUST
This value MUST NOT be 0. NOT be 0.
11.6. Extensions Supported 11.6. Extensions Supported
The Extensions Supported Data Item is used by the router and modem to The Extensions Supported Data Item is used by the router and modem to
negotiate additional optional functionality they are willing to negotiate additional optional functionality they are willing to
support. The Extensions List is a concatenation of the types of each support. The Extensions List is a concatenation of the types of each
supported extension, found in the IANA DLEP Extensions repository. supported extension, found in the IANA DLEP Extensions repository.
Each Extension Type definition includes which additional Signals and Each Extension Type definition includes which additional Signals and
Data Items are supported. Data Items are supported.
skipping to change at page 51, line 42 skipping to change at page 52, line 47
1. An attacker might pretend to be a DLEP participant, either at 1. An attacker might pretend to be a DLEP participant, either at
DLEP session initialization, or by injection of DLEP Messages DLEP session initialization, or by injection of DLEP Messages
once a session has been established, and/or once a session has been established, and/or
2. DLEP Data Items could be altered by an attacker, causing the 2. DLEP Data Items could be altered by an attacker, causing the
receiving implementation to inappropriately alter its information receiving implementation to inappropriately alter its information
base concerning network status. base concerning network status.
Since DLEP is restricted to operation over a single (possibly Since DLEP is restricted to operation over a single (possibly
logical) hop at layer 2, implementations requiring authentication and logical) hop at layer 2, implementations requiring authentication
/or encryption of traffic MUST take steps to secure the Layer 2 link. and/or encryption of traffic MUST take steps to secure the Layer 2
Examples of technologies that can be deployed to secure the Layer 2 link. Examples of technologies that can be deployed to secure the
link include [IEEE-802.1AE] and [IEEE-802.1X]. Layer 2 link include [IEEE-802.1AE] and [IEEE-802.1X].
To avoid potential denial of service attack, it is RECOMMENDED that To avoid potential denial of service attack, it is RECOMMENDED that
implementations using the Peer Discovery mechanism maintain an implementations using the Peer Discovery mechanism maintain an
information base of hosts that persistently fail Session information base of hosts that persistently fail Session
Initialization having provided an acceptable Peer Discovery Signal, Initialization having provided an acceptable Peer Discovery Signal,
and ignore subsequent Peer Discovery Signals from such hosts. and ignore subsequent Peer Discovery Signals from such hosts.
When using DLEP discovery, it is possible that an attacker who is not
in the layer 2 domain could successfully spoof a DLEP Discovery
signal, causing it to arrive at a mode with TTL=1. However, the
corresponding Peer Offer signal will also be sent with TTL=1, keeping
the Peer Offer from reaching the attacker. This attack can be
mitigated by using the information base described in the previous
paragraph to ignore subsequent attempts.
This specification does not address security of the data plane, as it This specification does not address security of the data plane, as it
(the data plane) is not affected, and standard security procedures (the data plane) is not affected, and standard security procedures
can be employed. can be employed.
13. IANA Considerations 13. IANA Considerations
This section specifies requests to IANA. This section specifies requests to IANA.
13.1. Registrations 13.1. Registrations
skipping to change at page 53, line 41 skipping to change at page 55, line 5
+--------------+------------------------------------------+ +--------------+------------------------------------------+
13.4. DLEP Data Item Registrations 13.4. DLEP Data Item Registrations
Upon approval of this document, IANA is requested to create a new Upon approval of this document, IANA is requested to create a new
DLEP registry, named "Data Item Values". DLEP registry, named "Data Item Values".
The following table provides initial registry values and the The following table provides initial registry values and the
[RFC5226] defined policies that should apply to the registry: [RFC5226] defined policies that should apply to the registry:
+--------------+------------------------------------------+ +-------------------+------------------------------------------+
| Type Code | Description/Policy | | Type Code | Description/Policy |
+--------------+------------------------------------------+ +-------------------+------------------------------------------+
| 0 | Reserved | | 0 | Reserved |
| 1 | Status | | 1 | Status |
| 2 | IPv4 Connection Point | | 2 | IPv4 Connection Point |
| 3 | IPv6 Connection Point | | 3 | IPv6 Connection Point |
| 4 | Peer Type | | 4 | Peer Type |
| 5 | Heartbeat Interval | | 5 | Heartbeat Interval |
| 6 | Extensions Supported | | 6 | Extensions Supported |
| 7 | MAC Address | | 7 | MAC Address |
| 8 | IPv4 Address | | 8 | IPv4 Address |
| 9 | IPv6 Address | | 9 | IPv6 Address |
| 10 | IPv4 Attached Subnet | | 10 | IPv4 Attached Subnet |
| 11 | IPv6 Attached Subnet | | 11 | IPv6 Attached Subnet |
| 12 | Maximum Data Rate (Receive) (MDRR) | | 12 | Maximum Data Rate (Receive) (MDRR) |
| 13 | Maximum Data Rate (Transmit) (MDRT) | | 13 | Maximum Data Rate (Transmit) (MDRT) |
| 14 | Current Data Rate (Receive) (CDRR) | | 14 | Current Data Rate (Receive) (CDRR) |
| 15 | Current Data Rate (Transmit) (CDRT) | | 15 | Current Data Rate (Transmit) (CDRT) |
| 16 | Latency | | 16 | Latency |
| 17 | Resources (RES) | | 17 | Resources (RES) |
| 18 | Relative Link Quality (Receive) (RLQR) | | 18 | Relative Link Quality (Receive) (RLQR) |
| 19 | Relative Link Quality (Transmit) (RLQT) | | 19 | Relative Link Quality (Transmit) (RLQT) |
| 20 | Maximum Transmission Unit (MTU) | | 20 | Maximum Transmission Unit (MTU) |
| 21-65407 | Specification Required | | 21-65407 | Specification Required |
| 65408-65534 | Private Use | | 65408-65534 | Private Use |
| 65535 | Reserved | | 65535 | Reserved |
+--------------+------------------------------------------+ +-------------------+------------------------------------------+
13.5. DLEP Status Code Registrations 13.5. DLEP Status Code Registrations
Upon approval of this document, IANA is requested to create a new Upon approval of this document, IANA is requested to create a new
DLEP registry, named "Status Code Values". DLEP registry, named "Status Code Values".
The following table provides initial registry values and the The following table provides initial registry values and the
[RFC5226] defined policies that should apply to the registry: [RFC5226] defined policies that should apply to the registry:
+--------------+---------------+-------------------------+ +--------------+---------------+-------------------------+
skipping to change at page 56, line 7 skipping to change at page 57, line 26
14. Acknowledgements 14. Acknowledgements
We would like to acknowledge and thank the members of the DLEP design We would like to acknowledge and thank the members of the DLEP design
team, who have provided invaluable insight. The members of the team, who have provided invaluable insight. The members of the
design team are: Teco Boot, Bow-Nan Cheng, John Dowdell, and Henning design team are: Teco Boot, Bow-Nan Cheng, John Dowdell, and Henning
Rogge. Rogge.
We would also like to acknowledge the influence and contributions of We would also like to acknowledge the influence and contributions of
Greg Harrison, Chris Olsen, Martin Duke, Subir Das, Jaewon Kang, Greg Harrison, Chris Olsen, Martin Duke, Subir Das, Jaewon Kang,
Vikram Kaul, Nelson Powell, Lou Berger, and Victoria Mercieca. Vikram Kaul, Nelson Powell, Lou Berger, and Victoria Pritchard.
15. References 15. References
15.1. Normative References 15.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/ Requirement Levels", BCP 14, RFC 2119,
RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>. <http://www.rfc-editor.org/info/rfc2119>.
[RFC5082] Gill, V., Heasley, J., Meyer, D., Savola, P., Ed., and C. [RFC5082] Gill, V., Heasley, J., Meyer, D., Savola, P., Ed., and C.
Pignataro, "The Generalized TTL Security Mechanism Pignataro, "The Generalized TTL Security Mechanism
(GTSM)", RFC 5082, DOI 10.17487/RFC5082, October 2007, (GTSM)", RFC 5082, DOI 10.17487/RFC5082, October 2007,
<http://www.rfc-editor.org/info/rfc5082>. <http://www.rfc-editor.org/info/rfc5082>.
[UNIV8] , "The Unicode Consortium. The Unicode Standard, Version [UNIV8] "The Unicode Consortium. The Unicode Standard, Version
8.0.0, (Mountain View, CA: The Unicode Consortium, 2015. 8.0.0, (Mountain View, CA: The Unicode Consortium, 2015.
ISBN 978-1-936213-10-8)", ISBN 978-1-936213-10-8)",
http://www.unicode.org/versions/Unicode8.0.0/, June 2015. http://www.unicode.org/versions/Unicode8.0.0/, June 2015.
15.2. Informative References 15.2. Informative References
[CREDIT] Ratliff, S., "Credit Windowing extension for DLEP", IETF [CREDIT] Ratliff, S., "Credit Windowing extension for DLEP", IETF
draft draft-ietf-manet-credit-window-04, March 2016. draft draft-ietf-manet-credit-window-04, March 2016.
[IEEE-802.1AE] [IEEE-802.1AE]
, "IEEE Standards for Local and Metropolitan Area "IEEE Standards for Local and Metropolitan Area Networks:
Networks: Media Access Control (MAC) Security", DOI Media Access Control (MAC) Security",
10.1109/IEEESTD.2006.245590, August 2006. DOI 10.1109/IEEESTD.2006.245590, August 2006.
[IEEE-802.1X] [IEEE-802.1X]
, "IEEE Standards for Local and Metropolitan Area "IEEE Standards for Local and Metropolitan Area Networks:
Networks: Port based Network Access Control", DOI 10.1109/ Port based Network Access Control",
IEEESTD.2010.5409813, February 2010. DOI 10.1109/IEEESTD.2010.5409813, February 2010.
[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", BCP 26, RFC 5226, IANA Considerations Section in RFCs", BCP 26, RFC 5226,
DOI 10.17487/RFC5226, May 2008, DOI 10.17487/RFC5226, May 2008,
<http://www.rfc-editor.org/info/rfc5226>. <http://www.rfc-editor.org/info/rfc5226>.
[RFC5578] Berry, B., Ed., Ratliff, S., Paradise, E., Kaiser, T., and [RFC5578] Berry, B., Ed., Ratliff, S., Paradise, E., Kaiser, T., and
M. Adams, "PPP over Ethernet (PPPoE) Extensions for Credit M. Adams, "PPP over Ethernet (PPPoE) Extensions for Credit
Flow and Link Metrics", RFC 5578, DOI 10.17487/RFC5578, Flow and Link Metrics", RFC 5578, DOI 10.17487/RFC5578,
February 2010, <http://www.rfc-editor.org/info/rfc5578>. February 2010, <http://www.rfc-editor.org/info/rfc5578>.
Appendix A. Discovery Signal Flows Appendix A. Discovery Signal Flows
Router Modem Signal Description Router Modem Signal Description
======================================================================== ========================================================================
| Router initiates discovery, starts | Router initiates discovery, starts
| a timer, send Peer Discovery | a timer, send Peer Discovery
|-------Peer Discovery---->X Signal. |-------Peer Discovery---->X Signal.
~ ~ ~ ~ ~ ~ ~ Router discovery timer expires ~ ~ ~ ~ ~ ~ ~ Router discovery timer expires
without receiving Peer Offer. without receiving Peer Offer.
| Router sends another Peer | Router sends another Peer
|-------Peer Discovery---------->| Discovery Signal. |-------Peer Discovery---------->| Discovery Signal.
| |
| Modem receives Peer Discovery | Modem receives Peer Discovery
| Signal. | Signal.
| |
| Modem sends Peer Offer with | Modem sends Peer Offer with
|<--------Peer Offer-------------| Connection Point information. |<--------Peer Offer-------------| Connection Point information.
: :
: Router MAY cancel discovery timer : Router MAY cancel discovery timer
: and stop sending Peer Discovery : and stop sending Peer Discovery
: Signals. : Signals.
Appendix B. Peer Level Message Flows Appendix B. Peer Level Message Flows
B.1. Session Initialization B.1. Session Initialization
Router Modem Message Description Router Modem Message Description
======================================================================== ========================================================================
| Router connects to discovered or | Router connects to discovered or
| pre-configured Modem Connection | pre-configured Modem Connection
|--TCP connection established---> Point. |--TCP connection established---> Point.
| |
| Router sends Session | Router sends Session
|----Session Initialization----->| Initialization Message. |----Session Initialization----->| Initialization Message.
| |
| Modem receives Session | Modem receives Session
| Initialization Message. | Initialization Message.
| |
| Modem sends Session Initialization | Modem sends Session Initialization
|<--Session Initialization Resp.-| Response, with Success Status Data |<--Session Initialization Resp.-| Response, with Success Status Data
| | Item. | | Item.
| | | |
|<<============================>>| Session established. Heartbeats |<<============================>>| Session established. Heartbeats
: : begin. : : begin.
B.2. Session Initialization - Refused B.2. Session Initialization - Refused
Router Modem Message Description
========================================================================
Router Modem Message Description | Router connects to discovered or
======================================================================== | pre-configured Modem Connection
|--TCP connection established---> Point.
| Router connects to discovered or |
| pre-configured Modem Connection | Router sends Session
|--TCP connection established---> Point. |-----Session Initialization---->| Initialization Message.
| |
| Router sends Session | Modem receives Session
|-----Session Initialization---->| Initialization Message. | Initialization Message, and will
| | not support the advertised
| Modem receives Session | extensions.
| Initialization Message, and will |
| not support the advertised | Modem sends Session Initialization
| extensions. | Response, with 'Request Denied'
| |<-Session Initialization Resp.--| Status Data Item.
| Modem sends Session Initialization |
| Response, with 'Request Denied' |
|<-Session Initialization Resp.--| Status Data Item. | Router receives negative Session
| | Initialization Response, closes
| ||---------TCP close------------|| TCP connection.
| Router receives negative Session
| Initialization Response, closes
||---------TCP close------------|| TCP connection.
B.3. Router Changes IP Addresses B.3. Router Changes IP Addresses
Router Modem Message Description Router Modem Message Description
======================================================================== ========================================================================
| Router sends Session Update | Router sends Session Update
|-------Session Update---------->| Message to announce change of IP |-------Session Update---------->| Message to announce change of IP
| address | address
| |
| Modem receives Session Update | Modem receives Session Update
| Message and updates internal | Message and updates internal
| state. | state.
| |
|<----Session Update Response----| Modem sends Session Update |<----Session Update Response----| Modem sends Session Update
| Response. | Response.
B.4. Modem Changes Session-wide Metrics B.4. Modem Changes Session-wide Metrics
Router Modem Message Description
========================================================================
Router Modem Message Description | Modem sends Session Update Message
======================================================================== | to announce change of modem-wide
|<--------Session Update---------| metrics
| Modem sends Session Update Message |
| to announce change of modem-wide | Router receives Session Update
|<--------Session Update---------| metrics | Message and updates internal
| | state.
| Router receives Session Update |
| Message and updates internal |----Session Update Response---->| Router sends Session Update
| state. | Response.
|
|----Session Update Response---->| Router sends Session Update
| Response.
B.5. Router Terminates Session B.5. Router Terminates Session
Router Modem Message Description Router Modem Message Description
======================================================================== ========================================================================
| Router sends Session Termination | Router sends Session Termination
|------Session Termination------>| Message with Status Data Item. |------Session Termination------>| Message with Status Data Item.
| | | |
|-------TCP shutdown (send)---> | Router stops sending Messages. |-------TCP shutdown (send)---> | Router stops sending Messages.
| |
| Modem receives Session | Modem receives Session
| Termination, stops counting | Termination, stops counting
| received heartbeats and stops | received heartbeats and stops
| sending heartbeats. | sending heartbeats.
| |
| Modem sends Session Termination | Modem sends Session Termination
|<---Session Termination Resp.---| Response with Status 'Success'. |<---Session Termination Resp.---| Response with Status 'Success'.
| |
| Modem stops sending Messages. | Modem stops sending Messages.
| |
||---------TCP close------------|| Session terminated. ||---------TCP close------------|| Session terminated.
B.6. Modem Terminates Session B.6. Modem Terminates Session
Router Modem Message Description
========================================================================
Router Modem Message Description | Modem sends Session Termination
======================================================================== |<----Session Termination--------| Message with Status Data Item.
|
| Modem sends Session Termination | Modem stops sending Messages.
|<----Session Termination--------| Message with Status Data Item. |
| | Router receives Session
| Modem stops sending Messages. | Termination, stops counting
| | received heartbeats and stops
| Router receives Session | sending heartbeats.
| Termination, stops counting |
| received heartbeats and stops | Router sends Session Termination
| sending heartbeats. |---Session Termination Resp.--->| Response with Status 'Success'.
| |
| Router sends Session Termination | Router stops sending Messages.
|---Session Termination Resp.--->| Response with Status 'Success'. |
| ||---------TCP close------------|| Session terminated.
| Router stops sending Messages.
|
||---------TCP close------------|| Session terminated.
B.7. Session Heartbeats B.7. Session Heartbeats
Router Modem Message Description
========================================================================
Router Modem Message Description |----------Heartbeat------------>| Router sends heartbeat Message
======================================================================== |
| Modem resets heartbeats missed
|----------Heartbeat------------>| Router sends heartbeat Message | counter.
|
| Modem resets heartbeats missed
| counter.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
|---------[Any Message]--------->| When the Modem receives any |---------[Any Message]--------->| When the Modem receives any
| Message from the Router. | Message from the Router.
| |
| Modem resets heartbeats missed | Modem resets heartbeats missed
| counter. | counter.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
|<---------Heartbeat-------------| Modem sends heartbeat Message |<---------Heartbeat-------------| Modem sends heartbeat Message
| |
| Router resets heartbeats missed | Router resets heartbeats missed
| counter. | counter.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
|<--------[Any Message]----------| When the Router receives any |<--------[Any Message]----------| When the Router receives any
| Message from the Modem. | Message from the Modem.
| |
| Modem resets heartbeats missed | Modem resets heartbeats missed
| counter. | counter.
B.8. Router Detects a Heartbeat timeout B.8. Router Detects a Heartbeat timeout
Router Modem Message Description Router Modem Message Description
======================================================================== ========================================================================
X<----------------------| Router misses a heartbeat X<----------------------| Router misses a heartbeat
| X<----------------------| Router misses too many heartbeats | X<----------------------| Router misses too many heartbeats
| |
| |
|------Session Termination------>| Router sends Session Termination |------Session Termination------>| Router sends Session Termination
| Message with 'Timeout' Status | Message with 'Timeout' Status
| Data Item. | Data Item.
: :
: Termination proceeds... : Termination proceeds...
B.9. Modem Detects a Heartbeat timeout B.9. Modem Detects a Heartbeat timeout
Router Modem Message Description Router Modem Message Description
======================================================================== ========================================================================
|---------------------->X Modem misses a heartbeat |---------------------->X Modem misses a heartbeat
|---------------------->X | Modem misses too many heartbeats |---------------------->X | Modem misses too many heartbeats
| |
| |
|<-----Session Termination-------| Modem sends Session Termination |<-----Session Termination-------| Modem sends Session Termination
| Message with 'Timeout' Status | Message with 'Timeout' Status
| Data Item. | Data Item.
: :
: Termination proceeds... : Termination proceeds...
Appendix C. Destination Specific Message Flows Appendix C. Destination Specific Message Flows
C.1. Common Destination Notification C.1. Common Destination Notification
Router Modem Message Description
========================================================================
Router Modem Message Description | Modem detects a new logical
======================================================================== | destination is reachable, and
|<-------Destination Up----------| sends Destination Up Message.
| Modem detects a new logical |
| destination is reachable, and |------Destination Up Resp.----->| Router sends Destination Up
|<-------Destination Up----------| sends Destination Up Message. | Response.
|
|------Destination Up Resp.----->| Router sends Destination Up
| Response.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
| Modem detects change in logical | Modem detects change in logical
| destination metrics, and sends | destination metrics, and sends
|<-------Destination Update------| Destination Update Message. |<-------Destination Update------| Destination Update Message.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
| Modem detects change in logical | Modem detects change in logical
| destination metrics, and sends | destination metrics, and sends
|<-------Destination Update------| Destination Update Message. |<-------Destination Update------| Destination Update Message.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
| Modem detects logical destination | Modem detects logical destination
| is no longer reachable, and sends | is no longer reachable, and sends
|<-------Destination Down--------| Destination Down Message. |<-------Destination Down--------| Destination Down Message.
| |
| Router receives Destination Down, | Router receives Destination Down,
| updates internal state, and sends | updates internal state, and sends
|------Destination Down Resp.--->| Destination Down Response Message. |------Destination Down Resp.--->| Destination Down Response Message.
C.2. Multicast Destination Notification C.2. Multicast Destination Notification
Router Modem Message Description
========================================================================
Router Modem Message Description | Router detects a new multicast
======================================================================== | destination is in use, and sends
|-----Destination Announce------>| Destination Announce Message.
| Router detects a new multicast |
| destination is in use, and sends | Modem updates internal state to
|-----Destination Announce------>| Destination Announce Message. | monitor multicast destination, and
| |<-----Dest. Announce Resp.------| sends Destination Announce
| Modem updates internal state to Response.
| monitor multicast destination, and
|<-----Dest. Announce Resp.------| sends Destination Announce
Response.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
| Modem detects change in multicast | Modem detects change in multicast
| destination metrics, and sends | destination metrics, and sends
|<-------Destination Update------| Destination Update Message. |<-------Destination Update------| Destination Update Message.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
| Modem detects change in multicast | Modem detects change in multicast
| destination metrics, and sends | destination metrics, and sends
|<-------Destination Update------| Destination Update Message. |<-------Destination Update------| Destination Update Message.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
| Router detects multicast | Router detects multicast
| destination is no longer in use, | destination is no longer in use,
|--------Destination Down------->| and sends Destination Down |--------Destination Down------->| and sends Destination Down
| Message. | Message.
| |
| Modem receives Destination Down, | Modem receives Destination Down,
| updates internal state, and sends | updates internal state, and sends
|<-----Destination Down Resp.----| Destination Down Response Message. |<-----Destination Down Resp.----| Destination Down Response Message.
C.3. Link Characteristics Request C.3. Link Characteristics Request
Router Modem Message Description
========================================================================
Router Modem Message Description Destination has already been
======================================================================== ~ ~ ~ ~ ~ ~ ~ announced by either peer.
Destination has already been
~ ~ ~ ~ ~ ~ ~ announced by either peer.
| Router requires different | Router requires different
| Characteristics for the | Characteristics for the
| destination, and sends Link | destination, and sends Link
|--Link Characteristics Request->| Characteristics Request Message. |--Link Characteristics Request->| Characteristics Request Message.
| |
| Modem attempts to adjust link | Modem attempts to adjust link
| properties to meet the received | properties to meet the received
| request, and sends a Link | request, and sends a Link
| Characteristics Response | Characteristics Response
|<---Link Characteristics Resp.--| Message with the new values. |<---Link Characteristics Resp.--| Message with the new values.
Authors' Addresses Authors' Addresses
Stan Ratliff Stan Ratliff
VT iDirect VT iDirect
13861 Sunrise Valley Drive, Suite 300 13861 Sunrise Valley Drive, Suite 300
Herndon, VA 20171 Herndon, VA 20171
USA USA
Email: sratliff@idirect.net Email: sratliff@idirect.net
 End of changes. 84 change blocks. 
451 lines changed or deleted 446 lines changed or added

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