| rfc9522xml2.original.xml | rfc9522.xml | |||
|---|---|---|---|---|
| <?xml version="1.0" encoding="utf-8"?> | <?xml version="1.0" encoding="UTF-8"?> | |||
| <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?> | ||||
| <?rfc toc="yes"?> | ||||
| <?rfc sortrefs="yes"?> | ||||
| <?rfc symrefs="yes"?> | ||||
| <?rfc comments="yes"?> | ||||
| <!DOCTYPE rfc SYSTEM "rfc2629.dtd" [ | ||||
| <!ENTITY RFC0791 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .0791.xml"> | ||||
| <!ENTITY RFC1102 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .1102.xml"> | ||||
| <!ENTITY RFC1104 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .1104.xml"> | ||||
| <!ENTITY RFC2205 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .2205.xml"> | ||||
| <!ENTITY RFC2330 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .2330.xml"> | ||||
| <!ENTITY RFC2386 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .2386.xml"> | ||||
| <!ENTITY RFC2474 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .2474.xml"> | ||||
| <!ENTITY RFC2475 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .2475.xml"> | ||||
| <!ENTITY RFC2597 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .2597.xml"> | ||||
| <!ENTITY RFC2678 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .2678.xml"> | ||||
| <!ENTITY RFC2702 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .2702.xml"> | ||||
| <!ENTITY RFC2722 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .2722.xml"> | ||||
| <!ENTITY RFC2753 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .2753.xml"> | ||||
| <!ENTITY RFC2961 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .2961.xml"> | ||||
| <!ENTITY RFC2998 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .2998.xml"> | ||||
| <!ENTITY RFC3031 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .3031.xml"> | ||||
| <!ENTITY RFC3086 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .3086.xml"> | ||||
| <!ENTITY RFC3124 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .3124.xml"> | ||||
| <!ENTITY RFC3168 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .3168.xml"> | ||||
| <!ENTITY RFC3175 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .3175.xml"> | ||||
| <!ENTITY RFC3198 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .3198.xml"> | ||||
| <!ENTITY RFC3209 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .3209.xml"> | ||||
| <!ENTITY RFC3270 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .3270.xml"> | ||||
| <!ENTITY RFC3272 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .3272.xml"> | ||||
| <!ENTITY RFC3469 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .3469.xml"> | ||||
| <!ENTITY RFC3473 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .3473.xml"> | ||||
| <!ENTITY RFC3630 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .3630.xml"> | ||||
| <!ENTITY RFC3945 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .3945.xml"> | ||||
| <!ENTITY RFC4090 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .4090.xml"> | ||||
| <!ENTITY RFC4124 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .4124.xml"> | ||||
| <!ENTITY RFC4203 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .4203.xml"> | ||||
| <!ENTITY RFC4271 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .4271.xml"> | ||||
| <!ENTITY RFC4340 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .4340.xml"> | ||||
| <!ENTITY RFC4461 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .4461.xml"> | ||||
| <!ENTITY RFC4594 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .4594.xml"> | ||||
| <!ENTITY RFC4655 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .4655.xml"> | ||||
| <!ENTITY RFC4872 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .4872.xml"> | ||||
| <!ENTITY RFC4873 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .4873.xml"> | ||||
| <!ENTITY RFC4875 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .4875.xml"> | ||||
| <!ENTITY RFC5151 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5151.xml"> | ||||
| <!ENTITY RFC5250 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5250.xml"> | ||||
| <!ENTITY RFC5305 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5305.xml"> | ||||
| <!ENTITY RFC5329 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5329.xml"> | ||||
| <!ENTITY RFC5331 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5331.xml"> | ||||
| <!ENTITY RFC5357 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5357.xml"> | ||||
| <!ENTITY RFC5394 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5394.xml"> | ||||
| <!ENTITY RFC5440 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5440.xml"> | ||||
| <!ENTITY RFC5470 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5470.xml"> | ||||
| <!ENTITY RFC5472 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5472.xml"> | ||||
| <!ENTITY RFC5541 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5541.xml"> | ||||
| <!ENTITY RFC5557 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5557.xml"> | ||||
| <!ENTITY RFC5559 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5559.xml"> | ||||
| <!ENTITY RFC5623 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5623.xml"> | ||||
| <!ENTITY RFC5664 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5664.xml"> | ||||
| <!ENTITY RFC5671 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5671.xml"> | ||||
| <!ENTITY RFC5693 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .5693.xml"> | ||||
| <!ENTITY RFC6107 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .6107.xml"> | ||||
| <!ENTITY RFC6119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .6119.xml"> | ||||
| <!ENTITY RFC6241 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .6241.xml"> | ||||
| <!ENTITY RFC6372 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .6372.xml"> | ||||
| <!ENTITY RFC6374 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .6374.xml"> | ||||
| <!ENTITY RFC6601 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .6601.xml"> | ||||
| <!ENTITY RFC6805 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .6805.xml"> | ||||
| <!ENTITY RFC7011 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .7011.xml"> | ||||
| <!ENTITY RFC7149 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .7149.xml"> | ||||
| <!ENTITY RFC7285 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .7285.xml"> | ||||
| <!ENTITY RFC7390 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .7390.xml"> | ||||
| <!ENTITY RFC7426 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .7426.xml"> | ||||
| <!ENTITY RFC7471 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .7471.xml"> | ||||
| <!ENTITY RFC7491 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .7491.xml"> | ||||
| <!ENTITY RFC7551 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .7551.xml"> | ||||
| <!ENTITY RFC7567 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .7567.xml"> | ||||
| <!ENTITY RFC7679 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .7679.xml"> | ||||
| <!ENTITY RFC7680 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .7680.xml"> | ||||
| <!ENTITY RFC7665 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .7665.xml"> | ||||
| <!ENTITY RFC7752 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .7752.xml"> | ||||
| <!ENTITY RFC7923 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .7923.xml"> | ||||
| <!ENTITY RFC7926 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .7926.xml"> | ||||
| <!ENTITY RFC7950 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .7950.xml"> | ||||
| <!ENTITY RFC8033 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8033.xml"> | ||||
| <!ENTITY RFC8034 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8034.xml"> | ||||
| <!ENTITY RFC8040 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8040.xml"> | ||||
| <!ENTITY RFC8051 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8051.xml"> | ||||
| <!ENTITY RFC8189 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8189.xml"> | ||||
| <!ENTITY RFC8231 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8231.xml"> | ||||
| <!ENTITY RFC8259 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8259.xml"> | ||||
| <!ENTITY RFC8279 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8279.xml"> | ||||
| <!ENTITY RFC8281 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8281.xml"> | ||||
| <!ENTITY RFC8283 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8283.xml"> | ||||
| <!ENTITY RFC8290 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8290.xml"> | ||||
| <!ENTITY RFC8402 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8402.xml"> | ||||
| <!ENTITY RFC8453 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8453.xml"> | ||||
| <!ENTITY RFC8570 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8570.xml"> | ||||
| <!ENTITY RFC8571 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8571.xml"> | ||||
| <!ENTITY RFC8655 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8655.xml"> | ||||
| <!ENTITY RFC8664 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8664.xml"> | ||||
| <!ENTITY RFC8684 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8684.xml"> | ||||
| <!ENTITY RFC8685 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8685.xml"> | ||||
| <!ENTITY RFC8795 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8795.xml"> | ||||
| <!ENTITY RFC8803 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8803.xml"> | ||||
| <!ENTITY RFC8896 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8896.xml"> | ||||
| <!ENTITY RFC8938 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8938.xml"> | ||||
| <!ENTITY RFC8955 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8955.xml"> | ||||
| <!ENTITY RFC8972 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .8972.xml"> | ||||
| <!ENTITY RFC9000 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .9000.xml"> | ||||
| <!ENTITY RFC9023 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .9023.xml"> | ||||
| <!ENTITY RFC9040 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .9040.xml"> | ||||
| <!ENTITY RFC9113 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .9113.xml"> | ||||
| <!ENTITY RFC9256 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .9256.xml"> | ||||
| <!ENTITY RFC9262 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .9262.xml"> | ||||
| <!ENTITY RFC9298 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .9298.xml"> | ||||
| <!ENTITY RFC9315 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .9315.xml"> | ||||
| <!ENTITY RFC9332 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .9332.xml"> | ||||
| <!ENTITY RFC9350 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .9350.xml"> | ||||
| <!ENTITY RFC9439 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
| .9439.xml"> | ||||
| <!ENTITY I-D.ietf-bess-evpn-unequal-lb SYSTEM "http://xml2rfc.ietf.org/public/rf | ||||
| c/bibxml3/reference.I-D.ietf-bess-evpn-unequal-lb"> | ||||
| <!ENTITY I-D.ietf-idr-performance-routing SYSTEM "http://xml2rfc.ietf.org/public | ||||
| /rfc/bibxml3/reference.I-D.ietf-idr-performance-routing"> | ||||
| <!ENTITY I-D.ietf-idr-segment-routing-te-policy SYSTEM "http://xml2rfc.ietf.org/ | ||||
| public/rfc/bibxml3/reference.I-D.ietf-idr-segment-routing-te-policy"> | ||||
| <!ENTITY I-D.ietf-lsr-ip-flexalgo SYSTEM "http://xml2rfc.ietf.org/public/rfc/bib | ||||
| xml3/reference.I-D.ietf-lsr-ip-flexalgo"> | ||||
| <!ENTITY I-D.ietf-quic-multipath SYSTEM "http://xml2rfc.ietf.org/public/rfc/bibx | ||||
| ml3/reference.I-D.ietf-quic-multipath"> | ||||
| <!ENTITY I-D.ietf-rtgwg-segment-routing-ti-lfa SYSTEM "http://xml2rfc.ietf.org/ | ||||
| public/rfc/bibxml3/reference.I-D.ietf-rtgwg-segment-routing-ti-lfa"> | ||||
| <!ENTITY I-D.ietf-teas-enhanced-vpn SYSTEM "http://xml2rfc.ietf.org/public/rfc/b | ||||
| ibxml3/reference.I-D.ietf-teas-enhanced-vpn"> | ||||
| <!ENTITY I-D.ietf-tewg-qos-routing SYSTEM "http://xml2rfc.ietf.org/public/rfc/bi | ||||
| bxml3/reference.I-D.ietf-tewg-qos-routing"> | ||||
| <!ENTITY I-D.ietf-tsvwg-multipath-dccp SYSTEM "http://xml2rfc.ietf.org/public/rf | ||||
| c/bibxml3/reference.I-D.ietf-tsvwg-multipath-dccp"> | ||||
| <!ENTITY I-D.ietf-teas-ietf-network-slices SYSTEM "http://xml2rfc.ietf.org/publi | ||||
| c/rfc/bibxml3/reference.I-D.ietf-teas-ietf-network-slices"> | ||||
| <!DOCTYPE rfc [ | ||||
| <!ENTITY nbsp " "> | ||||
| <!ENTITY zwsp "​"> | ||||
| <!ENTITY nbhy "‑"> | ||||
| <!ENTITY wj "⁠"> | ||||
| ]> | ]> | |||
| <rfc docName="draft-ietf-teas-rfc3272bis-27" category="info" obsoletes="3272" ip | <rfc xmlns:xi="http://www.w3.org/2001/XInclude" docName="draft-ietf-teas-rfc3272 | |||
| r="trust200902"> | bis-27" number="9522" submissionType="IETF" category="info" consensus="true" obs | |||
| oletes="3272" ipr="trust200902" updates="" xml:lang="en" tocInclude="true" sortR | ||||
| <front> | efs="true" symRefs="true" version="3"> | |||
| <title abbrev="Overview and Principles of Internet TE">Overview and Principles o | ||||
| f Internet Traffic Engineering</title> | ||||
| <author initials="A." surname="Farrel" fullname="Adrian Farrel" role="editor"> | ||||
| <organization>Old Dog Consulting</organization> | ||||
| <address> | ||||
| <email>adrian@olddog.co.uk</email> | ||||
| </address> | ||||
| </author> | ||||
| <date year="2023" /> | ||||
| <workgroup>TEAS Working Group</workgroup> | ||||
| <abstract> | ||||
| <t>This document describes the principles of traffic engineering (TE) in the | ||||
| Internet. The document is intended to promote better understanding | ||||
| of the issues surrounding traffic engineering in IP networks and the networ | ||||
| ks | ||||
| that support IP networking, and to provide a common basis for the developme | ||||
| nt | ||||
| of traffic engineering capabilities for the Internet. The principles, | ||||
| architectures, and methodologies for performance evaluation and performance | ||||
| optimization of operational networks are also discussed.</t> | ||||
| <t>This work was first published as RFC 3272 in May 2002. This document | ||||
| obsoletes RFC 3272 by making a complete update to bring the text in line | ||||
| with best current practices for Internet traffic engineering and to | ||||
| include references to the latest relevant work in the IETF.</t> | ||||
| </abstract> | ||||
| </front> | ||||
| <middle> | ||||
| <section anchor="INTRO" title="Introduction"> | ||||
| <t>This document describes the principles of Internet traffic engineering (TE) | <front> | |||
| . | <title abbrev="Overview and Principles of Internet TE">Overview and Principl | |||
| The objective of the document is to articulate the general issues and | es of Internet Traffic Engineering</title> | |||
| principles for Internet TE, and where appropriate to | <seriesInfo name="RFC" value="9522"/> | |||
| provide recommendations, guidelines, and options for the development | <author initials="A." surname="Farrel" fullname="Adrian Farrel" role="editor | |||
| of preplanned (offline) and dynamic (online) Internet TE | "> | |||
| capabilities and support systems.</t> | <organization>Old Dog Consulting</organization> | |||
| <address> | ||||
| <email>adrian@olddog.co.uk</email> | ||||
| </address> | ||||
| </author> | ||||
| <date year="2024" month="January"/> | ||||
| <area>rtg</area> | ||||
| <workgroup>teas</workgroup> | ||||
| <t>Even though Internet TE is most effective when | <keyword>Policy</keyword> | |||
| applied end-to-end, the focus of this document is TE | <keyword>Path steering</keyword> | |||
| within a given domain (such as an autonomous system). However, because | <keyword>Resource management</keyword> | |||
| a preponderance of Internet traffic tends to originate in one autonomous | <keyword>Network engineering</keyword> | |||
| system and terminate in another, this document also provides an overview of | <keyword>Network performance optimization</keyword> | |||
| aspects pertaining to inter-domain TE.</t> | ||||
| <t>This document provides a terminology and taxonomy for describing and | <abstract> | |||
| <t>This document describes the principles of traffic engineering (TE) in | ||||
| the Internet. The document is intended to promote better understanding | ||||
| of the issues surrounding traffic engineering in IP networks and the | ||||
| networks that support IP networking and to provide a common basis for | ||||
| the development of traffic-engineering capabilities for the Internet. | ||||
| The principles, architectures, and methodologies for performance | ||||
| evaluation and performance optimization of operational networks are also | ||||
| discussed.</t> | ||||
| <t>This work was first published as RFC 3272 in May 2002. This document | ||||
| obsoletes RFC 3272 by making a complete update to bring the text in line | ||||
| with best current practices for Internet traffic engineering and to | ||||
| include references to the latest relevant work in the IETF.</t> | ||||
| </abstract> | ||||
| </front> | ||||
| <middle> | ||||
| <section anchor="INTRO" numbered="true" toc="default"> | ||||
| <name>Introduction</name> | ||||
| <t>This document describes the principles of Internet traffic | ||||
| engineering (TE). The objective of the document is to articulate the | ||||
| general issues and principles for Internet TE and, where appropriate, to | ||||
| provide recommendations, guidelines, and options for the development of | ||||
| preplanned (offline) and dynamic (online) Internet TE capabilities and | ||||
| support systems.</t> | ||||
| <t>Even though Internet TE is most effective when applied end-to-end, | ||||
| the focus of this document is TE within a given domain (such as an | ||||
| Autonomous System (AS)). However, because a preponderance of Internet | ||||
| traffic tends to originate in one AS and terminate in | ||||
| another, this document also provides an overview of aspects pertaining | ||||
| to inter-domain TE.</t> | ||||
| <t>This document provides terminology and a taxonomy for describing and | ||||
| understanding common Internet TE concepts.</t> | understanding common Internet TE concepts.</t> | |||
| <t>This work was first published as <xref target="RFC3272" | ||||
| <t>This work was first published as <xref target="RFC3272"/> in May 2002. | format="default"/> in May 2002. This document obsoletes <xref | |||
| This document obsoletes <xref target="RFC3272"/> by making a complete | target="RFC3272" format="default"/> by making a complete update to bring | |||
| update to bring the text in line with best current practices for Internet | the text in line with best current practices for Internet TE and to | |||
| TE and to include references to the latest relevant work | include references to the latest relevant work in the IETF. It is worth | |||
| in the IETF. It is worth noting around three fifths of the RFCs referenced | noting around three-fifths of the RFCs referenced in this document | |||
| in this document post-date the publication of RFC 3272. <xref target="CHAN | postdate the publication of <xref target="RFC3272" format="default"/>. | |||
| GES" /> | <xref target="CHANGES" format="default"/> provides a summary of changes | |||
| provides a summary of changes between RFC 3272 and this document.</t> | between <xref target="RFC3272" format="default"/> and this document.</t> | |||
| <section anchor="WHATTE" numbered="true" toc="default"> | ||||
| <section anchor="WHATTE" title="What is Internet Traffic Engineering?"> | <name>What is Internet Traffic Engineering?</name> | |||
| <t>One of the most significant functions performed in the Internet is | ||||
| <t>One of the most significant functions performed in the Internet is the | the routing and forwarding of traffic from ingress nodes to egress | |||
| routing and forwarding of traffic from ingress nodes to egress nodes. Th | nodes. Therefore, one of the most distinctive functions performed by | |||
| erefore, one | Internet traffic engineering is the control and optimization of these | |||
| of the most distinctive functions performed by Internet traffic | routing and forwarding functions, to steer traffic through the | |||
| engineering is the control and optimization of these routing and forwardi | network.</t> | |||
| ng functions, to | <t>Internet traffic engineering is defined as that aspect of Internet | |||
| steer traffic through the network.</t> | network engineering dealing with the issues of performance evaluation | |||
| and performance optimization of operational IP networks. Traffic | ||||
| <t>Internet traffic engineering is defined as that aspect of Internet | engineering encompasses the application of technology and scientific | |||
| network engineering dealing with the issues of performance evaluation | principles to the measurement, characterization, modeling, and control | |||
| and performance optimization of operational IP networks. Traffic | of Internet traffic <xref target="RFC2702" format="default"/> <xref | |||
| engineering encompasses the application of technology and scientific | target="AWD2" format="default"/>.</t> | |||
| principles to the measurement, characterization, modeling, and | <t>It is the performance of the network as seen by end users of | |||
| control of Internet traffic <xref target="RFC2702"/>, <xref target="AWD2" | network services that is paramount. The characteristics visible to | |||
| />.</t> | end users are the emergent properties of the network, which are the | |||
| characteristics of the network when viewed as a whole. A central goal | ||||
| <t>It is the performance of the network as seen by end users of network | of the service provider, therefore, is to enhance the emergent | |||
| services that is paramount. The characteristics visible to end users | properties of the network while taking economic considerations into | |||
| are the emergent properties of the network, which are the characteristics | account. This is accomplished by addressing traffic-oriented | |||
| of the network when viewed as a whole. A central goal of the service | performance requirements while utilizing network resources without | |||
| provider, therefore, is to enhance the emergent properties of the network | excessive waste and in a reliable way. Traffic-oriented performance | |||
| while taking economic considerations into account. This is accomplished | measures include delay, delay variation, packet loss, and | |||
| by addressing traffic oriented performance requirements while utilizing | throughput.</t> | |||
| network resources without excessive waste and in a reliable way. Traffic | <t>Internet TE responds to network events (such as link or node | |||
| oriented | failures, reported or predicted network congestion, planned | |||
| performance measures include delay, delay variation, packet loss, and | maintenance, service degradation, planned changes in the traffic | |||
| throughput.</t> | matrix, etc.). Aspects of capacity management respond at intervals | |||
| ranging from days to years. Routing control functions operate at | ||||
| <t>Internet TE responds to network events (such as link or | intervals ranging from milliseconds to days. Packet-level processing | |||
| node failures, reported or predicted network congestion, planned maintena | functions operate at very fine levels of temporal resolution (up to | |||
| nce, | milliseconds) while reacting to statistical measures of the real-time | |||
| service degradation, planned changes in the traffic matrix, etc.). Aspec | behavior of traffic.</t> | |||
| ts | <t>Thus, the optimization aspects of TE can be viewed from a control | |||
| of capacity management respond at intervals ranging from days to years. | perspective and can be both proactive and reactive. In the proactive | |||
| Routing control functions operate at intervals ranging from milliseconds | case, the TE control system takes preventive action to protect against | |||
| to days. Packet level processing functions operate at very fine levels o | predicted unfavorable future network states, for example, by | |||
| f | engineering backup paths. | |||
| temporal resolution (up to milliseconds) while reacting to | It may also take action that will lead to a | |||
| statistical measures of the real-time behavior of traffic.</t> | more desirable future network state. In the reactive case, the | |||
| control system responds to correct issues and adapt to network | ||||
| <t>Thus, the optimization aspects of TE can be viewed | events, such as routing after failure.</t> | |||
| from a control perspective, and can be both proactive and reactive. | <t>Another important objective of Internet TE is to facilitate | |||
| In the proactive case, the TE control system takes | reliable network operations <xref target="RFC2702" format="default"/>. | |||
| preventive action to protect against predicted unfavorable future | Reliable network operations can be facilitated by providing mechanisms | |||
| network states, for example, by engineering backup paths. It may | that enhance network integrity and by embracing policies emphasizing | |||
| also take action that will lead to a more desirable future network | network survivability. This reduces the vulnerability of services to | |||
| state. In the reactive case, the control system responds to correct | outages arising from errors, faults, and failures occurring within the | |||
| issues and adapt to network events, such as routing after failure.</t> | network infrastructure.</t> | |||
| <t>The optimization aspects of TE can be achieved | ||||
| <t>Another important objective of Internet TE is to | ||||
| facilitate reliable network operations <xref target="RFC2702"/>. | ||||
| Reliable network operations can be facilitated by providing mechanisms | ||||
| that enhance network integrity and by embracing policies emphasizing | ||||
| network survivability. This reduces the vulnerability of services | ||||
| to outages arising from errors, faults, and failures occurring within | ||||
| the network infrastructure.</t> | ||||
| <t>The optimization aspects of TE can be achieved | ||||
| through capacity management and traffic management. In this | through capacity management and traffic management. In this | |||
| document, capacity management includes capacity planning, routing | document, capacity management includes capacity planning, routing | |||
| control, and resource management. Network resources of particular | control, and resource management. Network resources of particular | |||
| interest include link bandwidth, buffer space, and computational | interest include link bandwidth, buffer space, and computational | |||
| resources. In this document, traffic management includes: | resources. In this document, traffic management includes: | |||
| <list style="numbers"> | </t> | |||
| <t>Nodal traffic control functions such as traffic conditioning, | <ol spacing="normal"> | |||
| queue management, and scheduling.</t> | <li>Nodal traffic control functions, such as traffic conditioning, | |||
| <t>Other functions that regulate the flow of traffic through the networ | queue management, and scheduling.</li> | |||
| k | <li>Other functions that regulate the flow of traffic through | |||
| or that arbitrate access to network resources between different | the network or that arbitrate access to network resources between | |||
| packets or between different traffic flows.</t> | different packets or between different traffic flows.</li> | |||
| </list></t> | </ol> | |||
| <t>One major challenge of Internet TE is the realization of automated | ||||
| <t>One major challenge of Internet TE is the | control capabilities that adapt quickly and cost-effectively to | |||
| realization of automated control capabilities that adapt quickly and | significant changes in network state, while still maintaining | |||
| cost effectively to significant changes in network state, while | stability of the network. Performance evaluation can assess the | |||
| still maintaining stability of the network. Performance evaluation | effectiveness of TE methods, and the results of this evaluation can be | |||
| can assess the effectiveness of TE methods, and the | used to identify existing problems, guide network reoptimization, and | |||
| results of this evaluation can be used to identify existing problems, | aid in the prediction of potential future problems. However, this | |||
| guide network re-optimization, and aid in the prediction of potential | process can also be time-consuming and may not be suitable to act on | |||
| future problems. However, this process can also be time consuming and ma | short-lived changes in the network.</t> | |||
| y | <t>Performance evaluation can be achieved in many different ways. The | |||
| not be suitable to act on short-lived changes in the network.</t> | ||||
| <t>Performance evaluation can be achieved in many different ways. The | ||||
| most notable techniques include analytic methods, simulation, and | most notable techniques include analytic methods, simulation, and | |||
| empirical methods based on measurements.</t> | empirical methods based on measurements.</t> | |||
| <t>Traffic engineering comes in two flavors: | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li>A background process that constantly monitors traffic and | ||||
| network conditions and optimizes the use of resources to | ||||
| improve performance.</li> | ||||
| <li>A form of a pre-planned traffic distribution that is considered | ||||
| optimal.</li> | ||||
| </ul> | ||||
| <t>Traffic engineering comes in two flavors: | <t>In the latter case, any deviation from the optimum distribution | |||
| <list style="symbols"> | (e.g., caused by a fiber cut) is reverted upon repair without further | |||
| <t>A background process that constantly monitors traffic and network | optimization. However, this form of TE relies upon the notion that | |||
| conditions, and optimizes the use of resources to improve performanc | the planned state of the network is optimal. Hence, | |||
| e.</t> | there are two levels of TE in such a mode: </t> | |||
| <t>A form of a pre-planned traffic distribution that is considered opti | <ul spacing="normal"> | |||
| mal.</t> | <li>The TE-planning task to enable optimum traffic distribution.</li> | |||
| </list> | <li>The routing and forwarding tasks that keep traffic flows | |||
| In the latter case, any deviation from the optimum | attached to the pre-planned distribution.</li> | |||
| distribution (e.g., caused by a fiber cut) is reverted upon repair withou | </ul> | |||
| t | <t>As a general rule, TE concepts and mechanisms must be sufficiently | |||
| further optimization. However, this form of TE relies | specific and well-defined to address known requirements but | |||
| upon the notion that the planned state of the network is optimal. Hence, | simultaneously flexible and extensible to accommodate | |||
| in such a mode there are two levels of TE: the TE-planning | unforeseen future demands (see <xref target="HIGHOBJ" | |||
| task to enable optimum traffic distribution, and the routing and forwardi | format="default"/>).</t> | |||
| ng | </section> | |||
| tasks that keep traffic flows attached to the pre-planned distribution.</ | <section anchor="COMPONENTS" numbered="true" toc="default"> | |||
| t> | <name>Components of Traffic Engineering</name> | |||
| <t>As mentioned in <xref target="WHATTE" format="default"/>, Internet | ||||
| <t>As a general rule, TE concepts and mechanisms must be | traffic engineering provides performance optimization of IP networks | |||
| sufficiently specific and well-defined to address known requirements, but | while utilizing network resources economically and reliably. Such | |||
| simultaneously flexible and extensible to accommodate unforeseen future | optimization is supported at the control/controller level and within | |||
| demands (see <xref target="HIGHOBJ" />).</t> | the data/forwarding plane.</t> | |||
| <t>The key elements required in any TE solution are as follows: | ||||
| </section> | </t> | |||
| <ol spacing="normal" type="1"><li>Policy</li> | ||||
| <section anchor="COMPONENTS" title="Components of Traffic Engineering"> | <li>Path steering</li> | |||
| <li>Resource management</li> | ||||
| <t>As mentioned in <xref target="WHATTE" />, Internet traffic engineering pr | </ol> | |||
| ovides | <t>Some TE solutions rely on these elements to a lesser or greater | |||
| performance optimization of IP networks while utilizing network resources | extent. Debate remains about whether a solution can truly be | |||
| economically and reliably. Such optimization is supported at the | called "TE" if it does not include all of these elements. For the sake | |||
| control/controller level and within the data/forwarding plane.</t> | of this document, we assert that all TE solutions must include some | |||
| aspects of all of these elements. Other solutions can be classed as | ||||
| <t>The key elements required in any TE solution are as follows: | "partial TE" and also fall in scope of this document.</t> | |||
| <list style="numbers"> | <t>Policy allows for the selection of paths (including next hops) | |||
| <t>Policy</t> | based on information beyond basic reachability. Early definitions of | |||
| <t>Path steering</t> | routing policy, e.g., <xref target="RFC1102" format="default"/> and | |||
| <t>Resource management</t> | <xref target="RFC1104" format="default"/>, discuss routing policy | |||
| </list></t> | being applied to restrict access to network resources at an aggregate | |||
| level. BGP is an example of a commonly used mechanism for applying | ||||
| <t>Some TE solutions rely on these elements to a lesser or greater extent. | such policies; see <xref target="RFC4271" format="default"/> and <xref | |||
| Debate remains about whether a solution can truly be called TE | target="RFC8955" format="default"/>. In the TE context, policy | |||
| if it does not include all of these elements. For the sake of this docum | decisions are made within the control plane or by controllers in the | |||
| ent, | management plane and govern the selection of paths. Examples can be | |||
| we assert that all TE solutions must include some aspects of all of these | found in <xref target="RFC4655" format="default"/> and <xref | |||
| elements. Other solutions can be classed as "partial TE" and also fall i | target="RFC5394" format="default"/>. TE solutions may cover the | |||
| n | mechanisms to distribute and/or enforce policies, but definition of | |||
| scope of this document.</t> | specific policies is left to the network operator.</t> | |||
| <t>Path steering is the ability to forward packets using more | ||||
| <t>Policy allows for the selection of paths (including next hops) based on | information than just knowledge of the next hop. Examples of path | |||
| information beyond basic reachability. Early definitions of routing | steering include IPv4 source routes <xref target="RFC0791" | |||
| policy, e.g., <xref target="RFC1102" /> and <xref target="RFC1104" />, | format="default"/>, RSVP-TE explicit routes <xref target="RFC3209" | |||
| discuss routing policy being applied to restrict access to network | format="default"/>, Segment Routing (SR) <xref target="RFC8402" | |||
| resources at an aggregate level. BGP is an example of a commonly used | format="default"/>, and Service Function Chaining <xref | |||
| mechanism for applying such policies, see <xref target="RFC4271" /> and | target="RFC7665" format="default"/>. Path steering for TE can be | |||
| <xref target="RFC8955" />. In the TE | supported via control plane protocols, by encoding in the data plane | |||
| context, policy decisions are made within the control plane or by | headers, or by a combination of the two. This includes when control | |||
| controllers in the management plane, and govern the selection of paths. | is provided by a controller using a network-facing control | |||
| Examples can be found in <xref target="RFC4655" /> and <xref target="RFC5 | protocol.</t> | |||
| 394" />. | <t>Resource management provides resource-aware control and forwarding. | |||
| TE solutions may cover the mechanisms to distribute and/or enforce | Examples of resources are bandwidth, buffers, and queues, all of which | |||
| policies, but definition of specific policies is left to the network oper | can be managed to control loss and latency.</t> | |||
| ator.</t> | <t>Resource reservation is the control aspect of resource management. | |||
| It provides for domain-wide consensus about which network resources | ||||
| <t>Path steering is the ability to forward packets using more information | are used by a particular flow. This determination may be made at a | |||
| than just knowledge of the next hop. Examples of path steering include | very coarse or very fine level. Note that this consensus exists at | |||
| IPv4 source routes <xref target="RFC0791" />, RSVP-TE explicit routes | the network control or controller level but not within the data plane. | |||
| <xref target="RFC3209" />, Segment Routing <xref target="RFC8402" />, and | It may be composed purely of accounting/bookkeeping, but it typically | |||
| Service Function Chaining <xref target="RFC7665" />. Path steering for T | includes an ability to admit, reject, or reclassify a flow based on | |||
| E | policy. Such accounting can be done based on any combination of a | |||
| can be supported via control plane protocols, by encoding in the data pla | static understanding of resource requirements and the use of dynamic | |||
| ne | mechanisms to collect requirements (e.g., via RSVP-TE <xref | |||
| headers, or by a combination of the two. This includes when control is | target="RFC3209" format="default"/>) and resource availability (e.g., | |||
| provided by a controller using a network-facing control protocol.</t> | via OSPF extensions for GMPLS <xref target="RFC4203" | |||
| format="default"/>).</t> | ||||
| <t>Resource management provides resource-aware control and forwarding. | <t>Resource allocation is the data plane aspect of resource | |||
| Examples of resources are bandwidth, buffers, and queues, all of which ca | management. It provides for the allocation of specific node and | |||
| n | link resources to specific flows. Example resources include | |||
| be managed to control loss and latency. | buffers, policing, and rate-shaping mechanisms that are typically | |||
| <list style="none"> | supported via queuing. Resource allocation also includes the matching | |||
| <t>Resource reservation is the control aspect of resource management. | of a flow (i.e., | |||
| It provides for domain-wide consensus about which network resources | flow classification) to a particular set of allocated resources. | |||
| are used by a particular flow. This determination may be made at a | The method of flow classification and granularity of resource | |||
| very coarse or very fine level. Note that this consensus exists | management is technology-specific. Examples include Diffserv with | |||
| at the network control or controller level, not within the data plan | dropping and remarking <xref target="RFC4594" format="default"/>, | |||
| e. | MPLS-TE <xref target="RFC3209" format="default"/>, GMPLS-based Label | |||
| It may be composed purely of accounting/bookkeeping, but it typicall | Switched Paths (LSPs) <xref target="RFC3945" format="default"/>, as | |||
| y | well as controller-based solutions <xref target="RFC8453" | |||
| includes an ability to admit, reject, or reclassify a flow based on | format="default"/>. This level of resource control, while optional, | |||
| policy. Such accounting can be done based on any combination of a | is important in networks that wish to support network congestion | |||
| static understanding of resource requirements, and the use of dynami | management policies to control or regulate the offered traffic to | |||
| c | deliver different levels of service and alleviate network | |||
| mechanisms to collect requirements (e.g., via <xref target="RFC3209" | congestion problems. It is also important in networks that wish to con | |||
| />) | trol the | |||
| and resource availability (e.g., via <xref target="RFC4203" />).</t> | latency experienced by specific traffic flows.</t> | |||
| <t>Resource allocation is the data plane aspect of resource management. | ||||
| It | ||||
| provides for the allocation of specific node and link resources to | ||||
| specific flows. Example resources include buffers, policing, and | ||||
| rate-shaping mechanisms that are typically supported via queuing. It | ||||
| also includes the matching of a flow (i.e., flow classification) to a | ||||
| particular set of allocated resources. The method of flow classifica | ||||
| tion | ||||
| and granularity of resource management is technology-specific. Examp | ||||
| les | ||||
| include Diffserv with dropping and remarking <xref target="RFC4594" / | ||||
| >, | ||||
| MPLS-TE <xref target="RFC3209" />, and GMPLS based label switched pat | ||||
| hs | ||||
| <xref target="RFC3945" />, as well as controller-based solutions | ||||
| <xref target="RFC8453" />. This level of resource control, while opt | ||||
| ional, | ||||
| is important in networks that wish to support network congestion mana | ||||
| gement policies | ||||
| to control or regulate the offered traffic to deliver different level | ||||
| s of | ||||
| service and alleviate network congestion problems, or those networks | ||||
| that wish to | ||||
| control the latency experienced by specific traffic flows.</t> | ||||
| </list></t> | ||||
| </section> | ||||
| <section anchor="SCOPE" title="Scope"> | ||||
| <t>The scope of this document is intra-domain TE because this is the practic | ||||
| al | ||||
| level of TE technology that exists in the Internet at the time of writing | ||||
| . | ||||
| That is, it describes TE within a given autonomous system in the | ||||
| Internet. This document discusses concepts pertaining to intra-domain | ||||
| traffic control, including such issues as routing control, | ||||
| micro and macro resource allocation, and the control coordination | ||||
| problems that arise consequently.</t> | ||||
| <t>This document describes and characterizes techniques already in | ||||
| use or in advanced development for Internet TE. The | ||||
| way these techniques fit together is discussed and scenarios in which | ||||
| they are useful will be identified.</t> | ||||
| <t>Although the emphasis in this document is on intra-domain traffic | ||||
| engineering, an overview of the high-level considerations pertaining | ||||
| to inter-domain TE is provided in <xref target="INTER" />. | ||||
| Inter-domain Internet TE is crucial to the performance | ||||
| enhancement of the world-wide Internet infrastructure.</t> | ||||
| <t>Whenever possible, relevant requirements from existing IETF documents | ||||
| and other sources are incorporated by reference.</t> | ||||
| </section> | ||||
| <section anchor="TERMS" title="Terminology"> | ||||
| <t>This section provides terminology which is useful for Internet | ||||
| TE. The definitions presented apply to this | ||||
| document. These terms may have other meanings elsewhere.</t> | ||||
| <t><list style="hanging"> | </section> | |||
| <t hangText='Busy hour:'> | <section anchor="SCOPE" numbered="true" toc="default"> | |||
| A one hour period within a specified interval of time | <name>Scope</name> | |||
| (typically 24 hours) in which the traffic load in a network | <t>The scope of this document is intra-domain TE because this is the | |||
| or sub-network is greatest.</t> | practical level of TE technology that exists in the Internet at the | |||
| <t hangText='Congestion:'> | time of writing. That is, this document describes TE within a given | |||
| A state of a network resource in which the traffic incident | AS in the Internet. This document discusses concepts | |||
| on the resource exceeds its output capacity over an interval | pertaining to intra-domain traffic control, including such issues as | |||
| of time. A small amount of congestion may be beneficial to | routing control, micro and macro resource allocation, and control | |||
| ensure that network resources are run at full capacity, and | coordination problems that arise consequently.</t> | |||
| this may be particularly true at the network edge where it is | <t>This document describes and characterizes techniques already in use | |||
| desirable to ensure that user traffic is served as much as | or in advanced development for Internet TE. The way these techniques | |||
| possible. Within the network, if congestion is allowed to | fit together is discussed and scenarios in which they are useful are | |||
| build (such as when input traffic exceeds output traffic in | identified.</t> | |||
| a sustained way) it will have a negative effect on user | <t>Although the emphasis in this document is on intra-domain traffic | |||
| traffic.</t> | engineering, an overview of the high-level considerations pertaining | |||
| <t hangText='Congestion avoidance:'> | to inter-domain TE is provided in <xref target="INTER" | |||
| An approach to congestion management that attempts to | format="default"/>. Inter-domain Internet TE is crucial to the | |||
| obviate the occurrence of congestion. Chiefly relevant to | performance enhancement of the world-wide Internet infrastructure.</t> | |||
| network congestion although may form a part of demand-side | <t>Whenever possible, relevant requirements from existing IETF | |||
| congestion management.</t> | documents and other sources are incorporated by reference.</t> | |||
| <t hangText='Congestion response:'> | </section> | |||
| An approach to congestion management that attempts to remedy | <section anchor="TERMS" numbered="true" toc="default"> | |||
| congestion problems that have already occurred.</t> | <name>Terminology</name> | |||
| <t hangText='Constraint-based routing:'> | <t>This section provides terminology that is useful for Internet TE. | |||
| A class of routing protocols that take specified traffic | The definitions presented apply to this document. These terms may | |||
| attributes, network constraints, and policy constraints into | have other meanings elsewhere.</t> | |||
| account when making routing decisions. Constraint-based | <dl newline="false" spacing="normal"> | |||
| routing is applicable to traffic aggregates as well as | <dt>Busy hour:</dt> | |||
| flows. It is a generalization of QoS-based routing.</t> | <dd>A one-hour period within a specified interval of time (typically | |||
| <t hangText='Demand-side congestion management:'> | 24 hours) in which the traffic load in a network or sub-network is | |||
| A congestion management scheme that addresses congestion | greatest.</dd> | |||
| problems by regulating or conditioning offered load.</t> | <dt>Congestion:</dt> | |||
| <t hangText='Effective bandwidth:'> | <dd>A state of a network resource in which the traffic incident on | |||
| The minimum amount of bandwidth that can be assigned to a | the resource exceeds its output capacity over an interval of time. | |||
| flow or traffic aggregate in order to deliver 'acceptable | A small amount of congestion may be beneficial to ensure that | |||
| service quality' to the flow or traffic aggregate. See | network resources are run at full capacity, and this may be | |||
| <xref target="KELLY" /> for a more mathematical definition.</t> | particularly true at the network edge where it is desirable to | |||
| <t hangText='Egress node:'> | ensure that user traffic is served as much as possible. Within the | |||
| The device (router) at which traffic leaves a network toward a | network, if congestion is allowed to build (such as when input | |||
| destination (host, server, etc.) or to another network.</t> | traffic exceeds output traffic in a sustained way), it will have a | |||
| <t hangText='End-to-end:'> | negative effect on user traffic.</dd> | |||
| This term is context-dependent and often applies to the life of | <dt>Congestion avoidance:</dt> | |||
| a traffic flow from original source to final destination. In | <dd>An approach to congestion management that attempts to obviate | |||
| contrast, edge-to-edge is often used to describe the traffic | the occurrence of congestion. It is chiefly relevant to network | |||
| flow from the entry to a domain or network, to the exit from | congestion, although it may form a part of demand-side congestion | |||
| that domain or network. In some contexts, however, for example | management.</dd> | |||
| where there is a service interface between a network and the | <dt>Congestion response:</dt> | |||
| client of that network, or where a path traverses multiple domains | <dd>An approach to congestion management that attempts to remedy | |||
| under the control of a single process, end-to-end is used to refer | congestion problems that have already occurred.</dd> | |||
| to the full operation of the service that may be composed of concaten | <dt>Constraint-based routing:</dt> | |||
| ated | <dd>A class of routing protocols that takes specified traffic | |||
| edge-to-edge operations. Thus, in the context of TE, the term end-to | attributes, network constraints, and policy constraints into account | |||
| -end | when making routing decisions. Constraint-based routing is | |||
| may refer to the full TE path, but not to the complete path of the tr | applicable to traffic aggregates as well as flows. It is a | |||
| affic | generalization of QoS-based routing.</dd> | |||
| from source application to ultimate destination.</t> | <dt>Demand-side congestion management:</dt> | |||
| <t hangText='Hot-spot:'> | <dd>A congestion management scheme that addresses congestion | |||
| A network element or subsystem which is in a considerably higher stat | problems by regulating or conditioning the offered load.</dd> | |||
| e of | <dt>Effective bandwidth:</dt> | |||
| congestion than others.</t> | <dd>The minimum amount of bandwidth that can be assigned to a flow | |||
| <t hangText='Ingress node:'> | or traffic aggregate in order to deliver "acceptable service | |||
| The device (router) at which traffic enters a network from a | quality" to the flow or traffic aggregate. See <xref target="KELLY" | |||
| source (host) or from another network.</t> | format="default"/> for a more mathematical definition.</dd> | |||
| <t hangText='Metric:'> | <dt>Egress node:</dt> | |||
| A parameter defined in terms of standard units of | <dd>The device (router) at which traffic leaves a network toward a | |||
| measurement.</t> | destination (host, server, etc.) or to another network.</dd> | |||
| <t hangText='Measurement methodology:'> | <dt>End-to-end:</dt> | |||
| <dd>This term is context-dependent and often applies to the life of | ||||
| a traffic flow from original source to final destination. | ||||
| In contrast, edge-to-edge is often used to describe the traffic flow from the | ||||
| entry of a domain or network to the exit of that domain or network. However, | ||||
| in some contexts (for example, where there is a service interface between a | ||||
| network and the client of that network or where a path traverses multiple | ||||
| domains under the control of a single process), end-to-end is used to refer to | ||||
| the full operation of the service that may be composed of concatenated | ||||
| edge-to-edge operations. Thus, in the context of TE, the term "end-to-end" | ||||
| may refer to the full TE path but not to the complete path of the traffic from | ||||
| source application to ultimate destination.</dd> | ||||
| <dt>Hotspot:</dt> | ||||
| <dd>A network element or subsystem that is in a considerably higher | ||||
| state of congestion than others.</dd> | ||||
| <dt>Ingress node:</dt> | ||||
| <dd>The device (router) at which traffic enters a network from a | ||||
| source (host) or from another network.</dd> | ||||
| <dt>Metric:</dt> | ||||
| <dd>A parameter defined in terms of standard units of | ||||
| measurement.</dd> | ||||
| <dt>Measurement methodology:</dt> | ||||
| <dd> | ||||
| A repeatable measurement technique used to derive one or | A repeatable measurement technique used to derive one or | |||
| more metrics of interest.</t> | more metrics of interest.</dd> | |||
| <t hangText='Network congestion:'> | <dt>Network congestion:</dt> | |||
| Congestion within the network at a specific node or a | <dd> | |||
| specific link that is sufficiently extreme that it results in | Congestion within the network at a specific node or a specific link | |||
| unacceptable queuing delay or packet loss. Network congestion | that is sufficiently extreme that it results in | |||
| can negatively impact end-to-end or edge-to-edge traffic flows, | unacceptable queuing delay or packet loss. Network congestion can | |||
| so TE schemes may be deployed to balance traffic in the network | negatively impact end-to-end or edge-to-edge traffic flows, so TE | |||
| and deliver congestion avoidance.</t> | schemes may be deployed to balance traffic in the network and | |||
| <t hangText='Network survivability:'> | deliver congestion avoidance.</dd> | |||
| <dt>Network survivability:</dt> | ||||
| <dd> | ||||
| The capability to provide a prescribed level of QoS for | The capability to provide a prescribed level of QoS for | |||
| existing services after a given number of failures occur | existing services after a given number of failures occur | |||
| within the network.</t> | within the network.</dd> | |||
| <t hangText='Offered load:'> | <dt>Offered load:</dt> | |||
| The offered load or offered traffic load is a measure of the | <dd>Offered load is also sometimes called "offered traffic load". It | |||
| amount of traffic being presented to be carried across a | is a measure of the amount of traffic being presented to be carried | |||
| network compared to the capacity of the network to carry it. | across a network compared to the capacity of the network to carry | |||
| This term derives from queuing theory and an offered load of | it. This term derives from queuing theory, and an offered load of 1 | |||
| 1 indicates that the network can carry, but only just manage | indicates that the network can carry, but only just manage to carry, | |||
| to carry, all of the traffic presented to it.</t> | all of the traffic presented to it.</dd> | |||
| <t hangText='Offline traffic engineering:'> | <dt>Offline traffic engineering:</dt> | |||
| <dd> | ||||
| A traffic engineering system that exists outside of the | A traffic engineering system that exists outside of the | |||
| network.</t> | network.</dd> | |||
| <t hangText='Online traffic engineering:'> | <dt>Online traffic engineering:</dt> | |||
| A traffic engineering system that exists within the network, | <dd> | |||
| A traffic-engineering system that exists within the network, | ||||
| typically implemented on or as adjuncts to operational | typically implemented on or as adjuncts to operational | |||
| network elements.</t> | network elements.</dd> | |||
| <t hangText='Performance measures:'> | <dt>Performance measures:</dt> | |||
| <dd> | ||||
| Metrics that provide quantitative or qualitative measures of | Metrics that provide quantitative or qualitative measures of | |||
| the performance of systems or subsystems of interest.</t> | the performance of systems or subsystems of interest.</dd> | |||
| <t hangText='Performance metric:'> | <dt>Performance metric:</dt> | |||
| <dd> | ||||
| A performance parameter defined in terms of standard units | A performance parameter defined in terms of standard units | |||
| of measurement.</t> | of measurement.</dd> | |||
| <t hangText='Provisioning:'> | <dt>Provisioning:</dt> | |||
| <dd> | ||||
| The process of assigning or configuring network resources to | The process of assigning or configuring network resources to | |||
| meet certain requests.</t> | meet certain requests.</dd> | |||
| <t hangText='Quality of Service (QoS):'> | <dt>Quality of Service (QoS):</dt> | |||
| QoS (<xref target="RFC3198" />) refers to the mechanisms used | <dd> | |||
| within a network to achieve specific goals for the delivery of | QoS <xref target="RFC3198" format="default"/> refers to the | |||
| traffic for a particular service according to the parameters | mechanisms used within a network to achieve specific goals for the | |||
| specified in a Service Level Agreement. "Quality" is | delivery of traffic for a particular service according to the | |||
| characterized by service availability, delay, jitter, throughput | parameters specified in a Service Level Agreement. "Quality" | |||
| is characterized by service availability, delay, jitter, throughput, | ||||
| and packet loss ratio. At a network resource level, "Quality of | and packet loss ratio. At a network resource level, "Quality of | |||
| Service" refers to a set of capabilities that allow a service | Service" refers to a set of capabilities that allow a service | |||
| provider to prioritize traffic, control bandwidth, and network | provider to prioritize traffic, control bandwidth, and network | |||
| latency.</t> | latency.</dd> | |||
| <t hangText='QoS routing:'> | <dt>QoS routing:</dt> | |||
| <dd> | ||||
| Class of routing systems that selects paths to be used by a | Class of routing systems that selects paths to be used by a | |||
| flow based on the QoS requirements of the flow.</t> | flow based on the QoS requirements of the flow.</dd> | |||
| <t hangText='Service Level Agreement (SLA):'> | <dt>Service Level Agreement (SLA):</dt> | |||
| <dd> | ||||
| A contract between a provider and a customer that guarantees | A contract between a provider and a customer that guarantees | |||
| specific levels of performance and reliability at a certain | specific levels of performance and reliability at a certain | |||
| cost.</t> | cost.</dd> | |||
| <t hangText='Service Level Objective (SLO):'> | <dt>Service Level Objective (SLO):</dt> | |||
| <dd> | ||||
| A key element of an SLA between a provider and a customer. SLOs | A key element of an SLA between a provider and a customer. SLOs | |||
| are agreed upon as a means of measuring the performance of the | are agreed upon as a means of measuring the performance of the | |||
| Service Provider and are outlined as a way of avoiding disputes | service provider and are outlined as a way of avoiding disputes | |||
| between the two parties based on misunderstanding.</t> | between the two parties based on misunderstanding.</dd> | |||
| <t hangText='Stability:'> | <dt>Stability:</dt> | |||
| <dd> | ||||
| An operational state in which a network does not oscillate | An operational state in which a network does not oscillate | |||
| in a disruptive manner from one mode to another mode.</t> | in a disruptive manner from one mode to another mode.</dd> | |||
| <t hangText='Supply-side congestion management:'> | <dt>Supply-side congestion management:</dt> | |||
| <dd> | ||||
| A congestion management scheme that provisions additional | A congestion management scheme that provisions additional | |||
| network resources to address existing and/or anticipated | network resources to address existing and/or anticipated | |||
| congestion problems.</t> | congestion problems.</dd> | |||
| <t hangText='Traffic characteristic:'> | <dt>Traffic characteristic:</dt> | |||
| <dd> | ||||
| A description of the temporal behavior or a description of | A description of the temporal behavior or a description of | |||
| the attributes of a given traffic flow or traffic aggregate.</t> | the attributes of a given traffic flow or traffic aggregate.</dd> | |||
| <t hangText='Traffic engineering system:'> | <dt>Traffic-engineering system:</dt> | |||
| <dd> | ||||
| A collection of objects, mechanisms, and protocols that are | A collection of objects, mechanisms, and protocols that are | |||
| used together to accomplish traffic engineering objectives.</t> | used together to accomplish traffic-engineering objectives.</dd> | |||
| <t hangText='Traffic flow:'> | <dt>Traffic flow:</dt> | |||
| A stream of packets between two end-points that can be | <dd> | |||
| A stream of packets between two endpoints that can be | ||||
| characterized in a certain way. A common classification for a | characterized in a certain way. A common classification for a | |||
| traffic flow selects packets with the "five-tuple" of source | traffic flow selects packets with the five-tuple of source | |||
| and destination addresses, source and destination ports, and | and destination addresses, source and destination ports, and | |||
| protocol ID. Flows may be very small and transient, ranging to | protocol ID. Flows may be very small and transient, ranging to | |||
| very large. The TE techniques described in this document are | very large. The TE techniques described in this document are | |||
| likely to be more effective when applied to large flows. Traffic | likely to be more effective when applied to large flows. Traffic | |||
| flows may be aggregated and treated as a single unit in some | flows may be aggregated and treated as a single unit in some | |||
| forms of TE making it possible to apply TE to the smaller flows | forms of TE, making it possible to apply TE to the smaller flows | |||
| that comprise the aggregate.</t> | that comprise the aggregate.</dd> | |||
| <t hangText='Traffic mapping:'> | <dt>Traffic mapping:</dt> | |||
| Traffic mapping is the assignment of traffic workload onto (pre- | <dd> | |||
| established) paths to meet certain requirements.</t> | Traffic mapping is the assignment of traffic workload onto | |||
| <t hangText='Traffic matrix:'> | (pre-established) paths to meet certain requirements.</dd> | |||
| <dt>Traffic matrix:</dt> | ||||
| <dd> | ||||
| A representation of the traffic demand between a set of | A representation of the traffic demand between a set of | |||
| origin and destination abstract nodes. An abstract node can | origin and destination abstract nodes. An abstract node can | |||
| consist of one or more network elements.</t> | consist of one or more network elements.</dd> | |||
| <t hangText='Traffic monitoring:'> | <dt>Traffic monitoring:</dt> | |||
| <dd> | ||||
| The process of observing traffic characteristics at a given | The process of observing traffic characteristics at a given | |||
| point in a network and collecting the traffic information | point in a network and collecting the traffic information | |||
| for analysis and further action.</t> | for analysis and further action.</dd> | |||
| <t hangText='Traffic trunk:'> | <dt>Traffic trunk:</dt> | |||
| <dd> | ||||
| An aggregation of traffic flows belonging to the same class | An aggregation of traffic flows belonging to the same class | |||
| which are forwarded through a common path. A traffic trunk | that are forwarded through a common path. A traffic trunk | |||
| may be characterized by an ingress and egress node, and a | may be characterized by an ingress and egress node and a | |||
| set of attributes which determine its behavioral | set of attributes that determine its behavioral | |||
| characteristics and requirements from the network.</t> | characteristics and requirements from the network.</dd> | |||
| <t hangText='Workload:'> | <dt>Workload:</dt> | |||
| The workload or traffic workload is an evaluation of the amount | <dd>Workload is also sometimes called "traffic workload". It is an | |||
| of work that must be done in a network in order to facilitate | evaluation of the amount of work that must be done in a network in | |||
| the traffic demand. Colloquially, it is the answer to, "How | order to facilitate the traffic demand. Colloquially, it is the | |||
| busy is the network?"</t> | answer to, "How busy is the network?"</dd> | |||
| </list></t> | </dl> | |||
| </section> | ||||
| </section> | </section> | |||
| <section anchor="BG" numbered="true" toc="default"> | ||||
| </section> | <name>Background</name> | |||
| <t>The Internet aims to convey IP packets from ingress nodes to egress nod | ||||
| <section anchor="BG" title="Background"> | es | |||
| <t>The Internet aims to convey IP packets from ingress nodes to egress nodes | ||||
| efficiently, expeditiously, and economically. Furthermore, in a | efficiently, expeditiously, and economically. Furthermore, in a | |||
| multiclass service environment (e.g., Diffserv capable networks - see | multi-class service environment (e.g., Diffserv capable networks; see | |||
| <xref target="DIFFSERV" />), the resource sharing parameters of the | <xref target="DIFFSERV" format="default"/>), the resource-sharing parameter | |||
| s of the | ||||
| network must be appropriately determined and configured according to | network must be appropriately determined and configured according to | |||
| prevailing policies and service models to resolve resource contention | prevailing policies and service models to resolve resource contention | |||
| issues arising from mutual interference between packets traversing | issues arising from mutual interference between packets traversing | |||
| the network. Thus, consideration must be given to resolving | the network. Thus, consideration must be given to resolving | |||
| competition for network resources between traffic flows belonging to | competition for network resources between traffic flows belonging to | |||
| the same service class (intra-class contention resolution) and traffic | the same service class (intra-class contention resolution) and traffic | |||
| flows belonging to different classes (inter-class contention | flows belonging to different classes (inter-class contention | |||
| resolution).</t> | resolution).</t> | |||
| <section anchor="CONTEXT" numbered="true" toc="default"> | ||||
| <section anchor="CONTEXT" title="Context of Internet Traffic Engineering"> | <name>Context of Internet Traffic Engineering</name> | |||
| <t>The context of Internet traffic engineering includes the following su | ||||
| <t>The context of Internet traffic engineering includes the following sub-co | b-contexts:</t> | |||
| ntexts:</t> | <ol spacing="normal" type="1"> | |||
| <li>A network domain context that defines the scope under | ||||
| <t><list style="numbers"> | consideration and, in particular, the situations in which the TE | |||
| <t>A network domain context that defines the scope under consideration, | problems occur. The network domain context includes network | |||
| and in particular the situations in which the TE | structure, policies, characteristics, constraints, quality | |||
| problems occur. The network domain context includes network | attributes, and optimization criteria.</li> | |||
| structure, policies, characteristics, constraints, quality attribute | <li>A problem context defining the general and concrete issues that | |||
| s, | TE addresses. The problem context includes identification, | |||
| and optimization criteria.</t> | abstraction of relevant features, representation, formulation, | |||
| <t>A problem context defining the general and concrete issues | specification of the requirements on the solution space, and | |||
| that TE addresses. The problem context | specification of the desirable features of acceptable | |||
| includes identification, abstraction of relevant features, | solutions.</li> | |||
| representation, formulation, specification of the | <li>A solution context suggesting how to address the issues | |||
| requirements on the solution space, and specification of the | identified by the problem context. The solution context includes | |||
| desirable features of acceptable solutions.</t> | analysis, evaluation of alternatives, prescription, and | |||
| <t>A solution context suggesting how to address the issues | resolution.</li> | |||
| identified by the problem context. The solution context | <li>An implementation and operational context in which the | |||
| includes analysis, evaluation of alternatives, prescription, | ||||
| and resolution.</t> | ||||
| <t>An implementation and operational context in which the | ||||
| solutions are instantiated. The implementation and operational | solutions are instantiated. The implementation and operational | |||
| context includes planning, organization, and execution.</t> | context includes planning, organization, and execution.</li> | |||
| </list></t> | </ol> | |||
| <t>The context of Internet TE and the different problem | ||||
| <t>The context of Internet TE and the different problem | ||||
| scenarios are discussed in the following subsections.</t> | scenarios are discussed in the following subsections.</t> | |||
| </section> | ||||
| </section> | <section anchor="NWCTXT" numbered="true" toc="default"> | |||
| <name>Network Domain Context</name> | ||||
| <section anchor="NWCTXT" title="Network Domain Context"> | <t>IP networks range in size from small clusters of routers situated | |||
| within a given location to thousands of interconnected routers, | ||||
| <t>IP networks range in size from small clusters of routers situated | switches, and other components distributed all over the world.</t> | |||
| within a given location, to thousands of interconnected routers, | <t>At the most basic level of abstraction, an IP network can be | |||
| switches, and other components distributed all over the world.</t> | represented as a distributed dynamic system consisting of: | |||
| </t> | ||||
| <t>At the most basic level of abstraction, an IP network can be represented | <ul spacing="normal"> | |||
| as a distributed dynamic system consisting of: | <li>a set of interconnected resources that provide transport | |||
| <list style="symbols"> | services for IP traffic subject to certain constraints</li> | |||
| <t>a set of interconnected resources which provide transport | <li>a demand system representing the offered load to be transported | |||
| services for IP traffic subject to certain constraints</t> | through the network</li> | |||
| <t>a demand system representing the offered load to be transported | <li>a response system consisting of network processes, protocols, | |||
| through the network</t> | and related mechanisms that facilitate the movement of traffic | |||
| <t>a response system consisting of network processes, protocols, | through the network (see also <xref target="AWD2" | |||
| and related mechanisms which facilitate the movement of | format="default"/>)</li> | |||
| traffic through the network (see also <xref target="AWD2"/>).</t> | </ul> | |||
| </list></t> | <t>The network elements and resources may have specific | |||
| characteristics restricting the manner in which the traffic demand is | ||||
| <t>The network elements and resources may have specific characteristics | handled. Additionally, network resources may be equipped with traffic | |||
| restricting the manner in which the traffic demand is handled. Additiona | control mechanisms managing the way in which the demand is serviced. | |||
| lly, | Traffic control mechanisms may be used to: | |||
| network resources may be equipped with traffic control mechanisms managin | </t> | |||
| g | <ul spacing="normal"> | |||
| the way in which the demand is serviced. Traffic control mechanisms may | <li>control packet processing activities within a given | |||
| be | resource</li> | |||
| used to: | <li>arbitrate contention for access to the resource by different | |||
| <list style="symbols"> | packets</li> | |||
| <t>control packet processing activities within a given resource</t> | <li>regulate traffic behavior through the resource</li> | |||
| <t>arbitrate contention for access to the resource by different | </ul> | |||
| packets</t> | <t>A configuration management and provisioning system may allow the | |||
| <t>regulate traffic behavior through the resource.</t> | settings of the traffic control mechanisms to be manipulated by | |||
| </list></t> | external or internal entities in order to exercise control over the | |||
| way in which the network elements respond to internal and external | ||||
| <t>A configuration management and provisioning system may allow the | stimuli.</t> | |||
| settings of the traffic control mechanisms to be manipulated by | <t>The details of how the network carries packets are specified in the | |||
| external or internal entities in order to exercise control over the | policies of the network administrators and are installed through | |||
| way in which the network elements respond to internal and external | network configuration management and policy-based provisioning | |||
| stimuli.</t> | systems. Generally, the types of service provided by the network also | |||
| depend upon the technology and characteristics of the network elements | ||||
| <t>The details of how the network carries packets are specified in the | and protocols, the prevailing service and utility models, and the | |||
| policies of the network administrators and are installed through | ability of the network administrators to translate policies into | |||
| network configuration management and policy-based provisioning systems. | network configurations.</t> | |||
| Generally, the types of service provided by the network also depend | <t>Internet networks have two significant characteristics:</t> | |||
| upon the technology and characteristics of the network elements and | <ul spacing="normal"> | |||
| protocols, the prevailing service and utility models, and the ability | <li>They provide real-time services.</li> | |||
| of the network administrators to translate policies into network | <li>Their operating environments are very dynamic.</li> | |||
| configurations.</t> | </ul> | |||
| <t>The dynamic characteristics of IP and IP/MPLS networks can be | ||||
| <t>Internet networks have two significant characteristics: | attributed in part to fluctuations in demand, the interaction between | |||
| <list style="symbols"> | various network protocols and processes, the rapid evolution of the | |||
| <t>they provide real-time services</t> | infrastructure that demands the constant inclusion of new technologies | |||
| <t>their operating environments are very dynamic.</t> | and new network elements, and the transient and persistent faults that | |||
| </list></t> | occur within the system.</t> | |||
| <t>Packets contend for the use of network resources as they are | ||||
| <t>The dynamic characteristics of IP and IP/MPLS networks can be attributed | conveyed through the network. A network resource is considered to be | |||
| in part | congested if, for an interval of time, the arrival rate of packets | |||
| to fluctuations in demand, to the interaction between various network | exceeds the output capacity of the resource. Network congestion may | |||
| protocols and processes, to the rapid evolution of the infrastructure | result in some of the arriving packets being delayed or even | |||
| which demands the constant inclusion of new technologies and new network | dropped.</t> | |||
| elements, and to transient and persistent faults which occur within | <t>Network congestion increases transit delay and delay variation, may | |||
| the system.</t> | lead to packet loss, and reduces the predictability of network | |||
| services. Clearly, while congestion may be a useful tool at ingress | ||||
| <t>Packets contend for the use of network resources as they are conveyed | edge nodes, network congestion is highly undesirable. Combating | |||
| through the network. A network resource is considered to be | network congestion at a reasonable cost is a major objective of | |||
| congested if, for an interval of time, the arrival rate of packets | Internet TE, although it may need to be traded with other objectives to | |||
| exceeds the output capacity of the resource. Network congestion may resu | keep the costs reasonable.</t> | |||
| lt in | <t>Efficient sharing of network resources by multiple traffic flows is | |||
| some of the arriving packets being delayed or even dropped.</t> | a basic operational premise for the Internet. A fundamental challenge | |||
| in network operation is to increase resource utilization while | ||||
| <t>Network congestion increases transit delay and delay variation, may lead | minimizing the possibility of congestion.</t> | |||
| to packet loss, | <t>The Internet has to function in the presence of different classes | |||
| and reduces the predictability of network services. Clearly, while conge | of traffic with different service requirements. This requirement is | |||
| stion may | clarified in the architecture for Differentiated Services (Diffserv) | |||
| be a useful tool at ingress edge nodes, network congestion is highly unde | <xref target="RFC2475" format="default"/>. That document describes | |||
| sirable. | how packets can be grouped into behavior aggregates such that each | |||
| Combating network congestion at a reasonable cost is a major objective of | aggregate has a common set of behavioral characteristics or a common | |||
| Internet TE | set of delivery requirements. Delivery requirements of a specific set | |||
| although it may need to be traded with other objectives to keep the costs | of packets may be specified explicitly or implicitly. Two of the most | |||
| reasonable.</t> | important traffic delivery requirements are:</t> | |||
| <ul spacing="normal"> | ||||
| <t>Efficient sharing of network resources by multiple traffic flows is | <li>Capacity constraints can be expressed statistically as peak | |||
| a basic operational premise for the Internet. A fundamental challenge | rates, mean rates, burst sizes, or as some deterministic notion of | |||
| in network operation is to increase resource utilization while minimizing | effective bandwidth.</li> | |||
| the possibility of congestion.</t> | <li><t>QoS requirements can be expressed in terms of:</t> | |||
| <ul spacing="normal"> | ||||
| <t>The Internet has to function in the presence of different classes of | <li>integrity constraints, such as packet loss</li> | |||
| traffic with different service requirements. This requirement is | <li>temporal constraints, such as timing restrictions for the | |||
| clarified in the architecture for Differentiated Services (Diffserv) <xre | delivery of each packet (delay) and timing restrictions for the | |||
| f target="RFC2475" />. | delivery of consecutive packets belonging to the same traffic | |||
| That document describes how packets can be grouped into behavior aggregat | stream (delay variation)</li> | |||
| es such that | </ul> | |||
| each aggregate has a common set of behavioral characteristics or a common | </li> | |||
| set of delivery | </ul> | |||
| requirements. Delivery requirements of a specific set of packets may | </section> | |||
| be specified explicitly or implicitly. Two of the most important | <section anchor="PRBCTXT" numbered="true" toc="default"> | |||
| traffic delivery requirements are: | <name>Problem Context</name> | |||
| <t>There are several problems associated with operating a | ||||
| <list style="symbols"> | network like those described in the previous section. This section analy | |||
| zes | ||||
| <t>Capacity constraints can be expressed statistically as peak rates, | ||||
| mean rates, burst sizes, or as some deterministic notion of effecti | ||||
| ve | ||||
| bandwidth.</t> | ||||
| <t>QoS requirements can be expressed in terms of: | ||||
| <list style="symbols"> | ||||
| <t>integrity constraints such as packet loss</t> | ||||
| <t>temporal constraints such as timing restrictions for the deliv | ||||
| ery | ||||
| of each packet (delay) and timing restrictions for the deliver | ||||
| y of | ||||
| consecutive packets belonging to the same traffic stream (dela | ||||
| y | ||||
| variation).</t> | ||||
| </list></t> | ||||
| </list></t> | ||||
| </section> | ||||
| <section anchor="PRBCTXT" title="Problem Context"> | ||||
| <t>There are several problems associated with operating a | ||||
| network described in the previous section. This section analyzes | ||||
| the problem context in relation to TE. The | the problem context in relation to TE. The | |||
| identification, abstraction, representation, and measurement of | identification, abstraction, representation, and measurement of | |||
| network features relevant to TE are significant | network features relevant to TE are significant | |||
| issues.</t> | issues.</t> | |||
| <t>A particular challenge is to formulate the problems that traffic | ||||
| <t>A particular challenge is to formulate the problems that traffic | ||||
| engineering attempts to solve. For example: | engineering attempts to solve. For example: | |||
| <list style="symbols"> | </t> | |||
| <t>How to identify the requirements on the solution space?</t> | ||||
| <t>How to specify the desirable features of solutions?</t> | ||||
| <t>How to actually solve the problems?</t> | ||||
| <t>How to measure and characterize the effectiveness of | ||||
| solutions?</t> | ||||
| </list></t> | ||||
| <t>Another class of problems is how to measure and estimate | <ul spacing="normal"> | |||
| <li>How to identify the requirements on the solution space</li> | ||||
| <li>How to specify the desirable features of solutions</li> | ||||
| <li>How to actually solve the problems</li> | ||||
| <li>How to measure and characterize the effectiveness of | ||||
| solutions</li> | ||||
| </ul> | ||||
| <t>Another class of problems is how to measure and estimate | ||||
| relevant network state parameters. Effective TE | relevant network state parameters. Effective TE | |||
| relies on a good estimate of the offered traffic load as well as a | relies on a good estimate of the offered traffic load as well as a | |||
| view of the underlying topology and associated resource constraints. | view of the underlying topology and associated resource constraints. | |||
| Offline planning requires a full view of the topology of the network | Offline planning requires a full view of the topology of the network | |||
| or partial network that is being planned.</t> | or partial network that is being planned.</t> | |||
| <t>Still another class of problem is how to characterize the state of | ||||
| <t>Still another class of problem is how to characterize the | the network and how to evaluate its performance. The performance | |||
| state of the network and how to evaluate its performance. The | evaluation problem is two-fold: one aspect relates to the evaluation | |||
| performance evaluation problem is two-fold: one aspect relates to | of the system-level performance of the network, and the other aspect | |||
| the evaluation of the system-level performance of the network; the | relates to the evaluation of resource-level performance, which | |||
| other aspect relates to the evaluation of resource-level performance, | restricts attention to the performance analysis of individual network | |||
| which restricts attention to the performance analysis of individual | resources.</t> | |||
| network resources.</t> | <t>In this document, we refer to the system-level characteristics of | |||
| the network as the "macro-states" and the resource-level | ||||
| <t>In this document, we refer to the system-level characteristics of the | characteristics as the "micro-states." The system-level | |||
| network as the "macro-states" and the resource-level characteristics | characteristics are also known as the emergent properties of the | |||
| as the "micro-states." The system-level characteristics are also known | network. Correspondingly, we refer to the TE schemes dealing with | |||
| as the emergent properties of the network. Correspondingly, we refer | network performance optimization at the systems level as "macro-TE" | |||
| to the TE schemes dealing with network performance | and the schemes that optimize at the individual resource level as | |||
| optimization at the systems level as "macro-TE" and the schemes that | "micro-TE." Under certain circumstances, the system-level performance | |||
| optimize at the individual resource level as "micro-TE." Under | can be derived from the resource-level performance using appropriate | |||
| certain circumstances, the system-level performance can be derived | rules of composition, depending upon the particular performance | |||
| from the resource-level performance using appropriate rules of | measures of interest.</t> | |||
| composition, depending upon the particular performance measures of | <t>Another fundamental class of problem concerns how to effectively | |||
| interest.</t> | ||||
| <t>Another fundamental class of problem concerns how to effectively | ||||
| optimize network performance. Performance optimization may entail | optimize network performance. Performance optimization may entail | |||
| translating solutions for specific TE problems into | translating solutions for specific TE problems into | |||
| network configurations. Optimization may also entail some degree of | network configurations. Optimization may also entail some degree of | |||
| resource management control, routing control, and capacity | resource management control, routing control, and capacity | |||
| augmentation.</t> | augmentation.</t> | |||
| <section anchor="CONGEST" numbered="true" toc="default"> | ||||
| <section anchor="CONGEST" title="Congestion and its Ramifications"> | <name>Congestion and Its Ramifications</name> | |||
| <t>Network congestion is one of the most significant problems in an op | ||||
| <t>Network congestion is one of the most significant problems in an operat | erational | |||
| ional | ||||
| IP context. A network element is said to be congested if it | IP context. A network element is said to be congested if it | |||
| experiences sustained overload over an interval of time. Although cong estion | experiences sustained overload over an interval of time. Although cong estion | |||
| at the edge of the network may be beneficial in ensuring that the netwo rk | at the edge of the network may be beneficial in ensuring that the netwo rk | |||
| delivers as much traffic as possible, network congestion | delivers as much traffic as possible, network congestion | |||
| almost always results in degradation of service quality to end users. | almost always results in degradation of service quality to end users. | |||
| Congestion avoidance and response schemes can include demand-side polic ies and | Congestion avoidance and response schemes can include demand-side polic ies and | |||
| supply-side policies. Demand-side policies may restrict access to | supply-side policies. Demand-side policies may restrict access to | |||
| congested resources or dynamically regulate the demand to alleviate | congested resources or dynamically regulate the demand to alleviate | |||
| the overload situation. Supply-side policies may expand or augment | the overload situation. Supply-side policies may expand or augment | |||
| network capacity to better accommodate offered traffic. Supply-side | network capacity to better accommodate offered traffic. Supply-side | |||
| policies may also re-allocate network resources by redistributing | policies may also reallocate network resources by redistributing | |||
| traffic over the infrastructure. Traffic redistribution and resource | traffic over the infrastructure. Traffic redistribution and resource | |||
| re-allocation serve to increase the 'effective capacity' of the network | reallocation serve to increase the effective capacity of the network.</ | |||
| .</t> | t> | |||
| <t>The emphasis of this document is primarily on congestion management | ||||
| <t>The emphasis of this document is primarily on congestion management | ||||
| schemes falling within the scope of the network, rather than on | schemes falling within the scope of the network, rather than on | |||
| congestion management systems dependent upon sensitivity and | congestion management systems dependent upon sensitivity and | |||
| adaptivity from end-systems. That is, the aspects that are | adaptivity from end systems. That is, the aspects that are | |||
| considered in this document with respect to congestion management are | considered in this document with respect to congestion management are | |||
| those solutions that can be provided by control entities operating on | those solutions that can be provided by control entities operating on | |||
| the network and by the actions of network administrators and network | the network and by the actions of network administrators and network | |||
| operations systems.</t> | operations systems.</t> | |||
| </section> | ||||
| </section> | ||||
| <section anchor="SLNCTXT" numbered="true" toc="default"> | ||||
| <name>Solution Context</name> | ||||
| <t>The solution context for Internet TE involves analysis, | ||||
| evaluation of alternatives, and choice between alternative courses | ||||
| of action. Generally, the solution context is based on making | ||||
| inferences about the current or future state of the network and making | ||||
| decisions that may involve a preference between alternative sets of | ||||
| action. More specifically, the solution context demands reasonable | ||||
| estimates of traffic workload, characterization of network state, | ||||
| derivation of solutions that may be implicitly or explicitly | ||||
| formulated, and possibly instantiation of a set of control | ||||
| actions. Control actions may involve the manipulation of parameters | ||||
| associated with routing, control over tactical capacity acquisition, | ||||
| and control over the traffic management functions.</t> | ||||
| <t>The following list of instruments may be applicable to the solution | ||||
| context of Internet TE:</t> | ||||
| <ul spacing="normal"> | ||||
| <li>A set of policies, objectives, and requirements (which may be | ||||
| context dependent) for network performance evaluation and | ||||
| performance optimization.</li> | ||||
| <li>A collection of online and, in some cases, possibly offline tools | ||||
| and mechanisms for measurement, characterization, modeling, | ||||
| control of traffic, control over the placement and allocation of | ||||
| network resources, as well as control over the mapping or | ||||
| distribution of traffic onto the infrastructure.</li> | ||||
| <li>A set of constraints on the operating environment, the network | ||||
| protocols, and the TE system itself.</li> | ||||
| <li>A set of quantitative and qualitative techniques and | ||||
| methodologies for abstracting, formulating, and solving TE | ||||
| problems.</li> | ||||
| <li>A set of administrative control parameters that may be | ||||
| manipulated through a configuration management system. Such a | ||||
| system may itself include a configuration control subsystem, a | ||||
| configuration repository, a configuration accounting subsystem, and | ||||
| a configuration auditing subsystem.</li> | ||||
| <li>A set of guidelines for network performance evaluation, | ||||
| performance optimization, and performance improvement.</li> | ||||
| </ul> | ||||
| <t>Determining traffic characteristics through measurement or | ||||
| estimation is very useful within the realm of the TE solution space. | ||||
| Traffic estimates can be derived from customer subscription | ||||
| information, traffic projections, traffic models, and actual | ||||
| measurements. The measurements may be performed at different levels, | ||||
| e.g., at the traffic-aggregate level or at the flow level. | ||||
| Measurements at the flow level or on small traffic aggregates may be | ||||
| performed at edge nodes, when traffic enters and leaves the network. | ||||
| Measurements for large traffic aggregates may be performed within the | ||||
| core of the network.</t> | ||||
| <t>To conduct performance studies and to support planning of existing | ||||
| and future networks, a routing analysis may be performed to determine | ||||
| the paths the routing protocols will choose for various traffic | ||||
| demands and to ascertain the utilization of network resources as | ||||
| traffic is routed through the network. Routing analysis captures the | ||||
| selection of paths through the network, the assignment of traffic | ||||
| across multiple feasible routes, and the multiplexing of IP traffic | ||||
| over traffic trunks (if such constructs exist) and over the underlying | ||||
| network infrastructure. A model of network topology is necessary to | ||||
| perform routing analysis. A network topology model may be extracted | ||||
| from: | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li>network architecture documents</li> | ||||
| <li>network designs</li> | ||||
| <li>information contained in router configuration files</li> | ||||
| <li>routing databases such as the link-state database of an Interior | ||||
| Gateway Protocol (IGP)</li> | ||||
| <li>routing tables</li> | ||||
| <li>automated tools that discover and collate network topology | ||||
| information</li> | ||||
| </ul> | ||||
| <t>Topology information may also be derived from servers that monitor | ||||
| network state and from servers that perform provisioning | ||||
| functions.</t> | ||||
| <t>Routing in operational IP networks can be administratively | ||||
| controlled at various levels of abstraction, including the manipulation | ||||
| of BGP attributes and IGP metrics. For path-oriented technologies | ||||
| such as MPLS, routing can be further controlled by the manipulation of | ||||
| relevant TE parameters, resource parameters, and administrative policy | ||||
| constraints. Within the context of MPLS, the path of an explicitly | ||||
| routed LSP can be computed and established in | ||||
| various ways, including: | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li>manually</li> | ||||
| <li>automatically and online using constraint-based routing processes | ||||
| implemented on Label Switching Routers (LSRs)</li> | ||||
| <li>automatically and offline using constraint-based routing entities | ||||
| implemented on external TE support systems</li> | ||||
| </ul> | ||||
| <section anchor="COMBAT" numbered="true" toc="default"> | ||||
| <name>Combating the Congestion Problem</name> | ||||
| <t>Minimizing congestion is a significant aspect of Internet traffic | ||||
| engineering. This subsection gives an overview of the general | ||||
| approaches that have been used or proposed to combat congestion.</t> | ||||
| <t>Congestion management policies can be categorized based upon the | ||||
| following criteria (see <xref target="YARE95" format="default"/> for | ||||
| a more detailed taxonomy of congestion control schemes):</t> | ||||
| <ol spacing="normal" type="1"><li> | ||||
| <t>Congestion Management Based on Response Timescales </t> | ||||
| <ul spacing="normal"> | ||||
| <li>Long (weeks to months): Expanding network capacity by | ||||
| adding new equipment, routers, and links takes time and is | ||||
| comparatively costly. Capacity planning needs to take this | ||||
| into consideration. Network capacity is expanded based on | ||||
| estimates or forecasts of future traffic development and | ||||
| traffic distribution. These upgrades are typically carried | ||||
| out over weeks, months, or maybe even years.</li> | ||||
| <li><t>Medium (minutes to days): Several control policies fall | ||||
| within the medium timescale category. Examples include:</t> | ||||
| <ol spacing="normal" type="a"> | ||||
| <li>Adjusting routing protocol parameters to route traffic | ||||
| away from or towards certain segments of the network.</li> | ||||
| <li>Setting up or adjusting explicitly routed LSPs in MPLS | ||||
| networks to route traffic trunks away from possibly | ||||
| congested resources or toward possibly more favorable | ||||
| routes.</li> | ||||
| <li>Reconfiguring the logical topology of the network to | ||||
| make it correlate more closely with the spatial traffic | ||||
| distribution using, for example, an underlying | ||||
| path-oriented technology such as MPLS LSPs or optical | ||||
| channel trails.</li> | ||||
| </ol> | ||||
| <t>When these schemes are adaptive, they rely on measurement | ||||
| systems. A measurement system monitors changes in traffic | ||||
| distribution, traffic loads, and network resource | ||||
| utilization and then provides feedback to the online or | ||||
| offline TE mechanisms and tools so that they can trigger | ||||
| control actions within the network. The TE mechanisms and | ||||
| tools can be implemented in a distributed or centralized | ||||
| fashion. A centralized scheme may have full visibility into | ||||
| the network state and may produce more optimal solutions. | ||||
| However, centralized schemes are prone to single points of | ||||
| failure and may not scale as well as distributed schemes. | ||||
| Moreover, the information utilized by a centralized scheme | ||||
| may be stale and might not reflect the actual state of the | ||||
| network. It is not an objective of this document to make a | ||||
| recommendation between distributed and centralized schemes; | ||||
| that is a choice that network administrators must make based | ||||
| on their specific needs.</t> | ||||
| </li> | ||||
| <li>Short (minutes or less): This category includes | ||||
| packet-level processing functions and events that are recorded | ||||
| on the order of several round-trip times. It also includes | ||||
| router mechanisms such as passive and active buffer | ||||
| management. All of these mechanisms are used to control | ||||
| congestion or signal congestion to end systems so that they | ||||
| can adaptively regulate the rate at which traffic is injected | ||||
| into the network. A well-known active queue management | ||||
| scheme, especially for responsive traffic such as TCP, is | ||||
| Random Early Detection (RED) <xref target="FLJA93" | ||||
| format="default"/>. During congestion (but before the queue | ||||
| is filled), the RED scheme chooses arriving packets to "mark" | ||||
| according to a probabilistic algorithm that takes into account | ||||
| the average queue size. A router that does not utilize | ||||
| Explicit Congestion Notification (ECN) <xref target="RFC3168" | ||||
| format="default"/> can simply drop marked packets to alleviate | ||||
| congestion and implicitly notify the receiver about the | ||||
| congestion. On the other hand, if the router and the end | ||||
| hosts support ECN, they can set the ECN field in the packet | ||||
| header, and the end host can act on this information. Several | ||||
| variations of RED have been proposed to support different drop | ||||
| precedence levels in multi-class environments <xref | ||||
| target="RFC2597" format="default"/>. RED provides congestion | ||||
| avoidance that is better than or equivalent to Tail-Drop (TD) | ||||
| queue management (drop arriving packets only when the queue is | ||||
| full). Importantly, RED reduces the possibility of | ||||
| retransmission bursts becoming synchronized within the network | ||||
| and improves fairness among different responsive traffic | ||||
| sessions. However, RED by itself cannot prevent congestion | ||||
| and unfairness caused by sources unresponsive to RED, e.g., | ||||
| some misbehaved greedy connections. Other schemes have been | ||||
| proposed to improve performance and fairness in the presence | ||||
| of unresponsive traffic. Some of those schemes (such as | ||||
| Longest Queue Drop (LQD) and Dynamic Soft Partitioning with | ||||
| Random Drop (RND) <xref target="SLDC98" format="default"/>) | ||||
| were proposed as theoretical frameworks and are typically not | ||||
| available in existing commercial products, while others (such | ||||
| as Approximate Fair Dropping (AFD) <xref target="AFD03" | ||||
| format="default"/>) have seen some implementation. Advice on | ||||
| the use of Active Queue Management (AQM) schemes is provided | ||||
| in <xref target="RFC7567" format="default"/>. <xref | ||||
| target="RFC7567" format="default"/> recommends self-tuning AQM | ||||
| algorithms like those that the IETF has published in <xref | ||||
| target="RFC8290" format="default"/>, <xref target="RFC8033" | ||||
| format="default"/>, <xref target="RFC8034" format="default"/>, | ||||
| and <xref target="RFC9332" format="default"/>, but RED is | ||||
| still appropriate for links with stable bandwidth, if | ||||
| configured carefully.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li><t>Reactive versus Preventive Congestion Management Schemes | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li>Reactive (recovery) congestion management policies react | ||||
| to existing congestion problems. All the policies described | ||||
| above for the short and medium timescales can be categorized | ||||
| as being reactive. They are based on monitoring and | ||||
| identifying congestion problems that exist in the network and | ||||
| on the initiation of relevant actions to ease a situation. | ||||
| Reactive congestion management schemes may also be | ||||
| preventive.</li> | ||||
| <li>Preventive (predictive/avoidance) policies take proactive | ||||
| action to prevent congestion based on estimates and | ||||
| predictions of future congestion problems (e.g., traffic | ||||
| matrix forecasts). Some of the policies described for the | ||||
| long and medium timescales fall into this category. | ||||
| Preventive policies do not necessarily respond immediately to | ||||
| existing congestion problems. Instead, forecasts of traffic | ||||
| demand and workload distribution are considered, and action | ||||
| may be taken to prevent potential future congestion problems. | ||||
| The schemes described for the short timescale can also be used | ||||
| for congestion avoidance because dropping or marking packets | ||||
| before queues actually overflow would trigger corresponding | ||||
| responsive traffic sources to slow down. Preventive | ||||
| congestion management schemes may also be reactive.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li><t>Supply-Side versus Demand-Side Congestion Management | ||||
| Schemes</t> | ||||
| <ul spacing="normal"> | ||||
| <li>Supply-side congestion management policies increase the | ||||
| effective capacity available to traffic in order to control or | ||||
| reduce congestion. This can be accomplished by increasing | ||||
| capacity or by balancing distribution of traffic over the | ||||
| network. | ||||
| Capacity planning aims to provide a physical | ||||
| topology and associated link bandwidths that match or exceed | ||||
| estimated traffic workload and traffic distribution, subject to | ||||
| traffic forecasts and budgetary (or other) constraints. If the | ||||
| actual traffic distribution does not fit the topology derived | ||||
| from capacity planning, then the traffic can be mapped onto | ||||
| the topology by using routing control mechanisms, by applying | ||||
| path-oriented technologies (e.g., MPLS LSPs and optical | ||||
| channel trails) to modify the logical topology or by | ||||
| employing some other load redistribution mechanisms.</li> | ||||
| <li>Demand-side congestion management policies control or | ||||
| regulate the offered traffic to alleviate congestion problems. | ||||
| For example, some of the short timescale mechanisms described | ||||
| earlier as well as policing and rate-shaping mechanisms | ||||
| attempt to regulate the offered load in various ways.</li> | ||||
| </ul> | ||||
| </li> | ||||
| </ol> | ||||
| </section> | </section> | |||
| </section> | ||||
| </section> | <section anchor="IMPCTXT" numbered="true" toc="default"> | |||
| <name>Implementation and Operational Context</name> | ||||
| <section anchor="SLNCTXT" title="Solution Context"> | <t>The operational context of Internet TE is | |||
| <t>The solution context for Internet TE involves | ||||
| analysis, evaluation of alternatives, and choice between alternative | ||||
| courses of action. Generally, the solution context is based on | ||||
| making inferences about the current or future state of the | ||||
| network, and making decisions that may involve a preference between | ||||
| alternative sets of action. More specifically, the solution context | ||||
| demands reasonable estimates of traffic workload, characterization of | ||||
| network state, derivation of solutions which may be implicitly or | ||||
| explicitly formulated, and possibly instantiating a set of control | ||||
| actions. Control actions may involve the manipulation of parameters | ||||
| associated with routing, control over tactical capacity acquisition, | ||||
| and control over the traffic management functions.</t> | ||||
| <t>The following list of instruments may be applicable to the solution | ||||
| context of Internet TE.</t> | ||||
| <t><list style="symbols"> | ||||
| <t>A set of policies, objectives, and requirements (which may | ||||
| be context dependent) for network performance evaluation and | ||||
| performance optimization.</t> | ||||
| <t>A collection of online and in some cases possibly offline tools and m | ||||
| echanisms | ||||
| for measurement, characterization, modeling, and control of traffic, | ||||
| and control over the placement and allocation of network resources, | ||||
| as well as control over the mapping or distribution of traffic onto | ||||
| the infrastructure.</t> | ||||
| <t>A set of constraints on the operating environment, the network | ||||
| protocols, and the TE system itself.</t> | ||||
| <t>A set of quantitative and qualitative techniques and methodologies | ||||
| for abstracting, formulating, and solving TE | ||||
| problems.</t> | ||||
| <t>A set of administrative control parameters which may be | ||||
| manipulated through a configuration management system. Such a | ||||
| system may, itself, include a configuration control subsystem, | ||||
| a configuration repository, a configuration accounting subsystem, | ||||
| and a configuration auditing subsystem.</t> | ||||
| <t>A set of guidelines for network performance evaluation, | ||||
| performance optimization, and performance improvement.</t> | ||||
| </list></t> | ||||
| <t>Determining traffic characteristics through measurement or | ||||
| estimation is very useful within the realm of the TE | ||||
| solution space. Traffic estimates can be derived from customer | ||||
| subscription information, traffic projections, traffic models, and | ||||
| from actual measurements. The measurements may be performed at | ||||
| different levels, e.g., at the traffic-aggregate level or at the flow | ||||
| level. Measurements at the flow level or on small traffic aggregates | ||||
| may be performed at edge nodes, when traffic enters and leaves the | ||||
| network. Measurements for large traffic-aggregates may be performed | ||||
| within the core of the network.</t> | ||||
| <t>To conduct performance studies and to support planning of existing | ||||
| and future networks, a routing analysis may be performed to determine | ||||
| the paths the routing protocols will choose for various traffic | ||||
| demands, and to ascertain the utilization of network resources as | ||||
| traffic is routed through the network. Routing analysis captures the | ||||
| selection of paths through the network, the assignment of traffic across | ||||
| multiple feasible routes, and the multiplexing of IP traffic over traffic | ||||
| trunks (if such constructs exist) and over the underlying network | ||||
| infrastructure. A model of network topology is necessary to perform | ||||
| routing analysis. A network topology model may be extracted from: | ||||
| <list style="symbols"> | ||||
| <t>network architecture documents</t> | ||||
| <t>network designs</t> | ||||
| <t>information contained in router configuration files</t> | ||||
| <t>routing databases such as the link state database of an interior | ||||
| gateway protocol (IGP)</t> | ||||
| <t>routing tables</t> | ||||
| <t>automated tools that discover and collate network topology | ||||
| information.</t> | ||||
| </list></t> | ||||
| <t>Topology information may also be derived from servers that monitor | ||||
| network state, and from servers that perform provisioning functions.</t> | ||||
| <t>Routing in operational IP networks can be administratively controlled | ||||
| at various levels of abstraction including the manipulation of BGP | ||||
| attributes and IGP metrics. For path-oriented | ||||
| technologies such as MPLS, routing can be further controlled by the manip | ||||
| ulation | ||||
| of relevant TE parameters, resource parameters, and administrative | ||||
| policy constraints. Within the context of MPLS, the path of an explicitl | ||||
| y | ||||
| routed label switched path (LSP) can be computed and established in vario | ||||
| us | ||||
| ways including: | ||||
| <list style="symbols"> | ||||
| <t>manually</t> | ||||
| <t>automatically, online using constraint-based routing processes | ||||
| implemented on label switching routers</t> | ||||
| <t>automatically, offline using constraint-based routing entities | ||||
| implemented on external TE support systems.</t> | ||||
| </list></t> | ||||
| <section anchor="COMBAT" title="Combating the Congestion Problem"> | ||||
| <t>Minimizing congestion is a significant aspect of Internet traffic | ||||
| engineering. This subsection gives an overview of the general | ||||
| approaches that have been used or proposed to combat congestion.</t> | ||||
| <t>Congestion management policies can be categorized based upon the | ||||
| following criteria (see <xref target="YARE95" /> for a more | ||||
| detailed taxonomy of congestion control schemes): | ||||
| <list style="numbers"> | ||||
| <t>Congestion Management Based on Response Timescales | ||||
| <list style="symbols"> | ||||
| <t>Long (weeks to months): Expanding network capacity by adding | ||||
| new | ||||
| equipment, routers, and links takes time and is comparatively | ||||
| costly. Capacity planning needs to take this into considerat | ||||
| ion. | ||||
| Network capacity is expanded based on estimates or forecasts | ||||
| of | ||||
| future traffic development and traffic distribution. These | ||||
| upgrades are typically carried out over weeks or months, or m | ||||
| aybe | ||||
| even years.</t> | ||||
| <t>Medium (minutes to days): Several control policies fall withi | ||||
| n the | ||||
| medium timescale category. Examples include: | ||||
| <list style="letters"> | ||||
| <t>Adjusting routing protocol parameters to route traffic a | ||||
| way from or | ||||
| towards certain segments of the network.</t> | ||||
| <t>Setting up or adjusting explicitly routed LSPs in MPLS | ||||
| networks to route traffic trunks away from possibly | ||||
| congested resources or toward possibly more favorable ro | ||||
| utes.</t> | ||||
| <t>Re-configuring the logical topology of the network to ma | ||||
| ke it | ||||
| correlate more closely with the spatial traffic distribu | ||||
| tion | ||||
| using, for example, an underlying path-oriented technolo | ||||
| gy such | ||||
| as MPLS LSPs or optical channel trails.</t> | ||||
| </list> | ||||
| When these schemes are adaptive, they rely on measurement sys | ||||
| tems. A measurement | ||||
| system monitors changes in traffic distribution, traffic load | ||||
| s, and network | ||||
| resource utilization and then provides feedback to the online | ||||
| or offline | ||||
| TE mechanisms and tools so that they can trigger control | ||||
| actions within the network. The TE mechanisms and tools | ||||
| can be implemented in a distributed or centralized fashion. | ||||
| A centralized | ||||
| scheme may have full visibility into the network state and ma | ||||
| y produce | ||||
| more optimal solutions. However, centralized schemes are pro | ||||
| ne to single | ||||
| points of failure and may not scale as well as distributed sc | ||||
| hemes. Moreover, | ||||
| the information utilized by a centralized scheme may be stale | ||||
| and might not | ||||
| reflect the actual state of the network. It is not an object | ||||
| ive of this | ||||
| document to make a recommendation between distributed and cen | ||||
| tralized | ||||
| schemes: that is a choice that network administrators must ma | ||||
| ke based on | ||||
| their specific needs.</t> | ||||
| <t>Short (minutes or less): This category includes packet level | ||||
| processing functions and events that are recorded on the orde | ||||
| r of several | ||||
| round-trip times. It also includes router mechanisms such as | ||||
| passive and | ||||
| active buffer management. All of these mechanisms are used t | ||||
| o control | ||||
| congestion or signal congestion to end systems so that they c | ||||
| an adaptively | ||||
| regulate the rate at which traffic is injected into the netwo | ||||
| rk. A well-known | ||||
| active queue management scheme, especially for | ||||
| responsive traffic such as TCP, is Random Early Detection (RE | ||||
| D) <xref target="FLJA93"/>. | ||||
| During congestion (but before the queue is filled), the RED s | ||||
| cheme chooses | ||||
| arriving packets to "mark" according to a probabilistic algor | ||||
| ithm | ||||
| which takes into account the average queue size. A router th | ||||
| at does not | ||||
| utilize explicit congestion notification (ECN) <xref target=" | ||||
| RFC3168" /> can | ||||
| simply drop marked packets to alleviate congestion and implic | ||||
| itly notify the | ||||
| receiver about the congestion. On the other hand, if the rou | ||||
| ter and the end hosts support ECN, | ||||
| they can set the ECN field in the packet header, and the end | ||||
| host can act on this | ||||
| information. Several variations of RED have | ||||
| been proposed to support different drop precedence levels in | ||||
| multi-class | ||||
| environments <xref target="RFC2597"/>. RED provides congesti | ||||
| on avoidance | ||||
| which is better than or equivalent to traditional Tail-Drop ( | ||||
| TD) queue management (drop | ||||
| arriving packets only when the queue is full). Importantly, | ||||
| RED reduces the | ||||
| possibility of retransmission bursts becoming synchronized wi | ||||
| thin the network, | ||||
| and improves fairness among different | ||||
| responsive traffic sessions. However, RED by itself cannot p | ||||
| revent congestion and unfairness | ||||
| caused by sources unresponsive to RED, e.g., some misbehaved | ||||
| greedy connections. | ||||
| Other schemes have been proposed to improve performance | ||||
| and fairness in the presence of unresponsive traffic. Some o | ||||
| f those schemes | ||||
| (such as Longest Queue Drop (LQD) and Dynamic Soft Partitioni | ||||
| ng with Random Drop | ||||
| (RND) <xref target="SLDC98"/>) were proposed as theoretical f | ||||
| rameworks and are | ||||
| typically not available in existing commercial products, whil | ||||
| e others (such as | ||||
| Approximate Fairness Through Differential Dropping (AFD) <xre | ||||
| f target="AFD03" /> | ||||
| have seen some implementation. Advice on the use of | ||||
| Active Queue Management (AQM) schemes is provided in <xref ta | ||||
| rget="RFC7567" />. | ||||
| <xref target="RFC7567" /> recommends self-tuning AQM algorith | ||||
| ms like those that | ||||
| the IETF has published in <xref target="RFC8290" />, <xref ta | ||||
| rget="RFC8033" />, | ||||
| <xref target="RFC8034" />, and <xref target="RFC9332" />, but | ||||
| RED is still | ||||
| appropriate for links with stable bandwidth, if configured ca | ||||
| refully.</t> | ||||
| </list></t> | ||||
| <t>Reactive Versus Preventive Congestion Management Schemes | ||||
| <list style="symbols"> | ||||
| <t>Reactive (recovery) congestion management policies react | ||||
| to existing congestion problems. All the policies described | ||||
| above for | ||||
| the short and medium timescales can be categorized as being r | ||||
| eactive. | ||||
| They are based on monitoring and identifying congestion probl | ||||
| ems that | ||||
| exist in the network, and on the initiation of relevant actio | ||||
| ns to ease | ||||
| a situation. Reactive congestion management schemes may also | ||||
| be preventive.</t> | ||||
| <t>Preventive (predictive/avoidance) policies take proactive | ||||
| action to prevent congestion based on estimates and predictio | ||||
| ns of future | ||||
| congestion problems (e.g., traffic matrix forecasts). Some o | ||||
| f the policies | ||||
| described for the long and medium timescales fall into this c | ||||
| ategory. | ||||
| Preventive policies do not necessarily respond immediately to | ||||
| existing | ||||
| congestion problems. Instead, forecasts of traffic demand an | ||||
| d workload | ||||
| distribution are considered, and action may be taken to preve | ||||
| nt potential | ||||
| future congestion problems. The schemes described for the sh | ||||
| ort timescale | ||||
| can also be used for congestion avoidance because dropping or | ||||
| marking packets | ||||
| before queues actually overflow would trigger corresponding r | ||||
| esponsive traffic sources to | ||||
| slow down. Preventive congestion management schemes may also | ||||
| be reactive.</t> | ||||
| </list></t> | ||||
| <t>Supply-Side Versus Demand-Side Congestion Management Schemes | ||||
| <list style="symbols"> | ||||
| <t>Supply-side congestion management policies increase | ||||
| the effective capacity available to traffic in order to contr | ||||
| ol or | ||||
| reduce congestion. This can be accomplished by increasing ca | ||||
| pacity | ||||
| or by balancing distribution of traffic over the network. Ca | ||||
| pacity | ||||
| planning aims to provide a physical topology and associated l | ||||
| ink | ||||
| bandwidths that match or exceed estimated traffic workload an | ||||
| d traffic | ||||
| distribution subject to traffic forecasts and budgetary or ot | ||||
| her | ||||
| constraints. If the actual traffic distribution does not fit | ||||
| the | ||||
| topology derived from capacity planning, then the traffic can | ||||
| be mapped | ||||
| onto the topology by using routing control mechanisms, by app | ||||
| lying path | ||||
| oriented technologies (e.g., MPLS LSPs and optical channel tr | ||||
| ails) to | ||||
| modify the logical topology, or by employing some other load | ||||
| redistribution | ||||
| mechanisms.</t> | ||||
| <t>Demand-side congestion management policies control or | ||||
| regulate the offered traffic to alleviate congestion problems | ||||
| . For | ||||
| example, some of the short timescale mechanisms described ear | ||||
| lier | ||||
| as well as policing and rate-shaping mechanisms attempt to re | ||||
| gulate the | ||||
| offered load in various ways.</t> | ||||
| </list></t> | ||||
| </list></t> | ||||
| </section> | ||||
| </section> | ||||
| <section anchor="IMPCTXT" title="Implementation and Operational Context"> | ||||
| <t>The operational context of Internet TE is | ||||
| characterized by constant changes that occur at multiple levels of | characterized by constant changes that occur at multiple levels of | |||
| abstraction. The implementation context demands effective planning, | abstraction. The implementation context demands effective planning, | |||
| organization, and execution. The planning aspects may involve | organization, and execution. The planning aspects may involve | |||
| determining prior sets of actions to achieve desired objectives. | determining prior sets of actions to achieve desired objectives. | |||
| Organizing involves arranging and assigning responsibility to the | Organizing involves arranging and assigning responsibility to the | |||
| various components of the TE system and coordinating | various components of the TE system and coordinating | |||
| the activities to accomplish the desired TE objectives. Execution | the activities to accomplish the desired TE objectives. Execution | |||
| involves measuring and applying corrective or perfective actions to | involves measuring and applying corrective or perfective actions to | |||
| attain and maintain desired TE goals.</t> | attain and maintain desired TE goals.</t> | |||
| </section> | ||||
| </section> | </section> | |||
| <section anchor="TEPROC" numbered="true" toc="default"> | ||||
| </section> | <name>Traffic-Engineering Process Models</name> | |||
| <t>This section describes a generic process model that captures the | ||||
| <section anchor="TEPROC" title="Traffic Engineering Process Models"> | high-level practical aspects of Internet traffic engineering in an | |||
| operational context. The process model is described as a sequence of | ||||
| <t>This section describes a generic process model that captures the | actions that must be carried out to optimize the performance of an | |||
| high-level practical aspects of Internet traffic engineering in an | operational network (see also <xref target="RFC2702" format="default"/> | |||
| operational context. The process model is described as a sequence | and <xref target="AWD2" format="default"/>). This process model may be | |||
| of actions that must be carried out to optimize the performance of an | enacted explicitly or implicitly, by a software process or by a | |||
| operational network (see also <xref target="RFC2702" />, | human.</t> | |||
| <xref target="AWD2"/>). This process model may be enacted explicitly | <t>The TE process model is iterative <xref target="AWD2" | |||
| or implicitly, by a software process or by a human.</t> | format="default"/>. The four phases of the process model described | |||
| below are repeated as a continual sequence:</t> | ||||
| <t>The TE process model is iterative <xref target="AWD2" />. The four | <ol spacing="normal" type="1"> | |||
| phases of the process model described below are repeated as a continual | <li>Define the relevant control policies that govern the operation of | |||
| sequence. | the network.</li> | |||
| <li>Acquire measurement data from the operational network.</li> | ||||
| <list style="symbols"> | <li>Analyze the network state and characterize the traffic workload. | |||
| Proactive analysis identifies potential problems that could manifest | ||||
| <t>Define the relevant control policies that govern the operation | in the future. Reactive analysis identifies existing problems and | |||
| of the network.</t> | determines their causes.</li> | |||
| <li>Optimize the performance of the network. This involves a decision | ||||
| <t>Acquire measurement data from the operational network.</t> | process that selects and implements a set of actions from a set of | |||
| alternatives given the results of the three previous steps. | ||||
| <t>Analyze the network state and characterize the traffic workload. | Optimization actions may include the use of techniques to control the | |||
| Proactive analysis identifies potential problems that could | offered traffic and to control the distribution of traffic across the | |||
| manifest in the future. Reactive analysis identifies | network.</li> | |||
| existing problems and determines their causes.</t> | </ol> | |||
| <section anchor="COMPONENT" numbered="true" toc="default"> | ||||
| <t>Optimize the performance of the network. This involves a decision | <name>Components of the Traffic-Engineering Process Model</name> | |||
| process which selects and implements a set of actions from a set | <t>The key components of the traffic-engineering process model are as | |||
| of alternatives given the results of the three previous steps. | follows:</t> | |||
| Optimization actions may include the use of techniques to control the | <ol spacing="normal" type="1"><li>Measurement is crucial to the TE | |||
| offered traffic and to control the distribution of traffic across the | function. The operational state of a network can only be conclusively | |||
| network.</t> | determined through measurement. Measurement is also critical to the | |||
| optimization function because it provides feedback data that is used | ||||
| </list></t> | by TE control subsystems. This data is used to adaptively optimize | |||
| network performance in response to events and stimuli originating | ||||
| <section anchor="COMPONENT" title="Components of the Traffic Engineering Proce | within and outside the network. Measurement in support of the TE | |||
| ss Model"> | function can occur at different levels of abstraction. For example, | |||
| measurement can be used to derive packet-level characteristics, flow-lev | ||||
| <t>The key components of the traffic engineering process model are as follo | el characteristics, user- or customer-level characteristics, traffic-aggregate c | |||
| ws. | haracteristics, component-level characteristics, and | |||
| network-wide characteristics.</li> | ||||
| <list style="numbers"> | <li>Modeling, analysis, and simulation are important aspects of | |||
| Internet TE. Modeling involves constructing an abstract or physical | ||||
| <t>Measurement is crucial to the TE function. The | representation that depicts relevant traffic characteristics and | |||
| operational state of a network can only be conclusively determined | network attributes. A network model is an abstract representation | |||
| through measurement. Measurement is also critical to the | of the network that captures relevant network features, attributes, | |||
| optimization function because it provides feedback data which is | and characteristics. Network simulation tools are extremely useful | |||
| used by TE control subsystems. This data is | for TE. Because of the complexity of realistic quantitative | |||
| used to adaptively optimize network performance in response to | analysis of network behavior, certain aspects of network performance | |||
| events and stimuli originating within and outside the network. | studies can only be conducted effectively using simulation.</li> | |||
| Measurement in support of the TE function can occur at different | <li>Network performance optimization involves resolving network | |||
| levels of abstraction. For example, measurement can be used to | ||||
| derive packet level characteristics, flow level characteristics, | ||||
| user or customer level characteristics, traffic aggregate | ||||
| characteristics, component level characteristics, and network-wide | ||||
| characteristics.</t> | ||||
| <t>Modeling, analysis, and simulation are important aspects of | ||||
| Internet TE. Modeling involves constructing an | ||||
| abstract or physical representation which depicts relevant traffic | ||||
| characteristics and network attributes. A network model is an | ||||
| abstract representation of the network which captures relevant | ||||
| network features, attributes, and characteristics. Network | ||||
| simulation tools are extremely useful for TE. | ||||
| Because of the complexity of realistic quantitative analysis of | ||||
| network behavior, certain aspects of network performance studies | ||||
| can only be conducted effectively using simulation.</t> | ||||
| <t>Network performance optimization involves resolving network | ||||
| issues by transforming such issues into concepts that enable a | issues by transforming such issues into concepts that enable a | |||
| solution, identification of a solution, and implementation of the | solution, identification of a solution, and implementation of the | |||
| solution. Network performance optimization can be corrective or | solution. Network performance optimization can be corrective or | |||
| perfective. In corrective optimization, the goal is to remedy a | perfective. In corrective optimization, the goal is to remedy a | |||
| problem that has occurred or that is incipient. In perfective | problem that has occurred or that is incipient. In perfective | |||
| optimization, the goal is to improve network performance even | optimization, the goal is to improve network performance even | |||
| when explicit problems do not exist and are not anticipated.</t> | when explicit problems do not exist and are not anticipated.</li> | |||
| </ol> | ||||
| </list></t> | </section> | |||
| </section> | ||||
| </section> | <section anchor="TAXI" numbered="true" toc="default"> | |||
| <name>Taxonomy of Traffic-Engineering Systems</name> | ||||
| </section> | <t>This section presents a short taxonomy of traffic-engineering | |||
| <section anchor="TAXI" title="Taxonomy of Traffic Engineering Systems"> | ||||
| <t>This section presents a short taxonomy of traffic engineering | ||||
| systems constructed based on TE styles and views | systems constructed based on TE styles and views | |||
| as listed below and described in greater detail in the following | as listed below and described in greater detail in the following | |||
| subsections of this document.</t> | subsections of this document:</t> | |||
| <ul spacing="normal"> | ||||
| <t><list style="symbols"> | <li><xref target="TIME" format="title"/></li> | |||
| <t>Time-dependent versus State-dependent versus Event-dependent</t> | <li><xref target="OFFON" format="title"/></li> | |||
| <t>Offline versus Online</t> | <li><xref target="CENTRAL" format="title"/></li> | |||
| <t>Centralized versus Distributed</t> | <li><xref target="LOCAL" format="title"/> Information</li> | |||
| <t>Local versus Global Information</t> | <li><xref target="SCRIPT" format="title"/></li> | |||
| <t>Prescriptive versus Descriptive</t> | <li><xref target="LOOP" format="title"/></li> | |||
| <t>Open Loop versus Closed Loop</t> | <li><xref target="TACTIC" format="title"/></li> | |||
| <t>Tactical versus Strategic</t> | </ul> | |||
| </list></t> | <section anchor="TIME" numbered="true" toc="default"> | |||
| <name>Time-Dependent versus State-Dependent versus Event-Dependent</name | ||||
| <section anchor="TIME" title="Time-Dependent Versus State-Dependent Versus Eve | > | |||
| nt-Dependent"> | <t>Traffic-engineering methodologies can be classified as | |||
| time-dependent, state-dependent, or event-dependent. All TE schemes | ||||
| <t>Traffic engineering methodologies can be classified as time- | are considered to be dynamic in this document. Static TE implies that | |||
| dependent, state-dependent, or event-dependent. All TE schemes | no TE methodology or algorithm is being applied -- it is a feature of | |||
| are considered to be dynamic in this document. Static TE implies | network planning but lacks the reactive and flexible nature of | |||
| that no TE methodology or algorithm is being | TE.</t> | |||
| applied - it is a feature of network planning, but lacks the | <t>In time-dependent TE, historical information based on periodic | |||
| reactive and flexible nature of TE.</t> | variations in traffic (such as time of day) is used to pre-program | |||
| routing and other TE control mechanisms. Additionally, customer | ||||
| <t>In time-dependent TE, historical information based on periodic | subscription or traffic projection may be used. Pre-programmed | |||
| variations in traffic (such as time of day) is used to pre-program | routing plans typically change on a relatively long timescale (e.g., | |||
| routing and other TE control mechanisms. Additionally, customer | daily). Time-dependent algorithms do not attempt to adapt to | |||
| subscription or traffic projection may be used. Pre-programmed | short-term variations in traffic or changing network conditions. An | |||
| routing plans typically change on a relatively long time | example of a time-dependent algorithm is a centralized optimizer where | |||
| scale (e.g., daily). Time-dependent algorithms do not attempt to | the input to the system is a traffic matrix and multi-class QoS | |||
| adapt to short-term variations in traffic or changing network conditions. | requirements as described in <xref target="MR99" format="default"/>. | |||
| An example of a time-dependent algorithm is a centralized | Another example of such a methodology is the application of data | |||
| optimizer where the input to the system is a traffic matrix and | mining to Internet traffic <xref target="AJ19" format="default"/>, | |||
| multi-class QoS requirements as described in <xref target="MR99"/>. | which enables the use of various machine learning algorithms to | |||
| Another example of such a methodology is the application of data mining | identify patterns within historically collected datasets about | |||
| to Internet traffic <xref target="AJ19"/> which enables the | Internet traffic and to extract information in order to guide | |||
| use of various machine learning algorithms to identify patterns | decision-making and improve efficiency and productivity of | |||
| within historically collected datasets about Internet traffic, and to | operational processes.</t> | |||
| extract information in order to guide decision-making, and to improve | <t>State-dependent TE adapts the routing plans based on the current | |||
| efficiency and productivity of operational processes.</t> | state of the network, which provides additional information on | |||
| variations in actual traffic (i.e., perturbations from regular | ||||
| <t>State-dependent TE adapts the routing plans based on the current | variations) that could not be predicted using historical information. | |||
| state of the network which provides additional information on | Constraint-based routing is an example of state-dependent TE operating | |||
| variations in actual traffic (i.e., perturbations from regular | in a relatively long timescale. An example of operating in a | |||
| variations) that could not be predicted using historical information. | relatively short timescale is a load-balancing algorithm described in | |||
| Constraint-based routing is an example of state-dependent TE operating | <xref target="MATE" format="default"/>. The state of the network can | |||
| in a relatively long timescale. An example of operating in a relatively | be based on parameters flooded by the routers. Another approach is | |||
| short timescale is a load-balancing algorithm described in | for a particular router performing adaptive TE to send probe packets | |||
| <xref target="MATE"/>. The state of the network can be based on paramete | along a path to gather the state of that path. <xref target="RFC6374" | |||
| rs | format="default"/> defines protocol extensions to collect performance | |||
| flooded by the routers. Another approach is for a particular router | measurements from MPLS networks. Another approach is for a management | |||
| performing adaptive TE to send probe packets along a path to gather the | system to gather the relevant information directly from network | |||
| state of that path. <xref target="RFC6374" /> defines protocol extension | elements using telemetry data collection publication/subscription | |||
| s to | techniques <xref target="RFC7923" format="default"/>. Timely | |||
| collect performance measurements from MPLS networks. Another approach | gathering and distribution of state information is critical for | |||
| is for a management system to gather the relevant information directly | adaptive TE. While time-dependent algorithms are suitable for | |||
| from network elements using telemetry data collection "publication/subscr | predictable traffic variations, state-dependent algorithms may be | |||
| iption" | needed to increase network efficiency and to provide resilience to | |||
| techniques <xref target="RFC7923" />. Timely gathering and distribution | adapt to changes in network state.</t> | |||
| of | <t>Event-dependent TE methods can also be used for TE path selection. | |||
| state information is critical for adaptive TE. While time-dependent algo | Event-dependent TE methods are distinct from time-dependent and | |||
| rithms | state-dependent TE methods in the manner in which paths are selected. | |||
| are suitable for predictable traffic variations, state-dependent algorith | These algorithms are adaptive and distributed in nature, and they | |||
| ms may | typically use learning models to find good paths for TE in a network. | |||
| be needed to increase network efficiency and to provide resilience to ada | While state-dependent TE models typically use available-link-bandwidth | |||
| pt to | (ALB) flooding <xref target="E.360.1" format="default"/> for TE path | |||
| changes in network state.</t> | selection, event-dependent TE methods do not require ALB flooding. | |||
| Rather, event-dependent TE methods typically search out capacity by | ||||
| <t>Event-dependent TE methods can also be used for TE path selection. | learning models, as in the success-to-the-top (STT) method <xref | |||
| Event-dependent TE methods are distinct from time-dependent and | target="RFC6601" format="default"/>. ALB flooding can be resource | |||
| state-dependent TE methods in the manner in which paths are selected. | intensive, since it requires link bandwidth to carry routing protocol | |||
| These algorithms are adaptive and distributed in nature, and typically | link-state advertisements and processor capacity to process those | |||
| use learning models to find good paths for TE in a network. While | advertisements; in addition, the overhead of the ALB advertisements and | |||
| state-dependent TE models typically use available-link-bandwidth | their processing can limit the size of the area and AS. Modeling | |||
| (ALB) <xref target="E.360.1" /> flooding for TE path selection, event-dep | results suggest that event-dependent TE methods could lead to a | |||
| endent TE methods do | reduction in ALB flooding overhead without loss of network throughput | |||
| not require ALB flooding. Rather, event-dependent TE methods | performance <xref target="I-D.ietf-tewg-qos-routing" | |||
| typically search out capacity by learning models, as in the | format="default"/>.</t> | |||
| success-to-the-top (STT) method <xref target="RFC6601" />. ALB flooding | <t>A fully functional TE system is likely to use all aspects of | |||
| can be resource intensive, | time-dependent, state-dependent, and event-dependent methodologies as | |||
| since it requires link bandwidth to carry routing protocol link state | described in <xref target="HYBRID" format="default"/>.</t> | |||
| advertisements, processor capacity to process those advertisements, | ||||
| and the overhead of the advertisements and their processing can limit | ||||
| area/Autonomous System (AS) size. Modeling results suggest that | ||||
| event-dependent TE methods could lead to a reduction in ALB flooding | ||||
| overhead without loss of network throughput performance | ||||
| <xref target="I-D.ietf-tewg-qos-routing"/>.</t> | ||||
| <t>A fully functional TE system is likely to use all aspects of | ||||
| time-dependent, state-dependent, and event-dependent methodologies as d | ||||
| escribed in | ||||
| <xref target="HYBRID" />.</t> | ||||
| </section> | ||||
| <section anchor="OFFON" title="Offline Versus Online"> | ||||
| <t>Traffic engineering requires the computation of routing plans. The | ||||
| computation may be performed offline or online. The computation can | ||||
| be done offline for scenarios where routing plans need not be | ||||
| executed in real time. For example, routing plans computed from | ||||
| forecast information may be computed offline. Typically, offline | ||||
| computation is also used to perform extensive searches on multi- | ||||
| dimensional solution spaces.</t> | ||||
| <t>Online computation is required when the routing plans must adapt to | ||||
| changing network conditions as in state-dependent algorithms. Unlike | ||||
| offline computation (which can be computationally demanding), online | ||||
| computation is geared toward relatively simple and fast calculations to | ||||
| select routes, fine-tune the allocations of resources, and perform | ||||
| load balancing.</t> | ||||
| </section> | ||||
| <section anchor="CENTRAL" title="Centralized Versus Distributed"> | ||||
| <t>Under centralized control there is a central authority which determines r | ||||
| outing | ||||
| plans and perhaps other TE control parameters on behalf of each router. | ||||
| The | ||||
| central authority periodically collects network-state information from al | ||||
| l routers, | ||||
| and sends routing information to the routers. The update cycle for infor | ||||
| mation exchange | ||||
| in both directions is a critical parameter directly impacting the perform | ||||
| ance of the | ||||
| network being controlled. Centralized control may need high processing p | ||||
| ower and high | ||||
| bandwidth control channels.</t> | ||||
| <t>Distributed control determines route selection by each router | ||||
| autonomously based on the router's view of the state of the network. | ||||
| The network state information may be obtained by the router using a | ||||
| probing method or distributed by other routers on a periodic basis | ||||
| using link state advertisements. Network state information may also | ||||
| be disseminated under exception conditions. Examples of protocol | ||||
| extensions used to advertise network link state information are | ||||
| defined in <xref target="RFC5305"/>, <xref target="RFC6119"/>, | ||||
| <xref target="RFC7471"/>, <xref target="RFC8570"/>, and | ||||
| <xref target="RFC8571"/>. See also <xref target="IGPTE" />.</t> | ||||
| <section anchor="HYBRID" title="Hybrid Systems"> | ||||
| <t>In practice, most TE systems will be a hybrid of central and distribute | ||||
| d | ||||
| control. For example, a popular MPLS approach to TE is to use a centra | ||||
| l | ||||
| controller based on an active, stateful Path Computation Element (PCE), | ||||
| but to use routing and signaling | ||||
| protocols to make local decisions at routers within the network. Local | ||||
| decisions | ||||
| may be able to respond more quickly to network events, but may result i | ||||
| n conflicts | ||||
| with decisions made by other routers.</t> | ||||
| <t>Network operations for TE systems may also use a hybrid of offline and | ||||
| online | ||||
| computation. TE paths may be precomputed based on stable-state network | ||||
| information | ||||
| and planned traffic demands, but may then be modified in the active net | ||||
| work depending | ||||
| on variations in network state and traffic load. Furthermore, response | ||||
| s to network | ||||
| events may be precomputed offline to allow rapid reactions without furt | ||||
| her computation, | ||||
| or may be derived online depending on the nature of the events.</t> | ||||
| <t>Lastly, note that a fully functional TE system is likely to use all asp | ||||
| ects of | ||||
| time-dependent, state-dependent, and event-dependent methodologies as d | ||||
| escribed in | ||||
| <xref target="TIME" />.</t> | ||||
| </section> | ||||
| <section anchor="SDN" title="Considerations for Software Defined Networking" | ||||
| > | ||||
| <t>As discussed in <xref target="ACTN" />, one of the main drivers for | ||||
| SDN is a decoupling of the network control plane from the data plane | ||||
| <xref target="RFC7149" />. However, SDN may also combine centralized | ||||
| control of resources, and facilitate application-to-network interaction | ||||
| via an application programming interface (API) such as <xref target="RF | ||||
| C8040" />. | ||||
| Combining these features provides a flexible network architecture that | ||||
| can | ||||
| adapt to network requirements of a variety of higher-layer applications | ||||
| , a | ||||
| concept often referred to as the "programmable network" <xref target="R | ||||
| FC7426" />.</t> | ||||
| <t>The centralized control aspect of SDN helps improve network resource | ||||
| utilization compared with distributed network control, where local poli | ||||
| cy | ||||
| may often override network-wide optimization goals. In an SDN environm | ||||
| ent, the | ||||
| data plane forwards traffic to its desired destination. However, before | ||||
| traffic reaches the data plane, the logically centralized SDN control p | ||||
| lane | ||||
| often determines the path the application traffic will take in | ||||
| the network. Therefore, the SDN control plane needs to be aware of the | ||||
| underlying network topology, capabilities and current node and link res | ||||
| ource | ||||
| state.</t> | ||||
| <t>Using a PCE-based SDN control framework <xref target="RFC7491" />, the | ||||
| available network topology may be discovered by running a passive insta | ||||
| nce | ||||
| of OSPF or IS-IS, or via BGP-LS <xref target="RFC7752" />, to generate | ||||
| a | ||||
| Traffic Engineering Database (TED, see <xref target="STATE" />). | ||||
| The PCE is used to compute a path (see | ||||
| <xref target="PCE" />) based on the TED and available bandwidth, and fu | ||||
| rther | ||||
| path optimization may be based on requested objective functions | ||||
| <xref target="RFC5541" />. When a suitable path has been computed the | ||||
| programming of the explicit network path may be performed using either | ||||
| a signaling protocol that traverses the length of the path <xref target | ||||
| ="RFC3209" /> | ||||
| or per-hop with each node being directly programmed <xref target="RFC82 | ||||
| 83" /> by the | ||||
| SDN controller.</t> | ||||
| <t>By utilizing a centralized approach to network control, additional netw | ||||
| ork | ||||
| benefits are also available, including Global Concurrent Optimization ( | ||||
| GCO) | ||||
| <xref target="RFC5557" />. A GCO path computation request will simulta | ||||
| neously | ||||
| use the network topology and a set of new path signaling requests, alon | ||||
| g with | ||||
| their respective constraints, for optimal placement in the network. | ||||
| Correspondingly, a GCO-based computation may be applied to recompute ex | ||||
| isting | ||||
| network paths to groom traffic and to mitigate congestion.</t> | ||||
| </section> | ||||
| </section> | ||||
| <section anchor="LOCAL" title="Local Versus Global"> | ||||
| <t>Traffic engineering algorithms may require local and global network- | ||||
| state information.</t> | ||||
| <t>Local information is the state of a portion of the domain. Examples inc | ||||
| lude | ||||
| the bandwidth and packet loss rate of a particular path, or the state an | ||||
| d | ||||
| capabilities of a network link. Local state information may be sufficie | ||||
| nt | ||||
| for certain instances of distributed control TE.</t> | ||||
| <t>Global information is the state of the entire TE domain. Examples inclu | ||||
| de | ||||
| a global traffic matrix, and loading information on each link throughout | ||||
| the | ||||
| domain of interest. Global state information is typically required with | ||||
| centralized control. Distributed TE systems may also need global | ||||
| information in some cases.</t> | ||||
| </section> | ||||
| <section anchor="SCRIPT" title="Prescriptive Versus Descriptive"> | ||||
| <t>TE systems may also be classified as prescriptive or descriptive.</t> | ||||
| <t>Prescriptive traffic engineering evaluates alternatives and | ||||
| recommends a course of action. Prescriptive TE can | ||||
| be further categorized as either corrective or perfective. | ||||
| Corrective TE prescribes a course of action to address an existing or | ||||
| predicted anomaly. Perfective TE prescribes a course of action to | ||||
| evolve and improve network performance even when no anomalies are | ||||
| evident.</t> | ||||
| <t>Descriptive traffic engineering, on the other hand, characterizes the | ||||
| state of the network and assesses the impact of various policies | ||||
| without recommending any particular course of action.</t> | ||||
| <section anchor="INTENT" title="Intent-Based Networking"> | ||||
| <t>One way to express a service request is through "intent". Intent-Base | ||||
| d Networking | ||||
| aims to produce networks that are simpler to manage and operate, requi | ||||
| ring only | ||||
| minimal intervention. Intent is defined in <xref target="RFC9315" /> | ||||
| as a set of operational goals (that a network should meet) and outcome | ||||
| s (that a | ||||
| network is supposed to deliver), defined in a declarative manner witho | ||||
| ut specifying | ||||
| how to achieve or implement them.</t> | ||||
| <t>Intent provides data and functional abstraction so that users and oper | ||||
| ators do not | ||||
| need to be concerned with low-level device configuration or the mechan | ||||
| isms used to | ||||
| achieve a given intent. This approach can be conceptually easier for | ||||
| a user, but may | ||||
| be less expressive in terms of constraints and guidelines.</t> | ||||
| <t>Intent-Based Networking is applicable to TE because many of the | ||||
| high-level objectives may be expressed as "intent." For example, load | ||||
| balancing, | ||||
| delivery of services, and robustness against failures. The intent is | ||||
| converted | ||||
| by the management system into TE actions within the network.</t> | ||||
| </section> | ||||
| </section> | ||||
| <section anchor="LOOP" title="Open-Loop Versus Closed-Loop"> | ||||
| <t>Open-loop traffic engineering control is where control action does | ||||
| not use feedback information from the current network state. The | ||||
| control action may use its own local information for accounting | ||||
| purposes, however.</t> | ||||
| <t>Closed-loop traffic engineering control is where control action | ||||
| utilizes feedback information from the network state. The feedback | ||||
| information may be in the form of current measurement or recent | ||||
| historical records.</t> | ||||
| </section> | ||||
| <section anchor="TACTIC" title="Tactical versus Strategic"> | ||||
| <t>Tactical traffic engineering aims to address specific performance | ||||
| problems (such as hot-spots) that occur in the network from a | ||||
| tactical perspective, without consideration of overall strategic | ||||
| imperatives. Without proper planning and insights, tactical TE tends | ||||
| to be ad hoc in nature.</t> | ||||
| <t>Strategic traffic engineering approaches the TE problem from a more | ||||
| organized and systematic perspective, taking into consideration the | ||||
| immediate and longer-term consequences of specific policies and | ||||
| actions.</t> | ||||
| </section> | ||||
| </section> | ||||
| <section anchor="REVIEW" title="Review of TE Techniques"> | ||||
| <t>This section briefly reviews different TE-related approaches proposed | ||||
| and implemented in telecommunications and computer networks using | ||||
| IETF protocols and architectures. These approaches are organized | ||||
| into three categories: | ||||
| <list style="symbols"> | ||||
| <t>TE mechanisms which adhere to the definition provided in | ||||
| <xref target="COMPONENTS" />.</t> | ||||
| <t>Approaches that rely upon those TE mechanisms.</t> | ||||
| <t>Techniques that are used by those TE mechanisms and approaches.</t> | ||||
| </list></t> | ||||
| <t>The discussion is not intended to be comprehensive. It is primarily | ||||
| intended to illuminate existing approaches to TE in the Internet. A histo | ||||
| ric | ||||
| overview of TE in telecommunications networks was provided in Section 4 of | ||||
| <xref target="RFC3272" />, and Section 4.6 of that document presented an | ||||
| outline of some early approaches to TE conducted in other standards bodies | ||||
| . | ||||
| It is out of the scope of this document to provide an analysis of the hist | ||||
| ory | ||||
| of TE or an inventory of TE-related efforts conducted by other SDOs.</t> | ||||
| <section anchor="OTHER" title="Overview of IETF Projects Related to Traffic En | ||||
| gineering"> | ||||
| <t>This subsection reviews a number of IETF activities pertinent to | ||||
| Internet traffic engineering. Some of these technologies are widely depl | ||||
| oyed, | ||||
| others are mature but have seen less deployment, and some are unproven or | ||||
| still | ||||
| under development.</t> | ||||
| <section anchor="TEMech" title="IETF TE Mechanisms"> | ||||
| <section anchor="INTSERV" title="Integrated Services"> | ||||
| <t>The IETF developed the Integrated Services (Intserv) model that requi | ||||
| res | ||||
| resources, such as bandwidth and buffers, to be reserved a priori for | ||||
| a | ||||
| given traffic flow to ensure that the quality of service requested by | ||||
| the | ||||
| traffic flow is satisfied. The Integrated Services model includes ad | ||||
| ditional | ||||
| components beyond those used in the best-effort model such as packet | ||||
| classifiers, packet schedulers, and admission control. A packet clas | ||||
| sifier | ||||
| is used to identify flows that are to receive a certain level of serv | ||||
| ice. A | ||||
| packet scheduler handles the scheduling of service to different packe | ||||
| t flows | ||||
| to ensure that QoS commitments are met. Admission control is used to | ||||
| determine | ||||
| whether a router has the necessary resources to accept a new flow.</t | ||||
| > | ||||
| <t>The main issue with the Integrated Services model has been scalabilit | ||||
| y | ||||
| <xref target="RFC2998"/>, especially in large public IP networks whic | ||||
| h may | ||||
| potentially have millions of active traffic flows in transit concurre | ||||
| ntly. | ||||
| Pre-Congestion Notification (PCN) <xref target="RFC5559" /> solves th | ||||
| e scaling | ||||
| problems of Intserv by using measurement-based admission control (and | ||||
| flow | ||||
| termination to handle failures) between edge-nodes. Nodes between th | ||||
| e edges of | ||||
| the internetwork have no per-flow operations and the edge nodes can u | ||||
| se the | ||||
| Resource Reservation Protocol (RSVP) per-flow or per-aggregate.</t> | ||||
| <t>A notable feature of the Integrated Services model is that it | ||||
| requires explicit signaling of QoS requirements from end systems to | ||||
| routers <xref target="RFC2753"/>. RSVP performs this signaling funct | ||||
| ion | ||||
| and is a critical component of the Integrated Services model. RSVP i | ||||
| s | ||||
| described in <xref target="RSVP" />.</t> | ||||
| </section> | ||||
| <section anchor="DIFFSERV" title="Differentiated Services"> | ||||
| <t>The goal of Differentiated Services (Diffserv) within the IETF was | ||||
| to devise scalable mechanisms for categorization of traffic into | ||||
| behavior aggregates, which ultimately allows each behavior aggregate | ||||
| to be treated differently, especially when there is a shortage of | ||||
| resources such as link bandwidth and buffer space <xref target="RFC24 | ||||
| 75"/>. | ||||
| One of the primary motivations for Diffserv was to devise alternative | ||||
| mechanisms for service differentiation in the Internet that mitigate | ||||
| the scalability issues encountered with the Intserv model.</t> | ||||
| <t>Diffserv uses the Differentiated Services field in the IP header (the | ||||
| DS field) consisting of six bits in what was formerly known as the Ty | ||||
| pe | ||||
| of Service (TOS) octet. The DS field is used to indicate the forward | ||||
| ing | ||||
| treatment that a packet should receive at a transit node <xref target | ||||
| ="RFC2474"/>. | ||||
| Diffserv includes the concept of Per-Hop Behavior (PHB) groups. Usin | ||||
| g | ||||
| the PHBs, several classes of services can be defined using different | ||||
| classification, policing, shaping, and scheduling rules.</t> | ||||
| <t>For an end-user of network services to utilize Differentiated | ||||
| Services provided by its Internet Service Provider (ISP), it may be | ||||
| necessary for the user to have an SLA with the ISP. An SLA may | ||||
| explicitly or implicitly specify a Traffic Conditioning Agreement | ||||
| (TCA) which defines classifier rules as well as metering, marking, | ||||
| discarding, and shaping rules.</t> | ||||
| <t>Packets are classified, and possibly policed and shaped at the | ||||
| ingress to a Diffserv network. When a packet traverses the boundary | ||||
| between different Diffserv domains, the DS field of the packet may be | ||||
| re-marked according to existing agreements between the domains.</t> | ||||
| <t>Differentiated Services allows only a finite number of service | ||||
| classes to be specified by the DS field. The main advantage of the | ||||
| Diffserv approach relative to the Intserv model is scalability. | ||||
| Resources are allocated on a per-class basis and the amount of state | ||||
| information is proportional to the number of classes rather than to | ||||
| the number of application flows.</t> | ||||
| <t>Once the network has been planned and the packets marked at the netwo | ||||
| rk edge, | ||||
| the Diffserv model deals with traffic management issues on a per hop | ||||
| basis. The Diffserv control model consists of a collection of | ||||
| micro-TE control mechanisms. Other TE capabilities, | ||||
| such as capacity management (including routing control), are also | ||||
| required in order to deliver acceptable service quality in Diffserv | ||||
| networks. The concept of Per Domain Behaviors has been introduced to | ||||
| better capture the notion of Differentiated Services across a | ||||
| complete domain <xref target="RFC3086"/>.</t> | ||||
| <t>Diffserv procedures can also be applied in an MPLS context. See | ||||
| <xref target="TEDIFFSRV" /> for more information.</t> | ||||
| </section> | </section> | |||
| <section anchor="OFFON" numbered="true" toc="default"> | ||||
| <section anchor="SRPolicy" title="Segment Routing Policy"> | <name>Offline versus Online</name> | |||
| <t>Traffic engineering requires the computation of routing plans. The | ||||
| <t>SR Policy <xref target="RFC9256" /> is an evolution of Segment Routi | computation may be performed offline or online. The computation can | |||
| ng (see <xref target="SR" />) | be done offline for scenarios where routing plans need not be executed | |||
| to enhance the TE capabilities of SR. It is a framework that enable | in real time. For example, routing plans computed from forecast | |||
| s instantiation of an ordered list of | information may be computed offline. Typically, offline computation | |||
| segments on a node for implementing a source routing policy with a s | is also used to perform extensive searches on multi-dimensional | |||
| pecific intent for traffic steering | solution spaces.</t> | |||
| from that node.</t> | <t>Online computation is required when the routing plans must adapt to | |||
| changing network conditions as in state-dependent algorithms. Unlike | ||||
| <t>An SR Policy is identified through the tuple <head-end, color, en | offline computation (which can be computationally demanding), online | |||
| d-point>. The head-end is the IP address of the | computation is geared toward relatively simple and fast calculations | |||
| node where the policy is instantiated. The endpoint is the IP addre | to select routes, fine-tune the allocations of resources, and perform | |||
| ss of the destination of the policy. | load balancing.</t> | |||
| The color is an index that associates the SR Policy with an intent ( | ||||
| e.g., low latency).</t> | ||||
| <t>The head-end node is notified of SR Policies and associated SR paths | ||||
| via configuration or by extensions to protocols | ||||
| such as PCEP <xref target="RFC8664" /> or BGP <xref target="I-D.ietf | ||||
| -idr-segment-routing-te-policy" />. Each SR path | ||||
| consists of a Segment-List (an SR source-routed path), and the head- | ||||
| end uses the endpoint and color parameters to | ||||
| classify packets to match the SR policy and so determine along which | ||||
| path to forward them. If an SR Policy is associated | ||||
| with a set of SR paths, each is associated with a weight for weighte | ||||
| d load balancing. Furthermore, multiple SR Policies | ||||
| may be associated with a set of SR paths to allow multiple traffic f | ||||
| lows to be placed on the same paths.</t> | ||||
| <t>An SR Binding SID (BSID) may also be associated with each candidate | ||||
| path associated with an SR Policy, or with the SR Policy itself. The | ||||
| head-end node installs a BSID-keyed entry in the forwarding plane an | ||||
| d assigns it the action of steering packets that match the entry to | ||||
| the selected path of the SR Policy. This steering can be done in va | ||||
| rious ways: | ||||
| <list style="symbols"> | ||||
| <t>SID Steering: Incoming packets have an active SID matching a lo | ||||
| cal BSID at the head-end.</t> | ||||
| <t>Per-destination Steering: Incoming packets match a BGP/Service | ||||
| route which indicates an SR Policy.</t> | ||||
| <t>Per-flow Steering: Incoming packets match a forwarding array (f | ||||
| or example, the classic 5-tuple) which indicates an SR Policy.</t> | ||||
| <t>Policy-based Steering: Incoming packets match a routing policy | ||||
| which directs them to an SR Policy.</t> | ||||
| </list></t> | ||||
| </section> | </section> | |||
| <section anchor="CENTRAL" numbered="true" toc="default"> | ||||
| <section anchor="QUIC" title="Layer 4 Transport-Based TE"> | <name>Centralized versus Distributed</name> | |||
| <t>Under centralized control, there is a central authority that | ||||
| <t>In addition to IP-based TE mechanisms, layer 4 transport-based TE app | determines routing plans and perhaps other TE control parameters on | |||
| roaches can be considered | behalf of each router. The central authority periodically collects | |||
| in specific deployment contexts (e.g., data centers, multi-homing). | network-state information from all routers and sends routing | |||
| For example, the | information to the routers. The update cycle for information exchange | |||
| 3GPP defines the Access Traffic Steering, Switching, and Splitting (A | in both directions is a critical parameter directly impacting the | |||
| TSSS) <xref target="ATSSS" /> | performance of the network being controlled. Centralized control may | |||
| service functions as follows. | need high processing power and high bandwidth control channels.</t> | |||
| <list style="hanging"> | <t>Distributed control determines route selection by each router | |||
| <t hangText='Access Traffic Steering:'> This is the selection of a | autonomously based on the router's view of the state of the network. | |||
| n access network for a | The network state information may be obtained by the router using a | |||
| new flow and the transfer of the traffic of that flow over the | probing method or distributed by other routers on a periodic basis | |||
| selected access network.</t> | using link-state advertisements. Network state information may also | |||
| be disseminated under exception conditions. Examples of protocol | ||||
| <t hangText='Access Traffic Switching:'> This is the migration of | extensions used to advertise network link-state information are | |||
| all packets of an | defined in <xref target="RFC5305" format="default"/>, <xref | |||
| ongoing flow from one access network to another access network. | target="RFC6119" format="default"/>, <xref target="RFC7471" | |||
| Only one access | format="default"/>, <xref target="RFC8570" format="default"/>, and | |||
| network is in use at a time.</t> | <xref target="RFC8571" format="default"/>. See also <xref | |||
| target="IGPTE" format="default"/>.</t> | ||||
| <t hangText='Access Traffic Splitting:'> This is about forwarding | <section anchor="HYBRID" numbered="true" toc="default"> | |||
| the packets of a flow | <name>Hybrid Systems</name> | |||
| across multiple access networks simultaneously.</t> | <t>In practice, most TE systems will be a hybrid of central and | |||
| </list></t> | distributed control. For example, a popular MPLS approach to TE is | |||
| to use a central controller based on an active, stateful Path | ||||
| <t>The control plane is used to provide hosts and specific network devic | Computation Element (PCE) but to use routing and signaling protocols | |||
| es with a set of policies | to make local decisions at routers within the network. Local | |||
| that specify which flows are eligible to use the ATSSS service. The | decisions may be able to respond more quickly to network events but | |||
| traffic that matches an ATSSS | may result in conflicts with decisions made by other routers.</t> | |||
| policy can be distributed among the available access networks followi | <t>Network operations for TE systems may also use a hybrid of | |||
| ng one of the following four modes. | offline and online computation. TE paths may be precomputed based | |||
| <list style="hanging"> | on stable-state network information and planned traffic demands but | |||
| <t hangText='Active-Standby:'> The traffic is forwarded via a spec | may then be modified in the active network depending on variations | |||
| ific access (called "active | in network state and traffic load. Furthermore, responses to | |||
| access") and switched to another access (called "standby access | network events may be precomputed offline to allow rapid reactions | |||
| ") when the active access is unavailable.</t> | without further computation or may be derived online depending on | |||
| the nature of the events.</t> | ||||
| <t hangText='Priority-based:'> Network accesses are assigned prior | </section> | |||
| ity levels that indicate which | <section anchor="SDN" numbered="true" toc="default"> | |||
| network access is to be used first. The traffic associated wit | <name>Considerations for Software-Defined Networking</name> | |||
| h the matching flow will be | <t>As discussed in <xref target="ACTN" format="default"/>, one of | |||
| steered onto the network access with the highest priority until | the main drivers for Software-Defined Networking (SDN) is a | |||
| congestion is detected, then the | decoupling of the network control plane from the data plane <xref | |||
| overflow will be forwarded over the next highest priority acces | target="RFC7149" format="default"/>. However, SDN may also combine | |||
| s.</t> | centralized control of resources and facilitate | |||
| application-to-network interaction via an Application Programming | ||||
| <t hangText='Load-Balancing:'> The traffic is distributed among th | Interface (API), such as the one described in <xref target="RFC8040" | |||
| e available access networks following | format="default"/>. Combining these features provides a flexible | |||
| a distribution ratio (e.g., 75% - 25%).</t> | network architecture that can adapt to the network requirements of a | |||
| variety of higher-layer applications, a concept often referred to as | ||||
| <t hangText='Smallest Delay:'> The traffic is forwarded via the ac | the "programmable network" <xref target="RFC7426" | |||
| cess that presents the smallest | format="default"/>.</t> | |||
| round-trip-time (RTT).</t> | <t>The centralized control aspect of SDN helps improve network | |||
| </list></t> | resource utilization compared with distributed network control, | |||
| where local policy may often override network-wide optimization | ||||
| <t>For resource management purposes, hosts and network devices support m | goals. In an SDN environment, the data plane forwards traffic to | |||
| eans such as congestion control, | its desired destination. However, before traffic reaches the data | |||
| RTT measurement, and packet scheduling.</t> | plane, the logically centralized SDN control plane often determines | |||
| the path the application traffic will take in the network. | ||||
| <t>For TCP traffic, Multipath TCP <xref target="RFC8684" /> and the 0-RT | Therefore, the SDN control plane needs to be aware of the underlying | |||
| T Convert Protocol <xref target="RFC8803" /> | network topology, capabilities, and current node and link resource | |||
| are used to provide the ATSSS service.</t> | state.</t> | |||
| <t>Using a PCE-based SDN control framework <xref target="RFC7491" | ||||
| <t>Multipath QUIC <xref target="I-D.ietf-quic-multipath" /> and Proxying | format="default"/>, the available network topology may be discovered | |||
| UDP in HTTP <xref target="RFC9298" /> | by running a passive instance of OSPF or IS-IS, or via BGP Link | |||
| are used to provide the ATSSS service for UDP traffic. Note that QUI | State (BGP-LS) <xref target="RFC9552" format="default"/>), to | |||
| C <xref target="RFC9000" /> natively | generate a Traffic Engineering Database (TED) (see <xref | |||
| support the switching and steering functions. Indeed, QUIC supports | target="STATE" format="default"/>). The PCE is used to compute a | |||
| a connection migration procedure | path (see <xref target="PCE" format="default"/>) based on the TED | |||
| that allows peers to change their layer 4 transport coordinates (IP a | and available bandwidth, and further path optimization may be based | |||
| ddresses, port numbers) without breaking | on requested objective functions <xref target="RFC5541" | |||
| the underlying QUIC connection.</t> | format="default"/>. When a suitable path has been computed, the | |||
| programming of the explicit network path may be either performed | ||||
| <t>Extensions to the Datagram Congestion Control Protocol (MP-DCCP) <xre | using a signaling protocol that traverses the length of the path | |||
| f target="RFC4340" /> to support multipath | <xref target="RFC3209" format="default"/> or performed per-hop with | |||
| operations are defined in <xref target="I-D.ietf-tsvwg-multipath-dccp | each node being directly programmed <xref target="RFC8283" | |||
| " />.</t> | format="default"/> by the SDN controller.</t> | |||
| <t>By utilizing a centralized approach to network control, | ||||
| additional network benefits are also available, including Global | ||||
| Concurrent Optimization (GCO) <xref target="RFC5557" | ||||
| format="default"/>. A GCO path computation request will | ||||
| simultaneously use the network topology and a set of new path | ||||
| signaling requests, along with their respective constraints, for | ||||
| optimal placement in the network. Correspondingly, a GCO-based | ||||
| computation may be applied to recompute existing network paths to | ||||
| groom traffic and to mitigate congestion.</t> | ||||
| </section> | ||||
| </section> | </section> | |||
| <section anchor="LOCAL" numbered="true" toc="default"> | ||||
| <section anchor="DETNET" title="Deterministic Networking"> | <name>Local versus Global</name> | |||
| <t>Traffic-engineering algorithms may require local and global | ||||
| <t>Deterministic Networking (DetNet) <xref target="RFC8655" /> is an ar | network-state information.</t> | |||
| chitecture for applications with | <t>Local information is the state of a portion of the domain. | |||
| critical timing and reliability requirements. The layered architect | Examples include the bandwidth and packet loss rate of a particular | |||
| ure particularly focuses on | path or the state and capabilities of a network link. Local state | |||
| developing DetNet service capabilities in the data plane <xref targe | information may be sufficient for certain instances of distributed | |||
| t="RFC8938" />. | control TE.</t> | |||
| The DetNet service sub-layer provides a set of Packet Replication, E | <t>Global information is the state of the entire TE domain. Examples | |||
| limination, and Ordering Functions (PREOF) | include a global traffic matrix and loading information on each link | |||
| to provide end-to-end service assurance. The DetNet forwarding sub- | throughout the domain of interest. Global state information is | |||
| layer provides corresponding | typically required with centralized control. Distributed TE systems | |||
| forwarding assurance (low packet loss, bounded latency, and in-order | may also need global information in some cases.</t> | |||
| delivery) functions using resource | ||||
| allocations and explicit route mechanisms.</t> | ||||
| <t>The separation into two sub-layers allows a greater flexibility to a | ||||
| dapt DetNet capability over a number of TE | ||||
| data plane mechanisms such as IP, MPLS, and Segment Routing. More i | ||||
| mportantly it interconnects IEEE 802.1 Time | ||||
| Sensitive Networking (TSN) <xref target="RFC9023" /> deployed in Ind | ||||
| ustry Control and Automation | ||||
| Systems (ICAS).</t> | ||||
| <t>DetNet can be seen as a specialized branch of TE, since it sets up e | ||||
| xplicit optimized paths with allocation of | ||||
| resources as requested. A DetNet application can express its QoS at | ||||
| tributes or traffic behavior using any | ||||
| combination of DetNet functions described in sub-layers. They are t | ||||
| hen distributed and provisioned using well- | ||||
| established control and provisioning mechanisms adopted for traffic | ||||
| engineering.</t> | ||||
| <t>In DetNet, a considerable amount of state information is required to | ||||
| maintain per-flow queuing disciplines and resource | ||||
| reservation for a large number of individual flows. This can be qui | ||||
| te challenging for network operations during | ||||
| network events such as faults, change in traffic volume or re-provis | ||||
| ioning. Therefore, DetNet recommends support | ||||
| for aggregated flows, however, it still requires a large amount of c | ||||
| ontrol signaling to establish and maintain | ||||
| DetNet flows.</t> | ||||
| <t>Note that DetNet might suffer from some of the scalability concerns | ||||
| described for Intserv in <xref target="INTSERV" />, | ||||
| but the scope of DetNet's deployment scenarios is smaller and s | ||||
| o less exposed to scaling issues.</t> | ||||
| </section> | </section> | |||
| <section anchor="SCRIPT" numbered="true" toc="default"> | ||||
| </section> | <name>Prescriptive versus Descriptive</name> | |||
| <t>TE systems may also be classified as prescriptive or descriptive.</t> | ||||
| <section anchor="TEapproach" title="IETF Approaches Relying on TE Mechanisms | <t>Prescriptive traffic engineering evaluates alternatives and | |||
| "> | recommends a course of action. Prescriptive TE can be further | |||
| categorized as either corrective or perfective. Corrective TE | ||||
| <section anchor="ALTO" title="Application-Layer Traffic Optimization"> | prescribes a course of action to address an existing or predicted | |||
| anomaly. Perfective TE prescribes a course of action to evolve and | ||||
| <t>This document describes various TE mechanisms available in the netwo | improve network performance even when no anomalies are evident.</t> | |||
| rk. However, distributed | <t>Descriptive traffic engineering, on the other hand, characterizes | |||
| applications in general and, in particular, bandwidth-greedy P2P app | the state of the network and assesses the impact of various policies | |||
| lications that are used, | without recommending any particular course of action.</t> | |||
| for example, for file sharing, cannot directly use those techniques. | <section anchor="INTENT" numbered="true" toc="default"> | |||
| As per <xref target="RFC5693" />, | <name>Intent-Based Networking</name> | |||
| applications could greatly improve traffic distribution and quality | <t>One way to express a service request is through "intent". | |||
| by cooperating with external | Intent-Based Networking aims to produce networks that are simpler to | |||
| services that are aware of the network topology. Addressing the App | manage and operate, requiring only minimal intervention. Intent is | |||
| lication-Layer Traffic | defined in <xref target="RFC9315" format="default"/> as follows:</t> | |||
| Optimization (ALTO) problem means, on the one hand, deploying an ALT | <blockquote> | |||
| O service to provide | A set of operational goals (that a network should meet) and outcomes | |||
| applications with information regarding the underlying network (e.g. | (that a network is supposed to deliver) defined in a declarative | |||
| , basic network location | manner without specifying how to achieve or implement | |||
| structure and preferences of network paths) and, on the other hand, | them.</blockquote> | |||
| enhancing applications in | <t>Intent provides data and functional abstraction so that users and | |||
| order to use such information to perform better-than-random selectio | operators do not need to be concerned with low-level device | |||
| n of the endpoints with | configuration or the mechanisms used to achieve a given intent. | |||
| which they establish connections.</t> | This approach can be conceptually easier for a user but may be less | |||
| expressive in terms of constraints and guidelines.</t> | ||||
| <t>The basic function of ALTO is based on abstract maps of a network. | <t>Intent-Based Networking is applicable to TE because many of the | |||
| These maps provide a | high-level objectives may be expressed as intent (for example, | |||
| simplified view, yet enough information about a network for applicat | load balancing, delivery of services, and robustness against | |||
| ions to effectively utilize | failures). The intent is converted by the management system into TE | |||
| them. Additional services are built on top of the maps. <xref targ | actions within the network.</t> | |||
| et="RFC7285" /> describes a | </section> | |||
| protocol implementing the ALTO services as an information-publishing | ||||
| interface that allows a | ||||
| network to publish its network information to network applications. | ||||
| This information can include | ||||
| network node locations, groups of node-to-node connectivity arranged | ||||
| by cost according to | ||||
| configurable granularities, and end-host properties. The informatio | ||||
| n | ||||
| published by the ALTO Protocol should benefit both the network and t | ||||
| he applications. The ALTO | ||||
| Protocol uses a REST-ful design and encodes its requests and respons | ||||
| es using JSON | ||||
| <xref target="RFC8259" /> with a modular design by dividing ALTO inf | ||||
| ormation publication into | ||||
| multiple ALTO services (e.g., the Map service, the Map-Filtering Ser | ||||
| vice, the Endpoint Property | ||||
| Service, and the Endpoint Cost Service).</t> | ||||
| <t><xref target="RFC8189" /> defines a new service that allows an ALTO | ||||
| Client to retrieve several | ||||
| cost metrics in a single request for an ALTO filtered cost map and e | ||||
| ndpoint cost map. | ||||
| <xref target="RFC8896" /> extends the ALTO cost information service | ||||
| so that applications decide | ||||
| not only 'where' to connect, but also 'when'. This is useful for ap | ||||
| plications that need to perform | ||||
| bulk data transfer and would like to schedule these transfers during | ||||
| an off-peak hour, for example. | ||||
| <xref target="RFC9439" /> introduces network performance metrics, in | ||||
| cluding | ||||
| network delay, jitter, packet loss rate, hop count, and bandwidth. | ||||
| The ALTO server may derive and | ||||
| aggregate such performance metrics from BGP-LS (see <xref target="BG | ||||
| PLS" />) or IGP-TE (see | ||||
| <xref target="IGPTE" />), or management tools, and then expose the i | ||||
| nformation to allow applications | ||||
| to determine 'where' to connect based on network performance criteri | ||||
| a. The ALTO WG is evaluating the use | ||||
| of network TE properties while making application decisions for new | ||||
| use cases such as Edge computing | ||||
| and Datacenter interconnect.</t> | ||||
| </section> | </section> | |||
| <section anchor="LOOP" numbered="true" toc="default"> | ||||
| <section anchor="ACTN" title="Network Virtualization and Abstraction"> | <name>Open-Loop versus Closed-Loop</name> | |||
| <t>Open-loop traffic-engineering control is where control action does | ||||
| <t>One of the main drivers for Software Defined Networking (SDN) | not use feedback information from the current network state. However, | |||
| <xref target="RFC7149" /> is a decoupling of the network control | the control action may use its own local information for accounting | |||
| plane from the data plane. This separation has been achieved for | purposes.</t> | |||
| TE networks with the development of MPLS/GMPLS (see <xref target="MP | <t>Closed-loop traffic-engineering control is where control action | |||
| LS" /> | utilizes feedback information from the network state. The feedback | |||
| and <xref target="GMPLS" />) and the PCE (<xref target="PCE" />). O | information may be in the form of current measurement or recent | |||
| ne of the | historical records.</t> | |||
| advantages of SDN is its logically centralized control regime that a | ||||
| llows a | ||||
| full view of the underlying networks. Centralized control in SDN he | ||||
| lps | ||||
| improve network resource utilization compared with distributed netwo | ||||
| rk control.</t> | ||||
| <t>Abstraction and Control of TE Networks (ACTN) <xref target="RFC8453" | ||||
| /> | ||||
| defines a hierarchical SDN architecture which describes the function | ||||
| al | ||||
| entities and methods for the coordination of resources across multip | ||||
| le | ||||
| domains, to provide composite traffic-engineered services. ACTN | ||||
| facilitates composed, multi-domain connections and provides them to | ||||
| the user. ACTN | ||||
| is focused on: | ||||
| <list style="symbols"> | ||||
| <t>Abstraction of the underlying network resources and how they ar | ||||
| e | ||||
| provided to higher-layer applications and customers.</t> | ||||
| <t>Virtualization of underlying resources for use by the customer, | ||||
| application, or service. The creation of a virtualized environ | ||||
| ment | ||||
| allows operators to view and control multi-domain networks as a | ||||
| single | ||||
| virtualized network.</t> | ||||
| <t>Presentation to customers of networks as a virtual network via | ||||
| open and programmable interfaces.</t> | ||||
| </list></t> | ||||
| <t>The ACTN managed infrastructure is built from traffic-engineered net | ||||
| work | ||||
| resources, which may include statistical packet bandwidth, physical | ||||
| forwarding plane sources (such as wavelengths and time slots), forwa | ||||
| rding | ||||
| and cross-connect capabilities. The type of network virtualization | ||||
| seen in | ||||
| ACTN allows customers and applications (tenants) to utilize and inde | ||||
| pendently | ||||
| control allocated virtual network resources as if they were | ||||
| physically their own resource. The ACTN network is "sliced", with t | ||||
| enants | ||||
| being given a different partial and abstracted topology view of the | ||||
| physical | ||||
| underlying network.</t> | ||||
| </section> | </section> | |||
| <section anchor="TACTIC" numbered="true" toc="default"> | ||||
| <section anchor="SLICE" title="Network Slicing"> | <name>Tactical versus Strategic</name> | |||
| <t>Tactical traffic engineering aims to address specific performance | ||||
| <t>An IETF Network Slice is a logical network topology connecting a num | problems (such as hotspots) that occur in the network from a | |||
| ber of | tactical perspective, without consideration of overall strategic | |||
| endpoints using a set of shared or dedicated network resources | imperatives. Without proper planning and insights, tactical TE tends | |||
| <xref target="I-D.ietf-teas-ietf-network-slices" />. The resources | to be ad hoc in nature.</t> | |||
| are used | <t>Strategic traffic-engineering approaches the TE problem from a more | |||
| to satisfy specific Service Level Objectives (SLOs) specified by the | organized and systematic perspective, taking into consideration the | |||
| consumer.</t> | immediate and longer-term consequences of specific policies and | |||
| actions.</t> | ||||
| <t>IETF network slices are not, of themselves, TE constructs. However, | ||||
| a network operator that offers | ||||
| IETF network slices is likely to use many TE tools in order to manag | ||||
| e their network and provide the | ||||
| services.</t> | ||||
| <t>IETF Network Slices are defined such that they are independent of th | ||||
| e underlying infrastructure | ||||
| connectivity and technologies used. From a customer's perspect | ||||
| ive, an IETF Network Slice looks | ||||
| like a VPN connectivity matrix with additional information about the | ||||
| level of service that the | ||||
| customer requires between the endpoints. From an operator's pe | ||||
| rspective, the IETF Network Slice | ||||
| looks like a set of routing or tunneling instructions with the netwo | ||||
| rk resource reservations necessary | ||||
| to provide the required service levels as specified by the SLOs. Th | ||||
| e concept of an IETF network slice | ||||
| is consistent with an enhanced VPN (VPN+) <xref target="I-D.ietf-tea | ||||
| s-enhanced-vpn" />.</t> | ||||
| </section> | </section> | |||
| </section> | </section> | |||
| <section anchor="REVIEW" numbered="true" toc="default"> | ||||
| <name>Review of TE Techniques</name> | ||||
| <t>This section briefly reviews different TE-related approaches proposed | ||||
| and implemented in telecommunications and computer networks using IETF | ||||
| protocols and architectures. These approaches are organized into three | ||||
| categories:</t> | ||||
| <ul spacing="normal"> | ||||
| <li>TE mechanisms that adhere to the definition provided in <xref | ||||
| target="COMPONENTS" format="default"/></li> | ||||
| <li>Approaches that rely upon those TE mechanisms</li> | ||||
| <li>Techniques that are used by those TE mechanisms and | ||||
| approaches</li> | ||||
| </ul> | ||||
| <t>The discussion is not intended to be comprehensive. It is primarily | ||||
| intended to illuminate existing approaches to TE in the Internet. A | ||||
| historic overview of TE in telecommunications networks was provided in | ||||
| <xref target="RFC3272" sectionFormat="of" section="4"/>, and Section | ||||
| <xref target="RFC3272" sectionFormat="bare" section="4.6"/> of that | ||||
| document presented an outline of some early approaches to TE conducted | ||||
| in other standards bodies. It is out of the scope of this document to | ||||
| provide an analysis of the history of TE or an inventory of TE-related | ||||
| efforts conducted by other Standards Development Organizations | ||||
| (SDOs).</t> | ||||
| <section anchor="OTHER" numbered="true" toc="default"> | ||||
| <name>Overview of IETF Projects Related to Traffic Engineering</name> | ||||
| <t>This subsection reviews a number of IETF activities pertinent to | ||||
| Internet traffic engineering. Some of these technologies are widely | ||||
| deployed, others are mature but have seen less | ||||
| deployment, and some are unproven or are still under | ||||
| development.</t> | ||||
| <section anchor="TEMech" numbered="true" toc="default"> | ||||
| <name>IETF TE Mechanisms</name> | ||||
| <section anchor="INTSERV" numbered="true" toc="default"> | ||||
| <name>Integrated Services</name> | ||||
| <t>The IETF developed the Integrated Services (Intserv) model that | ||||
| requires resources, such as bandwidth and buffers, to be reserved | ||||
| a priori for a given traffic flow to ensure that the QoS requested | ||||
| by the traffic flow is satisfied. The Intserv model includes | ||||
| additional components beyond those used in the best-effort model | ||||
| such as packet classifiers, packet schedulers, and admission | ||||
| control. A packet classifier is used to identify flows that are | ||||
| to receive a certain level of service. A packet scheduler handles | ||||
| the scheduling of service to different packet flows to ensure that | ||||
| QoS commitments are met. Admission control is used to determine | ||||
| whether a router has the necessary resources to accept a new | ||||
| flow.</t> | ||||
| <t>The main issue with the Intserv model has been scalability | ||||
| <xref target="RFC2998" format="default"/>, especially in large | ||||
| public IP networks that may potentially have millions of active | ||||
| traffic flows in transit concurrently. Pre-Congestion | ||||
| Notification (PCN) <xref target="RFC5559" format="default"/> | ||||
| solves the scaling problems of Intserv by using measurement-based | ||||
| admission control (and flow termination to handle failures) | ||||
| between edge nodes. Nodes between the edges of the internetwork | ||||
| have no per-flow operations, and the edge nodes can use the | ||||
| Resource Reservation Protocol (RSVP) per-flow or | ||||
| per-aggregate.</t> | ||||
| <t>A notable feature of the Intserv model is that it requires | ||||
| explicit signaling of QoS requirements from end systems to routers | ||||
| <xref target="RFC2753" format="default"/>. RSVP performs this | ||||
| signaling function and is a critical component of the Intserv | ||||
| model. RSVP is described in <xref target="RSVP" | ||||
| format="default"/>.</t> | ||||
| </section> | ||||
| <section anchor="DIFFSERV" numbered="true" toc="default"> | ||||
| <name>Differentiated Services</name> | ||||
| <t>The goal of Differentiated Services (Diffserv) within the IETF | ||||
| was to devise scalable mechanisms for categorization of traffic | ||||
| into behavior aggregates, which ultimately allows each behavior | ||||
| aggregate to be treated differently, especially when there is a | ||||
| shortage of resources, such as link bandwidth and buffer space | ||||
| <xref target="RFC2475" format="default"/>. One of the primary | ||||
| motivations for Diffserv was to devise alternative mechanisms for | ||||
| service differentiation in the Internet that mitigate the | ||||
| scalability issues encountered with the Intserv model.</t> | ||||
| <t>Diffserv uses the Differentiated Services field in the IP | ||||
| header (the DS field) consisting of six bits in what was formerly | ||||
| known as the Type of Service (TOS) octet. The DS field is used to | ||||
| indicate the forwarding treatment that a packet should receive at | ||||
| a transit node <xref target="RFC2474" format="default"/>. | ||||
| Diffserv includes the concept of Per-Hop Behavior (PHB) groups. | ||||
| Using the PHBs, several classes of services can be defined using | ||||
| different classification, policing, shaping, and scheduling | ||||
| rules.</t> | ||||
| <t>For an end user of network services to utilize Diffserv | ||||
| provided by its Internet Service Provider (ISP), it may | ||||
| be necessary for the user to have an SLA with the ISP. An SLA may | ||||
| explicitly or implicitly specify a Traffic Conditioning Agreement | ||||
| (TCA) that defines classifier rules as well as metering, marking, | ||||
| discarding, and shaping rules.</t> | ||||
| <t>Packets are classified and possibly policed and shaped at the | ||||
| ingress to a Diffserv network. When a packet traverses the | ||||
| boundary between different Diffserv domains, the DS field of the | ||||
| packet may be re-marked according to existing agreements between | ||||
| the domains.</t> | ||||
| <t>Diffserv allows only a finite number of service | ||||
| classes to be specified by the DS field. The main advantage of | ||||
| the Diffserv approach relative to the Intserv model is | ||||
| scalability. Resources are allocated on a per-class basis, and the | ||||
| amount of state information is proportional to the number of | ||||
| classes rather than to the number of application flows.</t> | ||||
| <t>Once the network has been planned and the packets have been | ||||
| marked at the network edge, the Diffserv model deals with traffic | ||||
| management issues on a per-hop basis. The Diffserv control model | ||||
| consists of a collection of micro-TE control mechanisms. Other TE | ||||
| capabilities, such as capacity management (including routing | ||||
| control), are also required in order to deliver acceptable service | ||||
| quality in Diffserv networks. The concept of "Per-Domain | ||||
| Behaviors" has been introduced to better capture the notion of | ||||
| Diffserv across a complete domain <xref target="RFC3086" | ||||
| format="default"/>.</t> | ||||
| <t>Diffserv procedures can also be applied in an MPLS context. See | ||||
| <xref target="TEDIFFSRV" format="default"/> for more information.</t> | ||||
| </section> | ||||
| <section anchor="SRPolicy" numbered="true" toc="default"> | ||||
| <name>SR Policy</name> | ||||
| <t>SR Policy <xref target="RFC9256" format="default"/> is an | ||||
| evolution of SR (see <xref target="SR" | ||||
| format="default"/>) to enhance the TE capabilities of SR. It is a | ||||
| framework that enables instantiation of an ordered list of | ||||
| segments on a node for implementing a source routing policy with a | ||||
| specific intent for traffic steering from that node.</t> | ||||
| <t>An SR Policy is identified through the tuple <headend, | ||||
| color, endpoint>. The headend is the IP address of the node | ||||
| where the policy is instantiated. The endpoint is the IP address | ||||
| of the destination of the policy. The color is an index that | ||||
| associates the SR Policy with an intent (e.g., low latency).</t> | ||||
| <t>The headend node is notified of SR Policies and associated SR | ||||
| paths via configuration or by extensions to protocols such as the Pa | ||||
| th Computation Element Communication Protocol (PCEP) | ||||
| <xref target="RFC8664" format="default"/> or BGP <xref | ||||
| target="I-D.ietf-idr-segment-routing-te-policy" | ||||
| format="default"/>. Each SR path consists of a segment list (an | ||||
| SR source-routed path), and the headend uses the endpoint and | ||||
| color parameters to classify packets to match the SR Policy and so | ||||
| determine along which path to forward them. If an SR Policy is | ||||
| associated with a set of SR paths, each is associated with a | ||||
| weight for weighted load balancing. Furthermore, multiple SR | ||||
| Policies may be associated with a set of SR paths to allow | ||||
| multiple traffic flows to be placed on the same paths.</t> | ||||
| <t>An SR Binding SID (BSID) may also be associated with each | ||||
| candidate path associated with an SR Policy or | ||||
| with the SR Policy itself. The headend node installs a | ||||
| BSID-keyed entry in the forwarding plane and assigns it the action | ||||
| of steering packets that match the entry to the selected path of | ||||
| the SR Policy. This steering can be done in various ways:</t> | ||||
| <dl newline="false" spacing="normal"> | ||||
| <dt>SID Steering:</dt><dd>Incoming packets have an active Segment | ||||
| Identifier (SID) matching a local BSID at | ||||
| the headend.</dd> | ||||
| <dt>Per-destination Steering:</dt><dd> | ||||
| Incoming packets match a BGP/Service route, which indicates | ||||
| an SR Policy.</dd> | ||||
| <dt>Per-flow Steering:</dt><dd> | ||||
| Incoming packets match a forwarding array (for example, the | ||||
| classic 5-tuple), which indicates an SR Policy.</dd> | ||||
| <dt>Policy-based Steering:</dt><dd> | ||||
| Incoming packets match a routing policy, which directs them | ||||
| to an SR Policy.</dd> | ||||
| </dl> | ||||
| </section> | ||||
| <section anchor="QUIC" numbered="true" toc="default"> | ||||
| <name>Layer 4 Transport-Based TE</name> | ||||
| <t>In addition to IP-based TE mechanisms, Layer 4 transport-based | ||||
| TE approaches can be considered in specific deployment contexts | ||||
| (e.g., data centers and multi-homing). For example, the 3GPP define | ||||
| s | ||||
| the Access Traffic Steering, Switching, and Splitting (ATSSS) | ||||
| <xref target="ATSSS" format="default"/> service functions as | ||||
| follows: | ||||
| </t> | ||||
| <dl newline="false" spacing="normal"> | ||||
| <dt>Access Traffic Steering:</dt> | ||||
| <dd>This is the selection of an access network for a new flow | ||||
| and the transfer of the traffic of that flow over the selected | ||||
| access network.</dd> | ||||
| <dt>Access Traffic Switching:</dt> | ||||
| <dd>This is the migration of all packets of an ongoing flow from | ||||
| one access network to another access network. Only one access | ||||
| network is in use at a time.</dd> | ||||
| <dt>Access Traffic Splitting:</dt> | ||||
| <dd>This is about forwarding the packets of a flow across | ||||
| multiple access networks simultaneously.</dd> | ||||
| </dl> | ||||
| <t>The control plane is used to provide hosts and specific network | ||||
| devices with a set of policies that specify which flows are | ||||
| eligible to use the ATSSS service. The traffic that matches an | ||||
| ATSSS policy can be distributed among the available access | ||||
| networks following one of the following four modes:</t> | ||||
| <dl newline="false" spacing="normal"> | ||||
| <dt>Active-Standby:</dt> | ||||
| <dd>The traffic is forwarded via a specific access (called | ||||
| "active access") and switched to another access (called "standby | ||||
| access") when the active access is unavailable.</dd> | ||||
| <dt>Priority-based:</dt> | ||||
| <dd>Network accesses are assigned priority levels that indicate | ||||
| which network access is to be used first. The traffic | ||||
| associated with the matching flow will be steered onto the | ||||
| network access with the highest priority until congestion is | ||||
| detected. Then, the overflow will be forwarded over the next | ||||
| highest priority access.</dd> | ||||
| <dt>Load-Balancing:</dt> | ||||
| <dd>The traffic is distributed among the available access | ||||
| networks following a distribution ratio (e.g., 75% to 25%).</dd> | ||||
| <dt>Smallest Delay:</dt> | ||||
| <dd>The traffic is forwarded via the access that presents the | ||||
| smallest round-trip time (RTT).</dd> | ||||
| </dl> | ||||
| <t>For resource management purposes, hosts and network devices | ||||
| support means such as congestion control, RTT measurement, and | ||||
| packet scheduling.</t> | ||||
| <t>For TCP traffic, Multipath TCP <xref target="RFC8684" | ||||
| format="default"/> and the 0-RTT Convert Protocol <xref | ||||
| target="RFC8803" format="default"/> are used to provide the ATSSS | ||||
| service.</t> | ||||
| <t>Multipath QUIC <xref target="I-D.ietf-quic-multipath" | ||||
| format="default"/> and Proxying UDP in HTTP | ||||
| <xref target="RFC9298" format="default"/> are used to provide the | ||||
| ATSSS service for UDP traffic. Note that QUIC <xref | ||||
| target="RFC9000" format="default"/> supports the | ||||
| switching and steering functions. Indeed, QUIC supports a | ||||
| connection migration procedure that allows peers to change their | ||||
| Layer 4 transport coordinates (IP addresses, port numbers) without | ||||
| breaking the underlying QUIC connection.</t> | ||||
| <t>Extensions to the Datagram Congestion Control Protocol | ||||
| (DCCP) <xref target="RFC4340" format="default"/> to support | ||||
| multipath operations are defined in <xref | ||||
| target="I-D.ietf-tsvwg-multipath-dccp" format="default"/>.</t> | ||||
| </section> | ||||
| <section anchor="DETNET" numbered="true" toc="default"> | ||||
| <name>Deterministic Networking</name> | ||||
| <t>Deterministic Networking (DetNet) <xref target="RFC8655" format=" | ||||
| default"/> is an | ||||
| architecture for applications with critical timing and reliability | ||||
| requirements. The layered architecture particularly focuses on | ||||
| developing DetNet service capabilities in the data plane <xref | ||||
| target="RFC8938" format="default"/>. The DetNet service sub-layer | ||||
| provides a set of Packet Replication, Elimination, and Ordering | ||||
| Functions (PREOF) to provide end-to-end service assurance. The | ||||
| DetNet forwarding sub-layer provides corresponding forwarding | ||||
| assurance (low packet loss, bounded latency, and in-order | ||||
| delivery) functions using resource allocations and explicit route | ||||
| mechanisms.</t> | ||||
| <t>The separation into two sub-layers allows a greater flexibility | ||||
| to adapt DetNet capability over a number of TE data plane | ||||
| mechanisms, such as IP, MPLS, and SR. More | ||||
| importantly, it interconnects IEEE 802.1 Time Sensitive Networking | ||||
| (TSN) <xref target="RFC9023" format="default"/> deployed in | ||||
| Industry Control and Automation Systems (ICAS).</t> | ||||
| <t>DetNet can be seen as a specialized branch of TE, since it sets | ||||
| up explicit optimized paths with allocation of resources as | ||||
| requested. A DetNet application can express its QoS attributes or | ||||
| traffic behavior using any combination of DetNet functions | ||||
| described in sub-layers. They are then distributed and | ||||
| provisioned using well-established control and provisioning | ||||
| mechanisms adopted for traffic engineering.</t> | ||||
| <t>In DetNet, a considerable amount of state information is | ||||
| required to maintain per-flow queuing disciplines and resource | ||||
| reservation for a large number of individual flows. This can be | ||||
| quite challenging for network operations during network events, | ||||
| such as faults, change in traffic volume, or reprovisioning. | ||||
| Therefore, DetNet recommends support for aggregated flows; | ||||
| however, it still requires a large amount of control signaling to | ||||
| establish and maintain DetNet flows.</t> | ||||
| <t>Note that DetNet might suffer from some of the scalability | ||||
| concerns described for Intserv in <xref target="INTSERV" | ||||
| format="default"/>, but the scope of DetNet's deployment scenarios | ||||
| is smaller and therefore less exposed to scaling issues.</t> | ||||
| </section> | ||||
| </section> | ||||
| <section anchor="TEapproach" numbered="true" toc="default"> | ||||
| <name>IETF Approaches Relying on TE Mechanisms</name> | ||||
| <section anchor="ALTO" numbered="true" toc="default"> | ||||
| <name>Application-Layer Traffic Optimization</name> | ||||
| <t>This document describes various TE mechanisms available in the | ||||
| network. However, in general, distributed applications | ||||
| (particularly, bandwidth-greedy P2P applications that are used for | ||||
| file sharing, for example) cannot directly use those techniques. | ||||
| As per <xref target="RFC5693" format="default"/>, applications | ||||
| could greatly improve traffic distribution and quality by | ||||
| cooperating with external services that are aware of the network | ||||
| topology. Addressing the Application-Layer Traffic Optimization | ||||
| (ALTO) problem means, on the one hand, deploying an ALTO service | ||||
| to provide applications with information regarding the underlying | ||||
| network (e.g., basic network location structure and preferences of | ||||
| network paths) and, on the other hand, enhancing applications in | ||||
| order to use such information to perform better-than-random | ||||
| selection of the endpoints with which they establish | ||||
| connections.</t> | ||||
| <section anchor="TEtech" title="IETF Techniques Used by TE Mechanisms"> | <t>The basic function of ALTO is based on abstract maps of a | |||
| network. These maps provide a simplified view, yet enough | ||||
| <section anchor="CSPF" title="Constraint-Based Routing"> | information about a network for applications to effectively | |||
| utilize them. Additional services are built on top of the maps. | ||||
| <t>Constraint-based routing refers to a class of routing systems that | <xref target="RFC7285" format="default"/> describes a protocol | |||
| implementing the ALTO services as an information-publishing | ||||
| interface that allows a network to publish its network information | ||||
| to network applications. This information can include network | ||||
| node locations, groups of node-to-node connectivity arranged by | ||||
| cost according to configurable granularities, and end-host | ||||
| properties. The information published by the ALTO Protocol should | ||||
| benefit both the network and the applications. The ALTO Protocol | ||||
| uses a REST-ful design and encodes its requests and responses | ||||
| using JSON <xref target="RFC8259" format="default"/> with a | ||||
| modular design by dividing ALTO information publication into | ||||
| multiple ALTO services (e.g., the Map Service, the Map-Filtering | ||||
| Service, the Endpoint Property Service, and the Endpoint Cost | ||||
| Service).</t> | ||||
| <t><xref target="RFC8189" format="default"/> defines a new service | ||||
| that allows an ALTO Client to retrieve several cost metrics in a | ||||
| single request for an ALTO filtered cost map and endpoint cost | ||||
| map. <xref target="RFC8896" format="default"/> extends the ALTO | ||||
| cost information service so that applications decide not only | ||||
| "where" to connect but also "when". This is useful for | ||||
| applications that need to perform bulk data transfer and would | ||||
| like to schedule these transfers during an off-peak hour, for | ||||
| example. <xref target="RFC9439" format="default"/> introduces | ||||
| network performance metrics, including network delay, jitter, | ||||
| packet loss rate, hop count, and bandwidth. The ALTO server may | ||||
| derive and aggregate such performance metrics from BGP-LS (see | ||||
| <xref target="BGPLS" format="default"/>), IGP-TE (see <xref | ||||
| target="IGPTE" format="default"/>), or management tools and then | ||||
| expose the information to allow applications to determine "where" | ||||
| to connect based on network performance criteria. The ALTO | ||||
| Working Group is evaluating the use of network TE properties while | ||||
| making application decisions for new use cases such as edge | ||||
| computing and data-center interconnect.</t> | ||||
| </section> | ||||
| <section anchor="ACTN" numbered="true" toc="default"> | ||||
| <name>Network Virtualization and Abstraction</name> | ||||
| <t>One of the main drivers for SDN | ||||
| <xref target="RFC7149" format="default"/> is a decoupling of the | ||||
| network control plane from the data plane. This separation has | ||||
| been achieved for TE networks with the development of MPLS and GMPLS | ||||
| (see Sections <xref target="MPLS" format="counter"/> and <xref | ||||
| target="GMPLS" format="counter"/>, respectively) and the PCE (see <x | ||||
| ref target="PCE" | ||||
| format="default"/>). One of the advantages of SDN is its | ||||
| logically centralized control regime that allows a full view of | ||||
| the underlying networks. Centralized control in SDN helps improve | ||||
| network resource utilization compared with distributed network | ||||
| control.</t> | ||||
| <t>Abstraction and Control of TE Networks (ACTN) <xref | ||||
| target="RFC8453" format="default"/> defines a hierarchical SDN | ||||
| architecture that describes the functional entities and methods | ||||
| for the coordination of resources across multiple domains, to | ||||
| provide composite traffic-engineered services. ACTN facilitates | ||||
| composed, multi-domain connections and provides them to the user. | ||||
| ACTN is focused on: | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li>Abstraction of the underlying network resources and how they | ||||
| are provided to higher-layer applications and customers.</li> | ||||
| <li>Virtualization of underlying resources for use by the | ||||
| customer, application, or service. The creation of a | ||||
| virtualized environment allows operators to view and control | ||||
| multi-domain networks as a single virtualized network.</li> | ||||
| <li>Presentation to customers of networks as a virtual network | ||||
| via open and programmable interfaces.</li> | ||||
| </ul> | ||||
| <t>The ACTN managed infrastructure is built from | ||||
| traffic-engineered network resources, which may include | ||||
| statistical packet bandwidth, physical forwarding-plane sources | ||||
| (such as wavelengths and time slots), and forwarding and cross-conne | ||||
| ct | ||||
| capabilities. The type of network virtualization seen in ACTN | ||||
| allows customers and applications (tenants) to utilize and | ||||
| independently control allocated virtual network resources as if | ||||
| they were physically their own resource. The ACTN network is | ||||
| sliced, with tenants being given a different partial and | ||||
| abstracted topology view of the physical underlying network.</t> | ||||
| </section> | ||||
| <section anchor="SLICE" numbered="true" toc="default"> | ||||
| <name>Network Slicing</name> | ||||
| <t>An IETF Network Slice is a logical network topology connecting | ||||
| a number of endpoints using a set of shared or dedicated network | ||||
| resources <xref target="I-D.ietf-teas-ietf-network-slices" | ||||
| format="default"/>. The resources are used to satisfy specific | ||||
| SLOs specified by the consumer.</t> | ||||
| <t>IETF Network Slices are not, of themselves, TE constructs. | ||||
| However, a network operator that offers IETF Network Slices is | ||||
| likely to use many TE tools in order to manage their network and | ||||
| provide the services.</t> | ||||
| <t>IETF Network Slices are defined such that they are independent | ||||
| of the underlying infrastructure connectivity and technologies | ||||
| used. From a customer's perspective, an IETF Network Slice looks | ||||
| like a VPN connectivity matrix with additional information about | ||||
| the level of service that the customer requires between the | ||||
| endpoints. From an operator's perspective, the IETF Network Slice | ||||
| looks like a set of routing or tunneling instructions with the | ||||
| network resource reservations necessary to provide the required | ||||
| service levels as specified by the SLOs. The concept of an IETF | ||||
| Network Slice is consistent with an enhanced VPN <xref | ||||
| target="I-D.ietf-teas-enhanced-vpn" format="default"/>.</t> | ||||
| </section> | ||||
| </section> | ||||
| <section anchor="TEtech" numbered="true" toc="default"> | ||||
| <name>IETF Techniques Used by TE Mechanisms</name> | ||||
| <section anchor="CSPF" numbered="true" toc="default"> | ||||
| <name>Constraint-Based Routing</name> | ||||
| <t>Constraint-based routing refers to a class of routing systems tha | ||||
| t | ||||
| compute routes through a network subject to the satisfaction of a set | compute routes through a network subject to the satisfaction of a set | |||
| of constraints and requirements. In the most general case, | of constraints and requirements. In the most general case, | |||
| constraint-based routing may also seek to optimize overall network | constraint-based routing may also seek to optimize overall network | |||
| performance while minimizing costs.</t> | performance while minimizing costs.</t> | |||
| <t>The constraints and requirements may be imposed by the network it | ||||
| <t>The constraints and requirements may be imposed by the network itself | self | |||
| or by administrative policies. Constraints may include bandwidth, | or by administrative policies. Constraints may include bandwidth, | |||
| hop count, delay, and policy instruments such as resource class | hop count, delay, and policy instruments such as resource class | |||
| attributes. Constraints may also include domain-specific attributes | attributes. Constraints may also include domain-specific attributes | |||
| of certain network technologies and contexts which impose | of certain network technologies and contexts that impose | |||
| restrictions on the solution space of the routing function. Path | restrictions on the solution space of the routing function. Path-ori | |||
| oriented technologies such as MPLS have made constraint-based routing | ented technologies such as MPLS have made constraint-based routing | |||
| feasible and attractive in public IP networks.</t> | feasible and attractive in public IP networks.</t> | |||
| <t>The concept of constraint-based routing within the context of MPLS | <t>The concept of constraint-based routing within the context of | |||
| TE requirements in IP networks was first described in | MPLS-TE requirements in IP networks was first described in <xref | |||
| <xref target="RFC2702"/> and led to developments such as MPLS-TE | target="RFC2702" format="default"/> and led to developments such | |||
| <xref target="RFC3209"/> as described in <xref target="MPLS"/>.</t> | as MPLS-TE <xref target="RFC3209" format="default"/> as described | |||
| in <xref target="MPLS" format="default"/>.</t> | ||||
| <t>Unlike QoS-based routing (for example, see <xref target="RFC2386"/>, | <t>Unlike QoS-based routing (for example, see <xref | |||
| <xref target="MA"/>, and <xref target="I-D.ietf-idr-performance-routi | target="RFC2386" format="default"/>, <xref target="MA" | |||
| ng"/>) | format="default"/>, and <xref | |||
| which generally addresses the issue of routing individual traffic flo | target="I-D.ietf-idr-performance-routing" format="default"/>) that | |||
| ws to | generally addresses the issue of routing individual traffic flows | |||
| satisfy prescribed flow-based QoS requirements subject to network | to satisfy prescribed flow-based QoS requirements subject to | |||
| resource availability, constraint-based routing is applicable to | network resource availability, constraint-based routing is | |||
| traffic aggregates as well as flows and may be subject to a wide | applicable to traffic aggregates as well as flows and may be | |||
| variety of constraints which may include policy restrictions.</t> | subject to a wide variety of constraints that may include policy | |||
| restrictions.</t> | ||||
| <section anchor="FLEX" title="IGP Flexible Algorithms (Flex-Algos)"> | <section anchor="FLEX" numbered="true" toc="default"> | |||
| <name>IGP Flexible Algorithms</name> | ||||
| <t>The traditional approach to routing in an IGP network relies on th | <t>The normal approach to routing in an IGP network relies | |||
| e IGPs deriving | on the IGPs deriving "shortest paths" over the network based | |||
| "shortest paths" over the network based solely on the IGP metric a | solely on the IGP metric assigned to the links. Such an | |||
| ssigned to | approach is often limited: traffic may tend to converge | |||
| the links. Such an approach is often limited: traffic may tend to | toward the destination, possibly causing congestion, and it is | |||
| converge toward | not possible to steer traffic onto paths depending on the | |||
| the destination, possibly causing congestion; and it is not possib | end-to-end qualities demanded by the applications.</t> | |||
| le to steer traffic | <t>To overcome this limitation, various sorts of TE have been | |||
| onto paths depending on the end-to-end qualities demanded by the a | widely deployed (as described in this document), where the TE | |||
| pplications.</t> | component is responsible for computing the path based on | |||
| additional metrics and/or constraints. Such paths (or tunnels) | ||||
| <t>To overcome this limitation, various sorts of TE have been widely | need to be installed in the routers' forwarding tables in | |||
| deployed (as described in this document), where the TE component i | addition to, or as a replacement for, the original paths computed | |||
| s responsible for | by IGPs. The main drawbacks of these TE approaches are the | |||
| computing the path based on additional metrics and/or constraints. | additional complexity of protocols and management and the state | |||
| Such paths (or | that may need to be maintained within the network.</t> | |||
| tunnels) need to be installed in the routers' forwarding tabl | ||||
| es in addition to, | ||||
| or as a replacement for the original paths computed by IGPs. The | ||||
| main drawback of | ||||
| these TE approaches is the additional complexity of protocols and | ||||
| management, and | ||||
| the state that may need to be maintained within the network.</t> | ||||
| <t>IGP flexible algorithms (flex-algos) <xref target="RFC9350" /> all | ||||
| ow IGPs | ||||
| to construct constraint-based paths over the network by computing | ||||
| constraint- | ||||
| based next hops. The intent of flex-algos is to reduce TE complex | ||||
| ity by letting an | ||||
| IGP perform some basic TE computation capabilities. Flex-algo inc | ||||
| ludes a set of | ||||
| extensions to the IGPs that enable a router to send TLVs that: | ||||
| <list style="symbols"> | ||||
| <t>describe a set of constraints on the topology</t> | ||||
| <t>identify calculation-type</t> | ||||
| <t>describe a metric-type that is to be used to compute the bes | ||||
| t | ||||
| paths through the constrained topology.</t> | ||||
| </list> | ||||
| A given combination of calculation-type, metric-type, and constrai | ||||
| nts is known as a | ||||
| "Flexible Algorithm Definition" (or FAD). A router that sends suc | ||||
| h a set of TLVs also | ||||
| assigns a specific identifier (the Flexible Algorithm) to the spec | ||||
| ified combination of | ||||
| calculation-type, metric-type, and constraints.</t> | ||||
| <t>There are two use cases for flex-algo: in IP networks <xref target | ||||
| ="I-D.ietf-lsr-ip-flexalgo" /> | ||||
| and in Segment Routing networks <xref target="RFC9350" />. In the | ||||
| first case, | ||||
| flex-algo computes paths to an IPv4 or IPv6 address, in the second | ||||
| case, flex-algo computes paths | ||||
| to a prefix SID (see <xref target="SR" />).</t> | ||||
| <t>Examples of where flex-algo can be useful include: | ||||
| <list style="symbols"> | ||||
| <t>Expansion of the function of IP Performance metrics <xref ta | ||||
| rget="RFC5664" /> | ||||
| where specific constraint-based routing (flex-algo) can be i | ||||
| nstantiated within the | ||||
| network based on the results of performance measurement.</t> | ||||
| <t>The formation of an 'underlay' network using flex-algo, and | ||||
| the realization of | ||||
| an 'overlay' network using TE techniques. This approach can | ||||
| leverage the nested | ||||
| combination of flex-algo and TE extensions for IGP (see <xre | ||||
| f target="IGPTE" />).</t> | ||||
| <t>Flex-algo in SR-MPLS (<xref target="SR" />) can be used as a | ||||
| base to easily | ||||
| build a TE-like topology without TE components on routers or | ||||
| the use of a PCE | ||||
| (see <xref target="PCE" />).</t> | ||||
| <t>The support for network slices <xref target="I-D.ietf-teas-i | ||||
| etf-network-slices" /> | ||||
| where the SLOs of a particular IETF network slice can be gua | ||||
| ranteed by a flex-algo, | ||||
| or where a Filtered Topology <xref target="I-D.ietf-teas-iet | ||||
| f-network-slices" /> | ||||
| can be created as a TE-like topology using a flex-algo.</t> | ||||
| </list></t> | ||||
| </section> | ||||
| </section> | ||||
| <section anchor="RSVP" title="RSVP"> | ||||
| <t>RSVP is a soft-state signaling protocol <xref target="RFC2205"/>. It | ||||
| supports | ||||
| receiver-initiated establishment of resource reservations for both | ||||
| multicast and unicast flows. RSVP was originally developed as a | ||||
| signaling protocol within the Integrated Services framework (see | ||||
| <xref target="INTSERV" />) for applications to communicate QoS requir | ||||
| ements | ||||
| to the network and for the network to reserve relevant resources to s | ||||
| atisfy | ||||
| the QoS requirements <xref target="RFC2205"/>.</t> | ||||
| <t>In RSVP, the traffic sender or source node sends a PATH message to th | ||||
| e | ||||
| traffic receiver with the same source and destination addresses as th | ||||
| e | ||||
| traffic which the sender will generate. The PATH message contains: | ||||
| (1) a sender traffic specification describing the characteristics of | ||||
| the | ||||
| traffic, (2) a sender template specifying the format of the traffic, | ||||
| and | ||||
| (3) an optional advertisement specification which is used to support | ||||
| the | ||||
| concept of One Pass With Advertising (OPWA) <xref target="RFC2205"/>. | ||||
| Every intermediate router along the path forwards the PATH message to | ||||
| the | ||||
| next hop determined by the routing protocol. Upon receiving a PATH m | ||||
| essage, | ||||
| the receiver responds with a RESV message which includes a flow descr | ||||
| iptor | ||||
| used to request resource reservations. The RESV message travels to t | ||||
| he | ||||
| sender or source node in the opposite direction along the path that | ||||
| the PATH message traversed. Every intermediate router along the path | ||||
| can reject or accept the reservation request of the RESV message. If | ||||
| the request is rejected, the rejecting router will send an error | ||||
| message to the receiver and the signaling process will terminate. If | ||||
| the request is accepted, link bandwidth and buffer space are | ||||
| allocated for the flow and the related flow state information is | ||||
| installed in the router.</t> | ||||
| <t>One of the issues with the original RSVP specification was | ||||
| scalability. This was because reservations were required for micro- | ||||
| flows, so that the amount of state maintained by network elements | ||||
| tended to increase linearly with the number of traffic flows. These | ||||
| issues are described in <xref target="RFC2961"/> which also modifies | ||||
| and extends RSVP to mitigate the scaling problems to make RSVP a | ||||
| versatile signaling protocol for the Internet. For example, RSVP has | ||||
| been extended to reserve resources for aggregation of flows <xref tar | ||||
| get="RFC3175" />, to set | ||||
| up MPLS explicit label switched paths (see <xref target="MPLS" />), | ||||
| and to perform other signaling functions within the Internet. | ||||
| <xref target="RFC2961"/> also describes a mechanism to reduce the | ||||
| amount of Refresh messages required to maintain established RSVP | ||||
| sessions.</t> | ||||
| </section> | ||||
| <section anchor="MPLS" title="Multiprotocol Label Switching (MPLS)"> | ||||
| <t>MPLS is a forwarding scheme which also includes extensions | ||||
| to conventional IP control plane protocols. MPLS extends the | ||||
| Internet routing model and enhances packet forwarding and path | ||||
| control <xref target="RFC3031"/>.</t> | ||||
| <t>At the ingress to an MPLS domain, Label Switching Routers (LSRs) | ||||
| classify IP packets into Forwarding Equivalence Classes (FECs) based | ||||
| on a variety of factors, including, e.g., a combination of the | ||||
| information carried in the IP header of the packets and the local | ||||
| routing information maintained by the LSRs. An MPLS label stack entr | ||||
| y | ||||
| is then prepended to each packet according to their forwarding equiva | ||||
| lence | ||||
| classes. The MPLS label stack entry is 32 bits long and contains a 2 | ||||
| 0-bit | ||||
| label field.</t> | ||||
| <t>An LSR makes forwarding decisions by using the label prepended to | ||||
| packets as the index into a local next hop label forwarding entry | ||||
| (NHLFE). The packet is then processed as specified in the NHLFE. | ||||
| The incoming label may be replaced by an outgoing label (label swap), | ||||
| and the packet may be forwarded to the next LSR. Before a packet | ||||
| leaves an MPLS domain, its MPLS label may be removed (label pop). A | ||||
| Label Switched Path (LSP) is the path between an ingress LSR and an | ||||
| egress LSR through which a labeled packet traverses. The path of an | ||||
| explicit LSP is defined at the originating (ingress) node of the LSP. | ||||
| MPLS can use a signaling protocol such as RSVP or the Label Distribut | ||||
| ion | ||||
| Protocol (LDP) to set up LSPs.</t> | ||||
| <t>MPLS is a powerful technology for Internet TE | ||||
| because it supports explicit LSPs which allow constraint-based | ||||
| routing to be implemented efficiently in IP networks <xref target="AW | ||||
| D2"/>. The | ||||
| requirements for TE over MPLS are described in | ||||
| <xref target="RFC2702"/>. Extensions to RSVP to support instantiatio | ||||
| n of explicit | ||||
| LSP are discussed in <xref target="RFC3209"/> and <xref target="RSVP- | ||||
| TE"/>.</t> | ||||
| </section> | ||||
| <section anchor="RSVP-TE" title="RSVP-TE"> | ||||
| <t>RSVP-TE is a protocol extension of RSVP (<xref target="RSVP"/>) for t | ||||
| raffic engineering. | ||||
| The base specification is found in <xref target="RFC3209"/>. RSVP-TE | ||||
| enables the | ||||
| establishment of traffic-engineered MPLS LSPs (TE LSPs), using loose | ||||
| or strict paths, | ||||
| and taking into consideration network constraints such as available b | ||||
| andwidth. The | ||||
| extension supports signaling LSPs on explicit paths that could be adm | ||||
| inistratively | ||||
| specified, or computed by a suitable entity (such as a PCE, <xref tar | ||||
| get="PCE"/>) | ||||
| based on QoS and policy requirements, taking into consideration the p | ||||
| revailing network | ||||
| state as advertised by IGP extension for IS-IS in <xref target="RFC53 | ||||
| 05" />, | ||||
| for OSPFV2 in <xref target="RFC3630" />, and for OSPFv3 in | ||||
| <xref target="RFC5329" />. RSVP-TE enables the reservation of resour | ||||
| ces | ||||
| (for example, bandwidth) along the path.</t> | ||||
| <t>RSVP-TE includes the ability to preempt LSPs based on priorities, and | ||||
| uses link affinities | ||||
| to include or exclude links from the LSPs. The protocol is further e | ||||
| xtended to | ||||
| support Fast Reroute (FRR) <xref target="RFC4090"/>, Diffserv <xref t | ||||
| arget="RFC4124"/>, | ||||
| and bidirectional LSPs <xref target="RFC7551"/>. RSVP-TE extensions | ||||
| for support for | ||||
| GMPLS (see <xref target="GMPLS"/>) are specified in <xref target="RFC | ||||
| 3473"/>.</t> | ||||
| <t>Requirements for point-to-multipoint (P2MP) MPLS TE LSPs are document | ||||
| ed in | ||||
| <xref target="RFC4461"/>, and signaling protocol extensions for setti | ||||
| ng up P2MP MPLS TE | ||||
| LSPs via RSVP-TE are defined in <xref target="RFC4875"/> where a P2MP | ||||
| LSP comprise | ||||
| multiple source-to-leaf (S2L) sub-LSPs. To determine the paths for P | ||||
| 2MP LSPs, | ||||
| selection of the branch points (based on capabilities, network state, | ||||
| and policies) is | ||||
| key <xref target="RFC5671" /></t> | ||||
| <t>RSVP-TE has evolved to provide real time dynamic metrics for path sel | ||||
| ection for low latency | ||||
| paths using extensions to IS-IS <xref target="RFC8570" /> and OSPF | ||||
| <xref target="RFC7471" /> based on STAMP <xref target="RFC8972" /> | ||||
| and TWAMP <xref target="RFC5357" /> performance measurements.</t> | ||||
| <t>RSVP-TE has historically been used when bandwidth was constrained, ho | ||||
| wever, as bandwidth | ||||
| has increased, RSVP-TE has developed into a bandwidth management tool | ||||
| to provide bandwidth | ||||
| efficiency and proactive resource management.</t> | ||||
| </section> | ||||
| <section anchor="GMPLS" title="Generalized MPLS (GMPLS)"> | ||||
| <t>GMPLS extends MPLS control protocols to encompass time-division (e.g. | ||||
| , | ||||
| Synchronous Optical Network / Synchronous Digital Hierarchy (SONET/SD | ||||
| H), | ||||
| Plesiochronous Digital Hierarchy (PDH), Optical Transport Network (OT | ||||
| N)), | ||||
| wavelength (lambdas), and spatial switching (e.g., incoming port or f | ||||
| iber | ||||
| to outgoing port or fiber) as well as continuing to support packet sw | ||||
| itching. | ||||
| GMPLS provides a common set of control protocols for all of these lay | ||||
| ers | ||||
| (including some technology-specific extensions) each of which has a d | ||||
| istinct | ||||
| data or forwarding plane. GMPLS covers both the signaling and the ro | ||||
| uting | ||||
| part of that control plane and is based on the TE extensions | ||||
| to MPLS (see <xref target="RSVP-TE"/>).</t> | ||||
| <t>In GMPLS <xref target="RFC3945" />, the original MPLS architecture is | ||||
| extended to include LSRs whose | ||||
| forwarding planes rely on circuit switching, and therefore cannot for | ||||
| ward | ||||
| data based on the information carried in either packet or cell header | ||||
| s. | ||||
| Specifically, such LSRs include devices where the switching is based | ||||
| on | ||||
| time slots, wavelengths, or physical ports. These additions impact | ||||
| basic LSP properties: how labels are requested and communicated, the | ||||
| unidirectional nature of MPLS LSPs, how errors are propagated, and | ||||
| information provided for synchronizing the ingress and egress LSRs <x | ||||
| ref target="RFC3473" />.</t> | ||||
| </section> | ||||
| <section anchor="IPPM" title="IP Performance Metrics"> | ||||
| <t>The IETF IP Performance Metrics (IPPM) working group has developed a | ||||
| set | ||||
| of standard metrics that can be used to monitor the quality, performa | ||||
| nce, | ||||
| and reliability of Internet services. These metrics can be applied b | ||||
| y | ||||
| network operators, end-users, and independent testing groups to provi | ||||
| de | ||||
| users and service providers with a common understanding of the perfor | ||||
| mance | ||||
| and reliability of the Internet component 'clouds' they use | ||||
| /provide | ||||
| <xref target="RFC2330"/>. The criteria for performance metrics devel | ||||
| oped by | ||||
| the IPPM working group are described in <xref target="RFC2330"/>. Ex | ||||
| amples | ||||
| of performance metrics include one-way packet loss <xref target="RFC7 | ||||
| 680"/>, | ||||
| one-way delay <xref target="RFC7679"/>, and connectivity measures bet | ||||
| ween | ||||
| two nodes <xref target="RFC2678"/>. Other metrics include second-ord | ||||
| er | ||||
| measures of packet loss and delay.</t> | ||||
| <t>Some of the performance metrics specified by the IPPM working group a | ||||
| re useful | ||||
| for specifying SLAs. SLAs are sets of service level objectives negot | ||||
| iated | ||||
| between users and service providers, wherein each objective is a comb | ||||
| ination | ||||
| of one or more performance metrics, possibly subject to certain const | ||||
| raints.</t> | ||||
| <t>The IPPM working group also designs measurement techniques and protoc | ||||
| ols to obtain | ||||
| thwse metrics.</t> | ||||
| </section> | ||||
| <section anchor="RTFM" title="Flow Measurement"> | ||||
| <t>The IETF Real Time Flow Measurement (RTFM) working group produced | ||||
| an architecture that defines a method to specify traffic flows | ||||
| as well as a number of components for flow measurement (meters, meter | ||||
| readers, manager) <xref target="RFC2722"/>. A flow measurement syste | ||||
| m enables | ||||
| network traffic flows to be measured and analyzed at the flow level | ||||
| for a variety of purposes. As noted in RFC 2722, a flow measurement | ||||
| system can be very useful in the following contexts: | ||||
| <list style="symbols"> | ||||
| <t>understanding the behavior of existing networks</t> | ||||
| <t>planning for network development and expansion</t> | ||||
| <t>quantification of network performance</t> | ||||
| <t>verifying the quality of network service</t> | ||||
| <t>attribution of network usage to users.</t> | ||||
| </list></t> | ||||
| <t>A flow measurement system consists of meters, meter readers, and | ||||
| managers. A meter observes packets passing through a measurement | ||||
| point, classifies them into groups, accumulates usage data (such as | ||||
| the number of packets and bytes for each group), and stores the usage | ||||
| data in a flow table. A group may represent any collection of user | ||||
| applications, hosts, networks, etc. A meter reader gathers usage dat | ||||
| a | ||||
| from various meters so it can be made available for analysis. A mana | ||||
| ger | ||||
| is responsible for configuring and controlling meters and meter reade | ||||
| rs. | ||||
| The instructions received by a meter from a manager include flow | ||||
| specifications, meter control parameters, and sampling techniques. T | ||||
| he | ||||
| instructions received by a meter reader from a manager include the ad | ||||
| dress | ||||
| of the meter whose data are to be collected, the frequency of data co | ||||
| llection, | ||||
| and the types of flows to be collected.</t> | ||||
| <t>IP Flow Information Export (IPFIX) <xref target="RFC5470" /> defines | ||||
| an | ||||
| architecture that is very similar to the RTFM architecture and includ | ||||
| es | ||||
| Metering, Exporting, and Collecting Processes. <xref target="RFC5472 | ||||
| " /> | ||||
| describes the applicability of IPFIX and makes a comparison with RTFM | ||||
| , pointing | ||||
| out that, architecturally, while RTM talks about devices, IPFIX deals | ||||
| with processed | ||||
| to clarify that multiple of those processes may be co-located on the | ||||
| same machine. | ||||
| The IPFIX protocol <xref target="RFC7011" /> is widely implemented.</ | ||||
| t> | ||||
| </section> | ||||
| <section anchor="ECM" title="Endpoint Congestion Management"> | ||||
| <t><xref target="RFC3124" /> provides a set of congestion control mechan | ||||
| isms for the | ||||
| use of transport protocols. It also allows the development of mechan | ||||
| isms for | ||||
| unifying congestion control across a subset of an endpoint's act | ||||
| ive unicast | ||||
| connections (called a congestion group). A congestion manager contin | ||||
| uously | ||||
| monitors the state of the path for each congestion group under its co | ||||
| ntrol. The | ||||
| manager uses that information to instruct a scheduler on how to parti | ||||
| tion bandwidth | ||||
| among the connections of that congestion group.</t> | ||||
| <t>The concepts described in <xref target="RFC3124" /> and the lessons t | ||||
| hat can be learned | ||||
| from that work found a home in HTTP/2 <xref target="RFC9113" /> and Q | ||||
| UIC <xref target="RFC9000" />, | ||||
| while <xref target="RFC9040" /> describes TCP control block interdepe | ||||
| ndence which is a | ||||
| core construct underpinning the congestion manager defined in <xref t | ||||
| arget="RFC3124" />.</t> | ||||
| </section> | ||||
| <section anchor="IGPTE" title="TE Extensions to the IGPs"> | ||||
| <t><xref target="RFC5305" /> describes the extensions to the Intermediat | ||||
| e System to | ||||
| Intermediate System (IS-IS) protocol to support TE, similarly <xref t | ||||
| arget="RFC3630" /> | ||||
| specifies TE extensions for OSPFv2, and <xref target="RFC5329" /> has | ||||
| the same description | ||||
| for OSPFv3.</t> | ||||
| <t>IS-IS and OSPF share the common concept of TE extensions to distribut | ||||
| e TE parameters such as link | ||||
| type and ID, local and remote IP addresses, TE metric, maximum bandwi | ||||
| dth, maximum reservable | ||||
| bandwidth and unreserved bandwidth, and admin group. The information | ||||
| distributed by the IGPs in this way can be used to build a view of th | ||||
| e state and capabilities | ||||
| of a TE network (see <xref target="STATE" />).</t> | ||||
| <t>The difference between IS-IS and OSPF is in the details of how they e | ||||
| ncode and transmit the | ||||
| TE parameters: | ||||
| <list style="symbols"> | ||||
| <t>IS-IS uses the Extended IS Reachability TLV (type 22), the Exten | ||||
| ded IP Reachability TLV | ||||
| (type 135), and the TE Router ID TLV (type 134). These TLVs use | ||||
| specific Sub-TLVs | ||||
| described in <xref target="RFC8570" /> to carry for the TE param | ||||
| eters.</t> | ||||
| <t>OSPFv2 uses Opaque LSA <xref target="RFC5250" /> type 10 and OSP | ||||
| Fv3 uses the Intra-Area-TE-LSA. | ||||
| In both OSPF cases, two top-level TLVs are used (Router Address | ||||
| and Link TLVs), and these | ||||
| use Sub-TLVs to carry the TE parameters (as defined in <xref tar | ||||
| get="RFC7471" /> for OSPFv2 | ||||
| and <xref target="RFC5329" /> for OSPFv3.</t> | ||||
| </list></t> | ||||
| </section> | ||||
| <section anchor="BGPLS" title="BGP Link-State"> | ||||
| <t>In a number of environments, a component external to a network is ca | ||||
| lled | ||||
| upon to perform computations based on the network topology and curre | ||||
| nt | ||||
| state of the connections within the network, including TE | ||||
| information. This is information typically distributed by IGP routi | ||||
| ng | ||||
| protocols within the network (see <xref target="IGPTE" />).</t> | ||||
| <t>The Border Gateway Protocol (BGP) (see also <xref target="INTER" />) | ||||
| is one of the | ||||
| essential routing protocols that glue the Internet together. BGP Li | ||||
| nk | ||||
| State (BGP-LS) <xref target="RFC7752" /> is a mechanism by which | ||||
| link-state and TE information can be collected from | ||||
| networks and shared with external components using the BGP routing | ||||
| protocol. The mechanism is applicable to physical and virtual IGP | ||||
| links, and is subject to policy control.</t> | ||||
| <t>Information collected by BGP-LS can be used, for example, to constru | ||||
| ct the TED | ||||
| (<xref target="STATE" />) for use by the | ||||
| Path Computation Element (PCE, see <xref target="PCE" />), or may be | ||||
| used | ||||
| by Application-Layer Traffic Optimization (ALTO) servers (see | ||||
| <xref target="ALTO" />).</t> | ||||
| </section> | <t>IGP Flexible Algorithms <xref target="RFC9350" | |||
| format="default"/> allow IGPs to construct constraint-based | ||||
| paths over the network by computing constraint-based next hops. | ||||
| The intent of Flexible Algorithms is to reduce TE complexity by le | ||||
| tting | ||||
| an IGP perform some basic TE computation capabilities. | ||||
| Flexible Algorithm includes a set of extensions to the IGPs that e | ||||
| nable a | ||||
| router to send TLVs that:</t> | ||||
| <ul spacing="normal"> | ||||
| <li>describe a set of constraints on the topology</li> | ||||
| <li>identify calculation-type</li> | ||||
| <li>describe a metric-type that is to be used to compute the | ||||
| best paths through the constrained topology</li> | ||||
| </ul> | ||||
| <t>A given combination of calculation-type, metric-type, and | ||||
| constraints is known as a Flexible Algorithm Definition | ||||
| (FAD). A router that sends such a set of TLVs also assigns a | ||||
| specific identifier (the Flexible Algorithm) to the specified | ||||
| combination of calculation-type, metric-type, and | ||||
| constraints.</t> | ||||
| <t>There are two use cases for Flexible Algorithm: in IP networks | ||||
| <xref | ||||
| target="RFC9502" format="default"/> and in SR | ||||
| networks <xref target="RFC9350" format="default"/>. In the | ||||
| first case, Flexible Algorithm computes paths to an IPv4 or IPv6 a | ||||
| ddress; | ||||
| in the second case, Flexible Algorithms computes paths to a Prefix | ||||
| SID | ||||
| (see <xref target="SR" format="default"/>).</t> | ||||
| <t>Examples of where Flexible Algorithms can be useful include:</t | ||||
| > | ||||
| <ul spacing="normal"> | ||||
| <li>Expansion of the function of IP performance metrics <xref | ||||
| target="RFC5664" format="default"/> where specific | ||||
| constraint-based routing (Flexible Algorithm) can be instantiate | ||||
| d | ||||
| within the network based on the results of performance | ||||
| measurement.</li> | ||||
| <li>The formation of an "underlay" network using Flexible Algori | ||||
| thms, | ||||
| and the realization of an "overlay" network using TE | ||||
| techniques. This approach can leverage the nested combination | ||||
| of Flexible Algorithm and TE extensions for IGP (see <xref | ||||
| target="IGPTE" format="default"/>).</li> | ||||
| <li>Flexible Algorithms in SR-MPLS (<xref target="SR" | ||||
| format="default"/>) can be used as a base to easily build a | ||||
| TE-like topology without TE components on routers or the use | ||||
| of a PCE (see <xref target="PCE" format="default"/>).</li> | ||||
| <section anchor="PCE" title="Path Computation Element"> | <li>The support for network slices <xref | |||
| target="I-D.ietf-teas-ietf-network-slices" format="default"/> | ||||
| where the SLOs of a particular IETF Network Slice can be | ||||
| guaranteed by a Flexible Algorithm or where a Filtered Topology | ||||
| <xref | ||||
| target="I-D.ietf-teas-ietf-network-slices" format="default"/> | ||||
| can be created as a TE-like topology using a Flexible Algorithm. | ||||
| </li> | ||||
| </ul> | ||||
| </section> | ||||
| </section> | ||||
| <section anchor="RSVP" numbered="true" toc="default"> | ||||
| <name>RSVP</name> | ||||
| <t>RSVP is a soft-state signaling protocol <xref target="RFC2205" | ||||
| format="default"/>. It supports receiver-initiated establishment | ||||
| of resource reservations for both multicast and unicast flows. | ||||
| RSVP was originally developed as a signaling protocol within the | ||||
| Integrated Services framework (see <xref target="INTSERV" | ||||
| format="default"/>) for applications to communicate QoS | ||||
| requirements to the network and for the network to reserve | ||||
| relevant resources to satisfy the QoS requirements <xref | ||||
| target="RFC2205" format="default"/>.</t> | ||||
| <t>In RSVP, the traffic sender or source node sends a Path message | ||||
| to the traffic receiver with the same source and destination | ||||
| addresses as the traffic that the sender will generate. The Path | ||||
| message contains:</t> | ||||
| <ul spacing="normal"> | ||||
| <li>A sender traffic specification describing the | ||||
| characteristics of the traffic</li> | ||||
| <li>A sender template specifying the format of the traffic</li> | ||||
| <li>An optional advertisement specification that is used | ||||
| to support the concept of One Pass With Advertising (OPWA) <xref | ||||
| target="RFC2205" format="default"/></li> | ||||
| </ul> | ||||
| <t>Every intermediate router along the path forwards the Path | ||||
| message to the next hop determined by the routing protocol. Upon | ||||
| receiving a Path message, the receiver responds with a Resv | ||||
| message that includes a flow descriptor used to request resource | ||||
| reservations. The Resv message travels to the sender or source | ||||
| node in the opposite direction along the path that the Path | ||||
| message traversed. Every intermediate router along the path can | ||||
| reject or accept the reservation request of the Resv message. If | ||||
| the request is rejected, the rejecting router will send an error | ||||
| message to the receiver, and the signaling process will terminate. | ||||
| If the request is accepted, link bandwidth and buffer space are | ||||
| allocated for the flow, and the related flow state information is | ||||
| installed in the router.</t> | ||||
| <t>One of the issues with the original RSVP specification <xref | ||||
| target="RFC2205" format="default"/> was scalability. This was | ||||
| because reservations were required for micro-flows, so that the | ||||
| amount of state maintained by network elements tended to increase | ||||
| linearly with the number of traffic flows. These issues are | ||||
| described in <xref target="RFC2961" format="default"/>, which also | ||||
| modifies and extends RSVP to mitigate the scaling problems to make | ||||
| RSVP a versatile signaling protocol for the Internet. For | ||||
| example, RSVP has been extended to reserve resources for | ||||
| aggregation of flows <xref target="RFC3175" format="default"/>, to | ||||
| set up MPLS explicit LSPs (see <xref target="MPLS" | ||||
| format="default"/>), and to perform other signaling functions | ||||
| within the Internet. <xref target="RFC2961" format="default"/> | ||||
| also describes a mechanism to reduce the amount of Refresh | ||||
| messages required to maintain established RSVP sessions.</t> | ||||
| </section> | ||||
| <section anchor="MPLS" numbered="true" toc="default"> | ||||
| <name>MPLS</name> | ||||
| <t>MPLS is a forwarding scheme that also includes extensions to | ||||
| conventional IP control plane protocols. MPLS extends the | ||||
| Internet routing model and enhances packet forwarding and path | ||||
| control <xref target="RFC3031" format="default"/>.</t> | ||||
| <t>At the ingress to an MPLS domain, | ||||
| LSRs classify IP packets into Forwarding Equivalence Classes | ||||
| (FECs) based on a variety of factors, including, e.g., a | ||||
| combination of the information carried in the IP header of the | ||||
| packets and the local routing information maintained by the LSRs. | ||||
| An MPLS label stack entry is then prepended to each packet | ||||
| according to their FECs. The MPLS label | ||||
| stack entry is 32 bits long and contains a 20-bit label field.</t> | ||||
| <t>An LSR makes forwarding decisions by using the label prepended | ||||
| to packets as the index into a local Next Hop Label Forwarding | ||||
| Entry (NHLFE). The packet is then processed as specified in the | ||||
| NHLFE. The incoming label may be replaced by an outgoing label | ||||
| (label swap), and the packet may be forwarded to the next LSR. | ||||
| Before a packet leaves an MPLS domain, its MPLS label may be | ||||
| removed (label pop). An LSP is the path between an ingress LSR | ||||
| and an egress LSR through which a labeled packet traverses. The | ||||
| path of an explicit LSP is defined at the originating (ingress) | ||||
| node of the LSP. MPLS can use a signaling protocol such as RSVP | ||||
| or the Label Distribution Protocol (LDP) to set up LSPs.</t> | ||||
| <t>MPLS is a powerful technology for Internet TE because it | ||||
| supports explicit LSPs that allow constraint-based routing to be | ||||
| implemented efficiently in IP networks <xref target="AWD2" | ||||
| format="default"/>. The requirements for TE over MPLS are | ||||
| described in <xref target="RFC2702" format="default"/>. | ||||
| Extensions to RSVP to support instantiation of explicit LSP are | ||||
| discussed in <xref target="RFC3209" format="default"/> and <xref | ||||
| target="RSVP-TE" format="default"/>.</t> | ||||
| </section> | ||||
| <section anchor="RSVP-TE" numbered="true" toc="default"> | ||||
| <name>RSVP-TE</name> | ||||
| <t>RSVP-TE is a protocol extension of RSVP (<xref target="RSVP" | ||||
| format="default"/>) for traffic engineering. The base | ||||
| specification is found in <xref target="RFC3209" | ||||
| format="default"/>. RSVP-TE enables the establishment of | ||||
| traffic-engineered MPLS LSPs (TE LSPs), using loose or strict | ||||
| paths and taking into consideration network constraints such as | ||||
| available bandwidth. The extension supports signaling LSPs on | ||||
| explicit paths that could be administratively specified or | ||||
| computed by a suitable entity (such as a PCE, <xref target="PCE" | ||||
| format="default"/>) based on QoS and policy requirements, taking | ||||
| into consideration the prevailing network state as advertised by the | ||||
| IGP extension for IS-IS in <xref target="RFC5305" | ||||
| format="default"/>, for OSPFv2 in <xref target="RFC3630" | ||||
| format="default"/>, and for OSPFv3 in <xref target="RFC5329" | ||||
| format="default"/>. RSVP-TE enables the reservation of resources | ||||
| (for example, bandwidth) along the path.</t> | ||||
| <t>RSVP-TE includes the ability to preempt LSPs based on | ||||
| priorities and uses link affinities to include or exclude links | ||||
| from the LSPs. The protocol is further extended to support Fast | ||||
| Reroute (FRR) <xref target="RFC4090" format="default"/>, Diffserv | ||||
| <xref target="RFC4124" format="default"/>, and bidirectional LSPs | ||||
| <xref target="RFC7551" format="default"/>. RSVP-TE extensions for | ||||
| support for GMPLS (see <xref target="GMPLS" format="default"/>) | ||||
| are specified in <xref target="RFC3473" format="default"/>.</t> | ||||
| <t>Requirements for point-to-multipoint (P2MP) MPLS-TE LSPs are | ||||
| documented in <xref target="RFC4461" format="default"/>, and | ||||
| signaling protocol extensions for setting up P2MP MPLS-TE LSPs via | ||||
| RSVP-TE are defined in <xref target="RFC4875" format="default"/>, | ||||
| where a P2MP LSP comprises multiple source-to-leaf (S2L) sub-LSPs. | ||||
| To determine the paths for P2MP LSPs, selection of the branch | ||||
| points (based on capabilities, network state, and policies) is | ||||
| key <xref target="RFC5671" format="default"/></t> | ||||
| <t>RSVP-TE has evolved to provide real-time dynamic metrics for | ||||
| path selection for low-latency paths using extensions to IS-IS | ||||
| <xref target="RFC8570" format="default"/> and OSPF <xref | ||||
| target="RFC7471" format="default"/> based on performance | ||||
| measurements for the Simple Two-Way Active | ||||
| Measurement Protocol (STAMP) <xref target="RFC8972" | ||||
| format="default"/> and the Two-Way Active Measurement Protocol (TWAM | ||||
| P) | ||||
| <xref target="RFC5357" format="default"/>.</t> | ||||
| <t>RSVP-TE has historically been used when bandwidth was | ||||
| constrained; however, as bandwidth has increased, RSVP-TE has | ||||
| developed into a bandwidth management tool to provide bandwidth | ||||
| efficiency and proactive resource management.</t> | ||||
| </section> | ||||
| <section anchor="GMPLS" numbered="true" toc="default"> | ||||
| <name>Generalized MPLS (GMPLS)</name> | ||||
| <t>Constraint-based path computation is a fundamental building block fo | <t>GMPLS extends MPLS control protocols to encompass time-division | |||
| r | (e.g., Synchronous Optical Network / Synchronous Digital Hierarchy | |||
| TE in MPLS and GMPLS networks. Path computation in | (SONET/SDH), Plesiochronous Digital Hierarchy (PDH), and Optical | |||
| Transport Network (OTN)), wavelength (lambdas), and spatial | ||||
| switching (e.g., incoming port or fiber to outgoing port or fiber) | ||||
| and continues to support packet switching. GMPLS | ||||
| provides a common set of control protocols for all of these layers | ||||
| (including some technology-specific extensions), each of which has | ||||
| a distinct data or forwarding plane. GMPLS covers both the | ||||
| signaling and the routing part of that control plane and is based | ||||
| on the TE extensions to MPLS (see <xref target="RSVP-TE" | ||||
| format="default"/>).</t> | ||||
| <t>In GMPLS <xref target="RFC3945" format="default"/>, the | ||||
| original MPLS architecture is extended to include LSRs whose | ||||
| forwarding planes rely on circuit switching and therefore cannot | ||||
| forward data based on the information carried in either packet or | ||||
| cell headers. Specifically, such LSRs include devices where the | ||||
| switching is based on time slots, wavelengths, or physical ports. | ||||
| These additions impact basic LSP properties: how labels are | ||||
| requested and communicated, the unidirectional nature of MPLS | ||||
| LSPs, how errors are propagated, and information provided for | ||||
| synchronizing the ingress and egress LSRs <xref target="RFC3473" | ||||
| format="default"/>.</t> | ||||
| </section> | ||||
| <section anchor="IPPM" numbered="true" toc="default"> | ||||
| <name>IP Performance Metrics (IPPM)</name> | ||||
| <t>The IETF IP Performance Metrics (IPPM) Working Group has | ||||
| developed a set of standard metrics that can be used to monitor | ||||
| the quality, performance, and reliability of Internet services. | ||||
| These metrics can be applied by network operators, end users, and | ||||
| independent testing groups to provide users and service providers | ||||
| with a common understanding of the performance and reliability of | ||||
| the Internet component clouds they use/provide <xref | ||||
| target="RFC2330" format="default"/>. The criteria for performance | ||||
| metrics developed by the IPPM Working Group are described in <xref | ||||
| target="RFC2330" format="default"/>. Examples of performance | ||||
| metrics include one-way packet loss <xref target="RFC7680" | ||||
| format="default"/>, one-way delay <xref target="RFC7679" | ||||
| format="default"/>, and connectivity measures between two nodes | ||||
| <xref target="RFC2678" format="default"/>. Other metrics include | ||||
| second-order measures of packet loss and delay.</t> | ||||
| <t>Some of the performance metrics specified by the IPPM Working | ||||
| Group are useful for specifying SLAs. SLAs are sets of SLOs | ||||
| negotiated between users and service providers, | ||||
| wherein each objective is a combination of one or more performance | ||||
| metrics, possibly subject to certain constraints.</t> | ||||
| <t>The IPPM Working Group also designs measurement techniques and | ||||
| protocols to obtain these metrics.</t> | ||||
| </section> | ||||
| <section anchor="RTFM" numbered="true" toc="default"> | ||||
| <name>Flow Measurement</name> | ||||
| <t>The IETF Real Time Flow Measurement (RTFM) Working Group | ||||
| produced an architecture that defines a method to specify traffic | ||||
| flows as well as a number of components for flow measurement | ||||
| (meters, meter readers, and managers) <xref target="RFC2722" | ||||
| format="default"/>. A flow measurement system enables network | ||||
| traffic flows to be measured and analyzed at the flow level for a | ||||
| variety of purposes. As noted in <xref target="RFC2722" | ||||
| format="default"/>, a flow measurement system can be very useful | ||||
| in the following contexts: | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li>understanding the behavior of existing networks</li> | ||||
| <li>planning for network development and expansion</li> | ||||
| <li>quantification of network performance</li> | ||||
| <li>verifying the quality of network service</li> | ||||
| <li>attribution of network usage to users</li> | ||||
| </ul> | ||||
| <t>A flow measurement system consists of meters, meter readers, | ||||
| and managers. A meter observes packets passing through a | ||||
| measurement point, classifies them into groups, accumulates usage | ||||
| data (such as the number of packets and bytes for each group), and | ||||
| stores the usage data in a flow table. A group may represent any | ||||
| collection of user applications, hosts, networks, etc. A meter | ||||
| reader gathers usage data from various meters so it can be made | ||||
| available for analysis. A manager is responsible for configuring | ||||
| and controlling meters and meter readers. The instructions | ||||
| received by a meter from a manager include flow specifications, | ||||
| meter control parameters, and sampling techniques. The | ||||
| instructions received by a meter reader from a manager include the | ||||
| address of the meter whose data are to be collected, the frequency | ||||
| of data collection, and the types of flows to be collected.</t> | ||||
| <t>IP Flow Information Export (IPFIX) <xref target="RFC5470" | ||||
| format="default"/> defines an architecture that is very similar to | ||||
| the RTFM architecture and includes Metering, Exporting, and | ||||
| Collecting Processes. <xref target="RFC5472" format="default"/> | ||||
| describes the applicability of IPFIX and makes a comparison with | ||||
| RTFM, pointing out that, architecturally, while RTM talks about | ||||
| devices, IPFIX deals with processes to clarify that multiple of | ||||
| those processes may be co-located on the same machine. The IPFIX | ||||
| protocol <xref target="RFC7011" format="default"/> is widely | ||||
| implemented.</t> | ||||
| </section> | ||||
| <section anchor="ECM" numbered="true" toc="default"> | ||||
| <name>Endpoint Congestion Management</name> | ||||
| <t><xref target="RFC3124" format="default"/> provides a set of | ||||
| congestion control mechanisms for the use of transport protocols. | ||||
| It also allows the development of mechanisms for unifying | ||||
| congestion control across a subset of an endpoint's active unicast | ||||
| connections (called a "congestion group"). A congestion manager | ||||
| continuously monitors the state of the path for each congestion | ||||
| group under its control. The manager uses that information to | ||||
| instruct a scheduler on how to partition bandwidth among the | ||||
| connections of that congestion group.</t> | ||||
| <t>The concepts described in <xref target="RFC3124" | ||||
| format="default"/> and the lessons that can be learned from that | ||||
| work found a home in HTTP/2 <xref target="RFC9113" | ||||
| format="default"/> and QUIC <xref target="RFC9000" | ||||
| format="default"/>, while <xref target="RFC9040" | ||||
| format="default"/> describes TCP control block interdependence | ||||
| that is a core construct underpinning the congestion manager | ||||
| defined in <xref target="RFC3124" format="default"/>.</t> | ||||
| </section> | ||||
| <section anchor="IGPTE" numbered="true" toc="default"> | ||||
| <name>TE Extensions to the IGPs</name> | ||||
| <t><xref target="RFC5305" format="default"/> describes the | ||||
| extensions to the Intermediate System to Intermediate System | ||||
| (IS-IS) protocol to support TE. Similarly, <xref target="RFC3630" | ||||
| format="default"/> specifies TE extensions for OSPFv2, and <xref | ||||
| target="RFC5329" format="default"/> has the same description for | ||||
| OSPFv3.</t> | ||||
| <t>IS-IS and OSPF share the common concept of TE extensions to | ||||
| distribute TE parameters, such as link type and ID, local and | ||||
| remote IP addresses, TE metric, maximum bandwidth, maximum | ||||
| reservable bandwidth, unreserved bandwidth, and admin group. | ||||
| The information distributed by the IGPs in this way can be used to | ||||
| build a view of the state and capabilities of a TE network (see | ||||
| <xref target="STATE" format="default"/>).</t> | ||||
| <t>The difference between IS-IS and OSPF is in the details of how | ||||
| they encode and transmit the TE parameters:</t> | ||||
| <ul spacing="normal"> | ||||
| <li>IS-IS uses the Extended IS Reachability TLV (type 22), the | ||||
| Extended IP Reachability TLV (type 135), and the Traffic | ||||
| Engineering router ID TLV (type 134). These TLVs use specific | ||||
| sub-TLVs described in <xref target="RFC8570" format="default"/> | ||||
| to carry the TE parameters.</li> | ||||
| <li>OSPFv2 uses Opaque LSA <xref target="RFC5250" | ||||
| format="default"/> type 10, and OSPFv3 uses the | ||||
| Intra-Area-TE-LSA. In both OSPF cases, two top-level TLVs are | ||||
| used (Router Address and Link TLVs), and these use sub-TLVs to | ||||
| carry the TE parameters (as defined in <xref target="RFC7471" | ||||
| format="default"/> for OSPFv2 and <xref target="RFC5329" | ||||
| format="default"/> for OSPFv3).</li> | ||||
| </ul> | ||||
| </section> | ||||
| <section anchor="BGPLS" numbered="true" toc="default"> | ||||
| <name>BGP - Link State</name> | ||||
| <t>In a number of environments, a component external to a network | ||||
| is called upon to perform computations based on the network | ||||
| topology and current state of the connections within the network, | ||||
| including TE information. This is information typically | ||||
| distributed by IGP routing protocols within the network (see <xref | ||||
| target="IGPTE" format="default"/>).</t> | ||||
| <t>BGP (see also <xref target="INTER" format="default"/>) is | ||||
| one of the essential routing protocols that glues the Internet | ||||
| together. BGP-LS <xref target="RFC9552" format="default"/> is a | ||||
| mechanism by which link-state and TE information can be collected | ||||
| from networks and shared with external components using the BGP | ||||
| routing protocol. The mechanism is applicable to physical and | ||||
| virtual IGP links and is subject to policy control.</t> | ||||
| <t>Information collected by BGP-LS can be used, for example, to | ||||
| construct the TED (<xref target="STATE" format="default"/>) for | ||||
| use by the PCE (see <xref target="PCE" | ||||
| format="default"/>) or may be used by ALTO servers (see <xref target | ||||
| ="ALTO" | ||||
| format="default"/>).</t> | ||||
| </section> | ||||
| <section anchor="PCE" numbered="true" toc="default"> | ||||
| <name>Path Computation Element </name> | ||||
| <t>Constraint-based path computation is a fundamental building | ||||
| block for TE in MPLS and GMPLS networks. Path computation in | ||||
| large, multi-domain networks is complex and may require special | large, multi-domain networks is complex and may require special | |||
| computational components and cooperation between the elements in | computational components and cooperation between the elements in | |||
| different domains. The Path Computation Element (PCE) <xref target= | different domains. The PCE <xref target="RFC4655" | |||
| "RFC4655"/> | format="default"/> is an entity (component, application, or | |||
| is an entity (component, application, or network node) that is capab | network node) that is capable of computing a network path or route | |||
| le of | based on a network graph and applying computational | |||
| computing a network path or route based on a network graph and apply | constraints.</t> | |||
| ing | <t>Thus, a PCE can provide a central component in a TE system | |||
| computational constraints.</t> | operating on the TED (see <xref target="STATE" | |||
| format="default"/>) with delegated responsibility for determining | ||||
| <t>Thus, a PCE can provide a central component in a TE system | paths in MPLS, GMPLS, or SR networks. The PCE uses | |||
| operating on the TE Database (TED, see <xref target="STATE" />) | the Path Computation Element Communication Protocol (PCEP) <xref | |||
| with delegated responsibility for determining paths in MPLS, GMPLS, | target="RFC5440" format="default"/> to communicate with Path | |||
| or | Computation Clients (PCCs), such as MPLS LSRs, to answer their | |||
| Segment Routing networks. The PCE uses the Path Computation Element | requests for computed paths or to instruct them to initiate new | |||
| Communication | paths <xref target="RFC8281" format="default"/> and maintain state | |||
| Protocol (PCEP) <xref target="RFC5440" /> to communicate with Path C | about paths already installed in the network <xref | |||
| omputation | target="RFC8231" format="default"/>.</t> | |||
| Clients (PCCs), such as MPLS LSRs, to answer their requests for comp | <t>PCEs form key components of a number of TE systems. More | |||
| uted paths | information about the applicability of PCEs can be found in <xref | |||
| or to instruct them to initiate new paths <xref target="RFC8281" /> | target="RFC8051" format="default"/>, while <xref target="RFC6805" | |||
| and maintain | format="default"/> describes the application of PCEs to determining | |||
| state about paths already installed in the network <xref target="RFC | paths across multiple domains. PCEs also have potential uses in | |||
| 8231" />.</t> | Abstraction and Control of TE Networks (ACTN) (see <xref | |||
| target="ACTN" format="default"/>), Centralized Network Control | ||||
| <t>PCEs form key components of a number of TE systems. More informatio | <xref target="RFC8283" format="default"/>, and | |||
| n | SDN (see <xref target="SDN" | |||
| about the applicability of PCE can be found in <xref target="RFC8051 | format="default"/>).</t> | |||
| "/>, while | </section> | |||
| <xref target="RFC6805" /> describes the application of PCE to determ | <section anchor="SR" numbered="true" toc="default"> | |||
| ining paths | <name>Segment Routing (SR)</name> | |||
| across multiple domains. PCE also has potential use in Abstraction | <t>The SR architecture <xref target="RFC8402" format="default"/> | |||
| and Control of | leverages the source routing and tunneling paradigms. The path a | |||
| TE Networks (ACTN) (see <xref target="ACTN" />), Centralized Network | packet takes is defined at the ingress, and the packet is tunneled | |||
| Control | ||||
| <xref target="RFC8283" />, and Software Defined Networking (SDN) (se | ||||
| e | ||||
| <xref target="SDN" />).</t> | ||||
| </section> | ||||
| <section anchor="SR" title="Segment Routing"> | ||||
| <t>The Segment Routing (SR) architecture <xref target="RFC8402" /> leve | ||||
| rages the source routing and tunneling paradigms. | ||||
| The path a packet takes is defined at the ingress and the packet is | ||||
| tunneled | ||||
| to the egress.</t> | to the egress.</t> | |||
| <t>In a protocol realization, an ingress node steers a packet | ||||
| using a set of instructions, called "segments", that are included in | ||||
| an SR header prepended to the packet: a label stack in MPLS case, | ||||
| and a series of 128-bit SIDs in the IPv6 case.</t> | ||||
| <t>Segments are identified by SIDs. There | ||||
| are four types of SIDs that are relevant for TE.</t> | ||||
| <ul> | ||||
| <li>Prefix SID: | ||||
| A SID that is unique within the routing domain and is used | ||||
| to identify a prefix.</li> | ||||
| <li>Node SID: | ||||
| A Prefix SID with the "N" bit set to identify a node.</li> | ||||
| <li>Adjacency SID: | ||||
| Identifies a unidirectional adjacency.</li> | ||||
| <li><t>Binding SID: | ||||
| A Binding SID has two purposes:</t> | ||||
| <ol spacing="normal" type="1"> | ||||
| <li>To advertise the mappings of prefixes to SIDs/Labels</li> | ||||
| <li>To advertise a path available for a Forwarding Equivalence | ||||
| Class (FEC)</li> | ||||
| </ol></li> | ||||
| </ul> | ||||
| <t>A segment can represent any instruction, topological or | ||||
| service-based. SIDs can be looked up in a global context | ||||
| (domain-wide) as well as in some other contexts (see, for example, | ||||
| "context labels" in <xref target="RFC5331" sectionFormat="of" | ||||
| section="3"/>).</t> | ||||
| <t>The application of policy to SR can make SR into | ||||
| a TE mechanism, as described in <xref target="SRPolicy" | ||||
| format="default"/>.</t> | ||||
| </section> | ||||
| <section anchor="BIER-TE" numbered="true" toc="default"> | ||||
| <name>Tree Engineering for Bit Index Explicit Replication | ||||
| </name> | ||||
| <t>Bit Index Explicit Replication (BIER) <xref target="RFC8279" | ||||
| format="default"/> specifies an encapsulation for multicast | ||||
| forwarding that can be used on MPLS or Ethernet transports. A | ||||
| mechanism known as Tree Engineering for Bit Index Explicit | ||||
| Replication (BIER-TE) <xref target="RFC9262" format="default"/> | ||||
| provides a component that could be used to build a | ||||
| traffic-engineered multicast system. BIER-TE does not of itself | ||||
| offer full traffic engineering, and the abbreviation "TE" does | ||||
| not, in this case, refer to traffic engineering.</t> | ||||
| <t>In BIER-TE, path steering is supported via the definition of a | ||||
| bitstring attached to each packet that determines how the packet | ||||
| is forwarded and replicated within the network. Thus, this | ||||
| bitstring steers the traffic within the network and forms an | ||||
| element of a traffic-engineering system. A central controller | ||||
| that is aware of the capabilities and state of the network as well | ||||
| as the demands of the various traffic flows is able to select | ||||
| multicast paths that take account of the available resources and | ||||
| demands. Therefore, this controller is responsible for the | ||||
| policy elements of traffic engineering.</t> | ||||
| <t>Resource management has implications for the forwarding plane | ||||
| beyond the steering of packets defined for BIER-TE. These include | ||||
| the allocation of buffers to meet the requirements of admitted | ||||
| traffic and may include policing and/or rate-shaping mechanisms | ||||
| achieved via various forms of queuing. This level of resource | ||||
| control, while optional, is important in networks that wish to | ||||
| support congestion management policies to control or regulate the | ||||
| offered traffic to deliver different levels of service and | ||||
| alleviate congestion problems. It is also important in networks that | ||||
| wish to control latencies experienced by specific traffic | ||||
| flows.</t> | ||||
| </section> | ||||
| <section anchor="STATE" numbered="true" toc="default"> | ||||
| <name>Network TE State Definition and Presentation</name> | ||||
| <t>The network states that are relevant to TE need to be stored in | ||||
| the system and presented to the user. The TED is a | ||||
| collection of all TE information about all TE nodes and TE links | ||||
| in the network. It is an essential component of a TE system, such | ||||
| as MPLS-TE <xref target="RFC2702" format="default"/> or GMPLS | ||||
| <xref target="RFC3945" format="default"/>. In order to formally | ||||
| define the data in the TED and to present the data to the user, | ||||
| the data modeling language YANG <xref target="RFC7950" | ||||
| format="default"/> can be used as described in <xref | ||||
| target="RFC8795" format="default"/>.</t> | ||||
| </section> | ||||
| <section anchor="SYSMAN" numbered="true" toc="default"> | ||||
| <name>System Management and Control Interfaces</name> | ||||
| <t>In a protocol realization, an ingress node steers a packet using a s | <t>The TE control system needs to have a management interface that | |||
| et of instructions, | is human-friendly and a control interface that is programmable for | |||
| called segments, that are included in an SR header prepended to the | automation. The Network Configuration Protocol (NETCONF) <xref | |||
| packet: a label stack in MPLS | target="RFC6241" format="default"/> and the RESTCONF protocol | |||
| case, and a series of 128-bit segment identifiers in the IPv6 case.< | <xref target="RFC8040" format="default"/> provide programmable | |||
| /t> | interfaces that are also human-friendly. These protocols use XML- | |||
| or JSON-encoded messages. When message compactness or protocol | ||||
| <t>Segments are identified by Segment Identifiers (SIDs). There are fo | bandwidth consumption needs to be optimized for the control | |||
| ur types | interface, other protocols, such as Group Communication for the | |||
| of SID that are relevant for TE. | Constrained Application Protocol (CoAP) <xref target="RFC7390" | |||
| format="default"/> or gRPC <xref target="GRPC" format="default"/>, | ||||
| <list style="symbols"> | are available, especially when the protocol messages are encoded | |||
| <t>Prefix SID: A SID that is unique within the routing domain and | in a binary format. Along with any of these protocols, the data | |||
| is used to identify a prefix.</t> | modeling language YANG <xref target="RFC7950" format="default"/> | |||
| <t>Node SID: A Prefix SID with the 'N' bit set to identify a node | can be used to formally and precisely define the interface | |||
| .</t> | data.</t> | |||
| <t>Adjacency SID: Identifies a unidirectional adjacency.</t> | <t>PCEP <xref target="RFC5440" format="default"/> is another | |||
| <t>Binding SID: A Binding SID has two purposes: | protocol that has evolved to be an option for the TE system | |||
| <list style="numbers"> | control interface. PCEP messages are TLV based; they are not | |||
| <t>To advertise the mappings of prefixes to SIDs/Labels.</ | defined by a data-modeling language such as YANG.</t> | |||
| t> | </section> | |||
| <t>To advertise a path available for a Forwarding Equivale | </section> | |||
| nce Class.</t> | ||||
| </list></t> | ||||
| </list></t> | ||||
| <t>A segment can represent any instruction, topological or service-base | ||||
| d. | ||||
| SIDs can be looked up in a global context (domain wide) as well as i | ||||
| n some other | ||||
| context (see, for example, "context labels" in Section 3 of <xref ta | ||||
| rget="RFC5331" />).</t> | ||||
| <t>The application of "policy" to Segment Routing can make SR into a TE | ||||
| mechanism as described | ||||
| in <xref target="SRPolicy" />.</t> | ||||
| </section> | ||||
| <section anchor="BIER-TE" title="Bit Index Explicit Replication Tree Engin | ||||
| eering"> | ||||
| <t>Bit Index Explicit Replication (BIER) <xref target="RFC8279"/> speci | ||||
| fies an encapsulation for | ||||
| multicast forwarding that can be used on MPLS or Ethernet transports | ||||
| . A mechanism known as | ||||
| Tree Engineering for Bit Index Explicit Replication (BIER-TE) <xref | ||||
| target="RFC9262"/> | ||||
| provides a component that could be used to build a traffic-engineere | ||||
| d multicast system. | ||||
| BIER-TE does not of itself offer full traffic engineering, and the a | ||||
| bbreviation "TE" does not, in | ||||
| this case, refer to traffic engineering.</t> | ||||
| <t>In BIER-TE, path steering is supported via the definition of a bitst | ||||
| ring attached to each packet | ||||
| that determines how the packet is forwarded and replicated within th | ||||
| e network. Thus, this | ||||
| bitstring steers the traffic within the network and forms an element | ||||
| of a traffic engineering | ||||
| system. A central controller that is aware of the capabilities and | ||||
| state of the network as | ||||
| well as the demands of the various traffic flows, is able to select | ||||
| multicast paths that | ||||
| take account of the available resources and demands. This controlle | ||||
| r, therefore, is responsible | ||||
| for the policy elements of traffic engineering.</t> | ||||
| <t>Resource management has implications for the forwarding plane beyond | ||||
| the steering of packets | ||||
| defined for BIER-TE. These include the allocation of buffers to mee | ||||
| t the requirements of admitted | ||||
| traffic, and may include policing and/or rate-shaping mechanisms ach | ||||
| ieved via various forms of | ||||
| queuing. This level of resource control, while optional, is importa | ||||
| nt in networks that wish to | ||||
| support congestion management policies to control or regulate the of | ||||
| fered traffic to deliver different | ||||
| levels of service and alleviate congestion problems, or those networ | ||||
| ks that wish to control latencies | ||||
| experienced by specific traffic flows.</t> | ||||
| </section> | ||||
| <section anchor="STATE" title="Network TE State Definition and Presentatio | ||||
| n"> | ||||
| <t>The network states that are relevant to TE need to be | ||||
| stored in the system and presented to the user. The Traffic | ||||
| Engineering Database (TED) is a collection of all TE information | ||||
| about all TE nodes and TE links in the network. It is | ||||
| an essential component of a TE system, such as MPLS-TE <xref target=" | ||||
| RFC2702" /> | ||||
| or GMPLS <xref target ="RFC3945" />. In order to formally define the | ||||
| data | ||||
| in the TED and to present the data to the user, the data | ||||
| modeling language YANG <xref target="RFC7950" /> can be used as descr | ||||
| ibed in | ||||
| <xref target="RFC8795" />.</t> | ||||
| </section> | </section> | |||
| <section anchor="CDN" numbered="true" toc="default"> | ||||
| <section anchor="SYSMAN" title="System Management and Control Interfaces"> | <name>Content Distribution</name> | |||
| <t>The Internet is dominated by client-server interactions, | ||||
| <t>The TE control system needs to have a management | principally web traffic and multimedia streams, although in the | |||
| interface that is human-friendly and a control interface that is | future, more sophisticated media servers may become dominant. The | |||
| programmable for automation. The Network Configuration Protocol (NET | location and performance of major information servers have a | |||
| CONF) | significant impact on the traffic patterns within the Internet as well | |||
| <xref target="RFC6241" /> or the RESTCONF Protocol <xref target="RFC8 | as on the perception of service quality by end users.</t> | |||
| 040" /> | <t>A number of dynamic load-balancing techniques have been devised to | |||
| provide programmable interfaces that are also human-friendly. These | improve the performance of replicated information servers. These | |||
| protocols use XML or JSON encoded messages. When message compactness | techniques can cause spatial traffic characteristics to become more | |||
| or | dynamic in the Internet because information servers can be dynamically | |||
| protocol bandwidth consumption needs to be optimized for the control | picked based upon the location of the clients, the location of the | |||
| interface, other protocols, such as Group Communication for the Const | servers, the relative utilization of the servers, the relative | |||
| rained | performance of different networks, and the relative performance of | |||
| Application Protocol (CoAP) <xref target="RFC7390" /> or gRPC <xref t | different parts of a network. This process of assignment of | |||
| arget="GRPC" />, are available, | distributed servers to clients is called "traffic directing". It is an | |||
| especially when the protocol messages are encoded in a binary format. | application-layer function.</t> | |||
| Along | <t>Traffic-directing schemes that allocate servers in multiple | |||
| with any of these protocols, the data modeling language YANG | geographically dispersed locations to clients may require empirical | |||
| <xref target="RFC7950" /> can be used to formally and precisely defin | network performance statistics to make more effective decisions. In | |||
| e the | the future, network measurement systems may need to provide this type | |||
| interface data.</t> | of information.</t> | |||
| <t>When congestion exists in the network, traffic-directing and | ||||
| <t>The Path Computation Element Communication Protocol (PCEP) | traffic-engineering systems should act in a coordinated manner. This | |||
| <xref target="RFC5440" /> is another protocol that has evolved to be | topic is for further study.</t> | |||
| an option | <t>The issues related to location and replication of information | |||
| for the TE system control interface. The messages of PCEP are TLV-ba | servers, particularly web servers, are important for Internet traffic | |||
| sed, | engineering because these servers contribute a substantial proportion | |||
| not defined by a data modeling language such as YANG.</t> | of Internet traffic.</t> | |||
| </section> | </section> | |||
| </section> | </section> | |||
| <section anchor="RECO" numbered="true" toc="default"> | ||||
| </section> | <name>Recommendations for Internet Traffic Engineering</name> | |||
| <t>This section describes high-level recommendations for traffic | ||||
| <section anchor="CDN" title="Content Distribution"> | engineering in the Internet in general terms.</t> | |||
| <t>The recommendations describe the capabilities needed to solve a TE | ||||
| <t>The Internet is dominated by client-server interactions, principally | problem or to achieve a TE objective. Broadly speaking, these | |||
| Web traffic and multimedia streams, although in the future, more sophisti | recommendations can be categorized as either functional or | |||
| cated media servers may | non-functional recommendations: </t> | |||
| become dominant. The location and performance of major information | <ul spacing="normal"> | |||
| servers has a significant impact on the traffic patterns within the | <li>Functional recommendations describe the functions that a traffic-eng | |||
| Internet as well as on the perception of service quality by end | ineering system | |||
| users.</t> | should perform. These functions are needed to realize TE objectives | |||
| by addressing traffic-engineering problems.</li> | ||||
| <t>A number of dynamic load-balancing techniques have been devised to | <li>Non-functional recommendations relate to the quality attributes or | |||
| improve the performance of replicated information servers. These | state characteristics of a TE system. These recommendations may | |||
| techniques can cause spatial traffic characteristics to become more | contain conflicting assertions and may sometimes be difficult to | |||
| dynamic in the Internet because information servers can be | quantify precisely.</li> | |||
| dynamically picked based upon the location of the clients, the | </ul> | |||
| location of the servers, the relative utilization of the servers, the | <t>The subsections that follow first summarize the non-functional | |||
| relative performance of different networks, and the relative | requirements and then detail the functional requirements.</t> | |||
| performance of different parts of a network. This process of | <section anchor="HIGHOBJ" numbered="true" toc="default"> | |||
| assignment of distributed servers to clients is called traffic | <name>Generic Non-functional Recommendations</name> | |||
| directing. It is an application layer function.</t> | <t>The generic non-functional recommendations for Internet traffic | |||
| engineering are listed in the paragraphs that follow. In a given | ||||
| <t>Traffic directing schemes that allocate servers in multiple | context, some of these recommendations may be critical while others | |||
| geographically dispersed locations to clients may require empirical | may be optional. Therefore, prioritization may be required during the | |||
| network performance statistics to make more effective decisions. In | development phase of a TE system to tailor it to a specific | |||
| the future, network measurement systems may need to provide this type | operational context.</t> | |||
| of information.</t> | <dl newline="false" spacing="normal"> | |||
| <dt>Automation:</dt> | ||||
| <t>When congestion exists in the network, traffic directing and traffic | <dd>Whenever feasible, a TE system should automate as many TE | |||
| engineering systems should act in a coordinated manner. This topic | functions as possible to minimize the amount of human effort needed | |||
| is for further study.</t> | to analyze and control operational networks. Automation is | |||
| particularly important in large-scale public networks because of the | ||||
| <t>The issues related to location and replication of information | high cost of the human aspects of network operations and the high | |||
| servers, particularly web servers, are important for Internet traffic | risk of network problems caused by human errors. Automation may | |||
| engineering because these servers contribute a substantial proportion | additionally benefit from feedback from the network that indicates | |||
| of Internet traffic.</t> | the state of network resources and the current load in the network. | |||
| Further, placing intelligence into components of the TE system could | ||||
| </section> | enable automation to be more dynamic and responsive to changes in | |||
| the network.</dd> | ||||
| </section> | <dt>Flexibility:</dt> | |||
| <dd>A TE system should allow for changes in optimization policy. In | ||||
| <section anchor="RECO" title="Recommendations for Internet Traffic Engineering"> | particular, a TE system should provide sufficient configuration | |||
| options so that a network administrator can tailor the system to a | ||||
| <t>This section describes high-level recommendations for traffic | particular environment. It may also be desirable to have both | |||
| engineering in the Internet in general terms.</t> | online and offline TE subsystems that can be independently enabled | |||
| and disabled. TE systems that are used in multi-class networks | ||||
| <t>The recommendations describe the capabilities needed to solve a | should also have options to support class-based performance | |||
| TE problem or to achieve a TE | evaluation and optimization.</dd> | |||
| objective. Broadly speaking, these recommendations can be | <dt>Interoperability:</dt> | |||
| categorized as either functional or non-functional recommendations. | <dd>Whenever feasible, TE systems and their components should be | |||
| developed with open standards-based interfaces to allow | ||||
| <list style="symbols"> | interoperation with other systems and components.</dd> | |||
| <t>Functional recommendations describe the functions that a traffic | <dt>Scalability:</dt> | |||
| engineering system should perform. These functions are needed to | <dd>Public networks continue to grow rapidly with respect to | |||
| realize TE objectives by addressing traffic | network size and traffic volume. Therefore, to remain applicable as | |||
| engineering problems.</t> | the network evolves, a TE system should be scalable. In particular, | |||
| a TE system should remain functional as the network expands with | ||||
| <t>Non-functional recommendations relate to the quality attributes | regard to the number of routers and links and with respect to the | |||
| or state characteristics of a TE system. These | number of flows and the traffic volume. A TE system should have a | |||
| recommendations may contain conflicting assertions and may sometimes | scalable architecture, should not adversely impair other functions | |||
| be difficult to quantify precisely.</t> | and processes in a network element, and should not consume too many | |||
| </list></t> | network resources when collecting and distributing state | |||
| information or when exerting control.</dd> | ||||
| <t>The subsections that follow first summarize the non-functional | <dt>Security:</dt> | |||
| requirements, and then detail the functional requirements.</t> | <dd>Security is a critical consideration in TE systems. Such | |||
| systems typically exert control over functional aspects of the | ||||
| <section anchor="HIGHOBJ" title="Generic Non-functional Recommendations"> | network to achieve the desired performance objectives. Therefore, | |||
| adequate measures must be taken to safeguard the integrity of the TE | ||||
| <t>The generic non-functional recommendations for Internet traffic | system. Adequate measures must also be taken to protect the network | |||
| engineering are listed in the paragraphs that follow. In a given | from vulnerabilities that originate from security breaches and other | |||
| context, some of these recommendations may be critical while others | impairments within the TE system.</dd> | |||
| may be optional. Therefore, prioritization may be required during | <dt>Simplicity:</dt> | |||
| the development phase of a TE system to tailor it | <dd>A TE system should be as simple as possible. Simplicity in | |||
| to a specific operational context.</t> | user interface does not necessarily imply that the TE system will | |||
| use naive algorithms. When complex algorithms and internal | ||||
| <t><list style="hanging"> | structures are used, the user interface should hide such | |||
| <t hangText='Automation:'> | complexities from the network administrator as much as | |||
| Whenever feasible, a TE system should automate as many TE functions a | possible.</dd> | |||
| s | <dt>Stability:</dt> | |||
| possible to minimize the amount of human effort needed to analyze and | <dd>Stability refers to the resistance of the network to oscillate | |||
| control | (flap) in a disruptive manner from one state to another, which may | |||
| operational networks. Automation is particularly important in large- | result in traffic being routed first one way and then another | |||
| scale public | without satisfactory resolution of the underlying TE issues and | |||
| networks because of the high cost of the human aspects of network ope | with continued changes that do not settle down. Stability is a very | |||
| rations and | important consideration in TE systems that respond to changes in the | |||
| the high risk of network problems caused by human errors. Automation | state of the network. State-dependent TE methodologies typically | |||
| may additionally | include a trade-off between responsiveness and stability. It is | |||
| benefit from feedback from the network that indicates the state of ne | strongly recommended that when a trade-off between responsiveness | |||
| twork | and stability is needed, it should be made in favor of stability | |||
| resources and the current load in the network. Further, placing inte | (especially in public IP backbone networks).</dd> | |||
| lligence into | <dt>Usability:</dt> | |||
| components of the TE system could enable automation to be more dynami | <dd>Usability is a human aspect of TE systems. It refers to the | |||
| c and responsive | ease with which a TE system can be deployed and operated. In | |||
| to changes in the network.</t> | general, it is desirable to have a TE system that can be readily | |||
| deployed in an existing network. It is also desirable to have a TE | ||||
| <t hangText='Flexibility:'> | system that is easy to operate and maintain.</dd> | |||
| A TE system should allow for changes in optimization policy. In part | <dt>Visibility:</dt> | |||
| icular, a | <dd>Mechanisms should exist as part of the TE system to collect | |||
| TE system should provide sufficient configuration options so that a n | statistics from the network and to analyze these statistics to | |||
| etwork | determine how well the network is functioning. Derived statistics | |||
| administrator can tailor the system to a particular environment. It | (such as traffic matrices, link utilization, latency, packet loss, | |||
| may also be | and other performance measures of interest) that are determined from | |||
| desirable to have both online and offline TE subsystems which can be | network measurements can be used as indicators of prevailing network | |||
| independently | conditions. The capabilities of the various components of the | |||
| enabled and disabled. TE systems that are used in multi-class networ | routing system are other examples of status information that should | |||
| ks should also | be observable.</dd> | |||
| have options to support class-based performance evaluation and optimi | </dl> | |||
| zation.</t> | </section> | |||
| <section anchor="ROUTEREC" numbered="true" toc="default"> | ||||
| <t hangText='Interoperability:'> | <name>Routing Recommendations</name> | |||
| Whenever feasible, TE systems and their components should be develope | <t>Routing control is a significant aspect of Internet traffic | |||
| d with open | ||||
| standards-based interfaces to allow interoperation with other systems | ||||
| and components.</t> | ||||
| <t hangText='Scalability:'> | ||||
| Public networks continue to grow rapidly with respect to network size | ||||
| and | ||||
| traffic volume. Therefore, to remain applicable as the network evolv | ||||
| es, a | ||||
| TE system should be scalable. In particular, a TE system should rema | ||||
| in | ||||
| functional as the network expands with regard to the number of router | ||||
| s and | ||||
| links, and with respect to the number of flows and the traffic volume | ||||
| . A TE system should have a | ||||
| scalable architecture, should not adversely impair other functions an | ||||
| d | ||||
| processes in a network element, and should not consume too many netwo | ||||
| rk | ||||
| resources when collecting and distributing state information, or when | ||||
| exerting control.</t> | ||||
| <t hangText='Security:'> | ||||
| Security is a critical consideration in TE systems. Such systems typ | ||||
| ically exert | ||||
| control over functional aspects of the network to achieve the desired | ||||
| performance | ||||
| objectives. Therefore, adequate measures must be taken to safeguard | ||||
| the integrity | ||||
| of the TE system. Adequate measures must also be taken to protect th | ||||
| e network from | ||||
| vulnerabilities that originate from security breaches and other impai | ||||
| rments within | ||||
| the TE system.</t> | ||||
| <t hangText='Simplicity:'> | ||||
| A TE system should be as simple as possible. Simplicity in user inte | ||||
| rface does | ||||
| not necessarily imply that the TE system will use naive algorithms. | ||||
| When complex | ||||
| algorithms and internal structures are used, the user interface shoul | ||||
| d hide such | ||||
| complexities from the network administrator as much as possible.</t> | ||||
| <t hangText='Stability:'> | ||||
| Stability refers to the resistance of the network to oscillate (flap | ||||
| ) in a disruptive | ||||
| manner from one state to another, which may result in traffic being | ||||
| routed first one | ||||
| way and then another without satisfactory resolution of the underlyi | ||||
| ng TE issues, and | ||||
| with continued changes that do not settle down. Stability is a very | ||||
| important | ||||
| consideration in TE systems that respond to changes in the state of | ||||
| the network. | ||||
| State-dependent TE methodologies typically include a trade-off betwe | ||||
| en responsiveness | ||||
| and stability. It is strongly recommended that when a trade-off bet | ||||
| ween responsiveness | ||||
| and stability is needed, it should be made in favor of stability (es | ||||
| pecially in public | ||||
| IP backbone networks).</t> | ||||
| <t hangText='Usability:'> | ||||
| Usability is a human aspect of TE systems. It | ||||
| refers to the ease with which a TE system can be | ||||
| deployed and operated. In general, it is desirable to have a TE | ||||
| system that can be readily deployed in an existing network. It is | ||||
| also desirable to have a TE system that is easy to operate and mainta | ||||
| in.</t> | ||||
| <t hangText='Visibility:'> | ||||
| Mechanisms should exist as part of the TE system to collect statistic | ||||
| s from the | ||||
| network and to analyze these statistics to determine how well the net | ||||
| work is | ||||
| functioning. Derived statistics such as traffic matrices, link utili | ||||
| zation, | ||||
| latency, packet loss, and other performance measures of interest whic | ||||
| h are | ||||
| determined from network measurements can be used as indicators of pre | ||||
| vailing | ||||
| network conditions. The capabilities of the various components of th | ||||
| e routing | ||||
| system are other examples of status information which should be obser | ||||
| vable.</t> | ||||
| </list></t> | ||||
| </section> | ||||
| <section anchor="ROUTEREC" title="Routing Recommendations"> | ||||
| <t>Routing control is a significant aspect of Internet traffic | ||||
| engineering. Routing impacts many of the key performance measures | engineering. Routing impacts many of the key performance measures | |||
| associated with networks, such as throughput, delay, and utilization. | associated with networks, such as throughput, delay, and utilization. | |||
| Generally, it is very difficult to provide good service quality in a | Generally, it is very difficult to provide good service quality in a | |||
| wide area network without effective routing control. A desirable TE | wide area network without effective routing control. A desirable TE | |||
| routing system is one that takes traffic characteristics and network | routing system is one that takes traffic characteristics and network | |||
| constraints into account during route selection while maintaining | constraints into account during route selection while maintaining | |||
| stability.</t> | stability.</t> | |||
| <t>Shortest Path First (SPF) IGPs are based on shortest path | ||||
| algorithms and have limited control capabilities for TE <xref | ||||
| target="RFC2702" format="default"/> <xref target="AWD2" | ||||
| format="default"/>. These limitations include:</t> | ||||
| <ol spacing="normal" type="1"> | ||||
| <li><t>Pure SPF protocols do not take network constraints and | ||||
| traffic characteristics into account during route selection. For | ||||
| example, IGPs always select the shortest paths based on link metrics | ||||
| assigned by administrators, so load sharing cannot be performed | ||||
| across paths of different costs. Note that link metrics are | ||||
| assigned following a range of operator-selected policies that might | ||||
| reflect preference for the use of some links over others; therefore, | ||||
| "shortest" might not be purely a measure of distance. Using | ||||
| shortest paths to forward traffic may cause the following | ||||
| problems:</t> | ||||
| <ul spacing="normal"> | ||||
| <li>If traffic from a source to a destination exceeds the | ||||
| capacity of a link along the shortest path, the link (and hence | ||||
| the shortest path) becomes congested while a longer path between | ||||
| these two nodes may be under-utilized.</li> | ||||
| <li>The shortest paths from different sources can overlap at | ||||
| some links. If the total traffic from the sources exceeds the | ||||
| capacity of any of these links, congestion will occur.</li> | ||||
| <li>Problems can also occur because traffic demand changes over | ||||
| time, but network topology and routing configuration cannot be | ||||
| changed as rapidly. This causes the network topology and | ||||
| routing configuration to become sub-optimal over time, which may | ||||
| result in persistent congestion problems.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li>The Equal-Cost Multipath (ECMP) capability of SPF IGPs supports | ||||
| sharing of traffic among equal-cost paths. However, ECMP attempts | ||||
| to divide the traffic as equally as possible among the equal-cost | ||||
| shortest paths. Generally, ECMP does not support configurable | ||||
| load-sharing ratios among equal-cost paths. The result is that one | ||||
| of the paths may carry significantly more traffic than other paths | ||||
| because it may also carry traffic from other sources. This | ||||
| situation can result in congestion along the path that carries more | ||||
| traffic. Weighted ECMP (WECMP) (see, for example, <xref | ||||
| target="I-D.ietf-bess-evpn-unequal-lb" format="default"/>) provides | ||||
| some mitigation.</li> | ||||
| <li>Modifying IGP metrics to control traffic routing tends to have | ||||
| network-wide effects. Consequently, undesirable and unanticipated | ||||
| traffic shifts can be triggered as a result. Work described in | ||||
| <xref target="PRACTICE" format="default"/> may be capable of better | ||||
| control <xref target="FT00" format="default"/> <xref target="FT01" | ||||
| format="default"/>.</li> | ||||
| </ol> | ||||
| <t>Because of these limitations, capabilities are needed to enhance | ||||
| the routing function in IP networks. Some of these capabilities are | ||||
| summarized below:</t> | ||||
| <ul spacing="normal"> | ||||
| <li>Constraint-based routing computes routes to fulfill requirements | ||||
| subject to constraints. This can be useful in public IP backbones | ||||
| with complex topologies. Constraints may include bandwidth, hop | ||||
| count, delay, and administrative policy instruments, such as resource | ||||
| class attributes <xref target="RFC2702" format="default"/> <xref | ||||
| target="RFC2386" format="default"/>. This makes it possible to | ||||
| select routes that satisfy a given set of requirements. Routes | ||||
| computed by constraint-based routing are not necessarily the | ||||
| shortest paths. Constraint-based routing works best with | ||||
| path-oriented technologies that support explicit routing, such as | ||||
| MPLS.</li> | ||||
| <li>Constraint-based routing can also be used as a way to distribute | ||||
| traffic onto the infrastructure, including for best-effort traffic. | ||||
| For example, congestion problems caused by uneven traffic | ||||
| distribution may be avoided or reduced by knowing the reservable | ||||
| bandwidth attributes of the network links and by specifying the | ||||
| bandwidth requirements for path selection.</li> | ||||
| <li>A number of enhancements to the link-state IGPs allow them to | ||||
| distribute additional state information required for | ||||
| constraint-based routing. The extensions to OSPF are described in | ||||
| <xref target="RFC3630" format="default"/>, and the extensions to | ||||
| IS-IS are described in <xref target="RFC5305" format="default"/>. | ||||
| Some of the additional topology state information includes link | ||||
| attributes, such as reservable bandwidth and link resource class | ||||
| attribute (an administratively specified property of the link). The | ||||
| resource class attribute concept is defined in <xref | ||||
| target="RFC2702" format="default"/>. The additional topology state | ||||
| information is carried in new TLVs and sub-TLVs in IS-IS <xref | ||||
| target="RFC5305" format="default"/> or in the Opaque LSA in OSPF | ||||
| <xref target="RFC3630" format="default"/>.</li> | ||||
| <t>Shortest path first (SPF) IGPs are based on shortest path algorithms | <li>An enhanced link-state IGP may flood information more frequently | |||
| and have limited control capabilities for TE <xref target="RFC2702"/>, | than a normal IGP. This is because even without changes in | |||
| <xref target="AWD2"/>. These limitations include: | topology, changes in reservable bandwidth or link affinity can | |||
| trigger the enhanced IGP to initiate flooding. A trade-off between | ||||
| <list style="numbers"> | the timeliness of the information flooded and the flooding frequency | |||
| <t>Pure SPF protocols do not take network constraints and traffic | is typically implemented using a threshold based on the percentage | |||
| characteristics into account during route selection. For example, | change of the advertised resources to avoid excessive consumption of | |||
| IGPs always select the shortest paths based on link metrics assigned | link bandwidth and computational resources and to avoid instability | |||
| by administrators, so load sharing cannot be performed across paths | in the TED.</li> | |||
| of different costs. Note that link metrics are assigned following a | <li>In a TE system, it is also desirable for the routing subsystem | |||
| range of operator-selected policies that might reflect preference fo | to make the load-splitting ratio among multiple paths (with equal | |||
| r | cost or different cost) configurable. This capability gives network | |||
| the use of some links over others, and "shortest" might not, therefo | ||||
| re, | ||||
| be purely a measure of distance. Using shortest paths to forward tr | ||||
| affic | ||||
| may cause the following problems: | ||||
| <list style="symbols"> | ||||
| <t>If traffic from a source to a destination exceeds the capacity | ||||
| of a link along the shortest path, the link (and hence the shor | ||||
| test | ||||
| path) becomes congested while a longer path between these two | ||||
| nodes may be under-utilized.</t> | ||||
| <t>The shortest paths from different sources can overlap at some | ||||
| links. If the total traffic from the sources exceeds the | ||||
| capacity of any of these links, congestion will occur.</t> | ||||
| <t>Problems can also occur because traffic demand changes over tim | ||||
| e, | ||||
| but network topology and routing configuration cannot be change | ||||
| d | ||||
| as rapidly. This causes the network topology and routing | ||||
| configuration to become sub-optimal over time, which may result | ||||
| in | ||||
| persistent congestion problems.</t> | ||||
| </list></t> | ||||
| <t>The Equal-Cost Multi-Path (ECMP) capability of SPF IGPs supports | ||||
| sharing of traffic among equal-cost paths. | ||||
| However, ECMP attempts to divide the traffic as equally as | ||||
| possible among the equal-cost shortest paths. Generally, ECMP | ||||
| does not support configurable load sharing ratios among equal cost | ||||
| paths. The result is that one of the paths may carry | ||||
| significantly more traffic than other paths because it may also | ||||
| carry traffic from other sources. This situation can result in | ||||
| congestion along the path that carries more traffic. Weighted ECMP | ||||
| (WECMP) (see, for example, <xref target="I-D.ietf-bess-evpn-unequal- | ||||
| lb" />) | ||||
| provides some mitigation.</t> | ||||
| <t>Modifying IGP metrics to control traffic routing tends to have | ||||
| network-wide effects. Consequently, undesirable and unanticipated | ||||
| traffic shifts can be triggered as a result. Work | ||||
| described in <xref target="PRACTICE"/> may be capable of better | ||||
| control <xref target="FT00"/>, <xref target="FT01"/>.</t> | ||||
| </list></t> | ||||
| <t>Because of these limitations, capabilities are needed to enhance | ||||
| the routing function in IP networks. Some of these capabilities are | ||||
| summarized below.</t> | ||||
| <t><list style="symbols"> | ||||
| <t>Constraint-based routing computes routes to fulfill requirements | ||||
| subject to constraints. This can be useful in public IP backbones wit | ||||
| h | ||||
| complex topologies. Constraints may include bandwidth, hop count, del | ||||
| ay, | ||||
| and administrative policy instruments such as resource class attribute | ||||
| s | ||||
| <xref target="RFC2702"/>, <xref target="RFC2386"/>. This makes it pos | ||||
| sible | ||||
| to select routes that satisfy a given set of requirements. Routes com | ||||
| puted | ||||
| by constraint-based routing are not necessarily the shortest paths. | ||||
| Constraint-based routing works best with path-oriented technologies th | ||||
| at | ||||
| support explicit routing, such as MPLS.</t> | ||||
| </list></t> | ||||
| <t><list style="none"> | ||||
| <t>Constraint-based routing can also be used as a way to distribute traff | ||||
| ic | ||||
| onto the infrastructure, including for best effort traffic. For examp | ||||
| le, | ||||
| congestion problems caused by uneven traffic distribution may be avoid | ||||
| ed | ||||
| or reduced by knowing the reservable bandwidth attributes of the netwo | ||||
| rk | ||||
| links and by specifying the bandwidth requirements for path selection. | ||||
| </t> | ||||
| </list></t> | ||||
| <t><list style="symbols"> | ||||
| <t>A number of enhancements to the link state IGPs allow them | ||||
| to distribute additional state information required for constraint-bas | ||||
| ed | ||||
| routing. The extensions to OSPF are described in <xref target="RFC363 | ||||
| 0"/>, | ||||
| and to IS-IS in <xref target="RFC5305"/>. Some of the additional topo | ||||
| logy | ||||
| state information includes link attributes such as reservable bandwidt | ||||
| h and | ||||
| link resource class attribute (an administratively specified property | ||||
| of | ||||
| the link). The resource class attribute concept is defined in | ||||
| <xref target="RFC2702"/>. The additional topology state information i | ||||
| s | ||||
| carried in new TLVs and sub-TLVs in IS-IS, or in the Opaque LSA in OSP | ||||
| F | ||||
| <xref target="RFC5305"/>, <xref target="RFC3630"/>.</t> | ||||
| </list></t> | ||||
| <t><list style="none"> | ||||
| <t>An enhanced link-state IGP may flood information more frequently than | ||||
| a normal IGP. This is because even without changes in topology, | ||||
| changes in reservable bandwidth or link affinity can trigger the | ||||
| enhanced IGP to initiate flooding. A trade-off between the timeliness | ||||
| of | ||||
| the information flooded and the flooding frequency is typically implem | ||||
| ented | ||||
| using a threshold based on the percentage change of the advertised res | ||||
| ources | ||||
| to avoid excessive consumption of link bandwidth and computational res | ||||
| ources, | ||||
| and to avoid instability in the TED.</t> | ||||
| </list></t> | ||||
| <t><list style="symbols"> | ||||
| <t>In a TE system, it is also desirable for the routing subsystem to | ||||
| make the load splitting ratio among multiple paths (with equal cost | ||||
| or different cost) configurable. This capability gives network | ||||
| administrators more flexibility in the control of traffic | administrators more flexibility in the control of traffic | |||
| distribution across the network. It can be very useful for | distribution across the network. It can be very useful for | |||
| avoiding/relieving congestion in certain situations. Examples can be | avoiding/relieving congestion in certain situations. Examples can | |||
| found in <xref target="XIAO"/> and <xref target="I-D.ietf-bess-evpn-un | be found in <xref target="XIAO" format="default"/> and <xref | |||
| equal-lb" />.</t> | target="I-D.ietf-bess-evpn-unequal-lb" format="default"/>.</li> | |||
| <li>The routing system should also have the capability to control | ||||
| <t>The routing system should also have the capability to control the | the routes of subsets of traffic without affecting the routes of | |||
| routes of subsets of traffic without affecting the routes of other | other traffic if sufficient resources exist for this purpose. This | |||
| traffic if sufficient resources exist for this purpose. This | ||||
| capability allows a more refined control over the distribution of | capability allows a more refined control over the distribution of | |||
| traffic across the network. For example, the ability to move traffic | traffic across the network. For example, the ability to move | |||
| away from its original path to another path (without affecting other | traffic away from its original path to another path (without | |||
| traffic paths) allows the traffic to be moved from resource-poor netwo | affecting other traffic paths) allows the traffic to be moved from | |||
| rk | resource-poor network segments to resource-rich segments. | |||
| segments to resource-rich segments. Path oriented technologies such a | Path-oriented technologies, such as MPLS-TE, inherently support this | |||
| s | capability as discussed in <xref target="AWD2" | |||
| MPLS-TE inherently support this capability as discussed in <xref targe | format="default"/>.</li> | |||
| t="AWD2"/>.</t> | <li>Additionally, the routing subsystem should be able to select | |||
| <t>Additionally, the routing subsystem should be able to select | ||||
| different paths for different classes of traffic (or for different | different paths for different classes of traffic (or for different | |||
| traffic behavior aggregates) if the network supports multiple classes | traffic behavior aggregates) if the network supports multiple | |||
| of service (different behavior aggregates).</t> | classes of service (different behavior aggregates).</li> | |||
| </list></t> | </ul> | |||
| </section> | ||||
| </section> | <section anchor="MAPREC" numbered="true" toc="default"> | |||
| <name>Traffic Mapping Recommendations</name> | ||||
| <section anchor="MAPREC" title="Traffic Mapping Recommendations"> | <t>Traffic mapping is the assignment of traffic workload onto | |||
| (pre-established) paths to meet certain requirements. Thus, while | ||||
| <t>Traffic mapping is the assignment of traffic workload onto | constraint-based routing deals with path selection, traffic mapping | |||
| (pre-established) paths to meet certain requirements. Thus, while | deals with the assignment of traffic to established paths that may | |||
| constraint-based routing deals with path selection, traffic mapping | have been generated by constraint-based routing or by some other | |||
| deals with the assignment of traffic to established paths which may | means. Traffic mapping can be performed by time-dependent or | |||
| have been generated by constraint-based routing or by some other | state-dependent mechanisms, as described in <xref target="TIME" | |||
| means. Traffic mapping can be performed by time-dependent or state- | format="default"/>.</t> | |||
| dependent mechanisms, as described in <xref target="TIME"/>.</t> | <t>Two important aspects of the traffic mapping function are the | |||
| ability to establish multiple paths between an originating node and a | ||||
| <t>An important aspect of the traffic mapping function is the ability to | destination node and the capability to distribute the traffic across | |||
| establish multiple paths between an originating node and a destination | those paths according to configured policies. A precondition for this | |||
| node, and the capability to distribute the traffic between the two | scheme is the existence of flexible mechanisms to partition traffic | |||
| nodes across the paths according to configured policies. A precondition | and then assign the traffic partitions onto the parallel paths | |||
| for this scheme is the existence of flexible mechanisms to partition | (described as "parallel traffic trunks" in <xref target="RFC2702" | |||
| traffic and then assign the traffic partitions onto the parallel paths | format="default"/>). When traffic is assigned to multiple parallel | |||
| (described as "parallel traffic trunks" in <xref target="RFC2702"/>). | paths, it is recommended that special care should be taken to ensure | |||
| When traffic is assigned to multiple parallel paths, it is recommended | proper ordering of packets belonging to the same application (or | |||
| that special care should be taken to ensure proper ordering of packets | traffic flow) at the destination node of the parallel paths.</t> | |||
| belonging to the same application (or traffic flow) at the destination | <t>Mechanisms that perform the traffic mapping functions should aim to | |||
| node of the parallel paths.</t> | map the traffic onto the network infrastructure to minimize | |||
| congestion. If the total traffic load cannot be accommodated, or if | ||||
| <t>Mechanisms that perform the traffic mapping functions should aim to map | the routing and mapping functions cannot react fast enough to changing | |||
| the traffic onto the network infrastructure to minimize congestion. If | traffic conditions, then a traffic mapping system may use short | |||
| the total traffic load cannot be accommodated, or if the routing and | timescale congestion control mechanisms (such as queue management, | |||
| mapping functions cannot react fast enough to changing traffic | scheduling, etc.) to mitigate congestion. Thus, mechanisms that | |||
| conditions, then a traffic mapping system may use short timescale | perform the traffic mapping functions complement existing congestion | |||
| congestion control mechanisms (such as queue management, scheduling, | control mechanisms. In an operational network, traffic should be | |||
| etc.) to mitigate congestion. Thus, mechanisms that perform the traffic | mapped onto the infrastructure such that intra-class and inter-class | |||
| mapping functions complement existing congestion control mechanisms. In | resource contention are minimized (see <xref target="BG" | |||
| an operational network, traffic should be mapped onto the infrastructure | format="default"/>).</t> | |||
| such that intra-class and inter-class resource contention are minimized | <t>When traffic mapping techniques that depend on dynamic state | |||
| (see <xref target="BG" />).</t> | feedback (e.g., MPLS Adaptive Traffic Engineering (MATE) <xref target="M | |||
| ATE" format="default"/> and | ||||
| <t>When traffic mapping techniques that depend on dynamic state feedback | suchlike) are used, special care must be taken to guarantee network | |||
| (e.g., MATE <xref target="MATE" /> and suchlike) are used, special care | stability.</t> | |||
| must be taken to guarantee network stability.</t> | </section> | |||
| <section anchor="MSRREC" numbered="true" toc="default"> | ||||
| </section> | <name>Measurement Recommendations</name> | |||
| <t>The importance of measurement in TE has been discussed throughout | ||||
| <section anchor="MSRREC" title="Measurement Recommendations"> | this document. A TE system should include mechanisms to measure and | |||
| collect statistics from the network to support the TE function. | ||||
| <t>The importance of measurement in TE has been discussed | Additional capabilities may be needed to help in the analysis of the | |||
| throughout this document. A TE system should include mechanisms to | statistics. The actions of these mechanisms should not adversely | |||
| measure and collect statistics from the network to support the TE | affect the accuracy and integrity of the statistics collected. The | |||
| function. Additional capabilities may be needed to help in the analysis | mechanisms for statistical data acquisition should also be able to | |||
| of the statistics. The actions of these mechanisms should not adversely | scale as the network evolves.</t> | |||
| affect the accuracy and integrity of the statistics collected. The | <t>Traffic statistics may be classified according to long-term or | |||
| mechanisms for statistical data acquisition should also be able to scale | short-term timescales. Long-term traffic statistics are very useful | |||
| as the network evolves.</t> | for traffic engineering. Long-term traffic statistics may | |||
| periodically record network workload (such as hourly, daily, and | ||||
| <t>Traffic statistics may be classified according to long-term or short-term | weekly variations in traffic profiles) as well as traffic trends. | |||
| timescales. Long-term traffic statistics are very useful for traffic | Aspects of the traffic statistics may also describe class of service | |||
| engineering. Long-term traffic statistics may periodically record networ | characteristics for a network supporting multiple classes of service. | |||
| k | Analysis of the long-term traffic statistics may yield other | |||
| workload (such as hourly, daily, and weekly variations in traffic profile | information such as busy-hour characteristics, traffic growth | |||
| s) as | patterns, persistent congestion problems, hotspots, and imbalances in | |||
| well as traffic trends. Aspects of the traffic statistics may also descr | link utilization caused by routing anomalies.</t> | |||
| ibe | <t>A mechanism for constructing traffic matrices for both long-term | |||
| class of service characteristics for a network supporting multiple classe | and short-term traffic statistics should be in place. In | |||
| s of | multi-service IP networks, the traffic matrices may be constructed for | |||
| service. Analysis of the long-term traffic statistics may yield other in | different service classes. Each element of a traffic matrix | |||
| formation | represents a statistic about the traffic flow between a pair of | |||
| such as busy-hour characteristics, traffic growth patterns, persistent co | abstract nodes. An abstract node may represent a router, a collection | |||
| ngestion | of routers, or a site in a VPN.</t> | |||
| problems, hot-spot, and imbalances in link utilization caused by routing | <t>Traffic statistics should provide reasonable and reliable | |||
| anomalies.</t> | indicators of the current state of the network on the short-term | |||
| scale. Some short-term traffic statistics may reflect link | ||||
| <t>A mechanism for constructing traffic matrices for both long-term and shor | utilization and link congestion status. Examples of congestion | |||
| t-term | indicators include excessive packet delay, packet loss, and high | |||
| traffic statistics should be in place. In multi-service IP networks, the | resource utilization. Examples of mechanisms for distributing this | |||
| traffic | kind of information include SNMP, probing tools, FTP, IGP link-state | |||
| matrices may be constructed for different service classes. Each element | advertisements, NETCONF/RESTCONF, etc.</t> | |||
| of a | </section> | |||
| traffic matrix represents a statistic about the traffic flow between a pa | <section anchor="POLICE" numbered="true" toc="default"> | |||
| ir of | <name>Policing, Planning, and Access Control</name> | |||
| abstract nodes. An abstract node may represent a router, a collection of | <t>The recommendations in Sections <xref target="ROUTEREC" format="count | |||
| routers, | er"/> | |||
| or a site in a VPN.</t> | and <xref target="MAPREC" format="counter"/> may be sub-optimal or | |||
| even ineffective if the amount of traffic flowing on a route or path | ||||
| <t>Traffic statistics should provide reasonable and reliable indicators of t | exceeds the capacity of the resource on that route or path. Several | |||
| he current | approaches can be used to increase the performance of TE systems:</t> | |||
| state of the network on the short-term scale. Some short term traffic st | <ul spacing="normal"> | |||
| atistics | <li>The fundamental approach is some form of planning where traffic | |||
| may reflect link utilization and link congestion status. Examples of con | is steered onto paths so that it is distributed across the available | |||
| gestion | resources. This planning may be centralized or distributed and | |||
| indicators include excessive packet delay, packet loss, and high resource | must be aware of the planned traffic volumes and available | |||
| utilization. | resources. However, this approach is only of value if the traffic | |||
| Examples of mechanisms for distributing this kind of information include | that is presented conforms to the planned traffic volumes.</li> | |||
| SNMP, probing | <li>Traffic flows may be policed at the edges of a network. This is | |||
| tools, FTP, IGP link state advertisements, and NETCONF/RESTCONF, etc.</t> | a simple way to ensure that the actual traffic volumes are | |||
| consistent with the planned volumes. Some form of measurement (see | ||||
| </section> | <xref target="MSRREC" format="default"/>) is used to determine the | |||
| rate of arrival of traffic, and excess traffic could be discarded. | ||||
| <section anchor="POLICE" title="Policing, Planning, and Access Control"> | Alternatively, excess traffic could be forwarded as best-effort | |||
| within the network. However, this approach is only completely | ||||
| <t>The recommendations in <xref target="ROUTEREC" /> and <xref target="MAPRE | effective if the planning is stringent and network-wide and if a | |||
| C" /> may be | harsh approach is taken to disposing of excess traffic.</li> | |||
| sub-optimal or even ineffective if the amount of traffic flowing on a rou | <li>Resource-based admission control is the process whereby network | |||
| te or path | nodes decide whether to grant access to resources. The basis for | |||
| exceeds the capacity of the resource on that route or path. Several appr | the decision on a packet-by-packet basis is the determination of the | |||
| oaches can be | flow to which the packet belongs. This information is combined with | |||
| used to increase the performance of TE systems. | policy instructions that have been locally configured or | |||
| installed through the management or control planes. The end result | ||||
| <list style="symbols"> | is that a packet may be allowed to access (or use) specific | |||
| resources on the node if, and only if, the flow to which the packet | ||||
| <t>The fundamental approach is some form of planning where traffic is | belongs conforms to the policy.</li> | |||
| steered onto paths so that it is | </ul> | |||
| distributed across the available resources. This planning may be c | <t>Combining some elements of all three of these measures is advisable | |||
| entralized or distributed, and | to achieve a better TE system.</t> | |||
| must be aware of the planned traffic volumes and available resource | </section> | |||
| s. However, this approach is | <section anchor="SURVIVE" numbered="true" toc="default"> | |||
| only of value if the traffic that is presented conforms to the plan | <name>Network Survivability</name> | |||
| ned traffic volumes.</t> | <t>Network survivability refers to the capability of a network to | |||
| maintain service continuity in the presence of faults. This can be | ||||
| <t>Traffic flows may be policed at the edges of a network. This is a | accomplished by promptly recovering from network impairments and | |||
| simple way to ensure that the | maintaining the required QoS for existing services after recovery. | |||
| actual traffic volumes are consistent with the planned volumes. So | Survivability is an issue of great concern within the Internet | |||
| me form of measurement (see | community due to the demand to carry mission-critical traffic, | |||
| <xref target="MSRREC" />) is used to determine the rate of arrival | real-time traffic, and other high-priority traffic over the Internet. | |||
| of traffic, and excess traffic | Survivability can be addressed at the device level by developing | |||
| could be discarded. Alternatively, excess traffic could be forward | network elements that are more reliable and at the network | |||
| ed as best-effort within the | level by incorporating redundancy into the architecture, design, and | |||
| network. However, this approach is only completely effective if th | operation of networks. It is recommended that a philosophy of | |||
| e planning is stringent and | robustness and survivability should be adopted in the architecture, | |||
| network-wide, and if a harsh approach is taken to disposing of exce | design, and operation of TE used to control IP networks (especially | |||
| ss traffic.</t> | public IP networks). Because different contexts may demand different | |||
| levels of survivability, the mechanisms developed to support network | ||||
| <t>Resource-based admission control is the process whereby network nod | survivability should be flexible so that they can be tailored to | |||
| es decide whether to grant access | different needs. | |||
| to resources. The basis for the decision on a packet-by-packet bas | A number of tools and techniques have been developed | |||
| is is the determination of the flow | to enable network survivability, including MPLS Fast Reroute <xref | |||
| to which the packet belongs. This information is combined with pol | target="RFC4090" format="default"/>, Topology Independent Loop-free | |||
| icy instructions that have been | Alternate Fast Reroute for Segment Routing <xref | |||
| locally configured, or installed through the management or control | target="I-D.ietf-rtgwg-segment-routing-ti-lfa" format="default"/>, | |||
| planes. The end result is that | RSVP-TE Extensions in Support of End-to-End GMPLS Recovery <xref | |||
| a packet may be allowed to access (or use) specific resources on th | target="RFC4872" format="default"/>, and GMPLS Segment Recovery <xref | |||
| e node if and only if the flow to | target="RFC4873" format="default"/>.</t> | |||
| which the packet belongs conforms to the policy.</t> | <t>The impact of service outages varies significantly for different | |||
| service classes depending on the duration of the outage, which can vary | ||||
| </list></t> | from milliseconds (with minor service impact) to seconds (with | |||
| possible call drops for IP telephony and session timeouts for | ||||
| <t>Combining some element of all three of these measures is advisable to ach | connection-oriented transactions) to minutes and hours (with | |||
| ieve a better | potentially considerable social and business impact). Outages of | |||
| TE system.</t> | different durations have different impacts depending on the nature of | |||
| the traffic flows that are interrupted.</t> | ||||
| </section> | <t>Failure protection and restoration capabilities are available in | |||
| multiple layers as network technologies have continued to evolve. | ||||
| <section anchor="SURVIVE" title="Network Survivability"> | Optical networks are capable of providing dynamic ring and mesh | |||
| restoration functionality at the wavelength level. At the SONET/SDH | ||||
| <t>Network survivability refers to the capability of a network to maintain s | layer, survivability capability is provided with Automatic Protection | |||
| ervice | Switching (APS) as well as self-healing ring and mesh architectures. | |||
| continuity in the presence of faults. This can be accomplished by prompt | Similar functionality is provided by Layer 2 technologies such as | |||
| ly recovering | Ethernet.</t> | |||
| from network impairments and maintaining the required QoS for existing se | <t>Rerouting is used at the IP layer to restore service following link | |||
| rvices after | and node outages. Rerouting at the IP layer occurs after a period of | |||
| recovery. Survivability is an issue of great concern within the Internet | routing convergence, which may require seconds to minutes to complete. | |||
| community due | Path-oriented technologies such as MPLS <xref target="RFC3469" | |||
| to the demand to carry mission-critical traffic, real-time traffic, and o | format="default"/> can be used to enhance the survivability of IP | |||
| ther high | networks in a potentially cost-effective manner.</t> | |||
| priority traffic over the Internet. Survivability can be addressed at th | <t>An important aspect of multi-layer survivability is that | |||
| e device level | technologies at different layers may provide protection and | |||
| by developing network elements that are more reliable; and at the network | restoration capabilities at different granularities in terms of | |||
| level by | timescales and at different bandwidth granularities (from the level of | |||
| incorporating redundancy into the architecture, design, and operation of | packets to that of wavelengths). Protection and restoration | |||
| networks. It | capabilities can also be sensitive to different service classes and | |||
| is recommended that a philosophy of robustness and survivability should b | different network utility models. Coordinating different protection | |||
| e adopted in the | and restoration capabilities across multiple layers in a cohesive | |||
| architecture, design, and operation of TE used to control IP networks | manner to ensure network survivability is maintained at reasonable | |||
| (especially public IP networks). Because different contexts may demand d | cost is a challenging task. Protection and restoration coordination | |||
| ifferent levels | across layers may not always be feasible, because networks at different | |||
| of survivability, the mechanisms developed to support network survivabili | layers may belong to different administrative domains.</t> | |||
| ty should be | <t>Some of the general | |||
| flexible so that they can be tailored to different needs. A number of to | recommendations for protection and restoration coordination are as follo | |||
| ols and techniques | ws:</t> | |||
| have been developed to enable network survivability including MPLS Fast R | <ul spacing="normal"> | |||
| eroute | <li>Protection and restoration capabilities from different layers | |||
| <xref target="RFC4090" />, Topology Independent Loop-free Alternate Fast | should be coordinated to provide network survivability in a flexible | |||
| Re-route for | and cost-effective manner. Avoiding duplication of functions in | |||
| Segment Routing <xref target="I-D.ietf-rtgwg-segment-routing-ti-lfa" /> R | different layers is one way to achieve the coordination. Escalation | |||
| SVP-TE Extensions | of alarms and other fault indicators from lower to higher layers may | |||
| in Support of End-to-End GMPLS Recovery <xref target="RFC4872" />, and GM | also be performed in a coordinated manner. The order of timing of | |||
| PLS Segment Recovery | restoration triggers from different layers is another way to | |||
| <xref target="RFC4873" />.</t> | coordinate multi-layer protection/restoration.</li> | |||
| <li>Network capacity reserved in one layer to provide protection and | ||||
| <t>The impact of service outages varies significantly for different service | restoration is not available to carry traffic in a higher layer: it | |||
| classes depending | is not visible as spare capacity in the higher layer. Placing | |||
| on the duration of the outage which can vary from milliseconds (with mino | protection/restoration functions in many layers may increase | |||
| r service impact) | redundancy and robustness, but it can result in significant | |||
| to seconds (with possible call drops for IP telephony and session timeout | inefficiencies in network resource utilization. Careful planning is | |||
| s for | needed to balance the trade-off between the desire for survivability | |||
| connection-oriented transactions) to minutes and hours (with potentially | and the optimal use of resources.</li> | |||
| considerable social and business | <li>It is generally desirable to have protection and restoration | |||
| impact). Outages of different durations have different impacts depending | schemes that are intrinsically bandwidth efficient.</li> | |||
| on the nature of | <li>Failure notifications throughout the network should be timely | |||
| the traffic flows that are interrupted.</t> | and reliable if they are to be acted on as triggers for effective | |||
| protection and restoration actions.</li> | ||||
| <t>Failure protection and restoration capabilities are available in multiple | <li>Alarms and other fault monitoring and reporting capabilities | |||
| layers as network | should be provided at the right network layers so that the | |||
| technologies have continued to evolve. Optical networks are capable of p | protection and restoration actions can be taken in those | |||
| roviding dynamic | layers.</li> | |||
| ring and mesh restoration functionality at the wavelength level. At the | </ul> | |||
| SONET/SDH layer | <section anchor="SRVMPLS" numbered="true" toc="default"> | |||
| survivability capability is provided with Automatic Protection Switching | <name>Survivability in MPLS-Based Networks</name> | |||
| (APS) as well as | <t>Because MPLS is path-oriented, it has the potential to provide | |||
| self-healing ring and mesh architectures. Similar functionality is provi | faster and more predictable protection and restoration capabilities | |||
| ded by layer 2 | than conventional hop-by-hop routed IP systems. Protection types | |||
| technologies such as Ethernet.</t> | for MPLS networks can be divided into four categories:</t> | |||
| <dl newline="false" spacing="normal"> | ||||
| <t>Rerouting is used at the IP layer to restore service following link and n | <dt>Link Protection:</dt><dd> | |||
| ode outages. | The objective of link protection is to protect an LSP from the | |||
| Rerouting at the IP layer occurs after a period of routing convergence wh | failure of a given link. Under link protection, a protection or | |||
| ich may require | backup LSP (the secondary LSP) follows a path that is disjoint | |||
| seconds to minutes to complete. Path-oriented technologies such as MPLS | from the path of the working or operational LSP (the primary LSP) | |||
| (<xref target="RFC3469"/>) can be used to enhance the survivability of IP | at the particular link where link protection is required. When | |||
| networks in a | the protected link fails, traffic on the working LSP is switched | |||
| potentially cost-effective manner.</t> | to the protection LSP at the headend of the failed link. As a | |||
| local repair method, link protection can be fast. This form of | ||||
| <t>An important aspect of multi-layer survivability is that technologies at | protection may be most appropriate in situations where some | |||
| different layers may | network elements along a given path are known to be less reliable | |||
| provide protection and restoration capabilities at different granularitie | than others.</dd> | |||
| s in terms of time | <dt>Node Protection:</dt><dd> | |||
| scales and at different bandwidth granularity (from the level of packets | The objective of node protection is to protect an LSP from the | |||
| to that of wavelengths). | failure of a given node. Under node protection, the secondary LSP | |||
| Protection and restoration capabilities can also be sensitive to differen | follows a path that is disjoint from the path of the primary LSP | |||
| t service classes | at the particular node where node protection is required. The | |||
| and different network utility models. Coordinating different protection | secondary LSP is also disjoint from the primary LSP at all links | |||
| and restoration | attached to the node to be protected. When the protected node | |||
| capabilities across multiple layers in a cohesive manner to ensure networ | fails, traffic on the working LSP is switched over to the | |||
| k survivability | protection LSP at the upstream LSR directly connected to the | |||
| is maintained at reasonable cost is a challenging task. Protection and r | failed node. Node protection covers a slightly larger part of the | |||
| estoration | network compared to link protection but is otherwise | |||
| coordination across layers may not always be feasible, because networks a | fundamentally the same.</dd> | |||
| t different | <dt>Path Protection:</dt><dd> | |||
| layers may belong to different administrative domains.</t> | The goal of LSP path protection (or end-to-end protection) is | |||
| to protect an LSP from any failure along its routed path. Under | ||||
| <t>The following paragraphs present some of the general recommendations for | path protection, the path of the protection LSP is completely | |||
| protection and | disjoint from the path of the working LSP. The advantage of path | |||
| restoration coordination.</t> | protection is that the backup LSP protects the working LSP from | |||
| all possible link and node failures along the path, except for | ||||
| <t><list style="symbols"> | failures of ingress or egress LSR. Additionally, path protection | |||
| <t>Protection and restoration capabilities from different layers should | may be more efficient in terms of resource usage than link or node | |||
| be coordinated to provide | protection applied at every hop along the path. However, path | |||
| network survivability in a flexible and cost-effective manner. Avoi | protection may be slower than link and node protection because the | |||
| ding duplication of functions | fault notifications have to be propagated further.</dd> | |||
| in different layers is one way to achieve the coordination. Escalat | <dt>Segment Protection:</dt><dd> | |||
| ion of alarms and other fault | An MPLS domain may be partitioned into multiple subdomains | |||
| indicators from lower to higher layers may also be performed in a co | (protection domains). Path protection is applied to the path of | |||
| ordinated manner. The order | each LSP as it crosses the domain from its ingress to the domain | |||
| of timing of restoration triggers from different layers is another w | to where it egresses the domain. In cases where an LSP traverses | |||
| ay to coordinate multi-layer | multiple protection domains, a protection mechanism within a | |||
| protection/restoration.</t> | domain only needs to protect the segment of the LSP that lies | |||
| <t>Network capacity reserved in one layer to provide protection and res | within the domain. Segment protection will generally be faster | |||
| toration is not available to | than end-to-end path protection because recovery generally occurs | |||
| carry traffic in a higher layer: it is not visible as spare capacity | closer to the fault, and the notification doesn't have to propagate | |||
| in the higher layer. Placing | as far.</dd> | |||
| protection/restoration functions in many layers may increase redunda | </dl> | |||
| ncy and robustness, but it can | <t>See <xref target="RFC3469" format="default"/> and <xref | |||
| result in significant inefficiencies in network resource utilization | target="RFC6372" format="default"/> for a more comprehensive | |||
| . Careful planning is needed | discussion of MPLS-based recovery.</t> | |||
| to balance the tradeoff between the desire for survivability and the | </section> | |||
| optimal use of resources.</t> | <section anchor="PROTECT" numbered="true" toc="default"> | |||
| <t>It is generally desirable to have protection and restoration schemes | <name>Protection Options</name> | |||
| that are intrinsically | <t>Another issue to consider is the concept of protection options. | |||
| bandwidth efficient.</t> | We use notation such as "m:n protection", where m is the number of | |||
| <t>Failure notifications throughout the network should be timely and re | protection LSPs used to protect n working LSPs. In all cases | |||
| liable if they are to be acted | except 1+1 protection, the resources associated with the protection | |||
| on as triggers for effective protection and restoration actions.</t> | LSPs can be used to carry preemptable best-effort traffic when the | |||
| <t>Alarms and other fault monitoring and reporting capabilities should | working LSP is functioning correctly.</t> | |||
| be provided at the right network | <dl spacing="normal" newline="false"> | |||
| layers so that the protection and restoration actions can be taken i | <dt>1:1 protection:</dt> | |||
| n those layers.</t> | <dd>One working LSP is protected/restored by one protection LSP. | |||
| </list></t> | Traffic is sent only on the protected LSP until the | |||
| protection/restoration event switches the traffic to the | ||||
| <section anchor="SRVMPLS" title="Survivability in MPLS Based Networks"> | protection LSP.</dd> | |||
| <dt>1:n protection:</dt> | ||||
| <t>Because MPLS is path-oriented, it has the potential to provide faster a | <dd>One protection LSP is used to protect/restore n working LSPs. | |||
| nd more predictable protection | Traffic is sent only on the n protected working LSPs until the | |||
| and restoration capabilities than conventional hop-by-hop routed IP sys | protection/restoration event switches the traffic from one failed | |||
| tems. Protection types for MPLS | LSP to the protection LSP. Only one failed LSP can be restored at | |||
| networks can be divided into four categories.</t> | any time.</dd> | |||
| <dt>n:1 protection:</dt> | ||||
| <t><list style="symbols"> | <dd>One working LSP is protected/restored by n protection LSPs, | |||
| <t>Link Protection: The objective of link protection is to protect an | possibly with load splitting across the protection LSPs. This may | |||
| LSP from the failure of a given link. | be especially useful when it is not feasible to find one path for | |||
| Under link protection, a protection or backup LSP (the secondary L | the backup that can satisfy the bandwidth requirement of the | |||
| SP) follows a path that is disjoint | primary LSP.</dd> | |||
| from the path of the working or operational LSP (the primary LSP) | <dt>1+1 protection:</dt> | |||
| at the particular link where link | <dd>Traffic is sent concurrently on both the working LSP and a | |||
| protection is required. When the protected link fails, traffic on | protection LSP. The egress LSR selects one of the two LSPs based | |||
| the working LSP is switched to the | on local policy (usually based on traffic integrity). When a | |||
| protection LSP at the head-end of the failed link. As a local rep | fault disrupts the traffic on one LSP, the egress switches to | |||
| air method, link protection can be | receive traffic from the other LSP. This approach is expensive in | |||
| fast. This form of protection may be most appropriate in situatio | how it consumes network but recovers from failures most | |||
| ns where some network elements along a | rapidly.</dd> | |||
| given path are known to be less reliable than others.</t> | </dl> | |||
| <t>Node Protection: The objective of node protection is to protect an | </section> | |||
| LSP from the failure of a given node. | </section> | |||
| Under node protection, the secondary LSP follows a path that is di | <section anchor="ML" numbered="true" toc="default"> | |||
| sjoint from the path of the primary LSP | <name>Multi-Layer Traffic Engineering</name> | |||
| at the particular node where node protection is required. The sec | <t>Networks are often implemented as layers. A layer relationship may | |||
| ondary LSP is also disjoint from the | represent the interaction between technologies (for example, an IP | |||
| primary LSP at all links attached to the node to be protected. Wh | network operated over an optical network) or the relationship between | |||
| en the protected node fails, traffic on | different network operators (for example, a customer network operated | |||
| the working LSP is switched over to the protection LSP at the upst | over a service provider's network). Note that a multi-layer network | |||
| ream LSR directly connected to the | does not imply the use of multiple technologies, although some form of | |||
| failed node. Node protection covers a slightly larger part of the | encapsulation is often applied.</t> | |||
| network compared to link protection, | <t>Multi-layer traffic engineering presents a number of challenges | |||
| but is otherwise fundamentally the same.</t> | associated with scalability and confidentiality. These issues are | |||
| <t>Path Protection: The goal of LSP path protection (or end-to-end pr | addressed in <xref target="RFC7926" format="default"/>, which | |||
| otection) is to protect an LSP from any | discusses the sharing of information between domains through policy | |||
| failure along its routed path. Under path protection, the path of | filters, aggregation, abstraction, and virtualization. That document | |||
| the protection LSP is completely disjoint | also discusses how existing protocols can support this scenario with | |||
| from the path of the working LSP. The advantage of path protectio | special reference to BGP-LS (see <xref target="BGPLS" | |||
| n is that the backup LSP protects the | format="default"/>).</t> | |||
| working LSP from all possible link and node failures along the pat | <t>PCE (see <xref target="PCE" format="default"/>) is also a useful | |||
| h, except for failures of ingress or | tool for multi-layer networks as described in <xref target="RFC6805" | |||
| egress LSR. Additionally, path protection may be more efficient i | format="default"/>, <xref target="RFC8685" format="default"/>, and | |||
| n terms of resource usage than link or | <xref target="RFC5623" format="default"/>. Signaling techniques for | |||
| node protection applied at every hop along the path. However, pat | multi-layer TE are described in <xref target="RFC6107" | |||
| h protection may be slower than link and | format="default"/>.</t> | |||
| node protection because the fault notifications have to be propaga | <t>See also <xref target="SURVIVE" format="default"/> for examination | |||
| ted further.</t> | of multi-layer network survivability.</t> | |||
| <t>Segment Protection: An MPLS domain may be partitioned into multipl | </section> | |||
| e subdomains (protection domains). Path | <section anchor="TEDIFFSRV" numbered="true" toc="default"> | |||
| protection is applied to the path of each LSP as it crosses the do | <name>Traffic Engineering in Diffserv Environments</name> | |||
| main from its ingress to the domain to | <t>Increasing requirements to support multiple classes of traffic in | |||
| where it egresses the domain. In cases where an LSP traverses mul | the Internet, such as best-effort and mission-critical data, call for | |||
| tiple protection domains, a protection | IP networks to differentiate traffic according to some criteria and to | |||
| mechanism within a domain only needs to protect the segment of the | give preferential treatment to certain types of traffic. Large | |||
| LSP that lies within the domain. Segment | numbers of flows can be aggregated into a few behavior aggregates | |||
| protection will generally be faster than end-to-end path protectio | based on some criteria based on common performance requirements in | |||
| n because recovery generally occurs | terms of packet loss ratio, delay, and jitter or in terms of common | |||
| closer to the fault and the notification doesn't have to prop | fields within the IP packet headers.</t> | |||
| agate as far.</t> | <t>Differentiated Services (Diffserv) <xref target="RFC2475" | |||
| </list></t> | format="default"/> can be used to ensure that SLAs defined to | |||
| differentiate between traffic flows are met. Classes of service can | ||||
| <t>See <xref target="RFC3469" /> and <xref target="RFC6372" /> for a more | be supported in a Diffserv environment by concatenating Per-Hop | |||
| comprehensive discussion of MPLS | Behaviors (PHBs) along the routing path. A PHB is the forwarding | |||
| based recovery.</t> | behavior that a packet receives at a Diffserv-compliant node, and it | |||
| can be configured at each router. PHBs are delivered using | ||||
| buffer-management and packet-scheduling mechanisms and require that | ||||
| the ingress nodes use traffic classification, marking, policing, and | ||||
| shaping.</t> | ||||
| <t>TE can complement Diffserv to improve utilization of network | ||||
| resources. TE can be operated on an aggregated basis across all | ||||
| service classes <xref target="RFC3270" format="default"/> or on a | ||||
| per-service-class basis. The former is used to provide better | ||||
| distribution of the traffic load over the network resources (see <xref | ||||
| target="RFC3270" format="default"/> for detailed mechanisms to support | ||||
| aggregate TE). The latter case is discussed below since it is | ||||
| specific to the Diffserv environment, with so-called Diffserv-aware | ||||
| traffic engineering <xref target="RFC4124" format="default"/>.</t> | ||||
| <t>For some Diffserv networks, it may be desirable to control the | ||||
| performance of some service classes by enforcing relationships between | ||||
| the traffic workload contributed by each service class and the amount | ||||
| of network resources allocated or provisioned for that service class. | ||||
| Such relationships between demand and resource allocation can be | ||||
| enforced using a combination of, for example: | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li>TE mechanisms on a per-service-class basis that enforce the | ||||
| relationship between the amount of traffic contributed by a given | ||||
| service class and the resources allocated to that class.</li> | ||||
| <li>Mechanisms that dynamically adjust the resources allocated to a | ||||
| given service class to relate to the amount of traffic contributed | ||||
| by that service class.</li> | ||||
| </ul> | ||||
| <t>It may also be desirable to limit the performance impact of | ||||
| high-priority traffic on relatively low-priority traffic. This can be | ||||
| achieved, for example, by controlling the percentage of high-priority | ||||
| traffic that is routed through a given link. Another way to | ||||
| accomplish this is to increase link capacities appropriately so that | ||||
| lower-priority traffic can still enjoy adequate service quality. When | ||||
| the ratio of traffic workload contributed by different service classes | ||||
| varies significantly from router to router, it may not be enough to | ||||
| rely on conventional IGP routing protocols or on TE mechanisms that | ||||
| are not sensitive to different service classes. Instead, it may be | ||||
| desirable to perform TE, especially routing control and mapping | ||||
| functions, on a per-service-class basis. One way to accomplish this | ||||
| in a domain that supports both MPLS and Diffserv is to define | ||||
| class-specific LSPs and to map traffic from each class onto one or | ||||
| more LSPs that correspond to that service class. An LSP corresponding | ||||
| to a given service class can then be routed and protected/restored in | ||||
| a class-dependent manner, according to specific policies.</t> | ||||
| <t>Performing TE on a per-class basis may require per-class parameters | ||||
| to be distributed. It is common to have some classes share some | ||||
| aggregate constraints (e.g., maximum bandwidth requirement) without | ||||
| enforcing the constraint on each individual class. These classes can | ||||
| be grouped into class types, and per-class-type parameters can be | ||||
| distributed to improve scalability. This also allows better bandwidth | ||||
| sharing between classes in the same class type. A class type is a set | ||||
| of classes that satisfy the following two conditions:</t> | ||||
| <ul spacing="normal"> | ||||
| <li>Classes in the same class type have common aggregate | ||||
| requirements to satisfy required performance levels.</li> | ||||
| <li>There is no requirement to be enforced at the level of an | ||||
| individual class in the class type. Note that it is, nevertheless, | ||||
| still possible to implement some priority policies for classes in | ||||
| the same class type to permit preferential access to the class type | ||||
| bandwidth through the use of preemption priorities.</li> | ||||
| </ul> | ||||
| <t>See <xref target="RFC4124" format="default"/> for detailed requiremen | ||||
| ts on Diffserv-aware TE.</t> | ||||
| </section> | ||||
| <section anchor="CONTROL" numbered="true" toc="default"> | ||||
| <name>Network Controllability</name> | ||||
| <t>Offline and online (see <xref target="OFFON" format="default"/>) TE | ||||
| considerations are of limited utility if the network cannot be | ||||
| controlled effectively to implement the results of TE decisions and to | ||||
| achieve the desired network performance objectives.</t> | ||||
| <t>Capacity augmentation is a coarse-grained solution to TE issues. | ||||
| However, it is simple, may be applied through creating parallel links | ||||
| that form part of an ECMP scheme, and may be advantageous if bandwidth | ||||
| is abundant and cheap. However, bandwidth is not always abundant and | ||||
| cheap, and additional capacity might not always be the best solution. | ||||
| Adjustments of administrative weights and other parameters associated | ||||
| with routing protocols provide finer-grained control, but this | ||||
| approach is difficult to use and imprecise because of the way the | ||||
| routing protocols interact across the network.</t> | ||||
| <t>Control mechanisms can be manual (e.g., static configuration), | ||||
| partially automated (e.g., scripts), or fully automated (e.g., | ||||
| policy-based management systems). Automated mechanisms are | ||||
| particularly useful in large-scale networks. Multi-vendor | ||||
| interoperability can be facilitated by standardized management tools | ||||
| (e.g., YANG models) to support the control functions required to | ||||
| address TE objectives.</t> | ||||
| <t>Network control functions should be secure, reliable, and stable as | ||||
| these are often needed to operate correctly in times of network | ||||
| impairments (e.g., during network congestion or attacks).</t> | ||||
| </section> | ||||
| </section> | </section> | |||
| <section anchor="INTER" numbered="true" toc="default"> | ||||
| <section anchor="PROTECT" title="Protection Options"> | <name>Inter-Domain Considerations</name> | |||
| <t>Inter-domain TE is concerned with performance optimization for | ||||
| <t>Another issue to consider is the concept of protection options. We use | traffic that originates in one administrative domain and terminates in a | |||
| notation such as "m:n protection", where m is | different one.</t> | |||
| the number of protection LSPs used to protect n working LSPs. In all c | <t>BGP <xref target="RFC4271" format="default"/> is the standard | |||
| ases except 1+1 protection, the resources | exterior gateway protocol used to exchange routing information between | |||
| associated with the protection LSPs can be used to carry preemptable be | ASes in the Internet. BGP includes a decision | |||
| st-effort traffic when the working LSP is | process that calculates the preference for routes to a given destination | |||
| functioning correctly.</t> | network. There are two fundamental aspects to inter-domain TE using | |||
| BGP:</t> | ||||
| <t><list style="symbols"> | <dl newline="false" spacing="normal"> | |||
| <t>1:1 protection: One working LSP is protected/restored by one prote | <dt>Route Propagation:</dt> | |||
| ction LSP. Traffic is sent only on the protected | <dd>Controlling the import and export of routes between ASes and | |||
| LSP until the protection/restoration event switches the traffic to | controlling the redistribution of routes between BGP and other | |||
| the protection LSP.</t> | protocols within an AS.</dd> | |||
| <t>1:n protection: One protection LSP is used to protect/restore n wo | <dt>Best-path selection:</dt> | |||
| rking LSPs. Traffic is sent only on the n protected | <dd>Selecting the best path when there are multiple candidate paths to | |||
| working LSPs until the protection/restoration event switches the t | a given destination network. | |||
| raffic from one failed LSP to the protection LSP. | This is performed by the BGP decision | |||
| Only one failed LSP can be restored at any time.</t> | process, which selects the preferred exit points out of an AS toward spec | |||
| <t>n:1 protection: One working LSP is protected/restored by n protect | ific | |||
| ion LSPs, possibly with load splitting across the | destination networks by taking a number of different considerations into | |||
| protection LSPs. This may be especially useful when it is not fea | account. The BGP path selection process can be influenced by | |||
| sible to find one path for the backup | manipulating the attributes associated with the process, including | |||
| that can satisfy the bandwidth requirement of the primary LSP.</t> | NEXT_HOP, LOCAL_PREF, AS_PATH, ORIGIN, MULTI_EXIT_DISC (MED), IGP | |||
| <t>1+1 protection: Traffic is sent concurrently on both the working L | metric, etc.</dd> | |||
| SP and a protection LSP. The egress LSR selects | </dl> | |||
| one of the two LSPs based on local policy (usually based on traffi | <t>Most BGP implementations provide constructs that facilitate the | |||
| c integrity). When a fault disrupts the traffic | implementation of complex BGP policies based on pre-configured logical | |||
| on one LSP, the egress switches to receive traffic from the other | conditions. These can be used to control import and export of | |||
| LSP. This approach is expensive in how it consumes | incoming and outgoing routes, control redistribution of routes | |||
| network but recovers from failures most rapidly.</t> | between BGP and other protocols, and influence the selection of best | |||
| </list></t> | paths by manipulating the attributes (either standardized or local to | |||
| the implementation) associated with the BGP decision process.</t> | ||||
| <t>When considering inter-domain TE with BGP, note that the outbound | ||||
| traffic exit point is controllable, whereas the interconnection point | ||||
| where inbound traffic is received typically is not. Therefore, it is up | ||||
| to each individual network to implement TE strategies that deal with the | ||||
| efficient delivery of outbound traffic from its customers to its peering | ||||
| points. The vast majority of TE policy is based on a "closest exit" | ||||
| strategy, which offloads inter-domain traffic at the nearest outbound | ||||
| peering point towards the destination AS. Most methods of manipulating | ||||
| the point at which inbound traffic enters are either ineffective or | ||||
| not accepted in the peering community.</t> | ||||
| <t>Inter-domain TE with BGP is generally effective, but it is usually | ||||
| applied in a trial-and-error fashion because a TE system usually only | ||||
| has a view of the available network resources within one domain (an AS | ||||
| in this case). A systematic approach for inter-domain TE requires | ||||
| cooperation between the domains. Further, what may be considered a good | ||||
| solution in one domain may not necessarily be a good solution in | ||||
| another. Moreover, it is generally considered inadvisable for one | ||||
| domain to permit a control process from another domain to influence the | ||||
| routing and management of traffic in its network.</t> | ||||
| <t>MPLS-TE tunnels (LSPs) can add a degree of flexibility in the | ||||
| selection of exit points for inter-domain routing by applying the | ||||
| concept of relative and absolute metrics. If BGP attributes are defined | ||||
| such that the BGP decision process depends on IGP metrics to select exit | ||||
| points for inter-domain traffic, then some inter-domain traffic destined | ||||
| to a given peer network can be made to prefer a specific exit point by | ||||
| establishing a TE tunnel between the router making the selection and the | ||||
| peering point via a TE tunnel and assigning the TE tunnel a metric | ||||
| that is smaller than the IGP cost to all other peering points. RSVP-TE | ||||
| protocol extensions for inter-domain MPLS and GMPLS are described in | ||||
| <xref target="RFC5151" format="default"/>.</t> | ||||
| <t>Similarly to intra-domain TE, inter-domain TE is best accomplished | ||||
| when a traffic matrix can be derived to depict the volume of traffic | ||||
| from one AS to another.</t> | ||||
| <t>Layer 4 multipath transport protocols are designed to move traffic | ||||
| between domains and to allow some influence over the selection of the | ||||
| paths. To be truly effective, these protocols would require visibility | ||||
| of paths and network conditions in other domains, but that | ||||
| information may not be available, might not be complete, and is not | ||||
| necessarily trustworthy.</t> | ||||
| </section> | </section> | |||
| <section anchor="PRACTICE" numbered="true" toc="default"> | ||||
| <name>Overview of Contemporary TE Practices in Operational IP Networks</na | ||||
| me> | ||||
| <t>This section provides an overview of some TE practices in IP | ||||
| networks. The focus is on aspects of control of the routing function in | ||||
| operational contexts. The intent here is to provide an overview of the | ||||
| commonly used practices; the discussion is not intended to be | ||||
| exhaustive.</t> | ||||
| <t>Service providers apply many of the TE mechanisms described in this | ||||
| document to optimize the performance of their IP networks, although | ||||
| others choose to not use any of them. These techniques include capacity | ||||
| planning, including adding ECMP options, for long timescales; routing | ||||
| control using IGP metrics and MPLS, as well as path planning and path | ||||
| control using MPLS and SR for medium timescales; and | ||||
| traffic management mechanisms for short timescales.</t> | ||||
| <ul spacing="normal"> | ||||
| <li>Capacity planning is an important component of how a service | ||||
| provider plans an effective IP network. These plans may take the | ||||
| following aspects into account: location of any new links or nodes, | ||||
| WECMP algorithms, existing and predicted traffic patterns, costs, link | ||||
| capacity, topology, routing design, and survivability.</li> | ||||
| <li>Performance optimization of operational networks is usually an | ||||
| ongoing process in which traffic statistics, performance parameters, | ||||
| and fault indicators are continually collected from the network. This | ||||
| empirical data is analyzed and used to trigger TE mechanisms. Tools | ||||
| that perform what-if analysis can also be used to assist the TE | ||||
| process by reviewing scenarios before a new set of configurations are | ||||
| implemented in the operational network.</li> | ||||
| <li>Real-time intra-domain TE using the IGP is done by increasing the | ||||
| OSPF or IS-IS metric of a congested link until enough traffic has been | ||||
| diverted away from that link. This approach has some limitations as | ||||
| discussed in <xref target="ROUTEREC" format="default"/>. Intra-domain | ||||
| TE approaches <xref target="RR94" format="default"/> <xref | ||||
| target="FT00" format="default"/> <xref target="FT01" | ||||
| format="default"/> <xref target="WANG" format="default"/> take | ||||
| traffic matrix, network topology, and network performance objectives | ||||
| as input and produce link metrics and load-sharing ratios. These | ||||
| processes open the possibility for intra-domain TE with IGP to be done | ||||
| in a more systematic way.</li> | ||||
| </ul> | ||||
| </section> | <t>Administrators of MPLS-TE networks specify and configure link | |||
| attributes and resource constraints such as maximum reservable bandwidth | ||||
| <section anchor="ML" title="Multi-Layer Traffic Engineering"> | and resource class attributes for the links in the domain. A link-state | |||
| IGP that supports TE extensions (IS-IS-TE or OSPF-TE) is used to | ||||
| <t>Networks are often implemented as layers. A layer relationship may repr | propagate information about network topology and link attributes to all | |||
| esent the interaction | routers in the domain. Network administrators specify the LSPs that are | |||
| between technologies (for example, an IP network operated over an optica | to originate at each router. For each LSP, the network administrator | |||
| l network), or the | specifies the destination node and the attributes of the LSP that | |||
| relationship between different network operators (for example, a custome | indicate the requirements that are to be satisfied during the path | |||
| r network operated | selection process. The attributes may include an explicit path for the | |||
| over a service provider's network). Note that a multi-layer networ | LSP to follow, or the originating router may use a local | |||
| k does not imply | constraint-based routing process to compute the path of the LSP. | |||
| the use of multiple technologies, although some form of encapsulation is | RSVP-TE is used as a signaling protocol to instantiate the LSPs. By | |||
| often applied.</t> | assigning proper bandwidth values to links and LSPs, congestion caused | |||
| by uneven traffic distribution can be avoided or mitigated.</t> | ||||
| <t>Multi-layer traffic engineering presents a number of challenges associat | <t>The bandwidth attributes of an LSP relate to the bandwidth | |||
| ed with scalability | requirements of traffic that flows through the LSP. The traffic | |||
| and confidentiality. These issues are addressed in <xref target="RFC792 | attribute of an LSP can be modified to accommodate persistent shifts in | |||
| 6" /> which discusses | demand (traffic growth or reduction). If network congestion occurs due | |||
| the sharing of information between domains through policy filters, aggre | to unexpected events, existing LSPs can be rerouted to alleviate the | |||
| gation, abstraction, | situation, or the network administrator can configure new LSPs to divert | |||
| and virtualization. That document also discusses how existing protocols | some traffic to alternative paths. The reservable bandwidth of the | |||
| can support this | congested links can also be reduced to force some LSPs to be rerouted to | |||
| scenario with special reference to BGP-LS (see <xref target="BGPLS" />). | other paths. A traffic matrix in an MPLS domain can also be estimated | |||
| </t> | by monitoring the traffic on LSPs. Such traffic statistics can be used | |||
| for a variety of purposes including network planning and network | ||||
| <t>PCE (see <xref target="PCE" />) is also a useful tool for multi-layer ne | optimization.</t> | |||
| tworks as described | <t>Network management and planning systems have evolved and assumed a | |||
| in <xref target="RFC6805" />, <xref target="RFC8685" />, and <xref targe | lot of the responsibility for determining traffic paths in TE networks. | |||
| t="RFC5623" />. | This allows a network-wide view of resources and facilitates | |||
| Signaling techniques for multi-layer TE are described in | coordination of the use of resources for all traffic flows in the | |||
| <xref target="RFC6107" />.</t> | network. Initial solutions using a PCE to perform path computation on | |||
| behalf of network routers have given way to an approach that follows the | ||||
| <t>See also <xref target="SURVIVE" /> for examination of multi-layer networ | SDN architecture. A stateful PCE is able to track all of the LSPs in | |||
| k survivability.</t> | the network and can redistribute them to make better use of the | |||
| available resources. Such a PCE can form part of a network orchestrator | ||||
| </section> | that uses PCEP or some other configuration and management interface to | |||
| instruct the signaling protocol or directly program the routers.</t> | ||||
| <section anchor="TEDIFFSRV" title="Traffic Engineering in Diffserv Environment | <t>SR leverages a centralized TE controller and either an | |||
| s"> | MPLS or IPv6 forwarding plane but does not need to use a signaling | |||
| protocol or management plane protocol to reserve resources in the | ||||
| <t>Increasing requirements to support multiple classes of traffic in the Int | routers. All resource reservation is logical within the controller and | |||
| ernet, such as | is not distributed to the routers. Packets are steered through the | |||
| best effort and mission critical data, call for IP networks to differenti | network using SR, and this may have configuration and | |||
| ate traffic | operational scaling benefits.</t> | |||
| according to some criteria and to give preferential treatment to certain | <t>As mentioned in <xref target="INTER" format="default"/>, there is | |||
| types of traffic. | usually no direct control over the distribution of inbound traffic to a | |||
| Large numbers of flows can be aggregated into a few behavior aggregates b | domain. Therefore, the main goal of inter-domain TE is to optimize the | |||
| ased on some | distribution of outbound traffic between multiple inter-domain links. | |||
| criteria based on common performance requirements in terms of packet loss | When operating a geographically widespread network (such as for a | |||
| ratio, delay, | multi-national or global network provider), maintaining the ability to | |||
| and jitter, or in terms of common fields within the IP packet headers.</t | operate the network in a regional fashion where desired, while | |||
| > | continuing to take advantage of the benefits of a globally | |||
| interconnected network, also becomes an important objective.</t> | ||||
| <t>Differentiated Services (Diffserv) <xref target="RFC2475"/> can be used t | ||||
| o ensure that SLAs | ||||
| defined to differentiate between traffic flows are met. Classes of servi | ||||
| ce (CoS) can be | ||||
| supported in a Diffserv environment by concatenating per-hop behaviors (P | ||||
| HBs) along the | ||||
| routing path. A PHB is the forwarding behavior that a packet receives at | ||||
| a Diffserv- | ||||
| compliant node, and it can be configured at each router. PHBs are delive | ||||
| red using buffer | ||||
| management and packet scheduling mechanisms and require that the ingress | ||||
| nodes use traffic | ||||
| classification, marking, policing, and shaping.</t> | ||||
| <t>TE can complement Diffserv to improve utilization of network resources. | ||||
| TE can be operated on an aggregated basis across all service classes | ||||
| <xref target="RFC3270"/>, or on a per-service class basis. The former is | ||||
| used to provide | ||||
| better distribution of the traffic load over the network resources (see < | ||||
| xref target="RFC3270"/> | ||||
| for detailed mechanisms to support aggregate TE). The latter case is dis | ||||
| cussed | ||||
| below since it is specific to the Diffserv environment, with so called Di | ||||
| ffserv-aware traffic | ||||
| engineering <xref target="RFC4124"/>.</t> | ||||
| <t>For some Diffserv networks, it may be desirable to control the performanc | ||||
| e of some service | ||||
| classes by enforcing relationships between the traffic workload contribut | ||||
| ed by each service | ||||
| class and the amount of network resources allocated or provisioned for th | ||||
| at service class. | ||||
| Such relationships between demand and resource allocation can be enforced | ||||
| using a combination | ||||
| of, for example: | ||||
| <list style="symbols"> | ||||
| <t>TE mechanisms on a per service class basis that enforce the relation | ||||
| ship between the amount | ||||
| of traffic contributed by a given service class and the resources al | ||||
| located to that class.</t> | ||||
| <t>Mechanisms that dynamically adjust the resources allocated to a give | ||||
| n service class to | ||||
| relate to the amount of traffic contributed by that service class.</ | ||||
| t> | ||||
| </list></t> | ||||
| <t>It may also be desirable to limit the performance impact of high-priority | ||||
| traffic on relatively | ||||
| low-priority traffic. This can be achieved, for example, by controlling | ||||
| the percentage of | ||||
| high-priority traffic that is routed through a given link. Another way t | ||||
| o accomplish this is to | ||||
| increase link capacities appropriately so that lower-priority traffic can | ||||
| still enjoy adequate | ||||
| service quality. When the ratio of traffic workload contributed by diffe | ||||
| rent service classes | ||||
| varies significantly from router to router, it may not be enough to rely | ||||
| on conventional IGP | ||||
| routing protocols or on TE mechanisms that are not sensitive to different | ||||
| service classes. | ||||
| Instead, it may be desirable to perform TE, especially routing control an | ||||
| d | ||||
| mapping functions, on a per-service class basis. One way to accomplish t | ||||
| his in a domain that | ||||
| supports both MPLS and Diffserv is to define class-specific LSPs and to m | ||||
| ap traffic from each | ||||
| class onto one or more LSPs that correspond to that service class. An LS | ||||
| P corresponding to a | ||||
| given service class can then be routed and protected/restored in a class- | ||||
| dependent manner, | ||||
| according to specific policies.</t> | ||||
| <t>Performing TE on a per-class basis may require per-class parameters to be | ||||
| distributed. It is common to have some classes share some aggregate cons | ||||
| traints (e.g., maximum | ||||
| bandwidth requirement) without enforcing the constraint on each individua | ||||
| l class. These classes | ||||
| can be grouped into class-types, and per-class-type parameters can be dis | ||||
| tributed to improve | ||||
| scalability. This also allows better bandwidth sharing between classes i | ||||
| n the same class-type. | ||||
| A class-type is a set of classes that satisfy the following two condition | ||||
| s: | ||||
| <list style="symbols"> | ||||
| <t>Classes in the same class-type have common aggregate requirements to | ||||
| satisfy required | ||||
| performance levels.</t> | ||||
| <t>There is no requirement to be enforced at the level of an individual | ||||
| class in the class-type. | ||||
| Note that it is, nevertheless, still possible to implement some prio | ||||
| rity policies for classes | ||||
| in the same class-type to permit preferential access to the class-ty | ||||
| pe bandwidth through the | ||||
| use of preemption priorities.</t> | ||||
| </list></t> | ||||
| <t>See <xref target="RFC4124"/> for detailed requirements on Diffserv-aware | ||||
| TE.</t> | ||||
| </section> | ||||
| <section anchor="CONTROL" title="Network Controllability"> | ||||
| <t>Offline and online (see <xref target="OFFON" />) TE considerations are of | ||||
| limited utility if the | ||||
| network cannot be controlled effectively to implement the results of TE d | ||||
| ecisions and to achieve | ||||
| the desired network performance objectives.</t> | ||||
| <t>Capacity augmentation is a coarse-grained solution to TE issues. However | ||||
| , it is simple, may be applied | ||||
| through creating parallel links that form part of an ECMP scheme, and may | ||||
| be | ||||
| advantageous if bandwidth is abundant and cheap. However, bandwidth is n | ||||
| ot always abundant and cheap, | ||||
| and additional capacity might not always be the best solution. Adjustmen | ||||
| ts of administrative weights | ||||
| and other parameters associated with routing protocols provide finer-grai | ||||
| ned control, but this approach | ||||
| is difficult to use and imprecise because of the way the routing protocol | ||||
| s interactions occur across the | ||||
| network.</t> | ||||
| <t>Control mechanisms can be manual (e.g., static configuration), partially- | ||||
| automated (e.g., scripts), or | ||||
| fully-automated (e.g., policy based management systems). Automated mecha | ||||
| nisms are particularly useful | ||||
| in large-scale networks. Multi-vendor interoperability can be facilitate | ||||
| d by standardized management | ||||
| tools (e.g., YANG models) to support the control functions required to ad | ||||
| dress TE objectives.</t> | ||||
| <t>Network control functions should be secure, reliable, and stable as these | ||||
| are often needed to operate | ||||
| correctly in times of network impairments (e.g., during network congestio | ||||
| n or attacks).</t> | ||||
| </section> | ||||
| </section> | ||||
| <section anchor="INTER" title="Inter-Domain Considerations"> | ||||
| <t>Inter-domain TE is concerned with performance optimization for traffic that | ||||
| originates in one administrative domain and terminates in a different one.< | ||||
| /t> | ||||
| <t>BGP <xref target="RFC4271"/> is the standard exterior gateway protocol used | ||||
| to exchange | ||||
| routing information between autonomous systems (ASes) in the Internet. BGP | ||||
| includes a | ||||
| decision process that calculates the preference for routes to a given | ||||
| destination network. There are two fundamental aspects to inter-domain TE | ||||
| using BGP:</t> | ||||
| <t><list style="symbols"> | ||||
| <t>Route Propagation: Controlling the import and export of routes between | ||||
| ASes, and | ||||
| controlling the redistribution of routes between BGP and other protoco | ||||
| ls within an AS.</t> | ||||
| <t>Best-path selection: Selecting the best path when there are multiple c | ||||
| andidate paths | ||||
| to a given destination network. This is performed by the BGP decision | ||||
| process, selecting | ||||
| preferred exit points out of an AS towards specific destination networ | ||||
| ks taking a | ||||
| number of different considerations into account. The BGP path selecti | ||||
| on process can | ||||
| be influenced by manipulating the attributes associated with the proce | ||||
| ss, including | ||||
| NEXT_HOP, LOCAL_PREF, AS_PATH, ORIGIN, MULTI_EXIT_DISC (MED), IGP metr | ||||
| ic, etc.</t> | ||||
| </list></t> | ||||
| <t>Most BGP implementations provide constructs that facilitate the implementat | ||||
| ion of complex BGP | ||||
| policies based on pre-configured logical conditions. These can be used to c | ||||
| ontrol import and | ||||
| export of incoming and outgoing routes, control redistribution of routes be | ||||
| tween BGP and other | ||||
| protocols, and influence the selection of best paths by manipulating the at | ||||
| tributes (either | ||||
| standardized, or local to the implementation) associated with the BGP decis | ||||
| ion process.</t> | ||||
| <t>When considering inter-domain TE with BGP, note that the outbound traffic e | ||||
| xit point is controllable, | ||||
| whereas the interconnection point where inbound traffic is received typical | ||||
| ly is not. Therefore, it | ||||
| is up to each individual network to implement TE strategies that deal with | ||||
| the efficient delivery of | ||||
| outbound traffic from its customers to its peering points. The vast majori | ||||
| ty of TE policy is based | ||||
| on a "closest exit" strategy, which offloads inter-domain traffic at the ne | ||||
| arest outbound peering point | ||||
| towards the destination AS. Most methods of manipulating the point at whic | ||||
| h inbound traffic enters | ||||
| are either ineffective, or not accepted in the peering community.</t> | ||||
| <t>Inter-domain TE with BGP is generally effective, but it is usually applied | ||||
| in a trial-and-error fashion | ||||
| because a TE system usually only has a view of the available network resour | ||||
| ces within one domain (an AS | ||||
| in this case). A systematic approach for inter-domain TE requires cooperat | ||||
| ion between the domains. | ||||
| Further, what may be considered a good solution in one domain may not neces | ||||
| sarily be a good solution in | ||||
| another. Moreover, it is generally considered inadvisable for one domain t | ||||
| o permit a control process from | ||||
| another domain to influence the routing and management of traffic in its ne | ||||
| twork.</t> | ||||
| <t>MPLS TE-tunnels (LSPs) can add a degree of flexibility in the selection of | ||||
| exit points for inter-domain routing | ||||
| by applying the concept of relative and absolute metrics. If BGP attribute | ||||
| s are defined such that the BGP | ||||
| decision process depends on IGP metrics to select exit points for inter-dom | ||||
| ain traffic, then some inter-domain | ||||
| traffic destined to a given peer network can be made to prefer a specific e | ||||
| xit point by establishing a TE-tunnel | ||||
| between the router making the selection and the peering point via a TE-tunn | ||||
| el and assigning the TE-tunnel a | ||||
| metric which is smaller than the IGP cost to all other peering points. RSV | ||||
| P-TE protocol extensions for inter-domain | ||||
| MPLS and GMPLS are described in <xref target="RFC5151" />.</t> | ||||
| <t>Similarly to intra-domain TE, inter-domain TE is best accomplished when a t | ||||
| raffic matrix can be derived to | ||||
| depict the volume of traffic from one AS to another.</t> | ||||
| <t>Layer 4 multipath transport protocols are designed to move traffic between | ||||
| domains and to allow some influence over the | ||||
| selection of the paths. To be truly effective, these protocols would requi | ||||
| re visibility of paths and network | ||||
| conditions in other domains, and that information may not be available, mig | ||||
| ht not be complete, and is not necessarily | ||||
| trustworthy.</t> | ||||
| </section> | ||||
| <section anchor="PRACTICE" title="Overview of Contemporary TE Practices in Opera | ||||
| tional IP Networks"> | ||||
| <t>This section provides an overview of some TE practices in IP networks. The | ||||
| focus is on | ||||
| aspects of control of the routing function in operational contexts. The in | ||||
| tent here is to provide an | ||||
| overview of the commonly used practices: the discussion is not intended to | ||||
| be exhaustive.</t> | ||||
| <t>Service providers apply many of the TE mechanisms described in this documen | ||||
| t to optimize | ||||
| the performance of their IP networks, although others choose to not use any | ||||
| of them. These techniques | ||||
| include capacity planning including adding ECMP options for long timescales | ||||
| ; routing control using IGP metrics and MPLS, as well as | ||||
| path planning and path control using MPLS and Segment Routing for medium ti | ||||
| mescales; and traffic management | ||||
| mechanisms for short timescale.</t> | ||||
| <list style="symbols"> | ||||
| <t>Capacity planning is an important component of how a service provider pl | ||||
| ans an effective IP network. | ||||
| These plans may take the following aspects into account: location of any | ||||
| new links or nodes, WECMP | ||||
| algorithms, existing and predicted traffic patterns, costs, link capacit | ||||
| y, topology, routing design, and survivability.</t> | ||||
| <t>Performance optimization of operational networks is usually an ongoing p | ||||
| rocess in which traffic | ||||
| statistics, performance parameters, and fault indicators are continually | ||||
| collected from the network. | ||||
| This empirical data is analyzed and used to trigger TE mechanisms. Tool | ||||
| s that perform what-if analysis | ||||
| can also be used to assist the TE process by reviewing scenarios before | ||||
| a new set of configurations are | ||||
| implemented in the operational network.</t> | ||||
| <t>Real-time intra-domain TE using the IGP is done by increasing the OSPF o | ||||
| r IS-IS metric of a congested | ||||
| link until enough traffic has been diverted away from that link. This a | ||||
| pproach has some limitations | ||||
| as discussed in <xref target="ROUTEREC"/>. Intra-domain TE approaches ( | ||||
| <xref target="RR94"/> | ||||
| <xref target="FT00"/> <xref target="FT01"/> <xref target="WANG"/>) take | ||||
| traffic matrix, network topology, | ||||
| and network performance objectives as input, and produce link metrics an | ||||
| d load-sharing ratios. These | ||||
| processes open the possibility for intra-domain TE with IGP to be done i | ||||
| n a more systematic way.</t> | ||||
| </list> | ||||
| <t>Administrators of MPLS-TE networks specify and configure link attributes an | ||||
| d resource constraints such | ||||
| as maximum reservable bandwidth and resource class attributes for the links | ||||
| in the domain. A link | ||||
| state IGP that supports TE extensions (IS-IS-TE or OSPF-TE) is used to prop | ||||
| agate information about | ||||
| network topology and link attributes to all routers in the domain. Network | ||||
| administrators specify | ||||
| the LSPs that are to originate at each router. For each LSP, the network a | ||||
| dministrator specifies the | ||||
| destination node and the attributes of the LSP which indicate the requireme | ||||
| nts that are to be satisfied | ||||
| during the path selection process. The attributes may include an explicit | ||||
| path for the LSP to follow, or | ||||
| the originating router may use a local constraint-based routing process to | ||||
| compute the path of the LSP. RSVP-TE | ||||
| is used as a signaling protocol to instantiate the LSPs. By assigning prop | ||||
| er bandwidth values to links | ||||
| and LSPs, congestion caused by uneven traffic distribution can be avoided o | ||||
| r mitigated.</t> | ||||
| <t>The bandwidth attributes of an LSP relate to the bandwidth requirements of | ||||
| traffic that flows through the | ||||
| LSP. The traffic attribute of an LSP can be modified to accommodate persis | ||||
| tent shifts in demand (traffic growth | ||||
| or reduction). If network congestion occurs due to unexpected events, exis | ||||
| ting LSPs can be rerouted to | ||||
| alleviate the situation, or the network administrator can configure new LSP | ||||
| s to divert some traffic to alternative | ||||
| paths. The reservable bandwidth of the congested links can also be reduced | ||||
| to force some LSPs to be rerouted | ||||
| to other paths. A traffic matrix in an MPLS domain can also be estimated b | ||||
| y monitoring the traffic on LSPs. | ||||
| Such traffic statistics can be used for a variety of purposes including net | ||||
| work planning and network | ||||
| optimization.</t> | ||||
| <t>Network management and planning systems have evolved and assumed a lot of t | ||||
| he responsibility for determining | ||||
| traffic paths in TE networks. This allows a network-wide view of resources | ||||
| , and facilitates coordination of | ||||
| the use of resources for all traffic flows in the network. Initial solutio | ||||
| ns using a PCE to perform path | ||||
| computation on behalf of network routers have given way to an approach that | ||||
| follows the SDN architecture. A | ||||
| stateful PCE is able to track all of the LSPs in the network and can redist | ||||
| ribute them to make better use of | ||||
| the available resources. Such a PCE can form part of a network orchestrato | ||||
| r that uses PCEP or some other | ||||
| configuration and management interface to instruct the signaling protocol o | ||||
| r directly program the routers.</t> | ||||
| <t>Segment Routing leverages a centralized TE controller and either an MPLS or | ||||
| IPv6 forwarding plane, but does | ||||
| not need to use a signaling protocol or management plane protocol to reserv | ||||
| e resources in the routers. All | ||||
| resource reservation is logical within the controller, and not distributed | ||||
| to the routers. Packets are steered | ||||
| through the network using Segment Routing, and this may have configuration | ||||
| and operational scaling benefits.</t> | ||||
| <t>As mentioned in <xref target="INTER"/>, there is usually no direct control | ||||
| over the distribution of inbound | ||||
| traffic to a domain. Therefore, the main goal of inter-domain TE is to opt | ||||
| imize the distribution of outbound | ||||
| traffic between multiple inter-domain links. When operating a geographical | ||||
| ly widespread network (such as for a | ||||
| multi-national or global network provider), maintaining the ability to oper | ||||
| ate the network in a regional fashion | ||||
| where desired, while continuing to take advantage of the benefits of a glob | ||||
| ally interconnected network, also | ||||
| becomes an important objective.</t> | ||||
| <t>Inter-domain TE with BGP begins with the placement of multiple peering inte | ||||
| rconnection points that are in close | ||||
| proximity to traffic sources/destination, and offer lowest-cost paths acros | ||||
| s the network between the peering | ||||
| points and the sources/destinations. Some location-decision problems that | ||||
| arise in association with | ||||
| inter-domain routing are discussed in <xref target="AWD5"/>.</t> | ||||
| <t>Once the locations of the peering interconnects have been determined and im | ||||
| plemented, the network operator | ||||
| decides how best to handle the routes advertised by the peer, as well as ho | ||||
| w to propagate the peer's routes | ||||
| within their network. One way to engineer outbound traffic flows in a netw | ||||
| ork with many peering interconnects | ||||
| is to create a hierarchy of peers. Generally, the shortest AS paths will b | ||||
| e chosen to forward traffic but BGP | ||||
| metrics can be used to prefer some peers and so favor particular paths. Pr | ||||
| eferred peers are those peers attached | ||||
| through peering interconnects with the most available capacity. Changes ma | ||||
| y be needed, for example, to deal with | ||||
| a "problem peer" who is difficult to work with on upgrades or is charging h | ||||
| igh prices for connectivity to their | ||||
| network. In that case, the peer may be given a reduced preference. This t | ||||
| ype of change can affect a large amount | ||||
| of traffic, and is only used after other methods have failed to provide the | ||||
| desired results.</t> | ||||
| <t>When there are multiple exit points toward a given peer, and only one of th | ||||
| em is congested, it is not necessary | ||||
| to shift traffic away from the peer entirely, but only from the one congest | ||||
| ed connections. This can be | ||||
| achieved by using passive IGP metrics, AS_PATH filtering, or prefix filteri | ||||
| ng.</t> | ||||
| </section> | ||||
| <section anchor="SECURE" title="Security Considerations"> | ||||
| <t>In general, TE mechanisms are security-neutral, and this document does not | ||||
| introduce new security issues.</t> | ||||
| <t>Network security is, of course, an important issue, and TE mechanisms can h | ||||
| ave benefits and drawbacks.</t> | ||||
| <list style="symbols"> | ||||
| <t>TE may use tunnels which can slightly help protect traffic from inspecti | ||||
| on and which, in some cases, can be | ||||
| secured using encryption.</t> | ||||
| <t>TE puts traffic onto predictable paths within the network that may make | ||||
| it easier to find and attack.</t> | ||||
| <t>TE often increases the complexity of operation and management of the net | ||||
| work which may lead to errors that | ||||
| compromise security.</t> | ||||
| <t>TE enables traffic to be steered onto more secure links or to more secur | ||||
| e parts of the network.</t> | ||||
| <t>TE can be used to steer traffic through network nodes that are able to p | ||||
| rovide additional security | ||||
| functions.</t> | ||||
| </list> | ||||
| <t>The consequences of attacks on the control and management protocols used to | ||||
| operate TE networks can be significant: | ||||
| traffic can be hijacked to pass through specific nodes that perform inspect | ||||
| ion, or even to be delivered to the | ||||
| wrong place; traffic can be steered onto paths that deliver quality that is | ||||
| below the desired quality; and, networks | ||||
| can be congested or have resources on key links consumed. Thus, it is impo | ||||
| rtant to use adequate protection mechanisms, | ||||
| such as authentication, on all protocols used to deliver TE.</t> | ||||
| <t>Certain aspects of a network may be deduced from the details of the TE path | ||||
| s that are used. For example, the link | ||||
| connectivity of the network, and the quality and load on individual links m | ||||
| ay be inferred from knowing the paths of | ||||
| traffic and the requirements they place on the network (for example, by see | ||||
| ing the control messages or through path- | ||||
| trace techniques). Such knowledge can be used to launch targeted attacks ( | ||||
| for example, taking down critical links) | ||||
| or can reveal commercially sensitive information (for example, whether a ne | ||||
| twork is close to capacity). Network | ||||
| operators may, therefore, choose techniques that mask or hide information f | ||||
| rom within the network.</t> | ||||
| <t>External control interfaces that are introduced to provide additional contr | ||||
| ol and management of TE systems (see | ||||
| <xref target="TEapproach" />) provide flexibility to management and to cust | ||||
| omers, but do so at the risk of | ||||
| exposing the internals of a network to potentially malicious actors. The p | ||||
| rotocols used at these interfaces | ||||
| must be secured to protect against snooping and modification, and use of th | ||||
| e interfaces must be authenticated.</t> | ||||
| </section> | ||||
| <section anchor="IANA" title="IANA Considerations"> | ||||
| <t>This draft makes no requests for IANA action.</t> | ||||
| </section> | ||||
| <section anchor="ACKN" title="Acknowledgments"> | ||||
| <t>Much of the text in this document is derived from RFC 3272. The editor and | ||||
| contributors to this | ||||
| document would like to express their gratitude to all involved in that work | ||||
| . | ||||
| Although the source text has been edited in the production of this document | ||||
| , the | ||||
| original authors should be considered as Contributors to this work. They w | ||||
| ere:</t> | ||||
| <figure><artwork><![CDATA[ | ||||
| Daniel O. Awduche | ||||
| Movaz Networks | ||||
| Angela Chiu | ||||
| Celion Networks | ||||
| Anwar Elwalid | ||||
| Lucent Technologies | ||||
| Indra Widjaja | ||||
| Bell Labs, Lucent Technologies | ||||
| XiPeng Xiao | ||||
| Redback Networks | ||||
| ]]></artwork></figure> | ||||
| <t>The acknowledgements in RFC3272 were as below. All people who helped | ||||
| in the production of that document also need to be thanked for the | ||||
| carry-over into this new document.</t> | ||||
| <figure><artwork><![CDATA[ | ||||
| The authors would like to thank Jim Boyle for inputs on the | ||||
| recommendations section, Francois Le Faucheur for inputs on | ||||
| Diffserv aspects, Blaine Christian for inputs on measurement, | ||||
| Gerald Ash for inputs on routing in telephone networks and for | ||||
| text on event-dependent TE methods, Steven Wright for inputs | ||||
| on network controllability, and Jonathan Aufderheide for | ||||
| inputs on inter-domain TE with BGP. Special thanks to | ||||
| Randy Bush for proposing the TE taxonomy based on "tactical versus | ||||
| strategic" methods. The subsection describing an "Overview of | ||||
| ITU Activities Related to Traffic Engineering" was adapted from | ||||
| a contribution by Waisum Lai. Useful feedback and pointers to | ||||
| relevant materials were provided by J. Noel Chiappa. | ||||
| Additional comments were provided by Glenn Grotefeld during | ||||
| the working last call process. Finally, the authors would like | ||||
| to thank Ed Kern, the TEWG co-chair, for his comments and | ||||
| support. | ||||
| ]]></artwork></figure> | ||||
| <t>The early versions of this document were produced by the TEAS Working Group | ||||
| 's | ||||
| RFC3272bis Design Team. The full list of members of this team is:</t> | ||||
| <figure><artwork><![CDATA[ | ||||
| Acee Lindem | ||||
| Adrian Farrel | ||||
| Aijun Wang | ||||
| Daniele Ceccarelli | ||||
| Dieter Beller | ||||
| Jeff Tantsura | ||||
| Julien Meuric | ||||
| Liu Hua | ||||
| Loa Andersson | ||||
| Luis Miguel Contreras | ||||
| Martin Horneffer | ||||
| Tarek Saad | ||||
| Xufeng Liu | ||||
| ]]></artwork></figure> | ||||
| <t>The production of this document includes a fix to the original text | <t>Inter-domain TE with BGP begins with the placement of multiple | |||
| resulting from an Errata Report by Jean-Michel Grimaldi.</t> | peering interconnection points that are in close proximity to traffic | |||
| sources/destinations and offer lowest-cost paths across the network | ||||
| between the peering points and the sources/destinations. Some | ||||
| location-decision problems that arise in association with inter-domain | ||||
| routing are discussed in <xref target="AWD5" format="default"/>.</t> | ||||
| <t>Once the locations of the peering interconnects have been determined | ||||
| and implemented, the network operator decides how best to handle the | ||||
| routes advertised by the peer, as well as how to propagate the peer's | ||||
| routes within their network. One way to engineer outbound traffic flows | ||||
| in a network with many peering interconnects is to create a hierarchy of | ||||
| peers. Generally, the shortest AS paths will be chosen to forward | ||||
| traffic, but BGP metrics can be used to prefer some peers and so favor | ||||
| particular paths. Preferred peers are those peers attached through | ||||
| peering interconnects with the most available capacity. Changes may be | ||||
| needed, for example, to deal with a "problem peer" who is difficult to | ||||
| work with on upgrades or is charging high prices for connectivity to | ||||
| their network. In that case, the peer may be given a reduced | ||||
| preference. This type of change can affect a large amount of traffic | ||||
| and is only used after other methods have failed to provide the desired | ||||
| results.</t> | ||||
| <t>When there are multiple exit points toward a given peer, and only one | ||||
| of them is congested, it is not necessary to shift traffic away from the | ||||
| peer entirely, but only from the one congested connection. This can be | ||||
| achieved by using passive IGP metrics, AS_PATH filtering, or prefix | ||||
| filtering.</t> | ||||
| </section> | ||||
| <section anchor="SECURE" numbered="true" toc="default"> | ||||
| <name>Security Considerations</name> | ||||
| <t>In general, TE mechanisms are security neutral, and this document | ||||
| does not introduce new security issues.</t> | ||||
| <t>Network security is, of course, an important issue, and TE mechanisms | ||||
| can have benefits and drawbacks:</t> | ||||
| <ul spacing="normal"> | ||||
| <li>TE may use tunnels that can slightly help protect traffic from | ||||
| inspection and that, in some cases, can be secured using | ||||
| encryption.</li> | ||||
| <li>TE puts traffic onto predictable paths within the network that may | ||||
| make it easier to find and attack.</li> | ||||
| <li>TE often increases the complexity of operation and management of | ||||
| the network, which may lead to errors that compromise security.</li> | ||||
| <li>TE enables traffic to be steered onto more secure links or | ||||
| to more secure parts of the network.</li> | ||||
| <li>TE can be used to steer traffic through network nodes that are | ||||
| able to provide additional security functions.</li> | ||||
| </ul> | ||||
| <t>The consequences of attacks on the control and management protocols | ||||
| used to operate TE networks can be significant:</t> | ||||
| <ul spacing="normal"> | ||||
| <li>Traffic can be hijacked | ||||
| to pass through specific nodes that perform inspection or even to be | ||||
| delivered to the wrong place.</li> | ||||
| <li>Traffic can be steered onto paths that | ||||
| deliver quality that is below the desired quality.</li> | ||||
| <li>Networks can be | ||||
| congested or have resources on key links consumed.</li> | ||||
| </ul> | ||||
| <t>Thus, it is | ||||
| important to use adequate protection mechanisms, such as authentication, | ||||
| on all protocols used to deliver TE.</t> | ||||
| <t>Certain aspects of a network may be deduced from the details of the | ||||
| TE paths that are used. For example, the link connectivity of the | ||||
| network and the quality and load on individual links may be inferred | ||||
| from knowing the paths of traffic and the requirements they place on the | ||||
| network (for example, by seeing the control messages or through | ||||
| path-trace techniques). Such knowledge can be used to launch targeted | ||||
| attacks (for example, taking down critical links) or can reveal | ||||
| commercially sensitive information (for example, whether a network is | ||||
| close to capacity). Therefore, network operators may choose techniques | ||||
| that mask or hide information from within the network.</t> | ||||
| <t>External control interfaces that are introduced to provide additional | ||||
| control and management of TE systems (see <xref target="TEapproach" | ||||
| format="default"/>) provide flexibility to management and to customers, | ||||
| but they do so at the risk of exposing the internals of a network to | ||||
| potentially malicious actors. The protocols used at these interfaces | ||||
| must be secured to protect against snooping and modification, and use of | ||||
| the interfaces must be authenticated.</t> | ||||
| </section> | ||||
| <section anchor="IANA" numbered="true" toc="default"> | ||||
| <name>IANA Considerations</name> | ||||
| <t>This document has no IANA actions.</t> | ||||
| </section> | ||||
| <t>The editor of this document would also like to thank Dhruv Dhody, Gyan Mish | </middle> | |||
| ra, | <back> | |||
| Joel Halpern, Dave Taht, John Scudder, Rich Salz, Behcet Sarikaya, Bob Bris | ||||
| coe, | ||||
| Erik Kline, Jim Guichard, Martin Duke, and Roman Danyliw, for review commen | ||||
| ts.</t> | ||||
| <t>This work is partially supported by the European Commission under | <displayreference target="I-D.ietf-bess-evpn-unequal-lb" to="EVPN-UNEQUAL-LB"/> | |||
| Horizon 2020 grant agreement number 101015857 Secured autonomic | <displayreference target="I-D.ietf-idr-performance-routing" to="PERFORMANCE-ROUT | |||
| traffic management for a Tera of SDN flows (Teraflow).</t> | ING"/> | |||
| <displayreference target="I-D.ietf-idr-segment-routing-te-policy" to="SR-TE-POLI | ||||
| CY"/> | ||||
| <displayreference target="I-D.ietf-quic-multipath" to="QUIC-MULTIPATH"/> | ||||
| <displayreference target="I-D.ietf-rtgwg-segment-routing-ti-lfa" to="SR-TI-LFA"/ | ||||
| > | ||||
| <displayreference target="I-D.ietf-teas-enhanced-vpn" to="ENHANCED-VPN"/> | ||||
| <displayreference target="I-D.ietf-tewg-qos-routing" to="TE-QoS-ROUTING"/> | ||||
| <displayreference target="I-D.ietf-teas-ietf-network-slices" to="NETWORK-SLICES" | ||||
| /> | ||||
| <displayreference target="I-D.ietf-tsvwg-multipath-dccp" to="MULTIPATH-DCCP"/> | ||||
| </section> | <references> | |||
| <name>Informative References</name> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.079 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.110 | ||||
| 2.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.110 | ||||
| 4.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.220 | ||||
| 5.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.233 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.238 | ||||
| 6.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.247 | ||||
| 4.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.247 | ||||
| 5.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.259 | ||||
| 7.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.267 | ||||
| 8.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.270 | ||||
| 2.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.272 | ||||
| 2.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.275 | ||||
| 3.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.296 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.299 | ||||
| 8.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.303 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.308 | ||||
| 6.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.312 | ||||
| 4.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.316 | ||||
| 8.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.317 | ||||
| 5.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.319 | ||||
| 8.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.320 | ||||
| 9.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.327 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.327 | ||||
| 2.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.346 | ||||
| 9.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.347 | ||||
| 3.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.363 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.394 | ||||
| 5.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.409 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.412 | ||||
| 4.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.420 | ||||
| 3.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.427 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.434 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.446 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.459 | ||||
| 4.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.465 | ||||
| 5.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.487 | ||||
| 2.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.487 | ||||
| 3.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.487 | ||||
| 5.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.515 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.525 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.530 | ||||
| 5.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.532 | ||||
| 9.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.533 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.535 | ||||
| 7.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.539 | ||||
| 4.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.544 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.547 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.547 | ||||
| 2.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.554 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.555 | ||||
| 7.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.555 | ||||
| 9.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.562 | ||||
| 3.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.566 | ||||
| 4.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.567 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.569 | ||||
| 3.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.610 | ||||
| 7.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.611 | ||||
| 9.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.624 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.637 | ||||
| 2.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.637 | ||||
| 4.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.660 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.680 | ||||
| 5.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.701 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.714 | ||||
| 9.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.728 | ||||
| 5.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.739 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.742 | ||||
| 6.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.747 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.749 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.755 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.756 | ||||
| 7.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.766 | ||||
| 5.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.767 | ||||
| 9.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.768 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.955 | ||||
| 2.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.792 | ||||
| 6.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.792 | ||||
| 3.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.795 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.803 | ||||
| 3.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.803 | ||||
| 4.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.804 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.805 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.818 | ||||
| 9.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.823 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.825 | ||||
| 9.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.827 | ||||
| 9.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.828 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.828 | ||||
| 3.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.829 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.840 | ||||
| 2.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.845 | ||||
| 3.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.857 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.857 | ||||
| 1.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.865 | ||||
| 5.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.866 | ||||
| 4.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.868 | ||||
| 4.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.868 | ||||
| 5.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.879 | ||||
| 5.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.880 | ||||
| 3.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.889 | ||||
| 6.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.893 | ||||
| 8.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.895 | ||||
| 5.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.897 | ||||
| 2.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.900 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.902 | ||||
| 3.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.904 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.911 | ||||
| 3.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.925 | ||||
| 6.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.926 | ||||
| 2.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.929 | ||||
| 8.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.931 | ||||
| 5.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.933 | ||||
| 2.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.935 | ||||
| 0.xml"/> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.943 | ||||
| 9.xml"/> | ||||
| <section anchor="CONTRIB" title="Contributors"> | <reference anchor="Err309" quote-title="false" target="https://www.rfc-editor.or | |||
| g/errata/eid309"> | ||||
| <front> | ||||
| <title>Erratum ID 309</title> | ||||
| <author> | ||||
| <organization>RFC Errata</organization> | ||||
| </author> | ||||
| </front> | ||||
| <refcontent>RFC 3272</refcontent> | ||||
| </reference> | ||||
| <t>The following people contributed substantive text to this document:</t> | <!-- [I-D.ietf-bess-evpn-unequal-lb] IESG state I-D Exists. Updated to lo ng version because missing editor role for Malhotra and contains extra initials for Lingala--> | |||
| <figure><artwork><![CDATA[ | <reference anchor="I-D.ietf-bess-evpn-unequal-lb"> | |||
| Gert Grammel | <front> | |||
| EMail: ggrammel@juniper.net | <title>Weighted Multi-Path Procedures for EVPN Multi-Homing</title> | |||
| <author initials="N." surname="Malhotra" fullname="Neeraj Malhotra" role="editor | ||||
| "> | ||||
| <organization>Cisco Systems</organization> | ||||
| </author> | ||||
| <author initials="A." surname="Sajassi" fullname="Ali Sajassi"> | ||||
| <organization>Cisco Systems</organization> | ||||
| </author> | ||||
| <author initials="J." surname="Rabadan" fullname="Jorge Rabadan"> | ||||
| <organization>Nokia</organization> | ||||
| </author> | ||||
| <author initials="J." surname="Drake" fullname="John Drake"> | ||||
| <organization>Juniper</organization> | ||||
| </author> | ||||
| <author initials="A." surname="Lingala" fullname="Avinash Lingala"> | ||||
| <organization>ATT</organization> | ||||
| </author> | ||||
| <author initials="S." surname="Thoria" fullname="Samir Thoria"> | ||||
| <organization>Cisco Systems</organization> | ||||
| </author> | ||||
| <date month="December" day="7" year="2023"/> | ||||
| </front> | ||||
| <seriesInfo name="Internet-Draft" value="draft-ietf-bess-evpn-unequal-lb-21"/> | ||||
| </reference> | ||||
| Loa Andersson | <!-- [I-D.ietf-idr-performance-routing] IESG state Expired. Updated to long vers | |||
| EMail: loa@pi.nu | ion because showing wrong date --> | |||
| Xufeng Liu | <reference anchor="I-D.ietf-idr-performance-routing" target="https://datatracker | |||
| EMail: xufeng.liu.ietf@gmail.com | .ietf.org/doc/html/draft-ietf-idr-performance-routing-03"> | |||
| <front> | ||||
| <title>Performance-based BGP Routing Mechanism</title> | ||||
| <author initials="X." surname="Xu" fullname="Xiaohu Xu"> | ||||
| <organization>Alibaba, Inc</organization> | ||||
| </author> | ||||
| <author initials="S." surname="Hegde" fullname="Shraddha Hegde"> | ||||
| <organization>Juniper</organization> | ||||
| </author> | ||||
| <author initials="K." surname="Talaulikar" fullname="Ketan Talaulikar"> | ||||
| <organization>Cisco</organization> | ||||
| </author> | ||||
| <author initials="M." surname="Boucadair" fullname="Mohamed Boucadair"> | ||||
| <organization>France Telecom</organization> | ||||
| </author> | ||||
| <author initials="C." surname="Jacquenet" fullname="Christian Jacquenet"> | ||||
| <organization>France Telecom</organization> | ||||
| </author> | ||||
| <date month="December" day="22" year="2020"/> | ||||
| </front> | ||||
| <seriesInfo name="Internet-Draft" value="draft-ietf-idr-performance-routing-03"/ | ||||
| > | ||||
| </reference> | ||||
| Lou Berger | <!-- [I-D.ietf-idr-segment-routing-te-policy] IESG state AD is watching. Updated | |||
| EMail: lberger@labn.net | to long version because missing editor role for Talaulikar --> | |||
| Jeff Tantsura | <reference anchor="I-D.ietf-idr-segment-routing-te-policy"> | |||
| EMail: jefftant.ietf@gmail.com | <front> | |||
| <title>Advertising Segment Routing Policies in BGP</title> | ||||
| <author initials="S." surname="Previdi" fullname="Stefano Previdi"> | ||||
| <organization>Huawei Technologies</organization> | ||||
| </author> | ||||
| <author initials="C." surname="Filsfils" fullname="Clarence Filsfils"> | ||||
| <organization>Cisco Systems</organization> | ||||
| </author> | ||||
| <author initials="K." surname="Talaulikar" fullname="Ketan Talaulikar" role="edi | ||||
| tor"> | ||||
| <organization>Cisco Systems</organization> | ||||
| </author> | ||||
| <author initials="P." surname="Mattes" fullname="Paul Mattes"> | ||||
| <organization>Microsoft</organization> | ||||
| </author> | ||||
| <author initials="D." surname="Jain" fullname="Dhanendra Jain"> | ||||
| <organization>Google</organization> | ||||
| </author> | ||||
| <date month="October" day="23" year="2023"/> | ||||
| </front> | ||||
| <seriesInfo name="Internet-Draft" value="draft-ietf-idr-segment-routing-te-polic | ||||
| y-26"/> | ||||
| </reference> | ||||
| Daniel King | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9502.xml" | |||
| EMail: daniel@olddog.co.uk | /> | |||
| Boris Hassanov | <!-- [I-D.ietf-quic-multipath] IESG state I-D Exists. Updated to long version be | |||
| EMail: bhassanov@yandex-team.ru | cause missing editor roles and fix name for Y. Ma--> | |||
| Kiran Makhijani | <reference anchor="I-D.ietf-quic-multipath" target="https://datatracker.ietf.org | |||
| Email: kiranm@futurewei.com | /doc/html/draft-ietf-quic-multipath-06"> | |||
| <front> | ||||
| <title>Multipath Extension for QUIC</title> | ||||
| <author initials="Y." surname="Liu" fullname="Yanmei Liu" role="editor"> | ||||
| <organization>Alibaba Inc.</organization> | ||||
| </author> | ||||
| <author initials="Y." surname="Ma" fullname="Yunfei Ma" role="editor"> | ||||
| <organization>Uber Technologies Inc.</organization> | ||||
| </author> | ||||
| <author initials="Q." surname="De Coninck" fullname="Quentin De Coninck" role="e | ||||
| ditor"> | ||||
| <organization>University of Mons (UMONS)</organization> | ||||
| </author> | ||||
| <author initials="O." surname="Bonaventure" fullname="Olivier Bonaventure"> | ||||
| <organization>UCLouvain and Tessares</organization> | ||||
| </author> | ||||
| <author initials="C." surname="Huitema" fullname="Christian Huitema"> | ||||
| <organization>Private Octopus Inc.</organization> | ||||
| </author> | ||||
| <author initials="M." surname="Kühlewind" fullname="Mirja Kühlewind" role="edito | ||||
| r"> | ||||
| <organization>Ericsson</organization> | ||||
| </author> | ||||
| <date month="October" day="23" year="2023"/> | ||||
| </front> | ||||
| <seriesInfo name="Internet-Draft" value="draft-ietf-quic-multipath-06"/> | ||||
| </reference> | ||||
| Dhruv Dhody | <!-- [I-D.ietf-rtgwg-segment-routing-ti-lfa] IESG state I-D Exists --> | |||
| Email: dhruv.ietf@gmail.com | ||||
| Mohamed Boucadair | <xi:include href="https://datatracker.ietf.org/doc/bibxml3/reference.I-D.i | |||
| Email: mohamed.boucadair@orange.com | etf-rtgwg-segment-routing-ti-lfa.xml"/> | |||
| ]]></artwork></figure> | <xi:include href="https://datatracker.ietf.org/doc/bibxml3/reference.I-D.i | |||
| etf-teas-enhanced-vpn.xml"/> | ||||
| </section> | <!-- [I-D.ietf-tewg-qos-routing] IESG state Expired (IESG: Dead). Updated to lon g version because showing wrong date --> | |||
| </middle> | <reference anchor="I-D.ietf-tewg-qos-routing" target="https://datatracker.ietf.o | |||
| rg/doc/html/draft-ietf-tewg-qos-routing-04"> | ||||
| <front> | ||||
| <title>Traffic Engineering & QoS Methods for IP-, ATM-, & Based Multiser | ||||
| vice Networks</title> | ||||
| <author initials="G." surname="Ash" fullname="Gerald Ash"> </author> | ||||
| <date month="October" year="2001"/> | ||||
| </front> | ||||
| <seriesInfo name="Internet-Draft" value="draft-ietf-tewg-qos-routing-04"/> | ||||
| </reference> | ||||
| <back> | <!-- [I-D.ietf-teas-ietf-network-slices] IESG state IESG Evaluation::AD Followup . Updated to long version because missing editor roles --> | |||
| <references title='Informative References'> | <reference anchor="I-D.ietf-teas-ietf-network-slices"> | |||
| <front> | ||||
| <title>A Framework for Network Slices in Networks Built from IETF Technologies</ | ||||
| title> | ||||
| <author initials="A." surname="Farrel" fullname="Adrian Farrel" role="editor"> | ||||
| <organization>Old Dog Consulting</organization> | ||||
| </author> | ||||
| <author initials="J." surname="Drake" fullname="John Drake" role="editor"> | ||||
| <organization>Juniper Networks</organization> | ||||
| </author> | ||||
| <author initials="R." surname="Rokui" fullname="Reza Rokui"> | ||||
| <organization>Ciena</organization> | ||||
| </author> | ||||
| <author initials="S." surname="Homma" fullname="Shunsuke Homma"> | ||||
| <organization>NTT</organization> | ||||
| </author> | ||||
| <author initials="K." surname="Makhijani" fullname="Kiran Makhijani"> | ||||
| <organization>Futurewei</organization> | ||||
| </author> | ||||
| <author initials="L. M." surname="Contreras" fullname="Luis M. Contreras"> | ||||
| <organization>Telefonica</organization> | ||||
| </author> | ||||
| <author initials="J." surname="Tantsura" fullname="Jeff Tantsura"> | ||||
| <organization>Nvidia</organization> | ||||
| </author> | ||||
| <date month="September" day="14" year="2023"/> | ||||
| </front> | ||||
| <seriesInfo name="Internet-Draft" value="draft-ietf-teas-ietf-network-slices-25" | ||||
| /> | ||||
| </reference> | ||||
| &RFC0791; | <!-- [I-D.ietf-tsvwg-multipath-dccp] IESG state I-D Exists. Updated to long vers | |||
| &RFC1102; | ion because missing editor role --> | |||
| &RFC1104; | ||||
| &RFC2205; | ||||
| &RFC2330; | ||||
| &RFC2386; | ||||
| &RFC2474; | ||||
| &RFC2475; | ||||
| &RFC2597; | ||||
| &RFC2678; | ||||
| &RFC2702; | ||||
| &RFC2722; | ||||
| &RFC2753; | ||||
| &RFC2961; | ||||
| &RFC2998; | ||||
| &RFC3031; | ||||
| &RFC3086; | ||||
| &RFC3124; | ||||
| &RFC3168; | ||||
| &RFC3175; | ||||
| &RFC3198; | ||||
| &RFC3209; | ||||
| &RFC3270; | ||||
| &RFC3272; | ||||
| &RFC3469; | ||||
| &RFC3473; | ||||
| &RFC3630; | ||||
| &RFC3945; | ||||
| &RFC4090; | ||||
| &RFC4124; | ||||
| &RFC4203; | ||||
| &RFC4271; | ||||
| &RFC4340; | ||||
| &RFC4461; | ||||
| &RFC4594; | ||||
| &RFC4655; | ||||
| &RFC4872; | ||||
| &RFC4873; | ||||
| &RFC4875; | ||||
| &RFC5151; | ||||
| &RFC5250; | ||||
| &RFC5305; | ||||
| &RFC5329; | ||||
| &RFC5331; | ||||
| &RFC5357; | ||||
| &RFC5394; | ||||
| &RFC5440; | ||||
| &RFC5470; | ||||
| &RFC5472; | ||||
| &RFC5541; | ||||
| &RFC5557; | ||||
| &RFC5559; | ||||
| &RFC5623; | ||||
| &RFC5664; | ||||
| &RFC5671; | ||||
| &RFC5693; | ||||
| &RFC6107; | ||||
| &RFC6119; | ||||
| &RFC6241; | ||||
| &RFC6372; | ||||
| &RFC6374; | ||||
| &RFC6601; | ||||
| &RFC6805; | ||||
| &RFC7011; | ||||
| &RFC7149; | ||||
| &RFC7285; | ||||
| &RFC7390; | ||||
| &RFC7426; | ||||
| &RFC7471; | ||||
| &RFC7491; | ||||
| &RFC7551; | ||||
| &RFC7567; | ||||
| &RFC7665; | ||||
| &RFC7679; | ||||
| &RFC7680; | ||||
| &RFC7752; | ||||
| &RFC7926; | ||||
| &RFC7923; | ||||
| &RFC7950; | ||||
| &RFC8033; | ||||
| &RFC8034; | ||||
| &RFC8040; | ||||
| &RFC8051; | ||||
| &RFC8189; | ||||
| &RFC8231; | ||||
| &RFC8259; | ||||
| &RFC8279; | ||||
| &RFC8281; | ||||
| &RFC8283; | ||||
| &RFC8290; | ||||
| &RFC8402; | ||||
| &RFC8453; | ||||
| &RFC8570; | ||||
| &RFC8571; | ||||
| &RFC8655; | ||||
| &RFC8664; | ||||
| &RFC8684; | ||||
| &RFC8685; | ||||
| &RFC8795; | ||||
| &RFC8803; | ||||
| &RFC8896; | ||||
| &RFC8938; | ||||
| &RFC8955; | ||||
| &RFC8972; | ||||
| &RFC9000; | ||||
| &RFC9023; | ||||
| &RFC9040; | ||||
| &RFC9113; | ||||
| &RFC9256; | ||||
| &RFC9262; | ||||
| &RFC9298; | ||||
| &RFC9315; | ||||
| &RFC9332; | ||||
| &RFC9350; | ||||
| &RFC9439; | ||||
| &I-D.ietf-bess-evpn-unequal-lb; | <reference anchor="I-D.ietf-tsvwg-multipath-dccp"> | |||
| &I-D.ietf-idr-performance-routing; | <front> | |||
| &I-D.ietf-idr-segment-routing-te-policy; | <title>DCCP Extensions for Multipath Operation with Multiple Addresses</title> | |||
| &I-D.ietf-lsr-ip-flexalgo; | <author initials="M." surname="Amend" fullname="Markus Amend" role="editor"> | |||
| &I-D.ietf-quic-multipath; | <organization>Deutsche Telekom</organization> | |||
| &I-D.ietf-rtgwg-segment-routing-ti-lfa; | </author> | |||
| &I-D.ietf-teas-enhanced-vpn; | <author initials="A." surname="Brunstrom" fullname="Anna Brunstrom"> | |||
| &I-D.ietf-tewg-qos-routing; | <organization>Karlstad University</organization> | |||
| &I-D.ietf-teas-ietf-network-slices; | </author> | |||
| &I-D.ietf-tsvwg-multipath-dccp; | <author initials="A." surname="Kassler" fullname="Andreas Kassler"> | |||
| <organization>Karlstad University</organization> | ||||
| </author> | ||||
| <author initials="V." surname="Rakocevic" fullname="Veselin Rakocevic"> | ||||
| <organization>City University of London</organization> | ||||
| </author> | ||||
| <author initials="S." surname="Johnson" fullname="Stephen Johnson"> | ||||
| <organization>BT</organization> | ||||
| </author> | ||||
| <date month="October" day="12" year="2023"/> | ||||
| </front> | ||||
| <seriesInfo name="Internet-Draft" value="draft-ietf-tsvwg-multipath-dccp-11"/> | ||||
| </reference> | ||||
| <reference anchor="AFD03" target="https://dl.acm.org/doi/10.1145/956981.956985 | <reference anchor="AFD03" target="https://dl.acm.org/doi/10.1145/956981.95 | |||
| "> | 6985"> | |||
| <front> | <front> | |||
| <title>Approximate fairness through differential dropping</title> | <title>Approximate fairness through differential dropping</title> | |||
| <author initials="R." surname="Pan" fullname="Rong Pan"> | <author initials="R." surname="Pan" fullname="Rong Pan"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="L." surname="Breslau" fullname="Lee Breslau"> | <author initials="L." surname="Breslau" fullname="Lee Breslau"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="B." surname="Prabhakar" fullname="Balaji Prabhakar"> | <author initials="B." surname="Prabhakar" fullname="Balaji Prabhakar"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="S." surname="Shenker" fullname="Scott Shenker"> | <author initials="S." surname="Shenker" fullname="Scott Shenker"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <date year="2003"/> | <date month="April" year="2003"/> | |||
| </front> | </front> | |||
| <seriesInfo name="Article" value="ACM SIGCOMM Computer Communication Review, | <refcontent>ACM SIGCOMM Computer Communication Review, Volume 33, | |||
| Volume 33, Issue 2, April 2003, pp 23-39"/> | Issue 2, Pages 23-39</refcontent> | |||
| </reference> | <seriesInfo name="DOI" value="10.1145/956981.956985"/> | |||
| </reference> | ||||
| <reference anchor="AJ19" target="https://journalofbigdata.springeropen.com/tra | <reference anchor="AJ19" target="https://journalofbigdata.springeropen.com | |||
| ck/pdf/10.1186/s40537-019-0176-5.pdf"> | /track/pdf/10.1186/s40537-019-0176-5.pdf"> | |||
| <front> | <front> | |||
| <title>Data mining approach for predicting the daily Internet data | <title>Data mining approach for predicting the daily Internet data | |||
| traffic of a smart university</title> | traffic of a smart university</title> | |||
| <author initials="A." surname="Adekitan" fullname="A. Adekitan"> | <author initials="A." surname="Adekitan" fullname="A. Adekitan"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="J." surname="Abolade" fullname="J. Abolade"> | <author initials="J." surname="Abolade" fullname="J. Abolade"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="O." surname="Shobayo" fullname="O. Shobayo"> | <author initials="O." surname="Shobayo" fullname="O. Shobayo"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <date year="1998"/> | <date month="February" year="2019"/> | |||
| </front> | </front> | |||
| <seriesInfo name="Article" value="Journal of Big Data, 2019, Volume 6, Numbe | <refcontent>Journal of Big Data, Volume 6, Number 1, Page 1</refcontent> | |||
| r 1, Page 1"/> | <seriesInfo name="DOI" value="10.1186/s40537-019-0176-5"/> | |||
| </reference> | </reference> | |||
| <reference anchor="ATSSS" target="https://www.3gpp.org/ftp//Specs/archive/23_s | <reference anchor="ATSSS" target="https://www.3gpp.org/ftp//Specs/archive/ | |||
| eries/23.793/23793-g00.zip"> | 23_series/23.793/23793-g00.zip"> | |||
| <front> | <front> | |||
| <title>Study on access traffic steering, switch and splitting support in t | <title>Study on access traffic steering, switch and splitting | |||
| he 5G System (5GS) architecture</title> | support in the 5G System (5GS) architecture</title> | |||
| <author > | <author> | |||
| <organization></organization> | <organization>3GPP</organization> | |||
| </author> | </author> | |||
| <date year="2018" month="December"/> | <date year="2018" month="December"/> | |||
| </front> | </front> | |||
| <seriesInfo name="Specification" value="3GPP Technical Report 23.793 Release | <refcontent>Release 16</refcontent> | |||
| 16"/> | <refcontent>3GPP TR 23.793</refcontent> | |||
| </reference> | </reference> | |||
| <reference anchor="AWD2" target="https://ieeexplore.ieee.org/document/809383"> | <reference anchor="AWD2" target="https://ieeexplore.ieee.org/document/8093 | |||
| <front> | 83"> | |||
| <title>MPLS and Traffic Engineering in IP Networks</title> | <front> | |||
| <author initials="D." surname="Awduche" fullname="Daniel Awduche"> | <title>MPLS and traffic engineering in IP networks</title> | |||
| <organization></organization> | <author initials="D." surname="Awduche" fullname="Daniel Awduche"> | |||
| </author> | <organization/> | |||
| <date year="1999" month="December"/> | </author> | |||
| </front> | <date year="1999" month="December"/> | |||
| <seriesInfo name="Article" value="IEEE Communications Magazine"/> | </front> | |||
| </reference> | <refcontent>IEEE Communications Magazine, Volume 37, Issue 12, Pages | |||
| 42-47</refcontent> | ||||
| <seriesInfo name="DOI" value="10.1109/35.809383"/> | ||||
| </reference> | ||||
| <reference anchor="AWD5" target="https://ieeexplore.ieee.org/document/998795"> | <reference anchor="AWD5" target="https://ieeexplore.ieee.org/document/9987 | |||
| <front> | 95"> | |||
| <title>An Approach to Optimal Peering Between Autonomous Systems in the In | <front> | |||
| ternet</title> | <title>An approach to optimal peering between autonomous systems in | |||
| <author initials="D." surname="Awduche" fullname="Daniel Awduche"> | the Internet</title> | |||
| <organization></organization> | <author initials="D." surname="Awduche" fullname="Daniel Awduche"> | |||
| </author> | <organization/> | |||
| <date year="1998" month="October"/> | </author> | |||
| </front> | <date year="1998" month="October"/> | |||
| <seriesInfo name="Paper" value="International Conference on Computer Communi | </front> | |||
| cations and Networks (ICCCN'98)"/> | <refcontent>Proceedings 7th International Conference on Computer | |||
| </reference> | Communications and Networks (Cat. No. 98EX226)</refcontent> | |||
| <seriesInfo name="DOI" value="10.1109/ICCCN.1998.998795"/> | ||||
| </reference> | ||||
| <reference anchor="E.360.1" target="https://www.itu.int/rec/T-REC-E.360.1-2002 | <reference anchor="E.360.1" target="https://www.itu.int/rec/T-REC-E.360.1- | |||
| 05-I/en"> | 200205-I/en"> | |||
| <front> | <front> | |||
| <title>E.360.1: Framework for QoS routing and related traffic engineering | <title>Framework for QoS routing and related traffic | |||
| methods for IP-, ATM-, and TDM-based multiservice networks</title> | engineering methods for IP-, ATM-, and TDM-based multiservice | |||
| <author> | networks</title> | |||
| <organization>International Telecommunication Union - Telecommunication | <author> | |||
| Standardization Sector</organization> | <organization>ITU-T</organization> | |||
| </author> | </author> | |||
| <date year="2002" month="May" day="16" /> | <date year="2002" month="May"/> | |||
| </front> | </front> | |||
| <seriesInfo name="Recommendation" value="ITU-T Recommendation E.360.1" /> | <seriesInfo name="ITU-T Recommendation" value="E.360.1"/> | |||
| </reference> | </reference> | |||
| <reference anchor="FLJA93" target="https://www.icir.org/floyd/papers/early.two | <reference anchor="FLJA93" target="https://www.icir.org/floyd/papers/early | |||
| column.pdf"> | .twocolumn.pdf"> | |||
| <front> | <front> | |||
| <title>Random Early Detection Gateways for Congestion Avoidance</title> | <title>Random Early Detection Gateways for Congestion Avoidance</title | |||
| <author initials="S." surname="Floyd"> | > | |||
| <organization></organization> | <author initials="S." surname="Floyd"> | |||
| </author> | <organization/> | |||
| <author initials="V." surname="Jacobson"> | </author> | |||
| <organization></organization> | <author initials="V." surname="Jacobson"> | |||
| </author> | <organization/> | |||
| <date year="1993" month="November"/> | </author> | |||
| </front> | <date year="1993" month="August"/> | |||
| <seriesInfo name="Article" value="IEEE/ACM Transactions on Networking, Vol. | </front> | |||
| 1, p. 387-413"/> | <refcontent>IEEE/ACM Transactions on Networking, Volume 1, | |||
| </reference> | Issue 4, Pages 397-413</refcontent> | |||
| <seriesInfo name="DOI" value="10.1109/90.251892"/> | ||||
| </reference> | ||||
| <reference anchor="FT00" target="https://www.cs.cornell.edu/courses/cs619/2004 | <reference anchor="FT00" target="https://www.cs.cornell.edu/courses/cs619/ | |||
| fa/documents/ospf_opt.pdf"> | 2004fa/documents/ospf_opt.pdf"> | |||
| <front> | <front> | |||
| <title>Internet Traffic Engineering by Optimizing OSPF Weights</title> | <title>Internet Traffic Engineering by Optimizing OSPF Weights</title> | |||
| <author initials="B." surname="Fortz"> | <author initials="B." surname="Fortz"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="M." surname="Thorup"> | <author initials="M." surname="Thorup"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <date year="2000" month="March"/> | <date year="2000" month="March"/> | |||
| </front> | </front> | |||
| <seriesInfo name="Article" value="IEEE INFOCOM 2000"/> | <refcontent>Proceedings IEEE INFOCOM 2000</refcontent> | |||
| </reference> | <seriesInfo name="DOI" value="10.1109/INFCOM.2000.832225"/> | |||
| </reference> | ||||
| <reference anchor="FT01" target="http://www.research.att.com/~mthorup/PAPERS/p | <reference anchor="FT01" target="https://ieeexplore.ieee.org/document/1003 | |||
| apers.html"> | 042"> | |||
| <front> | <front> | |||
| <title>Optimizing OSPF/IS-IS Weights in a Changing World</title> | <title>Optimizing OSPF/IS-IS Weights in a Changing World</title> | |||
| <author initials="B." surname="Fortz"> | <author initials="B." surname="Fortz"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="M." surname="Thorup"> | <author initials="M." surname="Thorup"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <date year="n.d."/> | <date month="May" year="2002"/> | |||
| </front> | </front> | |||
| </reference> | <refcontent>IEEE Journal on Selected Areas in Communications</refcontent | |||
| > | ||||
| <seriesInfo name='DOI' value='10.1109/JSAC.2002.1003042' /> | ||||
| </reference> | ||||
| <reference anchor="GRPC" target="https://grpc.io"> | <reference anchor="GRPC" target="https://grpc.io"> | |||
| <front> | <front> | |||
| <title>gPPC: A high performance, open source universal RPC framework</titl | <title>gRPC: A high performance, open source universal RPC | |||
| e> | framework</title> | |||
| <author> | <author> | |||
| <organization>Cloud Native Computing Foundation</organization> | <organization>gRPC Authors</organization> | |||
| </author> | </author> | |||
| <date year="n.d."/> | <date></date> | |||
| </front> | </front> | |||
| </reference> | </reference> | |||
| <reference anchor="KELLY"> | <reference anchor="KELLY"> | |||
| <front> | <front> | |||
| <title>Notes on effective bandwidths. In Stochastic Networks: Theory and A | <title>Notes on effective bandwidths</title> | |||
| pplications</title> | <author initials="F." surname="Kelly"> | |||
| <author initials="F." surname="Kelly"> | </author> | |||
| </author> | <date year="1996"/> | |||
| <date year="1996"/> | </front> | |||
| </front> | <refcontent>Oxford University Press</refcontent> | |||
| <seriesInfo name="Book" value="Oxford University Press"/> | </reference> | |||
| </reference> | ||||
| <reference anchor="MA" target="https://apps.dtic.mil/sti/pdfs/ADA352299.pdf"> | <reference anchor="MA" target="https://apps.dtic.mil/sti/pdfs/ADA352299.pd | |||
| <front> | f"> | |||
| <title>Quality of Service Routing in Integrated Services Networks</title> | <front> | |||
| <author initials="Q." surname="Ma"> | <title>Quality-of-Service Routing in Integrated Services Networks</tit | |||
| <organization></organization> | le> | |||
| </author> | <author initials="Q." surname="Ma"> | |||
| <date year="1998"/> | <organization/> | |||
| </front> | </author> | |||
| <seriesInfo name="Ph.D." value="PhD Dissertation, CMU-CS-98-138, CMU"/> | <date month="January" year="1998"/> | |||
| </reference> | </front> | |||
| <refcontent>Ph.D. Dissertation, Carnegie Mellon University, | ||||
| CMU-CS-98-138</refcontent> | ||||
| </reference> | ||||
| <reference anchor="MATE" target="https://www.yumpu.com/en/document/view/351403 | <reference anchor="MATE" target="https://www.yumpu.com/en/document/view/35 | |||
| 98/mate-mpls-adaptive-traffic-engineering-infocom-ieee-xplore/8"> | 140398/mate-mpls-adaptive-traffic-engineering-infocom-ieee-xplore/8"> | |||
| <front> | <front> | |||
| <title>MATE - MPLS Adaptive Traffic Engineering</title> | <title>MATE: MPLS Adaptive Traffic Engineering</title> | |||
| <author initials="A." surname="Elwalid"> | <author initials="A." surname="Elwalid"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="C." surname="Jin"> | <author initials="C." surname="Jin"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="S." surname="Low"> | <author initials="S." surname="Low"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="I." surname="Widjaja"> | <author initials="I." surname="Widjaja"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <date year="2001" month="April"/> | <date year="2002" month="August"/> | |||
| </front> | </front> | |||
| <seriesInfo name="Proceedings" value="INFOCOM'01"/> | <refcontent>Proceedings IEEE INFOCOM 2001, Conference on Computer | |||
| </reference> | Communications, Twentieth Annual Joint Conference of the IEEE Computer | |||
| and Communications Society (Cat. No. 01CH37213)</refcontent> | ||||
| <seriesInfo name="DOI" value="10.1109/INFCOM.2001.916625"/> | ||||
| </reference> | ||||
| <reference anchor="MR99" target="https://ieeexplore.ieee.org/document/830281"> | <reference anchor="MR99" target="https://ieeexplore.ieee.org/document/8302 | |||
| <front> | 81"> | |||
| <title>A Case Study of Multiservice, Multipriority Traffic Engineering Des | <front> | |||
| ign for Data Networks</title> | <title>A case study of multiservice, multipriority traffic engineering | |||
| <author initials="D." surname="Mitra"> | design for data networks</title> | |||
| <organization></organization> | <author initials="D." surname="Mitra"> | |||
| </author> | <organization/> | |||
| <author initials="K.G." surname="Ramakrishnan"> | </author> | |||
| <organization></organization> | <author initials="K.G." surname="Ramakrishnan"> | |||
| </author> | <organization/> | |||
| <date year="1999" month="December"/> | </author> | |||
| </front> | <date year="1999" month="December"/> | |||
| <seriesInfo name="Proceedings" value="Globecom'99"/> | </front> | |||
| </reference> | <refcontent>Seamless Interconnection for Universal Services, Global | |||
| Telecommunications Conference, GLOBECOM'99, | ||||
| (Cat. No. 99CH37042)</refcontent> | ||||
| <seriesInfo name="DOI" value="10.1109/GLOCOM.1999.830281"/> | ||||
| </reference> | ||||
| <reference anchor="RR94" target="https://onlinelibrary.wiley.com/doi/abs/10.10 | <reference anchor="RR94" target="https://onlinelibrary.wiley.com/doi/abs/1 | |||
| 02/bltj.2267"> | 0.1002/bltj.2267"> | |||
| <front> | <front> | |||
| <title>Optimal Routing in Shortest Path Data Networks</title> | <title>Optimal routing in shortest-path data networks</title> | |||
| <author initials="M.A." surname="Rodrigues"> | <author initials="M." surname="Rodrigues"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="K.G." surname="Ramakrishnan"> | <author initials="K.G." surname="Ramakrishnan"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <date year="1994"/> | <date month="August" year="2002"/> | |||
| </front> | </front> | |||
| <seriesInfo name="Proceedings" value="ITS'94, Rio de Janeiro, Brazil"/> | <refcontent>Bell Labs Technical Journal, Volume 6, Issue 1, Pages | |||
| </reference> | 117-138</refcontent> | |||
| <seriesInfo name="DOI" value="10.1002/bltj.2267"/> | ||||
| </reference> | ||||
| <reference anchor="SLDC98" target="https://ieeexplore.ieee.org/document/659666 | <reference anchor="SLDC98" target="https://ieeexplore.ieee.org/document/65 | |||
| "> | 9666"> | |||
| <front> | <front> | |||
| <title>Design Considerations for Supporting TCP with Per-flow Queueing</ti | <title>Design considerations for supporting TCP with per-flow queueing | |||
| tle> | </title> | |||
| <author initials="B." surname="Suter"> | <author initials="B." surname="Suter"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="T." surname="Lakshman"> | <author initials="T.V." surname="Lakshman"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="D." surname="Stiliadis"> | <author initials="D." surname="Stiliadis"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="A." surname="Choudhury"> | <author initials="A.K." surname="Choudhury"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <date year="1998"/> | <date month="April" year="1998"/> | |||
| </front> | </front> | |||
| <seriesInfo name="Proceedings" value="INFOCOM'98, p. 299-306"/> | <refcontent>Proceedings IEEE INFOCOM '98 | |||
| </reference> | </refcontent> | |||
| <seriesInfo name="DOI" value="10.1109/INFCOM.1998.659666"/> | ||||
| </reference> | ||||
| <reference anchor="WANG" target="https://ieeexplore.ieee.org/document/916782"> | <reference anchor="WANG" target="https://ieeexplore.ieee.org/document/9167 | |||
| <front> | 82"> | |||
| <title>Internet traffic engineering without full mesh overlaying</title> | <front> | |||
| <author initials="Y." surname="Wang"> | <title>Internet traffic engineering without full mesh overlaying</titl | |||
| <organization></organization> | e> | |||
| </author> | <author initials="Y." surname="Wang"> | |||
| <author initials="Z." surname="Wang"> | <organization/> | |||
| <organization></organization> | </author> | |||
| </author> | <author initials="Z." surname="Wang"> | |||
| <author initials="L." surname="Zhang"> | <organization/> | |||
| <organization></organization> | </author> | |||
| </author> | <author initials="L." surname="Zhang"> | |||
| <date year="2001" month="April"/> | <organization/> | |||
| </front> | </author> | |||
| <seriesInfo name="Proceedings" value="INFOCOM'2001"/> | <date year="2001" month="April"/> | |||
| </reference> | </front> | |||
| <refcontent>Proceedings IEEE INFOCOM 2001 | ||||
| </refcontent> | ||||
| <seriesInfo name="DOI" value="10.1109/INFCOM.2001.916782"/> | ||||
| </reference> | ||||
| <reference anchor="XIAO" target="https://courses.cs.washington.edu/courses/cse | <reference anchor="XIAO" target="https://courses.cs.washington.edu/courses | |||
| 561/02au/papers/xiao-mpls-net00.pdf"> | /cse561/02au/papers/xiao-mpls-net00.pdf"> | |||
| <front> | <front> | |||
| <title>Traffic Engineering with MPLS in the Internet</title> | <title>Traffic Engineering with MPLS in the Internet</title> | |||
| <author initials="X." surname="Xiao"> | <author initials="X." surname="Xiao"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="A." surname="Hannan"> | <author initials="A." surname="Hannan"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="B." surname="Bailey"> | <author initials="B." surname="Bailey"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="L." surname="Ni"> | <author initials="L." surname="Ni"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <date year="2000" month="March"/> | <date year="2000" month="March"/> | |||
| </front> | </front> | |||
| <seriesInfo name="Article" value="IEEE Network Magazine"/> | <refcontent>IEEE Network, Volume 14, Issue 2, Pages 28-33</refcontent> | |||
| </reference> | <seriesInfo name="DOI" value="10.1109/65.826369"/> | |||
| </reference> | ||||
| <reference anchor="YARE95" target="http://www.cs.uccs.edu/~zbo/teaching/CS522/ | <reference anchor="YARE95" target="https://ieeexplore.ieee.org/document/39 | |||
| Projects/Taxonomy_Network1995.pdf"> | 7042"> | |||
| <front> | <front> | |||
| <title>A Taxonomy for Congestion Control Algorithms in Packet Switching Ne | <title>A Taxonomy for Congestion Control Algorithms in Packet | |||
| tworks</title> | Switching Networks</title> | |||
| <author initials="C." surname="Yang"> | <author initials="C." surname="Yang"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <author initials="A." surname="Reddy"> | <author initials="A." surname="Reddy"> | |||
| <organization></organization> | <organization/> | |||
| </author> | </author> | |||
| <date year="1995"/> | <date month="August" year="1995"/> | |||
| </front> | </front> | |||
| <seriesInfo name="Article" value="IEEE Network Magazine, p. 34-45"/> | <refcontent>IEEE Network, Pages 34-45</refcontent> | |||
| </reference> | <seriesInfo name="DOI" value="10.1109/65.397042"/> | |||
| </reference> | ||||
| </references> | </references> | |||
| <section anchor="CHANGES" title="Summary of Changes Since RFC 3272"> | <section anchor="CHANGES" numbered="true" toc="default"> | |||
| <name>Summary of Changes since RFC 3272</name> | ||||
| <t>The changes to this document since <xref target="RFC3272" | ||||
| format="default"/> are substantial and not easily summarized as | ||||
| section-by-section changes. The material in the document has been moved | ||||
| around considerably, some of it removed, and new text added.</t> | ||||
| <t>The approach taken here is to list the contents of both <xref target="R | ||||
| FC3272" | ||||
| format="default"/> | ||||
| and this document saying, respectively, where the text has | ||||
| been placed and where the text came from.</t> | ||||
| <section anchor="OLD" numbered="true" toc="default"> | ||||
| <name>RFC 3272</name> | ||||
| <t>The changes to this document since RFC 3272 are substantial and not easily | <ul spacing="normal"> | |||
| summarized as section-by-section changes. The material in the document has | <li><t>Section <xref target="RFC3272" sectionFormat="bare" | |||
| been moved around considerably, some of it removed, and new text added.</t> | section="1.0">"Introduction"</xref>: Edited in place in <xref | |||
| target="INTRO" format="default"/>.</t> | ||||
| <ul spacing="normal"> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="1 | ||||
| .1">"What is Internet Traffic Engineering?"</xref>: Edited in place | ||||
| in <xref target="WHATTE" format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="1 | ||||
| .2">"Scope"</xref>: Moved to <xref target="SCOPE" | ||||
| format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="1 | ||||
| .3">"Terminology"</xref>: Moved to <xref target="TERMS" | ||||
| format="default"/> with some obsolete terms removed and a little | ||||
| editing.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li><t>Section <xref target="RFC3272" sectionFormat="bare" section="2. | ||||
| 0">"Background"</xref>: Retained as <xref target="BG" | ||||
| format="default"/> with some text removed.</t> | ||||
| <ul spacing="normal"> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="2 | ||||
| .1">"Context of Internet Traffic Engineering"</xref>: Retained as | ||||
| <xref target="CONTEXT" format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="2 | ||||
| .2">"Network Context"</xref>: Rewritten as <xref target="NWCTXT" | ||||
| format="default"/>.</li> | ||||
| <li><t>Section <xref target="RFC3272" sectionFormat="bare" section | ||||
| ="2.3">"Problem Context"</xref>: Rewritten as <xref target="PRBCTXT" | ||||
| format="default"/>.</t> | ||||
| <ul spacing="normal"> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" sectio | ||||
| n="2.3.1">"Congestion and its Ramifications"</xref>: Retained as | ||||
| <xref target="CONGEST" format="default"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li><t>Section <xref target="RFC3272" sectionFormat="bare" section | ||||
| ="2.4">"Solution Context"</xref>: Edited as <xref target="SLNCTXT" | ||||
| format="default"/>.</t> | ||||
| <ul spacing="normal"> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" sectio | ||||
| n="2.4.1">"Combating the Congestion Problem"</xref>: Reformatted as | ||||
| <xref target="COMBAT" format="default"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="2. | ||||
| 5">"Implementation and Operational Context"</xref>: Retained as | ||||
| <xref target="IMPCTXT" format="default"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li><t>Section <xref target="RFC3272" sectionFormat="bare" section="3. | ||||
| 0">"Traffic Engineering Process Model"</xref>: Retained as <xref | ||||
| target="TEPROC" format="default"/>.</t> | ||||
| <ul spacing="normal"> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="3.1" | ||||
| >"Components of the Traffic Engineering Process Model"</xref>: | ||||
| Retained as <xref target="COMPONENT" | ||||
| format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="3.2" | ||||
| >"Measurement"</xref>: Merged into <xref target="COMPONENT" | ||||
| format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="3.3" | ||||
| >"Modeling, Analysis, and Simulation"</xref>: Merged into | ||||
| <xref target="COMPONENT" format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="3.4" | ||||
| >"Optimization"</xref>: Merged into <xref target="COMPONENT" | ||||
| format="default"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li><t>Section <xref target="RFC3272" sectionFormat="bare" section="4. | ||||
| 0">"Historical Review and Recent Developments"</xref>: Retained as | ||||
| <xref target="REVIEW" format="default"/>, but the very historic | ||||
| aspects have been deleted.</t> | ||||
| <ul spacing="normal"> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="4 | ||||
| .1">"Traffic Engineering in Classical Telephone Networks"</xref>: Deleted.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="4 | ||||
| .2">"Evolution of Traffic Engineering in the Internet"</xref>: Deleted.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="4 | ||||
| .3">"Overlay Model"</xref>: Deleted.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="4 | ||||
| .4">"Constraint-Based Routing"</xref>: Retained as <xref | ||||
| target="CSPF" format="default"/>, but moved into <xref | ||||
| target="OTHER" format="default"/>.</li> | ||||
| <li><t>Section <xref target="RFC3272" sectionFormat="bare" section | ||||
| ="4.5">"Overview of Other IETF Projects Related to Traffic | ||||
| Engineering"</xref>: Retained as <xref target="OTHER" format="defa | ||||
| ult"/> | ||||
| with many new subsections.</t> | ||||
| <ul spacing="normal"> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" sectio | ||||
| n="4.5.1">"Integrated Services"</xref>: Retained as <xref | ||||
| target="INTSERV" format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" sectio | ||||
| n="4.5.2">"RSVP"</xref>: Retained as <xref target="RSVP" | ||||
| format="default"/> with some edits.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" sectio | ||||
| n="4.5.3">"Differentiated Services"</xref>: Retained as <xref | ||||
| target="DIFFSERV" format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" sectio | ||||
| n="4.5.4">"MPLS"</xref>: Retained as <xref target="MPLS" | ||||
| format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" sectio | ||||
| n="4.5.5">"IP Performance Metrics"</xref>: Retained as <xref | ||||
| target="IPPM" format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" sectio | ||||
| n="4.5.6">"Flow Measurement"</xref>: Retained as <xref target="RTFM" | ||||
| format="default"/> with some reformatting.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" sectio | ||||
| n="4.5.7">"Endpoint Congestion Management"</xref>: Retained as <xref | ||||
| target="ECM" format="default"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="4 | ||||
| .6">"Overview of ITU Activities Related to Traffic | ||||
| Engineering"</xref>: Deleted.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="4 | ||||
| .7">"Content Distribution"</xref>: Retained as <xref target="CDN" | ||||
| format="default"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li><t>Section <xref target="RFC3272" sectionFormat="bare" section="5. | ||||
| 0">"Taxonomy of Traffic Engineering Systems"</xref>: Retained as | ||||
| <xref target="TAXI" format="default"/>.</t> | ||||
| <ul spacing="normal"> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="5 | ||||
| .1">"Time-Dependent Versus State-Dependent"</xref>: Retained as <xref | ||||
| target="TIME" format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="5 | ||||
| .2">"Offline Versus Online"</xref>: Retained as <xref target="OFFON" | ||||
| format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="5 | ||||
| .3">"Centralized Versus Distributed"</xref>: Retained as <xref | ||||
| target="CENTRAL" format="default"/> with additions.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="5 | ||||
| .4">"Local Versus Global"</xref>: Retained as <xref target="LOCAL" | ||||
| format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="5 | ||||
| .5">"Prescriptive Versus Descriptive"</xref>: Retained as <xref | ||||
| target="SCRIPT" format="default"/> with additions.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="5 | ||||
| .6">"Open-Loop Versus Closed-Loop"</xref>: Retained as <xref | ||||
| target="LOOP" format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="5 | ||||
| .7">"Tactical vs Strategic"</xref>: Retained as <xref target="TACTIC" | ||||
| format="default"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li><t>Section <xref target="RFC3272" sectionFormat="bare" section="6. | ||||
| 0">"Recommendations for Internet Traffic Engineering"</xref>: | ||||
| Retained as <xref target="RECO" format="default"/>.</t> | ||||
| <ul spacing="normal"> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="6 | ||||
| .1">"Generic Non-functional Recommendations"</xref>: Retained as | ||||
| <xref target="HIGHOBJ" format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="6 | ||||
| .2">"Routing Recommendations"</xref>: Retained as <xref | ||||
| target="ROUTEREC" format="default"/> with edits.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="6 | ||||
| .3">"Traffic Mapping Recommendations"</xref>: Retained as <xref | ||||
| target="MAPREC" format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="6 | ||||
| .4">"Measurement Recommendations"</xref>: Retained as <xref | ||||
| target="MSRREC" format="default"/>.</li> | ||||
| <li><t>Section <xref target="RFC3272" sectionFormat="bare" section | ||||
| ="6.5">"Network Survivability"</xref>: Retained as <xref | ||||
| target="SURVIVE" format="default"/>.</t> | ||||
| <ul spacing="normal"> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" sectio | ||||
| n="6.5.1">"Survivability in MPLS Based Networks"</xref>: Retained as | ||||
| <xref target="SRVMPLS" format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" sectio | ||||
| n="6.5.2">"Protection Option"</xref>: Retained as <xref | ||||
| target="PROTECT" format="default"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="6 | ||||
| .6">"Traffic Engineering in Diffserv Environments"</xref>: Retained | ||||
| as <xref target="TEDIFFSRV" format="default"/> with edits.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="6 | ||||
| .7">"Network Controllability"</xref>: Retained as <xref | ||||
| target="CONTROL" format="default"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="7.0"> | ||||
| "Inter-Domain Considerations"</xref>: Retained as <xref | ||||
| target="INTER" format="default"/>.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="8.0">" | ||||
| Overview of Contemporary TE Practices in Operational IP | ||||
| Networks"</xref>: Retained as <xref target="PRACTICE" format="default"/ | ||||
| >.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="9.0"> | ||||
| "Conclusion"</xref>: Removed.</li> | ||||
| <li>Section <xref target="RFC3272" sectionFormat="bare" section="10.0"> | ||||
| "Security Considerations"</xref>: Retained as <xref target="SECURE" | ||||
| format="default"/> with considerable new text.</li> | ||||
| </ul> | ||||
| <t>The approach taken here is to list the table of content of both the previou | </section> | |||
| s | <section anchor="NEW" numbered="true" toc="default"> | |||
| RFC and this document saying, respectively, where the text has been placed | <name>This Document</name> | |||
| and where the text came from.</t> | <ul spacing="normal"> | |||
| <li> | ||||
| <t><xref target="INTRO" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="1"/>. </t> | ||||
| <ul spacing="normal"> | ||||
| <li> | ||||
| <xref target="WHATTE" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="1.1"/>.</li> | ||||
| <li> | ||||
| <xref target="COMPONENTS" format="default"/>: New for this docum | ||||
| ent.</li> | ||||
| <li> | ||||
| <xref target="SCOPE" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="1.2"/>.</li> | ||||
| <li> | ||||
| <xref target="TERMS" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="1.3"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li> | ||||
| <t><xref target="BG" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="2"/>. | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li> | ||||
| <xref target="CONTEXT" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="2.1"/>.</li> | ||||
| <li> | ||||
| <xref target="NWCTXT" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="2.2"/>.</li> | ||||
| <li> | ||||
| <t><xref target="PRBCTXT" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="2.3"/>. | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li> | ||||
| <xref target="CONGEST" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" | ||||
| section="2.3.1"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li> | ||||
| <t><xref target="SLNCTXT" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="2.4"/>.</t> | ||||
| <ul spacing="normal"> | ||||
| <li> | ||||
| <xref target="COMBAT" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="2.4.1"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li> | ||||
| <xref target="IMPCTXT" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="2.5"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li> | ||||
| <t><xref target="TEPROC" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="3"/>. | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li><xref target="COMPONENT" format="default"/>: Based on | ||||
| Sections <xref target="RFC3272" sectionFormat="bare" | ||||
| section="3.1"/>, <xref target="RFC3272" sectionFormat="bare" | ||||
| section="3.2"/>, <xref target="RFC3272" sectionFormat="bare" | ||||
| section="3.3"/>, and <xref target="RFC3272" sectionFormat="bare" | ||||
| section="3.4"/> of <xref target="RFC3272" | ||||
| format="default"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li> | ||||
| <t><xref target="TAXI" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="5"/>. | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li> | ||||
| <xref target="TIME" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="5.1"/>.</li> | ||||
| <li> | ||||
| <xref target="OFFON" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="5.2"/>.</li> | ||||
| <li> | ||||
| <t><xref target="CENTRAL" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="5.3"/>. | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li> | ||||
| <xref target="HYBRID" format="default"/>: New for this docum | ||||
| ent.</li> | ||||
| <li> | ||||
| <xref target="SDN" format="default"/>: New for this document | ||||
| .</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li> | ||||
| <xref target="LOCAL" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="5.4"/>.</li> | ||||
| <li> | ||||
| <t><xref target="SCRIPT" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="5.5"/>. | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li> | ||||
| <xref target="INTENT" format="default"/>: New for this docum | ||||
| ent.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li> | ||||
| <xref target="LOOP" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="5.6"/>.</li> | ||||
| <li> | ||||
| <xref target="TACTIC" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="5.7"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li> | ||||
| <t><xref target="REVIEW" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="4"/>. | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li> | ||||
| <t><xref target="OTHER" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="4.5"/>. | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li> | ||||
| <xref target="INTSERV" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" | ||||
| section="4.5.1"/>.</li> | ||||
| <li> | ||||
| <xref target="DIFFSERV" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" | ||||
| section="4.5.3"/>.</li> | ||||
| <li> | ||||
| <xref target="SRPolicy" format="default"/>: New for this doc | ||||
| ument.</li> | ||||
| <li> | ||||
| <xref target="QUIC" format="default"/>: New for this documen | ||||
| t.</li> | ||||
| <li> | ||||
| <xref target="DETNET" format="default"/>: New for this docum | ||||
| ent.</li> | ||||
| <li> | ||||
| <xref target="ALTO" format="default"/>: New for this documen | ||||
| t.</li> | ||||
| <li> | ||||
| <xref target="ACTN" format="default"/>: New for this documen | ||||
| t.</li> | ||||
| <li> | ||||
| <xref target="SLICE" format="default"/>: New for this docume | ||||
| nt.</li> | ||||
| <li> | ||||
| <t><xref target="CSPF" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="4.4"/>. | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li> | ||||
| <xref target="FLEX" format="default"/>: New for this doc | ||||
| ument.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li> | ||||
| <xref target="RSVP" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" | ||||
| section="4.5.2"/>.</li> | ||||
| <li> | ||||
| <xref target="MPLS" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" | ||||
| section="4.5.4"/>.</li> | ||||
| <li> | ||||
| <xref target="RSVP-TE" format="default"/>: New for this docu | ||||
| ment.</li> | ||||
| <li> | ||||
| <xref target="GMPLS" format="default"/>: New for this docume | ||||
| nt.</li> | ||||
| <li> | ||||
| <xref target="IPPM" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" | ||||
| section="4.5.5"/>.</li> | ||||
| <li> | ||||
| <xref target="RTFM" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" | ||||
| section="4.5.6"/>.</li> | ||||
| <li> | ||||
| <xref target="ECM" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" | ||||
| section="4.5.7"/>.</li> | ||||
| <li> | ||||
| <xref target="IGPTE" format="default"/>: New for this docume | ||||
| nt.</li> | ||||
| <li> | ||||
| <xref target="BGPLS" format="default"/>: New for this docume | ||||
| nt.</li> | ||||
| <li> | ||||
| <xref target="PCE" format="default"/>: New for this document | ||||
| .</li> | ||||
| <li> | ||||
| <xref target="SR" format="default"/>: New for this document. | ||||
| </li> | ||||
| <li> | ||||
| <xref target="BIER-TE" format="default"/>: New for this docu | ||||
| ment.</li> | ||||
| <li> | ||||
| <xref target="STATE" format="default"/>: New for this docume | ||||
| nt.</li> | ||||
| <li> | ||||
| <xref target="SYSMAN" format="default"/>: New for this docum | ||||
| ent.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li> | ||||
| <xref target="CDN" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="4.7"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li> | ||||
| <t><xref target="RECO" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="6"/>. | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li> | ||||
| <xref target="HIGHOBJ" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="6.1"/>.</li> | ||||
| <li> | ||||
| <xref target="ROUTEREC" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="6.2"/>.</li> | ||||
| <li> | ||||
| <xref target="MAPREC" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="6.3"/>.</li> | ||||
| <li> | ||||
| <xref target="MSRREC" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="6.4"/>.</li> | ||||
| <li> | ||||
| <xref target="POLICE" format="default"/>: New for this document. | ||||
| </li> | ||||
| <li> | ||||
| <t><xref target="SURVIVE" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="6.5"/>. | ||||
| </t> | ||||
| <ul spacing="normal"> | ||||
| <li> | ||||
| <xref target="SRVMPLS" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" | ||||
| section="6.5.1"/>.</li> | ||||
| <li> | ||||
| <xref target="PROTECT" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" | ||||
| section="6.5.2"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li> | ||||
| <xref target="ML" format="default"/>: New for this document.</li | ||||
| > | ||||
| <li> | ||||
| <xref target="TEDIFFSRV" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="6.6"/>.</li> | ||||
| <li> | ||||
| <xref target="CONTROL" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="6.7"/>.</li> | ||||
| </ul> | ||||
| </li> | ||||
| <li> | ||||
| <xref target="INTER" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="7"/>.</li> | ||||
| <li> | ||||
| <xref target="PRACTICE" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="8"/>.</li> | ||||
| <li> | ||||
| <xref target="SECURE" format="default"/>: Based on <xref | ||||
| target="RFC3272" sectionFormat="of" section="10"/>.</li> | ||||
| </ul> | ||||
| </section> | ||||
| </section> | ||||
| <section anchor="OLD" title="RFC 3272"> | <section anchor="ACKN" numbered="false" toc="default"> | |||
| <t><list style="hanging"> | <name>Acknowledgments</name> | |||
| <t hangText="1.0 Introduction:">Edited in place in <xref target="INTRO" | ||||
| />. | ||||
| <list style="hanging"> | ||||
| <t hangText="1.1 What is Internet Traffic Engineering?:">Edited in | ||||
| place in <xref target="WHATTE" />.</t> | ||||
| <t hangText="1.2 Scope:">Moved to <xref target="SCOPE" />.</t> | ||||
| <t hangText="1.3 Terminology:">Moved to <xref target="TERMS" /> wi | ||||
| th some obsolete terms removed | ||||
| and a little editing.</t> | ||||
| </list></t> | ||||
| <t hangText="2.0 Background:">Retained as <xref target="BG" /> with some | <t>Much of the text in this document is derived from <xref | |||
| text removed. | target="RFC3272" format="default"/>. The editor and contributors to | |||
| <list style="hanging"> | this document would like to express their gratitude to all involved in | |||
| <t hangText="2.1 Context of Internet Traffic Engineering:">Retaine | that work. Although the source text has been edited in the production | |||
| d as <xref target="CONTEXT" />.</t> | of this document, the original authors should be considered as | |||
| <t hangText="2.2 Network Context:">Rewritten as <xref target="NWCT | contributors to this work. They were:</t> | |||
| XT" />.</t> | ||||
| <t hangText="2.3 Problem Context:">Rewritten as <xref target="PRBC | ||||
| TXT" />. | ||||
| <list style="hanging"> | ||||
| <t hangText="2.3.1 Congestion and its Ramifications:">Retain | ||||
| ed as <xref target="CONGEST" />.</t> | ||||
| </list></t> | ||||
| <t hangText="2.4 Solution Context:">Edited as <xref target="SLNCTX | ||||
| T" />. | ||||
| <list style="hanging"> | ||||
| <t hangText="2.4.1 Combating the Congestion Problem:">Reform | ||||
| atted as <xref target="COMBAT" />.</t> | ||||
| </list></t> | ||||
| <t hangText="2.5 Implementation and Operational Context:">Retained | ||||
| as <xref target="IMPCTXT" />.</t> | ||||
| </list></t> | ||||
| <t hangText="3.0 Traffic Engineering Process Model:">Retained as <xref t | <contact fullname="Daniel O. Awduche"> | |||
| arget="TEPROC" />. | <organization>Movaz Networks</organization> | |||
| <list style="hanging"> | </contact> | |||
| <t hangText="3.1 Components of the Traffic Engineering Process Mod | ||||
| el:">Retained as <xref target="COMPONENT" />.</t> | ||||
| <t hangText="3.2 Measurement:">Merged into <xref target="COMPONENT | ||||
| " />.</t> | ||||
| <t hangText="3.3 Modeling, Analysis, and Simulation:">Merged into | ||||
| <xref target="COMPONENT" />.</t> | ||||
| <t hangText="3.4 Optimization:">Merged into <xref target="COMPONEN | ||||
| T" />.</t> | ||||
| </list></t> | ||||
| <t hangText="4.0 Historical Review and Recent Developments:">Retained as | <contact fullname="Angela Chiu"> | |||
| <xref target="REVIEW" />, but the very | <organization>Celion Networks</organization> | |||
| historic aspects have been deleted. | </contact> | |||
| <list style="hanging"> | ||||
| <t hangText="4.1 Traffic Engineering in Classical Telephone Networ | ||||
| ks:">Deleted.</t> | ||||
| <t hangText="4.2 Evolution of Traffic Engineering in the Internet: | ||||
| ">Deleted.</t> | ||||
| <t hangText="4.3 Overlay Model:">Deleted.</t> | ||||
| <t hangText="4.4 Constraint-Based Routing:">Retained as <xref targ | ||||
| et="CSPF" />, but moved into <xref target="OTHER" />.</t> | ||||
| <t hangText="4.5 Overview of Other IETF Projects Related to Traffi | ||||
| c Engineering:">Retained as <xref target="OTHER" /> | ||||
| with many new subsections. | ||||
| <list style="hanging"> | ||||
| <t hangText="4.5.1 Integrated Services:">Retained as <xref t | ||||
| arget="INTSERV" />.</t> | ||||
| <t hangText="4.5.2 RSVP:">Retained as <xref target="RSVP" /> | ||||
| with some edits.</t> | ||||
| <t hangText="4.5.3 Differentiated Services:">Retained as <xr | ||||
| ef target="DIFFSERV" />.</t> | ||||
| <t hangText="4.5.4 MPLS:">Retained as <xref target="MPLS" /> | ||||
| .</t> | ||||
| <t hangText="4.5.5 IP Performance Metrics:">Retained as <xre | ||||
| f target="IPPM" />.</t> | ||||
| <t hangText="4.5.6 Flow Measurement:">Retained as <xref targ | ||||
| et="RTFM" /> with some reformatting.</t> | ||||
| <t hangText="4.5.7 Endpoint Congestion Management:">Retained | ||||
| as <xref target="ECM" />.</t> | ||||
| </list></t> | ||||
| <t hangText="4.6 Overview of ITU Activities Related to Traffic Eng | ||||
| ineering:">Deleted.</t> | ||||
| <t hangText="4.7 Content Distribution:">Retained as <xref target=" | ||||
| CDN" />.</t> | ||||
| </list></t> | ||||
| <t hangText="5.0 Taxonomy of Traffic Engineering Systems:">Retained as < | <contact fullname="Anwar Elwalid"> | |||
| xref target="TAXI" />. | <organization>Lucent Technologies</organization> | |||
| <list style="hanging"> | </contact> | |||
| <t hangText="5.1 Time-Dependent Versus State-Dependent:">Retained | ||||
| as <xref target="TIME" />.</t> | ||||
| <t hangText="5.2 Offline Versus Online:">Retained as <xref target= | ||||
| "OFFON" />.</t> | ||||
| <t hangText="5.3 Centralized Versus Distributed:">Retained as <xre | ||||
| f target="CENTRAL" /> with additions.</t> | ||||
| <t hangText="5.4 Local Versus Global:">Retained as <xref target="L | ||||
| OCAL" />.</t> | ||||
| <t hangText="5.5 Prescriptive Versus Descriptive:">Retained as <xr | ||||
| ef target="SCRIPT" /> with additions.</t> | ||||
| <t hangText="5.6 Open-Loop Versus Closed-Loop:">Retained as <xref | ||||
| target="LOOP" />.</t> | ||||
| <t hangText="5.7 Tactical vs Strategic:">Retained as <xref target= | ||||
| "TACTIC" />.</t> | ||||
| </list></t> | ||||
| <t hangText="6.0 Recommendations for Internet Traffic Engineering:">Reta | <contact fullname="Indra Widjaja"> | |||
| ined as <xref target="RECO" />. | <organization>Bell Labs, Lucent Technologies</organization> | |||
| <list style="hanging"> | </contact> | |||
| <t hangText="6.1 Generic Non-functional Recommendations:">Retained | ||||
| as <xref target="HIGHOBJ" />.</t> | ||||
| <t hangText="6.2 Routing Recommendations:">Retained as <xref targe | ||||
| t="ROUTEREC" /> with edits.</t> | ||||
| <t hangText="6.3 Traffic Mapping Recommendations:">Retained as <xr | ||||
| ef target="MAPREC" />.</t> | ||||
| <t hangText="6.4 Measurement Recommendations:">Retained as <xref t | ||||
| arget="MSRREC" />.</t> | ||||
| <t hangText="6.5 Network Survivability:">Retained as <xref target= | ||||
| "SURVIVE" />. | ||||
| <list style="hanging"> | ||||
| <t hangText="6.5.1 Survivability in MPLS Based Networks:">Re | ||||
| tained as <xref target="SRVMPLS" />.</t> | ||||
| <t hangText="6.5.2 Protection Option:">Retained as <xref tar | ||||
| get="PROTECT" />.</t> | ||||
| </list></t> | ||||
| <t hangText="6.6 Traffic Engineering in Diffserv Environments:">Re | ||||
| tained as <xref target="TEDIFFSRV" /> with edits.</t> | ||||
| <t hangText="6.7 Network Controllability:">Retained as <xref targe | ||||
| t="CONTROL" />.</t> | ||||
| </list></t> | ||||
| <t hangText="7.0 Inter-Domain Considerations:">Retained as <xref target= | <contact fullname="XiPeng Xiao"> | |||
| "INTER" />.</t> | <organization>Redback Networks</organization> | |||
| <t hangText="8.0 Overview of Contemporary TE Practices in Operational IP | </contact> | |||
| Networks:">Retained as <xref target="PRACTICE" />.</t> | ||||
| <t hangText="9.0 Conclusion:">Removed.</t> | ||||
| <t hangText="10.0 Security Considerations:">Retained as <xref target="SE | ||||
| CURE" /> with considerable new text.</t> | ||||
| </list></t> | ||||
| </section> | <t>The acknowledgements in <xref target="RFC3272" format="default"/> | |||
| were as below. All people who helped in the production of that document | ||||
| also need to be thanked for the carry-over into this new document.</t> | ||||
| <section anchor="NEW" title="This Document"> | <blockquote><t>The authors would like to thank <contact fullname="Jim | |||
| Boyle"/> for inputs on the recommendations section, <contact | ||||
| fullname="Francois Le Faucheur"/> for inputs on Diffserv aspects, | ||||
| <contact fullname="Blaine Christian"/> for inputs on measurement, | ||||
| <contact fullname="Gerald Ash"/> for inputs on routing in telephone | ||||
| networks and for text on event-dependent TE methods, <contact | ||||
| fullname="Steven Wright"/> for inputs on network controllability, and | ||||
| <contact fullname="Jonathan Aufderheide"/> for inputs on inter-domain TE | ||||
| with BGP. Special thanks to <contact fullname="Randy Bush"/> for | ||||
| proposing the TE taxonomy based on "tactical vs strategic" methods. The | ||||
| subsection describing an "Overview of ITU Activities Related to Traffic | ||||
| Engineering" was adapted from a contribution by <contact | ||||
| fullname="Waisum Lai"/>. Useful feedback and pointers to relevant | ||||
| materials were provided by <contact fullname="J. Noel Chiappa"/>. | ||||
| Additional comments were provided by <contact fullname="Glenn | ||||
| Grotefeld"/> during the working last call process. Finally, the authors | ||||
| would like to thank <contact fullname="Ed Kern"/>, the TEWG co-chair, | ||||
| for his comments and support.</t></blockquote> | ||||
| <t><list style="symbols"> | <t>The early draft versions of this document were produced by the TEAS Wor | |||
| <t><xref target="INTRO" />: Based on Section 1 of RFC 3272. | king | |||
| <list style="symbols"> | Group's RFC3272bis Design Team. The full list of members of this team | |||
| <t><xref target="WHATTE" />: Based on Section 1.1 of RFC 3272.</t> | is:</t> | |||
| <t><xref target="COMPONENTS" />: New for this document.</t> | <ul empty="true" spacing="compact" bare="false" indent="3"> | |||
| <t><xref target="SCOPE" />: Based on Section 1.2 of RFC 3272.</t> | <li><t><contact fullname="Acee Lindem"/></t></li> | |||
| <t><xref target="TERMS" />: Based on Section 1.3 of RFC 3272.</t> | <li><t><contact fullname="Adrian Farrel"/></t></li> | |||
| </list></t> | <li><t><contact fullname="Aijun Wang"/></t></li> | |||
| <li><t><contact fullname="Daniele Ceccarelli"/></t></li> | ||||
| <li><t><contact fullname="Dieter Beller"/></t></li> | ||||
| <li><t><contact fullname="Jeff Tantsura"/></t></li> | ||||
| <li><t><contact fullname="Julien Meuric"/></t></li> | ||||
| <li><t><contact fullname="Liu Hua"/></t></li> | ||||
| <li><t><contact fullname="Loa Andersson"/></t></li> | ||||
| <li><t><contact fullname="Luis Miguel Contreras"/></t></li> | ||||
| <li><t><contact fullname="Martin Horneffer"/></t></li> | ||||
| <li><t><contact fullname="Tarek Saad"/></t></li> | ||||
| <li><t><contact fullname="Xufeng Liu"/></t></li> | ||||
| </ul> | ||||
| <t>The production of this document includes a fix to the original text | ||||
| resulting from an errata report #309 <xref target="Err309"/> by <contact f | ||||
| ullname="Jean-Michel | ||||
| Grimaldi"/>.</t> | ||||
| <t>The editor of this document would also like to thank <contact | ||||
| fullname="Dhruv Dhody"/>, <contact fullname="Gyan Mishra"/>, <contact | ||||
| fullname="Joel Halpern"/>, <contact fullname="Dave Taht"/>, <contact | ||||
| fullname="John Scudder"/>, <contact fullname="Rich Salz"/>, <contact | ||||
| fullname="Behcet Sarikaya"/>, <contact fullname="Bob Briscoe"/>, | ||||
| <contact fullname="Erik Kline"/>, <contact fullname="Jim Guichard"/>, | ||||
| <contact fullname="Martin Duke"/>, and <contact fullname="Roman | ||||
| Danyliw"/> for review comments.</t> | ||||
| <t>This work is partially supported by the European Commission under | ||||
| Horizon 2020 grant agreement number 101015857 Secured autonomic traffic | ||||
| management for a Tera of SDN flows (Teraflow).</t> | ||||
| </section> | ||||
| <t><xref target="BG" />: Based on Section 2. of RFC 3272. | <section anchor="CONTRIB" numbered="false" toc="default"> | |||
| <list style="symbols"> | <name>Contributors</name> | |||
| <t><xref target="CONTEXT" />: Based on Section 2.1 of RFC 3272.</t | <t>The following people contributed substantive text to this | |||
| > | document:</t> | |||
| <t><xref target="NWCTXT" />: Based on Section 2.2 of RFC 3272.</t> | ||||
| <t><xref target="PRBCTXT" />: Based on Section 2.3 of RFC 3272. | ||||
| <list style="symbols"> | ||||
| <t><xref target="CONGEST" />: Based on Section 2.3.1 of RFC 327 | ||||
| 2.</t> | ||||
| </list></t> | ||||
| <t><xref target="SLNCTXT" />: Based on Section 2.4 of RFC 3272. | ||||
| <list style="symbols"> | ||||
| <t><xref target="COMBAT" />: Based on Section 2.4.1 of RFC 327< | ||||
| /t> | ||||
| </list></t> | ||||
| <t><xref target="IMPCTXT" />: Based on Section 2.5 of RFC 3272.</t | ||||
| > | ||||
| </list></t> | ||||
| <t><xref target="TEPROC" />: Based on Section 3 of RFC 3272. | <contact fullname="Gert Grammel"> | |||
| <list style="symbols"> | <address> | |||
| <t><xref target="COMPONENT" />: Based on Sections 3.1, 3.2, 3.3, a | <email>ggrammel@juniper.net</email> | |||
| nd 3.4 of RFC 3272.</t> | </address> | |||
| </list></t> | </contact> | |||
| <t><xref target="TAXI" />: Based on Section 5 of RFC 3272. | <contact fullname="Loa Andersson"> | |||
| <list style="symbols"> | <address> | |||
| <t><xref target="TIME" />: Based on Section 5.1 of RFC 3272.</t> | <email>loa@pi.nu</email> | |||
| <t><xref target="OFFON" />: Based on Section 5.2 of RFC 3272.</t> | </address> | |||
| <t><xref target="CENTRAL" />: Based on Section 5.3 of RFC 3272. | </contact> | |||
| <list style="symbols"> | ||||
| <t><xref target="HYBRID" />: New for this document.</t> | ||||
| <t><xref target="SDN" />: New for this document.</t> | ||||
| </list></t> | ||||
| <t><xref target="LOCAL" />: Based on Section 5.4 of RFC 3272.</t> | ||||
| <t><xref target="SCRIPT" />: Based on Section 5.5 of RFC 3272. | ||||
| <list style="symbols"> | ||||
| <t><xref target="INTENT" />: New for this document.</t> | ||||
| </list></t> | ||||
| <t><xref target="LOOP" />: Based on Section 5.6 of RFC 3272.</t> | ||||
| <t><xref target="TACTIC" />: Based on Section 5.7 of RFC 3272.</t> | ||||
| </list></t> | ||||
| <t><xref target="REVIEW" />: Based on Section 4 of RFC 3272. | <contact fullname="Xufeng Liu"> | |||
| <list style="symbols"> | <address> | |||
| <t><xref target="OTHER" />: Based on Section 4.5 of RFC 3272. | <email>xufeng.liu.ietf@gmail.com</email> | |||
| <list style="symbols"> | </address> | |||
| <t><xref target="INTSERV" />: Based on Section 4.5.1 of RFC 327 | </contact> | |||
| 2.</t> | ||||
| <t><xref target="DIFFSERV" />: Based on Section 4.5.3 of RFC 32 | ||||
| 72.</t> | ||||
| <t><xref target="SRPolicy" />: New for this document.</t> | ||||
| <t><xref target="QUIC" />: New for this document.</t> | ||||
| <t><xref target="DETNET" />: New for this document.</t> | ||||
| <t><xref target="ALTO" />: New for this document.</t> | ||||
| <t><xref target="ACTN" />: New for this document.</t> | ||||
| <t><xref target="SLICE" />: New for this document.</t> | ||||
| <t><xref target="CSPF" />: Based on Section 4.4 of RFC 3272. | ||||
| <list style="symbols"> | ||||
| <t><xref target="FLEX" />: New for this document.</t> | ||||
| </list></t> | ||||
| <t><xref target="RSVP" />: Based on Section 4.5.2 of RFC 3272.< | ||||
| /t> | ||||
| <t><xref target="MPLS" />: Based on Section 4.5.4 of RFC 3272.< | ||||
| /t> | ||||
| <t><xref target="RSVP-TE" />: New for this document.</t> | ||||
| <t><xref target="GMPLS" />: New for this document.</t> | ||||
| <t><xref target="IPPM" />: Based on Section 4.5.5 of RFC 3272.< | ||||
| /t> | ||||
| <t><xref target="RTFM" />: Based on Section 4.5.6 of RFC 3272.< | ||||
| /t> | ||||
| <t><xref target="ECM" />: Based on Section 4.5.7 of RFC 3272.</ | ||||
| t> | ||||
| <t><xref target="IGPTE" />: New for this document.</t> | ||||
| <t><xref target="BGPLS" />: New for this document.</t> | ||||
| <t><xref target="PCE" />: New for this document.</t> | ||||
| <t><xref target="SR" />: New for this document.</t> | ||||
| <t><xref target="BIER-TE" />: New for this document.</t> | ||||
| <t><xref target="STATE" />: New for this document.</t> | ||||
| <t><xref target="SYSMAN" />: New for this document.</t> | ||||
| </list></t> | ||||
| <t><xref target="CDN" />: Based on Section 4.7 of RFC 3272.</t> | ||||
| </list></t> | ||||
| <t><xref target="RECO" />: Based on Section 6 of RFC 3272. | <contact fullname="Lou Berger"> | |||
| <list style="symbols"> | <address> | |||
| <t><xref target="HIGHOBJ" />: Based on Section 6.1 of RFC 3272.</t | <email>lberger@labn.net</email> | |||
| > | </address> | |||
| <t><xref target="ROUTEREC" />: Based on Section 6.2 of RFC 3272.</ | </contact> | |||
| t> | ||||
| <t><xref target="MAPREC" />: Based on Section 6.3 of RFC 3272.</t> | ||||
| <t><xref target="MSRREC" />: Based on Section 6.4 of RFC 3272.</t> | ||||
| <t><xref target="POLICE" />: New for this document.</t> | ||||
| <t><xref target="SURVIVE" />: Based on Section 6.5 of RFC 3272. | ||||
| <list style="symbols"> | ||||
| <t><xref target="SRVMPLS" />: Based on Section 6.5.1 of RFC 327 | ||||
| 2.</t> | ||||
| <t><xref target="PROTECT" />: Based on Section 6.5.2 of RFC 327 | ||||
| 2.</t> | ||||
| </list></t> | ||||
| <t><xref target="ML" />: New for this document.</t> | ||||
| <t><xref target="TEDIFFSRV" />: Based on Section 6.6. of RFC 3272. | ||||
| </t> | ||||
| <t><xref target="CONTROL" />: Based on Section 6.7 of RFC 3272.</t | ||||
| > | ||||
| </list></t> | ||||
| <t><xref target="INTER" />: Based on Section 7 of RFC 3272.</t> | <contact fullname="Jeff Tantsura"> | |||
| <address> | ||||
| <email>jefftant.ietf@gmail.com</email> | ||||
| </address> | ||||
| </contact> | ||||
| <t><xref target="PRACTICE" />: Based on Section 8 of RFC 3272.</t> | <contact fullname="Daniel King"> | |||
| <address> | ||||
| <email>daniel@olddog.co.uk</email> | ||||
| </address> | ||||
| </contact> | ||||
| <t><xref target="SECURE" />: Based on Section 10 of RFC 3272.</t> | <contact fullname="Boris Hassanov"> | |||
| <address> | ||||
| <email>bhassanov@yandex-team.ru</email> | ||||
| </address> | ||||
| </contact> | ||||
| </list></t> | <contact fullname="Kiran Makhijani"> | |||
| <address> | ||||
| <email>kiranm@futurewei.com</email> | ||||
| </address> | ||||
| </contact> | ||||
| </section> | <contact fullname="Dhruv Dhody"> | |||
| <address> | ||||
| <email>dhruv.ietf@gmail.com</email> | ||||
| </address> | ||||
| </contact> | ||||
| </section> | <contact fullname="Mohamed Boucadair"> | |||
| <address> | ||||
| <email>mohamed.boucadair@orange.com</email> | ||||
| </address> | ||||
| </contact> | ||||
| </back> | </section> | |||
| </back> | ||||
| </rfc> | </rfc> | |||
| End of changes. 145 change blocks. | ||||
| 4872 lines changed or deleted | 4414 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. | ||||