| < draft-ietf-manet-dlep-20.txt | draft-ietf-manet-dlep-21.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 B. Berry | Intended status: Standards Track B. Berry | |||
| Expires: September 9, 2016 | Expires: September 22, 2016 | |||
| S. Jury | S. Jury | |||
| Cisco Systems | Cisco Systems | |||
| D. Satterwhite | D. Satterwhite | |||
| Broadcom | Broadcom | |||
| R. Taylor | R. Taylor | |||
| Airbus Defence & Space | Airbus Defence & Space | |||
| March 8, 2016 | March 21, 2016 | |||
| Dynamic Link Exchange Protocol (DLEP) | Dynamic Link Exchange Protocol (DLEP) | |||
| draft-ietf-manet-dlep-20 | draft-ietf-manet-dlep-21 | |||
| 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 September 9, 2016. | This Internet-Draft will expire on September 22, 2016. | |||
| 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 | |||
| skipping to change at page 2, line 26 ¶ | skipping to change at page 2, line 26 ¶ | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 1.1. Requirements . . . . . . . . . . . . . . . . . . . . . . 7 | 1.1. Requirements . . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 2. Protocol Overview . . . . . . . . . . . . . . . . . . . . . . 7 | 2. Protocol Overview . . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 2.1. Assumptions . . . . . . . . . . . . . . . . . . . . . . . 9 | 2.1. Assumptions . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
| 3. Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 | 3. Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
| 4. DLEP Session Flow . . . . . . . . . . . . . . . . . . . . . . 10 | 4. DLEP Session Flow . . . . . . . . . . . . . . . . . . . . . . 10 | |||
| 4.1. Peer Discovery State . . . . . . . . . . . . . . . . . . 11 | 4.1. Peer Discovery State . . . . . . . . . . . . . . . . . . 11 | |||
| 4.2. Session Initialization State . . . . . . . . . . . . . . 12 | 4.2. Session Initialization State . . . . . . . . . . . . . . 11 | |||
| 4.3. In-Session State . . . . . . . . . . . . . . . . . . . . 12 | 4.3. In-Session State . . . . . . . . . . . . . . . . . . . . 12 | |||
| 4.3.1. Heartbeats . . . . . . . . . . . . . . . . . . . . . 13 | 4.3.1. Heartbeats . . . . . . . . . . . . . . . . . . . . . 12 | |||
| 4.4. Session Termination State . . . . . . . . . . . . . . . . 13 | 4.4. Session Termination State . . . . . . . . . . . . . . . . 13 | |||
| 4.5. Session Reset state . . . . . . . . . . . . . . . . . . . 13 | 4.5. Session Reset state . . . . . . . . . . . . . . . . . . . 13 | |||
| 4.5.1. Unexpected TCP connection termination . . . . . . . . 14 | 4.5.1. Unexpected TCP connection termination . . . . . . . . 14 | |||
| 5. Transaction Model . . . . . . . . . . . . . . . . . . . . . . 14 | 5. Transaction Model . . . . . . . . . . . . . . . . . . . . . . 14 | |||
| 6. Extensions . . . . . . . . . . . . . . . . . . . . . . . . . 15 | 6. Extensions . . . . . . . . . . . . . . . . . . . . . . . . . 15 | |||
| 6.1. Experiments . . . . . . . . . . . . . . . . . . . . . . . 15 | 6.1. Experiments . . . . . . . . . . . . . . . . . . . . . . . 15 | |||
| 7. Scalability . . . . . . . . . . . . . . . . . . . . . . . . . 16 | 7. Scalability . . . . . . . . . . . . . . . . . . . . . . . . . 16 | |||
| 8. DLEP Signal and Message Structure . . . . . . . . . . . . . . 16 | 8. DLEP Signal and Message Structure . . . . . . . . . . . . . . 16 | |||
| 8.1. DLEP Signal Header . . . . . . . . . . . . . . . . . . . 17 | 8.1. DLEP Signal Header . . . . . . . . . . . . . . . . . . . 16 | |||
| 8.2. DLEP Message Header . . . . . . . . . . . . . . . . . . . 17 | 8.2. DLEP Message Header . . . . . . . . . . . . . . . . . . . 17 | |||
| 8.3. DLEP Generic Data Item . . . . . . . . . . . . . . . . . 18 | 8.3. DLEP Generic Data Item . . . . . . . . . . . . . . . . . 17 | |||
| 9. DLEP Signals and Messages . . . . . . . . . . . . . . . . . . 18 | 9. DLEP Signals and Messages . . . . . . . . . . . . . . . . . . 18 | |||
| 9.1. General Processing Rules . . . . . . . . . . . . . . . . 20 | 9.1. General Processing Rules . . . . . . . . . . . . . . . . 19 | |||
| 9.2. Status code processing . . . . . . . . . . . . . . . . . 20 | 9.2. Status code processing . . . . . . . . . . . . . . . . . 20 | |||
| 9.3. Peer Discovery Signal . . . . . . . . . . . . . . . . . . 21 | 9.3. Peer Discovery Signal . . . . . . . . . . . . . . . . . . 21 | |||
| 9.4. Peer Offer Signal . . . . . . . . . . . . . . . . . . . . 21 | 9.4. Peer Offer Signal . . . . . . . . . . . . . . . . . . . . 21 | |||
| 9.5. Session Initialization Message . . . . . . . . . . . . . 22 | 9.5. Session Initialization Message . . . . . . . . . . . . . 22 | |||
| 9.6. Session Initialization Response Message . . . . . . . . . 23 | 9.6. Session Initialization Response Message . . . . . . . . . 22 | |||
| 9.7. Session Update Message . . . . . . . . . . . . . . . . . 24 | 9.7. Session Update Message . . . . . . . . . . . . . . . . . 24 | |||
| 9.8. Session Update Response Message . . . . . . . . . . . . . 25 | 9.8. Session Update Response Message . . . . . . . . . . . . . 25 | |||
| 9.9. Session Termination Message . . . . . . . . . . . . . . . 26 | 9.9. Session Termination Message . . . . . . . . . . . . . . . 25 | |||
| 9.10. Session Termination Response Message . . . . . . . . . . 26 | 9.10. Session Termination Response Message . . . . . . . . . . 26 | |||
| 9.11. Destination Up Message . . . . . . . . . . . . . . . . . 26 | 9.11. Destination Up Message . . . . . . . . . . . . . . . . . 26 | |||
| 9.12. Destination Up Response Message . . . . . . . . . . . . . 27 | 9.12. Destination Up Response Message . . . . . . . . . . . . . 27 | |||
| 9.13. Destination Announce Message . . . . . . . . . . . . . . 28 | 9.13. Destination Announce Message . . . . . . . . . . . . . . 28 | |||
| 9.14. Destination Announce Response Message . . . . . . . . . . 29 | 9.14. Destination Announce Response Message . . . . . . . . . . 28 | |||
| 9.15. Destination Down Message . . . . . . . . . . . . . . . . 30 | 9.15. Destination Down Message . . . . . . . . . . . . . . . . 30 | |||
| 9.16. Destination Down Response Message . . . . . . . . . . . . 30 | 9.16. Destination Down Response Message . . . . . . . . . . . . 30 | |||
| 9.17. Destination Update Message . . . . . . . . . . . . . . . 31 | 9.17. Destination Update Message . . . . . . . . . . . . . . . 30 | |||
| 9.18. Link Characteristics Request Message . . . . . . . . . . 32 | 9.18. Link Characteristics Request Message . . . . . . . . . . 32 | |||
| 9.19. Link Characteristics Response Message . . . . . . . . . . 33 | 9.19. Link Characteristics Response Message . . . . . . . . . . 32 | |||
| 9.20. Heartbeat Message . . . . . . . . . . . . . . . . . . . . 34 | 9.20. Heartbeat Message . . . . . . . . . . . . . . . . . . . . 33 | |||
| 10. DLEP Data Items . . . . . . . . . . . . . . . . . . . . . . . 34 | 10. DLEP Data Items . . . . . . . . . . . . . . . . . . . . . . . 34 | |||
| 10.1. Status . . . . . . . . . . . . . . . . . . . . . . . . . 35 | 10.1. Status . . . . . . . . . . . . . . . . . . . . . . . . . 35 | |||
| 10.2. IPv4 Connection Point . . . . . . . . . . . . . . . . . 37 | 10.2. IPv4 Connection Point . . . . . . . . . . . . . . . . . 37 | |||
| 10.3. IPv6 Connection Point . . . . . . . . . . . . . . . . . 38 | 10.3. IPv6 Connection Point . . . . . . . . . . . . . . . . . 37 | |||
| 10.4. Peer Type . . . . . . . . . . . . . . . . . . . . . . . 39 | 10.4. Peer Type . . . . . . . . . . . . . . . . . . . . . . . 39 | |||
| 10.5. Heartbeat Interval . . . . . . . . . . . . . . . . . . . 39 | 10.5. Heartbeat Interval . . . . . . . . . . . . . . . . . . . 39 | |||
| 10.6. Extensions Supported . . . . . . . . . . . . . . . . . . 40 | 10.6. Extensions Supported . . . . . . . . . . . . . . . . . . 40 | |||
| 10.7. MAC Address . . . . . . . . . . . . . . . . . . . . . . 41 | 10.7. MAC Address . . . . . . . . . . . . . . . . . . . . . . 40 | |||
| 10.8. IPv4 Address . . . . . . . . . . . . . . . . . . . . . . 41 | 10.8. IPv4 Address . . . . . . . . . . . . . . . . . . . . . . 41 | |||
| 10.9. IPv6 Address . . . . . . . . . . . . . . . . . . . . . . 42 | 10.9. IPv6 Address . . . . . . . . . . . . . . . . . . . . . . 42 | |||
| 10.10. IPv4 Attached Subnet . . . . . . . . . . . . . . . . . . 43 | 10.10. IPv4 Attached Subnet . . . . . . . . . . . . . . . . . . 43 | |||
| 10.11. IPv6 Attached Subnet . . . . . . . . . . . . . . . . . . 44 | 10.11. IPv6 Attached Subnet . . . . . . . . . . . . . . . . . . 44 | |||
| 10.12. Maximum Data Rate (Receive) . . . . . . . . . . . . . . 45 | 10.12. Maximum Data Rate (Receive) . . . . . . . . . . . . . . 45 | |||
| 10.13. Maximum Data Rate (Transmit) . . . . . . . . . . . . . . 46 | 10.13. Maximum Data Rate (Transmit) . . . . . . . . . . . . . . 45 | |||
| 10.14. Current Data Rate (Receive) . . . . . . . . . . . . . . 46 | 10.14. Current Data Rate (Receive) . . . . . . . . . . . . . . 46 | |||
| 10.15. Current Data Rate (Transmit) . . . . . . . . . . . . . . 47 | 10.15. Current Data Rate (Transmit) . . . . . . . . . . . . . . 47 | |||
| 10.16. Latency . . . . . . . . . . . . . . . . . . . . . . . . 48 | 10.16. Latency . . . . . . . . . . . . . . . . . . . . . . . . 48 | |||
| 10.17. Resources . . . . . . . . . . . . . . . . . . . . . . . 48 | 10.17. Resources . . . . . . . . . . . . . . . . . . . . . . . 48 | |||
| 10.18. Relative Link Quality (Receive) . . . . . . . . . . . . 49 | 10.18. Relative Link Quality (Receive) . . . . . . . . . . . . 49 | |||
| 10.19. Relative Link Quality (Transmit) . . . . . . . . . . . . 50 | 10.19. Relative Link Quality (Transmit) . . . . . . . . . . . . 50 | |||
| 10.20. Maximum Transmission Unit (MTU) . . . . . . . . . . . . 50 | 10.20. Maximum Transmission Unit (MTU) . . . . . . . . . . . . 50 | |||
| 11. Security Considerations . . . . . . . . . . . . . . . . . . . 51 | 11. Security Considerations . . . . . . . . . . . . . . . . . . . 51 | |||
| 12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 52 | 12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 52 | |||
| 12.1. Registrations . . . . . . . . . . . . . . . . . . . . . 52 | 12.1. Registrations . . . . . . . . . . . . . . . . . . . . . 52 | |||
| 12.2. Signal Type Registration . . . . . . . . . . . . . . . . 53 | 12.2. Signal Type Registration . . . . . . . . . . . . . . . . 52 | |||
| 12.3. Message Type Registration . . . . . . . . . . . . . . . 53 | 12.3. Message Type Registration . . . . . . . . . . . . . . . 52 | |||
| 12.4. DLEP Data Item Registrations . . . . . . . . . . . . . . 53 | 12.4. DLEP Data Item Registrations . . . . . . . . . . . . . . 53 | |||
| 12.5. DLEP Status Code Registrations . . . . . . . . . . . . . 53 | 12.5. DLEP Status Code Registrations . . . . . . . . . . . . . 54 | |||
| 12.6. DLEP Extensions Registrations . . . . . . . . . . . . . 53 | 12.6. DLEP Extensions Registrations . . . . . . . . . . . . . 54 | |||
| 12.7. DLEP Well-known Port . . . . . . . . . . . . . . . . . . 54 | 12.7. DLEP Well-known Port . . . . . . . . . . . . . . . . . . 55 | |||
| 12.8. DLEP IPv4 Link-local Multicast Address . . . . . . . . . 54 | 12.8. DLEP IPv4 Link-local Multicast Address . . . . . . . . . 55 | |||
| 12.9. DLEP IPv6 Link-local Multicast Address . . . . . . . . . 54 | 12.9. DLEP IPv6 Link-local Multicast Address . . . . . . . . . 55 | |||
| 13. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 54 | 13. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 55 | |||
| 14. References . . . . . . . . . . . . . . . . . . . . . . . . . 54 | 14. References . . . . . . . . . . . . . . . . . . . . . . . . . 55 | |||
| 14.1. Normative References . . . . . . . . . . . . . . . . . . 54 | 14.1. Normative References . . . . . . . . . . . . . . . . . . 55 | |||
| 14.2. Informative References . . . . . . . . . . . . . . . . . 55 | 14.2. Informative References . . . . . . . . . . . . . . . . . 56 | |||
| Appendix A. Discovery Signal Flows . . . . . . . . . . . . . . . 55 | Appendix A. Discovery Signal Flows . . . . . . . . . . . . . . . 56 | |||
| Appendix B. Peer Level Message Flows . . . . . . . . . . . . . . 56 | Appendix B. Peer Level Message Flows . . . . . . . . . . . . . . 57 | |||
| B.1. Session Initialization . . . . . . . . . . . . . . . . . 56 | B.1. Session Initialization . . . . . . . . . . . . . . . . . 57 | |||
| B.2. Session Initialization - Refused . . . . . . . . . . . . 56 | B.2. Session Initialization - Refused . . . . . . . . . . . . 57 | |||
| B.3. Router Changes IP Addresses . . . . . . . . . . . . . . . 57 | B.3. Router Changes IP Addresses . . . . . . . . . . . . . . . 58 | |||
| B.4. Modem Changes Session-wide Metrics . . . . . . . . . . . 57 | B.4. Modem Changes Session-wide Metrics . . . . . . . . . . . 58 | |||
| B.5. Router Terminates Session . . . . . . . . . . . . . . . . 58 | B.5. Router Terminates Session . . . . . . . . . . . . . . . . 59 | |||
| B.6. Modem Terminates Session . . . . . . . . . . . . . . . . 58 | B.6. Modem Terminates Session . . . . . . . . . . . . . . . . 59 | |||
| B.7. Session Heartbeats . . . . . . . . . . . . . . . . . . . 58 | B.7. Session Heartbeats . . . . . . . . . . . . . . . . . . . 59 | |||
| B.8. Router Detects a Heartbeat timeout . . . . . . . . . . . 59 | B.8. Router Detects a Heartbeat timeout . . . . . . . . . . . 60 | |||
| B.9. Modem Detects a Heartbeat timeout . . . . . . . . . . . . 59 | B.9. Modem Detects a Heartbeat timeout . . . . . . . . . . . . 60 | |||
| Appendix C. Destination Specific Message Flows . . . . . . . . . 60 | Appendix C. Destination Specific Message Flows . . . . . . . . . 61 | |||
| C.1. Common Destination Notification . . . . . . . . . . . . . 60 | C.1. Common Destination Notification . . . . . . . . . . . . . 61 | |||
| C.2. Multicast Destination Notification . . . . . . . . . . . 61 | C.2. Multicast Destination Notification . . . . . . . . . . . 62 | |||
| C.3. Link Characteristics Request . . . . . . . . . . . . . . 61 | C.3. Link Characteristics Request . . . . . . . . . . . . . . 62 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 62 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 63 | |||
| 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 | |||
| datarate vary with respect to individual destinations on a link, and | datarate vary with respect to individual destinations on a link, and | |||
| with the type of traffic being sent. As an example, consider the | with the type of traffic being sent. As an example, consider the | |||
| case of an 802.11 access point, serving two associated laptop | case of an IEEE 802.11 access point, serving two associated laptop | |||
| computers. In this environment, the answer to the question "What is | computers. In this environment, the answer to the question "What is | |||
| the datarate on the 802.11 link?" is "It depends on which associated | the datarate on the 802.11 link?" is "It depends on which associated | |||
| laptop we're talking about, and on what kind of traffic is being | laptop we're talking about, and on what kind of traffic is being | |||
| sent." While the first laptop, being physically close to the access | sent." While the first laptop, being physically close to the access | |||
| point, may have a datarate of 54Mbps for unicast traffic, the other | point, may have a datarate of 54Mbps for unicast traffic, the other | |||
| laptop, being relatively far away, or obstructed by some object, can | laptop, being relatively far away, or obstructed by some object, can | |||
| simultaneously have a datarate of only 32Mbps for unicast. However, | simultaneously have a datarate of only 32Mbps for unicast. However, | |||
| for multicast traffic sent from the access point, all traffic is sent | for multicast traffic sent from the access point, all traffic is sent | |||
| at the base transmission rate (which is configurable, but depending | at the base transmission rate (which is configurable, but depending | |||
| on the model of the access point, is usually 24Mbps or less). | on the model of the access 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, without an effect on a router's interface state (Up or Down). | time, without an effect on a router's interface state (Up or Down). | |||
| Effectively utilizing a relatively short-lived connection is | 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 IP routing protocols tend to | |||
| on interface state and independent timers at OSI Layer 3 to maintain | rely on interface state and independent timers to maintain network | |||
| network convergence (e.g., HELLO messages and/or recognition of DEAD | convergence (e.g., HELLO messages and/or recognition of DEAD routing | |||
| routing adjacencies). These dynamic connections can be better | adjacencies). These dynamic connections can be better utilized with | |||
| utilized with an event-driven paradigm, where acquisition of a new | an event-driven paradigm, where acquisition of a new neighbor (or | |||
| neighbor (or loss of an existing one) is signaled, as opposed to a | loss of an existing one) is signaled, as opposed to a paradigm driven | |||
| paradigm driven by timers and/or interface state. DLEP not only | by timers and/or interface state. DLEP not only implements such an | |||
| implements such an event-driven paradigm, but does so over a local (1 | event-driven paradigm, but does so over a local (1 hop) TCP session, | |||
| hop) TCP session, which guarantees delivery of the event messages. | which guarantees delivery of the event messages. | |||
| 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 or serial | as a standalone device connected to the router via Ethernet or serial | |||
| link. In the case of Ethernet attachment, with existing protocols | link. In the case of Ethernet attachment, with existing protocols | |||
| and techniques, routing software cannot be aware of convergence | and techniques, routing software cannot be aware of convergence | |||
| events occurring on the radio link (e.g., acquisition or loss of a | events occurring on the radio link (e.g., acquisition or loss of a | |||
| potential routing neighbor), nor can the router be aware of the | potential routing neighbor), nor can the router be aware of the | |||
| actual capacity of the link. This lack of awareness, along with the | actual capacity of the link. This lack of awareness, along with the | |||
| skipping to change at page 7, line 28 ¶ | skipping to change at page 7, line 28 ¶ | |||
| 2. Protocol Overview | 2. Protocol Overview | |||
| DLEP defines a set of Messages used by modems and their attached | DLEP defines a set of Messages used by modems and their attached | |||
| routers to communicate events that occur on the physical link(s) | routers to communicate events that occur on the physical link(s) | |||
| managed by the modem: for example, a remote node entering or leaving | managed by the modem: for example, a remote node entering or leaving | |||
| the network, or that the link has changed. Associated with these | the network, or that the link has changed. Associated with these | |||
| Messages are a set of Data Items - information that describes the | Messages are a set of Data Items - information that describes the | |||
| remote node (e.g., address information), and/or the characteristics | remote node (e.g., address information), and/or the characteristics | |||
| of the link to the remote node. Throughout this document, we refer | of the link to the remote node. Throughout this document, we refer | |||
| to a modems/routers participating in a DLEP session as 'DLEP Peers', | to a modems/routers participating in a DLEP session as 'DLEP | |||
| or 'DLEP Participants', unless a specific distinction (e.g. modem or | Participants', unless a specific distinction (e.g. modem or router) | |||
| router) is required. | is required. | |||
| 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), or the modem supports multiple connections | router (as in Figure 2), or the modem supports multiple connections | |||
| (via multiple logical or physical interfaces), then separate DLEP | (via multiple logical or physical interfaces), then separate DLEP | |||
| sessions exist for each modem or connection. A router and modem form | sessions exist for each modem or connection. A router and modem form | |||
| a session by completing the discovery and initialization process. | a session by completing the discovery and initialization process. | |||
| This router-modem session persists unless or until it either (1) | This router-modem session persists unless or until it either (1) | |||
| times out, based on the absence of DLEP traffic (including | times out, based on the absence of DLEP traffic (including | |||
| heartbeats), or (2) is explicitly torn down by one of the DLEP | heartbeats), or (2) is explicitly torn down by one of the DLEP | |||
| skipping to change at page 8, line 11 ¶ | skipping to change at page 8, line 11 ¶ | |||
| 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, addressable location that can be reached via | represent a specific, addressable location that can be reached via | |||
| the link(s) managed by the modem. | the link(s) managed by the modem. | |||
| The DLEP Messages concerning destinations thus become the way for | The DLEP Messages 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 destinations | information base representing the physical and logical destinations | |||
| accessible via the modem device, as well as the link characteristics | accessible via the modem device, as well as the link characteristics | |||
| to those destinations. | to those destinations. | |||
| DLEP indentifies destinations by using the MAC address for delivering | DLEP identifies destinations by using the MAC address for delivering | |||
| data traffic. No manipulation or substitution is performed; the MAC | data traffic. No manipulation or substitution is performed; the MAC | |||
| address supplied in all destination Messages is used as the OSI Layer | address supplied in all destination Messages is used as the | |||
| 2 Destination MAC address. DLEP therefore requires that MAC | Destination MAC address. DLEP therefore requires that MAC addresses | |||
| addresses are unique within the context of a router-modem session. | are unique within the context of a router-modem session. | |||
| The reliance on MAC addresses by DLEP forces the requirement that | The reliance on MAC addresses by DLEP forces the requirement that | |||
| participating DLEP peers are on a single segment (either physical or | DLEP participants are on a single segment (either physical or | |||
| logically, via tunneling protocols) at Layer 2. | logically, via tunneling protocols) at Layer 2. | |||
| A destination can be either physical or logical. The example of a | A destination can be either physical or logical. The example of a | |||
| physical destination would be that of a remote, far-end router | physical destination would be that of a remote, far-end router | |||
| attached via the variable-quality network. It should be noted that | attached via the variable-quality network. It should be noted that | |||
| for physical destinations the MAC address is the address of the far- | for physical destinations the MAC address is the address of the far- | |||
| end router, not the modem. | end router, not the modem. | |||
| The example of a logical destination is Multicast. Multicast traffic | The example of a logical destination is Multicast. Multicast traffic | |||
| destined for the variable-quality network (the network accessed via | destined for the variable-quality network (the network accessed via | |||
| skipping to change at page 8, line 46 ¶ | skipping to change at page 8, line 46 ¶ | |||
| logical destination. The modem, once it is aware of the existence of | logical destination. The modem, once it is aware of the existence of | |||
| this logical destination, reports link characteristics just as it | this logical destination, reports link characteristics just as it | |||
| would for any other destination in the network. The specific | would for any other destination in the network. The specific | |||
| algorithms a modem would use to derive metrics on logical | algorithms a modem would use to derive metrics on logical | |||
| destinations are outside the scope of this specification, and is left | destinations are outside the scope of this specification, and is left | |||
| to specific implementations to decide. | to specific implementations to decide. | |||
| While this document represents the best efforts of the working group | While this document represents the best efforts of the working group | |||
| to be functionally complete, it is recognized that extensions to DLEP | to be functionally complete, it is recognized that extensions to DLEP | |||
| will in all likelihood be necessary as more link types are used. | will in all likelihood be necessary as more link types are used. | |||
| Such extensions are defined as additional rules of behavior, | Such extensions are defined as additional Messages, Data Items and/or | |||
| Messages, Data Items and/or status codes that are not defined in this | status codes, and associated rules of behavior, that are not defined | |||
| document. DLEP contains a standard mechanism for router and modem | in this document. DLEP contains a standard mechanism for router and | |||
| implementations to negotiate the available extensions to use on a | modem implementations to negotiate the available extensions to use on | |||
| per-session basis. | a per-session basis. | |||
| 2.1. Assumptions | 2.1. Assumptions | |||
| 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. Therefore, DLEP assumes that the | TCP for transport of the Messages. Therefore, DLEP assumes that the | |||
| modem and router have topologically consistent IP addresses assigned. | modem and router have topologically consistent IP addresses assigned. | |||
| It is RECOMMENDED that DLEP implementations utilize IPv6 link-local | It is RECOMMENDED that DLEP implementations utilize IPv6 link-local | |||
| addresses to reduce the administrative burden of address assignment. | addresses to reduce the administrative burden of address assignment. | |||
| DLEP relies on the guaranteed- delivery of its Messages between | DLEP relies on the guaranteed- delivery of its Messages between | |||
| router and modem, once the 1 hop discovery process is complete, | router and modem, once the 1 hop discovery process is complete, | |||
| skipping to change at page 9, line 38 ¶ | skipping to change at page 9, line 38 ¶ | |||
| 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 by a 'best effort', incorporating all | metrics have been calculated by a 'best effort', incorporating all | |||
| pertinent data that is available to the modem device. | pertinent data that is available to the modem device. | |||
| DLEP allows for metrics to be sent within two contexts - metrics for | DLEP allows for metrics to be sent within two contexts - metrics for | |||
| a specific destination within the network (e.g., a specific router), | a specific destination within the network (e.g., a specific router), | |||
| and per-session (those that apply to all destinations accessed via | and per-session (those that apply to all destinations accessed via | |||
| the modem). Most metrics can be further subdivided into transmit and | the modem). Most metrics can be further subdivided into transmit and | |||
| receive metrics. In cases where metrics are provided at session | receive metrics. In cases where metrics are provided at session | |||
| level, the router MUST propagate the metrics to all entries in its | level, the router propagates the metrics to all entries in its | |||
| information base for destinations that are accessed via the modem. | information base for destinations that are accessed via the modem. | |||
| DLEP modem implementations MUST announce all metric Data Items that | DLEP modems announce all metric Data Items that will be reported | |||
| will be reported during the session, and provide default values for | during the session, and provide default values for those metrics, in | |||
| those metrics, in the Session Initialization Response Message | the Session Initialization Response Message (Section 9.6). In order | |||
| (Section 9.6). In order to use a metric type that was not included | to use a metric type that was not included in the Session | |||
| in the Session Initialization Response Message, modem implementations | Initialization Response Message, modem implementations terminate the | |||
| MUST terminate the session with the router (via the Session Terminate | session with the router (via the Session Terminate Message | |||
| Message (Section 9.9)), and establish a new session. | (Section 9.9)), and establish a new session. | |||
| A DLEP modem MAY send metrics both in a session context (via the | A DLEP modem can send metrics both in a session context, via the | |||
| Session Update Message) and a specific destination context (via | Session Update Message (Section 9.7), and a specific destination | |||
| Destination Update) at any time. The most recently received metric | context, via the Destination Update Message (Section 9.17), at any | |||
| value MUST take precedence over any earlier value, regardless of | time. The most recently received metric value takes precedence over | |||
| context - that is: | any earlier value, regardless of context - that is: | |||
| 1. If the router receives metrics in a specific destination context | 1. If the router receives metrics in a specific destination context | |||
| (via the Destination Update Message), then the specific | (via the Destination Update Message), then the specific | |||
| destination is updated with the new metric. | destination is updated with the new metric. | |||
| 2. If the router receives metrics in a session-wide context (via the | 2. If the router receives metrics in a session-wide context (via the | |||
| Session Update Message), then the metrics for all destinations | Session Update Message), then the metrics for all destinations | |||
| accessed via the modem MUST be updated with the new metric. | accessed via the modem are updated with the new metric. | |||
| 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 can report metrics only once | |||
| for a given destination (or once on a session-wide basis, if all | for a given destination (or once on a session-wide basis, if all | |||
| connections via the modem are of this static nature). | connections via the modem are of this static nature). | |||
| In addition to communicating existing metrics about the link, DLEP | In addition to communicating existing metrics about the link, DLEP | |||
| provides a Message allowing a router to request a different datarate | provides a Message allowing a router to request a different datarate | |||
| or latency from the modem. This Message is the Link Characteristics | or latency from the modem. This Message is the Link Characteristics | |||
| Request Message (Section 9.18), and gives the router the ability to | Request Message (Section 9.18), and gives the router the ability to | |||
| deal with requisite increases (or decreases) of allocated datarate/ | deal with requisite increases (or decreases) of allocated datarate/ | |||
| latency in demand-based schemes in a more deterministic manner. | latency in demand-based schemes in a more deterministic manner. | |||
| skipping to change at page 11, line 8 ¶ | skipping to change at page 11, line 8 ¶ | |||
| Modems, and routers supporting DLEP discovery, transition through all | Modems, and routers supporting DLEP discovery, transition through all | |||
| five (5) of the above states. Routers that rely on preconfigured TCP | five (5) of the above states. Routers that rely on preconfigured TCP | |||
| address/port information start in the Session Initialization state. | address/port information start in the Session Initialization state. | |||
| Modems MUST support the Peer Discovery state. | Modems MUST support the Peer Discovery state. | |||
| 4.1. Peer Discovery State | 4.1. Peer Discovery State | |||
| In the Peer Discovery state, routers that support DLEP discovery MUST | In the Peer Discovery state, routers that support DLEP discovery MUST | |||
| send UDP packets containing a Peer Discovery Signal (Section 9.3) to | send Peer Discovery Signals (Section 9.3) to initiate modem | |||
| the DLEP well-known address and port number. For routers supporting | discovery. | |||
| both IPv4 and IPv6 DLEP operation, it is RECOMMENDED that IPv6 be | ||||
| selected as the transport. | ||||
| The router implementation then waits for a unicast UDP packet | The router implementation then waits for a Peer Offer Signal | |||
| containing a Peer Offer Signal (Section 9.4) from a potential DLEP | (Section 9.4) response from a potential DLEP modem. While in the | |||
| peer modem. While in the Peer Discovery state, Peer Discovery | Peer Discovery state, Peer Discovery Signals MUST be sent repeatedly | |||
| Signals MUST be sent repeatedly by a DLEP router, at regular | by a DLEP router, at regular intervals. The interval MUST be a | |||
| intervals. The interval MUST be a minimum of one second; it SHOULD | minimum of one second; it SHOULD be a configurable parameter. Note | |||
| be a configurable parameter. Note that this operation (sending Peer | that this operation (sending Peer Discovery and waiting for Peer | |||
| Discovery and waiting for Peer Offer) is outside the DLEP Transaction | Offer) is outside the DLEP Transaction Model (Section 5), as the | |||
| Model, as the Transaction Model only describes Messages on a TCP | Transaction Model only describes Messages on a TCP session. | |||
| session. | ||||
| Routers MUST use one or more of the modem address/port combinations | Routers MUST use one or more of each of the modem address/port | |||
| from the Peer Offer Signal or from a priori configuration to | combinations from the Peer Offer Signal or, when no Connection Point | |||
| establish a new TCP connection to the modem. If more than one modem | Data Items are present, from a priori configuration to establish a | |||
| address/port combinations is available, router implementations MAY | new TCP connection to the modem. If more than one modem address/port | |||
| use their own heuristics to determine the order in which they are | combinations is provided, router implementations MAY use their own | |||
| tried. If a TCP connection cannot be achieved using any of the | heuristics to determine the order in which they are tried. If a TCP | |||
| address/port combinations and the Discovery mechanism is in use, then | connection cannot be achieved using any of the address/port | |||
| the router SHOULD resume issuing Peer Discovery Signals. If no IPv4 | combinations and the Discovery mechanism is in use, then the router | |||
| Connection Point Data Items, nor IPv6 Connection Point Data Items are | SHOULD resume issuing Peer Discovery Signals. If no Connection Point | |||
| included in the Peer Offer Signal, the router MUST use the source | Data Items are included in the Peer Offer Signal, the router MUST use | |||
| address of the UDP packet containing the Signal as the IP address, | the source address of the UDP packet containing the Signal as the IP | |||
| and the DLEP well-known port number. | address, and the DLEP well-known port number. | |||
| In the Peer Discovery state, the modem implementation MUST listen for | In the Peer Discovery state, the modem implementation MUST listen for | |||
| incoming Peer Discovery Signals on the DLEP well-known link-local | incoming Peer Discovery Signals on the DLEP well-known IPv6 and/or | |||
| multicast address and port. On receipt of a valid Peer Discovery | IPv4 link-local multicast address and port. On receipt of a valid | |||
| Signal, it MUST unicast a Peer Offer Signal to the source address and | Peer Discovery Signal, it MUST reply with a Peer Offer Signal. | |||
| port of the received UDP packet. | ||||
| Modems MUST be prepared to accept a TCP connection from a router that | Modems MUST be prepared to accept a TCP connection from a router that | |||
| is not using the Discovery mechanism, i.e. a connection attempt that | is not using the Discovery mechanism, i.e. a connection attempt that | |||
| occurs without a preceding Peer Discovery Signal. | occurs without a preceding Peer Discovery Signal. | |||
| Upon establishment of a TCP connection, both modem and router enter | Upon establishment of a TCP connection, both modem and router enter | |||
| the Session Initialization state. It is up to the router | the Session Initialization state. It is up to the router | |||
| implementation if Peer Discovery Signals continue to be sent after | implementation if Peer Discovery Signals continue to be sent after | |||
| the device has transitioned to the Session Initialization state. | the device has transitioned to the Session Initialization state. | |||
| Modem implementations MUST silently ignore Peer Discovery Signals | Modem implementations MUST silently ignore Peer Discovery Signals | |||
| skipping to change at page 12, line 28 ¶ | skipping to change at page 12, line 23 ¶ | |||
| receipt of a Session Initialization Message from the router. Upon | receipt of a Session Initialization Message from the router. Upon | |||
| receipt of a Session Initialization Message, the modem MUST send a | receipt of a Session Initialization Message, the modem MUST send a | |||
| Session Initialization Response Message, and the session MUST | Session Initialization Response Message, and the session MUST | |||
| transition to the In-Session state. If the modem receives any | transition to the In-Session state. If the modem receives any | |||
| Message other than Session Initialization, or it fails to parse the | Message other than Session Initialization, or it fails to parse the | |||
| received Message, it MUST NOT send any Message, and MUST terminate | received Message, it MUST NOT send any Message, and MUST terminate | |||
| the TCP connection and transition to the Session Reset state. | the TCP connection and transition to the Session Reset state. | |||
| DLEP provides an extension negotiation capability to be used in the | DLEP provides an extension negotiation capability to be used in the | |||
| Session Initialization state, see Section 6. Extensions supported by | Session Initialization state, see Section 6. Extensions supported by | |||
| an implementation MUST be declared to potential DLEP peers using the | an implementation MUST be declared to potential DLEP participants | |||
| Extensions Supported Data Item (Section 10.6). Once both DLEP peers | using the Extensions Supported Data Item (Section 10.6). Once both | |||
| have exchanged initialization Messages, an implementation MUST NOT | DLEP participants have exchanged initialization Messages, an | |||
| emit any Message, Signal, Data Item or status code associated with an | implementation MUST NOT emit any Message, Signal, Data Item or status | |||
| extension that was not specified in the received initialization | code associated with an extension that was not specified in the | |||
| Message from its peer. | received initialization Message from its peer. | |||
| 4.3. In-Session State | 4.3. In-Session State | |||
| In the In-Session state, Messages can flow in both directions between | In the In-Session state, Messages can flow in both directions between | |||
| DLEP peers, indicating changes to the session state, the arrival or | DLEP participants, indicating changes to the session state, the | |||
| departure of reachable destinations, or changes of the state of the | arrival or departure of reachable destinations, or changes of the | |||
| links to the destinations. | state of the links to the destinations. | |||
| The In-Session state is maintained until one of the following | The In-Session state is maintained until one of the following | |||
| conditions occur: | conditions occur: | |||
| o The implementation terminates the session by sending a Session | o The implementation terminates the session by sending a Session | |||
| Termination Message (Section 9.9)), or, | Termination Message (Section 9.9), or, | |||
| o The peer terminates the session, indicated by receiving a Session | o Its peer terminates the session, indicated by receiving a Session | |||
| Termination Message. | Termination Message. | |||
| The implementation MUST then transition to the Session Termination | The implementation MUST then transition to the Session Termination | |||
| state. | state. | |||
| 4.3.1. Heartbeats | 4.3.1. Heartbeats | |||
| In order to maintain the In-Session state, periodic Heartbeat | In order to maintain the In-Session state, periodic Heartbeat | |||
| Messages (Section 9.20) MUST be exchanged between router and modem. | Messages (Section 9.20) MUST be exchanged between router and modem. | |||
| These Messages are intended to keep the session alive, and to verify | These Messages are intended to keep the session alive, and to verify | |||
| bidirectional connectivity between the two DLEP peers. | bidirectional connectivity between the two DLEP participants. | |||
| Each DLEP participant is responsible for the creation of Heartbeat | Each DLEP participant is responsible for the creation of Heartbeat | |||
| Messages. | Messages. | |||
| Receipt of any valid DLEP Message MUST reset the heartbeat interval | Receipt of any valid DLEP Message MUST reset the heartbeat interval | |||
| timer (i.e., valid DLEP Messages take the place of, and obviate the | timer (i.e., valid DLEP Messages take the place of, and obviate the | |||
| need for, additional Heartbeat Messages). | need for, additional Heartbeat Messages). | |||
| Implementations SHOULD allow two (2) heartbeat intervals to expire | Implementations MUST allow a minimum of two (2) heartbeat intervals | |||
| with no Messages from the peer before terminating the session by | to expire with no Messages from its peer before terminating the | |||
| issuing a Session Termination Message containing a Status Data Item | session. When terminating the session, a Session Termination Message | |||
| (Section 10.1) with status code set to 5 'Timed Out', see Table 4, | containing a Status Data Item (Section 10.1) with status code set to | |||
| and then transition to the Session Termination state. | 132 'Timed Out', see Table 4, MUST be sent, and then the | |||
| implementation MUST transition to the Session Termination state. | ||||
| 4.4. Session Termination State | 4.4. Session Termination State | |||
| When an implementation enters the Session Termination state after | When an implementation enters the Session Termination state after | |||
| sending a Session Termination Message (Section 9.9) as the result of | sending a Session Termination Message (Section 9.9) as the result of | |||
| an invalid Message or error, it MUST wait for a Session Termination | an invalid Message or error, it MUST wait for a Session Termination | |||
| Response Message (Section 9.10) from its peer. Senders SHOULD allow | Response Message (Section 9.10) from its peer. Senders SHOULD allow | |||
| four (4) heartbeat intervals to expire before assuming that the peer | four (4) heartbeat intervals to expire before assuming that its peer | |||
| is unresponsive, and continuing with session termination. Any other | is unresponsive, and continuing with session termination. Any other | |||
| Message received while waiting MUST be silently ignored. | Message received while waiting MUST be silently ignored. | |||
| When the sender of the Session Termination Message receives a Session | When the sender of the Session Termination Message receives a Session | |||
| Termination Response Message from its peer, or times out, it MUST | Termination Response Message from its peer, or times out, it MUST | |||
| transition to the Session Reset state. | transition to the Session Reset state. | |||
| When an implementation enters the Session Termination state having | When an implementation receives a Session Termination Message from | |||
| received a Session Termination Message from its peer, it MUST | its peer, it enters the Session Termination state and then it MUST | |||
| immediately send a Session Termination Response and transition to the | immediately send a Session Termination Response and transition to the | |||
| Session Reset state. | Session Reset state. | |||
| 4.5. Session Reset state | 4.5. Session Reset state | |||
| In the Session Reset state the implementation MUST perform the | In the Session Reset state the implementation MUST perform the | |||
| following actions: | following actions: | |||
| o Release all resources allocated for the session. | o Release all resources allocated for the session. | |||
| skipping to change at page 14, line 18 ¶ | skipping to change at page 14, line 14 ¶ | |||
| o Terminate the TCP connection. | o Terminate the TCP connection. | |||
| Having completed these actions the implementation SHOULD return to | Having completed these actions the implementation SHOULD return to | |||
| the relevant initial state: Peer Discovery for modems; either Peer | the relevant initial state: Peer Discovery for modems; either Peer | |||
| Discovery or Session Initialization for routers, depending on | Discovery or Session Initialization for routers, depending on | |||
| configuration. | configuration. | |||
| 4.5.1. Unexpected TCP connection termination | 4.5.1. Unexpected TCP connection termination | |||
| If the TCP connection between DLEP peers is terminated when an | If the TCP connection between DLEP participants is terminated when an | |||
| implementation is not in the Session Reset state, the implementation | implementation is not in the Session Reset state, the implementation | |||
| MUST immediately transition to the Session Reset state. | MUST immediately transition to the Session Reset state. | |||
| 5. Transaction Model | 5. Transaction Model | |||
| DLEP defines a simple Message transaction model: Only one request per | DLEP defines a simple Message transaction model: Only one request per | |||
| destination may be in progress at a time per session. A Message | destination may be in progress at a time per session. A Message | |||
| transaction is considered complete when a response matching a | transaction is considered complete when a response matching a | |||
| previously issued request is received. If a DLEP participant | previously issued request is received. If a DLEP participant | |||
| receives a request for a destination for which there is already an | receives a request for a destination for which there is already an | |||
| outstanding request, the implementation MUST terminate the session by | outstanding request, the implementation MUST terminate the session by | |||
| issuing a Session Termination Message (Section 9.9) containing a | issuing a Session Termination Message (Section 9.9) containing a | |||
| Status Data Item (Section 10.1) with status code set to 2 'Unexpected | Status Data Item (Section 10.1) with status code set to 129 | |||
| Message', see Table 4, and transition to the Session Termination | 'Unexpected Message', see Table 4, and transition to the Session | |||
| state. There is no restriction to the total number of Message | Termination state. There is no restriction to the total number of | |||
| transactions in progress at a time, as long as each transaction | Message transactions in progress at a time, as long as each | |||
| refers to a different destination. | transaction refers to a different destination. | |||
| It should be noted that some requests may take a considerable amount | It should be noted that some requests may take a considerable amount | |||
| of time for some DLEP participants to complete, for example a modem | of time for some DLEP participants to complete, for example a modem | |||
| handling a multicast destination up request may have to perform a | handling a multicast destination up request may have to perform a | |||
| complex network reconfiguration. A sending implementation MUST be | complex network reconfiguration. A sending implementation MUST be | |||
| able to handle such long running transactions gracefully. | able to handle such long running transactions gracefully. | |||
| Additionally, only one session request, e.g. a Session Initialization | Additionally, only one session request, e.g. a Session Initialization | |||
| Message (Section 9.5), may be in progress at a time per session. As | Message (Section 9.5), may be in progress at a time per session. As | |||
| above, a session transaction is considered complete when a response | above, a session transaction is considered complete when a response | |||
| matching a previously issued request is received. If a DLEP | matching a previously issued request is received. If a DLEP | |||
| participant receives a session request while there is already a | participant receives a session request while there is already a | |||
| session request in progress, it MUST terminate the session by issuing | session request in progress, it MUST terminate the session by issuing | |||
| a Session Termination Message containing a Status Data Item with | a Session Termination Message containing a Status Data Item with | |||
| status code set to 2 'Unexpected Message', and transition to the | status code set to 129 'Unexpected Message', and transition to the | |||
| Session Termination state. Only the Session Termination Message may | Session Termination state. Only the Session Termination Message may | |||
| be issued when a session transaction is in progress. Heartbeat | be issued when a session transaction is in progress. Heartbeat | |||
| Messages (Section 9.20) MUST NOT be considered part of a session | Messages (Section 9.20) MUST NOT be considered part of a session | |||
| transaction. | transaction. | |||
| DLEP transactions do not time out and are not cancellable. An | DLEP transactions do not time out and are not cancellable. An | |||
| implementation can detect if its peer has failed in some way by use | implementation can detect if its peer has failed in some way by use | |||
| of the session heartbeat mechanism during the In-Session state, see | of the session heartbeat mechanism during the In-Session state, see | |||
| Section 4.3. | Section 4.3. | |||
| 6. Extensions | 6. Extensions | |||
| Extensions MUST be negotiated on a per-session basis during session | Extensions MUST be negotiated on a per-session basis during session | |||
| initialization via the Extensions Supported mechanism. | initialization via the Extensions Supported mechanism. | |||
| Implementations are not required to support any extension in order to | Implementations are not required to support any extension in order to | |||
| be considered DLEP compliant. An extension document, describing the | be considered DLEP compliant. An extension document, describing the | |||
| operation of a credit windowing scheme for flow control, is described | operation of a credit windowing scheme for flow control, is described | |||
| in [CREDIT]. | in [CREDIT]. | |||
| If interoperable protocol extensions are required, they MUST be | If interoperable protocol extensions are required, they will need to | |||
| standardized either as an update to this document, or as an | be standardized either as an update to this document, or as an | |||
| additional stand-alone specification. The requests for IANA- | additional stand-alone specification. The requests for IANA- | |||
| controlled registries in this document contain sufficient Reserved | controlled registries in this document contain sufficient Reserved | |||
| space for DLEP Signals, Messages, Data Items and status codes to | space for DLEP Signals, Messages, Data Items and status codes to | |||
| accommodate future extensions to the protocol. | accommodate future extensions to the protocol. | |||
| As multiple protocol extensions MAY be announced during session | As multiple protocol extensions MAY be announced during session | |||
| initialization, authors of protocol extensions MUST consider the | initialization, authors of protocol extensions need to consider the | |||
| interaction of their extension with other published extensions, and | interaction of their extension with other published extensions, and | |||
| specify any incompatibilities. | specify any incompatibilities. | |||
| 6.1. Experiments | 6.1. Experiments | |||
| This document requests Private Use numbering space in the DLEP | This document requests Private Use numbering space in the DLEP | |||
| Signal, Message, Data Item and status code registries for | Signal, Message, Data Item and status code registries for | |||
| experimental extensions. The intent is to allow for experimentation | experimental extensions. The intent is to allow for experimentation | |||
| with new Signals, Messages, Data Items, and/or status codes, while | with new Signals, Messages, Data Items, and/or status codes, while | |||
| still retaining the documented DLEP behavior. | still retaining the documented DLEP behavior. | |||
| Use of the Private Use Signals, Messages, Data Items, status codes, | Use of the Private Use Signals, Messages, Data Items, status codes, | |||
| or behaviors MUST be announced as DLEP Extensions, during session | or behaviors MUST be announced as DLEP Extensions, during session | |||
| initialization, using extension identifiers from the Private Use | initialization, using extension identifiers from the Private Use | |||
| space in the Extensions Supported registry (Table 5), with a value | space in the Extensions Supported registry (Table 5), with a value | |||
| agreed upon (a priori) between the participating peers. DLEP | agreed upon (a priori) between the participants. DLEP extensions | |||
| extensions using the Private Use numbering space are commonly | using the Private Use numbering space are commonly referred to as | |||
| referred to as Experiments. | Experiments. | |||
| Multiple experiments MAY be announced in the Session Initialization | Multiple experiments MAY be announced in the Session Initialization | |||
| Messages. However, use of multiple experiments in a single session | Messages. However, use of multiple experiments in a single session | |||
| could lead to interoperability issues or unexpected results (e.g., | could lead to interoperability issues or unexpected results (e.g., | |||
| clashes of experimental Signals, Messages, Data Items and/or status | clashes of experimental Signals, Messages, Data Items and/or status | |||
| code types), and is therefore discouraged. It is left to | code types), and is therefore discouraged. It is left to | |||
| implementations to determine the correct processing path (e.g., a | implementations to determine the correct processing path (e.g., a | |||
| decision on whether to terminate the session, or to establish a | decision on whether to terminate the session, or to establish a | |||
| precedence of the conflicting definitions) if such conflicts arise. | precedence of the conflicting definitions) if such conflicts arise. | |||
| 7. Scalability | 7. Scalability | |||
| The protocol is intended to support thousands of destinations on a | The protocol is intended to support thousands of destinations on a | |||
| given modem/router pair. At large scale, implementations SHOULD | given modem/router pair. At large scale, implementations SHOULD | |||
| consider employing techniques to prevent flooding a peer with a large | consider employing techniques to prevent flooding its peer with a | |||
| number of Messages in a short time. It is recommended that | large number of Messages in a short time. It is RECOMMENDED that | |||
| implementations consider a dampening algorithm to prevent a flapping | implementations consider a dampening algorithm to prevent a flapping | |||
| device from generating a large number of Destination Up/Destination | device from generating a large number of Destination Up/Destination | |||
| Down Messages, for example. Implementations SHOULD also consider | Down Messages, for example. | |||
| techniques such as a hysteresis to lessen the impact of rapid, minor | ||||
| fluctuations in link quality. The specific algorithms to be used for | Implementations SHOULD also consider techniques such as a hysteresis | |||
| handling flapping destinations and minor changes in link quality are | to lessen the impact of rapid, minor fluctuations in link quality. | |||
| outside the scope of this specification. | The specific algorithms to be used for handling flapping destinations | |||
| and minor changes in link quality are outside the scope of this | ||||
| specification. | ||||
| 8. DLEP Signal and Message Structure | 8. DLEP Signal and Message Structure | |||
| DLEP defines two protocol units used in two different ways: Signals | DLEP defines two protocol units used in two different ways: Signals | |||
| and Messages. Signals are only used in the Discovery mechanism and | and Messages. Signals are only used in the Discovery mechanism and | |||
| are carried in UDP datagrams. Messages are used bi-directionally | are carried in UDP datagrams. Messages are used bi-directionally | |||
| over a TCP connection between two peers, in the Session | over a TCP connection between the participants, in the Session | |||
| Initialization, In-Session and Session Termination states. | Initialization, In-Session and Session Termination states. | |||
| Both Signals and Messages consist of a Header followed by an | Both Signals and Messages consist of a Header followed by an | |||
| unordered list of Data Items. Headers consist of Type and Length | unordered list of Data Items. Headers consist of Type and Length | |||
| information, while Data Items are encoded as TLV (Type-Length-Value) | information, while Data Items are encoded as TLV (Type-Length-Value) | |||
| structures. In this document, the Data Items following a Signal or | structures. In this document, the Data Items following a Signal or | |||
| Message Header are described as being 'contained in' the Signal or | Message Header are described as being 'contained in' the Signal or | |||
| Message. | Message. | |||
| There is no restriction on the order of Data Items following a | There is no restriction on the order of Data Items following a | |||
| Header, and the multiplicity of duplicate Data Items is defined by | Header, and the acceptability of duplicate Data Items is defined by | |||
| the definition of the Signal or Message declared by the type in the | the definition of the Signal or Message declared by the type in the | |||
| Header. | Header. | |||
| All integers in Header fields and values MUST be in network byte- | All integers in Header fields and values MUST be in network byte- | |||
| order. | order. | |||
| 8.1. DLEP Signal Header | 8.1. DLEP Signal Header | |||
| The DLEP Signal Header contains the following fields: | The DLEP Signal Header contains the following fields: | |||
| skipping to change at page 17, line 11 ¶ | skipping to change at page 17, line 4 ¶ | |||
| All integers in Header fields and values MUST be in network byte- | All integers in Header fields and values MUST be in network byte- | |||
| order. | order. | |||
| 8.1. DLEP Signal Header | 8.1. DLEP Signal Header | |||
| The DLEP Signal Header contains the following fields: | The DLEP Signal Header 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | 'D' | 'L' | 'E' | 'P' | | | 'D' | 'L' | 'E' | 'P' | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Signal Type | Length | | | Signal Type | Length | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Figure 3: DLEP Signal Header | Figure 3: DLEP Signal Header | |||
| "DLEP": Every Signal MUST start with the characters: U+0044, U+004C, | "DLEP": Every Signal MUST start with the characters: U+0044, U+004C, | |||
| U+0045, U+0050. | U+0045, U+0050. | |||
| Signal Type: A 16-bit unsigned integer containing one of the DLEP | Signal Type: A 16-bit unsigned integer containing one of the DLEP | |||
| Signal Type values defined in this document. | Signal Type values defined in this document. | |||
| Length: The length in octets, expressed as a 16-bit unsigned | Length: The length in octets, expressed as a 16-bit unsigned | |||
| integer, of all of the DLEP Data Items associated with this | integer, of all of the DLEP Data Items contained in this Signal. | |||
| Signal. This length MUST NOT include the length of the Signal | This length MUST NOT include the length of the Signal Header | |||
| Header itself. | itself. | |||
| The DLEP Signal Header is immediately followed by zero or more DLEP | The DLEP Signal Header is immediately followed by zero or more DLEP | |||
| Data Items, encoded in TLVs, as defined in this document. | Data Items, encoded in TLVs, as defined in this document. | |||
| 8.2. DLEP Message Header | 8.2. DLEP Message Header | |||
| The DLEP Message Header contains the following fields: | The DLEP Message Header 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Type | Length | | | Message Type | Length | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Figure 4: DLEP Message Header | Figure 4: DLEP Message Header | |||
| Message Type: A 16-bit unsigned integer containing one of the DLEP | Message Type: A 16-bit unsigned integer containing one of the DLEP | |||
| Message Type values defined in this document. | Message Type values defined in this document. | |||
| Length: The length in octets, expressed as a 16-bit unsigned | Length: The length in octets, expressed as a 16-bit unsigned | |||
| integer, of all of the DLEP Data Items associated with this | integer, of all of the DLEP Data Items contained in this Message. | |||
| Message. This length MUST NOT include the length of the Message | This length MUST NOT include the length of the Message Header | |||
| Header itself. | itself. | |||
| The DLEP Message Header is immediately followed by zero or more DLEP | The DLEP Message Header is immediately followed by zero or more DLEP | |||
| Data Items, encoded in TLVs, as defined in this document. | Data Items, encoded in TLVs, as defined in this document. | |||
| 8.3. DLEP Generic Data Item | 8.3. DLEP Generic Data Item | |||
| All DLEP Data Items contain the following fields: | All DLEP Data Items 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 | |||
| skipping to change at page 18, line 34 ¶ | skipping to change at page 18, line 27 ¶ | |||
| 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. | |||
| 9. DLEP Signals and Messages | 9. DLEP Signals and Messages | |||
| As mentioned above, all DLEP Signals begin with the DLEP Signal | ||||
| Header, and all DLEP Messages begin with the DLEP Message Header. | ||||
| Therefore, in the following descriptions of specific Signals and | ||||
| Messages, this Header is assumed, and will not be replicated. | ||||
| Following is the set of core Signals and Messages that MUST be | Following is the set of core Signals and Messages that MUST be | |||
| recognized by a DLEP compliant implementation. As mentioned before, | recognized by a DLEP compliant implementation. As mentioned before, | |||
| not all Messages may be used during a session, but an implementation | not all Messages may be used during a session, but an implementation | |||
| MUST correctly process these Messages when received. | MUST correctly process these Signals and Messages when received. | |||
| The core DLEP Signals are: | The core DLEP Signals are: | |||
| +--------------+-----------------------------------------+ | +--------------+-----------------------------------------+ | |||
| | Type Code | Description | | | Type Code | Description | | |||
| +--------------+-----------------------------------------+ | +--------------+-----------------------------------------+ | |||
| | 0 | Reserved | | | 0 | Reserved | | |||
| | 1 | Peer Discovery Signal (Section 9.3) | | | 1 | Peer Discovery Signal (Section 9.3) | | |||
| | 2 | Peer Offer Signal (Section 9.4) | | | 2 | Peer Offer Signal (Section 9.4) | | |||
| | 3-65519 | Reserved for future extensions | | | 3-65519 | Reserved for future extensions | | |||
| skipping to change at page 20, line 9 ¶ | skipping to change at page 19, line 39 ¶ | |||
| | 65520-65534 | Private Use. Available for experiments | | | 65520-65534 | Private Use. Available for experiments | | |||
| | 65535 | Reserved | | | 65535 | Reserved | | |||
| +-------------------+-----------------------------------------------+ | +-------------------+-----------------------------------------------+ | |||
| Table 2: DLEP Message types | Table 2: DLEP Message types | |||
| 9.1. General Processing Rules | 9.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 DLEP peer MUST ignore the Signal. | Items, the receiving implementation MUST ignore the Signal. | |||
| If an unrecognized Message is received, the receiving DLEP peer MUST | If an unrecognized Message is received, the receiving implementation | |||
| issue a Session Termination Message (Section 9.9) containing a Status | MUST issue a Session Termination Message (Section 9.9) containing a | |||
| Data Item (Section 10.1) with status code set to 1 'Unknown Message', | Status Data Item (Section 10.1) with status code set to 128 'Unknown | |||
| see Table 4, and transition to the Session Termination state. | Message', see Table 4, and transition to the Session Termination | |||
| state. | ||||
| If an unexpected Message is received, the receiving DLEP peer MUST | If an unexpected Message is received, the receiving implementation | |||
| issue a Session Termination Message containing a Status Data Item | MUST issue a Session Termination Message containing a Status Data | |||
| with status code set to 2 'Unexpected Message', and transition to the | Item with status code set to 129 'Unexpected Message', and transition | |||
| 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 DLEP peer MUST issue a Session | duplicate Data Items, the receiving implementation MUST issue a | |||
| Termination Message containing a Status Data Item with status code | Session Termination Message containing a Status Data Item with status | |||
| set to 3 'Invalid Data', and transition to the Session Termination | code set to 130 'Invalid Data', and transition to the Session | |||
| state. | Termination state. | |||
| Prior to the exchange of Destination Up (Section 9.11) and | Prior to the exchange of Destination Up (Section 9.11) and | |||
| Destination Up Response (Section 9.12) Messages, or Destination | Destination Up Response (Section 9.12) Messages, or Destination | |||
| Announce (Section 9.13) and Destination Announce Response | Announce (Section 9.13) and Destination Announce Response | |||
| (Section 9.14) Messages, no Messages concerning a destination may be | (Section 9.14) Messages, no Messages concerning a destination may be | |||
| sent. A peer receiving any Message with such an unannounced | sent. An implementation receiving any Message with such an | |||
| destination MUST terminate the session by issuing a Session | unannounced destination MUST terminate the session by issuing a | |||
| Termination Message containing a Status Data Item with status code | Session Termination Message containing a Status Data Item with status | |||
| set to 4 'Invalid Destination', and transition to the Session | code set to 131 'Invalid Destination', and transition to the Session | |||
| Termination state. | Termination state. | |||
| After exchanging Destination Down (Section 9.15) and Destination Down | After exchanging Destination Down (Section 9.15) and Destination Down | |||
| Response (Section 9.16) Messages, no Messages concerning a | Response (Section 9.16) Messages, no Messages concerning a | |||
| destination may be a sent until a new Destination Up or Destination | destination may be a sent until a new Destination Up or Destination | |||
| Announce Message is sent. A peer receiving a Message about a | Announce Message is sent. An implementation receiving a Message | |||
| destination previously announced as 'down' MUST terminate the session | about a destination previously announced as 'down' MUST terminate the | |||
| by issuing a Session Termination Message with a Status Data Item with | session by issuing a Session Termination Message with a Status Data | |||
| status code set to 4 'Invalid Destination', and transition to the | Item with status code set to 131 'Invalid Destination', and | |||
| Session Termination state. | transition to the Session Termination state. | |||
| 9.2. Status code processing | 9.2. Status code processing | |||
| The behaviour of a DLEP participant receiving a Message containing a | The behaviour of a DLEP participant receiving a Message containing a | |||
| Status Data Item (Section 10.1) is defined by the failure mode | Status Data Item (Section 10.1) is defined by the failure mode | |||
| associated with the value of the status code field, see Table 4. | associated with the value of the status code field, see Table 4. All | |||
| Except for the reserved value of 255, all status code values greater | status code values less than 100 have a failure mode of 'Continue', | |||
| than or equal to 100 have a failure mode of 'Continue', all other | all other status codes have a failure mode of 'Terminate'. | |||
| status codes have a failure mode of 'Terminate'. | ||||
| A DLEP participant receiving any Message apart from Session | A DLEP participant receiving any Message apart from Session | |||
| Termination Message (Section 9.9) containing a Status Data Item with | Termination Message (Section 9.9) containing a Status Data Item with | |||
| a status code value with failure mode 'Terminate' MUST immediately | a status code value with failure mode 'Terminate' MUST immediately | |||
| issue a Session Termination Message containing an identical Status | issue a Session Termination Message containing an identical Status | |||
| Data Item, and then transition to the Session Termination state. | Data Item, and then transition to the Session Termination state. | |||
| A DLEP participant receiving a Message containing a Status Data Item | A DLEP participant receiving a Message containing a Status Data Item | |||
| with a status code value with failure mode 'Continue' can continue | with a status code value with failure mode 'Continue' can continue | |||
| normal operation of the session. | normal operation of the session. | |||
| 9.3. Peer Discovery Signal | 9.3. Peer Discovery Signal | |||
| A Peer Discovery Signal SHOULD be sent by a DLEP router to discover | A Peer Discovery Signal SHOULD be sent by a DLEP router to discover | |||
| DLEP modems in the network. | DLEP modems in the network Section 4.1. | |||
| A Peer Discovery Signal MUST be encoded within a UDP packet. The | ||||
| destination MUST be set to the DLEP well-known address and port | ||||
| number. For routers supporting both IPv4 and IPv6 DLEP operation, it | ||||
| is RECOMMENDED that IPv6 be selected as the transport. The source IP | ||||
| address MUST be set to the router IP address associated with the DLEP | ||||
| interface. There is no DLEP-specific restriction on source port. | ||||
| To construct a Peer Discovery Signal, the Signal Type value in the | To construct a Peer Discovery Signal, the Signal Type value in the | |||
| Signal Header is set to 1, from Table 1. | Signal Header is set to 1, from Table 1. | |||
| The Peer Discovery Signal MAY contain a Peer Type Data Item | The Peer Discovery Signal MAY contain a Peer Type Data Item | |||
| (Section 10.4). | (Section 10.4). | |||
| Implementations MUST implement their own retransmit heuristics in | ||||
| cases where it is determined the Peer Discovery Signal has timed out. | ||||
| 9.4. Peer Offer Signal | 9.4. Peer Offer Signal | |||
| A Peer Offer Signal MUST be sent by a DLEP modem to the unicast | A Peer Offer Signal MUST be sent by a DLEP modem in response to a | |||
| address of the originator of a valid Peer Discovery Signal | properly formatted and addressed Peer Discovery Signal (Section 9.3). | |||
| (Section 9.3). The Peer Offer Signal is completes the discovery | ||||
| process. | A Peer Offer Signal MUST be encoded within a UDP packet. The IP | |||
| destination MUST be set to the IP address and port number received in | ||||
| the corresponding Peer Discovery Signal. The source IP address MUST | ||||
| be set to the modem's IP address associated with the DLEP interface. | ||||
| The source port number MUST be set to the DLEP well-known port | ||||
| number. The Peer Offer Signal completes the discovery process | ||||
| Section 4.1. | ||||
| To construct a Peer Offer Signal, the Signal Type value in the Signal | To construct a Peer Offer Signal, the Signal Type value in the Signal | |||
| Header is set to 2, from Table 1. | Header is set to 2, from Table 1. | |||
| The Peer Offer Signal MAY contain a Peer Type Data Item | The Peer Offer Signal MAY contain a Peer Type Data Item | |||
| (Section 10.4). | (Section 10.4). | |||
| The Peer Offer Signal MAY contain one or more of any of the following | The Peer Offer Signal MAY contain one or more of any of the following | |||
| Data Items, with different values: | Data Items, with different values: | |||
| skipping to change at page 22, line 4 ¶ | skipping to change at page 21, line 46 ¶ | |||
| To construct a Peer Offer Signal, the Signal Type value in the Signal | To construct a Peer Offer Signal, the Signal Type value in the Signal | |||
| Header is set to 2, from Table 1. | Header is set to 2, from Table 1. | |||
| The Peer Offer Signal MAY contain a Peer Type Data Item | The Peer Offer Signal MAY contain a Peer Type Data Item | |||
| (Section 10.4). | (Section 10.4). | |||
| The Peer Offer Signal MAY contain one or more of any of the following | The Peer Offer Signal MAY contain one or more of any of the following | |||
| Data Items, with different values: | Data Items, with different values: | |||
| o IPv4 Connection Point (Section 10.2) | o IPv4 Connection Point (Section 10.2) | |||
| o IPv6 Connection Point (Section 10.3) | o IPv6 Connection Point (Section 10.3) | |||
| The IP Connection Point Data Items indicate the unicast address the | The IP Connection Point Data Items indicate the unicast address the | |||
| router MUST use when connecting the DLEP TCP session. If multiple IP | router MUST use when connecting the DLEP TCP session. | |||
| Connection Point Data Items are present in the Peer Offer Signal, | ||||
| router implementations MAY use their own heuristics to select the | ||||
| address to connect to. If no IP Connection Point Data Items are | ||||
| included in the Peer Offer Signal, the router MUST use the source | ||||
| address of the Signal as the IP address, and the DLEP well-known port | ||||
| number (Section 12.7) to establish the TCP connection. | ||||
| 9.5. Session Initialization Message | 9.5. Session Initialization Message | |||
| A Session Initialization Message MUST be sent by a DLEP router as the | A Session Initialization Message MUST be sent by a DLEP router as the | |||
| first Message of the DLEP TCP session. It is sent by the router | first Message of the DLEP TCP session. It is sent by the router | |||
| after a TCP connect to an address/port combination that was obtained | after a TCP connect to an address/port combination that was obtained | |||
| either via receipt of a Peer Offer, or from a priori configuration. | either via receipt of a Peer Offer, or from a priori configuration. | |||
| To construct a Session Initialization Message, the Message Type value | To construct a Session Initialization Message, the Message Type value | |||
| in the Message Header is set to 1, from Table 2. | in the Message Header is set to 1, from Table 2. | |||
| skipping to change at page 22, line 41 ¶ | skipping to change at page 22, line 31 ¶ | |||
| o Peer Type (Section 10.4) | o Peer Type (Section 10.4) | |||
| o Extensions Supported (Section 10.6) | o Extensions Supported (Section 10.6) | |||
| If any optional extensions are supported by the implementation, they | If any optional extensions are supported by the implementation, they | |||
| MUST be enumerated in the Extensions Supported Data Item. If an | MUST be enumerated in the Extensions Supported Data Item. If an | |||
| Extensions Supported Data Item does not exist in a Session | Extensions Supported Data Item does not exist in a Session | |||
| Initialization Message, the modem MUST conclude that there is no | Initialization Message, the modem MUST conclude that there is no | |||
| support for extensions in the router. | support for extensions in the router. | |||
| DLEP Heartbeats are not fully established until receipt of Session | DLEP Heartbeats are not fully established until receipt of the | |||
| Initialization Response Message (Section 9.6), and therefore | Session Initialization Response Message (Section 9.6), and therefore | |||
| implementations must use their own timeout and retry heuristics for | implementations MUST use their own timeout and retry heuristics for | |||
| this Message. | this Message. | |||
| As an exception to the general rule governing an implementation | As an exception to the general rule governing an implementation | |||
| receiving an unrecognized Data Item in a Message, see Section 9.1, if | receiving an unrecognized Data Item in a Message, see Section 9.1, if | |||
| a Session Initialization Message contains one or more Extension | a Session Initialization Message contains one or more Extension | |||
| Supported Data Items announcing support for extensions that the | Supported Data Items announcing support for extensions that the | |||
| implementation does not recognize, then the implementation MAY ignore | implementation does not recognize, then the implementation MAY ignore | |||
| Data Items it does not recognize. | Data Items it does not recognize. | |||
| 9.6. Session Initialization Response Message | 9.6. Session Initialization Response Message | |||
| skipping to change at page 24, line 27 ¶ | skipping to change at page 24, line 13 ¶ | |||
| router and modem. | router and modem. | |||
| If any optional extensions are supported by the modem, they MUST be | If any optional extensions are supported by the modem, they MUST be | |||
| enumerated in the Extensions Supported Data Item. If an Extensions | enumerated in the Extensions Supported Data Item. If an Extensions | |||
| Supported Data Item does not exist in a Session Initialization | Supported Data Item does not exist in a Session Initialization | |||
| Response Message, the router MUST conclude that there is no support | Response Message, the router MUST conclude that there is no support | |||
| for extensions in the modem. | for extensions in the modem. | |||
| After the Session Initialization/Session Initialization Response | After the Session Initialization/Session Initialization Response | |||
| Messages have been successfully exchanged, implementations MUST only | Messages have been successfully exchanged, implementations MUST only | |||
| use extensions that are supported by both DLEP peers. | use extensions that are supported by both DLEP participants | |||
| Section 4.2. | ||||
| 9.7. Session Update Message | 9.7. Session Update Message | |||
| A Session Update Message MAY be sent by a DLEP participant to | A Session Update Message MAY be sent by a DLEP participant to | |||
| indicate local Layer 3 address changes, or metric changes on a | indicate local Layer 3 address changes, or metric changes on a | |||
| session-wide basis. | session-wide basis. | |||
| To construct a Session Update Message, the Message Type value in the | To construct a Session Update Message, the Message Type value in the | |||
| Message Header is set to 3, from Table 2. | Message Header is set to 3, from Table 2. | |||
| skipping to change at page 25, line 4 ¶ | skipping to change at page 24, line 37 ¶ | |||
| o Maximum Data Rate (Receive) (Section 10.12) | o Maximum Data Rate (Receive) (Section 10.12) | |||
| o Maximum Data Rate (Transmit) (Section 10.13) | o Maximum Data Rate (Transmit) (Section 10.13) | |||
| o Current Data Rate (Receive) (Section 10.14) | o Current Data Rate (Receive) (Section 10.14) | |||
| o Current Data Rate (Transmit) (Section 10.15) | o Current Data Rate (Transmit) (Section 10.15) | |||
| o Latency (Section 10.16) | o Latency (Section 10.16) | |||
| The Session Update Message MAY contain one of each of the following | The Session Update Message MAY contain one of each of the following | |||
| Data Items, if the Data Item is in use by the session: | Data Items, if the Data Item is in use by the session: | |||
| o Resources (Section 10.17) | o Resources (Section 10.17) | |||
| o Relative Link Quality (Receive) (Section 10.18) | o Relative Link Quality (Receive) (Section 10.18) | |||
| o Relative Link Quality (Transmit) (Section 10.19) | o Relative Link Quality (Transmit) (Section 10.19) | |||
| o Maximum Transmission Unit (MTU) (Section 10.20) | o Maximum Transmission Unit (MTU) (Section 10.20) | |||
| The Session Update Message MAY contain one or more of the following | The Session Update Message MAY contain one or more of each of the | |||
| Data Items, with different values: | following Data Items, with different values: | |||
| o IPv4 Address (Section 10.8) | o IPv4 Address (Section 10.8) | |||
| o IPv6 Address (Section 10.9) | o IPv6 Address (Section 10.9) | |||
| If metrics are supplied with the Session Update Message (e.g., | If metrics are supplied with the Session Update Message (e.g., | |||
| Maximum Data Rate), these metrics are considered to be session-wide, | Maximum Data Rate), these metrics are considered to be session-wide, | |||
| and therefore MUST be applied to all destinations in the information | and therefore MUST be applied to all destinations in the information | |||
| base associated with the DLEP session. | base associated with the DLEP session. This includes destinations | |||
| for which metrics may have been stored based on received Destination | ||||
| Update messages. | ||||
| It should be noted that Session Update Messages can be sent by both | It should be noted that Session Update Messages can be sent by both | |||
| routers and modems. For example, addition of an IPv4 address to the | routers and modems. For example, addition of an IPv4 address to the | |||
| router MAY prompt a Session Update Message to its attached modems. | router MAY prompt a Session Update Message to its attached modems. | |||
| Also, for example, a modem that changes its Maximum Data Rate | Also, for example, a modem that changes its Maximum Data Rate | |||
| (Receive) for all destinations MAY reflect that change via a Session | (Receive) for all destinations MAY reflect that change via a Session | |||
| Update Message to its attached router(s). | Update Message to its attached 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 Update | (DLEP-enabled modems in a remote node) to issue a Destination Update | |||
| Message (Section 9.17) to their local routers with the new (or | Message (Section 9.17) to their local routers with the new (or | |||
| deleted) addresses. Modems that do not track Layer 3 addresses | deleted) addresses. Modems that do not track Layer 3 addresses | |||
| SHOULD silently ignore Address Data Items. | SHOULD silently ignore Address Data Items. | |||
| 9.8. Session Update Response Message | 9.8. Session Update Response Message | |||
| A Session Update Response Message MUST be sent by by a DLEP | A Session Update Response Message MUST be sent by a DLEP participant | |||
| participant when a Session Update Message (Section 9.7) is received. | when a Session Update Message (Section 9.7) is received. | |||
| To construct a Session Update Response Message, the Message Type | To construct a Session Update Response Message, the Message Type | |||
| value in the Message Header is set to 4, from Table 2. | value in the Message Header is set to 4, from Table 2. | |||
| The Session Update Response Message MUST contain a Status Data Item | The Session Update Response Message MUST contain a Status Data Item | |||
| (Section 10.1). | (Section 10.1). | |||
| 9.9. Session Termination Message | 9.9. Session Termination Message | |||
| A Session Termination Message MUST be sent by a DLEP participant when | A Session Termination Message MUST be sent by a DLEP participant when | |||
| skipping to change at page 26, line 23 ¶ | skipping to change at page 26, line 9 ¶ | |||
| The Session Termination Message MUST contain Status Data Item | The Session Termination Message MUST contain Status Data Item | |||
| (Section 10.1). | (Section 10.1). | |||
| It should be noted that Session Termination Messages can be sent by | It should be noted that Session Termination Messages can be sent by | |||
| both routers and modems. | both routers and modems. | |||
| 9.10. Session Termination Response Message | 9.10. Session Termination Response Message | |||
| A Session Termination Response Message MUST be sent by a DLEP | A Session Termination Response Message MUST be sent by a DLEP | |||
| participant when a Session Termination Message (Section 9.9) is | participant when a Session Termination Message (Section 9.9) is | |||
| recevied. | received. | |||
| To construct a Session Termination Response Message, the Message Type | To construct a Session Termination Response Message, the Message Type | |||
| value in the Message Header is set to 6, from Table 2. | value in the Message Header is set to 6, from Table 2. | |||
| There are no valid Data Items for the Session Termination Response | There are no valid Data Items for the Session Termination Response | |||
| Message. | Message. | |||
| Receipt of a Session Termination Response Message completes the tear- | Receipt of a Session Termination Response Message completes the tear- | |||
| down of the DLEP session. | down of the DLEP session Section 4.4. | |||
| 9.11. Destination Up Message | 9.11. Destination Up Message | |||
| Destination Up Messages are sent by a modem to inform its attached | Destination Up Messages MAY be sent by a modem to inform its attached | |||
| router of the presence of a new reachable destination. | router of the presence of a new reachable destination. | |||
| To construct a Destination Up Message, the Message Type value in the | To construct a Destination Up Message, the Message Type value in the | |||
| Message Header is set to 7, from Table 2. | Message Header is set to 7, from Table 2. | |||
| The Destination Up Message MUST contain a MAC Address Data Item | The Destination Up Message MUST contain a MAC Address Data Item | |||
| (Section 10.7). | (Section 10.7). | |||
| The Destination Up Message SHOULD contain one or more of the | The Destination Up Message SHOULD contain one or more of each of the | |||
| following Data Items, with different values: | following Data Items, with different values: | |||
| o IPv4 Address (Section 10.8) | o IPv4 Address (Section 10.8) | |||
| o IPv6 Address (Section 10.9) | o IPv6 Address (Section 10.9) | |||
| The Destination Up Message MAY contain one of each of the following | The Destination Up Message MAY contain one of each of the following | |||
| Data Items: | Data Items: | |||
| o Maximum Data Rate (Receive) (Section 10.12) | o Maximum Data Rate (Receive) (Section 10.12) | |||
| o Maximum Data Rate (Transmit) (Section 10.13) | o Maximum Data Rate (Transmit) (Section 10.13) | |||
| o Current Data Rate (Receive) (Section 10.14) | o Current Data Rate (Receive) (Section 10.14) | |||
| o Current Data Rate (Transmit) (Section 10.15) | o Current Data Rate (Transmit) (Section 10.15) | |||
| skipping to change at page 27, line 28 ¶ | skipping to change at page 27, line 13 ¶ | |||
| Data Items, if the Data Item is in use by the session: | Data Items, if the Data Item is in use by the session: | |||
| o Resources (Section 10.17) | o Resources (Section 10.17) | |||
| o Relative Link Quality (Receive) (Section 10.18) | o Relative Link Quality (Receive) (Section 10.18) | |||
| o Relative Link Quality (Transmit) (Section 10.19) | o Relative Link Quality (Transmit) (Section 10.19) | |||
| o Maximum Transmission Unit (MTU) (Section 10.20) | o Maximum Transmission Unit (MTU) (Section 10.20) | |||
| The Destination Up Message MAY contain one or more of the following | The Destination Up Message MAY contain one or more of each of the | |||
| Data Items, with different values: | following Data Items, with different values: | |||
| o IPv4 Attached Subnet (Section 10.10) | o IPv4 Attached Subnet (Section 10.10) | |||
| o IPv6 Attached Subnet (Section 10.11) | o IPv6 Attached Subnet (Section 10.11) | |||
| A router receiving a Destination Up Message allocates the necessary | A router receiving a Destination Up Message allocates the necessary | |||
| resources, creating an entry in the information base with the | resources, creating an entry in the information base with the | |||
| specifics (i.e. MAC Address, Latency, Data Rate, etc.) of the | specifics (MAC Address, Latency, Data Rate, etc.) of the destination. | |||
| destination. The information about this destination will persist in | The information about this destination will persist in the router's | |||
| the router's information base until a Destination Down Message | information base until a Destination Down Message (Section 9.15) is | |||
| (Section 9.15) is received, indicating that the modem has lost | received, indicating that the modem has lost contact with the remote | |||
| contact with the remote node, or the implementation transitions to | node, or the implementation transitions to the Session Termination | |||
| the Session Termination state. | state. | |||
| 9.12. Destination Up Response Message | 9.12. Destination Up Response Message | |||
| A router MUST send a Destination Up Response Message when a | A router MUST send a Destination Up Response Message when a | |||
| Destination Up Message (Section 9.11) is received. | Destination Up Message (Section 9.11) is received. | |||
| To construct a Destination Up Response Message, the Message Type | To construct a Destination Up Response Message, the Message Type | |||
| value in the Message Header is set to 8, from Table 2. | value in the Message Header is set to 8, from Table 2. | |||
| The Destination Up Response Message MUST contain one of each of the | The Destination Up Response Message MUST contain one of each of the | |||
| skipping to change at page 28, line 19 ¶ | skipping to change at page 27, line 51 ¶ | |||
| o Status (Section 10.1) | o Status (Section 10.1) | |||
| A router that wishes to receive further information concerning the | A router that wishes to receive further information concerning the | |||
| destination identified in the corresponding Destination Up Message | destination identified in the corresponding Destination Up Message | |||
| 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 4. | 'Success', see Table 4. | |||
| 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 100 '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 9.15) or Destination Update | e.g. Destination Down (Section 9.15) or Destination Update | |||
| (Section 9.17) with the same MAC address. | (Section 9.17) with the same MAC address. | |||
| 9.13. Destination Announce Message | 9.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 9.11) to the router. | a corresponding Destination Up Message (Section 9.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 | |||
| a router to announce such an interest. | a router to announce such an interest. | |||
| A Destination Announce Message MAY also be used by a router to | A Destination Announce Message MAY also be sent by a router to | |||
| request information concerning a destination in which it has | request information concerning a destination in which it has | |||
| previously declined interest, via the 100 'Not Interested' status | previously declined interest, via the 1 'Not Interested' status code | |||
| code in a Destination Up Response Message (Section 9.12), see Table | in a Destination Up Response Message (Section 9.12), see Table 4, or | |||
| 4, or declared as 'down', via the Destination Down Message | declared as 'down', via the Destination Down Message (Section 9.15). | |||
| (Section 9.15). | ||||
| To construct a Destination Announce Message, the Message Type value | To construct a Destination Announce Message, the Message Type value | |||
| in the Message Header is set to 9, from Table 2. | in the Message Header is set to 9, from Table 2. | |||
| The Destination Announce Message MUST contain a MAC Address Data Item | The Destination Announce Message MUST contain a MAC Address Data Item | |||
| (Section 10.7). | (Section 10.7). | |||
| The Destination Announce Message MAY contain zero or more of the | The Destination Announce Message MAY contain zero or more of the | |||
| following Data Items, with different values: | following Data Items, with different values: | |||
| skipping to change at page 30, line 4 ¶ | skipping to change at page 29, line 36 ¶ | |||
| o Latency (Section 10.16) | o Latency (Section 10.16) | |||
| The Destination Announce Response Message MAY contain one of each of | The Destination Announce Response Message MAY contain one of each of | |||
| the following Data Items, if the Data Item is in use by the session: | the following Data Items, if the Data Item is in use by the session: | |||
| o Resources (Section 10.17) | o Resources (Section 10.17) | |||
| o Relative Link Quality (Receive) (Section 10.18) | o Relative Link Quality (Receive) (Section 10.18) | |||
| o Relative Link Quality (Transmit) (Section 10.19) | o Relative Link Quality (Transmit) (Section 10.19) | |||
| o Maximum Transmission Unit (MTU) (Section 10.20) | o Maximum Transmission Unit (MTU) (Section 10.20) | |||
| If a modem is unable to report information immediately about the | If a modem is unable to report information immediately about the | |||
| requested information, if the destination is not currently reachable, | requested information, if the destination is not currently reachable, | |||
| for example, the status code in the Status Data Item MUST be set to | for example, the status code in the Status Data Item MUST be set to 2 | |||
| 101 'Request Denied', see Table 4. | 'Request Denied', see Table 4. | |||
| After sending a Destination Announce Response Message containing a | After sending a Destination Announce Response Message containing a | |||
| Status Data Item with status code of 0 'Success', a modem then | Status Data Item with status code of 0 'Success', a modem then | |||
| announces changes to the link to the destination via Destination | announces changes to the link to the destination via Destination | |||
| Update Messages. | Update Messages. | |||
| When a successful Destination Announce Response Message is received, | When a successful Destination Announce Response Message is received, | |||
| the router should add knowledge of the available destination to its | the router should add knowledge of the available destination to its | |||
| information base. | information base. | |||
| skipping to change at page 30, line 36 ¶ | skipping to change at page 30, line 21 ¶ | |||
| A router MAY send a Destination Down Message to report when it no | A router MAY send a Destination Down Message to report when it no | |||
| longer requires information concerning a destination. | longer requires information concerning a destination. | |||
| To construct a Destination Down Message, the Message Type value in | To construct a Destination Down Message, the Message Type value in | |||
| the Message Header is set to 11, from Table 2. | the Message Header is set to 11, from Table 2. | |||
| The Destination Down Message MUST contain a MAC Address Data Item | The Destination Down Message MUST contain a MAC Address Data Item | |||
| (Section 10.7). | (Section 10.7). | |||
| It should be noted that both modem and router may send a Destination | It should be noted that both modem and router may send a Destination | |||
| Down Message to their peer, regardless of which peer initially | Down Message to their peer, regardless of which participant initially | |||
| indicated the destination to be 'up'. | indicated the destination to be 'up'. | |||
| 9.16. Destination Down Response Message | 9.16. Destination Down Response Message | |||
| A Destination Down Response MUST be sent by the recipient of a | A Destination Down Response MUST be sent by the recipient of a | |||
| Destination Down Message (Section 9.15) to confirm that the relevant | Destination Down Message (Section 9.15) to confirm that the relevant | |||
| data concerning the destination has been removed from the information | data concerning the destination has been removed from the information | |||
| base. | base. | |||
| To construct a Destination Down Response Message, the Message Type | To construct a Destination Down Response Message, the Message Type | |||
| skipping to change at page 31, line 50 ¶ | skipping to change at page 31, line 34 ¶ | |||
| following Data Items, if the Data Item is in use by the session: | following Data Items, if the Data Item is in use by the session: | |||
| o Resources (Section 10.17) | o Resources (Section 10.17) | |||
| o Relative Link Quality (Receive) (Section 10.18) | o Relative Link Quality (Receive) (Section 10.18) | |||
| o Relative Link Quality (Transmit) (Section 10.19) | o Relative Link Quality (Transmit) (Section 10.19) | |||
| o Maximum Transmission Unit (MTU) (Section 10.20) | o Maximum Transmission Unit (MTU) (Section 10.20) | |||
| The Destination Update Message MAY contain one or more of the | The Destination Update Message MAY contain one or more of each of the | |||
| following Data Items, with different values: | following Data Items, with different values: | |||
| o IPv4 Address (Section 10.8) | o IPv4 Address (Section 10.8) | |||
| o IPv6 Address (Section 10.9) | o IPv6 Address (Section 10.9) | |||
| o IPv4 Attached Subnet (Section 10.10) | o IPv4 Attached Subnet (Section 10.10) | |||
| o IPv6 Attached Subnet (Section 10.11) | o IPv6 Attached Subnet (Section 10.11) | |||
| If metrics are supplied with the Message (e.g., Resources), these | ||||
| metrics are MUST be applied to all destinations identified in the | ||||
| Message. Note that this may overwrite metrics provided in a | ||||
| previously received Session or Destination Up Messages. | ||||
| It should be noted that this Message has no corresponding response. | It should be noted that this Message has no corresponding response. | |||
| 9.18. Link Characteristics Request Message | 9.18. Link Characteristics Request Message | |||
| The Link Characteristics Request Message MAY be sent by a router to | The Link Characteristics Request Message MAY be sent by a router to | |||
| request that the modem initiate changes for specific characteristics | request that the modem initiate changes for specific characteristics | |||
| of the link. The request can reference either a real destination | of the link. The request can reference either a real destination | |||
| (e.g., a remote node), or a logical destination (e.g., a multicast | (e.g., a remote node), or a logical destination (e.g., a multicast | |||
| group) within the network. | group) within the network. | |||
| skipping to change at page 32, line 42 ¶ | skipping to change at page 32, line 32 ¶ | |||
| each of the following Data Items: | each of the following Data Items: | |||
| o Current Data Rate (Receive) (Section 10.14) | o Current Data Rate (Receive) (Section 10.14) | |||
| o Current Data Rate (Transmit) (Section 10.15) | o Current Data Rate (Transmit) (Section 10.15) | |||
| o Latency (Section 10.16) | o Latency (Section 10.16) | |||
| The Link Characteristics Request Message MAY contain either a Current | The Link Characteristics Request Message MAY contain either a Current | |||
| Data Rate (CDRR or CDRT) Data Item to request a different datarate | Data Rate (CDRR or CDRT) Data Item to request a different datarate | |||
| than what is currently allocated, a Latency Data Item to request that | than is currently allocated, a Latency Data Item to request that | |||
| traffic delay on the link not exceed the specified value, or both. | traffic delay on the link not exceed the specified value, or both. | |||
| The router sending a Link Characteristics Request Message should be | The router sending a Link Characteristics Request Message should be | |||
| aware that a request may take an extended period of time to complete. | aware that a request may take an extended period of time to complete. | |||
| 9.19. Link Characteristics Response Message | 9.19. Link Characteristics Response Message | |||
| A modem MUST send a Link Characteristics Response Message when a Link | A modem MUST send a Link Characteristics Response Message when a Link | |||
| Characteristics Request Message (Section 9.18) is received. | Characteristics Request Message (Section 9.18) is received. | |||
| skipping to change at page 34, line 7 ¶ | skipping to change at page 33, line 37 ¶ | |||
| The Link Characteristics Response Message MUST contain a complete set | The Link Characteristics Response Message MUST contain a complete set | |||
| of metric Data Items, referencing all metrics declared in the Session | of metric Data Items, referencing all metrics declared in the Session | |||
| Initialization Response Message (Section 9.6). The values in the | Initialization Response Message (Section 9.6). The values in the | |||
| metric Data Items in the Link Characteristics Response Message MUST | metric Data Items in the Link Characteristics Response Message MUST | |||
| reflect the link characteristics after the request has been | reflect the link characteristics after the request has been | |||
| processed. | processed. | |||
| If an implementation is not able to alter the characteristics of the | If an implementation is not able to alter the characteristics of the | |||
| link in the manner requested, then the status code of the Status Data | link in the manner requested, then the status code of the Status Data | |||
| Item MUST be set to 101 'Request Denied', see Table 4. | Item MUST be set to 2 'Request Denied', see Table 4. | |||
| 9.20. Heartbeat Message | 9.20. Heartbeat Message | |||
| A Heartbeat Message MUST be sent by a DLEP participant every N | A Heartbeat Message MUST be sent by a DLEP participant every N | |||
| milliseconds, where N is defined in the Heartbeat Interval Data Item | milliseconds, where N is defined in the Heartbeat Interval Data Item | |||
| (Section 10.5) of the Session Initialization Message (Section 9.5) or | (Section 10.5) of the Session Initialization Message (Section 9.5) or | |||
| Session Initialization Response Message (Section 9.6). | Session Initialization Response Message (Section 9.6). | |||
| To construct a Heartbeat Message, the Message Type value in the | To construct a Heartbeat Message, the Message Type value in the | |||
| Message Header is set to 16, from Table 2. | Message Header is set to 16, from Table 2. | |||
| There are no valid Data Items for the Heartbeat Message. | There are no valid Data Items for the Heartbeat Message. | |||
| The Message is used by DLEP peers to detect when a DLEP session peer | The Message is used by DLEP participants to detect when a DLEP | |||
| (either the modem or the router) is no longer communicating. DLEP | session peer (either the modem or the router) is no longer | |||
| participants SHOULD allow two (2) heartbeat intervals to expire with | communicating Section 4.3.1. | |||
| no Messages from the DLEP peer before initiating DLEP session | ||||
| termination procedures. | ||||
| 10. DLEP Data Items | 10. 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: | |||
| skipping to change at page 34, line 52 ¶ | skipping to change at page 34, line 34 ¶ | |||
| | 2 | IPv4 Connection Point (Section 10.2) | | | 2 | IPv4 Connection Point (Section 10.2) | | |||
| | 3 | IPv6 Connection Point (Section 10.3) | | | 3 | IPv6 Connection Point (Section 10.3) | | |||
| | 4 | Peer Type (Section 10.4) | | | 4 | Peer Type (Section 10.4) | | |||
| | 5 | Heartbeat Interval (Section 10.5) | | | 5 | Heartbeat Interval (Section 10.5) | | |||
| | 6 | Extensions Supported (Section 10.6) | | | 6 | Extensions Supported (Section 10.6) | | |||
| | 7 | MAC Address (Section 10.7) | | | 7 | MAC Address (Section 10.7) | | |||
| | 8 | IPv4 Address (Section 10.8) | | | 8 | IPv4 Address (Section 10.8) | | |||
| | 9 | IPv6 Address (Section 10.9) | | | 9 | IPv6 Address (Section 10.9) | | |||
| | 10 | IPv4 Attached Subnet (Section 10.10) | | | 10 | IPv4 Attached Subnet (Section 10.10) | | |||
| | 11 | IPv6 Attached Subnet (Section 10.11) | | | 11 | IPv6 Attached Subnet (Section 10.11) | | |||
| | 12 | Maximum Data Rate (Receive) MDRR) (Section | | | 12 | Maximum Data Rate (Receive) (MDRR) (Section | | |||
| | | 10.12) | | | | 10.12) | | |||
| | 13 | Maximum Data Rate (Transmit) (MDRT) (Section | | | 13 | Maximum Data Rate (Transmit) (MDRT) (Section | | |||
| | | 10.13) | | | | 10.13) | | |||
| | 14 | Current Data Rate (Receive) (CDRR) (Section | | | 14 | Current Data Rate (Receive) (CDRR) (Section | | |||
| | | 10.14) | | | | 10.14) | | |||
| | 15 | Current Data Rate (Transmit) (CDRT) (Section | | | 15 | Current Data Rate (Transmit) (CDRT) (Section | | |||
| | | 10.15) | | | | 10.15) | | |||
| | 16 | Latency (Section 10.16) | | | 16 | Latency (Section 10.16) | | |||
| | 17 | Resources (RES) (Section 10.17) | | | 17 | Resources (RES) (Section 10.17) | | |||
| | 18 | Relative Link Quality (Receive) (RLQR) | | | 18 | Relative Link Quality (Receive) (RLQR) | | |||
| skipping to change at page 35, line 35 ¶ | skipping to change at page 35, line 17 ¶ | |||
| 10.1. Status | 10.1. Status | |||
| For the Session Termination Message (Section 9.9), the Status Data | For the Session Termination Message (Section 9.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. | |||
| The Status Data Item includes an optional Text field that can be used | The Status Data Item includes an optional Text field that can be used | |||
| to provide a textual description of the status. The use of the Text | to provide a textual description of the status. The use of the Text | |||
| field is entirely up to the receiving implementation, i.e., it could | field is entirely up to the receiving implementation, e.g., it could | |||
| be output to a log file or discarded. If no Text field is supplied | be output to a log file or discarded. If no Text field is supplied | |||
| with the Status Data Item, the Length field MUST be set to 1. | with the Status Data Item, the Length field MUST be set to 1. | |||
| The Status Data Item contains the following fields: | The Status Data Item 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Data Item Type | Length | | | Data Item Type | Length | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| skipping to change at page 36, line 4 ¶ | skipping to change at page 35, line 34 ¶ | |||
| 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 | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Code | Text... : | | Code | Text... : | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Data Item Type: 1 | Data Item Type: 1 | |||
| Length: 1 + Length of text, in octets | Length: 1 + Length of text, in octets | |||
| Status Code: One of the codes defined in Table 4 below. | Status Code: One of the codes defined in Table 4 below. | |||
| 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 Code | Value | Failure | Reason | | | Status | Failure | Description | Reason | | |||
| | | | Mode | | | | Code | Mode | | | | |||
| +---------------+---------+-----------+-----------------------------+ | +---------+-----------+---------------+-----------------------------+ | |||
| | Success | 0 | Success | The Message was processed | | | 0 | Continue | Success | The Message was processed | | |||
| | | | | successfully. | | | | | | successfully. | | |||
| | Unknown | 1 | Terminate | The Message was not | | | 1 | Continue | Not | The receiver is not | | |||
| | Message | | | recognized by the | | | | | Interested | interested in this Message | | |||
| | | | | implementation. | | | | | | subject, e.g. in a | | |||
| | Unexpected | 2 | Terminate | The Message was not | | | | | | Destination Up Response | | |||
| | Message | | | expected while the device | | | | | | Message (Section 9.12) to | | |||
| | | | | was in the current state, | | | | | | indicate no further | | |||
| | | | | e.g., a Session | | | | | | Messages about the | | |||
| | | | | Initialization Message | | | | | | destination. | | |||
| | | | | (Section 9.5) in the In- | | | 2 | Continue | Request | The receiver refuses to | | |||
| | | | | Session state. | | | | | Denied | complete the request. | | |||
| | Invalid Data | 3 | Terminate | One or more Data Items in | | | 3-111 | Continue | <Reserved> | Reserved for future | | |||
| | | | | the Message are invalid, | | | | | | extensions. | | |||
| | | | | unexpected or incorrectly | | | 112-127 | Continue | <Private Use> | Available for experiments. | | |||
| | | | | duplicated. | | | 128 | Terminate | Unknown | The Message was not | | |||
| | Invalid | 4 | Terminate | The destination included in | | | | | Message | recognized by the | | |||
| | Destination | | | the Message does not match | | | | | | implementation. | | |||
| | | | | a previously announced | | | 129 | Terminate | Unexpected | The Message was not | | |||
| | | | | destination. For example, | | | | | Message | expected while the device | | |||
| | | | | in the Link Characteristic | | | | | | was in the current state, | | |||
| | | | | Response Message (Section | | | | | | e.g., a Session | | |||
| | | | | 9.19). | | | | | | Initialization Message | | |||
| | Timed Out | 5 | Terminate | The session has timed out. | | | | | | (Section 9.5) in the In- | | |||
| | <Reserved> | 6-90 | Terminate | Reserved for future | | | | | | Session state. | | |||
| | | | | extensions. | | | 130 | Terminate | Invalid Data | One or more Data Items in | | |||
| | <Private Use> | 91-99 | Terminate | Available for experiments. | | | | | | the Message are invalid, | | |||
| | Not | 100 | Continue | The receiver is not | | | | | | unexpected or incorrectly | | |||
| | Interested | | | interested in this Message | | | | | | duplicated. | | |||
| | | | | subject, e.g. in a | | | 131 | Terminate | Invalid | The destination included in | | |||
| | | | | Destination Up Response | | | | | Destination | the Message does not match | | |||
| | | | | Message (Section 9.12) to | | | | | | a previously announced | | |||
| | | | | indicate no further | | | | | | destination. For example, | | |||
| | | | | Messages about the | | | | | | in the Link Characteristic | | |||
| | | | | destination. | | | | | | Response Message (Section | | |||
| | Request | 101 | Continue | The receiver refuses to | | | | | | 9.19). | | |||
| | Denied | | | complete the request. | | | 132 | Terminate | Timed Out | The session has timed out. | | |||
| | <Reserved> | 102-243 | Continue | Reserved for future | | | 133-239 | Terminate | <Reserved> | Reserved for future | | |||
| | | | | extensions. | | | | | | extensions. | | |||
| | <Private Use> | 244-254 | Continue | Available for experiments. | | | 240-254 | Terminate | <Private Use> | Available for experiments. | | |||
| | <Reserved> | 255 | Terminate | Reserved. | | | 255 | Terminate | <Reserved> | Reserved. | | |||
| +---------------+---------+-----------+-----------------------------+ | +---------+-----------+---------------+-----------------------------+ | |||
| Table 4: DLEP Status Codes | Table 4: DLEP Status Codes | |||
| 10.2. IPv4 Connection Point | 10.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 39, line 17 ¶ | skipping to change at page 39, line 8 ¶ | |||
| 0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 | |||
| +-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| | Reserved | | | Reserved | | |||
| +-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| Reserved: MUST be zero. Reserved for future use. | Reserved: MUST be zero. Reserved for future use. | |||
| 10.4. Peer Type | 10.4. Peer Type | |||
| The Peer Type Data Item is used by the router and modem to give | The Peer Type Data Item is used by the router and modem to give | |||
| additional information as to its type. The peer type is a string and | additional information as to its type. The Peer Type is a string and | |||
| is envisioned to be used for informational purposes (e.g., as output | is envisioned to be used for informational purposes (e.g., as output | |||
| in a display command). | in a display command). | |||
| The Peer Type Data Item contains the following fields: | The Peer Type Data Item 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Data Item Type | Length | | | Data Item Type | Length | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Peer Type... : | | Peer Type... : | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Data Item Type: 4 | Data Item Type: 4 | |||
| Length: Length of peer type string, in octets. | Length: Length of Peer Type string, in octets. | |||
| Peer Type: UTF-8 encoded string of UNICODE [UNIV8] characters. For | Peer Type: UTF-8 encoded string of UNICODE [UNIV8] characters. For | |||
| example, a satellite modem might set this variable to "Satellite | example, a satellite modem might set this variable to "Satellite | |||
| terminal". Since this Data Item is intended to provide additional | terminal". Since this Data Item is intended to provide additional | |||
| information for display commands, sending implementations SHOULD | information for display commands, sending implementations SHOULD | |||
| limit the data to printable characters, and receiving | limit the data to printable characters, and receiving | |||
| implementations SHOULD check the data for printable characters. | implementations SHOULD check the data for printable characters. | |||
| An implementation MUST NOT assume the Peer Type field is NUL- | An implementation MUST NOT assume the Peer Type field is NUL- | |||
| terminated. | terminated. | |||
| skipping to change at page 44, line 4 ¶ | skipping to change at page 43, line 37 ¶ | |||
| 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 | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Flags | IPv4 Attached Subnet : | | Flags | IPv4 Attached Subnet : | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| : ...cont. |Prefix Length | | : ...cont. |Prefix Length | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Data Item Type: 10 | Data Item Type: 10 | |||
| Length: 6 | Length: 6 | |||
| Flags: Flags field, defined below. | Flags: Flags field, defined below. | |||
| IPv4 Subnet: The IPv4 subnet reachable at the destination. | IPv4 Subnet: The IPv4 subnet reachable at the destination. | |||
| Prefix Length: Length of the prefix (1-32) for the IPv4 subnet. A | Prefix Length: Length of the prefix (0-32) for the IPv4 subnet. A | |||
| prefix length outside the specified range MUST be considered as | prefix length outside the specified range MUST be considered as | |||
| invalid. | invalid. | |||
| The Flags field is defined as: | The Flags field is defined as: | |||
| 0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 | |||
| +-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| | Reserved |A| | | Reserved |A| | |||
| +-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| skipping to change at page 45, line 4 ¶ | skipping to change at page 44, line 41 ¶ | |||
| | Flags | IPv6 Attached Subnet : | | Flags | IPv6 Attached Subnet : | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| : IPv6 Attached Subnet : | : IPv6 Attached Subnet : | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| : IPv6 Attached Subnet : | : IPv6 Attached Subnet : | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| : IPv6 Attached Subnet : | : IPv6 Attached Subnet : | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| : ...cont. | Prefix Len. | | : ...cont. | Prefix Len. | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Data Item Type: 11 | Data Item Type: 11 | |||
| Length: 18 | Length: 18 | |||
| Flags: Flags field, defined below. | Flags: Flags field, defined below. | |||
| IPv6 Attached Subnet: The IPv6 subnet reachable at the destination. | IPv6 Attached Subnet: The IPv6 subnet reachable at the destination. | |||
| Prefix Length: Length of the prefix (1-128) for the IPv6 subnet. A | Prefix Length: Length of the prefix (0-128) for the IPv6 subnet. A | |||
| prefix length outside the specified range MUST be considered as | prefix length outside the specified range MUST be considered as | |||
| invalid. | invalid. | |||
| The Flags field is defined as: | The Flags field is defined as: | |||
| 0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 | |||
| +-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| | Reserved |A| | | Reserved |A| | |||
| +-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| skipping to change at page 47, line 18 ¶ | skipping to change at page 47, line 5 ¶ | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Data Item Type: 14 | Data Item Type: 14 | |||
| Length: 8 | Length: 8 | |||
| Current Data Rate (Receive): A 64-bit unsigned integer, representing | Current Data Rate (Receive): A 64-bit unsigned integer, representing | |||
| the current data rate, in bits per second, that can currently be | the current data rate, in bits per second, that can currently be | |||
| achieved while receiving traffic on the link. | achieved while receiving traffic on the link. | |||
| If there is no distinction between current and maximum receive data | If there is no distinction between Current Data Rate (Receive) and | |||
| rates, current data rate receive MUST be set equal to the maximum | Maximum Data Rate (Receive) (Section 10.12), Current Data Rate | |||
| data rate receive. | (Receive) MUST be set equal to the Maximum Data Rate (Receive). The | |||
| Current Data Rate (Receive) MUST NOT exceed the Maximum Data Rate | ||||
| (Receive). | ||||
| 10.15. Current Data Rate (Transmit) | 10.15. Current Data Rate (Transmit) | |||
| The Current Data Rate (Transmit) (CDRT) Data Item is used to indicate | The Current Data Rate (Transmit) (CDRT) Data Item is used to indicate | |||
| the rate at which the link is currently operating for transmitting | the rate at which the link is currently operating for transmitting | |||
| traffic. | traffic. | |||
| When used in the Link Characteristics Request Message (Section 9.18), | When used in the Link Characteristics Request Message (Section 9.18), | |||
| Current Data Rate (Transmit) represents the desired transmit rate, in | Current Data Rate (Transmit) represents the desired transmit rate, in | |||
| bits per second, on the link. | bits per second, on the link. | |||
| skipping to change at page 48, line 5 ¶ | skipping to change at page 47, line 42 ¶ | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Data Item Type: 15 | Data Item Type: 15 | |||
| Length: 8 | Length: 8 | |||
| Current Data Rate (Transmit): A 64-bit unsigned integer, | Current Data Rate (Transmit): A 64-bit unsigned integer, | |||
| representing the current data rate, in bits per second, that can | representing the current data rate, in bits per second, that can | |||
| currently be achieved while transmitting traffic on the link. | currently be achieved while transmitting traffic on the link. | |||
| If there is no distinction between current and maximum transmit data | If there is no distinction between Current Data Rate (Transmit) and | |||
| rates, current data rate transmit MUST be set equal to the maximum | Maximum Data Rate (Transmit) (Section 10.13), Current Data Rate | |||
| data rate transmit. | (Transmit) MUST be set equal to the Maximum Data Rate (Transmit). | |||
| The Current Data Rate (Transmit) MUST NOT exceed the Maximum Data | ||||
| Rate (Transmit). | ||||
| 10.16. Latency | 10.16. Latency | |||
| The Latency Data Item is used to indicate the amount of latency, in | The Latency Data Item is used to indicate the amount of latency, in | |||
| microseconds, on the link. | microseconds, on the link. | |||
| The Latency value is reported as transmission delay. The calculation | The Latency value is reported as transmission delay. The calculation | |||
| of latency is implementation dependent. For example, the latency may | of latency is implementation dependent. For example, the latency may | |||
| be a running average calculated from the internal queuing. | be a running average calculated from the internal queuing. | |||
| skipping to change at page 49, line 23 ¶ | skipping to change at page 49, line 21 ¶ | |||
| +-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| Data Item Type: 17 | Data Item Type: 17 | |||
| Length: 1 | Length: 1 | |||
| Resources: An 8-bit unsigned integer percentage, 0-100, representing | Resources: An 8-bit unsigned integer percentage, 0-100, representing | |||
| the amount of resources available. Any value greater than 100 | the amount of resources available. Any value greater than 100 | |||
| MUST be considered as invalid. | MUST be considered as invalid. | |||
| If a device cannot calculate Resources, this Data Item SHOULD NOT be | If a device cannot calculate Resources, this Data Item MUST NOT be | |||
| issued. | issued. | |||
| 10.18. Relative Link Quality (Receive) | 10.18. Relative Link Quality (Receive) | |||
| The Relative Link Quality (Receive) (RLQR) Data Item is used to | The Relative Link Quality (Receive) (RLQR) Data Item is used to | |||
| indicate the quality of the link to a destination for receiving | indicate the quality of the link to a destination for receiving | |||
| traffic as a percentage, with 0 meaning 'worst quality', and 100 | traffic, with 0 meaning 'worst quality', and 100 meaning 'best | |||
| meaning 'best quality'. | quality'. | |||
| Quality in this context is defined as an indication of the stability | Quality in this context is defined as an indication of the stability | |||
| of a link for reception; a destination with high Relative Link | of a link for reception; a destination with high Relative Link | |||
| Quality (Receive) is expected to have generally stable DLEP metrics, | Quality (Receive) is expected to have generally stable DLEP metrics, | |||
| and the metrics of a destination with low Relative Link Quality | and the metrics of a destination with low Relative Link Quality | |||
| (Receive) can be expected to rapidly fluctuate over a wide range. | (Receive) can be expected to rapidly fluctuate over a wide range. | |||
| The Relative Link Quality (Receive) Data Item contains the following | The Relative Link Quality (Receive) Data Item contains the following | |||
| fields: | fields: | |||
| skipping to change at page 50, line 10 ¶ | skipping to change at page 50, line 10 ¶ | |||
| Data Item Type: 18 | Data Item Type: 18 | |||
| Length: 1 | Length: 1 | |||
| Relative Link Quality (Receive): A non-dimensional unsigned 8-bit | Relative Link Quality (Receive): A non-dimensional unsigned 8-bit | |||
| integer, 0-100, representing relative quality of the link for | integer, 0-100, representing relative quality of the link for | |||
| receiving traffic. Any value greater than 100 MUST be considered | receiving traffic. Any value greater than 100 MUST be considered | |||
| as invalid. | as invalid. | |||
| If a device cannot calculate the Relative Link Quality (Receive), | If a device cannot calculate the Relative Link Quality (Receive), | |||
| this Data Item SHOULD NOT be issued. | this Data Item MUST NOT be issued. | |||
| 10.19. Relative Link Quality (Transmit) | 10.19. Relative Link Quality (Transmit) | |||
| The Relative Link Quality (Transmit) (RLQT) Data Item is used to | The Relative Link Quality (Transmit) (RLQT) Data Item is used to | |||
| indicate the quality of the link to a destination for transmitting | indicate the quality of the link to a destination for transmitting | |||
| traffic as a percentage, with 0 meaning 'worst quality', and 100 | traffic, with 0 meaning 'worst quality', and 100 meaning 'best | |||
| meaning 'best quality'. | quality'. | |||
| Quality in this context is defined as an indication of the stability | Quality in this context is defined as an indication of the stability | |||
| of a link for transmission; a destination with high Relative Link | of a link for transmission; a destination with high Relative Link | |||
| Quality (Transmit) is expected to have generally stable DLEP metrics, | Quality (Transmit) is expected to have generally stable DLEP metrics, | |||
| and the metrics of a destination with low Relative Link Quality | and the metrics of a destination with low Relative Link Quality | |||
| (Transmit) can be expected to rapidly fluctuate over a wide range. | (Transmit) can be expected to rapidly fluctuate over a wide range. | |||
| The Relative Link Quality (Transmit) Data Item contains the following | The Relative Link Quality (Transmit) Data Item contains the following | |||
| fields: | fields: | |||
| skipping to change at page 50, line 46 ¶ | skipping to change at page 50, line 46 ¶ | |||
| Data Item Type: 19 | Data Item Type: 19 | |||
| Length: 1 | Length: 1 | |||
| Relative Link Quality (Transmit): A non-dimensional unsigned 8-bit | Relative Link Quality (Transmit): A non-dimensional unsigned 8-bit | |||
| integer, 0-100, representing relative quality of the link for | integer, 0-100, representing relative quality of the link for | |||
| transmitting traffic. Any value greater than 100 MUST be | transmitting traffic. Any value greater than 100 MUST be | |||
| considered as invalid. | considered as invalid. | |||
| If a device cannot calculate the Relative Link Quality (Transmit), | If a device cannot calculate the Relative Link Quality (Transmit), | |||
| this Data Item SHOULD NOT be issued. | this Data Item MUST NOT be issued. | |||
| 10.20. Maximum Transmission Unit (MTU) | 10.20. Maximum Transmission Unit (MTU) | |||
| The Maximum Transmission Unit (MTU) Data Item is used to indicate the | The Maximum Transmission Unit (MTU) Data Item is used to indicate the | |||
| maximum size, in octets, of an IP packet that can be transmitted | maximum size, in octets, of an IP packet that can be transmitted | |||
| without fragmentation, including headers, but excluding any lower | without fragmentation, including headers, but excluding any lower | |||
| layer headers. | layer headers. | |||
| The Maximum Transmission Unit Data Item contains the following | The Maximum Transmission Unit Data Item contains the following | |||
| fields: | fields: | |||
| skipping to change at page 51, line 27 ¶ | skipping to change at page 51, line 27 ¶ | |||
| Data Item Type: 20 | Data Item Type: 20 | |||
| Length: 2 | Length: 2 | |||
| Maximum Transmission Unit: The maximum size, in octets, of an IP | Maximum Transmission Unit: The maximum size, in octets, of an IP | |||
| packet that can be transmitted without fragmentation, including | packet that can be transmitted without fragmentation, including | |||
| headers, but excluding any lower layer headers. | headers, but excluding any lower layer headers. | |||
| If a device cannot calculate the Maximum Transmission Unit, this Data | If a device cannot calculate the Maximum Transmission Unit, this Data | |||
| Item SHOULD NOT be issued. | Item MUST NOT be issued. | |||
| 11. Security Considerations | 11. Security Considerations | |||
| The potential security concerns when using DLEP are: | The potential security concerns when using DLEP are: | |||
| 1. An attacker might pretend to be a DLEP peer, either at DLEP | 1. An attacker might pretend to be a DLEP participant, either at | |||
| session initialization, or by injection of DLEP Messages once a | DLEP session initialization, or by injection of DLEP Messages | |||
| 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 and | |||
| /or encryption of traffic MUST take steps to secure the Layer 2 link. | /or encryption of traffic MUST take steps to secure the Layer 2 link. | |||
| Examples of technologies that can be deployed to secure the Layer 2 | Examples of technologies that can be deployed to secure the Layer 2 | |||
| link include [IEEE-802.1AE] and [IEEE-802.1X]. | link include [IEEE-802.1AE] and [IEEE-802.1X]. | |||
| skipping to change at page 52, line 15 ¶ | skipping to change at page 52, line 15 ¶ | |||
| 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. | |||
| 12. IANA Considerations | 12. IANA Considerations | |||
| This section specifies requests to IANA. | This section specifies requests to IANA. | |||
| 12.1. Registrations | 12.1. Registrations | |||
| This specification defines: | Upon approval of this document, IANA is requested to create a new | |||
| protocol registry for Dynamic Link Event Protocol (DLEP). The | ||||
| o A new repository for DLEP Signals, with three (3) values currently | remainder of this section requests the creation of new DLEP specific | |||
| assigned. | registries. | |||
| o Reservation of a Private Use numbering space within the above | ||||
| repository for experimental DLEP Signals. | ||||
| o A new repository for DLEP Messages, with seventeen (17) values | ||||
| currently assigned. | ||||
| o Reservation of a Private Use numbering space within the above | ||||
| repository for experimental DLEP Messages. | ||||
| o A new repository for DLEP Data Items, with twenty one (21) values | ||||
| currently assigned. | ||||
| o Reservation of a Private Use numbering space within the Data Items | ||||
| repository for experimental Data Items. | ||||
| o A new repository for DLEP status codes, with eight (8) currently | ||||
| assigned. | ||||
| o Reservation of a Private Use numbering space within the status | ||||
| codes repository for experimental status codes. | ||||
| o A new repository for DLEP extensions, with one (1) value currently | ||||
| assigned. | ||||
| o Reservation of a Private Use numbering space within the extension | ||||
| repository for experimental extensions. | ||||
| o A request for allocation of a well-known port for DLEP TCP and UDP | ||||
| communication. | ||||
| o A request for allocation of a link-local multicast IPv4 address | ||||
| for DLEP discovery. | ||||
| o A request for allocation of a link-local multicast IPv6 address | ||||
| for DLEP discovery. | ||||
| 12.2. Signal Type Registration | 12.2. Signal Type Registration | |||
| A new repository must be created with the values of the DLEP Signals, | Upon approval of this document, IANA is requested to create a new | |||
| entitled "Signal Type Values for the Dynamic Link Event Protocol | DLEP registry, named "Signal Type Values". | |||
| (DLEP)". The repository is to be managed using the "Specification | ||||
| Required" policy documented in [RFC5226]. | ||||
| All Signal values are in the range [0..65535], defined in Table 1. | The following table provides initial registry values and the | |||
| [RFC5226] defined policies that should apply to the registry: | ||||
| +--------------+-------------------------+ | ||||
| | Type Code | Description/Policy | | ||||
| +--------------+-------------------------+ | ||||
| | 0 | Reserved | | ||||
| | 1 | Peer Discovery Signal | | ||||
| | 2 | Peer Offer Signal | | ||||
| | 3-65519 | Specification Required | | ||||
| | 65520-65534 | Private Use | | ||||
| | 65535 | Reserved | | ||||
| +--------------+-------------------------+ | ||||
| 12.3. Message Type Registration | 12.3. Message Type Registration | |||
| A new repository must be created with the values of the DLEP | Upon approval of this document, IANA is requested to create a new | |||
| Messages, entitled "Message Type Values for the Dynamic Link Event | DLEP registry, named "Message Type Values". | |||
| Protocol (DLEP)". The repository is to be managed using the | ||||
| "Specification Required" policy documented in [RFC5226]. | ||||
| All Message values are in the range [0..65535], defined in Table 2. | The following table provides initial registry values and the | |||
| [RFC5226] defined policies that should apply to the registry: | ||||
| +--------------+------------------------------------------+ | ||||
| | Type Code | Description/Policy | | ||||
| +--------------+------------------------------------------+ | ||||
| | 0 | Reserved | | ||||
| | 1 | Session Initialization Message | | ||||
| | 2 | Session Initialization Response Message | | ||||
| | 3 | Session Update Message | | ||||
| | 4 | Session Update Response Message | | ||||
| | 5 | Session Termination Message | | ||||
| | 6 | Session Termination Response Message | | ||||
| | 7 | Destination Up Message | | ||||
| | 8 | Destination Up Response Message | | ||||
| | 9 | Destination Announce Message | | ||||
| | 10 | Destination Announce Response Message | | ||||
| | 11 | Destination Down Message | | ||||
| | 12 | Destination Down Response Message | | ||||
| | 13 | Destination Update Message | | ||||
| | 14 | Link Characteristics Request Message | | ||||
| | 15 | Link Characteristics Response Message | | ||||
| | 16 | Heartbeat Message | | ||||
| | 17-65519 | Specification Required | | ||||
| | 65520-65534 | Private Use | | ||||
| | 65535 | Reserved | | ||||
| +--------------+------------------------------------------+ | ||||
| 12.4. DLEP Data Item Registrations | 12.4. DLEP Data Item Registrations | |||
| A new repository for DLEP Data Items must be created, entitled "Data | Upon approval of this document, IANA is requested to create a new | |||
| Item Type Values for the Dynamic Link Event Protocol (DLEP)". The | DLEP registry, named "Data Item Values". | |||
| repository is to be managed using the "Specification Required" policy | ||||
| documented in [RFC5226]. | ||||
| All Data Item values are in the range [0..65535], defined in Table 3. | The following table provides initial registry values and the | |||
| [RFC5226] defined policies that should apply to the registry: | ||||
| +--------------+------------------------------------------+ | ||||
| | Type Code | Description/Policy | | ||||
| +--------------+------------------------------------------+ | ||||
| | 0 | Reserved | | ||||
| | 1 | Status | | ||||
| | 2 | IPv4 Connection Point | | ||||
| | 3 | IPv6 Connection Point | | ||||
| | 4 | Peer Type | | ||||
| | 5 | Heartbeat Interval | | ||||
| | 6 | Extensions Supported | | ||||
| | 7 | MAC Address | | ||||
| | 8 | IPv4 Address | | ||||
| | 9 | IPv6 Address | | ||||
| | 10 | IPv4 Attached Subnet | | ||||
| | 11 | IPv6 Attached Subnet | | ||||
| | 12 | Maximum Data Rate (Receive) (MDRR) | | ||||
| | 13 | Maximum Data Rate (Transmit) (MDRT) | | ||||
| | 14 | Current Data Rate (Receive) (CDRR) | | ||||
| | 15 | Current Data Rate (Transmit) (CDRT) | | ||||
| | 16 | Latency | | ||||
| | 17 | Resources (RES) | | ||||
| | 18 | Relative Link Quality (Receive) (RLQR) | | ||||
| | 19 | Relative Link Quality (Transmit) (RLQT) | | ||||
| | 20 | Maximum Transmission Unit (MTU) | | ||||
| | 21-65407 | Specification Required | | ||||
| | 65408-65534 | Private Use | | ||||
| | 65535 | Reserved | | ||||
| +--------------+------------------------------------------+ | ||||
| 12.5. DLEP Status Code Registrations | 12.5. DLEP Status Code Registrations | |||
| A new repository for DLEP status codes must be created, entitled | Upon approval of this document, IANA is requested to create a new | |||
| "Status Code Values for the Dynamic Link Event Protocol (DLEP)". The | DLEP registry, named "Status Code Values". | |||
| repository is to be managed using the "Specification Required" policy | ||||
| documented in [RFC5226]. | ||||
| All status codes are in the range [0..255] , defined in Table 4. | The following table provides initial registry values and the | |||
| [RFC5226] defined policies that should apply to the registry: | ||||
| With the exception of the reserved value 255, all status codes with | +--------------+---------------+-------------------------+ | |||
| values >= 100 are marked as 'Continue' codes, others 'Terminate'. | | Status Code | Failure Mode | Description/Policy | | |||
| +--------------+---------------+-------------------------+ | ||||
| | 0 | Continue | Success | | ||||
| | 1 | Continue | Not Interested | | ||||
| | 2 | Continue | Request Denied | | ||||
| | 3-111 | Continue | Specification Required | | ||||
| | 112-127 | Continue | Private Use | | ||||
| | 128 | Terminate | Unknown Message | | ||||
| | 129 | Terminate | Unexpected Message | | ||||
| | 130 | Terminate | Invalid Data | | ||||
| | 131 | Terminate | Invalid Destination | | ||||
| | 132 | Terminate | Timed Out | | ||||
| | 132-239 | Terminate | Specification Required | | ||||
| | 240-254 | Terminate | Private Use | | ||||
| | 255 | Terminate | Reserved | | ||||
| +--------------+---------------+-------------------------+ | ||||
| 12.6. DLEP Extensions Registrations | 12.6. DLEP Extensions Registrations | |||
| A new repository for DLEP extensions must be created, entitled | Upon approval of this document, IANA is requested to create a new | |||
| "Extension Type Values for the Dynamic Link Event Protocol (DLEP)". | DLEP registry, named "Extension Type Values". | |||
| The repository is to be managed using the "Specification Required" | ||||
| policy documented in [RFC5226]. | ||||
| All extension values are in the range [0..65535]. Current | The following table provides initial registry values and the | |||
| allocations are: | [RFC5226] defined policies that should apply to the registry: | |||
| +--------------+----------------------------------------------+ | +--------------+----------------------------+ | |||
| | Code | Description | | | Code | Description/Policy | | |||
| +--------------+----------------------------------------------+ | +--------------+----------------------------+ | |||
| | 0 | Reserved | | | 0 | Reserved | | |||
| | 1 | Credit Windowing | | | 1 | Credit Windowing [CREDIT] | | |||
| | 2-65519 | Unassigned. Available for future extensions | | | 2-65519 | Specification Required | | |||
| | 65520-65534 | Private Use. Available for experiments | | | 65520-65534 | Private Use | | |||
| | 65535 | Reserved | | | 65535 | Reserved | | |||
| +--------------+----------------------------------------------+ | +--------------+----------------------------+ | |||
| Table 5: DLEP Extension types | Table 5: DLEP Extension types | |||
| 12.7. DLEP Well-known Port | 12.7. DLEP Well-known Port | |||
| It is requested that IANA allocate a single well-known port number | Upon approval of this document, IANA is requested to assign a single | |||
| for both TCP and UDP, for DLEP communication. SCTP port allocation | value in the "Service Name and Transport Protocol Port Number | |||
| is not required. | Registry" found at https://www.iana.org/assignments/service-names- | |||
| port-numbers/service-names-port-numbers.xhtml for use by "DLEP", as | ||||
| defined in this document. This assignment should be valid for TCP | ||||
| and UDP. SCTP port allocation is not required. | ||||
| 12.8. DLEP IPv4 Link-local Multicast Address | 12.8. DLEP IPv4 Link-local Multicast Address | |||
| It is requested that IANA allocate an IPv4 link-local multicast | Upon approval of this document, IANA is requested to assign a IPv4 | |||
| address for DLEP discovery Signals. | multicast address registry found at http://www.iana.org/assignments/ | |||
| multicast-addresses for use as the "IPv4 DLEP Discovery Address". | ||||
| 12.9. DLEP IPv6 Link-local Multicast Address | 12.9. DLEP IPv6 Link-local Multicast Address | |||
| It is requested that IANA allocate an IPv6 link-local multicast | Upon approval of this document, IANA is requested to assign a IPv6 | |||
| address for DLEP discovery Signals. | multicast address registry found at http://www.iana.org/assignments/ | |||
| multicast-addresses for use as the "IPv6 DLEP Discovery Address". | ||||
| 13. Acknowledgements | 13. 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, | |||
| skipping to change at page 55, line 44 ¶ | skipping to change at page 56, line 44 ¶ | |||
| 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---->|| 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. | |||
| | | | | |||
| skipping to change at page 56, line 22 ¶ | skipping to change at page 57, line 22 ¶ | |||
| 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 connect----------> 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. | |||
| skipping to change at page 56, line 44 ¶ | skipping to change at page 57, line 44 ¶ | |||
| |<<============================>>| 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 | | Router connects to discovered or | |||
| | pre-configured Modem Connection | | pre-configured Modem Connection | |||
| |---------TCP connect----------> 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, and will | | Initialization Message, and will | |||
| | not support the advertised | | not support the advertised | |||
| | extensions. | | extensions. | |||
| | | | | |||
| | Modem sends Session Initialization | | Modem sends Session Initialization | |||
| skipping to change at page 59, line 37 ¶ | skipping to change at page 60, line 37 ¶ | |||
| | 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 | |||
| ======================================================================== | ======================================================================== | |||
| ||<----------------------| Router misses a heartbeat | X<----------------------| Router misses a heartbeat | |||
| | ||<----------------------| 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 as above. | : Termination proceeds... | |||
| B.9. Modem Detects a Heartbeat timeout | B.9. Modem Detects a Heartbeat timeout | |||
| Router Modem Message Description | Router Modem Message Description | |||
| ======================================================================== | ======================================================================== | |||
| |---------------------->|| Modem misses a heartbeat | |---------------------->X Modem misses a heartbeat | |||
| |---------------------->|| | 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 as above. | : 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 | | Modem detects a new logical | |||
| | destination is reachable, and | | destination is reachable, and | |||
| End of changes. 141 change blocks. | ||||
| 409 lines changed or deleted | 466 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||