| < draft-geng-detnet-info-distribution-02.txt | draft-geng-detnet-info-distribution-03.txt > | |||
|---|---|---|---|---|
| Interdomain Routing Working Group X. Geng | Interdomain Routing Working Group X. Geng | |||
| Internet-Draft M. Chen | Internet-Draft M. Chen | |||
| Intended status: Standards Track Huawei | Intended status: Standards Track Huawei | |||
| Expires: September 6, 2018 Z. Li | Expires: April 25, 2019 Z. Li | |||
| China Mobile | China Mobile | |||
| March 05, 2018 | October 22, 2018 | |||
| IGP-TE Extensions for DetNet Information Distribution | IGP-TE Extensions for DetNet Information Distribution | |||
| draft-geng-detnet-info-distribution-02 | draft-geng-detnet-info-distribution-03 | |||
| Abstract | Abstract | |||
| There are requirements in diverse industries to establish multi-hop | This document extends the IGP-TE, including OSPF-TE and ISIS-TE, to | |||
| paths for characterized flows with bounded end-to-end latency and | support DetNet by specifying new information that can be placed in | |||
| extremely low packet loss rate. Deterministic Networking (DetNet) | Link State Protocol Data Units (LSP). This information describes | |||
| can provide service satisfying the requirements. | additional details regarding the state of the network that are useful | |||
| for DetNet computations. | ||||
| This document describes extensions to IGP-TE, including OSPF-TE and | ||||
| ISIS-TE to distribute information of DetNet, which can be used for | ||||
| DetNet path computation/selection. | ||||
| This document only covers the mechanisms by which DetNet information | ||||
| is distributed. The mechanisms for measuring, calculating or | ||||
| configuring DetNet capabilities, resources and other relevant | ||||
| parameters are out of the scope. | ||||
| Requirements Language | Requirements Language | |||
| 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 RFC 2119 [RFC2119]. | document are to be interpreted as described in RFC 2119 [RFC2119]. | |||
| Status of This Memo | Status of This Memo | |||
| This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
| skipping to change at page 2, line 4 ¶ | skipping to change at page 1, line 41 ¶ | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at https://datatracker.ietf.org/drafts/current/. | Drafts is at https://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on September 6, 2018. | ||||
| This Internet-Draft will expire on April 25, 2019. | ||||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2018 IETF Trust and the persons identified as the | Copyright (c) 2018 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 | |||
| (https://trustee.ietf.org/license-info) in effect on the date of | (https://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 Simplified BSD License. | described in the Simplified BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 | 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 3. DetNet Extensions to OSPF TE . . . . . . . . . . . . . . . . 4 | 3. DetNet Extensions to OSPF TE . . . . . . . . . . . . . . . . 4 | |||
| 3.1. Congestion Protection Method sub-TLV . . . . . . . . . . 4 | 3.1. DetNet Node Attributes Advertisement . . . . . . . . . . 4 | |||
| 3.2. Maximum DetNet Reservable Bandwidth sub-TLV . . . . . . . 5 | 3.1.1. Packet Processing Delay Sub-TLV . . . . . . . . . . . 4 | |||
| 3.3. Available DetNet Bandwidth sub-TLV . . . . . . . . . . . 6 | 3.1.2. PREOF Capability Sub-TLV . . . . . . . . . . . . . . 5 | |||
| 3.4. Min/Max Queuing Delay sub-TLV . . . . . . . . . . . . . . 6 | 3.2. DetNet Link Attributtes Advertisement . . . . . . . . . . 6 | |||
| 4. DetNet Extensions to ISIS TE . . . . . . . . . . . . . . . . 7 | 3.2.1. Max DetNet Reservable Bandwidth Sub-TLV . . . . . . . 7 | |||
| 4.1. Congestion Protection Method . . . . . . . . . . . . . . 7 | 3.2.2. DetNet Available Bandwidth Sub-TLV . . . . . . . . . 7 | |||
| 4.2. Maximum DetNet Reservable Bandwidth . . . . . . . . . . . 8 | 3.2.3. PREOF Capability Sub-TLV . . . . . . . . . . . . . . 8 | |||
| 4.3. Available DetNet Bandwidth . . . . . . . . . . . . . . . 9 | 3.2.4. Queuing Algorithm Capability Sub-TLV . . . . . . . . 9 | |||
| 4.4. Min/Max Queuing Delay . . . . . . . . . . . . . . . . . . 9 | 3.2.5. DetNet Queue Sub-TLV . . . . . . . . . . . . . . . . 10 | |||
| 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 | 4. DetNet Extensions to ISIS TE . . . . . . . . . . . . . . . . 12 | |||
| 5.1. Sub-TLVs for Link TLV . . . . . . . . . . . . . . . . . . 10 | 4.1. DetNet Node Attributes Advertisement . . . . . . . . . . 12 | |||
| 5.2. Sub-TLVs for TLVs 22, 23, 141, 222, and 223 . . . . . . . 10 | 4.1.1. DetNet Processing Delay Sub-TLV . . . . . . . . . . . 12 | |||
| 6. Security Considerations . . . . . . . . . . . . . . . . . . . 11 | 4.1.2. PREOF Capability Sub-TLV . . . . . . . . . . . . . . 13 | |||
| 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 11 | 4.2. DetNet Link Attributes Advertisement . . . . . . . . . . 14 | |||
| 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 11 | 4.2.1. Max DetNet Reservable Bandwidth Sub-TLV . . . . . . . 14 | |||
| 8.1. Normative References . . . . . . . . . . . . . . . . . . 11 | 4.2.2. DetNet Available Bandwidth Sub-TLV . . . . . . . . . 15 | |||
| 8.2. Informative References . . . . . . . . . . . . . . . . . 11 | 4.2.3. PREOF Capability Sub-TLV . . . . . . . . . . . . . . 16 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12 | 4.2.4. Queuing Algorithm Capability Sub-TLV . . . . . . . . 16 | |||
| 4.2.5. DetNet Queue Sub-TLV . . . . . . . . . . . . . . . . 17 | ||||
| 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 19 | ||||
| 5.1. Sub-TLVs for OSPF Node Attribute TLV . . . . . . . . . . 19 | ||||
| 5.2. Sub-TLVs for OSPF Link TLV . . . . . . . . . . . . . . . 19 | ||||
| 5.3. Sub-TLVs for ISIS Router Capability TLV . . . . . . . . . 20 | ||||
| 5.4. Sub-TLVs for IS-IS TLVs 22, 23, 141, 222, and 223 . . . 20 | ||||
| 6. Security Considerations . . . . . . . . . . . . . . . . . . . 20 | ||||
| 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 20 | ||||
| 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 20 | ||||
| 8.1. Normative References . . . . . . . . . . . . . . . . . . 20 | ||||
| 8.2. Informative References . . . . . . . . . . . . . . . . . 21 | ||||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22 | ||||
| 1. Introduction | 1. Introduction | |||
| There are many use cases from diverse industries which have the need | There are many use cases from diverse industries which have the need | |||
| in common for deterministic service, for example: audio video | in common for deterministic service, for example: audio video | |||
| production, industrial process control and mobile access networks. | production, industrial process control and mobile access networks. | |||
| The requirements can be summarized as: | The requirements can be summarized as: | |||
| Deterministic minimum and maximum end-to-end latency from source | Deterministic minimum and maximum end-to-end latency from source | |||
| to destination | to destination | |||
| skipping to change at page 3, line 34 ¶ | skipping to change at page 3, line 41 ¶ | |||
| capabilities (e.g., DetNet capable or not, which congestion | capabilities (e.g., DetNet capable or not, which congestion | |||
| protection algorithms are supported, etc.), resources (e.g, dedicated | protection algorithms are supported, etc.), resources (e.g, dedicated | |||
| bandwidth for DetNet, buffers, etc.), performance (e.g., | bandwidth for DetNet, buffers, etc.), performance (e.g., | |||
| device/queue/link delay etc.) and other relevant information of each | device/queue/link delay etc.) and other relevant information of each | |||
| DetNet capable node. Then, a DetNet path computation element (e.g., | DetNet capable node. Then, a DetNet path computation element (e.g., | |||
| PCE or ingress of a DetNet flow) can use these information to compute | PCE or ingress of a DetNet flow) can use these information to compute | |||
| a path that satisfies the requirement of a specific DetNet flow. | a path that satisfies the requirement of a specific DetNet flow. | |||
| Specifically, according to the requirements stated in DetNet | Specifically, according to the requirements stated in DetNet | |||
| architecture, the information should include: | architecture, the information should include: | |||
| o Whether a node is DetNet capable | o Bandwidth related attributes (e.g., bandwidth reserved for | |||
| DetNet); | ||||
| o Congestion protection methods supported by a DetNet capable node; | ||||
| o Dedicated bandwidth for DetNet flows; | o Buffer/queue management related attributes (e.g., queue management | |||
| algorithm, etc.); | ||||
| o Device and link delay; | o PREOF (Packet Replication, Ordering and Elimination Function) | |||
| capabilities and parameters (e.g., maximum out-of-order packets, | ||||
| etc.); | ||||
| Some of information (e.g., Link delay/loss ) can be distributed and | o Delay related attributes (e.g., node processing delay, queuing | |||
| collected through the Traffic Engineering (TE) metric extensions | delay, link delay, etc.); | |||
| [RFC7471], [RFC7810]. | ||||
| This document defines extensions to OSPF and ISIS to distribute the | This document defines extensions to OSPF and ISIS to distribute the | |||
| above DetNet information that can not distributed by the existing | above DetNet information at node and/or link granularity. | |||
| protocols. | ||||
| Some of information (e.g., Link delay/loss ) can be distributed and | ||||
| collected through Traffic Engineering (TE) metric extensions | ||||
| [RFC7471] and [RFC7810], which are not covered by this document. | ||||
| 2. Terminology | 2. Terminology | |||
| All the DetNet related terminologies used in this document conform to | All the DetNet related terminologies used in this document conform to | |||
| the DetNet architecture [I-D.ietf-detnet-architecture]. | the DetNet architecture [I-D.ietf-detnet-architecture]. | |||
| 3. DetNet Extensions to OSPF TE | 3. DetNet Extensions to OSPF TE | |||
| This document defines new OSPF TE sub-TLVs for Link TLV to distribute | This document defines an extension to OSPF used to advertise DetNet | |||
| the DetNet required information as stated in Section 1. These sub- | information. | |||
| TLVs includes: | ||||
| 3.1. DetNet Node Attributes Advertisement | ||||
| New OSPF DetNet sub-TLVs for Node Attribute TLV[RFC5786] are defined | ||||
| to distribute the DetNet information of a node. These sub-TLVs | ||||
| include: | ||||
| ______________________________________________________________ | ______________________________________________________________ | |||
| | Type | Length | Value | | | Type | Length | Value | | |||
| -------------------------------------------------------------- | |------------------------------------------------------------| | |||
| | TBD1 | 4 | Congestion Control Method | | | TBD1 | 8 | DetNet Processing Delay | | |||
| | TBD2 | 4 | Max DetNet Reservable Bandwidth | | | TBD4 | 4 | PREOF Capability | | |||
| | TBD3 | 4 | Available DetNet Bandwidth | | ||||
| | TBD4 | 8 | Min/Max Queuing Delay | | ||||
| |________|_______________|___________________________________| | |________|_______________|___________________________________| | |||
| 3.1. Congestion Protection Method sub-TLV | 3.1.1. Packet Processing Delay Sub-TLV | |||
| This Congestion Protection (CP) Method sub-TLV is used to advertise | ||||
| the DetNet flow congestion protection methods used in transit nodes. | ||||
| It may be required by some DetNet flows that all the transit nodes | ||||
| along the path SHOULD use the same congestion protection method. | ||||
| Some typical congestion protection methods are listed as below: | ||||
| Time Aware Shaping [IIEEE802.1Qbv] | In the scope of DetNet, packet processing delay, which begins after | |||
| the packet goes into the input port and ends before the packet | ||||
| arrives the output buffer, can expected in a known range, and the | ||||
| value of the delay bound is specified in this sub-TLV, including: | ||||
| Credit Based Shaper [IEEE802.1Q-2014] | o Maximum DetNet packet processing delay | |||
| Cyclic Queuing and Forwarding [IEEE802.1Qch] | o Minimum DetNet packet processing delay | |||
| Asynchronous Traffic Shaping [IEEE802.1Qcr] | o Maximum DetNet packet processing delay variation | |||
| The format of this sub-TLV is shown in the following diagram: | The format of this sub-TLV is shown in the following diagram: | |||
| 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 2 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type (TBD1) | Length(4) | | | Type(TBD1) | Length(8) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | RESERVED | CP Methods | | | RESERVED | Minimum DetNet Processing Delay | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | RESERVED | Maximum DetNet Processing Delay | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | RESERVED | Maximum DetNet Processing Delay Variation | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| The Type field is 2 octets in length, and the value is TBD1. | The Type field is 2 octets in length, and the value is TBD1. | |||
| The Length field is 2 octets in length and its value is 4. | The Length field is 2 octets in length and its value is 8. | |||
| The RESERVED field is reserved for future use. It MUST be set to 0 | The RESERVED field is reserved for future use. It MUST be set to 0 | |||
| when sent and MUST be ignored when received. | when sent and MUST be ignored when received. | |||
| This Congestion Control Method field presents the congestion | The Minimum DetNet Processing Delay field is 3 octets, and presents | |||
| protection method used in the transit node. | the minimum delay for a DetNet flow in the device, excluding the | |||
| queuing delay in output port. The units are microsecond. | ||||
| Five congestion protection methods are introduced in this document: | The Maximum DetNet Processing Delay field is 3 octets, and presents | |||
| the maximum delay for a DetNet flow in the device, excluding the | ||||
| queuing delay in output port. The units are microsecond. | ||||
| _______________________________________________________________ | The Maximum DetNet Processing Delay Variation field is 3 octets in | |||
| | Value | Congestion Control Mechanisms | | length, and presents the maximum delay variation for a DetNet flow in | |||
| --------------------------------------------------------------- | the device, excluding the queuing delay in output port. The units | |||
| | 0 | Reserved | | are microsecond. | |||
| | 1 | Time Aware Shaper | | ||||
| | 2 | Credit Based Shaper | | ||||
| | 3 | Time Aware Shaper and Credit Based Shaper | | ||||
| | 4 | Cyclic Queuing and Forwarding | | ||||
| | 5 | Asynchronous Traffic Shaping | | ||||
| | 6-254 | Unassigned | | ||||
| | 255 | Reserved | | ||||
| |___________|_________________________________________________| | ||||
| 3.2. Maximum DetNet Reservable Bandwidth sub-TLV | 3.1.2. PREOF Capability Sub-TLV | |||
| PREOF (Packet Replication/Elimination/Ordering Function) is for | ||||
| DetNet service protection, which includes: | ||||
| o In-order delivery function: defined in Section 3.2.2.1 of | ||||
| [I-D.ietf-detnet-architecture] | ||||
| o Packet replication function: defined in Section 3.2.2.2 of | ||||
| [I-D.ietf-detnet-architecture] | ||||
| o Packet elimination function: defined in Section 3.2.2.3 of | ||||
| [I-D.ietf-detnet-architecture] | ||||
| This sub-TLV specifies a set of PREOF capabilities and relevant | ||||
| parameters at node granularity. PREOF can also be advertised as Link | ||||
| attribute (section 3.2.3), when not all of the ports in the node | ||||
| support PREOF. | ||||
| The format of this sub-TLV is shown in the following diagram: | ||||
| 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 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Type(TBD4) | Length(4) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Flags | Maximum out-of-order Packet Number | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| The Type field is 2 octets in length, and the value is TBD4. | ||||
| The Length field is 2 octets in length and its value is 4. | ||||
| The Flags field is 1 octet in length, and it is designed as follows: | ||||
| 0 1 2 3 4 5 6 7 8 | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| |R|E|O| | | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| where: | ||||
| o R-flag: replication-capability flag, which indicates whether a | ||||
| link has the packet replication capability. | ||||
| o E-flag: elimination-capability flag, which indicates whether a | ||||
| link has the packet elimination capability | ||||
| o O-flag: in-order-capability, which indicates whether a LTP has the | ||||
| in-order delivery capability | ||||
| Maximum out-of-order Packet Number field is 3 octet in length, and | ||||
| presents the maximum number of out-of-order packets that this link | ||||
| can support, it depends on the reserved buffer size for packet | ||||
| reordering. This value is valid only when the O-flag is set. | ||||
| 3.2. DetNet Link Attributtes Advertisement | ||||
| New OSPF DetNet sub-TLVs for Link TLV are defined to distribute | ||||
| DetNet information of a link. These sub-TLVs include: | ||||
| ______________________________________________________________ | ||||
| | Type | Length | Value | | ||||
| |------------------------------------------------------------| | ||||
| | TBD2 | 4 | Max DetNet Reservable Bandwidth | | ||||
| | TBD3 | 4 | DetNet Available Bandwidth | | ||||
| | TBD4 | 4 | PREOF Capability | | ||||
| | TBD5 | 4 | Queuing Algorithm Capabilities | | ||||
| | TBD6 | 10 | Queue Parameters | | ||||
| |________|_______________|___________________________________| | ||||
| 3.2.1. Max DetNet Reservable Bandwidth Sub-TLV | ||||
| This sub-TLV specifies the maximum amount of bandwidth that is | This sub-TLV specifies the maximum amount of bandwidth that is | |||
| reserved for DetNet on this link. Note that this value SHOULD be | reserved for DetNet on this link. Note that this value SHOULD be | |||
| smaller than the value of Maximum Reservable Bandwidth sub-TLV | smaller than the value of Maximum Reservable Bandwidth sub-TLV | |||
| [RFC3630]. The value normally depends on the Congestion Protection | [RFC3630]. The value normally depends on the queuing management | |||
| Method and is user-configurable. In some particular Congestion | algorithm and is user-configurable. In some particular queuing | |||
| Protection Method (e.g. Credit Based shaper in AVB), this value will | management algorithm (e.g. Credit Based shaper in AVB), this value | |||
| affect the calculation of maximum queuing delay of the DetNet flow. | will affect the calculation of maximum queuing delay of the DetNet | |||
| The units are bytes per second. | flow. The units are bytes per second. | |||
| The format of this sub-TLV is shown in the following diagram: | The format of this sub-TLV is shown in the following diagram: | |||
| 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type(TBD2) | Length(4) | | | Type(TBD2) | Length(4) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | RESERVED | Maximum DetNet Reservable Bandwidth | | | RESERVED | Maximum DetNet Reservable Bandwidth | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| The Type field is 2 octets in length, and the value is TBD2. | The Type field is 2 octets in length, and the value is TBD2. | |||
| The Length field is 2 octets in length and its value is 4. | The Length field is 2 octets in length and its value is 4. | |||
| The RESERVED field is reserved for future use. It MUST be set to 0 | The RESERVED field is reserved for future use. It MUST be set to 0 | |||
| when sent and MUST be ignored when received. | when sent and MUST be ignored when received. | |||
| This Maximum DetNet Reservable Bandwidth presents the maximum | This Maximum DetNet Reservable Bandwidth field is 3 octets in length, | |||
| bandwidth that may be reserved for DetNet. The units are bytes per | and presents the maximum bandwidth that may be reserved for DetNet. | |||
| second. | The units are bytes per second. | |||
| 3.3. Available DetNet Bandwidth sub-TLV | 3.2.2. DetNet Available Bandwidth Sub-TLV | |||
| This sub-TLV specifies the available bandwidth that can be reserved | This sub-TLV specifies the available bandwidth that can be reserved | |||
| for DetNet flow on this link for now. Considering that there is no | for DetNet flow on this link for now. Considering that there is no | |||
| generally accepted DetNet traffic classification, this value contains | generally accepted DetNet traffic classification, this value contains | |||
| all the available DetNet Bandwidth from different DetNet traffic | all the available DetNet Bandwidth from different DetNet traffic | |||
| classes (if there is any), which differs from the Unreserved | classes (if there is any), which differs from the Unreserved | |||
| Bandwidth defined in [RFC3630]. | Bandwidth defined in [RFC3630]. | |||
| The format of this sub-TLV is shown in the following diagram: | The format of this sub-TLV is shown in the following diagram: | |||
| 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | (Type)TBD3 | (Length)4 | | | Type(TBD3) | Length(4) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | RESERVED | Available DetNet Bandwidth | | | RESERVED | Available DetNet Bandwidth | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| The Type field is 2 octets in length, and the value is TBD3. | The Type field is 2 octets in length, and the value is TBD3. | |||
| The Length field is 2 octets in length and its value is 4. | The Length field is 2 octets in length and its value is 4. | |||
| The RESERVED field is reserved for future use. It MUST be set to 0 | The RESERVED field is reserved for future use. It MUST be set to 0 | |||
| when sent and MUST be ignored when received. | when sent and MUST be ignored when received. | |||
| This Available DetNet Bandwidth field presents the available | This Available DetNet Bandwidth field is 3 octets in length, and | |||
| bandwidth for DetNet in this link. The units are bytes per second. | presents the available bandwidth for DetNet in this link. The units | |||
| are bytes per second. | ||||
| 3.4. Min/Max Queuing Delay sub-TLV | 3.2.3. PREOF Capability Sub-TLV | |||
| [Editor Notes: more consideration and inputs are needed for these | PREOF (Packet Replication/Elimination/Ordering Function) is for | |||
| queue delays] | DetNet service protection, which includes : | |||
| This sub-TLV advertises the minimum and maximum queuing delay values | o In-order delivery function: defined in Section 3.2.2.1 of | |||
| of specific DetNet flow in the link. Max/Min Unidirectional Link | [I-D.ietf-detnet-architecture] | |||
| Delay Sub-TLV [RFC7471] excludes the queuing delay because of its | ||||
| instability. With the techniques used in DetNet, the queuing delay | o Packet replication function: defined in Section 3.2.2.2 of | |||
| can be limited to a reasonable range, which means that the queuing | [I-D.ietf-detnet-architecture] | |||
| delay bound is stable enough to be defined as a sub-TLV and | ||||
| advertised over the network. | o Packet elimination function: defined in Section 3.2.2.3 of | |||
| [I-D.ietf-detnet-architecture] | ||||
| This sub-TLV specifies a set of PREOF capabilities and relevant | ||||
| parameters at link granularity. PREOF can also be advertised as node | ||||
| attribute (section 3.1.2), when all of the ports in the node support | ||||
| PREOF. | ||||
| The format of this sub-TLV is shown in the following diagram: | The format of this sub-TLV is shown in the following diagram: | |||
| 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | (Type)TBD4 | (Length)8 | | | Type(TBD4) | Length(4) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | RESERVED | Minimum DetNet Queuing Delay | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | RESERVED | Maximum DetNet Queuing Delay | | | Flags | Maximum out-of-order Packet Number | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| The Type field is 2 octets in length, and the value is TBD4. | The Type field is 2 octets in length, and the value is TBD4. | |||
| The Length field is 2 octets in length and its value is 4. | The Length field is 2 octets in length and its value is 4. | |||
| The Flags field is 1 octet in length, and it is designed as follows: | ||||
| 0 1 2 3 4 5 6 7 8 | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| |R|E|O| | | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| where: | ||||
| o R-flag: replication-capability flag, which indicates whether a | ||||
| link has the packet replication capability. | ||||
| o E-flag: elimination-capability flag, which indicates whether a | ||||
| link has the packet elimination capability | ||||
| o O-flag: in-order-capability, which indicates whether a LTP has the | ||||
| in-order delivery capability | ||||
| Maximum out-of-order Packet Number field is 3 octet in length, and | ||||
| presents the maximum number of out-of-order packets that this link | ||||
| can support, it depends on the reserved buffer size for packet | ||||
| reordering. This value is valid only when the O-flag is set. | ||||
| 3.2.4. Queuing Algorithm Capability Sub-TLV | ||||
| This sub-TLV specifies queuing management algorithms capabilities to | ||||
| gaurante bounded queuing latency [I-D.finn-detnet-bounded-latency]. | ||||
| The format of this sub-TLV is shown in the following diagram: | ||||
| 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 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Type(TBD5) | Length(4) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Flags | RESERVED | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| The Type field is 2 octets in length, and the value is TBD5. | ||||
| The Length field is 2 octets in length and its value is 4. | ||||
| The RESERVED field is reserved for future use. It MUST be set to 0 | The RESERVED field is reserved for future use. It MUST be set to 0 | |||
| when sent and MUST be ignored when received. | when sent and MUST be ignored when received. | |||
| Minimum DetNet Queuing Delay is 24-bit field carrying minimum queuing | The Flags field is 1 octet in length, and it is designed as follows: | |||
| delay value (in microseconds) encoded as an integer value. | ||||
| 0 1 2 3 4 5 6 7 8 | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| |C|T|H|A| | | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| where: | ||||
| o C-flag: CBS flag, which indicates whether a link can support Time | ||||
| Aware Shaping [IIEEE802.1Qbv]. | ||||
| o T-flag: TAS flag, which indicuate whether a link can support | ||||
| Credit Based Shaper [IEEE802.1Q-2014] | ||||
| o H-flag: CQF flag, which indicuate whether a link can support | ||||
| Cyclic Queuing and Forwarding [IEEE802.1Qch] | ||||
| o A-flag: ATS flag, which indicuate whether a link can support | ||||
| Asynchronous Traffic Shaping [IEEE802.1Qcr] | ||||
| 3.2.5. DetNet Queue Sub-TLV | ||||
| In the context of DetNet, the delay of queuing is bounded, and the | ||||
| bound depends on what queuing management method is used and how many | ||||
| buffers are allocated. This sub-TLV specifies the DetNet queue | ||||
| parameters. | ||||
| The format of this sub-TLV is shown in the following diagram: | ||||
| 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 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Type(TBD6) | Length(10) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Queue Identifier | Queue Buffer Size | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Flags | Maximum Queuing Delay | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | RESERVED | Minimum Queuing Delay | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | RESERVED | Maximum Queuing Delay Variation | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| The Type field is 2 octets in length, and the value is TBD6. | ||||
| The Length field is 2 octets in length and its value is 10. | ||||
| The Queue Identifier field is 3 octets in length, and specifies the | ||||
| identifier of a queue. It could be an internal identifier that is | ||||
| only used within a node. Or it could be used by a centralized | ||||
| controller to specify in which specific queue a flow/packet is | ||||
| required to enter. | ||||
| The Queue Buffer Size field is 3 octets in length, and specifies the | ||||
| size of a queue with unit of bytes. | ||||
| The Flags field is 1 octet in length, and it is designed as follows: | ||||
| 0 1 2 3 4 5 6 7 8 | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| |C|T|H|A| | | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| where: | ||||
| o C-flag: CBS flag, which indicates whether a link can support Time | ||||
| Aware Shaping [IIEEE802.1Qbv]. | ||||
| o T-flag: TAS flag, which indicuate whether a link can support | ||||
| Credit Based Shaper [IEEE802.1Q-2014] | ||||
| o H-flag: CQF flag, which indicuate whether a link can support | ||||
| Cyclic Queuing and Forwarding [IEEE802.1Qch] | ||||
| o A-flag: ATS flag, which indicuate whether a link can support | ||||
| Asynchronous Traffic Shaping [IEEE802.1Qcr] | ||||
| The RESERVED field is reserved for future use. It MUST be set to 0 | ||||
| when sent and MUST be ignored when received. | ||||
| Minimum Queuing Delay is 3 octets in length, and carries minimum | ||||
| queuing delay value (in microseconds) encoded as an integer value. | ||||
| Implementations may also add this to the value of Min Delay | Implementations may also add this to the value of Min Delay | |||
| Unidirectional Link Delay Sub-TLV [RFC7471] in order to advertise the | Unidirectional Link Delay Sub-TLV [RFC7471] in order to advertise the | |||
| minimum delay of this link. Min Queuing Delay can be the same with | minimum delay of this link. Min Queuing Delay can be the same with | |||
| the Max Queuing Delay. | the Max Queuing Delay. | |||
| The RESERVED field is reserved for future use. It MUST be set to 0 | Maximum Queuing Delay is 3 octets in length, and carries the maximum | |||
| when sent and MUST be ignored when received. | ||||
| Maximum DetNet Queuing Delay is 24-bit field carrying the maximum | ||||
| queuing delay value (in microseconds) encoded as an integer value. | queuing delay value (in microseconds) encoded as an integer value. | |||
| Implementations may also add this to the value of Max Delay | Implementations may also add this to the value of Max Delay | |||
| Unidirectional Link Delay Sub-TLV [RFC7471]to order to advertise the | Unidirectional Link Delay Sub-TLV [RFC7471]to order to advertise the | |||
| maximum delay of this link. | maximum delay of this link. | |||
| Maximum Queuing Delay variation is 3 octets in length, and carries | ||||
| the maximum queuing delay variation value (in microseconds) encoded | ||||
| as an integer value. | ||||
| The RESERVED field is reserved for future use. It MUST be set to 0 | ||||
| when sent and MUST be ignored when received. | ||||
| 4. DetNet Extensions to ISIS TE | 4. DetNet Extensions to ISIS TE | |||
| This document defines new IS-IS TE sub-TLVs that can be announced in | This document defines an extension to IS-IS used to advertise DetNet | |||
| the TLVs 22, 23, 141, 222, and 223 in order to distribute DetNet | information. | |||
| information. The sub-TLV extensions below build on the ones provided | ||||
| in [RFC5305], [RFC5316]and [RFC7310]. | ||||
| 4.1. Congestion Protection Method | 4.1. DetNet Node Attributes Advertisement | |||
| This Congestion Protection (CP) Method sub-TLV is used to advertise | The DetNet node sub-TLVs are defined within the body of the IS-IS | |||
| the DetNet flow congestion protection methods used in transit nodes. | Router Capability TLV [RFC7981] to carry DetNet information. | |||
| The reader can know more about this sub-TLV referring to section 3.1. | ||||
| 4.1.1. DetNet Processing Delay Sub-TLV | ||||
| This sub-TLV specifies the DetNet packet porcessing parameters. The | ||||
| reader can know more about this sub-TLV referring to section 3.1. | ||||
| The format of this sub-TLV is shown in the following diagram: | The format of this sub-TLV is shown in the following diagram: | |||
| 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 2 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type(TBD5) | Length(4) | | | Type(TBD7) | Length(8) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | RESERVED | Congestion Control Method | | | RESERVED | Minimum DetNet Processing Delay | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | RESERVED | Maximum DetNet Processing Delay | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | RESERVED | Maximum DetNet Processing Delay Variation | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| The Type field is 1 octet in length, and the value is TBD5. | The Type field is 1 octets in length, and the value is TBD7. | |||
| The Length field is 1 octet in length and its value is 4. | The Length field is 1 octets in length and its value is 8. | |||
| The RESERVED field is reserved for future use. It MUST be set to 0 | The RESERVED field is reserved for future use. It MUST be set to 0 | |||
| when sent and MUST be ignored when received. | when sent and MUST be ignored when received. | |||
| This Congestion Control Method field presents the congestion | The Minimum DetNet Processing Delay is 3 octets in length and | |||
| protection method used in the transit node. | presents the minimum delay for a DetNet flow in the device, excluding | |||
| the queuing delay in output port. The units are microsecond. | ||||
| Five congestion protection methods are introduced in this document: | The Maximum DetNet Processing Delay is 3 octets in length and | |||
| presents the maximum delay for a DetNet flow in the device, excluding | ||||
| the queuing delay in output port. The units are microsecond. | ||||
| 4.2. Maximum DetNet Reservable Bandwidth | The Maximum DetNet Processing Delay Variation is 3 octets in length | |||
| and presents the maximum delay variation for a DetNet flow in the | ||||
| device, excluding the queuing delay in output port. The units are | ||||
| microsecond. | ||||
| 4.1.2. PREOF Capability Sub-TLV | ||||
| This sub-TLV specifies a set of PREOF capabilities and relevant | ||||
| parameters in sub-TLV. The reader can know more about this sub-TLV | ||||
| referring to section 3.4. | ||||
| The format of this sub-TLV is shown in the following diagram: | ||||
| 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 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Type(TBD10) | Length(4) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Flags | Maximum out-of-order Packet Number | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| The Type field is 1 octets in length, and the value is TBD10. | ||||
| The Length field is 1 octets in length and its value is 4. | ||||
| The Flags field is 1 octet in length, and it is designed as follows: | ||||
| 0 1 2 3 4 5 6 7 8 | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| |R|E|O| | | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| where: | ||||
| o R-flag: replication-capability flag, which indicates whether a | ||||
| link has the packet replication capability. | ||||
| o E-flag: elimination-capability flag, which indicates whether a | ||||
| link has the packet elimination capability | ||||
| o O-flag: in-order-capability, which indicates whether a LTP has the | ||||
| in-order delivery capability | ||||
| Maximum out-of-order Packet Number field is 3 octets in length and | ||||
| presents the maximum number of out-of-order packets that this link | ||||
| can support, it depends on the reserved buffer size for packet | ||||
| reordering. This value is valid only when the O-flag is set. | ||||
| 4.2. DetNet Link Attributes Advertisement | ||||
| This document defines new IS-IS TE sub-TLVs that can be announced in | ||||
| the TLVs 22, 23, 141, 222, and 223 in order to distribute DetNet | ||||
| information. The sub-TLV extensions below build on the ones provided | ||||
| in [RFC5305], [RFC5316]and [RFC7310] | ||||
| 4.2.1. Max DetNet Reservable Bandwidth Sub-TLV | ||||
| This sub-TLV specifies the maximum amount of bandwidth that is | This sub-TLV specifies the maximum amount of bandwidth that is | |||
| reserved for DetNet on this link. Note that this value SHOULD be | reserved for DetNet on this link. Note that this value SHOULD be | |||
| smaller than the value of Maximum Reservable Link Bandwidth | smaller than the value of Maximum Reservable Link Bandwidth | |||
| [RFC5305]. The reader can know more about this sub-TLV referring to | [RFC5305]. The reader can know more about this sub-TLV referring to | |||
| section 3.2. | section 3.2. | |||
| The format of this sub-TLV is shown in the following diagram: | The format of this sub-TLV is shown in the following diagram: | |||
| 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type(TBD6) | Length(4) | | | Type(TBD8) | Length(4) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | RESERVED | Maximum DetNet Reservable Bandwidth | | | RESERVED | Maximum DetNet Reservable Bandwidth | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| The Type field is 1 octet in length, and the value is TBD6. | The Type field is 1 octets in length, and the value is TBD8. | |||
| The Length field is 1 octet in length and its value is 4. | The Length field is 1 octets in length and its value is 4. | |||
| The RESERVED field is reserved for future use. It MUST be set to 0 | The RESERVED field is reserved for future use. It MUST be set to 0 | |||
| when sent and MUST be ignored when received. | when sent and MUST be ignored when received. | |||
| This Maximum DetNet Reservable Bandwidth presents the maximum | This Maximum DetNet Reservable Bandwidth field is 3 octets in length | |||
| bandwidth that may be reserved for DetNet. The units are bytes per | and presents the maximum bandwidth that may be reserved for DetNet. | |||
| second. | The units are bytes per second. | |||
| 4.3. Available DetNet Bandwidth | 4.2.2. DetNet Available Bandwidth Sub-TLV | |||
| This sub-TLV specifies the available bandwidth that can be reserved | This sub-TLV specifies the available bandwidth that can be reserved | |||
| for DetNet flow on this link for now. It is different from the | for DetNet flow on this link for now. It is different from the | |||
| Unreserved Bandwidth sub-TLV defined in [RFC5305] referring to | Unreserved Bandwidth sub-TLV defined in [RFC5305] referring to | |||
| section 3.3. | section 3.3. | |||
| The format of this sub-TLV is shown in the following diagram: | The format of this sub-TLV is shown in the following diagram: | |||
| 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type(TBD7) | Length(4) | | | Type(TBD9) | Length(4) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | RESERVED | Available DetNet Bandwidth | | | RESERVED | Available DetNet Bandwidth | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| The Type field is 1 octet in length, and the value is TBD7. | The Type field is 1 octets in length, and the value is TBD9. | |||
| The Length field is 1 octet in length and its value is 4. | The Length field is 1 octets in length and its value is 4. | |||
| The RESERVED field is reserved for future use. It MUST be set to 0 | The RESERVED field is reserved for future use. It MUST be set to 0 | |||
| when sent and MUST be ignored when received. | when sent and MUST be ignored when received. | |||
| This Available DetNet Bandwidth field presents the available | This Available DetNet Bandwidth field is 3 octets in length and | |||
| bandwidth for DetNet in this link. The units are bytes per second. | presents the available bandwidth for DetNet in this link. The units | |||
| are bytes per second. | ||||
| 4.4. Min/Max Queuing Delay | 4.2.3. PREOF Capability Sub-TLV | |||
| The reader can know more about this sub-TLV referring to section 3.4. | This sub-TLV specifies a set of PREOF capabilities and relevant | |||
| parameters in sub-TLV. The reader can know more about this sub-TLV | ||||
| referring to section 3.4. | ||||
| The format of this sub-TLV is shown in the following diagram: | The format of this sub-TLV is shown in the following diagram: | |||
| 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type(TBD8) | Length(4) | | | Type(TBD10) | Length(4) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | RESERVED | Minimum DetNet Queuing Delay | | | Flags | Maximum out-of-order Packet Number | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | RESERVED | Maximum DetNet Queuing Delay | | ||||
| The Type field is 1 octets in length, and the value is TBD10. | ||||
| The Length field is 1 octets in length and its value is 4. | ||||
| The Flags field is 1 octet in length, and it is designed as follows: | ||||
| 0 1 2 3 4 5 6 7 8 | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| |R|E|O| | | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| where: | ||||
| o R-flag: replication-capability flag, which indicates whether a | ||||
| link has the packet replication capability. | ||||
| o E-flag: elimination-capability flag, which indicates whether a | ||||
| link has the packet elimination capability | ||||
| o O-flag: in-order-capability, which indicates whether a LTP has the | ||||
| in-order delivery capability | ||||
| Maximum out-of-order Packet Number field is 3 octets in length and | ||||
| presents the maximum number of out-of-order packets that this link | ||||
| can support, it depends on the reserved buffer size for packet | ||||
| reordering. This value is valid only when the O-flag is set. | ||||
| 4.2.4. Queuing Algorithm Capability Sub-TLV | ||||
| This sub-TLV specifies queuing management algorithms capabilities to | ||||
| gaurante bounded queuing latency [I-D.finn-detnet-bounded-latency]. | ||||
| The format of this sub-TLV is shown in the following diagram: | ||||
| 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 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Type(TBD11) | Length(4) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Flags | RESERVED | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| The Type field is 1 octet in length, and the value is TBD4. | The Type field is 1 octets in length, and the value is TBD11. | |||
| The Length field is 1 octet in length and it's value is 4. | The Length field is 1 octets in length and its value is 4. | |||
| The RESERVED field is reserved for future use. It MUST be set to 0 | The Flags field is 1 octet in length, and it is designed as follows: | |||
| when sent and MUST be ignored when received. | ||||
| Minimum DetNet Queuing Delay is 24-bit field carrying minimum queuing | 0 1 2 3 4 5 6 7 8 | |||
| delay value (in microseconds) encoded as an integer value. | +-+-+-+-+-+-+-+-+ | |||
| Implementations may also add this to the value of Min Unidirectional | |C|T|H|A| | | |||
| Link Delay [RFC7810] in order to advertise the minimum delay of this | +-+-+-+-+-+-+-+-+ | |||
| link. Min Queuing Delay can be the same with the Max Queuing Delay. | ||||
| where: | ||||
| o C-flag: CBS flag, which indicates whether a link can support Time | ||||
| Aware Shaping [IIEEE802.1Qbv]. | ||||
| o T-flag: TAS flag, which indicuate whether a link can support | ||||
| Credit Based Shaper [IEEE802.1Q-2014] | ||||
| o H-flag: CQF flag, which indicuate whether a link can support | ||||
| Cyclic Queuing and Forwarding [IEEE802.1Qch] | ||||
| o A-flag: ATS flag, which indicuate whether a link can support | ||||
| Asynchronous Traffic Shaping [IEEE802.1Qcr] | ||||
| 4.2.5. DetNet Queue Sub-TLV | ||||
| In the context of DetNet, the delay of queuing is bounded, and the | ||||
| bound depends on what queuing management method is used and how many | ||||
| buffers are allocated. This sub-TLV specifies the DetNet queue | ||||
| parameters. | ||||
| The format of this sub-TLV is shown in the following diagram: | ||||
| 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 | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Type(TBD12) | Length(10) | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Queue Identifier | Queue Buffer Size | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | Flags | Maximum Queuing Delay | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | RESERVED | Minimum Queuing Delay | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| | RESERVED | Maximum Queuing Delay Variation | | ||||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| The Type field is 1 octets in length, and the value is TBD12. | ||||
| The Length field is 1 octets in length and its value is 10. | ||||
| The Queue Identifier field specifies the identifier of a queue. It | ||||
| could be an internal identifier that is only used within a node. Or | ||||
| it could be used by a centralized controller to specify in which | ||||
| specific queue a flow/packet is required to enter. | ||||
| The Queue Buffer Size field specifies the size of a queue with unit | ||||
| of bytes. | ||||
| The Flags field is 1 octet in length, and it is designed as follows: | ||||
| 0 1 2 3 4 5 6 7 8 | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| |C|T|H|A| | | ||||
| +-+-+-+-+-+-+-+-+ | ||||
| where: | ||||
| o C-flag: CBS flag, which indicates whether a link can support Time | ||||
| Aware Shaping [IIEEE802.1Qbv]. | ||||
| o T-flag: TAS flag, which indicuate whether a link can support | ||||
| Credit Based Shaper [IEEE802.1Q-2014] | ||||
| o H-flag: CQF flag, which indicuate whether a link can support | ||||
| Cyclic Queuing and Forwarding [IEEE802.1Qch] | ||||
| o A-flag: ATS flag, which indicuate whether a link can support | ||||
| Asynchronous Traffic Shaping [IEEE802.1Qcr] | ||||
| The RESERVED field is reserved for future use. It MUST be set to 0 | The RESERVED field is reserved for future use. It MUST be set to 0 | |||
| when sent and MUST be ignored when received. | when sent and MUST be ignored when received. | |||
| Maximum DetNet Queuing Delay is 24-bit field carrying the maximum | Minimum Queuing Delay is 3 octets in length and presents minimum | |||
| queuing delay value (in microseconds) encoded as an integer value. | ||||
| Implementations may also add this to the value of Min Delay | ||||
| Unidirectional Link Delay Sub-TLV [RFC7471] in order to advertise the | ||||
| minimum delay of this link. Min Queuing Delay can be the same with | ||||
| the Max Queuing Delay. | ||||
| Maximum Queuing Delay is 3 octets in length and presents the maximum | ||||
| queuing delay value (in microseconds) encoded as an integer value. | queuing delay value (in microseconds) encoded as an integer value. | |||
| Implementations may also add this to the value of Max Delay | Implementations may also add this to the value of Max Delay | |||
| Unidirectional Link Delay Sub-TLV [RFC7810] to order to advertise the | Unidirectional Link Delay Sub-TLV [RFC7471]to order to advertise the | |||
| maximum delay of this link. | maximum delay of this link. | |||
| Maximum Queuing Delay variation is 3 octets in length and presents | ||||
| the maximum queuing delay variation value (in microseconds) encoded | ||||
| as an integer value. | ||||
| 5. IANA Considerations | 5. IANA Considerations | |||
| 5.1. Sub-TLVs for Link TLV | 5.1. Sub-TLVs for OSPF Node Attribute TLV | |||
| IANA is requested to register the OSPF sub-TLVs defined in this | ||||
| document in the sub-TLVs for Node Attribute TLV registry. | ||||
| Type Description | ||||
| ---- ------------------------------ | ||||
| TBD1 Packet Processing Delay | ||||
| TBD2 PREOF Capability | ||||
| 5.2. Sub-TLVs for OSPF Link TLV | ||||
| IANA is requested to register the OSPF sub-TLVs defined in this | IANA is requested to register the OSPF sub-TLVs defined in this | |||
| document in the sub-TLVs for Link TLV registry. | document in the sub-TLVs for Link TLV registry. | |||
| Type Description | Type Description | |||
| ---- ------------------------------ | ---- ------------------------------ | |||
| TBD1 Congestion Protection Method | TBD3 Maximum DetNet Reservable Bandwidth | |||
| TBD2 Maximum DetNet Reservable Bandwidth | TBD4 DetNet Available Bandwidth | |||
| TBD3 Available DetNet Bandwidth | TBD5 PREOF Capability | |||
| TBD4 Min/Max Queuing Delay | TBD6 Queuing Algorithm Capabilities | |||
| TBD7 Queue Parameters | ||||
| 5.2. Sub-TLVs for TLVs 22, 23, 141, 222, and 223 | 5.3. Sub-TLVs for ISIS Router Capability TLV | |||
| IANA is requested to register the ISIS sub-TLVs defined in this | ||||
| document in the sub-TLVs for Router Capability TLV registry. | ||||
| Type Description | ||||
| ---- ------------------------------ | ||||
| TBD8 Packet Processing Delay | ||||
| TBD9 PREOF Capability | ||||
| 5.4. Sub-TLVs for IS-IS TLVs 22, 23, 141, 222, and 223 | ||||
| IANA is requested to register the ISIS sub-TLVs defined in this | IANA is requested to register the ISIS sub-TLVs defined in this | |||
| document in the Sub-TLVs for TLVs 22, 23, 141, 222, and 223 registry. | document in the Sub-TLVs for TLVs 22, 23, 141, 222, and 223 registry. | |||
| Type Description | Type Description | |||
| ---- ------------------------------ | ---- ------------------------------ | |||
| TBD5 Congestion Protection Method | TBD10 Maximum DetNet Reservable Bandwidth | |||
| TBD6 Maximum DetNet Reservable Bandwidth | TBD11 DetNet Available Bandwidth | |||
| TBD7 Available DetNet Bandwidth | TBD12 PREOF Capability | |||
| TBD8 Min/Max Queuing Delay | TBD13 Queuing Algorithm Capabilities | |||
| TBD14 Queue Parameters | ||||
| 6. Security Considerations | 6. Security Considerations | |||
| This document does not introduce security issues beyond those | This document does not introduce security issues beyond those | |||
| discussed in [RFC7471] and [RFC7810]. | discussed in [RFC7471] and [RFC7810]. | |||
| 7. Acknowledgements | 7. Acknowledgements | |||
| 8. References | 8. References | |||
| 8.1. Normative References | 8.1. Normative References | |||
| [I-D.finn-detnet-bounded-latency] | ||||
| Finn, N., Boudec, J., Mohammadpour, E., Varga, B., and J. | ||||
| Farkas, "DetNet Bounded Latency", draft-finn-detnet- | ||||
| bounded-latency-01 (work in progress), July 2018. | ||||
| [I-D.ietf-detnet-architecture] | [I-D.ietf-detnet-architecture] | |||
| Finn, N., Thubert, P., Varga, B., and J. Farkas, | Finn, N., Thubert, P., Varga, B., and J. Farkas, | |||
| "Deterministic Networking Architecture", draft-ietf- | "Deterministic Networking Architecture", draft-ietf- | |||
| detnet-architecture-04 (work in progress), October 2017. | detnet-architecture-08 (work in progress), September 2018. | |||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| Requirement Levels", BCP 14, RFC 2119, | Requirement Levels", BCP 14, RFC 2119, | |||
| DOI 10.17487/RFC2119, March 1997, | DOI 10.17487/RFC2119, March 1997, | |||
| <https://www.rfc-editor.org/info/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
| [RFC5786] Aggarwal, R. and K. Kompella, "Advertising a Router's | ||||
| Local Addresses in OSPF Traffic Engineering (TE) | ||||
| Extensions", RFC 5786, DOI 10.17487/RFC5786, March 2010, | ||||
| <https://www.rfc-editor.org/info/rfc5786>. | ||||
| [RFC7471] Giacalone, S., Ward, D., Drake, J., Atlas, A., and S. | [RFC7471] Giacalone, S., Ward, D., Drake, J., Atlas, A., and S. | |||
| Previdi, "OSPF Traffic Engineering (TE) Metric | Previdi, "OSPF Traffic Engineering (TE) Metric | |||
| Extensions", RFC 7471, DOI 10.17487/RFC7471, March 2015, | Extensions", RFC 7471, DOI 10.17487/RFC7471, March 2015, | |||
| <https://www.rfc-editor.org/info/rfc7471>. | <https://www.rfc-editor.org/info/rfc7471>. | |||
| [RFC7810] Previdi, S., Ed., Giacalone, S., Ward, D., Drake, J., and | [RFC7810] Previdi, S., Ed., Giacalone, S., Ward, D., Drake, J., and | |||
| Q. Wu, "IS-IS Traffic Engineering (TE) Metric Extensions", | Q. Wu, "IS-IS Traffic Engineering (TE) Metric Extensions", | |||
| RFC 7810, DOI 10.17487/RFC7810, May 2016, | RFC 7810, DOI 10.17487/RFC7810, May 2016, | |||
| <https://www.rfc-editor.org/info/rfc7810>. | <https://www.rfc-editor.org/info/rfc7810>. | |||
| [RFC7981] Ginsberg, L., Previdi, S., and M. Chen, "IS-IS Extensions | ||||
| for Advertising Router Information", RFC 7981, | ||||
| DOI 10.17487/RFC7981, October 2016, | ||||
| <https://www.rfc-editor.org/info/rfc7981>. | ||||
| 8.2. Informative References | 8.2. Informative References | |||
| [IEEE802.1Q-2014] | [IEEE802.1Q-2014] | |||
| "MAC Bridges and VLANs (IEEE 802.1Q-2014)", 2014. | "MAC Bridges and VLANs (IEEE 802.1Q-2014)", 2014. | |||
| [IEEE802.1Qch] | [IEEE802.1Qch] | |||
| "Cyclic Queuing and Forwarding", 2016. | "Cyclic Queuing and Forwarding", 2016. | |||
| [IEEE802.1Qcr] | [IEEE802.1Qcr] | |||
| "Asynchronous Traffic Shaping", 2016. | "Asynchronous Traffic Shaping", 2016. | |||
| End of changes. 81 change blocks. | ||||
| 173 lines changed or deleted | 607 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/ | ||||