| < draft-previdi-isis-te-metric-extensions-00.txt | draft-previdi-isis-te-metric-extensions-01.txt > | |||
|---|---|---|---|---|
| Network Working Group S. Previdi | ||||
| Internet Draft Cisco Systems | ||||
| Intended status: Proposed Standard | ||||
| Expires: April 2012 S. Giacalone | ||||
| Thomson Reuters | ||||
| D. Ward | ||||
| Juniper Networks | ||||
| J. Drake | ||||
| Juniper Networks | ||||
| A. Atlas | ||||
| Juniper Networks | ||||
| C.Filsfils | Networking Working Group S. Previdi, Ed. | |||
| Cisco Systems | Internet-Draft Cisco Systems, Inc. | |||
| Intended status: Standards Track S. Giacalone | ||||
| October 10, 2011 | Expires: September 9, 2012 Thomson Reuters | |||
| D. Ward | ||||
| Cisco Systems, Inc. | ||||
| J. Drake | ||||
| A. Atlas | ||||
| Juniper Networks | ||||
| C. Filsfils | ||||
| Cisco Systems, Inc. | ||||
| March 08, 2012 | ||||
| IS-IS Traffic Engineering (TE) Metric Extensions | IS-IS Traffic Engineering (TE) Metric Extensions | |||
| draft-previdi-isis-te-metric-extensions-00.txt | draft-previdi-isis-te-metric-extensions-01 | |||
| Abstract | Abstract | |||
| In certain networks, such as, but not limited to, financial | In certain networks, such as, but not limited to, financial | |||
| information networks (e.g. stock market data providers), network | information networks (e.g. stock market data providers), network | |||
| performance criteria (e.g. latency) are becoming as critical to data | performance criteria (e.g. latency) are becoming as critical to data | |||
| path selection as other metrics. | path selection as other metrics. | |||
| This document describes extensions to IS-IS TE [RFC5305] such that | This document describes extensions to IS-IS TE [RFC5305] such that | |||
| network performance information can be distributed and collected in a | network performance information can be distributed and collected in a | |||
| scalable fashion. The information distributed using ISIS TE Express | scalable fashion. The information distributed using ISIS TE Express | |||
| Path can then be used to make path selection decisions based on | Path can then be used to make path selection decisions based on | |||
| network performance. | network performance. | |||
| Note that this document only covers the mechanisms with which network | Note that this document only covers the mechanisms with which network | |||
| performance information is distributed. The mechanisms for measuring | performance information is distributed. The mechanisms for measuring | |||
| network performance or acting on that information, once distributed, | network performance or acting on that information, once distributed, | |||
| are outside the scope of this document. | are outside the scope of this document. | |||
| Requirements Language | ||||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | ||||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | ||||
| document are to be interpreted as described in RFC 2119 [RFC2119]. | ||||
| In this document, these words will appear with that interpretation | ||||
| only when in ALL CAPS. Lower case uses of these words are not to be | ||||
| interpreted as carrying RFC-2119 significance. | ||||
| 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 | |||
| provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF), its areas, and its working groups. Note that | Task Force (IETF). Note that other groups may also distribute | |||
| other groups may also distribute working documents as Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| The list of current Internet-Drafts can be accessed at | This Internet-Draft will expire on September 9, 2012. | |||
| http://www.ietf.org/ietf/1id-abstracts.txt | ||||
| The list of Internet-Draft Shadow Directories can be accessed at | ||||
| http://www.ietf.org/shadow.html | ||||
| This Internet-Draft will expire on April 10, 2011. | ||||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2011 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 Simplified BSD License. | described in the Simplified BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction...................................................3 | ||||
| 2. Conventions used in this document..............................4 | ||||
| 3. Express Path Extensions to IS-IS TE............................4 | ||||
| 4. Sub TLV Details................................................6 | ||||
| 4.1. Unidirectional Link Delay Sub-TLV.........................6 | ||||
| 4.2. Unidirectional Delay Variation Sub-TLV....................6 | ||||
| 4.3. Unidirectional Link Loss Sub-TLV..........................7 | ||||
| 4.4. Unidirectional Residual Bandwidth Sub-TLV.................8 | ||||
| 4.5. Unidirectional Available Bandwidth Sub-TLV................9 | ||||
| 5. Announcement Thresholds and Filters...........................10 | ||||
| 6. Announcement Suppression......................................11 | ||||
| 7. Network Stability and Announcement Periodicity................11 | ||||
| 8. Compatibility.................................................11 | ||||
| 9. Security Considerations.......................................11 | ||||
| 10. IANA Considerations..........................................11 | ||||
| 11. References...................................................12 | ||||
| 11.1. Normative References....................................12 | ||||
| 11.2. Informative References..................................12 | ||||
| 12. Acknowledgments..............................................12 | ||||
| 13. Author's Addresses...........................................12 | ||||
| 1. Introduction | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 2. Express Path Extensions to IS-IS TE . . . . . . . . . . . . . 4 | ||||
| 3. Sub TLV Details . . . . . . . . . . . . . . . . . . . . . . . 6 | ||||
| 3.1. Unidirectional Link Delay Sub-TLV . . . . . . . . . . . . 6 | ||||
| 3.2. Unidirectional Delay Variation Sub-TLV . . . . . . . . . . 7 | ||||
| 3.3. Unidirectional Link Loss Sub-TLV . . . . . . . . . . . . . 7 | ||||
| 3.4. Unidirectional Residual Bandwidth Sub-TLV . . . . . . . . 8 | ||||
| 3.5. Unidirectional Available Bandwidth Sub-TLV . . . . . . . . 9 | ||||
| 4. Announcement Thresholds and Filters . . . . . . . . . . . . . 10 | ||||
| 5. Announcement Suppression . . . . . . . . . . . . . . . . . . . 11 | ||||
| 6. Network Stability and Announcement Periodicity . . . . . . . . 11 | ||||
| 7. Compatibility . . . . . . . . . . . . . . . . . . . . . . . . 11 | ||||
| 8. Security Considerations . . . . . . . . . . . . . . . . . . . 11 | ||||
| 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 | ||||
| 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 11 | ||||
| 11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 12 | ||||
| 11.1. Normative References . . . . . . . . . . . . . . . . . . . 12 | ||||
| 11.2. Informative References . . . . . . . . . . . . . . . . . . 12 | ||||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 13 | ||||
| 1. Introduction | ||||
| In certain networks, such as, but not limited to, financial | In certain networks, such as, but not limited to, financial | |||
| information networks (e.g. stock market data providers), network | information networks (e.g. stock market data providers), network | |||
| performance information (e.g. latency) is becoming as critical to | performance information (e.g. latency) is becoming as critical to | |||
| data path selection as other metrics. | data path selection as other metrics. | |||
| In these networks, extremely large amounts of money rest on the | In these networks, extremely large amounts of money rest on the | |||
| ability to access market data in "real time" and to predictably make | ability to access market data in "real time" and to predictably make | |||
| trades faster than the competition. Because of this, using metrics | trades faster than the competition. Because of this, using metrics | |||
| such as hop count or cost as routing metrics is becoming only | such as hop count or cost as routing metrics is becoming only | |||
| tangentially important. Rather, it would be beneficial to be able to | tangentially important. Rather, it would be beneficial to be able to | |||
| make path selection decisions based on performance data (such as | make path selection decisions based on performance data (such as | |||
| latency) in a cost-effective and scalable way. | latency) in a cost-effective and scalable way. | |||
| This document describes extensions to IS-IS Extended Reachability TLV | This document describes extensions to IS-IS Extended Reachability TLV | |||
| [RFC5305](hereafter called "IS-IS TE Express Path"), that can be used | defined in [RFC5305] (hereafter called "IS-IS TE Express Path"), that | |||
| to distribute network performance information (such as link delay, | can be used to distribute network performance information (such as | |||
| delay variation, packet loss, residual bandwidth, and available | link delay, delay variation, packet loss, residual bandwidth, and | |||
| bandwidth). | available bandwidth). | |||
| The data distributed by IS-IS TE Express Path is meant to be used as | The data distributed by IS-IS TE Express Path is meant to be used as | |||
| part of the operation of the routing protocol (e.g. by replacing cost | part of the operation of the routing protocol (e.g. by replacing cost | |||
| with latency or considering bandwidth as well as cost), by enhancing | with latency or considering bandwidth as well as cost), by enhancing | |||
| CSPF, or for other uses such as supplementing the data used by an | CSPF, or for other uses such as supplementing the data used by an | |||
| Alto server [Alto]. With respect to CSPF, the data distributed by IS- | Alto server [I-D.ietf-alto-protocol]. With respect to CSPF, the data | |||
| IS TE Express Path can be used to setup, fail over, and fail back | distributed by IS- IS TE Express Path can be used to setup, fail | |||
| data paths using protocols such as RSVP-TE [RFC3209]. | over, and fail back data paths using protocols such as RSVP-TE | |||
| [RFC3209]. | ||||
| Note that the mechanisms described in this document only disseminate | Note that the mechanisms described in this document only disseminate | |||
| performance information. The methods for initially gathering that | performance information. The methods for initially gathering that | |||
| performance information, such as [Frost], or acting on it once it is | performance information, such as [RFC6375], or acting on it once it | |||
| distributed are outside the scope of this document. | is distributed are outside the scope of this document. | |||
| 2. Conventions used in this document | ||||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | ||||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | ||||
| document are to be interpreted as described in RFC-2119 [RFC2119]. | ||||
| In this document, these words will appear with that interpretation | 2. Express Path Extensions to IS-IS TE | |||
| only when in ALL CAPS. Lower case uses of these words are not to be | ||||
| interpreted as carrying RFC-2119 significance. | ||||
| 3. Express Path Extensions to IS-IS TE | This document proposes new IS-IS TE sub-TLVs that can be announced in | |||
| ISIS Extended Reachability TLV (TLV-22) to distribute network | ||||
| performance information. The extensions in this document build on | ||||
| the ones provided in IS-IS TE [RFC5305] and GMPLS [RFC4203]. | ||||
| This document proposes new IS-IS TE sub-TLVs that can be announced | IS-IS Extended Reachability TLV 22 (defined in [RFC5305]), Inter-AS | |||
| in ISIS Extended Reachability TLV (TLV-22) to distribute network | reachability information TLV 141 (defined in [RFC5316]) and MT-ISN | |||
| performance information. The extensions in this document build on the | TLV 222 (defined in [RFC5120]) have nested sub-TLVs which permit the | |||
| ones provided in IS-IS TE [RFC5305] and GMPLS [RFC4203]. | TLVs to be readily extended. This document proposes several | |||
| additional sub-TLVs: | ||||
| IS-IS Extended Reachability TLV (TLV-22) defined in [RFC5305] has | Type Value | |||
| nested sub-TLVs which permit the ISIS Reachability TLV to be readily | ||||
| extended. This document proposes several additional sub-TLVs: | ||||
| Type Length Value | TBD1 Unidirectional Link Delay | |||
| TBD1 6 Unidirectional Link Delay | TBD2 Unidirectional Delay Variation | |||
| TBD2 6 Unidirectional Delay Variation | TBD3 Unidirectional Packet Loss | |||
| TBD3 6 Unidirectional Packet Loss | TBD4 Unidirectional Residual Bandwidth Sub TLV | |||
| TBD4 6 Unidirectional Residual Bandwidth Sub TLV | TBD5 Unidirectional Available Bandwidth Sub TLV | |||
| TBD5 6 Unidirectional Available Bandwidth Sub TLV | ||||
| As can be seen in the list above, the sub-TLVs described in this | As can be seen in the list above, the sub-TLVs described in this | |||
| document carry different types of network performance information. | document carry different types of network performance information. | |||
| Many (but not all) of the sub-TLVs include a bit called the Anomalous | Many (but not all) of the sub-TLVs include a bit called the Anomalous | |||
| (or "A") bit. When the A bit is clear (or when the sub-TLV does not | (or "A") bit. When the A bit is clear (or when the sub-TLV does not | |||
| include an A bit), the sub-TLV describes steady state link | include an A bit), the sub-TLV describes steady state link | |||
| performance. This information could conceivably be used to construct | performance. This information could conceivably be used to construct | |||
| a steady state performance topology for initial tunnel path | a steady state performance topology for initial tunnel path | |||
| computation, or to verify alternative failover paths. | computation, or to verify alternative failover paths. | |||
| When network performance violates configurable link-local thresholds | When network performance violates configurable link-local thresholds | |||
| a sub-TLV with the A bit set is advertised. These sub-TLVs could be | a sub-TLV with the A bit set is advertised. These sub-TLVs could be | |||
| used by the receiving node to determine whether to fail traffic to a | used by the receiving node to determine whether to fail traffic to a | |||
| backup path, or whether to calculate an entirely new path. From an | backup path, or whether to calculate an entirely new path. From an | |||
| MPLS perspective, the intent of the A bit is to permit LSP ingress | MPLS perspective, the intent of the A bit is to permit LSP ingress | |||
| nodes to: | nodes to: | |||
| A) Determine whether the link referenced in the sub-TLV affects any | A) Determine whether the link referenced in the sub-TLV affects any | |||
| of the LSPs for which it is ingress. If there are, then: | of the LSPs for which it is ingress. If there are, then: | |||
| B) Determine whether those LSPs still meet end-to-end performance | B) Determine whether those LSPs still meet end-to-end performance | |||
| objectives. If not, then: | objectives. If not, then: | |||
| C) The node could then conceivably move affected traffic to a pre- | C) The node could then conceivably move affected traffic to a pre- | |||
| established protection LSP or establish a new LSP and place the | established protection LSP or establish a new LSP and place the | |||
| traffic in it. | traffic in it. | |||
| If link performance then improves beyond a configurable minimum | If link performance then improves beyond a configurable minimum value | |||
| value (reuse threshold), that sub-TLV can be re-advertised with the | (reuse threshold), that sub-TLV can be re-advertised with the | |||
| Anomalous bit cleared. In this case, a receiving node can | Anomalous bit cleared. In this case, a receiving node can | |||
| conceivably do whatever re-optimization (or failback) it wishes to | conceivably do whatever re-optimization (or failback) it wishes to do | |||
| do (including nothing). | (including nothing). | |||
| Note that when a sub-TLV does not include the A bit, that sub-TLV | Note that when a sub-TLV does not include the A bit, that sub-TLV | |||
| cannot be used for failover purposes. The A bit was intentionally | cannot be used for failover purposes. The A bit was intentionally | |||
| omitted from some sub-TLVs to help mitigate oscillations. See section | omitted from some sub-TLVs to help mitigate oscillations. See | |||
| 5. for more information. | Section 4 for more information. | |||
| Consistent with existing IS-IS TE specifications [RFC5305], the | Consistent with existing IS-IS TE specifications [RFC5305], the | |||
| bandwidth advertisements defined in this draft MUST be encoded as | bandwidth advertisements defined in this draft MUST be encoded as | |||
| IEEE floating point values. The delay and delay variation | IEEE floating point values. The delay and delay variation | |||
| advertisements defined in this draft MUST be encoded as integer | advertisements defined in this draft MUST be encoded as integer | |||
| values. Delay values MUST be quantified in units of microseconds, | values. Delay values MUST be quantified in units of microseconds, | |||
| packet loss MUST be quantified as a percentage of packets sent, and | packet loss MUST be quantified as a percentage of packets sent, and | |||
| bandwidth MUST be sent as bytes per second. All values (except | bandwidth MUST be sent as bytes per second. All values (except | |||
| residual bandwidth) MUST be calculated as rolling averages where the | residual bandwidth) MUST be calculated as rolling averages where the | |||
| averaging period MUST be a configurable period of time. See section | averaging period MUST be a configurable period of time. See | |||
| 5. for more information. | Section 4 for more information. | |||
| 4. Sub TLV Details | 3. Sub TLV Details | |||
| 4.1. Unidirectional Link Delay Sub-TLV | 3.1. Unidirectional Link Delay Sub-TLV | |||
| This sub-TLV advertises the average link delay between two directly | This sub-TLV advertises the average link delay between two directly | |||
| connected IS-IS neighbors. The delay advertised by this sub-TLV MUST | connected IS-IS neighbors. The delay advertised by this sub-TLV MUST | |||
| be the delay from the local neighbor to the remote one (i.e. the | be the delay from the local neighbor to the remote one (i.e. the | |||
| forward path latency). The format of this sub-TLV is shown in the | forward path latency). The format of this sub-TLV is shown in the | |||
| following diagram: | 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 | Length | A | RESERVED | | | Type | Length |A| RESERVED | Delay | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | RESERVED | Delay | | | Delay | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| This sub-TLV has a type of TBD1. | ||||
| The length is 4. | ||||
| This sub-TLV has a type of TBD1. | ||||
| The length is 6. | ||||
| Where: | Where: | |||
| "A" represents the Anomalous (A) bit. The A bit is set when the | "A" represents the Anomalous (A) bit. The A bit is set when the | |||
| measured value of this parameter exceeds its configured maximum | measured value of this parameter exceeds its configured maximum | |||
| threshold. The A bit is cleared when the measured value falls below | threshold. The A bit is cleared when the measured value falls below | |||
| its configured reuse threshold. If the A bit is clear, the sub-TLV | its configured reuse threshold. If the A bit is clear, the sub-TLV | |||
| represents steady state link performance. | represents steady state link performance. | |||
| 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. | |||
| "Delay Value" is a 24-bit field carries the average link delay over a | "Delay Value" is a 24-bit field carries the average link delay over a | |||
| configurable interval in micro-seconds, encoded as an integer value. | configurable interval in micro-seconds, encoded as an integer value. | |||
| When set to 0, it has not been measured. When set to the maximum | When set to 0, it has not been measured. When set to the maximum | |||
| value 16,777,215 (16.777215 sec), then the delay is at least that | value 16,777,215 (16.777215 sec), then the delay is at least that | |||
| value and may be larger. | value and may be larger. | |||
| 4.2. Unidirectional Delay Variation Sub-TLV | 3.2. Unidirectional Delay Variation Sub-TLV | |||
| This sub-TLV advertises the average link delay variation between two | This sub-TLV advertises the average link delay variation between two | |||
| directly connected IS-IS neighbors. The delay variation advertised by | directly connected IS-IS neighbors. The delay variation advertised | |||
| this sub-TLV MUST be the delay from the local neighbor to the remote | by this sub-TLV MUST be the delay from the local neighbor to the | |||
| one (i.e. the forward path latency). The format of this sub-TLV is | remote one (i.e. the forward path latency). The format of this sub- | |||
| shown in the following diagram: | 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 | Length | A | RESERVED | | | Type | Length |A| RESERVED |Delay Variation| | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | RESERVED | Delay Variation | | | Delay Variation | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| This sub-TLV has a type of TBD2. | This sub-TLV has a type of TBD2. | |||
| The length is 6. | The length is 4. | |||
| Where: | Where: | |||
| "A" represents the Anomalous (A) bit. The A bit is set when the | "A" represents the Anomalous (A) bit. The A bit is set when the | |||
| measured value of this parameter exceeds its configured maximum | measured value of this parameter exceeds its configured maximum | |||
| threshold. The A bit is cleared when the measured value falls below | threshold. The A bit is cleared when the measured value falls below | |||
| its configured reuse threshold. If the A bit is clear, the sub-TLV | its configured reuse threshold. If the A bit is clear, the sub-TLV | |||
| represents steady state link performance The "Reserved" field is | represents steady state link performance. | |||
| reserved for future use. It MUST be set to 0 when sent and MUST be | ||||
| ignored when received. | The "Reserved" field is reserved for future use. It MUST be set to 0 | |||
| when sent and MUST be ignored when received. | ||||
| "Delay Variation" is a 24-bit field carries the average link delay | "Delay Variation" is a 24-bit field carries the average link delay | |||
| variation over a configurable interval in micro-seconds, encoded as | variation over a configurable interval in micro-seconds, encoded as | |||
| an integer value. When set to 0, it has not been measured. When set | an integer value. When set to 0, it has not been measured. When set | |||
| to the maximum value 16,777,215 (16.777215 sec), then the delay is at | to the maximum value 16,777,215 (16.777215 sec), then the delay is at | |||
| least that value and may be larger. | least that value and may be larger. | |||
| 4.3. Unidirectional Link Loss Sub-TLV | 3.3. Unidirectional Link Loss Sub-TLV | |||
| This sub-TLV advertises the loss (as a packet percentage) between two | This sub-TLV advertises the loss (as a packet percentage) between two | |||
| directly connected IS-IS neighbors. The link loss advertised by this | directly connected IS-IS neighbors. The link loss advertised by this | |||
| sub-TLV MUST be the packet loss from the local neighbor to the remote | sub-TLV MUST be the packet loss from the local neighbor to the remote | |||
| one (i.e. the forward path loss). The format of this sub-TLV is shown | one (i.e. the forward path loss). The format of this sub-TLV is | |||
| in the following diagram: | 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 | Length | A | RESERVED | | | Type | Length |A| RESERVED | Link Loss | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | RESERVED | Link Loss | | | Link Loss | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| This sub-TLV has a type of TBD3. | This sub-TLV has a type of TBD3. | |||
| The length is 6. | The length is 4. | |||
| Where: | Where: | |||
| The "A" bit represents the Anomalous (A) bit. The A bit is set when | The "A" bit represents the Anomalous (A) bit. The A bit is set when | |||
| the measured value of this parameter exceeds its configured maximum | the measured value of this parameter exceeds its configured maximum | |||
| threshold. The A bit is cleared when the measured value falls below | threshold. The A bit is cleared when the measured value falls below | |||
| its configured reuse threshold. If the A bit is clear, the sub-TLV | its configured reuse threshold. If the A bit is clear, the sub-TLV | |||
| represents steady state link performance. | represents steady state link performance. | |||
| "Reserved" field is reserved for future use. It MUST be set to 0 when | "Reserved" field is reserved for future use. It MUST be set to 0 | |||
| sent and MUST be ignored when received. | when sent and MUST be ignored when received. | |||
| "Link Loss" is a 24-bit field carries link packet loss as a | "Link Loss" is a 24-bit field carries link packet loss as a | |||
| percentage of the total traffic sent over a configurable interval. | percentage of the total traffic sent over a configurable interval. | |||
| The basic unit is 0.000003%, where (2^24 - 2) is 50.331642%. This | The basic unit is 0.000003%, where (2^24 - 2) is 50.331642%. This | |||
| value is the highest packet loss percentage that can be expressed | value is the highest packet loss percentage that can be expressed | |||
| (the assumption being that precision is more important on high speed | (the assumption being that precision is more important on high speed | |||
| links than the ability to advertise loss rates greater than this, and | links than the ability to advertise loss rates greater than this, and | |||
| that high speed links with over 50% loss are unusable). Therefore, | that high speed links with over 50% loss are unusable). Therefore, | |||
| measured values that are larger than the field maximum SHOULD be | measured values that are larger than the field maximum SHOULD be | |||
| encoded as the maximum value. When set to a value of all 1s (2^24 - | encoded as the maximum value. When set to a value of all 1s (2^24 - | |||
| 1), the link packet loss has not been measured. | 1), the link packet loss has not been measured. | |||
| 4.4. Unidirectional Residual Bandwidth Sub-TLV | 3.4. Unidirectional Residual Bandwidth Sub-TLV | |||
| This TLV advertises the residual bandwidth (defined in section Error! | ||||
| Reference source not found.between two directly connected IS-IS | ||||
| neighbors. The residual bandwidth advertised by this sub-TLV MUST be | ||||
| the residual bandwidth from the system originating the sub-TLV to its | ||||
| neighbor. | ||||
| The format of this sub-TLV is shown in the following diagram: | This TLV advertises the residual bandwidth between two directly | |||
| connected IS-IS neighbors. The residual bandwidth advertised by this | ||||
| sub-TLV MUST be the residual bandwidth from the system originating | ||||
| the sub-TLV to its neighbor. 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 | Length | RESERVED | | | Type | Length | Residual Bandwidth | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Residual Bandwidth | | | Residual Bandwidth | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| This sub-TLV has a type of TBD4. | This sub-TLV has a type of TBD4. | |||
| The length is 6. | The length is 4. | |||
| "Reserved" field is reserved for future use. It MUST be set to 0 when | Where: | |||
| sent and MUST be ignored when received. | ||||
| "Residual Bandwidth" is a field carries the residual bandwidth on a | "Residual Bandwidth" is the residual bandwidth in IEEE floating point | |||
| link, forwarding adjacency [RFC4206], or bundled link in IEEE | format in units of bytes per second. The link may be a single link, | |||
| floating point format with units of bytes per second. For a link or | forwarding adjacency [RFC4206], or bundled link. For a link or | |||
| forwarding adjacency, residual bandwidth is defined to be Maximum | forwarding adjacency, residual bandwidth is defined to be Maximum | |||
| Link Bandwidth [RFC5305] minus the bandwidth currently allocated to | Link Bandwidth [RFC5305] minus the bandwidth currently allocated to | |||
| RSVP-TE LSPs. For a bundled link, residual bandwidth is defined to | RSVP-TE LSPs. For a bundled link, residual bandwidth is defined to | |||
| be the sum of the component link residual bandwidths. | be the sum of the component link residual bandwidths. | |||
| Note that although it may seem possible to calculate Residual | Note that although it may seem possible to calculate Residual | |||
| Bandwidth using the existing sub-TLVs in RFC 5305, this is not a | Bandwidth using the existing sub-TLVs in [RFC5305], this is not a | |||
| consistently reliable approach and hence the Residual Bandwidth sub- | consistently reliable approach and hence the Residual Bandwidth sub- | |||
| TLV has been added here. For example, because the Maximum Reservable | TLV has been added here. For example, because the Maximum Reservable | |||
| Bandwidth [RFC5305] can be larger than the capacity of the link, | Bandwidth [RFC5305] can be larger than the capacity of the link, | |||
| using it as part of an algorithm to determine the value of the | using it as part of an algorithm to determine the value of the | |||
| Maximum Link Bandwidth [RFC5305] minus the bandwidth currently | Maximum Link Bandwidth [RFC5305]minus the bandwidth currently | |||
| allocated to RSVP-TE Label Switched Paths cannot be considered | allocated to RSVP-TE Label Switched Paths cannot be considered | |||
| reliably accurate. | reliably accurate. | |||
| 4.5. Unidirectional Available Bandwidth Sub-TLV | 3.5. Unidirectional Available Bandwidth Sub-TLV | |||
| This TLV advertises the available bandwidth (defined in section | This TLV advertises the available bandwidth between two directly | |||
| Error! Reference source not found.between two directly connected IS- | connected IS-IS neighbors. The available bandwidth advertised in | |||
| IS neighbors. The available bandwidth advertised by this sub-TLV MUST | this sub-TLV MUST be the available bandwidth from the originating | |||
| be the available bandwidth from the system originating the Sub-TLV to | system to its neighbor. The format of this sub-TLV is shown in the | |||
| its neighbor. The format of this sub-TLV is shown in the following | following diagram: | |||
| 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 | Length | RESERVED | | | Type | Length | Available Bandwidth | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Available Bandwidth | | | Available Bandwidth | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| This sub-TLV has a type of TBD5. | This sub-TLV has a type of TBD5. | |||
| The length is 6. | The length is 4. | |||
| Where: | Where: | |||
| "Reserved" field is reserved for future use. It MUST be set to 0 when | ||||
| sent and MUST be ignored when received. | ||||
| "Available Bandwidth" is a field that carries the available bandwidth | "Available Bandwidth" is a field that carries the available bandwidth | |||
| on a link, forwarding adjacency, or bundled link in IEEE floating | on a link, forwarding adjacency, or bundled link in IEEE floating | |||
| point format with units of bytes per second. For a link or | point format with units of bytes per second. For a link or | |||
| forwarding adjacency, available bandwidth is defined to be residual | forwarding adjacency, available bandwidth is defined to be residual | |||
| bandwidth (see section 4.4. minus the measured bandwidth used for the | bandwidth (see Section 3.4) minus the measured bandwidth used for the | |||
| actual forwarding of non-RSVP-TE Label Switched Paths packets. For a | actual forwarding of non-RSVP-TE Label Switched Paths packets. For a | |||
| bundled link, available bandwidth is defined to be the sum of the | bundled link, available bandwidth is defined to be the sum of the | |||
| component link available bandwidths. | component link available bandwidths. | |||
| 5. Announcement Thresholds and Filters | 4. Announcement Thresholds and Filters | |||
| The values advertised in all sub-TLVs MUST be controlled using an | The values advertised in all sub-TLVs MUST be controlled using an | |||
| exponential filter (i.e. a rolling average) with a configurable | exponential filter (i.e. a rolling average) with a configurable | |||
| measurement interval and filter coefficient. | measurement interval and filter coefficient. | |||
| Implementations are expected to provide separately configurable | Implementations are expected to provide separately configurable | |||
| advertisement thresholds. All thresholds MUST be configurable on a | advertisement thresholds. All thresholds MUST be configurable on a | |||
| per sub-TLV basis. | per sub-TLV basis. | |||
| The announcement of all sub-TLVs that do not include the A bit SHOULD | The announcement of all sub-TLVs that do not include the A bit SHOULD | |||
| be controlled by variation thresholds that govern when they are sent. | be controlled by variation thresholds that govern when they are sent. | |||
| Sub-TLV that include the A bit are governed by several thresholds. | Sub-TLVs that include the A bit are governed by several thresholds. | |||
| Firstly, a threshold SHOULD be implemented to govern the announcement | Firstly, a threshold SHOULD be implemented to govern the announcement | |||
| of sub-TLVs that advertise a change in performance, but not an SLA | of sub-TLVs that advertise a change in performance, but not an SLA | |||
| violation (i.e. when the A bit is not set). Secondly, implementations | violation (i.e. when the A bit is not set). Secondly, | |||
| MUST provide configurable thresholds that govern the announcement of | implementations MUST provide configurable thresholds that govern the | |||
| sub-TLVs with the A bit set (for the indication of a performance | announcement of sub-TLVs with the A bit set (for the indication of a | |||
| violation). Thirdly, implementations SHOULD provide reuse | performance violation). Thirdly, implementations SHOULD provide | |||
| thresholds. These thresholds govern sub-TLV re-announcement with the | reuse thresholds. These thresholds govern sub-TLV re-announcement | |||
| A bit cleared to permit fail back. | with the A bit cleared to permit fail back. | |||
| 6. Announcement Suppression | 5. Announcement Suppression | |||
| When link performance average values change, but fall under the | When link performance average values change, but fall under the | |||
| threshold that would cause the announcement of a sub-TLV with the A | threshold that would cause the announcement of a sub-TLV with the A | |||
| bit set, implementations MAY suppress or throttle sub-TLV | bit set, implementations MAY suppress or throttle sub-TLV | |||
| announcements. All suppression features and thresholds SHOULD be | announcements. All suppression features and thresholds SHOULD be | |||
| configurable. | configurable. | |||
| 7. Network Stability and Announcement Periodicity | 6. Network Stability and Announcement Periodicity | |||
| To mitigate concerns about stability, all values (except residual | To mitigate concerns about stability, all values (except residual | |||
| bandwidth) MUST be calculated as rolling averages where the averaging | bandwidth) MUST be calculated as rolling averages where the averaging | |||
| period MUST be a configurable period of time, rather than | period MUST be a configurable period of time, rather than | |||
| instantaneous measurements. | instantaneous measurements. | |||
| Announcements MUST also be able to be throttled using configurable | Announcements MUST also be able to be throttled using configurable | |||
| inter-update throttle timers. The minimum announcement periodicity is | inter-update throttle timers. The minimum announcement periodicity | |||
| 1 announcement per second. | is 1 announcement per second. | |||
| 8. Compatibility | 7. Compatibility | |||
| As per (RFC5305), unrecognized TLVs should be silently ignored | As per [RFC5305], unrecognized Sub-TLVs should be silently ignored | |||
| 9. Security Considerations | 8. Security Considerations | |||
| This document does not introduce security issues beyond those | This document does not introduce security issues beyond those | |||
| discussed in [RFC3630] and [RFC5329]. | discussed in [RFC3630] and [RFC5329]. | |||
| 10. IANA Considerations | 9. IANA Considerations | |||
| IANA maintains the registry for the sub-TLVs. IS-IS TE Express Path | IANA maintains the registry for the sub-TLVs. IS-IS TE Express Path | |||
| will require one new type code per sub-TLV defined in this document. | will require one new type code per sub-TLV defined in this document. | |||
| 11. References | 10. Acknowledgements | |||
| 11.1. Normative References | The authors would like to recognize Ayman Soliman and Les Ginsberg | |||
| for their contributions. | ||||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | 11. References | |||
| Requirement Levels", BCP 14, RFC 2119, March 1997. | 11.1. Normative References | |||
| [RFC5305] Li, T., Smit, H., "IS-IS Extensions for Traffic | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| Engineering", RFC 3630, September 2003. | Requirement Levels", BCP 14, RFC 2119, March 1997. | |||
| 11.2. Informative References | [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., | |||
| and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP | ||||
| Tunnels", RFC 3209, December 2001. | ||||
| [RFC3031] Rosen, E., Viswanathan, A., Callon, R., "Multiprotocol | [RFC3630] Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering | |||
| Label Switching Architecture", January 2001 | (TE) Extensions to OSPF Version 2", RFC 3630, | |||
| September 2003. | ||||
| [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan,V., | [RFC4203] Kompella, K. and Y. Rekhter, "OSPF Extensions in Support | |||
| and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP | of Generalized Multi-Protocol Label Switching (GMPLS)", | |||
| Tunnels", RFC 3209, December 2001. | RFC 4203, October 2005. | |||
| [Frost] D. Frost, S. Bryant"A Packet Loss and Delay Measurement | [RFC4206] Kompella, K. and Y. Rekhter, "Label Switched Paths (LSP) | |||
| Profile for MPLS-based Transport Networks" | Hierarchy with Generalized Multi-Protocol Label Switching | |||
| (GMPLS) Traffic Engineering (TE)", RFC 4206, October 2005. | ||||
| [Alto] R. Alimi R. Penno Y. Yang, "ALTO Protocol" | [RFC5120] Przygienda, T., Shen, N., and N. Sheth, "M-ISIS: Multi | |||
| Topology (MT) Routing in Intermediate System to | ||||
| Intermediate Systems (IS-ISs)", RFC 5120, February 2008. | ||||
| 12. Acknowledgments | [RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic | |||
| Engineering", RFC 5305, October 2008. | ||||
| The authors would like to recognize Ayman Soliman and Les Ginsberg | [RFC5316] Chen, M., Zhang, R., and X. Duan, "ISIS Extensions in | |||
| for their contributions. | Support of Inter-Autonomous System (AS) MPLS and GMPLS | |||
| Traffic Engineering", RFC 5316, December 2008. | ||||
| This document was prepared using 2-Word-v2.0.template.dot. | [RFC5329] Ishiguro, K., Manral, V., Davey, A., and A. Lindem, | |||
| "Traffic Engineering Extensions to OSPF Version 3", | ||||
| RFC 5329, September 2008. | ||||
| 13. Author's Addresses | [RFC6375] Frost, D. and S. Bryant, "A Packet Loss and Delay | |||
| Measurement Profile for MPLS-Based Transport Networks", | ||||
| RFC 6375, September 2011. | ||||
| Stefano Previdi | 11.2. Informative References | |||
| Cisco Systems | ||||
| [I-D.ietf-alto-protocol] | ||||
| Penno, R., Alimi, R., and Y. Yang, "ALTO Protocol", | ||||
| draft-ietf-alto-protocol-10 (work in progress), | ||||
| October 2011. | ||||
| Authors' Addresses | ||||
| Stefano Previdi (editor) | ||||
| Cisco Systems, Inc. | ||||
| Via Del Serafico 200 | Via Del Serafico 200 | |||
| 00142 Rome | Rome 00191 | |||
| Italy | IT | |||
| Email: sprevidi@cisco.com | Email: sprevidi@cisco.com | |||
| Spencer Giacalone | Spencer Giacalone | |||
| Thomson Reuters | Thomson Reuters | |||
| 195 Broadway | 195 Broadway | |||
| New York NY 10007, USA | New York, NY 10007 | |||
| USA | ||||
| Email: Spencer.giacalone@thomsonreuters.com | Email: Spencer.giacalone@thomsonreuters.com | |||
| Dave Ward | Dave Ward | |||
| Juniper Networks | Cisco Systems, Inc. | |||
| 1194 N. Mathilda Ave. | 3700 Cisco Way | |||
| Sunnyvale, CA 94089, USA | SAN JOSE, CA 95134 | |||
| US | ||||
| Email: dward@juniper.net | Email: wardd@cisco.com | |||
| John Drake | John Drake | |||
| Juniper Networks | Juniper Networks | |||
| 1194 N. Mathilda Ave. | 1194 N. Mathilda Ave. | |||
| Sunnyvale, CA 94089, USA | Sunnyvale, CA 94089 | |||
| USA | ||||
| Email: jdrake@juniper.net | Email: jdrake@juniper.net | |||
| Alia Atlas | Alia Atlas | |||
| Juniper Networks | Juniper Networks | |||
| 1194 N. Mathilda Ave. | 1194 N. Mathilda Ave. | |||
| Sunnyvale, CA 94089, USA | Sunnyvale, CA 94089 | |||
| USA | ||||
| Email: akatlas@juniper.net | Email: akatlas@juniper.net | |||
| Clarence Filsfils | Clarence Filsfils | |||
| Cisco Systems | Cisco Systems, Inc. | |||
| Brussels, Belgium | Brussels | |||
| Belgium | ||||
| Email: cfilsfil@cisco.com | Email: cfilsfil@cisco.com | |||
| End of changes. 119 change blocks. | ||||
| 274 lines changed or deleted | 287 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/ | ||||