| < draft-ietf-manet-dlep-01.txt | draft-ietf-manet-dlep-02.txt > | |||
|---|---|---|---|---|
| Mobile Ad hoc Networks Working S. Ratliff | Mobile Ad hoc Networks Working S. Ratliff | |||
| Group B. Berry | Group B. Berry | |||
| Internet-Draft G. Harrison | Internet-Draft G. Harrison | |||
| Intended status: Standards Track S. Jury | Intended status: Standards Track D. Satterwhite | |||
| Expires: November 2, 2011 D. Satterwhite | Expires: August 10, 2012 Cisco Systems | |||
| Cisco Systems | S. Jury | |||
| May 2, 2011 | NetApp | |||
| February 6, 2012 | ||||
| Dynamic Link Exchange Protocol (DLEP) | Dynamic Link Exchange Protocol (DLEP) | |||
| draft-ietf-manet-dlep-01 | draft-ietf-manet-dlep-02 | |||
| Abstract | Abstract | |||
| When routing devices rely on modems to effect communications over | When routing devices rely on modems to effect communications over | |||
| wireless links, they need timely and accurate knowledge of the | wireless links, they need timely and accurate knowledge of the | |||
| characteristics of the link (speed, state, etc.) in order to make | characteristics of the link (speed, state, etc.) in order to make | |||
| forwarding decisions. In mobile or other environments where these | forwarding decisions. In mobile or other environments where these | |||
| characteristics change frequently, manual configurations or the | characteristics change frequently, manual configurations or the | |||
| inference of state through routing or transport protocols does not | inference of state through routing or transport protocols does not | |||
| allow the router to make the best decisions. A bidirectional, event- | allow the router to make the best decisions. A bidirectional, event- | |||
| skipping to change at page 1, line 46 ¶ | skipping to change at page 1, line 47 ¶ | |||
| 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." | |||
| The list of current Internet-Drafts can be accessed at | The list of current Internet-Drafts can be accessed at | |||
| http://www.ietf.org/ietf/1id-abstracts.txt. | http://www.ietf.org/ietf/1id-abstracts.txt. | |||
| The list of Internet-Draft Shadow Directories can be accessed at | The list of Internet-Draft Shadow Directories can be accessed at | |||
| http://www.ietf.org/shadow.html. | http://www.ietf.org/shadow.html. | |||
| This Internet-Draft will expire on November 2, 2011 . | This Internet-Draft will expire on August 10, 2012 . | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2010 IETF Trust and the persons identified as the | Copyright (c) 2012 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
| publication of this document. Please review these documents | publication of this document. Please review these documents | |||
| carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
| to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
| include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
| the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
| described in the BSD License. | described in the Simplified BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 1.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . 5 | 1.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 2. Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 2. Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 3. Normal Session Flow . . . . . . . . . . . . . . . . . . . . . 5 | 3. Credits . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 4. Generic DLEP Packet Definition . . . . . . . . . . . . . . . . 6 | 4. Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 5. Message Header Format . . . . . . . . . . . . . . . . . . . . 7 | 5. Extensions to DLEP . . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 6. Message TLV Block Format . . . . . . . . . . . . . . . . . . . 7 | 6. Normal Session Flow . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 7. DLEP Sub-TLVs . . . . . . . . . . . . . . . . . . . . . . . . 8 | 7. Generic DLEP Packet Definition . . . . . . . . . . . . . . . . 9 | |||
| 7.1. Identification Sub-TLV . . . . . . . . . . . . . . . . . . 9 | 8. Message Header Format . . . . . . . . . . . . . . . . . . . . 10 | |||
| 7.2. DLEP Version Sub-TLV . . . . . . . . . . . . . . . . . . . 10 | 9. Message TLV Block Format . . . . . . . . . . . . . . . . . . . 10 | |||
| 7.3. Peer Type Sub-TLV . . . . . . . . . . . . . . . . . . . . 11 | 10. DLEP Sub-TLVs . . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
| 7.4. MAC Address Sub-TLV . . . . . . . . . . . . . . . . . . . 11 | 10.1. Identification Sub-TLV. . . . . . . . . . . . . . . . . . 12 | |||
| 7.5. IPv4 Address Sub-TLV . . . . . . . . . . . . . . . . . . . 12 | 10.2. DLEP Version Sub-TLV. . . . . . . . . . . . . . . . . . . 13 | |||
| 7.6. IPv6 Address Sub-TLV . . . . . . . . . . . . . . . . . . . 12 | 10.3. Peer Type Sub-TLV . . . . . . . . . . . . . . . . . . . . 14 | |||
| 7.7. Maximum Data Rate Sub-TLV. . . . . . . . . . . . . . . . . 13 | 10.4. MAC Address Sub-TLV . . . . . . . . . . . . . . . . . . . 14 | |||
| 7.8. Current Data Rate Sub-TLV. . . . . . . . . . . . . . . . . 14 | 10.5. IPv4 Address Sub-TLV. . . . . . . . . . . . . . . . . . . 15 | |||
| 7.9. Latency Sub-TLV. . . . . . . . . . . . . . . . . . . . . . 14 | 10.6. IPv6 Address Sub-TLV. . . . . . . . . . . . . . . . . . . 16 | |||
| 7.10. Resources Sub-TLV. . . . . . . . . . . . . . . . . . . . . 15 | 10.7. Maximum Data Rate Sub-TLV . . . . . . . . . . . . . . . . 16 | |||
| 7.11. Relative Link Quality Sub-TLV. . . . . . . . . . . . . . . 16 | 10.8. Current Data Rate Sub-TLV . . . . . . . . . . . . . . . . 17 | |||
| 7.12. Peer Termination Sub-TLV . . . . . . . . . . . . . . . . . 16 | 10.9. Latency Sub-TLV . . . . . . . . . . . . . . . . . . . . . 18 | |||
| 7.13 Heartbeat Interval Sub-TLV . . . . . . . . . . . . . . . . 17 | 10.10. Resources Sub-TLV . . . . . . . . . . . . . . . . . . . . 18 | |||
| 7.14 Heartbeat Threshold Sub-TLV. . . . . . . . . . . . . . . . 17 | 10.11. Expected Forwarding Time Sub-TLV. . . . . . . . . . . . . 19 | |||
| 7.15 Link Characteristics ACK Timer Sub-TLV . . . . . . . . . . 18 | 10.12. Relative Link Quality Sub-TLV . . . . . . . . . . . . . . 20 | |||
| 8. DLEP Protocol Messages . . . . . . . . . . . . . . . . . . . . 19 | 10.13. Peer Termination Sub-TLV. . . . . . . . . . . . . . . . . 20 | |||
| 8.1. Message Block TLV Values . . . . . . . . . . . . . . . . . 19 | 10.14. Heartbeat Interval Sub-TLV. . . . . . . . . . . . . . . . 21 | |||
| 9. Peer Discovery Messages . . . . . . . . . . . . . . . . . . . 20 | 10.15. Heartbeat Threshold Sub-TLV . . . . . . . . . . . . . . . 21 | |||
| 9.1. Attached Peer Discovery Message . . . . . . . . . . . . . 20 | 10.16. Link Characteristics ACK Timer Sub-TLV. . . . . . . . . . 22 | |||
| 9.2. Detached Peer Discovery Message . . . . . . . . . . . . . 22 | 10.17. Credit Window Status Sub-TLV. . . . . . . . . . . . . . . 23 | |||
| 10. Peer Offer Message . . . . . . . . . . . . . . . . . . . . . . 23 | 10.18. Credit Grant Sub-TLV. . . . . . . . . . . . . . . . . . . 24 | |||
| 11. Peer Update Message. . . . . . . . . . . . . . . . . . . . . . 25 | 10.19. Credit Request Sub-TLV. . . . . . . . . . . . . . . . . . 24 | |||
| 12. Peer Update ACK Message. . . . . . . . . . . . . . . . . . . . 27 | 11. DLEP Protocol Messages . . . . . . . . . . . . . . . . . . . 25 | |||
| 13. Peer Termination Message . . . . . . . . . . . . . . . . . . . 27 | 11.1. Message Block TLV Values . . . . . . . . . . . . . . . . 25 | |||
| 14. Peer Termination ACK Message . . . . . . . . . . . . . . . . . 28 | 12. Peer Discovery Messages . . . . . . . . . . . . . . . . . . . 26 | |||
| 15. Neighbor Up Message . . . . . . . . . . . . . . . . . . . . . 29 | 12.1. Attached Peer Discovery Message . . . . . . . . . . . . . 26 | |||
| 16. Neighbor Up ACK Message. . . . . . . . . . . . . . . . . . . . 31 | 12.2. Detached Peer Discovery Message . . . . . . . . . . . . . 27 | |||
| 17. Neighbor Down Message . . . . . . . . . . . . . . . . . . . . 32 | 13. Peer Offer Message . . . . . . . . . . . . . . . . . . . . . . 29 | |||
| 18. Neighbor Down ACK Message. . . . . . . . . . . . . . . . . . . 33 | 14. Peer Update Message. . . . . . . . . . . . . . . . . . . . . . 30 | |||
| 19. Neighbor Update Message . . . . . . . . . . . . . . . . . . . 35 | 15. Peer Update ACK Message. . . . . . . . . . . . . . . . . . . . 31 | |||
| 20. Neighbor Address Update Message. . . . . . . . . . . . . . . . 36 | 16. Peer Termination Message . . . . . . . . . . . . . . . . . . . 32 | |||
| 21. Neighbor Address Update ACK Message. . . . . . . . . . . . . . 38 | 17. Peer Termination ACK Message . . . . . . . . . . . . . . . . . 33 | |||
| 22. Heartbeat Message . . . . . . . . . . . . . . . . . . . . . . 39 | 18. Neighbor Up Message . . . . . . . . . . . . . . . . . . . . . 33 | |||
| 23. Link Characteristics Message . . . . . . . . . . . . . . . . . 39 | 19. Neighbor Up ACK Message. . . . . . . . . . . . . . . . . . . . 35 | |||
| 24. Link Characteristics ACK Message . . . . . . . . . . . . . . . 41 | 20. Neighbor Down Message . . . . . . . . . . . . . . . . . . . . 35 | |||
| 25. Security Considerations. . . . . . . . . . . . . . . . . . . . 42 | 21. Neighbor Down ACK Message. . . . . . . . . . . . . . . . . . . 36 | |||
| 26. IANA Considerations. . . . . . . . . . . . . . . . . . . . . . 42 | 22. Neighbor Update Message . . . . . . . . . . . . . . . . . . . 37 | |||
| 26.1 TLV Registrations. . . . . . . . . . . . . . . . . . . . . 43 | 23. Neighbor Address Update Message. . . . . . . . . . . . . . . . 38 | |||
| 26.2 Expert Review: Evaluation Guidelines . . . . . . . . . . . 43 | 24. Neighbor Address Update ACK Message. . . . . . . . . . . . . . 39 | |||
| 26.3 Message TLV Type Registrations . . . . . . . . . . . . . . 43 | 25. Heartbeat Message . . . . . . . . . . . . . . . . . . . . . . 40 | |||
| 26.4 DLEP Order Registrations . . . . . . . . . . . . . . . . . 43 | 26. Link Characteristics Message . . . . . . . . . . . . . . . . . 40 | |||
| 26.5 DLEP Sub-TLV Type Registrations. . . . . . . . . . . . . . 44 | 27. Link Characteristics ACK Message . . . . . . . . . . . . . . . 42 | |||
| 27. Appendix A . . . . . . . . . . . . . . . . . . . . . . . . . . 45 | 28. Security Considerations. . . . . . . . . . . . . . . . . . . . 43 | |||
| 29. IANA Considerations. . . . . . . . . . . . . . . . . . . . . . 43 | ||||
| 29.1 TLV Registrations. . . . . . . . . . . . . . . . . . . . . 43 | ||||
| 29.2 Expert Review: Evaluation Guidelines . . . . . . . . . . . 43 | ||||
| 29.3 Message TLV Type Registrations . . . . . . . . . . . . . . 43 | ||||
| 29.4 DLEP Order Registrations . . . . . . . . . . . . . . . . . 44 | ||||
| 29.5 DLEP Sub-TLV Type Registrations. . . . . . . . . . . . . . 44 | ||||
| 30. Appendix A . . . . . . . . . . . . . . . . . . . . . . . . . . 45 | ||||
| 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 bandwidth and quality. Examples of these types of links | variable bandwidth and quality. Examples of these types of links | |||
| include line-of-sight (LOS) radios, satellite terminals, and cable/ | include line-of-sight (LOS) radios, satellite terminals, and cable/ | |||
| DSL modems. Fluctuations in speed and quality of these links can | DSL modems. Fluctuations in speed and quality of these links can | |||
| occur due to configuration (in the case of cable/DSL modems), or on a | occur due to configuration (in the case of cable/DSL modems), or on a | |||
| moment-to-moment basis, due to physical phenomena like multipath | moment-to-moment basis, due to physical phenomena like multipath | |||
| interference, obstructions, rain fade, etc. It is also quite possible | interference, obstructions, rain fade, etc. It is also quite possible | |||
| skipping to change at page 4, line 19 ¶ | skipping to change at page 4, line 25 ¶ | |||
| unless the network devices emit traffic at rate higher than the | unless the network devices emit traffic at rate higher than the | |||
| currently established rate. Increasing the traffic rate does not | currently established rate. Increasing the traffic rate does not | |||
| guarantee additional bandwidth will be allocated; rather, it may | guarantee additional bandwidth will be allocated; rather, it may | |||
| result in data loss and additional retransmissions on the link. | result in data loss and additional retransmissions on the link. | |||
| In attempting to address the challenges listed above, the authors | In attempting to address the challenges listed above, the authors | |||
| have developed the Data Link Exchange Protocol, or DLEP. The DLEP | have developed the Data Link Exchange Protocol, or DLEP. The DLEP | |||
| protocol runs between a router and its attached modem devices, | protocol runs between a router and its attached modem devices, | |||
| allowing the modem to communicate link characteristics as they | allowing the modem to communicate link characteristics as they | |||
| change, and convergence events (acquisition and loss of potential | change, and convergence events (acquisition and loss of potential | |||
| routing neighbors). The diagram below is used to illustrate the | routing neighbors). The following diagrams are used to illustrate | |||
| scope of DLEP sessions. When a local client (Modem device) | the scope of DLEP sessions. | |||
| detects the presence of a remote neighbor, it sends an indication | ||||
| to its local router via the DLEP session. Upon receipt of the | ||||
| indication, the local router would take appropriate action (e.g. | ||||
| initiation of discovery or HELLO protocols) to converge the | ||||
| network. After notification of the new neighbor, the modem device | ||||
| utilizes the DLEP session to report the characteristics of the | ||||
| link (bandwidth, latency, etc) to the router on an as-needed | ||||
| basis. Finally, the Modem is able to use the DLEP session to | ||||
| notify the router when the remote neighbor is lost, shortening | ||||
| the time required to re-converge the network. | ||||
| |-----Local Neighbor-----| |-----Remote Neighbor----| | |-----Local Neighbor-----| |-----Remote Neighbor----| | |||
| | | | (far-end device) | | | | | (far-end device) | | |||
| +--------+ +-------+ +-------+ +--------+ | +--------+ +-------+ +-------+ +--------+ | |||
| | Router |=======| Modem |{~~~~~~~~}| Modem |=======| Router | | | Router |=======| Modem |{~~~~~~~~}| Modem |=======| Router | | |||
| | | | Device| | Device| | | | | | | Device| | Device| | | | |||
| +--------+ +-------+ +-------+ +--------+ | +--------+ +-------+ +-------+ +--------+ | |||
| | | | Link | | | | | | | Link | | | | |||
| |-DLEP--| | Protocol | |-DLEP--| | |-DLEP--| | Protocol | |-DLEP--| | |||
| | | | (e.g. | | | | | | | (e.g. | | | | |||
| | | | 802.11) | | | | | | | 802.11) | | | | |||
| Figure 1: DLEP Network | Figure 1: DLEP Network | |||
| In Figure 1, when a local client (Modem device) detects the | ||||
| presence of a remote neighbor, it sends an indication to its | ||||
| local router via the DLEP session. Upon receipt of the indication, | ||||
| the local router would take appropriate action (e.g. initiation | ||||
| of discovery or HELLO protocols) to converge the network. After | ||||
| notification of the new neighbor, the modem device utilizes the | ||||
| DLEP session to report the characteristics of the link (bandwidth, | ||||
| latency, etc) to the router on an as-needed basis. | ||||
| DLEP is independent of the underlying link type and topology. | ||||
| Figure 2 shows how DLEP can support a configuration whereby | ||||
| routers are connected with different link types and with different | ||||
| network configurations. In this setup, the routers are connected | ||||
| with two different devices (Modem device A and Modem device B). | ||||
| Modem A is connected via a point-to-point link, whereas Modem B | ||||
| is connected via a shared medium. In both cases, the DLEP session | ||||
| is used to report the characteristics of the link (bandwidth, | ||||
| latency, etc.) to network neighbors on an as-needed basis. The | ||||
| modem is also able to use the DLEP session to notify the router | ||||
| when the remote neighbor is lost, shortening the time required to | ||||
| re-converge the network. | ||||
| +--------+ +--------+ | ||||
| +------+ Modem A| | Modem A+-----+ | ||||
| | | Device | <===== // ======> | Device | | | ||||
| | +--------+ P-t-P Link +--------+ | | ||||
| | Protocol | | ||||
| +---+----+ +---+----+ | ||||
| | Router | | Router | | ||||
| | | | | | ||||
| +---+----+ +---+----+ | ||||
| | + | ||||
| | +--------+ +--------+ | | ||||
| +------+ Modem B| | Modem B| | | ||||
| | Device | o o o o o o o o | Device +-----+ | ||||
| +--------+ o Shared o +--------+ | ||||
| o Medium o | ||||
| o o | ||||
| o o | ||||
| o o | ||||
| o | ||||
| +--------+ | ||||
| | Modem B| | ||||
| | Device | | ||||
| +---+----+ | ||||
| | | ||||
| | | ||||
| +---+----+ | ||||
| | Router | | ||||
| | | | ||||
| +--------+ | ||||
| Figure 2: DLEP Network with Multiple Modem Devices | ||||
| DLEP exists as a collection of type-length-value (TLV) based messages | DLEP exists as a collection of type-length-value (TLV) based messages | |||
| using [RFC5444] formatting. The protocol can be used for both Ethernet | using [RFC5444] formatting. The protocol can be used for both Ethernet | |||
| attached modems (utilizing, for example, a UDP socket for transport | attached modems (utilizing, for example, a UDP socket for transport | |||
| of the RFC 5444 packets), or in environments where the modem is an | of the RFC 5444 packets), or in environments where the modem is an | |||
| interface card in a chassis (via a message passing scheme). DLEP | interface card in a chassis (via a message passing scheme). DLEP | |||
| utilizes a session paradigm between the modem device and its | utilizes a session paradigm between the modem device and its | |||
| associated router. If multiple modem devices are attached to a | associated router. If multiple modem devices are attached to a | |||
| router, a separate DLEP session MUST exist for each modem. If a modem | router (as in FIgure 2), a separate DLEP session MUST exist for each | |||
| device supports multiple connections to a router (via multiple | modem. If a modem device supports multiple connections to a router | |||
| interfaces), or supports connections to multiple routers, a separate | (via multiple logical or physical interfaces), or supports | |||
| DLEP session MUST exist for each connection. | connections to multiple routers, a separate DLEP session MUST exist | |||
| for each connection. | ||||
| 1.1 Requirements | 1.1 Requirements | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | |||
| document are to be interpreted as described in BCP 14, RFC 2119 | document are to be interpreted as described in BCP 14, RFC 2119 | |||
| [RFC2119]. | [RFC2119]. | |||
| 2. Assumptions | 2. Assumptions | |||
| In order to implement discovery in the DLEP protocol (thereby | In order to implement discovery in the DLEP protocol (thereby | |||
| avoiding some configuration), we have defined a first-speaker and a | avoiding some configuration), we have defined a first-speaker and a | |||
| passive-listener scheme. Specifically, the router is defined as the | passive-listener scheme. Borrowing from existing terminology, this | |||
| passive-listener, and the modem device defined as the first-speaker | document refers to the first-speaker as the 'client', and the passive | |||
| (e.g. the initiator for discovery). Borrowing from existing | listener as the 'server', even though there is no client/server | |||
| terminology, this document refers to the first-speaker as the | relationship in the classic sense. In a typical deployment, a router | |||
| 'client', even though there is no client/server relationship in the | would appear as the DLEP 'server', and an attached modem device would | |||
| classic sense. | act as the 'client' (e.g. the initiator for discovery). | |||
| DLEP assumes that participating modem devices appear to the router | DLEP assumes that participating clients appear to the server as a | |||
| as a transparent bridge - specifically, the assumption is that the | transparent bridge - specifically, the assumption is that the | |||
| destination MAC address for data traffic in any frame emitted by | destination MAC address for data traffic in any frame emitted by | |||
| the router should be the MAC address of the next-hop router or end- | the server should be the MAC address of the next-hop router or end- | |||
| device, and not the MAC address of any of the intervening modem | device, and not the MAC address of any of the intervening clients. | |||
| devices. | ||||
| DLEP assumes that security on the session (e.g. authentication of | DLEP assumes that security on the session (e.g. authentication of | |||
| session partners, encryption of traffic, or both) is dealt with by | session partners, encryption of traffic, or both) is dealt with by | |||
| the underlying transport mechanism for the RFC 5444 packets (e.g. by | the underlying transport mechanism for the RFC 5444 packets (e.g. by | |||
| using a transport such as DTLS [DTLS]). | using a transport such as DTLS [DTLS]). | |||
| DLEP utilizes a session-oriented paradigm. There are two classes | ||||
| of sessions - the first is identified as a 'peer session'. The | ||||
| peer session exists between a DLEP server and a DLEP client. All | ||||
| DLEP messages between client and server are transmitted within the | ||||
| context of the peer session. | ||||
| The other type of DLEP session is referred to as a 'neighbor session'. | ||||
| Neighbor sessions can be instantiated by either the DLEP server or | ||||
| client, and represent an identifiable destination (i.e. an address) | ||||
| within the network. Examples of a destination would be a unicast | ||||
| address (for either a next-hop router, or for an end-station), or | ||||
| a multicast address. A DLEP neighbor session MUST exist for every | ||||
| destination that exists in the network. | ||||
| The optional [RFC5444] message header Sequence Number MUST be | The optional [RFC5444] message header Sequence Number MUST be | |||
| included in all DLEP packets. Sequence Numbers start at 1 and are | included in all DLEP packets. Sequence Numbers start at 1 and are | |||
| incremented by one for each original and retransmitted message. The | incremented by one for each original and retransmitted message. The | |||
| unsigned 16-bit Sequence Number rolls over at 65535 to 1. A | unsigned 16-bit Sequence Number rolls over at 65535 to 1. A | |||
| Sequence Number of 0 is not valid. Peer level Sequence Numbers are | Sequence Number of 0 is not valid. Sequence Numbers are unique | |||
| unique within the context of a DLEP session. Sequence numbers are | within the context of a DLEP session. Sequence numbers are used in | |||
| used in DLEP to correlate a response to a request. | DLEP to correlate a response to a request. | |||
| 3. Normal Session Flow | 3. Credits | |||
| A session between a router and a client is established by exchanging | DLEP includes an OPTIONAL credit-windowing scheme analogous to the | |||
| one documented in [RFC5578]. In this scheme, traffic between the | ||||
| DLEP client and the DLEP server is treated as two unidirectional | ||||
| windows. This document identifies these windows as the "Client | ||||
| Receive Window", or CRW, and the "Server Receive Window", or SRW. | ||||
| If credits are used, they MUST be granted by the receiver on a | ||||
| given window - that is, on the "Client Receive Window" (CRW), | ||||
| the DLEP client is responsible for granting credits to the server, | ||||
| allowing it (the server) to send data to the client. Likewise, | ||||
| the DLEP server is responsible for granting credits on the SRW, | ||||
| which allows the client to send data to the server. | ||||
| DLEP expresses all credit data in number of octets. The total number | ||||
| of credits on a window, and the increment to add to a grant, are | ||||
| always expressed as a 64-bit unsigned quantity. | ||||
| If used, credits are managed on a neighbor session basis; that is, | ||||
| separate credit counts are maintained for each neighbor session | ||||
| requiring the service. Credits do not apply to DLEP peer sessions. | ||||
| 4. Metrics | ||||
| DLEP includes the ability for the client and server to communicate | ||||
| metrics that reflect the characteristics (e.g. bandwidth, latency) | ||||
| of the variable-quality link in use. As mentioned in the | ||||
| introduction section of this document, metrics have to be used | ||||
| within a context - for example, metrics to a unicast address in | ||||
| the network. DLEP allows for metrics to be sent within two | ||||
| contexts - neighbor session context (those for a given destination | ||||
| within the network), and peer session context (those that apply | ||||
| to all destinations accessed via the DLEP client). Metrics | ||||
| supplied on DLEP Peer messages are, by definition, in the context | ||||
| of a peer session; metrics supplied on Neighbor messages are, by | ||||
| definition, used in the context of a neighbor session. | ||||
| Supplying metrics in a peer session context gives clients the | ||||
| ability to supply default metrics on a 'device-wide' basis. It is | ||||
| left to implementations to choose sensible default values based on | ||||
| their specific characteristics. Additionally, the metrics (either | ||||
| at a peer or neighbor session context) MAY be used to report non- | ||||
| changing, or static, metrics. Clients having static link metric | ||||
| characteristics SHOULD report metrics only once for a given | ||||
| neighbor session (or peer session, if all connections via the client | ||||
| are of this static nature). | ||||
| The approach of allowing for different contexts for metric data | ||||
| increases both the flexibility and the complexity of using metric | ||||
| data. This document details the mechanism whereby the data is | ||||
| transmitted, however, the specific algorithms for utilizing the | ||||
| dual-context metrics is out of scope and not addressed by this | ||||
| document. | ||||
| 5. Extensions to DLEP | ||||
| While this draft represents the best efforts of the co-authors, and | ||||
| the working group, to be functionally complete, it is recognized | ||||
| that extensions to DLEP will in all likelihood be necessary as more | ||||
| link types are utilized. To allow for future innovation, the draft | ||||
| allocates numbering space for experimental orders and sub-TLVs. DLEP | ||||
| implementations MUST be capable of parsing and acting on the orders | ||||
| and sub-TLVs as documented in this specification. DLEP orders/sub-TLVs | ||||
| in the experimental numbering range SHOULD be silently dropped by an | ||||
| implementation if they are not understood. The intent of the | ||||
| experimental numbering space is to allow for further development of | ||||
| DLEP protocol features and function. If subsequent development yields | ||||
| new features with sufficient applicability, those features should be | ||||
| either included in an update of this specification, or documented in | ||||
| a standalone specification. | ||||
| 6. Normal Session Flow | ||||
| A session between a client and a server is established by exchanging | ||||
| the "Peer Discovery" and "Peer Offer" messages described below. | the "Peer Discovery" and "Peer Offer" messages described below. | |||
| Once that exchange has successfully occurred, the client informs the | The flows described in this document create a state-full protocol | |||
| router of the presence of a new potential routing partner via the | between client and server. Both client and server initialize in a | |||
| "Neighbor Up" message. The loss of a neighbor is communicated via the | "discovery" state, and the client issues a "Peer Discovery" message. | |||
| "Neighbor Down" message, and link quality is communicated via the | When the server receives a Peer Discovery, it responds with a "Peer | |||
| "Neighbor Update" message. Note that, due to the issue of metrics | Offer" message, and enters an "in session" state with the client. | |||
| varying depending on neighbor (discussed above), DLEP link metrics | Receipt of the Peer Offer at the client causes it (the client) to | |||
| are expressed within the context of a neighbor relationship, instead | transition into the "in session" state. | |||
| of on the link as a whole. | ||||
| Once the DLEP session has started, the session partners exchange | Once that exchange has successfully occurred, messages transferred | |||
| heartbeat messages based on a negotiated time interval. The heartbeat | in the context of the peer session will consist of | |||
| messages are used to assure the session partners are in an | o Periodic 'Heartbeat' messages, intended to keep the peer session | |||
| appropriate state, and that bidirectional connectivity still exists. | alive, and to verify bidirectional connectivity, and/or | |||
| o Peer Update messages, indicating some change in status that one | ||||
| of the peers needs to communicate to the other. | ||||
| In addition to the messages above, the peers will transmit DLEP | ||||
| messages concerning destinations in the network. These messages | ||||
| trigger creation/maintenance/termination of 'neighbor sessions'. For | ||||
| example, a peer will inform its DLEP partner of the presence of a | ||||
| new destination via the "Neighbor Up" message. Receipt of a Neighbor | ||||
| Up causes the receiving peer to allocate the necessary resources, | ||||
| creating a neighbor session, and transition to an "in session" state | ||||
| on the newly created neighbor session. The in-session state persists | ||||
| until notification of neighbor loss is received, or by optional | ||||
| timeout due to inactivity. | ||||
| The loss of a destination is communicated via the "Neighbor Down" | ||||
| message, and changes in status to the destination (e.g. varying | ||||
| link quality, or addressing changes) are communicated via a | ||||
| "Neighbor Update" message. | ||||
| Again, metrics can be expressed within the context of a neighbor | ||||
| session via the Neighbor Update message, or within the context of | ||||
| a peer session (reflecting the link as a whole) via the Peer Update | ||||
| message. In cases where metrics are provided on the peer session, the | ||||
| receiving peer MUST propagate the metrics to all neighbor sessions | ||||
| accessed via the peer. A DLEP peer MAY send metrics both in a peer | ||||
| session context (via the Peer Update message) and a neighbor session | ||||
| context (via Neighbor Update) at any time. The heuristics for | ||||
| applying received peer session and neighbor session metrics is left | ||||
| to implementations. | ||||
| In addition to receiving metrics about the link, DLEP provides for | In addition to receiving metrics about the link, DLEP provides for | |||
| the ability for the router to request a different amount of | the ability for a server to request a different amount of bandwidth, | |||
| bandwidth, or latency, for its client via the Link Characteristics | or latency, from the client via the Link Characteristics Message. | |||
| Message. This allows the router to deal with requisite increases | This allows the server to deal with requisite increases (or decreases) | |||
| (or decreases) of allocated bandwidth/latency in demand-based | of allocated bandwidth/latency in demand-based schemes in a more | |||
| schemes in a more deterministic manner. | deterministic manner. | |||
| 4. Generic DLEP Packet Definition | 7. Generic DLEP Packet Definition | |||
| The Generic DLEP Packet Definition follows the format for packets | The Generic DLEP Packet Definition follows the format for packets | |||
| defined in [RFC5444]. | defined in [RFC5444]. | |||
| The Generic DLEP Packet Definition contains the following fields: | The Generic DLEP Packet Definition contains the following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |Version| Flags | Packet Sequence Number | Packet TLV | | |Version| Flags | Packet Sequence Number | Packet TLV | | |||
| skipping to change at page 6, line 44 ¶ | skipping to change at page 9, line 47 ¶ | |||
| which the packet/messages/TLVs are | which the packet/messages/TLVs are | |||
| constructed. | constructed. | |||
| Flags - 4 bit field. All bits MUST be ignored | Flags - 4 bit field. All bits MUST be ignored | |||
| by DLEP implementations. | by DLEP implementations. | |||
| Packet Sequence Number - If present, the packet sequence number | Packet Sequence Number - If present, the packet sequence number | |||
| is parsed and ignored. DLEP does NOT | is parsed and ignored. DLEP does NOT | |||
| use or generate packet sequence numbers. | use or generate packet sequence numbers. | |||
| Packet TLV block - a TLV block which contains packet level | Packet TLV block - A TLV block which contains packet level | |||
| TLV information. DLEP implementations | TLV information. DLEP implementations | |||
| MUST NOT use this TLV block. | MUST NOT use this TLV block. | |||
| Message - the packet MAY contain zero or more | Message - The packet MAY contain zero or more | |||
| messages, however, DLEP messages are | messages, however, DLEP messages are | |||
| encoded within an RFC 5444 Message | encoded within an RFC 5444 Message | |||
| TLV Block. | TLV Block. | |||
| 5. Message Header Format | 8. Message Header Format | |||
| DLEP utilizes the following format for the RFC 5444 message header | DLEP utilizes the following format for the RFC 5444 message header | |||
| 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type |Msg Flg|AddrLen| Message Size | | | Msg Type |Msg Flg|AddrLen| Message Size | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num | TLV Block... | | | Message Seq Num | TLV Block... | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Message Type - an 8-bit field which specifies the type | Message Type - An 8-bit field which specifies the type | |||
| of the message. For DLEP, this field | of the message. For DLEP, this field | |||
| contains DLEP_MESSAGE (value TBD) | contains DLEP_MESSAGE (value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum bit is | Message Flags - Set to 0x1 (bit 3, mhasseqnum bit is | |||
| set). All other bits are unused and MUST | set). All other bits are unused and MUST | |||
| be set to '0'. | be set to '0'. | |||
| Message Address Length - a 4-bit unsigned integer field encoding the | Message Address Length - A 4-bit unsigned integer field encoding the | |||
| length of all addresses included in this | length of all addresses included in this | |||
| message. DLEP implementations do not use | message. DLEP implementations do not use | |||
| this field; contents SHOULD be ignored. | this field; contents SHOULD be ignored. | |||
| Message Size - a 16-bit unsigned integer field which | Message Size - A 16-bit unsigned integer field which | |||
| specifies the number of octets that make up | specifies the number of octets that make up | |||
| the message including the message header. | the message including the message header. | |||
| Message Sequence Number - a 16-bit unsigned integer field that | Message Sequence Number - A 16-bit unsigned integer field that | |||
| contains a sequence number, generated by | contains a sequence number, generated by | |||
| the originator of the message. Sequence | the originator of the message. Sequence | |||
| numbers range from 1 to 65535. Sequence | numbers range from 1 to 65535. Sequence | |||
| numbers roll over at 65535 to 1; 0 is | numbers roll over at 65535 to 1; 0 is | |||
| invalid. | invalid. | |||
| TLV Block - TLV Block included in the message. | TLV Block - TLV Block included in the message. | |||
| 6. Message TLV Block Format | 9. Message TLV Block Format | |||
| The DLEP protocol is organized as a set of orders, each with a | The DLEP protocol is organized as a set of orders, each with a | |||
| collection of Sub-TLVs. The Sub-TLVs carry information needed | collection of Sub-TLVs. The Sub-TLVs carry information needed | |||
| to process and/or establish context (e.g. the MAC address of a | to process and/or establish context (e.g. the MAC address of a | |||
| far-end router), and the 'tlv-type' field in the message TLV | far-end router), and the 'tlv-type' field in the message TLV | |||
| block carries the DLEP order itself. The DLEP orders are | block carries the DLEP order itself. The DLEP orders are | |||
| enumerated in section 8.1 of this document, and the messages | enumerated in section 11.1 of this document, and the messages | |||
| created using these orders are documented in sections 9 through | created using these orders are documented in sections 12 through | |||
| 24. | 27. | |||
| DLEP uses the following settings for an RFC 5444 Message TLV | DLEP uses the following settings for an RFC 5444 Message TLV | |||
| block: | block: | |||
| 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | TLVs Length | TLV Type | TLV Flags | | | TLVs Length | TLV Type | TLV Flags | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Length | Value... | | | Length | Value... | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| TLVs Length - a 16-bit unsigned integer field that contains the total | TLVs Length - A 16-bit unsigned integer field that contains the total | |||
| number of octets in all of the immediately following | number of octets in all of the immediately following | |||
| TLV elements (tlvs-length not included). | TLV elements (tlvs-length not included). | |||
| TLV Type - an 8-bit unsigned integer field specifying the type | TLV Type - An 8-bit unsigned integer field specifying the type | |||
| of the TLV. DLEP uses this field to specify the DLEP | of the TLV. DLEP uses this field to specify the DLEP | |||
| order. Valid DLEP orders are defined in section 8.1 of | order. Valid DLEP orders are defined in section 11.1 | |||
| this document. | of this document. | |||
| TLV Flags - an 8-bit flags bit field. Bit 3 (thasvalue) MUST be | TLV Flags - An 8-bit flags bit field. Bit 3 (thasvalue) MUST be | |||
| set; all other bits are not used and MUST be set | set; all other bits are not used and MUST be set | |||
| to '0'. | to '0'. | |||
| Length - Length of the 'Value' field of the TLV | Length - Length of the 'Value' field of the TLV | |||
| Value - A field of length <Length> which contains data | Value - A field of length <Length> which contains data | |||
| specific to a particular TLV type. In the DLEP | specific to a particular TLV type. In the DLEP | |||
| case, this field will consist of a collection of | case, this field will consist of a collection of | |||
| DLEP sub-TLVs appropriate for the DLEP action | DLEP sub-TLVs appropriate for the DLEP action | |||
| specified in the TLV type field. | specified in the TLV type field. | |||
| 7. DLEP sub-TLVs | 10. DLEP sub-TLVs | |||
| DLEP protocol messages are transported in an RFC 5444 message TLV. | DLEP protocol messages are transported in an RFC 5444 message TLV. | |||
| All DLEP messages use the RFC 5444 DLEP_MESSAGE value (TBD). The | All DLEP messages use the RFC 5444 DLEP_MESSAGE value (TBD). The | |||
| protocol messages consist of a DLEP order, encoded in the 'tlv-type' | protocol messages consist of a DLEP order, encoded in the 'tlv-type' | |||
| field in the message TLV block, with the 'value' field of the TLV | field in the message TLV block, with the 'value' field of the TLV | |||
| block containing a collection (1 or more) DLEP sub-TLVs. | block containing a collection (1 or more) DLEP sub-TLVs. | |||
| The format of DLEP Sub-TLVs is consistent with RFC 5444 in that the | The format of DLEP Sub-TLVs is consistent with RFC 5444 in that the | |||
| Sub-TLVs contain a flag field in addition to the type, length, and | Sub-TLVs contain a flag field in addition to the type, length, and | |||
| value fields. Valid DLEP Sub-TLVs are: | value fields. Valid DLEP Sub-TLVs are: | |||
| skipping to change at page 9, line 8 ¶ | skipping to change at page 12, line 9 ¶ | |||
| TBD Identification sub-TLV | TBD Identification sub-TLV | |||
| TBD DLEP Version sub-TLV | TBD DLEP Version sub-TLV | |||
| TBD Peer Type sub-TLV | TBD Peer Type sub-TLV | |||
| TBD MAC Address sub-TLV | TBD MAC Address sub-TLV | |||
| TBD IPv4 Address sub-TLV | TBD IPv4 Address sub-TLV | |||
| TBD IPv6 Address sub-TLV | TBD IPv6 Address sub-TLV | |||
| TBD Maximum Data Rate (MDR) sub-TLV | TBD Maximum Data Rate (MDR) sub-TLV | |||
| TBD Current Data Rate (CDR) sub-TLV | TBD Current Data Rate (CDR) sub-TLV | |||
| TBD Latency sub-TLV | TBD Latency sub-TLV | |||
| TBD Resources sub-TLV | TBD Resources sub-TLV | |||
| TBD Expected Forwarding Time (ETX) sub-TLV | ||||
| TBD Relative Link Quality (RLQ) sub-TLV | TBD Relative Link Quality (RLQ) sub-TLV | |||
| TBD Status sub-TLV | TBD Status sub-TLV | |||
| TBD Heartbeat Interval sub-TLV | TBD Heartbeat Interval sub-TLV | |||
| TBD Heartbeat Threshold sub-TLV | TBD Heartbeat Threshold sub-TLV | |||
| TBD Neighbor down ACK timer sub-TLV | TBD Neighbor down ACK timer sub-TLV | |||
| TBD Link Characteristics ACK timer sub-TLV | TBD Link Characteristics ACK timer sub-TLV | |||
| TBD Credit Window Status sub-TLV | ||||
| TBD Credit Grant sub-TLV | ||||
| TBD Credit Request sub-TLV | ||||
| DLEP sub-TLVs contain the following fields: | DLEP sub-TLVs contain the following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | TLV Type |TLV Flags=0x10 | Length | Value... | | | TLV Type |TLV Flags=0x10 | Length | Value... | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| TLV Type - an 8-bit unsigned integer field specifying the type | TLV Type - An 8-bit unsigned integer field specifying the type | |||
| of the sub-TLV. | of the sub-TLV. | |||
| TLV Flags - an 8-bit flags bit field. Bit 3 (thasvalue) MUST be | TLV Flags - An 8-bit flags bit field. Bit 3 (thasvalue) MUST be | |||
| set, all other bits are not used and MUST be set to | set, all other bits are not used and MUST be set to | |||
| '0'. | '0'. | |||
| Length - an 8-bit length of the value field of the sub-TLV | Length - An 8-bit length of the value field of the sub-TLV | |||
| Value - A field of length <Length> which contains data | Value - A field of length <Length> which contains data | |||
| specific to a particular sub-TLV. | specific to a particular sub-TLV. | |||
| 7.1 Identification Sub-TLV | 10.1 Identification Sub-TLV | |||
| This Sub-TLV MUST exist in the TLV Block for all DLEP messages, and | This Sub-TLV MUST exist in the TLV Block for all DLEP messages, and | |||
| MUST be the first Sub-TLV of the message. Further, there MUST be ONLY | MUST be the first Sub-TLV of the message. Further, there MUST be ONLY | |||
| one Identification Sub-TLV in an RFC 5444 message TLV block. The | one Identification Sub-TLV in an RFC 5444 message TLV block. The | |||
| Identification sub-TLV contains client and router identification | Identification sub-TLV contains client and server identification | |||
| information used to establish the proper context for processing DLEP | information used to establish the proper context for processing DLEP | |||
| protocol messages. | protocol messages. | |||
| The Identification sub-TLV contains the following fields: | The Identification sub-TLV contains the following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type = TBD |TLV Flags=0x10 |Length = 8 | Router ID | | |TLV Type = TBD |TLV Flags=0x10 |Length = 8 | Server ID | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Router ID | Client ID | | | Server ID | Client ID | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Client ID | | | Client ID | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| TLV Type - Value TBD | TLV Type - Value TBD | |||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits are | TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits are | |||
| unused and MUST be set to '0'. | unused and MUST be set to '0'. | |||
| Length - 8 | Length - 8 | |||
| Router ID - indicates the router ID of the DLEP session. | Server ID - Indicates the Server ID of the DLEP session. | |||
| Client ID - indicates the client ID of the DLEP session. | Client ID - indicates the Client ID of the DLEP session. | |||
| When the client initiates discovery (via the Peer Discovery message), | When the client initiates discovery (via the Peer Discovery message), | |||
| it MUST set the Client ID to a 32-bit quantity that will be used to | it MUST set the Client ID to a 32-bit quantity that will be used to | |||
| uniquely identify this session from the client-side. The client MUST | uniquely identify this session from the client-side. The client MUST | |||
| set the Router ID to '0'. When responding to the Peer Discovery | set the Server ID to '0'. When responding to the Peer Discovery | |||
| message, the router MUST echo the Client ID, and MUST supply its own | message, the server MUST echo the Client ID, and MUST supply its own | |||
| unique 32-bit quantity to identify the session from the router's | unique 32-bit quantity to identify the session from the server's | |||
| perspective. After the Peer Discovery/Peer Offer exchange, both the | perspective. After the Peer Discovery/Peer Offer exchange, both the | |||
| Client ID and the Router ID MUST be set to the values obtained from | Client ID and the Server ID MUST be set to the values obtained from | |||
| the Peer DIscovery/Peer Offer sequence. | the Peer DIscovery/Peer Offer sequence. | |||
| 7.2 DLEP Version Sub-TLV | 10.2 DLEP Version Sub-TLV | |||
| The DLEP Version Sub-TLV is an OPTIONAL TLV in both the Peer | The DLEP Version Sub-TLV is an OPTIONAL TLV in both the Peer | |||
| Discovery and Peer Offer messages. The Version Sub-TLV is used to | Discovery and Peer Offer messages. The Version Sub-TLV is used to | |||
| indicate the client or router version of the protocol. The client | indicate the client or server version of the protocol. The client | |||
| and router MAY use this information to decide if the peer is running | and server MAY use this information to decide if the peer is running | |||
| at a supported level. | at a supported level. | |||
| The DLEP Version Sub-TLV contains the following fields: | The DLEP Version Sub-TLV contains the following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type =TBD |TLV Flags=0x10 |Length=4 | Major Version | | |TLV Type =TBD |TLV Flags=0x10 |Length=4 | Major Version | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Major Version | Minor Version | | | Major Version | Minor Version | | |||
| skipping to change at page 10, line 44 ¶ | skipping to change at page 14, line 4 ¶ | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type =TBD |TLV Flags=0x10 |Length=4 | Major Version | | |TLV Type =TBD |TLV Flags=0x10 |Length=4 | Major Version | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Major Version | Minor Version | | | Major Version | Minor Version | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| TLV Type - TBD | TLV Type - TBD | |||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits are | TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits are | |||
| not used and MUST be set to '0'. | not used and MUST be set to '0'. | |||
| Length - Length is 4 | Length - Length is 4 | |||
| Major Version - Major version of the client or router protocol. | Major Version - Major version of the client or router protocol. | |||
| Minor Version - Minor version of the client or router protocol. | Minor Version - Minor version of the client or router protocol. | |||
| Support of this draft is indicated by setting the Major Version | Support of this draft is indicated by setting the Major Version | |||
| to '1', and the Minor Version to '1' (e.g. Version 1.1). | to '1', and the Minor Version to '2' (e.g. Version 1.2). | |||
| 7.3 Peer Type Sub-TLV | 10.3 Peer Type Sub-TLV | |||
| The Peer Type Sub-TLV is used by the router and client to give | The Peer Type Sub-TLV is used by the server and client to give | |||
| additional information as to its type. It is an OPTIONAL sub-TLV in | additional information as to its type. It is an OPTIONAL sub-TLV in | |||
| both the Peer Discovery Message and the Peer Offer message. The peer | both the Peer Discovery Message and the Peer Offer message. The peer | |||
| type is a string and is envisioned to be used for informational | type is a string and is envisioned to be used for informational | |||
| purposes (e.g. display command). | purposes (e.g. as output in a display command). | |||
| The Peer Type sub-TLV contains the following fields: | The Peer Type sub-TLV contains the following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type =TBD |TLV Flags=0x10 |Length= peer |Peer Type Str | | |TLV Type =TBD |TLV Flags=0x10 |Length= peer |Peer Type Str | | |||
| | | |type string len|Max Len = 80 | | | | |type string len|Max Len = 80 | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| TLV Type - TBD | TLV Type - TBD | |||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits | TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits | |||
| are not used and MUST be set to '0'. | are not used and MUST be set to '0'. | |||
| Length - length of peer type string (80 bytes maximum) | Length - Length of peer type string (80 bytes maximum). | |||
| Peer Type String - Non-Null terminated peer type string, maximum | Peer Type String - Non-Null terminated peer type string, maximum | |||
| length of 80 bytes. For example, a satellite | length of 80 bytes. For example, a satellite | |||
| modem might set this variable to 'Satellite | modem might set this variable to 'Satellite | |||
| terminal'. | terminal'. | |||
| 7.4 MAC Address Sub-TLV | 10.4 MAC Address Sub-TLV | |||
| The MAC address Sub-TLV MUST appear in all neighbor-oriented | The MAC address Sub-TLV MUST appear in all neighbor-oriented | |||
| messages (e.g. Neighbor Up, Neighbor Up ACK, Neighbor Down, Neighbor | messages (e.g. Neighbor Up, Neighbor Up ACK, Neighbor Down, Neighbor | |||
| Down ACK, Neighbor Update, Link Characteristics Request, and Link | Down ACK, Neighbor Update, Link Characteristics Request, and Link | |||
| Characteristics ACK). The MAC Address sub-TLV contains the address | Characteristics ACK). The MAC Address sub-TLV contains the address | |||
| of the far-end (neighbor) router. | of the far-end (neighbor) destination, and may be either a physical | |||
| or a virtual destination. Examples of a virtual destination would | ||||
| be a multicast MAC address, or the broadcast MAC (0xFFFFFFFFFFFF). | ||||
| The MAC Address sub-TLV contains the following fields: | The MAC Address sub-TLV contains the following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 6 |MAC Address | | |TLV Type =TBD |TLV Flags=0x10 |Length = 6 |MAC Address | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | MAC Address | | | MAC Address | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | MAC Address | | | MAC Address | | |||
| +-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| TLV Type - TBD | TLV Type - TBD | |||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits are not | TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits are not | |||
| used and MUST be set to '0'. | used and MUST be set to '0'. | |||
| Length - 6 | Length - 6 | |||
| MAC Address - MAC Address of the far-end router. | MAC Address - MAC Address of the destination (either physical or | |||
| virtual). | ||||
| 7.5 IPv4 Address Sub-TLV | 10.5 IPv4 Address Sub-TLV | |||
| The IPv4 Address Sub-TLV MAY be used in Neighbor Up, Neighbor Update, | The IPv4 Address Sub-TLV MAY be used in Neighbor Up, Neighbor | |||
| and Peer Update Messages, if the client is aware of the Layer 3 | Update, and Peer Update Messages, if the client is aware of the | |||
| address. When included in Neighbor messages, the IPv4 Address sub-TLV | Layer 3 address. When included in Neighbor messages, the IPv4 | |||
| contains the IPv4 address of the far-end router (neighbor). In | Address sub-TLV contains the IPv4 address of the far-end neighbor. | |||
| the Peer Update message, it contains the IPv4 address of the local | In the Peer Update message, it contains the IPv4 address of the | |||
| router. In either case, the sub-TLV also contains an indication of | sending peer. In either case, the sub-TLV also contains an | |||
| whether this is a new or existing address, or is a deletion of | indication of whether this is a new or existing address, or is a | |||
| a previously known address. | deletion of a previously known address. | |||
| The IPv4 Address Sub-TLV contains the following fields: | The IPv4 Address Sub-TLV contains the following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 5 | Add/Drop | | |TLV Type =TBD |TLV Flags=0x10 |Length = 5 | Add/Drop | | |||
| | | | | Indicator | | | | | | Indicator | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | IPv4 Address | | | IPv4 Address | | |||
| skipping to change at page 12, line 41 ¶ | skipping to change at page 15, line 59 ¶ | |||
| TLV Type - TBD | TLV Type - TBD | |||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits are not | TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits are not | |||
| used and MUST be set to '0'. | used and MUST be set to '0'. | |||
| Length - 5 | Length - 5 | |||
| Add/Drop - Value indicating whether this is a new or existing | Add/Drop - Value indicating whether this is a new or existing | |||
| Indicator address (0x01), or a withdrawal of an address (0x02). | Indicator address (0x01), or a withdrawal of an address (0x02). | |||
| IPv4 Address - IPv4 Address of the far-end router. | IPv4 Address - IPv4 Address of the far-end neighbor or peer. | |||
| 7.6 IPv6 Address Sub-TLV | 10.6 IPv6 Address Sub-TLV | |||
| The IPv6 Address Sub-TLV MAY be used in Neighbor Up, Neighbor Update, | The IPv6 Address Sub-TLV MAY be used in Neighbor Up, Neighbor | |||
| and Peer Update Messages, if the client is aware of the Layer 3 | Update, and Peer Update Messages, if the client is aware of the | |||
| address. When included in Neighbor messages, the IPv6 Address sub-TLV | Layer 3 address. When included in Neighbor messages, the IPv6 | |||
| contains the IPv6 address of the far-end router (neighbor). In | Address sub-TLV contains the IPv6 address of the far-end neighbor. | |||
| the Peer Update, it contains the IPv6 address of the local router. | In the Peer Update, it contains the IPv6 address of the | |||
| In either case, the sub-TLV also contains an indication of whether | originating peer. In either case, the sub-TLV also contains an | |||
| this is a new or existing address, or is a deletion of a | indication of whether this is a new or existing address, or is a | |||
| previously known address. | deletion of a previously known address. | |||
| The IPv6 Address sub-TLV contains the following fields: | The IPv6 Address sub-TLV contains the following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 17 | Add/Drop | | |TLV Type =TBD |TLV Flags=0x10 |Length = 17 | Add/Drop | | |||
| | | | | Indicator | | | | | | Indicator | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | IPv6 Address | | | IPv6 Address | | |||
| skipping to change at page 13, line 33 ¶ | skipping to change at page 16, line 44 ¶ | |||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits are not | TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits are not | |||
| used and MUST be set to '0'. | used and MUST be set to '0'. | |||
| Length - 17 | Length - 17 | |||
| Add/Drop - Value indicating whether this is a new or | Add/Drop - Value indicating whether this is a new or | |||
| Indicator existing address (0x01), or a withdrawal of | Indicator existing address (0x01), or a withdrawal of | |||
| an address (0x02). | an address (0x02). | |||
| IPv6 Address - IPv6 Address of the far-end router. | IPv6 Address - IPv6 Address of the far-end neighbor or peer. | |||
| 7.7 Maximum Data Rate Sub-TLV | 10.7 Maximum Data Rate Sub-TLV | |||
| The Maximum Data Rate (MDR) Sub-TLV is used in Neighbor Up, Neighbor | The Maximum Data Rate (MDR) Sub-TLV is used in Neighbor Up, Neighbor | |||
| Update, and Link Characteristics ACK Messages to indicate the | Update, Peer Discovery, Peer Update, and Link Characteristics ACK | |||
| maximum theoretical data rate, in bits per second, that can be | Messages to indicate the maximum theoretical data rate, in bits per | |||
| achieved on the link. When metrics are reported via the messages | second, that can be achieved on the link. When metrics are reported | |||
| listed above, the maximum data rate MUST be reported. | via the messages listed above, the maximum data rate MUST be reported. | |||
| The Maximum Data Rate sub-TLV contains the following fields: | The Maximum Data Rate sub-TLV contains the following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 8 | MDR (bps) | | |TLV Type =TBD |TLV Flags=0x10 |Length = 8 | MDR (bps) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | MDR (bps) | | | MDR (bps) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| skipping to change at page 14, line 4 ¶ | skipping to change at page 17, line 18 ¶ | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 8 | MDR (bps) | | |TLV Type =TBD |TLV Flags=0x10 |Length = 8 | MDR (bps) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | MDR (bps) | | | MDR (bps) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | MDR (bps) | | | MDR (bps) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| TLV Type - TBD | TLV Type - TBD | |||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other | TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other | |||
| bits are not used and MUST be set to '0'. | bits are not used and MUST be set to '0'. | |||
| Length - 8 | Length - 8 | |||
| Maximum Data Rate - A 64-bit unsigned number, representing the | Maximum Data Rate - A 64-bit unsigned number, representing the | |||
| maximum theoretical data rate, in bits per | maximum theoretical data rate, in bits per | |||
| second (bps), that can be achieved on the | second (bps), that can be achieved on the | |||
| link. | link. | |||
| 7.8 Current Data Rate Sub-TLV | 10.8 Current Data Rate Sub-TLV | |||
| The Current Data Rate (CDR) Sub-TLV is used in Neighbor Up, Neighbor | The Current Data Rate (CDR) Sub-TLV is used in Neighbor Up, Neighbor | |||
| Update, Link Characteristics Request, and Link Characteristics ACK | Update, Peer Discovery, Peer Update, Link Characteristics Request, | |||
| messages to indicate the rate at which the link is currently | and Link Characteristics ACK messages to indicate the rate at which | |||
| operating, or in the case of the Link Characteristics Request, | the link is currently operating, or in the case of the Link | |||
| the desired data rate for the link. | Characteristics Request, the desired data rate for the link. | |||
| The Current Data Rate sub-TLV contains the following fields: | The Current Data Rate sub-TLV contains the following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 8 |CDR (bps) | | |TLV Type =TBD |TLV Flags=0x10 |Length = 8 |CDR (bps) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | CDR (bps) | | | CDR (bps) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| skipping to change at page 14, line 42 ¶ | skipping to change at page 17, line 57 ¶ | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| TLV Type - TBD | TLV Type - TBD | |||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other | TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other | |||
| bits are not used and MUST be set to '0'. | bits are not used and MUST be set to '0'. | |||
| Length - 8 | Length - 8 | |||
| Current Data Rate - A 64-bit unsigned number, representing the | Current Data Rate - A 64-bit unsigned number, representing the | |||
| current data rate, in bits per second (bps), | current rate, in bits per second (bps), | |||
| on the link. When reporting metrics (e.g, | on the link. When reporting metrics (e.g, | |||
| in Neighbor Up, Neighbor Down, or Link | in Neighbor Up, Neighbor Down, Peer | |||
| Discovery, Peer Update, or Link | ||||
| Characteristics ACK), if there is no | Characteristics ACK), if there is no | |||
| distinction between current and maximum | distinction between current and maximum | |||
| data rates, current data rate SHOULD be | data rates, current data rate SHOULD be | |||
| set equal to the maximum data rate. | set equal to the maximum data rate. | |||
| 7.9 Latency Sub-TLV | 10.9 Expected Forwarding Time Sub-TLV | |||
| The Latency Sub-TLV is used in Neighbor Up, Neighbor Update, Link | The Expected Forwarding Time (EFT) Sub-TLV is used in Neighbor Up, | |||
| Characteristics Request, and Link Characteristics ACK messages to | Neighbor Update, Peer Discovery, and Peer Update messages to indicate | |||
| indicate the amount of latency on the link, or in the case of the | the typical latency between the arrival of a given packet at the | |||
| Link Characteristics Request, to indicate the maximum latency | transmitting device and the reception of the packet at the other end | |||
| required (e.g. a should-not-exeed value) on the link. | of the link. EFT combines transmission time, idle time, waiting time, | |||
| freezing time, and queuing time to the degree that those values are | ||||
| meaningful to a given transmission medium. | ||||
| The Expected Forwarding Time sub-TLV contains the following fields: | ||||
| 0 1 2 3 | ||||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 4 | EFT (ms) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | EFT | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| TLV Type - TBD | ||||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other | ||||
| bits are not used and MUST be set to '0'. | ||||
| Length - 4 | ||||
| Current Data Rate - A 32-bit unsigned number, representing the | ||||
| expected forwarding time, in milliseconds, | ||||
| on the link. | ||||
| 10.10 Latency Sub-TLV | ||||
| The Latency Sub-TLV is used in Neighbor Up, Neighbor Update, Peer | ||||
| Discovery, Peer Update, Link Characteristics Request, and Link | ||||
| Characteristics ACK messages to indicate the amount of latency on | ||||
| the link, or in the case of the Link Characteristics Request, to | ||||
| indicate the maximum latency required (e.g. a should-not-exeed value) | ||||
| on the link. | ||||
| The Latency Sub-TLV contains the following fields: | The Latency Sub-TLV contains the following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 2 |Latency (ms) | | |TLV Type =TBD |TLV Flags=0x10 |Length = 2 |Latency (ms) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |Latency (ms) | | |Latency (ms) | | |||
| +-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| TLV Type - TBD | TLV Type - TBD | |||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other | TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other | |||
| bits are not used and MUST be set to '0'. | bits are not used and MUST be set to '0'. | |||
| Length - 2 | Length - 2 | |||
| Latency - the transmission delay that a packet | Latency - The transmission delay that a packet | |||
| encounters as it is transmitted over the | encounters as it is transmitted over the | |||
| link. In Neighbor Up, Neighbor Update, | link. In Neighbor Up, Neighbor Update, | |||
| and Link Characteristics ACK, this value | and Link Characteristics ACK, this value | |||
| is reported in absolute delay, in | is reported in absolute delay, in | |||
| milliseconds. The calculation of latency | milliseconds. The calculation of latency | |||
| is modem-device dependent. For example, | is implementation dependent. For example, | |||
| the latency may be a running average | the latency may be a running average | |||
| calculated from the internal queuing. If | calculated from the internal queuing. If | |||
| the modem device cannot calculate latency, | a device cannot calculate latency, it | |||
| it SHOULD be reported as 0. In the Link | SHOULD be reported as 0. In the Link | |||
| Characteristics Request Message, this value | Characteristics Request Message, this value | |||
| represents the maximum delay, in milliseconds, | represents the maximum delay, in | |||
| expected on the link. | milliseconds, expected on the link. | |||
| 7.10 Resources Sub-TLV | 10.11 Resources Sub-TLV | |||
| The Resources Sub-TLV is used in Neighbor Up, Neighbor Update, and Link | The Resources Sub-TLV is used in Neighbor Up, Neighbor Update, Peer | |||
| Characteristics ACK messages to indicate a percentage (0-100) amount | Discovery, Peer Update, and Link Characteristics ACK messages to | |||
| of resources (e.g. battery power) remaining on the modem device. | indicate a percentage (0-100) amount of resources (e.g. battery | |||
| power) remaining on the originating peer. | ||||
| The Resources TLV contains the following fields: | The Resources TLV contains the following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 1 | Resources | | |TLV Type =TBD |TLV Flags=0x10 |Length = 1 | Resources | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| TLV Type - TBD | TLV Type - TBD | |||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other | TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other | |||
| bits are not used and MUST be set to '0'. | bits are not used and MUST be set to '0'. | |||
| Length - 1 | Length - 1 | |||
| Resources - a percentage, 0-100, representing the amount | Resources - A percentage, 0-100, representing the | |||
| of remaining resources, such as battery power. | amount of remaining resources, such as | |||
| If resources cannot be calculated, a value of | battery power. If resources cannot be | |||
| 100 SHOULD be reported. | calculated, a value of 100 SHOULD be | |||
| reported. | ||||
| 7.11 Relative Link Quality Sub-TLV | 10.12 Relative Link Quality Sub-TLV | |||
| The Relative Link Quality (RLQ) Sub-TLV is used in Neighbor Up, | The Relative Link Quality (RLQ) Sub-TLV is used in Neighbor Up, | |||
| Neighbor Update, and Link Characteristics ACK messages to indicate | Neighbor Update, Peer Discovery, Peer Update, and Link | |||
| the quality of the link as calculated by the modem device. | Characteristics ACK messages to indicate the quality of the link | |||
| as calculated by the originating peer. | ||||
| The Relative Link Quality sub-TLV contains the following fields: | The Relative Link Quality sub-TLV contains the following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 1 |Relative Link | | |TLV Type =TBD |TLV Flags=0x10 |Length = 1 |Relative Link | | |||
| | | | |Quality (RLQ) | | | | | |Quality (RLQ) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| TLV Type - TBD | TLV Type - TBD | |||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other | TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other | |||
| bits are not used and MUST be set to '0'. | bits are not used and MUST be set to '0'. | |||
| Length - 1 | Length - 1 | |||
| Relative Link Quality - a non-dimensional number, 0-100, | Relative Link Quality - A non-dimensional number, 0-100, | |||
| representing the relative link quality. | representing relative link quality. A value | |||
| A value of 100 represents a link of the | of 100 represents a link of the highest | |||
| highest quality. If the RLQ cannot be | quality. If the RLQ cannot be calculated, a | |||
| calculated, a value of 100 SHOULD be | value of 100 SHOULD be reported. | |||
| reported. | ||||
| 7.12 Status Sub-TLV | 10.13 Status Sub-TLV | |||
| The Status Sub-TLV is sent from either the client or router to | The Status Sub-TLV is sent from either the client or server to | |||
| indicate the success or failure of a given request | indicate the success or failure of a given request | |||
| The Status Sub-TLV contains the following fields: | The Status Sub-TLV contains the following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 1 | Code | | |TLV Type =TBD |TLV Flags=0x10 |Length = 1 | Code | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| TLV Type - TBD | TLV Type - TBD | |||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits are | TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits | |||
| not used and MUST be set to '0'. | are not used and MUST be set to '0'. | |||
| Length - 1 | Length - 1 | |||
| Termination Code - 0 = Success | Termination Code - 0 = Success | |||
| Non-zero = Failure. Specific values of a non- | Non-zero = Failure. Specific values of a non- | |||
| zero termination code depend on the operation | zero termination code depend on the operation | |||
| requested (e.g. Neighbor Up, Neighbor Down, etc). | requested (e.g. Neighbor Up, Neighbor Down, etc). | |||
| 7.13 Heartbeat Interval Sub-TLV | 10.14 Heartbeat Interval Sub-TLV | |||
| The Heartbeat Interval Sub-TLV MAY be sent from the client during | The Heartbeat Interval Sub-TLV MAY be sent from the client during | |||
| Peer Discovery to indicate the desired Heartbeat timeout window. | Peer Discovery to indicate the desired Heartbeat timeout window. | |||
| If included in the Peer Discovery, the router MUST either accept the | If included in the Peer Discovery, the server MUST either accept the | |||
| timeout interval, or reject the Peer Discovery. | timeout interval, or reject the Peer Discovery. Failing to include | |||
| the Heartbeat Interval Sub-TLV in Peer Discovery indicates a | ||||
| desire to establish the peer-to-peer DLEP session without an | ||||
| activity timeout (e.g. an infinite timeout value). | ||||
| The Heartbeat Interval Sub-TLV contains the following fields: | The Heartbeat Interval Sub-TLV contains the following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 1 | Interval | | |TLV Type =TBD |TLV Flags=0x10 |Length = 1 | Interval | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| TLV Type - TBD | TLV Type - TBD | |||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits are | TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits are | |||
| not used and MUST be set to '0'. | not used and MUST be set to '0'. | |||
| Length - 1 | Length - 1 | |||
| Interval - 0 = Do NOT use heartbeats on this peer-to-peer | Interval - 0 = Do NOT use heartbeats on this peer-to-peer | |||
| session. Non-zero = Interval, in seconds, for | session. Non-zero = Interval, in seconds, for | |||
| heartbeat messages. | heartbeat messages. | |||
| 7.14 Heartbeat Threshold Sub-TLV | 10.15 Heartbeat Threshold Sub-TLV | |||
| The Heartbeat Threshold Sub-TLV MAY be sent from the client during | The Heartbeat Threshold Sub-TLV MAY be sent from the client during | |||
| Peer Discovery to indicate the desired number of windows, of time | Peer Discovery to indicate the desired number of windows, of time | |||
| (Heartbeat Interval) seconds, to wait before either peer declares | (Heartbeat Interval) seconds, to wait before either peer declares | |||
| the peer-to-peer session lost. In this case, the overall amount of | the peer session lost. In this case, the overall amount of time | |||
| time before a peer-to-peer session is declared lost is expressed as | before a peer session is declared lost is expressed as | |||
| (Interval * Threshold), where 'Interval' is the value in the | (Interval * Threshold), where 'Interval' is the value in the | |||
| Heartbeat Interval sub-TLV, documented above. If this sub-TLV is | Heartbeat Interval sub-TLV, documented above. If this sub-TLV is | |||
| included by the client in the Peer Discovery, the client MUST also | included by the client in the Peer Discovery, the client MUST also | |||
| specify the Heartbeat Interval sub-TLV with a non-zero interval. If | specify the Heartbeat Interval sub-TLV with a non-zero interval. If | |||
| this sub-TLV is received during Peer Discovery, the router MUST | this sub-TLV is received during Peer Discovery, the server MUST | |||
| either accept the threshold, or reject the Peer Discovery. | either accept the threshold, or reject the Peer Discovery. If the | |||
| Heartbeat Interval Sub-TLV is included, but this Sub-TLV is | ||||
| omitted, then a threshold of '1' is assumed. | ||||
| The Heartbeat Threshold Sub-TLV contains the following fields: | The Heartbeat Threshold Sub-TLV contains the following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 1 | Threshold | | |TLV Type =TBD |TLV Flags=0x10 |Length = 1 | Threshold | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| TLV Type - TBD | TLV Type - TBD | |||
| skipping to change at page 18, line 25 ¶ | skipping to change at page 22, line 25 ¶ | |||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits are | TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits are | |||
| not used and MUST be set to '0'. | not used and MUST be set to '0'. | |||
| Length - 1 | Length - 1 | |||
| Threshold - 0 = Do NOT use heartbeats on this peer-to-peer | Threshold - 0 = Do NOT use heartbeats on this peer-to-peer | |||
| session. Non-zero = Number of windows, of | session. Non-zero = Number of windows, of | |||
| Heartbeat Interval seconds, to wait before | Heartbeat Interval seconds, to wait before | |||
| declaring a peer-to-peer session to be lost. | declaring a peer-to-peer session to be lost. | |||
| 7.15 Link Characteristics ACK Timer Sub-TLV | 10.16 Link Characteristics ACK Timer Sub-TLV | |||
| The Link Characteristic ACK Timer Sub-TLV MAY be sent from the | The Link Characteristic ACK Timer Sub-TLV MAY be sent from the | |||
| client during Peer Discovery to indicate the desired number of | client during Peer Discovery to indicate the desired number of | |||
| seconds the router should wait for a response to a Link | seconds the server should wait for a response to a Link | |||
| Characteristics Request. If this sub-TLV is received during Peer | Characteristics Request. If this sub-TLV is received during Peer | |||
| Discovery, the router MUST either accept the timeout value, or | Discovery, the server MUST either accept the timeout value, or | |||
| reject the Peer Discovery. | reject the Peer Discovery. If this Sub-TLV is omitted, | |||
| implementations SHOULD choose a default value. | ||||
| The Link Characteristics ACK Timer Sub-TLV contains the | The Link Characteristics ACK Timer Sub-TLV contains the | |||
| following fields: | following fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 1 | Interval | | |TLV Type =TBD |TLV Flags=0x10 |Length = 1 | Interval | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| skipping to change at page 19, line 5 ¶ | skipping to change at page 23, line 5 ¶ | |||
| not used and MUST be set to '0'. | not used and MUST be set to '0'. | |||
| Length - 1 | Length - 1 | |||
| Interval - 0 = Do NOT use timeouts for Link Characteristics | Interval - 0 = Do NOT use timeouts for Link Characteristics | |||
| requests on this peer-to-peer session. | requests on this peer-to-peer session. | |||
| Non-zero = Interval, in seconds, to wait before | Non-zero = Interval, in seconds, to wait before | |||
| considering a Link Characteristics Request has | considering a Link Characteristics Request has | |||
| been lost. | been lost. | |||
| 8. DLEP Protocol Messages | 10.17 Credit Window Status Sub-TLV | |||
| The Credit Window Status Sub-TLV MUST be sent by the DLEP peer | ||||
| originating a Neighbor Up message when use of credits is desired | ||||
| for a given session. In the Neighbor Up message, when credits | ||||
| are desired, the originating peer MUST set the value of the | ||||
| window it controls (e.g. the Client Receive Window, or Server | ||||
| Receive Window) to an initial, non-zero value. The peer receiving | ||||
| a Neighbor Up message with a Credit Window Status Sub-TLV MUST | ||||
| either reject the use of credits, via a Neighbor Up ACK response | ||||
| with the correct Status Sub-TLV, or set the initial value from | ||||
| the data contained in the Credit Window Status Sub-TLV. If the | ||||
| initialization completes successfully, the receiving peer MUST | ||||
| respond to the Neighbor Up message with a Neighbor Up ACK message | ||||
| that contains a Credit Window Status Sub-TLV, initializing its | ||||
| receive window. | ||||
| The Credit Window Status Sub-TLV contains the following fields: | ||||
| 0 1 2 3 | ||||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 16 | Client Receive| | ||||
| | | | | Window value | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client Receive Window Value | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client Receive Window Value | Server Receive| | ||||
| | | Window Value | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Server Receive Window Value | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Server Receive Window Value | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| TLV Type - TBD | ||||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits | ||||
| are not used and MUST be set to '0'. | ||||
| Length - 16 | ||||
| Client Receive - A 64-bit unsigned number, indicating the | ||||
| Window value current (or initial) number of credits | ||||
| available on the Client Receive Window. | ||||
| Server Receive - A 64-bit unsigned number, indicating the | ||||
| Window Value current (or initial) number of credits | ||||
| available on the Server Receive Window. | ||||
| 10.18 Credit Grant Sub-TLV | ||||
| The Credit Grant Request Sub-TLV MAY be sent from either DLEP | ||||
| peer to grant an increment to credits on a window. The Credit | ||||
| Grant Sub-TLV is sent as part of a Neighbor Update message. The | ||||
| value in a Credit Grant Sub-TLV represents an increment to be | ||||
| added to any existing credits available on the window. Upon | ||||
| successful receipt and processing of a Credit Grant Sub-TLV, the | ||||
| receiving peer SHOULD respond with a DLEP Neighbor Update message | ||||
| containing a Credit Window Status Sub-TLV to report the updated | ||||
| aggregate values for synchronization purposes. | ||||
| The Credit Grant Sub-TLV contains the following fields: | ||||
| 0 1 2 3 | ||||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 8 | Credit | | ||||
| | | | | Increment | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Credit Increment | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Credit Increment | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| TLV Type - TBD | ||||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits | ||||
| are not used and MUST be set to '0'. | ||||
| Length - 0 | ||||
| Reserved - A 64-bit unsigned number representing the | ||||
| additional credits to be assigned to the | ||||
| credit window. Since credits can only be | ||||
| granted by the receiver on a window, the | ||||
| applicable credit window (either the CRW or | ||||
| the SRW) is derived from the sender of the | ||||
| grant. The Credit Increment MUST NOT cause | ||||
| the window to overflow; if this condition | ||||
| occurs, implementations MUST set the credit | ||||
| window to the maximum value contained in a | ||||
| 64-bit quantity. | ||||
| 10.19 Credit Request Sub-TLV | ||||
| The Credit Request Sub-TLV MAY be sent from either DLEP peer, via | ||||
| a Neighbor Update order, to indicate the desire for the partner to | ||||
| grant additional credits in order for data transfer to proceed on | ||||
| the session. If the corresponding Neighbor Up message for this | ||||
| session did NOT contain a Credit Window Status Sub-TLV, indicating | ||||
| that credits are to be used on the session, then the Credit Request | ||||
| Sub-TLV MUST be rejected, by sending a Neighbor Update ACK containing | ||||
| a Status Sub-TLV, by the receiving peer. If credits are in use on | ||||
| the session, then the receiving peer MAY respond with a DLEP | ||||
| Neighbor Update message containing a Credit Grant Sub-TLV with | ||||
| an increment of credits for the session. | ||||
| The Credit Request Sub-TLV contains the following fields: | ||||
| 0 1 2 3 | ||||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Type =TBD |TLV Flags=0x10 |Length = 0 | Reserved, MUST| | ||||
| | | | | be set to 0 | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| TLV Type - TBD | ||||
| TLV Flags - 0x10, Bit 3 (thasvalue) is set, all other bits | ||||
| are not used and MUST be set to '0'. | ||||
| Length - 0 | ||||
| Reserved - 0 = This field is currently unused and MUST be | ||||
| set to 0. | ||||
| 11. DLEP Protocol Messages | ||||
| DLEP places no additional requirements on the RFC 5444 Packet | DLEP places no additional requirements on the RFC 5444 Packet | |||
| formats, or the packet header. DLEP does require that the optional | formats, or the packet header. DLEP does require that the optional | |||
| 'msg-seq-num' in the message header exist, and defines a set of | 'msg-seq-num' in the message header exist, and defines a set of | |||
| values for the 'tlv-type' field in the RFC 5444 TLV block. Therefore, | values for the 'tlv-type' field in the RFC 5444 TLV block. Therefore, | |||
| a DLEP message, starting from the RFC 5444 Message header, would | a DLEP message, starting from the RFC 5444 Message header, would | |||
| appear as follows: | appear as follows: | |||
| 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 19, line 28 ¶ | skipping to change at page 25, line 50 ¶ | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | | | | DLEP_MESSAGE | 0x1 | 0x0 | | | |||
| | (value TBD) | | | | | | (value TBD) | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num | TLV block length (length of | | | Message Seq Num | TLV block length (length of | | |||
| | | DLEP order + Sub-TLVs) | | | | DLEP order + Sub-TLVs) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | DLEP Message |TLV Flags=0x10 | Length | Start of DLEP | | | DLEP Message |TLV Flags=0x10 | Length | Start of DLEP | | |||
| | Block value | | | Sub-TLVs... | | | Block value | | | Sub-TLVs... | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| 8.1 Message Block TLV Values | 11.1 Message Block TLV Values | |||
| As mentioned above, all DLEP messages utilize a single RFC 5444 | As mentioned above, all DLEP messages utilize a single RFC 5444 | |||
| message type, the DLEP_MESSAGE (TBD). DLEP further identifies | message type, the DLEP_MESSAGE (TBD). DLEP further identifies | |||
| protocol messages by using the 'tlv-type' field in the RFC 5444 | protocol messages by using the 'tlv-type' field in the RFC 5444 | |||
| message TLV block. DLEP defines the following Message-Type- | message TLV block. DLEP defines the following Message-Type- | |||
| specific values for the tlv-type field: | specific values for the tlv-type field: | |||
| TLV TLV | TLV TLV | |||
| Value Description | Value Description | |||
| ========================================= | ========================================= | |||
| skipping to change at page 20, line 8 ¶ | skipping to change at page 26, line 29 ¶ | |||
| TBD Neighbor Update | TBD Neighbor Update | |||
| TBD Neighbor Address Update | TBD Neighbor Address Update | |||
| TBD Neighbor Address Update ACK | TBD Neighbor Address Update ACK | |||
| TBD Heartbeat | TBD Heartbeat | |||
| TBD Link Characteristics Request | TBD Link Characteristics Request | |||
| TBD Link Characteristics ACK | TBD Link Characteristics ACK | |||
| In all of the diagrams following, the message layouts begin with the | In all of the diagrams following, the message layouts begin with the | |||
| RFC 5444 message header. | RFC 5444 message header. | |||
| 9. Peer Discovery Messages | 12. Peer Discovery Messages | |||
| There are two different types of Peer Discovery Messages, Attached | There are two different types of Peer Discovery Messages, Attached | |||
| and Detached. Attached Peer Discovery Messages are sent by the | and Detached. Attached Peer Discovery Messages are sent by the | |||
| client when it is directly attached to the router (e.g. the client | client when it is directly attached to the server (e.g. the client | |||
| exists as a card in the chassis, or it is connected via Ethernet with | exists as a card in the chassis, or it is connected via Ethernet with | |||
| no intervening devices). The Detached Peer Discovery message, on the | no intervening devices). The Detached Peer Discovery message, on the | |||
| other hand, is sent by a "remote" client -- for example, a client at | other hand, is sent by a "remote" client -- for example, a client at | |||
| a satellite hub system might use a Detached Discovery Message in | a satellite hub system might use a Detached Discovery Message in | |||
| order to act as a proxy for remote ground terminals. To explain in | order to act as a proxy for remote ground terminals. To explain in | |||
| another way, a detached client uses the variable link itself (the | another way, a detached client uses the variable link itself (the | |||
| radio or satellite link) to establish a DLEP session with a remote | radio or satellite link) to establish a DLEP session with a remote | |||
| router. | server. | |||
| 9.1 Attached Peer Discovery Message | 12.1 Attached Peer Discovery Message | |||
| The Attached Peer Discovery Message is sent by an attached client | The Attached Peer Discovery Message is sent by an attached client | |||
| to a router to begin a new DLEP association. The Peer Offer message | to a server to begin a new DLEP association. The Peer Offer message | |||
| is required to complete the discovery process. The client MAY | is required to complete the discovery process. The client MAY | |||
| implement its own retry heuristics in the event it (the client) | implement its own retry heuristics in the event it (the client) | |||
| determines the Attached Peer Discovery Message has timed out. | determines the Attached Peer Discovery Message has timed out. An | |||
| Attached Peer Discovery Message received from a peer that is already | ||||
| in session MUST be processed as if a Peer Termination Message had | ||||
| been received. An implementation MAY then process the received | ||||
| Attached Peer Discovery Message. | ||||
| Note that metric Sub-TLVs MAY be supplied with the Peer Discovery | ||||
| order. If metric Sub-TLVs are supplied, they MUST be used as a | ||||
| default value for all neighbor sessions established via this peer. | ||||
| The Attached Peer Discovery Message contains the following fields: | The Attached Peer Discovery Message 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 22 + size of opt | | | DLEP_MESSAGE | 0x1 | 0x0 | 22 + size of opt | | |||
| | (value TBD) | | | sub-TLV | | | (value TBD) | | | sub-TLV | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num |TLVs Length =14 + opt sub-TLVs | | | Message Seq Num |TLVs Length =14 + opt sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | DLEP Attached |TLV Flags=0x10 | Length =11 + | Sub-TLV type= | | | DLEP Attached |TLV Flags=0x10 | Length =11 + | Sub-TLVs | | |||
| | Peer Discovery| | opt sub-TLVs | Identification| | | Peer Discovery| | opt sub-TLVs | as noted below| | |||
| | (Value TDB) | | | sub-TLV (TBD) | | | (Value TDB) | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client ID |Sub-TLV type= |TLV Flags=0x10 | | ||||
| | |DLEP Version | | | ||||
| | |sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Length = 4 | Major Version | Minor Version | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Minor Version |Sub-TLV type= |TLV Flags=0x10 | Length = Len | | ||||
| | |Peer Type (TBD)| |of peer string | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | (Continued on next page) | | ||||
| 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 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | (Continued from previous page) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Peer Type Str |Sub-TLV Type= |TLV Flags=0x10 | Length = 1 | | ||||
| |MaxLen=80 bytes|Heartbeat Int. | | | | ||||
| | |(TBD) | | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Heartbeat |Sub-TLV Type= |TLV Flags=0x10 | Length = 1 | | ||||
| | Interval |HB Thresh. | | | | ||||
| | (seconds) |(TBD) | | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Heartbeat |Sub-TLV Type= |TLV FLags=0x10 | Length = 1 | | ||||
| | Threshold |Link Char. ACK | | | | ||||
| |(# of windows) |Timer (TBD) | | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |Link Char ACK | | ||||
| |Timer (sec) | | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (value TBD) | Message Type - DLEP_MESSAGE (value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum | Message Flags - Set to 0x1 (bit 3, mhasseqnum | |||
| bit is set). No other bits are | bit is set). No other bits are | |||
| used and MUST be set to '0'. | used and MUST be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 22 + size of optional sub-TLVs | Message Size - 22 + size of optional sub-TLVs | |||
| Message Sequence Number - a 16-bit unsigned integer field | Message Sequence Number - A 16-bit unsigned integer field | |||
| containing a sequence number | containing a sequence number | |||
| generated by the message | generated by the message | |||
| originator. | originator. | |||
| TLV Block - TLVs Length: 14 + size of optional | TLV Block - TLVs Length: 14 + size of optional | |||
| sub-TLVs. | sub-TLVs. | |||
| DLEP Attached Peer Disc. order | Sub-TLVs: | |||
| Identification TLV (MANDATORY) | Identification (MANDATORY) | |||
| Version Sub-TLV (OPTIONAL) | Version (OPTIONAL) | |||
| Peer Type Sub-TLV (OPTIONAL) | Peer Type (OPTIONAL) | |||
| Heartbeat Int. Sub-TLV (OPTIONAL) | Heartbeat Interval (OPTIONAL) | |||
| Heartbeat Threshold Sub-TLV (OPT.) | Heartbeat Threshold (OPTIONAL) | |||
| Link Characteristics ACK Timer | Link Characteristics ACK Timer | |||
| Sub-TLV (OPTIONAL) | (OPTIONAL) | |||
| Maximum Data Rate (OPTIONAL) | ||||
| Current Data Rate (OPTIONAL) | ||||
| Latency (OPTIONAL) | ||||
| Expected Forwarding Time (OPTIONAL) | ||||
| Resources (OPTIONAL) | ||||
| Relative Link Quality (OPTIONAL) | ||||
| 9.2 Detached Peer Discovery Message | 12.2 Detached Peer Discovery Message | |||
| The Detached Peer Discovery Message is sent by a detached client | The Detached Peer Discovery Message is sent by a detached client | |||
| proxy to a router to begin a new DLEP session. The Peer Offer | proxy to a server to begin a new DLEP session. The Peer Offer | |||
| message is required to complete the discovery process. The client | message is required to complete the discovery process. The client | |||
| MAY implement its own retry heuristics in the event it (the client) | MAY implement its own retry heuristics in the event it (the client) | |||
| determines the Detached Peer Discovery Message has timed out. | determines the Detached Peer Discovery Message has timed out. When | |||
| a DLEP implementation responds to a Detached Discovery Message with | ||||
| a Peer Offer, the implementation MUST enter an "in session" state | ||||
| with the peer. Any subsequent discovery message received from the | ||||
| peer MUST be processed as if a Peer Termination Message had been | ||||
| received (e.g. the existing peer session MUST be terminated). An | ||||
| implementation MAY then process the received discovery message. | ||||
| If metric sub-TLVs (e.g. Maximum Data Rate) are supplied with the | ||||
| Detached Peer Discovery message, these metrics MUST be used as the | ||||
| initial values for all far-end sessions (neighbors) established via | ||||
| the peer. | ||||
| The Detached Peer Discovery Message contains the following fields: | The Detached Peer Discovery Message 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 22 + size of opt | | | DLEP_MESSAGE | 0x1 | 0x0 | 22 + size of opt | | |||
| | (value TBD) | | | sub-TLV | | | (value TBD) | | | sub-TLV | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num |TLVs Length =14 + opt sub-TLVs | | | Message Seq Num |TLVs Length =14 + opt sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | DLEP Detached |TLV Flags=0x10 | Length = 11 + | Sub-TLV type= | | | DLEP Detached |TLV Flags=0x10 | Length = 11 + | Sub-TLVs as | | |||
| | Peer Discovery| | opt sub-TLVs | Identification| | | Peer Discovery| | opt sub-TLVs | noted below | | |||
| | (Value TDB) | | | sub-TLV (TBD) | | | (Value TDB) | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client ID |Sub-TLV type= |TLV Flags=0x10 | | ||||
| | |DLEP Version | | | ||||
| | |sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Length = 4 | Major Version | Minor Version | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Minor Version |Sub-TLV type= |TLV Flags=0x10 | Length = Len | | ||||
| | |Peer Type (TBD)| |of peer string | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Peer Type Str |Sub-TLV Type= |TLV Flags=0x10 | Length = 1 | | ||||
| |MaxLen=80 bytes|Heartbeat Int. | | | | ||||
| | |(TBD) | | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Heartbeat |Sub-TLV Type= |TLV Flags=0x10 | Length = 1 | | ||||
| | Interval |HB Thresh. | | | | ||||
| | (seconds) |(TBD) | | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Heartbeat |Sub-TLV Type= |TLV FLags=0x10 | Length = 1 | | ||||
| | Threshold |Link Char. ACK | | | | ||||
| |(# of windows) |Timer (TBD) | | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |Link Char ACK | | ||||
| |Timer (sec) | | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (value TBD) | Message Type - DLEP_MESSAGE (value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, | Message Flags - Set to 0x1 (bit 3, | |||
| mhasseqnum bit is set). | mhasseqnum bit is set). | |||
| All other bits are not used | All other bits are not used | |||
| and MUST be set to '0'. | and MUST be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 22 + size of optional | Message Size - 22 + size of optional | |||
| sub-TLVs | sub-TLVs | |||
| Message Sequence Number - A 16-bit unsigned integer | Message Sequence Number - A 16-bit unsigned integer | |||
| field containing a sequence | field containing a sequence | |||
| number, generated by the | number, generated by the | |||
| message originator. | message originator. | |||
| TLV Block - TLVs Length: 14 + size of | TLV Block - TLVs Length: 14 + size of | |||
| optional sub-TLVs. | optional sub-TLVs. | |||
| DLEP Detached Peer Discovery order | Sub-TLVs | |||
| Identification sub-TLV (MANDATORY) | Identification (MANDATORY) | |||
| Version sub-TLV (OPTIONAL) | Version (OPTIONAL) | |||
| Peer Type Sub-TLV (OPTIONAL) | Peer Type (OPTIONAL) | |||
| Heartbeat Interval Sub-TLV (OPTIONAL) | Heartbeat Interval (OPTIONAL) | |||
| Heartbeat Threshold Sub-TLV (OPTIONAL) | Heartbeat Threshold (OPTIONAL) | |||
| Link Char. ACK Timer Sub-TLV(OPTIONAL) | Link Char. ACK Timer (OPTIONAL) | |||
| Maximum Data Rate (OPTIONAL) | ||||
| Current Data Rate (OPTIONAL) | ||||
| Latency (OPTIONAL) | ||||
| Expected Forwarding Time (OPTIONAL) | ||||
| Resources (OPTIONAL) | ||||
| Relative Link Quality (OPTIONAL) | ||||
| 10. Peer Offer Message | As in the Attached Peer Discovery, the client MAY include metric | |||
| sub-TLVs. If included, the router SHOULD use these values as defaults | ||||
| that will apply to all sessions established via this client. | ||||
| The Peer Offer Message is sent by a router to a client or client | 13. Peer Offer Message | |||
| proxy in response to a Peer Discovery Message. The Peer Offer | ||||
| Message is the response to either of the Peer Discovery messages | The Peer Offer Message is sent by a server to a client in response | |||
| (either Attached or Detached), and completes the DLEP session | to a Peer Discovery Message. The Peer Offer Message is the response | |||
| establishment. | to either of the Peer Discovery messages (Attached or Detached), | |||
| and completes the DLEP peer session establishment. Upon sending the | ||||
| Peer Offer Message, the server then enters an "in session" state | ||||
| with the client. From the client perspective, receipt and successful | ||||
| parsing of a Peer Offer order MUST cause the client to enter the "in | ||||
| session" state. Any subsequent Discovery messages sent or received | ||||
| on this session MUST be considered an error, and the session MUST be | ||||
| terminated as if a Peer Termination Message had been received. | ||||
| The Peer Offer Message contains the following fields: | The Peer Offer Message 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 22 + size of opt | | | DLEP_MESSAGE | 0x1 | 0x0 | 22 + size of opt | | |||
| | (value TBD) | | | sub-TLV | | | (value TBD) | | | sub-TLV | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num |TLVs Length =14 + opt sub-TLVs | | | Message Seq Num |TLVs Length =14 + opt sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |DLEP Peer Offer|TLV Flags=0x10 | Length = 11 + | Sub-TLV type= | | |DLEP Peer Offer|TLV Flags=0x10 | Length = 11 + | Sub-TLVs as | | |||
| | (Value TBD) | | opt sub-TLVs | Identification| | | (Value TBD) | | opt sub-TLVs | indicated | | |||
| | | | | sub-TLV (TBD) | | | | | | below | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | (Continued on next page) | | ||||
| 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 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | (Continued from above) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client ID |Sub-TLV type= |TLV Flags=0x10 | | ||||
| | |DLEP Version | | | ||||
| | |sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Length = 4 | Major Version | Minor Version | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Minor Version |Peer Type sub- |TLV Flags=0x10 | Length = Len | | ||||
| | |TLV = TDB | |of peer string | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Peer Type Str |DLEP IPv4 sub- |TLV Flags=0x10 | Length = 5 | | ||||
| |MaxLen=80 bytes|TLV (TBD) | | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Add/Drop Ind. | IPv4 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | IPv4 Address |DLEP IPv6 sub- |TLV Flags=0x10 | Length = 17 | | ||||
| | |TLV Type = TBD | | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Add/Drop Ind. | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |IPv6 Address |Sub-TLV type= |TLV Flags=0x10 | Length = 1 | | ||||
| | |Heartbeat Int. | | | | ||||
| | |(TBD) | | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Heartbeat |Sub-TLV Type= |TLV Flags=0x10 | Length = 1 | | ||||
| | Interval |Heartbeat | | | | ||||
| | (seconds) |Threshold (TBD)| | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Heartbeat |Sub-TLV Type= |TLV FLags=0x10 | Length = 1 | | ||||
| | Threshold |Link Char. ACK | | | | ||||
| | (# of windows)|Timer (TBD) | | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Link Char ACK |Sub-TLV Type= |TLV Flags=0x10 | Length = 1 | | ||||
| |Timer (sec) |DLEP Status | | | | ||||
| | |(TBD) | | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Code | | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (Value TBD) | Message Type - DLEP_MESSAGE (Value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | |||
| is set). All other bits are unused and | is set). All other bits are unused and | |||
| MUST be set to '0'. | MUST be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 22 + size of optional sub-TLVs | Message Size - 22 + size of optional sub-TLVs | |||
| Message Sequence Number - A 16-bit unsigned integer field containing | Message Sequence Number - A 16-bit unsigned integer field containing | |||
| a sequence number, generated by the message | a sequence number, generated by the message | |||
| originator. | originator. | |||
| TLV Block - TLV Length: 14 + size of optional sub-TLVs | TLV Block - TLV Length: 14 + size of optional sub-TLVs | |||
| DLEP Peer Offer order | ||||
| Identification sub-TLV (MANDATORY) | ||||
| DLEP Version sub-TLV (OPTIONAL) | ||||
| Peer Type sub-TLV (OPTIONAL) | ||||
| IPv4 Address sub-TLV (OPTIONAL) | ||||
| IPv6 Address sub-TLV (OPTIONAL) | ||||
| Status sub-TLV (OPTIONAL) | ||||
| Heartbeat Interval Sub-TLV (OPTIONAL) | ||||
| Heartbeat Threshold Sub-TLV (OPTIONAL) | ||||
| Link Char. ACK Timer Sub-TLV (OPTIONAL) | ||||
| 11. Peer Update Message | Sub TLVs | |||
| Identification (MANDATORY) | ||||
| Version (OPTIONAL) | ||||
| Peer Type (OPTIONAL) | ||||
| IPv4 Address (OPTIONAL) | ||||
| IPv6 Address (OPTIONAL) | ||||
| Status (OPTIONAL) | ||||
| Heartbeat Interval (OPTIONAL) | ||||
| Heartbeat Threshold (OPTIONAL) | ||||
| Link Characteristics ACK Timer (OPTIONAL) | ||||
| The Peer Update message is sent by the router to indicate local | 14. Peer Update Message | |||
| Layer 3 address changes. For example, addition of an IPv4 address | ||||
| to the router would prompt a Peer Update message to its attached | The Peer Update message is sent by a DLEP peer to indicate local | |||
| DLEP clients. If the modem device is capable of understanding and | Layer 3 address changes, or for metric changes on a device-wide | |||
| forwarding this information, the address update would prompt any | basis. For example, addition of an IPv4 address to the server would | |||
| remote DLEP clients (DLEP clients that are on the far-end of the | prompt a Peer Update message to its attached DLEP clients. Also, a | |||
| variable link) to issue a "Neighbor Update" message to their local | client that changes its Maximum Data Rate for all destinations MAY | |||
| routers, with the address change information. Clients that do not | reflect that change via a Peer Update Message to its attached server. | |||
| track Layer 3 addresses MUST silently ignore the Peer Update | ||||
| Message. Clients that track Layer 3 addresses MUST acknowledge the | With Layer 3 address changes, if the client is capable of | |||
| Peer Update with a Peer Update ACK message. Routers MAY employ | understanding and forwarding this information, the address update | |||
| heuristics to retransmit Peer Update messages. Sending of Peer | would prompt any remote DLEP clients (DLEP clients that are on the | |||
| Update Messages SHOULD cease when a router implementation | far-end of the variable link) to issue a "Neighbor Update" message to | |||
| determines that a partner modem device does NOT support Layer 3 | their local servers with the new (or deleted) addresses. Clients that | |||
| do not track Layer 3 addresses MUST silently parse and ignore the Peer | ||||
| Update Message. Clients that track Layer 3 addresses MUST acknowledge | ||||
| the Peer Update with a Peer Update ACK message. Servers receiving a | ||||
| Peer Update with metric changes MUST apply the new metric to all | ||||
| neighbor sessions established via the client. Peers MAY employ | ||||
| heuristics to retransmit Peer Update messages. The sending of Peer | ||||
| Update Messages for Layer 3 address changes SHOULD cease when a server | ||||
| implementation determines that a client does NOT support Layer 3 | ||||
| address tracking. | address tracking. | |||
| If metric Sub-TLVs are supplied with the Peer Update message (e.g. | ||||
| Maximum Data Rate), these metrics MUST be applied to all neighbor | ||||
| sessions accessible via the peer. | ||||
| The Peer Update Message contains the following fields: | The Peer Update Message 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 22 + size of opt | | | DLEP_MESSAGE | 0x1 | 0x0 | 22 + size of opt | | |||
| | (value TBD) | | | sub-TLVs | | | (value TBD) | | | sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num |TLVs Length =14 + opt sub-TLVs | | | Message Seq Num |TLVs Length =14 + opt sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | DLEP Peer |TLV Flags=0x10 | Length = 11 + | Sub-TLV type= | | | DLEP Peer |TLV Flags=0x10 | Length = 11 + | Sub-TLVs as | | |||
| | Update | | opt sub-TLVs | Identification| | | Update | | opt sub-TLVs | noted below | | |||
| | (Value TDB) | | | sub-TLV (TBD) | | | (Value TDB) | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client ID |Sub-TLV type= |TLV Flags=0x10 | | ||||
| | |DLEP IPv4 | | | ||||
| | |sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Length = 5 | Add/Drop Ind. | IPv4 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | IPv4 Address | Sub-TLV type= |TLV Flags=0x10 | | ||||
| | | DLEP IPv6 | | | ||||
| | | sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Length = 17 | Add/Drop Ind. | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (Value TBD) | Message Type - DLEP_MESSAGE (Value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | |||
| is set). All other bits are unused and | is set). All other bits are unused and | |||
| MUST be set to '0'. | MUST be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 22 + optional Sub-TLVs | Message Size - 22 + optional Sub-TLVs | |||
| Message Sequence Number - A 16-bit unsigned integer field containing | Message Sequence Number - A 16-bit unsigned integer containing a | |||
| a sequence number generated by the message | sequence number (generated by originator). | |||
| originator. | ||||
| TLV Block - TLV Length: 14 + length of optional | TLV Block - TLV Length: 14 + length of optional | |||
| sub-TLVs. | sub-TLVs. | |||
| DLEP Peer Update order | Sub TLVs | |||
| Identification sub-TLV (MANDATORY) | Identification (MANDATORY) | |||
| IPv4 Address Sub-TLV (OPTIONAL) | IPv4 Address (OPTIONAL) | |||
| IPv6 Address Sub-TLV (OPTIONAL) | IPv6 Address (OPTIONAL) | |||
| Maximum Data Rate (OPTIONAL) | ||||
| Current Data Rate (OPTIONAL) | ||||
| Latency (OPTIONAL) | ||||
| Expected Forwarding Time (OPTIONAL) | ||||
| Resources (OPTIONAL) | ||||
| Relative Link Quality (OPTIONAL) | ||||
| 12. Peer Update ACK Message | 15. Peer Update ACK Message | |||
| The client sends the Peer Update ACK Message to indicate whether a | A peer sends the Peer Update ACK Message to indicate whether a | |||
| Peer Update Message was successfully processed. | Peer Update Message was successfully processed. | |||
| The Peer Update ACK message contains the following fields: | The Peer Update ACK message 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 22 + size of opt | | | DLEP_MESSAGE | 0x1 | 0x0 | 22 + size of opt | | |||
| | (value TBD) | | | sub-TLVs | | | (value TBD) | | | sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num |TLVs Length =14 + opt sub-TLVs | | | Message Seq Num |TLVs Length =14 + opt sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | DLEP Peer |TLV Flags=0x10 | Length = 11 + | Sub-TLV type= | | | DLEP Peer |TLV Flags=0x10 | Length = 11 + | Sub-TLVs as | | |||
| | Update ACK | | opt sub-TLVs | Identification| | | Update ACK | | opt sub-TLVs | noted below | | |||
| | (Value TDB) | | | sub-TLV (TBD) | | | (Value TDB) | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client ID |Sub-TLV type= |TLV Flags=0x10 | | ||||
| | |DLEP Status | | | ||||
| | |sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |Length = 1 | Code | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (Value TBD) | Message Type - DLEP_MESSAGE (Value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | |||
| is set). All other bits are unused and | is set). All other bits are unused and | |||
| MUST be set to '0'. | MUST be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 22 + size of optional sub-TLVs. | Message Size - 22 + size of optional sub-TLVs. | |||
| Message Sequence Number - A 16-bit unsigned integer field containing | Message Sequence Number - A 16-bit unsigned integer field containing | |||
| the sequence number from the Neighbor Up | the sequence number from the Neighbor Up | |||
| Message that is being acknowledged. | Message that is being acknowledged. | |||
| TLV Block - TLV Length: 14 + optional sub-TLVs | TLV Block - TLV Length: 14 + optional sub-TLVs | |||
| DLEP Peer Update ACK order | ||||
| Identification Sub-TLV (MANDATORY) | ||||
| Status Sub-TLV (OPTIONAL) | ||||
| 13. Peer Termination Message | Sub TLVs | |||
| Identification (MANDATORY) | ||||
| Status (OPTIONAL) | ||||
| 16. Peer Termination Message | ||||
| The Peer Termination Message is sent by either the client or the | The Peer Termination Message is sent by either the client or the | |||
| router when a session needs to be terminated. Transmission of a | server when a session needs to be terminated. Transmission of a | |||
| Peer Termination ACK message is required to confirm the | Peer Termination ACK message is required to confirm the | |||
| termination process. The sender of the Peer Termination message | termination process. The sender of the Peer Termination message | |||
| is free to define its heuristics in event of a timeout. The | is free to define its heuristics in event of a timeout. The | |||
| receiver of a Peer Termination Message MUST terminate all | receiver of a Peer Termination Message MUST terminate all | |||
| neighbor relationships and release associated resources. No | neighbor sessions and release associated resources. State | |||
| Neighbor Down messages are sent. | machines are returned to the "discovery" state. No Neighbor Down | |||
| messages are sent. | ||||
| The Peer Termination Message contains the following fields: | The Peer Termination Message 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 22 + size of opt | | | DLEP_MESSAGE | 0x1 | 0x0 | 22 + size of opt | | |||
| | (value TBD) | | | sub-TLVs | | | (value TBD) | | | sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num |TLVs Length =14 + opt sub-TLVs | | | Message Seq Num |TLVs Length =14 + opt sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | DLEP Peer |TLV Flags=0x10 | Length = 11 + | Sub-TLV type= | | | DLEP Peer |TLV Flags=0x10 | Length = 11 + | Sub-TLVs as | | |||
| | Termination | | opt sub-TLVs | Identification| | | Termination | | opt sub-TLVs | noted below | | |||
| | (Value TDB) | | | sub-TLV (TBD) | | | (Value TDB) | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client ID |Sub-TLV type= |TLV Flags=0x10 | | ||||
| | |DLEP Status | | | ||||
| | |sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Length = 1 | Code | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (Value TBD) | Message Type - DLEP_MESSAGE (Value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum | Message Flags - Set to 0x1 (bit 3, mhasseqnum | |||
| bit is set). All other bits are | bit is set). All other bits are | |||
| unused and MUST be set to '0'. | unused and MUST be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 22 + size of optional sub-TLVs. | Message Size - 22 + size of optional sub-TLVs. | |||
| Message Sequence Number - A 16-bit unsigned integer field | Message Sequence Number - A 16-bit unsigned integer field | |||
| containing a sequence number | containing a sequence number | |||
| generated by the message originator. | generated by the message originator. | |||
| TLV Block - TLV Length = 14 + optional sub-TLVs | TLV Block - TLV Length = 14 + optional sub-TLVs | |||
| DLEP Peer Termination order | ||||
| Identification Sub-TLV (MANDATORY) | ||||
| Status Sub-TLV (OPTIONAL) | ||||
| 14. Peer Termination ACK Message | Sub TLVs | |||
| Identification (MANDATORY) | ||||
| Status (OPTIONAL) | ||||
| The Peer Termination Message ACK is sent by either the client or | 17. Peer Termination ACK Message | |||
| the router when a session needs to be terminated. | ||||
| The Peer Termination Message ACK is sent by a DLEP peer in response | ||||
| to a received Peer Termination order. | ||||
| The Peer Termination ACK Message contains the following fields: | The Peer Termination ACK Message 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 22 + size of opt | | | DLEP_MESSAGE | 0x1 | 0x0 | 22 + size of opt | | |||
| | (value TBD) | | | sub-TLVs | | | (value TBD) | | | sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num |TLVs Length =14 + opt sub-TLVs | | | Message Seq Num |TLVs Length =14 + opt sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | DLEP Peer Term|TLV Flags=0x10 | Length = 11 + | Sub-TLV type= | | | DLEP Peer Term|TLV Flags=0x10 | Length = 11 + | Sub-TLVs as | | |||
| | ACK | | opt sub-TLVs | Identification| | | ACK | | opt sub-TLVs | noted below | | |||
| | (Value TBD) | | | sub-TLV (TBD) | | | (Value TBD) | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client ID |Sub-TLV type= |TLV Flags=0x10 | | ||||
| | |DLEP Status | | | ||||
| | |sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Length = 1 | Code | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (Value TBD) | Message Type - DLEP_MESSAGE (Value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum | Message Flags - Set to 0x1 (bit 3, mhasseqnum | |||
| bit is set). All other bits are | bit is set). All other bits are | |||
| unused and MUST be set to '0'. | unused and MUST be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 22 + optional sub-TLVs. | Message Size - 22 + optional sub-TLVs. | |||
| Message Sequence Number - A 16-bit unsigned integer field | Message Sequence Number - A 16-bit unsigned integer field | |||
| containing the sequence number in | containing the sequence number in | |||
| the corresponding Peer Termination | the corresponding Peer Termination | |||
| Message being acknowledged. | Message being acknowledged. | |||
| TLV Block - TLV Length = 14 + optional Sub-TLVs | TLV Block - TLV Length = 14 + optional Sub-TLVs | |||
| DLEP Peer Termination ACK order | ||||
| Identification Sub-TLV (MANDATORY) | ||||
| Status Sub-TLV (OPTIONAL) | ||||
| 15. Neighbor Up Message | Sub-TLVs | |||
| Identification (MANDATORY) | ||||
| Status (OPTIONAL) | ||||
| 18. Neighbor Up Message | ||||
| A peer sends the Neighbor Up message to report that a new | ||||
| potential routing neighbor, or a new destination within the | ||||
| network, has been detected. A Neighbor Up ACK Message is required | ||||
| to confirm a received Neighbor Up. A Neighbor Up message can be | ||||
| sent by a client to signal that it (the client) has detected a new | ||||
| neighbor, or by the server to indicate that new destinations | ||||
| (e.g. Multicast groups) exist within the network. | ||||
| The client sends the Neighbor Up message to report that a new | ||||
| potential routing neighbor has been detected. A Neighbor Up | ||||
| ACK Message is required to confirm a received Neighbor Up. | ||||
| The sender of the Neighbor Up Message is free to define its | The sender of the Neighbor Up Message is free to define its | |||
| retry heuristics in event of a timeout. | retry heuristics in event of a timeout. When a Neighbor Up | |||
| message is received and successfully parsed, the receiver | ||||
| should enter an "in session" state with regard to the far-end | ||||
| destination, and send an acknowledgement to the originating peer. | ||||
| The Neighbor Up Message contains the following fields: | The Neighbor Up Message 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 31 + size of opt | | | DLEP_MESSAGE | 0x1 | 0x0 | 31 + size of opt | | |||
| | (value TBD) | | | sub-TLVs | | | (value TBD) | | | sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num |TLVs Length =23 + opt sub-TLVs | | | Message Seq Num |TLVs Length =23 + opt sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | DLEP Neighbor |TLV Flags=0x10 | Length =20 + | Sub-TLV type= | | | DLEP Neighbor |TLV Flags=0x10 | Length =20 + | Sub-TLVs as | | |||
| | Up (TBD) | | opt sub-TLVs | Identification| | | Up (TBD) | | opt sub-TLVs | noted below | | |||
| | | | | sub-TLV (TBD) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client ID |Sub-TLV type= |TLV Flags=0x10 | | ||||
| | |DLEP MAC | | | ||||
| | |sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Length = 6 | MAC Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | MAC Address |Sub-TLV type= | | ||||
| | |DLEP IPv4 (TBD)| | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 5 | Add/Drop Ind. | IPv4 Address | | ||||
| | | | | | | | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | IPv4 Address |Sub-TLV type= | | ||||
| | |DLEP IPv6 (TBD)| | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | (Continued on next page) | | ||||
| 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 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | (Continued from above) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 17 | Add/Drop Ind. | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | IPv6 Address |Sub-TLV type= | | ||||
| | |DLEP MDR (TBD) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | MDR (bps) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | MDR (bps) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | MDR (bps) |sub-TLV Type = |TLV Flags=0x10 | | ||||
| | |DLEP CDR (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Length = 8 | CDR (bps) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | CDR (bps) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | CDR (bps) |sub-TLV Type = |TLV Flags=0x10 | Length = 2 | | ||||
| | |Latency (TBD) | | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Latency (ms) |sub-TLV Type = |TLV Flags=0x10 | | ||||
| | |Resources(TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Length = 1 | Resources |sub-TLV Type = |TLV Flags=0x10 | | ||||
| | | |DLEP RLQ (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Length = 1 | RLQ | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (Value TBD) | Message Type - DLEP_MESSAGE (Value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | |||
| is set). All other bits are unused and | is set). All other bits are unused and | |||
| MUST be set to '0'. | MUST be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 31 + optional Sub-TLVs | Message Size - 31 + optional Sub-TLVs | |||
| Message Sequence Number - A 16-bit unsigned integer field containing | Message Sequence Number - A 16-bit unsigned integer field containing | |||
| a sequence number generated by the message | a sequence number generated by the message | |||
| originator. | originator. | |||
| TLV Block - TLV Length: 23 + optional Sub-TLVs. | TLV Block - TLV Length: 23 + optional Sub-TLVs. | |||
| DLEP Neighbor Up order | ||||
| Identification Sub-TLV (MANDATORY) | ||||
| MAC Address Sub-TLV (MANDATORY) | ||||
| IPv4 Address Sub-TLV (OPTIONAL) | ||||
| IPv6 Address Sub-TLV (OPTIONAL) | ||||
| Maximum Data Rate Sub-TLV (OPTIONAL) | ||||
| Current Data Rate Sub-TLV (OPTIONAL) | ||||
| Latency Sub-TLV (OPTIONAL) | ||||
| Resources Sub-TLV (OPTIONAL) | ||||
| Relative Link Factor Sub-TLV (OPTIONAL) | ||||
| 16. Neighbor Up ACK Message | Sub-TLVs | |||
| Identification (MANDATORY) | ||||
| MAC Address (MANDATORY) | ||||
| IPv4 Address (OPTIONAL) | ||||
| IPv6 Address (OPTIONAL) | ||||
| Maximum Data Rate (OPTIONAL) | ||||
| Current Data Rate (OPTIONAL) | ||||
| Latency (OPTIONAL) | ||||
| Expected Forwarding Time (OPTIONAL) | ||||
| Resources (OPTIONAL) | ||||
| Relative Link Factor (OPTIONAL) | ||||
| Credit Window Status (OPTIONAL) | ||||
| The router sends the Neighbor Up ACK Message to indicate whether a | 19. Neighbor Up ACK Message | |||
| Neighbor Up Message was successfully processed. | ||||
| A peer sends the Neighbor Up ACK Message to indicate whether a | ||||
| Neighbor Up Message was successfully processed. When a peer | ||||
| receives a Neighbor Up ACK message containing a Status Sub-TLV | ||||
| with a status code of 0, the receiving peer should enter an "in | ||||
| session" state with respect to the far-end destination. | ||||
| The Neighbor Up ACK message contains the following fields: | The Neighbor Up ACK message 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 35 | | | DLEP_MESSAGE | 0x1 | 0x0 | 35 | | |||
| | (value TBD) | | | | | | (value TBD) | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num |TLVs Length = 27 | | | Message Seq Num |TLVs Length = 27 | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | DLEP Neighbor |TLV Flags=0x10 | Length = 24 | Sub-TLV type= | | | DLEP Neighbor |TLV Flags=0x10 | Length = 24 | Sub-TLVs as | | |||
| | Up ACK (TBD) | | | Identification| | | Up ACK (TBD) | | | noted below | | |||
| | | | | sub-TLV (TBD) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client ID |Sub-TLV type= |TLV Flags=0x10 | | ||||
| | |DLEP MAC | | | ||||
| | |sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Length = 6 | MAC Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | MAC Address |Sub-TLV type= | | ||||
| | |DLEP Status | ||||
| | |(TBD) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Flags=0x10 | Length = 1 | Code | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (Value TBD) | Message Type - DLEP_MESSAGE (Value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | |||
| is set). All other bits are unused and | is set). All other bits are unused and | |||
| MUST be set to '0'. | MUST be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 35 | Message Size - 35 | |||
| Message Sequence Number - A 16-bit unsigned integer field containing | Message Sequence Number - A 16-bit unsigned integer field containing | |||
| the sequence number from the Neighbor Down | the sequence number from the Neighbor Down | |||
| Message that is being acknowledged. | Message that is being acknowledged. | |||
| TLV Block - TLV Length: 27 | TLV Block - TLV Length: 27 | |||
| DLEP Neighbor Up ACK order | Sub-TLVs - Identification (MANDATORY) | |||
| Identification Sub-TLV (MANDATORY) | ||||
| MAC Address Sub-TLV (MANDATORY) | MAC Address Sub-TLV (MANDATORY) | |||
| Status Sub-TLV (MANDATORY) | Status Sub-TLV (MANDATORY) | |||
| Credit Window Status (OPTIONAL) | ||||
| 17. Neighbor Down Message | 20. Neighbor Down Message | |||
| The client sends the Neighbor Down message to report when a neighbor | A DLEP peer sends the Neighbor Down message to report when a | |||
| is no longer reachable from the client. The Neighbor Down message | destination (a routing peer or a multicast group) is no longer | |||
| MUST contain a MAC Address TLV. Any other TLVs present MAY be | reachable. The Neighbor Down message MUST contain a MAC Address TLV. | |||
| ignored. A Neighbor Down ACK Message is required to confirm the | Any other TLVs present MAY be ignored. A Neighbor Down ACK Message is | |||
| process. The sender of the Neighbor Down message is free to define | required to confirm the process. The sender of the Neighbor Down | |||
| its retry heuristics in event of a timeout. | message is free to define its retry heuristics in event of a timeout. | |||
| Upon successful receipt and parsing of a Neighbor Down message, the | ||||
| receiving peer MUST remove all state information for the destination, | ||||
| and send a Neighbor Down ACK message to the originating peer. | ||||
| The Neighbor Down Message contains the following fields: | The Neighbor Down Message 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 31 + optional | | | DLEP_MESSAGE | 0x1 | 0x0 | 31 + optional | | |||
| | (value TBD) | | | sub-TLV | | | (value TBD) | | | sub-TLV | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num | TLVs Length = 23 + optional | | | Message Seq Num | TLVs Length = 23 + optional | | |||
| | | Sub-TLV | | | | Sub-TLV | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | TLV Type = |TLV Flags=0x10 | Length = 20 + | Sub-TLV type= | | | TLV Type = |TLV Flags=0x10 | Length = 20 + | Sub-TLVs as | | |||
| | DLEP Neighbor | | optional Sub- | Identification| | | DLEP Neighbor | | optional Sub- | noted below | | |||
| | Down (TBD) | | TLV | sub-TLV (TBD) | | | Down (TBD) | | TLV | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client ID |Sub-TLV type= |TLV Flags=0x10 | | ||||
| | |DLEP MAC | | | ||||
| | |sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | (Continued on next page) | | ||||
| 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 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | (Continued from above) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Length = 6 | MAC Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | MAC Address |Sub-TLV type= | | ||||
| | |DLEP Status | ||||
| | |(TBD) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Flags=0x10 | Length = 1 | Code | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (Value TBD) | Message Type - DLEP_MESSAGE (Value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | |||
| is set). All other bits are unused and | is set). All other bits are unused and | |||
| MUST be set to '0'. | MUST be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 31 + optional TLVs | Message Size - 31 + optional TLVs | |||
| Message Sequence Number - A 16-bit unsigned integer field | Message Sequence Number - A 16-bit unsigned integer field | |||
| containing a sequence number generated | containing a sequence number generated | |||
| by the message originator. | by the message originator. | |||
| TLV Block - TLV Length: 23 + optional Sub-TLVs | TLV Block - TLV Length: 23 + optional Sub-TLVs | |||
| DLEP Neighbor Down order | Sub TLVs | |||
| Identification Sub-TLV (MANDATORY) | Identification (MANDATORY) | |||
| MAC Address Sub-TLV (MANDATORY) | MAC Address (MANDATORY) | |||
| Status Sub-TLV (OPTIONAL) | Status (OPTIONAL) | |||
| 18. Neighbor Down ACK Message | 21. Neighbor Down ACK Message | |||
| The router sends the Neighbor Down ACK Message to indicate whether | A peer sends the Neighbor Down ACK Message to indicate whether | |||
| a Neighbor Down Message was successfully processed. | a received Neighbor Down Message was successfully processed. If | |||
| successfully processed, the sending peer MUST remove all state | ||||
| information on the referenced neighbor session. | ||||
| The Neighbor Down ACK message contains the following fields: | The Neighbor Down ACK message 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 35 | | | DLEP_MESSAGE | 0x1 | 0x0 | 35 | | |||
| | (value TBD) | | | | | | (value TBD) | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num |TLVs Length = 27 | | | Message Seq Num |TLVs Length = 27 | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | DLEP Neighbor |TLV Flags=0x10 | Length = 24 | Sub-TLV type= | | | DLEP Neighbor |TLV Flags=0x10 | Length = 24 | Sub-TLVs as | | |||
| | Down ACK (TBD)| | | Identification| | | Down ACK (TBD)| | | noted below | | |||
| | | | | sub-TLV (TBD) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client ID |Sub-TLV type= |TLV Flags=0x10 | | ||||
| | |DLEP MAC | | | ||||
| | |sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Length = 6 | MAC Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | MAC Address |Sub-TLV type= | | ||||
| | |DLEP Status | ||||
| | |(TBD) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Flags=0x10 | Length = 1 | Code | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (Value TBD) | Message Type - DLEP_MESSAGE (Value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | |||
| is set). All other bits are unused and | is set). All other bits are unused and | |||
| MUST be set to '0'. | MUST be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 35 | Message Size - 35 | |||
| Message Sequence Number - A 16-bit unsigned integer field containing | Message Sequence Number - A 16-bit unsigned integer field containing | |||
| the sequence number from the Neighbor Down | the sequence number from the Neighbor Down | |||
| Message that is being acknowledged. | Message that is being acknowledged. | |||
| TLV Block - TLV Length: 27 | TLV Block - TLV Length: 27 | |||
| DLEP Neighbor Down ACK order | Sub-TLVs - Identification (MANDATORY) | |||
| Identification Sub-TLV (MANDATORY) | MAC Address (MANDATORY) | |||
| MAC Address Sub-TLV (MANDATORY) | Status (MANDATORY) | |||
| Status Sub-TLV (MANDATORY) | ||||
| 19. Neighbor Update Message | 22. Neighbor Update Message | |||
| The client sends the Neighbor Update message when a change in link | The client sends the Neighbor Update message when a change in link | |||
| metric parameters is detected for a routing neighbor. | metric parameters is detected for a destination. | |||
| The Neighbor Update Message contains the following fields: | The Neighbor Update Message 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 31 + optional | | | DLEP_MESSAGE | 0x1 | 0x0 | 31 + optional | | |||
| | (value TBD) | | | sub-TLV | | | (value TBD) | | | sub-TLV | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num | TLVs Length = 23 + optional | | | Message Seq Num | TLVs Length = 23 + optional | | |||
| | | Sub-TLVs | | | | Sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Type = |TLV Flags=0x10 |Length = 20 + |Sub-TLV type = | | |TLV Type = |TLV Flags=0x10 |Length = 20 + |Sub-TLVs as | | |||
| |DLEP Neighbor | |optional Sub- |Identification | | |DLEP Neighbor | |optional Sub- |noted below | | |||
| |Update (TBD) | |TLVs |Sub-TLV (TBD) | | |Update (TBD) | |TLVs | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client ID |Sub-TLV type= |TLV Flags=0x10 | | ||||
| | |DLEP MAC | | | ||||
| | |sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Length = 6 | MAC Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | MAC Address |Sub-TLV type= | | ||||
| | |DLEP MDR (TBD) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | MDR (bps) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | MDR (bps) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | MDR (bps) |Sub-TLV Type = |TLV Flags=0x10 | | ||||
| | |DLEP CDR (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Length = 8 | CDR (bps) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | CDR (bps) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | CDR (bps) |Sub-TLV Type = |TLV Flags=0x10 | Length = 2 | | ||||
| | |DLEP Latency | | | | ||||
| | |(TBD) | | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Latency (ms) |Sub-TLV Type= |TLV Flags=0x10 | | ||||
| | |DLEP Resources | | | ||||
| | |(TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | (Continued on next page) | | ||||
| 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 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | (Continued from above) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Length = 1 | Resources |Sub-TLV Type= |TLV FLags=0x10 | | ||||
| | | |DLEP RLQ (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Length = 1 | RLQ | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (Value TBD) | Message Type - DLEP_MESSAGE (Value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum | Message Flags - Set to 0x1 (bit 3, mhasseqnum | |||
| bit is set). All other bits are | bit is set). All other bits are | |||
| unused and MUST be set to '0'. | unused and MUST be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 31 + optional TLVs | Message Size - 31 + optional TLVs | |||
| Message Sequence Number - A 16-bit unsigned integer field | Message Sequence Number - A 16-bit unsigned integer field | |||
| containing a sequence number, | containing a sequence number, | |||
| generated by the message originator. | generated by the message originator. | |||
| TLV Block - TLVs Length - 23 + optional Sub-TLVs. | TLV Block - TLVs Length - 23 + optional Sub-TLVs. | |||
| DLEP Neighbor Update order | Sub TLVs | |||
| Identification Sub-TLV (MANDATORY) | Identification (MANDATORY) | |||
| MAC Address Sub-TLV (MANDATORY) | MAC Address (MANDATORY) | |||
| Maximum Data Rate Sub-TLV (OPTIONAL) | Maximum Data Rate (OPTIONAL) | |||
| Current Data Rate Sub-TLV (OPTIONAL) | Current Data Rate (OPTIONAL) | |||
| Latency Sub-TLV (OPTIONAL) | Latency (OPTIONAL) | |||
| Resources Sub-TLV (OPTIONAL) | Resources (OPTIONAL) | |||
| Relative Link Quality Sub-TLV | Relative Link Quality (OPTIONAL) | |||
| (OPTIONAL) | Credit Window Status (OPTIONAL) | |||
| Credit Grant (OPTIONAL) | ||||
| Credit Request (OPTIONAL) | ||||
| 20. Neighbor Address Update Message | 23. Neighbor Address Update Message | |||
| The client sends the Neighbor Address Update message when a change | The client sends the Neighbor Address Update message when a change | |||
| in Layer 3 addressing is detected for a routing neighbor. | in Layer 3 addressing is detected for a neighbor session. | |||
| The Neighbor Address Update Message contains the following fields: | The Neighbor Address Update Message 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 31 + size of opt | | | DLEP_MESSAGE | 0x1 | 0x0 | 31 + size of opt | | |||
| | (value TBD) | | | sub-TLVs | | | (value TBD) | | | sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num |TLVs Length =23 + opt sub-TLVs | | | Message Seq Num |TLVs Length =23 + opt sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | (Continued on next page) | | | DLEP Neighbor |TLV Flags=0x10 | Length =20 + | Sub-TLVs as | | |||
| 0 1 2 3 | | Address Update| | opt sub-TLVs | noted below | | |||
| 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 | |(TBD) | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | (Continued from above) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | DLEP Neighbor |TLV Flags=0x10 | Length =20 + | Sub-TLV type= | | ||||
| | Address Update| | opt sub-TLVs | Identification| | ||||
| |(TBD) | | | Sub-TLV (TBD) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client ID |Sub-TLV type= |TLV Flags=0x10 | | ||||
| | |DLEP MAC | | | ||||
| | |sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Length = 6 | MAC Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | MAC Address |Sub-TLV type= | | ||||
| | |DLEP IPv4 (TBD)| | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 5 | Add/Drop Ind. | IPv4 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | IPv4 Address |Sub-TLV type= | | ||||
| | |DLEP IPv6 (TBD)| | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 17 | Add/Drop Ind. | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | IPv6 Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (Value TBD) | Message Type - DLEP_MESSAGE (Value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum bit is | Message Flags - Set to 0x1 (bit 3, mhasseqnum bit is | |||
| set). All other bits are unused and | set). All other bits are unused and | |||
| MUST be set to '0'. | MUST be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 31 + optional TLVs | Message Size - 31 + optional TLVs | |||
| Message Sequence Number - A 16-bit unsigned integer field | Message Sequence Number - A 16-bit unsigned integer field | |||
| containing a sequence number, | containing a sequence number, | |||
| generated by the message originator. | generated by the message originator. | |||
| TLV Block - TLVs Length - 23 + optional Sub-TLVs. | TLV Block - TLVs Length - 23 + optional Sub-TLVs. | |||
| DLEP Neighbor Address Update order | Sub TLVs | |||
| Identification Sub-TLV (MANDATORY) | Identification Sub-TLV (MANDATORY) | |||
| MAC Address Sub-TLV (MANDATORY) | MAC Address Sub-TLV (MANDATORY) | |||
| IPv4 Address Sub-TLV (OPTIONAL) | IPv4 Address Sub-TLV (OPTIONAL) | |||
| IPv6 Address Sub-TLV (OPTIONAL) | IPv6 Address Sub-TLV (OPTIONAL) | |||
| 21. Neighbor Address Update ACK Message | 24. Neighbor Address Update ACK Message | |||
| The router sends the Neighbor Address Update ACK Message to | The server sends the Neighbor Address Update ACK Message to | |||
| indicate whether a Neighbor Address Update Message was | indicate whether a Neighbor Address Update Message was | |||
| successfully processed. | successfully processed. | |||
| The Neighbor Address Update ACK message contains the following | The Neighbor Address Update ACK message contains the following | |||
| fields: | fields: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 35 | | | DLEP_MESSAGE | 0x1 | 0x0 | 35 | | |||
| | (value TBD) | | | | | | (value TBD) | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num |TLVs Length = 27 | | | Message Seq Num |TLVs Length = 27 | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | DLEP Neighbor |TLV Flags=0x10 | Length = 24 | Sub-TLV type= | | | DLEP Neighbor |TLV Flags=0x10 | Length = 24 | Sub-TLVs as | | |||
| | Address Update| | | Identification| | | Address Update| | | noted below | | |||
| | ACK (TBD) | | | sub-TLV (TBD) | | | ACK (TBD) | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client ID |Sub-TLV type= |TLV Flags=0x10 | | ||||
| | |DLEP MAC | | | ||||
| | |sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Length = 6 | MAC Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | MAC Address |Sub-TLV type= | | ||||
| | |DLEP Status | ||||
| | |(TBD) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |TLV Flags=0x10 | Length = 1 | Code | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (Value TBD) | Message Type - DLEP_MESSAGE (Value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | |||
| is set). All other bits are unused and | is set). All other bits are unused and | |||
| MUST be set to '0'. | MUST be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 35 | Message Size - 35 | |||
| Message Sequence Number - A 16-bit unsigned integer field containing | Message Sequence Number - A 16-bit unsigned integer field containing | |||
| the sequence number from the Neighbor Down | the sequence number from the Neighbor Down | |||
| Message that is being acknowledged. | Message that is being acknowledged. | |||
| TLV Block - TLV Length: 27 | TLV Block - TLV Length: 27 | |||
| Sub TLVs | ||||
| DLEP Neighbor Address Update ACK order | ||||
| Identification Sub-TLV (MANDATORY) | Identification Sub-TLV (MANDATORY) | |||
| MAC Address Sub-TLV (MANDATORY) | MAC Address Sub-TLV (MANDATORY) | |||
| Status Sub-TLV (MANDATORY) | Status Sub-TLV (MANDATORY) | |||
| 22. Heartbeat Message | 25. Heartbeat Message | |||
| A Heartbeat Message is sent by a peer every N seconds, where N is | A Heartbeat Message is sent by a peer every N seconds, where N is | |||
| defined in the "Heartbeat Interval" field of the discovery message. | defined in the "Heartbeat Interval" field of the discovery message. | |||
| The message is used by peers to detect when a DLEP session partner | The message is used by peers to detect when a DLEP session partner | |||
| is no longer communicating. Peers SHOULD allow some integral number | is no longer communicating. Peers SHOULD allow some integral number | |||
| of heartbeat intervals (default 4) to expire with no traffic on the | of heartbeat intervals (default 4) to expire with no traffic on the | |||
| session before initiating DLEP session termination procedures. | session before initiating DLEP session termination procedures. | |||
| The Heartbeat Message contains the following fields: | The Heartbeat Message 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 22 | | | DLEP_MESSAGE | 0x1 | 0x0 | 22 | | |||
| | (value TBD) | | | | | | (value TBD) | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num |TLVs Length = 14 | | | Message Seq Num |TLVs Length = 14 | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | DLEP Heartbeat|TLV Flags=0x10 | Length = 11 | Sub-TLV type= | | | DLEP Heartbeat|TLV Flags=0x10 | Length = 11 | Sub-TLVs as | | |||
| | (TBD) | | | Identification| | | (TBD) | | | noted below | | |||
| | | | | sub-TLV (TBD) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (Value TBD) | Message Type - DLEP_MESSAGE (Value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum bit is | Message Flags - Set to 0x1 (bit 3, mhasseqnum bit is | |||
| set). All other bits are unused and SHOULD | set). All other bits are unused and SHOULD | |||
| be set to '0'. | be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 22 | Message Size - 22 | |||
| skipping to change at page 41, line 4 ¶ | skipping to change at page 40, line 42 ¶ | |||
| Message Type - DLEP_MESSAGE (Value TBD) | Message Type - DLEP_MESSAGE (Value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum bit is | Message Flags - Set to 0x1 (bit 3, mhasseqnum bit is | |||
| set). All other bits are unused and SHOULD | set). All other bits are unused and SHOULD | |||
| be set to '0'. | be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 22 | Message Size - 22 | |||
| Message Sequence Number - A 16-bit unsigned integer field containing | Message Sequence Number - A 16-bit unsigned integer field containing | |||
| a sequence number generated by the message | a sequence number generated by the message | |||
| originator. | originator. | |||
| TLV Block - TLV Length = 14 | TLV Block - TLV Length = 14 | |||
| DLEP Heartbeat order | Sub TLVs - | |||
| Identification Sub-TLV (MANDATORY) | Identification Sub-TLV (MANDATORY) | |||
| 23. Link Characteristics Request Message | 26. Link Characteristics Request Message | |||
| The Link Characteristics Request Message is sent by the router to | The Link Characteristics Request Message is sent by the server to | |||
| the modem device when the router detects that a different set of | the client when the server detects that a different set of | |||
| transmission characteristics is necessary (or desired) for the | transmission characteristics is necessary (or desired) for the | |||
| type of traffic that is flowing on the link. The request contains | type of traffic that is flowing on the link. It is important to | |||
| either a Current Data Rate (CDR) TLV to request a different | note that the link can be a logical link for a multicast session | |||
| where more than one remote neighbor participates. The request | ||||
| contains either a Current Data Rate (CDR) TLV to request a different | ||||
| amount of bandwidth than what is currently allocated, a Latency | amount of bandwidth than what is currently allocated, a Latency | |||
| TLV to request that traffic delay on the link not exceed the | TLV to request that traffic delay on the link not exceed the | |||
| specified value, or both. A Link Characteristics ACK Message is | specified value, or both. A Link Characteristics ACK Message is | |||
| required to complete the request. Implementations are free to | required to complete the request. Implementations are free to | |||
| define their retry heuristics in event of a timeout. Issuing a | define their retry heuristics in event of a timeout. Issuing a | |||
| Link Characteristics Request with ONLY the MAC Address TLV is a | Link Characteristics Request with ONLY the MAC Address TLV is a | |||
| mechanism a peer MAY use to request metrics (via the Link | mechanism a peer MAY use to request metrics (via the Link | |||
| Characteristics ACK) from its partner. | Characteristics ACK) from its partner. | |||
| The Link Characteristics Request Message contains the following | The Link Characteristics Request Message contains the following | |||
| skipping to change at page 41, line 41 ¶ | skipping to change at page 41, line 29 ¶ | |||
| 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 31 + size of opt | | | DLEP_MESSAGE | 0x1 | 0x0 | 31 + size of opt | | |||
| | (value TBD) | | | sub-TLVs | | | (value TBD) | | | sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num |TLVs Length =23 + opt sub-TLVs | | | Message Seq Num |TLVs Length =23 + opt sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | DLEP Link Char|TLV Flags=0x10 | Length =20 + | Sub-TLV type= | | | DLEP Link Char|TLV Flags=0x10 | Length =20 + | Sub-TLVs as | | |||
| | Request (TBD) | | opt sub-TLVs | Identification| | | Request (TBD) | | opt sub-TLVs | noted below | | |||
| | | | | Sub-TLV (TBD) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client ID |Sub-TLV type= |TLV Flags=0x10 | | ||||
| | |DLEP MAC | | | ||||
| | |sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Length = 6 | MAC Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | (Continued on next page) | | ||||
| 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 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | (Continued from above) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | MAC Address |Sub-TLV type= | | ||||
| | |DLEP CDR (TBD) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | CDR (bps) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | CDR (bps) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | CDR (bps) |Sub-TLV Type= |TLV Flags=0x10 | | ||||
| | |Latency (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| |Length = 2 | Latency (ms) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (Value TBD) | Message Type - DLEP_MESSAGE (Value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | |||
| is set). All other bits are unused and | is set). All other bits are unused and | |||
| MUST be set to '0'. | MUST be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 31 + length of optional (Current Data | Message Size - 31 + length of optional (Current Data | |||
| Rate and/or Latency) Sub-TLVs | Rate and/or Latency) Sub-TLVs | |||
| Message Sequence Number - A 16-bit unsigned integer field containing | Message Sequence Number - A 16-bit unsigned integer field containing | |||
| a sequence number generated by the message | a sequence number generated by the message | |||
| originator. | originator. | |||
| TLV Block - Length: 23 + optional Sub-TLVs | TLV Block - Length: 23 + optional Sub-TLVs | |||
| DLEP Link Characteristics Request order | Sub TLVs | |||
| Identification Sub-TLV (MANDATORY) | Identification Sub-TLV (MANDATORY) | |||
| MAC Address Sub-TLV (MANDATORY) | MAC Address Sub-TLV (MANDATORY) | |||
| Current Data Rate Sub-TLV - if present, | Current Data Rate Sub-TLV - if present, | |||
| this value represents the requested data | this value represents the requested data | |||
| rate in bits per second (bps). (OPTIONAL) | rate in bits per second (bps). (OPTIONAL) | |||
| Latency TLV - if present, this value | Latency TLV - if present, this value | |||
| represents the maximum latency, in | represents the maximum latency, in | |||
| milliseconds, desired on the link. | milliseconds, desired on the link. | |||
| (OPTIONAL) | (OPTIONAL) | |||
| 24. Link Characteristics ACK Message | 27. Link Characteristics ACK Message | |||
| The Link Characteristics ACK Message is sent by the client to the | The Link Characteristics ACK Message is sent by the client to the | |||
| router letting the router know the success (or failure) of the | server letting the server know the success (or failure) of the | |||
| requested change in link characteristics. The Link Characteristics | requested change in link characteristics. The Link Characteristics | |||
| ACK message SHOULD contain a complete set of metric TLVs. It MUST | ACK message SHOULD contain a complete set of metric TLVs. It MUST | |||
| contain the same TLV types as the request. The values in the | contain the same TLV types as the request. The values in the | |||
| metric TLVs in the Link Characteristics ACK message MUST reflect | metric TLVs in the Link Characteristics ACK message MUST reflect | |||
| the link characteristics after the request has been processed. | the link characteristics after the request has been processed. | |||
| The Link Characteristics ACK Message contains the following fields: | The Link Characteristics ACK Message 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Msg Type = |Msg Flg|AddrLen| Message Size | | | Msg Type = |Msg Flg|AddrLen| Message Size | | |||
| | DLEP_MESSAGE | 0x1 | 0x0 | 31 + size of opt | | | DLEP_MESSAGE | 0x1 | 0x0 | 31 + size of opt | | |||
| | (value TBD) | | | sub-TLVs | | | (value TBD) | | | sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Message Seq Num |TLVs Length =23 + opt sub-TLVs | | | Message Seq Num |TLVs Length =23 + opt sub-TLVs | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | DLEP Link Char|TLV Flags=0x10 | Length =20 + | Sub-TLV type= | | | DLEP Link Char|TLV Flags=0x10 | Length =20 + | Sub-TLVs as | | |||
| | ACK (TBD) | | opt sub-TLVs | Identification| | | ACK (TBD) | | opt sub-TLVs | noted below | | |||
| | | | | Sub-TLV (TBD) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | Router ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Router ID | Client ID | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Client ID |Sub-TLV type= |TLV Flags=0x10 | | ||||
| | |DLEP MAC | | | ||||
| | |sub-TLV (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Length = 6 | MAC Address | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | MAC Address |Sub-TLV type= | | ||||
| | |DLEP MDR (TBD) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |TLV Flags=0x10 |Length = 8 | MDR (bps) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | MDR (bps) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | MDR (bps) |Sub-TLV Type= |TLV Flags=0x10 | | ||||
| | |DLEP CDR (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| |Length = 8 | CDR (bps) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | CDR (bps) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | CDR (bps) |Sub-TLV Type = |TLV Flags=0x10 | Length = 2 | | ||||
| | |Latency (TBD) | | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Latency (ms) |Sub-TLV Type= |TLV Flags=0x10 | | ||||
| | |Resources (TBD)| | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Length = 1 | Resources |Sub-TLV Type= |TLV Flags=0x10 | | ||||
| | | |RLQ (TBD) | | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Length = 1 | RLQ | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Message Type - DLEP_MESSAGE (Value TBD) | Message Type - DLEP_MESSAGE (Value TBD) | |||
| Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | Message Flags - Set to 0x1 (bit 3, mhasseqnum bit | |||
| is set). All other bits are unused and | is set). All other bits are unused and | |||
| MUST be set to '0'. | MUST be set to '0'. | |||
| Message Address Length - 0x0 | Message Address Length - 0x0 | |||
| Message Size - 31 + length of optional (Current Data | Message Size - 31 + length of optional (Current Data | |||
| Rate and/or Latency) TLVs | Rate and/or Latency) TLVs | |||
| Message Sequence Number - A 16-bit unsigned integer field containing | Message Sequence Number - A 16-bit unsigned integer field containing | |||
| the sequence number that appeared on the | the sequence number that appeared on the | |||
| corresponding Link Characteristics Request | corresponding Link Characteristics Request | |||
| message. | message. | |||
| TLV Block - TLVs Length = 23 + Optional TLVs | TLV Block - TLVs Length = 23 + Optional TLVs | |||
| DLEP Link Characteristics ACK order | Sub TLVs | |||
| Identification Sub-TLV (MANDATORY) | Identification Sub-TLV (MANDATORY) | |||
| MAC Address Sub-TLV (MANDATORY) | MAC Address Sub-TLV (MANDATORY) | |||
| Maximum Data Rate Sub-TLV (OPTIONAL) | Maximum Data Rate Sub-TLV (OPTIONAL) | |||
| Current Data Rate Sub-TLV - if present, | Current Data Rate Sub-TLV - if present, | |||
| this value represents the NEW (or | this value represents the NEW (or | |||
| unchanged, if the request is denied) | unchanged, if the request is denied) | |||
| Current Data Rate in bits per second (bps). | Current Data Rate in bits per second (bps). | |||
| (OPTIONAL) | (OPTIONAL) | |||
| Latency Sub-TLV - if present, this value | Latency Sub-TLV - if present, this value | |||
| represents the NEW maximum latency (or | represents the NEW maximum latency (or | |||
| unchanged, if the request is denied), | unchanged, if the request is denied), | |||
| expressed in milliseconds, on the link. | expressed in milliseconds, on the link. | |||
| (OPTIONAL) | (OPTIONAL) | |||
| Resources Sub-TLV (OPTIONAL) | Resources Sub-TLV (OPTIONAL) | |||
| Relative Link Quality Sub-TLV (OPTIONAL) | Relative Link Quality Sub-TLV (OPTIONAL) | |||
| 25. Security Considerations | 28. Security Considerations | |||
| The protocol does not contain any mechanisms for security (e.g. | The protocol does not contain any mechanisms for security (e.g. | |||
| authentication or encryption). The protocol assumes that any | authentication or encryption). The protocol assumes that any | |||
| security would be implemented in the underlying transport (for | security would be implemented in the underlying transport (for | |||
| example, by use of DTLS or some other mechanism), and is | example, by use of DTLS or some other mechanism), and is | |||
| therefore outside the scope of this document. | therefore outside the scope of this document. | |||
| 26. IANA Considerations | 29. IANA Considerations | |||
| This section specifies requests to IANA. | This section specifies requests to IANA. | |||
| 26.1 TLV Registrations | 29.1 TLV Registrations | |||
| This specification defines: | This specification defines: | |||
| o One TLV types which must be allocated from the 0-223 range | o One TLV types which must be allocated from the 0-223 range | |||
| of the "Assigned Message TLV Types" repository of [RFC5444]. | of the "Assigned Message TLV Types" repository of [RFC5444]. | |||
| o A new repository for DLEP orders, with seventeen values currently | o A new repository for DLEP orders, with seventeen values currently | |||
| assigned. | assigned. | |||
| o A new repository for DLEP Sub-TLV assignments with fifteen values | o A new repository for DLEP Sub-TLV assignments with nineteen values | |||
| currently assigned. | currently assigned. | |||
| 26.2 Expert Review: Evaluation Guidelines | 29.2 Expert Review: Evaluation Guidelines | |||
| For the registries for TLV type extensions where an Expert Review is | For the registries for TLV type extensions where an Expert Review is | |||
| required, the designated expert SHOULD take the same general | required, the designated expert SHOULD take the same general | |||
| recommendations into consideration as are specified by [RFC5444]. | recommendations into consideration as are specified by [RFC5444]. | |||
| 26.3 Message TLV Type Registration | 29.3 Message TLV Type Registration | |||
| The Message TLV specified below must be allocated from the "Message | The Message TLV specified below must be allocated from the "Message | |||
| TLV Types" namespace of [RFC5444]. | TLV Types" namespace of [RFC5444]. | |||
| o DLEP_MESSAGE | o DLEP_MESSAGE | |||
| 26.4 DLEP Order Registration | 29.4 DLEP Order Registration | |||
| A new repository must be created with the values of the DLEP orders. | A new repository must be created with the values of the DLEP orders. | |||
| Valid orders are: | Valid orders are: | |||
| o Attached Peer Discovery Message | o Attached Peer Discovery Message | |||
| o Detached Peer Discovery Message | o Detached Peer Discovery Message | |||
| o Peer Offer Message | o Peer Offer Message | |||
| o Peer Update Message | o Peer Update Message | |||
| o Peer Update ACK Message | o Peer Update ACK Message | |||
| o Peer Termination Message | o Peer Termination Message | |||
| skipping to change at page 46, line 9 ¶ | skipping to change at page 44, line 32 ¶ | |||
| o Neighbor Address Update Message | o Neighbor Address Update Message | |||
| o Neighbor Address Update ACK Message | o Neighbor Address Update ACK Message | |||
| o Heartbeat Message | o Heartbeat Message | |||
| o Link Characteristics Request Message | o Link Characteristics Request Message | |||
| o Link Characteristics ACK Message | o Link Characteristics ACK Message | |||
| This registry should be created according to the guidelines for | This registry should be created according to the guidelines for | |||
| 'Message-Type-Specific TLV' registration as specified in section | 'Message-Type-Specific TLV' registration as specified in section | |||
| 6.2.1 of [RFC5444]. | 6.2.1 of [RFC5444]. | |||
| 26.5 DLEP Sub-TLV Type Registrations | 29.5 DLEP Sub-TLV Type Registrations | |||
| A new repository for DLEP Sub-TLVs must be created. Valid Sub-TLVs are: | A new repository for DLEP Sub-TLVs must be created. Valid Sub-TLVs are: | |||
| o Identification Sub-TLV | o Identification Sub-TLV | |||
| o DLEP Version Sub-TLV | o DLEP Version Sub-TLV | |||
| o Peer Type Sub-TLV | o Peer Type Sub-TLV | |||
| o MAC Address Sub-TLV | o MAC Address Sub-TLV | |||
| o IPv4 Address Sub-TLV | o IPv4 Address Sub-TLV | |||
| o IPv6 Address Sub-TLV | o IPv6 Address Sub-TLV | |||
| o Maximum Data Rate Sub-TLV | o Maximum Data Rate Sub-TLV | |||
| o Current Data Rate Sub-TLV | o Current Data Rate Sub-TLV | |||
| o Latency Sub-TLV | o Latency Sub-TLV | |||
| o Expected Forwarding Time Sub-TLV | ||||
| o Resources Sub-TLV | o Resources Sub-TLV | |||
| o Relative Link Quality Sub-TLV | o Relative Link Quality Sub-TLV | |||
| o Status Sub-TLV | o Status Sub-TLV | |||
| o Heartbeat Interval Sub-TLV | o Heartbeat Interval Sub-TLV | |||
| o Heartbeat Threshold Sub-TLV | o Heartbeat Threshold Sub-TLV | |||
| o Link Characteristics ACK Timer Sub-TLV | o Link Characteristics ACK Timer Sub-TLV | |||
| o Credit Window Status Sub-TLV | ||||
| o Credit Grant Sub-TLV | ||||
| o Credit Request Sub-TLV | ||||
| It is also requested that the registry allocation contain space | It is also requested that the registry allocation contain space | |||
| reserved for experimental sub-TLVs. | reserved for experimental sub-TLVs. | |||
| 27. Appendix A. | 30. Appendix A. | |||
| Peer Level Message Flows | Peer Level Message Flows | |||
| *Modem Device (Client) Restarts Discovery | *Modem Device (Client) Restarts Discovery | |||
| Router Client Message Description | Server Client Message Description | |||
| ==================================================================== | ==================================================================== | |||
| <-------Peer Discovery--------- Modem initiates discovery | <-------Peer Discovery--------- Client initiates discovery | |||
| ---------Peer Offer-----------> Router detects a problem, sends | ---------Peer Offer-----------> Server detects a problem, sends | |||
| w/ Non-zero Status TLV Peer Offer w/ Status TLV indicating | w/ Non-zero Status TLV Peer Offer w/ Status TLV indicating | |||
| the error. | the error. | |||
| Modem accepts failure, restarts | Client accepts failure, restarts | |||
| discovery process. | discovery process. | |||
| <-------Peer Discovery--------- Modem initiates discovery | <-------Peer Discovery--------- Client initiates discovery | |||
| ---------Peer Offer-----------> Router accepts, sends Peer Offer | ---------Peer Offer-----------> Server accepts, sends Peer Offer | |||
| w/ Zero Status TLV w/ Status TLV indicating success. | w/ Zero Status TLV w/ Status TLV indicating success. | |||
| Discovery completed. | Discovery completed. | |||
| *Modem Device Detects Peer Offer Timeout | *Modem Device Detects Peer Offer Timeout | |||
| Router Client Message Description | Server Client Message Description | |||
| ==================================================================== | ==================================================================== | |||
| <-------Peer Discovery--------- Modem initiates discovery, | <-------Peer Discovery--------- Client initiates discovery, | |||
| starts a guard timer. | starts a guard timer. | |||
| Modem guard timer expires. | Client guard timer expires. | |||
| Modem restarts discovery process. | Client restarts discovery process. | |||
| <-------Peer Discovery--------- Modem initiates discovery, | <-------Peer Discovery--------- Client initiates discovery, | |||
| starts a guard timer. | starts a guard timer. | |||
| ---------Peer Offer-----------> Router accepts, sends Peer Offer | ---------Peer Offer-----------> Server accepts, sends Peer Offer | |||
| w/ Zero Status TLV w/ Status TLV indicating success. | w/ Zero Status TLV w/ Status TLV indicating success. | |||
| Discovery completed. | Discovery completed. | |||
| *Router Peer Offer Lost | *Server Peer Offer Lost | |||
| Router Client Message Description | Server Client Message Description | |||
| ==================================================================== | ==================================================================== | |||
| <-------Peer Discovery--------- Modem initiates discovery, | <-------Peer Discovery--------- Client initiates discovery, | |||
| starts a guard timer. | starts a guard timer. | |||
| ---------Peer Offer-------|| Router offers availability | ---------Peer Offer-------|| Server offers availability | |||
| Modem times out on Peer Offer, | Client times out on Peer Offer, | |||
| restarts discovery process. | restarts discovery process. | |||
| <-------Peer Discovery--------- Modem initiates discovery | <-------Peer Discovery--------- Client initiates discovery | |||
| ---------Peer Offer-----------> Router detects subsequent discovery, | ---------Peer Offer-----------> Server detects subsequent discovery, | |||
| internally terminates the previous, | internally terminates the previous, | |||
| accepts the new association, sends | accepts the new association, sends | |||
| Peer Offer w/ Status TLV indicating | Peer Offer w/ Status TLV indicating | |||
| success. | success. | |||
| Discovery completed. | Discovery completed. | |||
| *Discovery Success | *Discovery Success | |||
| Router Client Message Description | Server Client Message Description | |||
| ==================================================================== | ==================================================================== | |||
| <-------Peer Discovery--------- Modem initiates discovery | <-------Peer Discovery--------- Client initiates discovery | |||
| ---------Peer Offer-----------> Router offers availability | ---------Peer Offer-----------> Server offers availability | |||
| -------Peer Heartbeat---------> | -------Peer Heartbeat---------> | |||
| <-------Peer Heartbeat--------- | <-------Peer Heartbeat--------- | |||
| -------Peer Heartbeat---------> | -------Peer Heartbeat---------> | |||
| <==============================> Neighbor Sessions | <==============================> Neighbor Sessions | |||
| <-------Peer Heartbeat--------- | <-------Peer Heartbeat--------- | |||
| -------Peer Heartbeat---------> | -------Peer Heartbeat---------> | |||
| --------Peer Term Req---------> Terminate Request | --------Peer Term Req---------> Terminate Request | |||
| <--------Peer Term Res--------- Terminate Response | <--------Peer Term Res--------- Terminate Response | |||
| *Router Detects a Heartbeat timeout | *Server Detects a Heartbeat timeout | |||
| Router Client Message Description | Server Client Message Description | |||
| ==================================================================== | ==================================================================== | |||
| <-------Peer Heartbeat--------- | <-------Peer Heartbeat--------- | |||
| -------Peer Heartbeat---------> | -------Peer Heartbeat---------> | |||
| ||---Peer Heartbeat--------- | ||---Peer Heartbeat--------- | |||
| ~ ~ ~ ~ ~ ~ ~ | ~ ~ ~ ~ ~ ~ ~ | |||
| -------Peer Heartbeat---------> | -------Peer Heartbeat---------> | |||
| ||---Peer Heartbeat--------- | ||---Peer Heartbeat--------- | |||
| Router Heartbeat Timer expires, | Server Heartbeat Timer expires, | |||
| detects missing heartbeats. Router | detects missing heartbeats. Server | |||
| takes down all neighbor sessions | takes down all neighbor sessions | |||
| and terminates the Peer association. | and terminates the Peer association. | |||
| ------Peer Terminate ---------> Peer Terminate Request | ------Peer Terminate ---------> Peer Terminate Request | |||
| Modem takes down all neighbor | Client takes down all neighbor | |||
| sessions, then acknowledges the | sessions, then acknowledges the | |||
| Peer Terminate | Peer Terminate | |||
| <----Peer Terminate ACK--------- Peer Terminate ACK | <----Peer Terminate ACK--------- Peer Terminate ACK | |||
| *Modem Detects a Heartbeat timeout | *Client Detects a Heartbeat timeout | |||
| Router Client Message Description | Server Client Message Description | |||
| ==================================================================== | ==================================================================== | |||
| <-------Peer Heartbeat--------- | <-------Peer Heartbeat--------- | |||
| -------Peer Heartbeat------|| | -------Peer Heartbeat------|| | |||
| <-------Peer Heartbeat--------- | <-------Peer Heartbeat--------- | |||
| ~ ~ ~ ~ ~ ~ ~ | ~ ~ ~ ~ ~ ~ ~ | |||
| -------Peer Heartbeat------|| | -------Peer Heartbeat------|| | |||
| <-------Peer Heartbeat--------- | <-------Peer Heartbeat--------- | |||
| Modem Heartbeat Timer expires, | Client Heartbeat Timer expires, | |||
| detects missing heartbeats. Modem | detects missing heartbeats. Modem | |||
| takes down all neighbor sessions | takes down all neighbor sessions | |||
| and terminates the Peer association. | and terminates the Peer association. | |||
| <-------Peer Terminate-------- Peer Terminate Request | <-------Peer Terminate-------- Peer Terminate Request | |||
| Router takes down all neighbor | Server takes down all neighbor | |||
| sessions, then acknowledges the | sessions, then acknowledges the | |||
| Peer Terminate | Peer Terminate | |||
| ------Peer Terminate ACK-----> Peer Terminate ACK | ------Peer Terminate ACK-----> Peer Terminate ACK | |||
| *Peer Terminate (from Modem) Lost | *Peer Terminate (from Client) Lost | |||
| Router Client Message Description | Server Client Message Description | |||
| ==================================================================== | ==================================================================== | |||
| ||------Peer Terminate-------- Modem Peer Terminate Request | ||------Peer Terminate-------- Client Peer Terminate Request | |||
| Router Heartbeat times out, | Server Heartbeat times out, | |||
| terminates association. | terminates association. | |||
| --------Peer Terminate-------> Router Peer Terminate | --------Peer Terminate-------> Server Peer Terminate | |||
| <-----Peer Terminate ACK------ Modem sends Peer Terminate ACK | <-----Peer Terminate ACK------ Client sends Peer Terminate ACK | |||
| *Peer Terminate (from router) Lost | *Peer Terminate (from server) Lost | |||
| Router Client Message Description | Server Client Message Description | |||
| ==================================================================== | ==================================================================== | |||
| -------Peer Terminate--------> Router Peer Terminate Request | -------Peer Terminate--------> Server Peer Terminate Request | |||
| Modem HB times out, | Client HB times out, | |||
| terminates association. | terminates association. | |||
| <------Peer Terminate-------- Modem Peer Terminate | <------Peer Terminate-------- Client Peer Terminate | |||
| ------Peer Terminate ACK-----> Peer Terminate ACK | ------Peer Terminate ACK-----> Peer Terminate ACK | |||
| Neighbor Level Message Flows | Neighbor Level Message Flows | |||
| *Modem Neighbor Up Lost | *Client Neighbor Up Lost | |||
| Router Client Message Description | Server Client Message Description | |||
| ==================================================================== | ==================================================================== | |||
| ||-----Neighbor Up ------------ Modem sends Neighbor Up | ||-----Neighbor Up ------------ Client sends Neighbor Up | |||
| Modem timesout on ACK | Client timesout on ACK | |||
| <------Neighbor Up ------------ Modem sends Neighbor Up | <------Neighbor Up ------------ Client sends Neighbor Up | |||
| ------Neighbor Up ACK---------> Router accepts the neighbor | ------Neighbor Up ACK---------> Server accepts the neighbor | |||
| session | session | |||
| <------Neighbor Update--------- Modem Neighbor Metrics | <------Neighbor Update--------- Client Neighbor Metrics | |||
| . . . . . . . . | . . . . . . . . | |||
| <------Neighbor Update--------- Modem Neighbor Metrics | <------Neighbor Update--------- Client Neighbor Metrics | |||
| *Router Detects Duplicate Neighbor Ups | *Server Detects Duplicate Neighbor Ups | |||
| Router Client Message Description | Server Client Message Description | |||
| ==================================================================== | ==================================================================== | |||
| <------Neighbor Up ------------ Modem sends Neighbor Up | <------Neighbor Up ------------ Client sends Neighbor Up | |||
| ------Neighbor Up ACK-------|| Router accepts the neighbor | ------Neighbor Up ACK-------|| Server accepts the neighbor | |||
| session | session | |||
| Modem timesout on ACK | Client timesout on ACK | |||
| <------Neighbor Up ------------ Modem resends Neighbor Up | <------Neighbor Up ------------ Client resends Neighbor Up | |||
| Router detects duplicate | Server detects duplicate | |||
| Neighbor, takes down the | Neighbor, takes down the | |||
| previous, accepts the new | previous, accepts the new | |||
| Neighbor. | Neighbor. | |||
| ------Neighbor Up ACK---------> Router accepts the neighbor | ------Neighbor Up ACK---------> Server accepts the neighbor | |||
| session | session | |||
| <------Neighbor Update--------- Modem Neighbor Metrics | <------Neighbor Update--------- Client Neighbor Metrics | |||
| . . . . . . . . | . . . . . . . . | |||
| <------Neighbor Update--------- Modem Neighbor Metrics | <------Neighbor Update--------- Client Neighbor Metrics | |||
| *Neighbor Up, No Layer 3 Addresses | *Neighbor Up, No Layer 3 Addresses | |||
| Router Client Message Description | Server Client Message Description | |||
| ==================================================================== | ==================================================================== | |||
| <------Neighbor Up ------------ Modem sends Neighbor Up | <------Neighbor Up ------------ Client sends Neighbor Up | |||
| ------Neighbor Up ACK---------> Router accepts the neighbor | ------Neighbor Up ACK---------> Server accepts the neighbor | |||
| session | session | |||
| Router ARPs for IPv4 if defined. | Server ARPs for IPv4 if defined. | |||
| Router drives ND for IPv6 if | Server drives ND for IPv6 if | |||
| defined. | defined. | |||
| <------Neighbor Update--------- Modem Neighbor Metrics | <------Neighbor Update--------- Client Neighbor Metrics | |||
| . . . . . . . . | . . . . . . . . | |||
| <------Neighbor Update--------- Modem Neighbor Metrics | <------Neighbor Update--------- Client Neighbor Metrics | |||
| *Neighbor Up with IPv4, No IPv6 | *Neighbor Up with IPv4, No IPv6 | |||
| Router Client Message Description | Server Client Message Description | |||
| ==================================================================== | ==================================================================== | |||
| <------Neighbor Up ------------ Modem sends Neighbor Up with | <------Neighbor Up ------------ Client sends Neighbor Up with | |||
| the IPv4 TLV | the IPv4 TLV | |||
| ------Neighbor Up ACK---------> Router accepts the neighbor | ------Neighbor Up ACK---------> Server accepts the neighbor | |||
| session | session | |||
| Router drives ND for IPv6 if | Server drives ND for IPv6 if | |||
| defined. | defined. | |||
| <------Neighbor Update--------- Modem Neighbor Metrics | <------Neighbor Update--------- Client Neighbor Metrics | |||
| . . . . . . . . | . . . . . . . . | |||
| <------Neighbor Update--------- Modem Neighbor Metrics | <------Neighbor Update--------- Client Neighbor Metrics | |||
| *Neighbor Up with IPv4 and IPv6 | *Neighbor Up with IPv4 and IPv6 | |||
| Router Client Message Description | Server Client Message Description | |||
| ==================================================================== | ==================================================================== | |||
| <------Neighbor Up ------------ Modem sends Neighbor Up with | <------Neighbor Up ------------ Client sends Neighbor Up with | |||
| the IPv4 and IPv6 TLVs | the IPv4 and IPv6 TLVs | |||
| ------Neighbor Up ACK---------> Router accepts the neighbor | ------Neighbor Up ACK---------> Server accepts the neighbor | |||
| session | session | |||
| <------Neighbor Update--------- Modem Neighbor Metrics | <------Neighbor Update--------- Client Neighbor Metrics | |||
| . . . . . . . . | . . . . . . . . | |||
| <------Neighbor Update--------- Modem Neighbor Metrics | <------Neighbor Update--------- Client Neighbor Metrics | |||
| *Neighbor Session Success | *Neighbor Session Success | |||
| Router Client Message Description | Server Client Message Description | |||
| ==================================================================== | ==================================================================== | |||
| ---------Peer Offer-----------> Router offers availability | ---------Peer Offer-----------> Server offers availability | |||
| -------Peer Heartbeat---------> | -------Peer Heartbeat---------> | |||
| <------Neighbor Up ----------- Modem | <------Neighbor Up ----------- Client | |||
| ------Neighbor Up ACK--------> Router | ------Neighbor Up ACK--------> Server | |||
| <------Neighbor Update--------- Modem | <------Neighbor Update--------- Client | |||
| . . . . . . . . | . . . . . . . . | |||
| <------Neighbor Update--------- Modem | <------Neighbor Update--------- Client | |||
| Modem initiates the terminate | Client initiates the terminate | |||
| <------Neighbor Down ---------- Modem | <------Neighbor Down ---------- Client | |||
| ------Neighbor Down ACK-------> Router | ------Neighbor Down ACK-------> Server | |||
| or | or | |||
| Router initiates the terminate | Server initiates the terminate | |||
| ------Neighbor Down ----------> Router | ------Neighbor Down ----------> Server | |||
| <------Neighbor Down ACK------- Modem | <------Neighbor Down ACK------- Client | |||
| Acknowledgements | Acknowledgements | |||
| The authors would like to acknowledge the influence and contributions | The authors would like to acknowledge the influence and contributions | |||
| of Chris Olsen and Teco Boot. | of Chris Olsen, Teco Boot, Subir Das, Jaewon Kang, Vikram Kaul, Rick | |||
| Taylor, and John Dowdell. | ||||
| Normative References | Normative References | |||
| [RFC5444] Clausen, T., Ed,. "Generalized Mobile Ad Hoc Network (MANET) | [RFC5444] Clausen, T., Ed,. "Generalized Mobile Ad Hoc Network (MANET) | |||
| Packet/Message Format", RFC 5444, Februar, 2009. | Packet/Message Format", RFC 5444, Februar, 2009. | |||
| [RFC5578] Berry, B., Ed., "PPPoE with Credit Flow and Metrics", | [RFC5578] Berry, B., Ed., "PPPoE with Credit Flow and Metrics", | |||
| RFC 5578, February 2010. | RFC 5578, February 2010. | |||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| skipping to change at page 54, line 34 ¶ | skipping to change at page 52, line 34 ¶ | |||
| EMail: boberry@cisco.com | EMail: boberry@cisco.com | |||
| Greg Harrison | Greg Harrison | |||
| Cisco | Cisco | |||
| 170 West Tasman Drive | 170 West Tasman Drive | |||
| San Jose, CA 95134 | San Jose, CA 95134 | |||
| USA | USA | |||
| EMail: greharri@cisco.com | EMail: greharri@cisco.com | |||
| Shawn Jury | Shawn Jury | |||
| Cisco | NetApp | |||
| 170 West Tasman Drive | 7301 Kit Creek Road, Building 2 | |||
| San Jose, CA 95134 | Research Triangle Park, NC 27709 | |||
| USA | USA | |||
| Email: sjury@cisco.com | Email: shawn.jury@netapp.com | |||
| Darryl Satterwhite | Darryl Satterwhite | |||
| Cisco | Cisco | |||
| 170 West Tasman Drive | 170 West Tasman Drive | |||
| San Jose, CA 95134 | San Jose, CA 95134 | |||
| USA | USA | |||
| Email: dsatterw@cisco.com | Email: dsatterw@cisco.com | |||
| End of changes. 304 change blocks. | ||||
| 979 lines changed or deleted | 961 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/ | ||||