RFC 9522: Overview and Principles of Internet Traffic Engineering
- A. Farrel, Ed.
Abstract
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
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.¶
Status of This Memo
This document is not an Internet Standards Track specification; it is published for informational purposes.¶
This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Not all documents approved by the IESG are candidates for any level of Internet Standard; see Section 2 of RFC 7841.¶
Information about the current status of this document, any
errata, and how to provide feedback on it may be obtained at
https://
Copyright Notice
Copyright (c) 2024 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(https://
1. Introduction
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
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.¶
This document provides terminology and a taxonomy for describing and understanding common Internet TE concepts.¶
This work was first published as [RFC3272] in May 2002. This document obsoletes [RFC3272] by making a complete update to bring the text in line with best current practices for Internet TE and to include references to the latest relevant work in the IETF. It is worth noting around three-fifths of the RFCs referenced in this document postdate the publication of [RFC3272]. Appendix A provides a summary of changes between [RFC3272] and this document.¶
1.1. What is Internet Traffic Engineering?
One of the most significant functions performed in the Internet is the routing and forwarding of traffic from ingress nodes to egress nodes. Therefore, one of the most distinctive functions performed by Internet traffic engineering is the control and optimization of these routing and forwarding functions, to steer traffic through the network.¶
Internet traffic engineering is defined as that aspect of Internet
network engineering dealing with the issues of performance evaluation
and performance optimization of operational IP networks. Traffic
engineering encompasses the application of technology and scientific
principles to the measurement, characterizatio
It is the performance of the network as seen by end users of
network services that is paramount. The characteristics visible to
end users are the emergent properties of the network, which are the
characteristics of the network when viewed as a whole. A central goal
of the service provider, therefore, is to enhance the emergent
properties of the network while taking economic considerations into
account. This is accomplished by addressing traffic
Internet TE responds to network events (such as link or node failures, reported or predicted network congestion, planned maintenance, service degradation, planned changes in the traffic matrix, etc.). Aspects of capacity management respond at intervals ranging from days to years. Routing control functions operate at intervals ranging from milliseconds to days. Packet-level processing functions operate at very fine levels of temporal resolution (up to milliseconds) while reacting to statistical measures of the real-time behavior of traffic.¶
Thus, the optimization aspects of TE can be viewed from a control perspective and can be both proactive and reactive. In the proactive case, the TE control system takes preventive action to protect against predicted unfavorable future network states, for example, by engineering backup paths. It may also take action that will lead to a more desirable future network state. In the reactive case, the control system responds to correct issues and adapt to network events, such as routing after failure.¶
Another important objective of Internet TE is to facilitate reliable network operations [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.¶
The optimization aspects of TE can be achieved through capacity management and traffic management. In this document, capacity management includes capacity planning, routing control, and resource management. Network resources of particular interest include link bandwidth, buffer space, and computational resources. In this document, traffic management includes:¶
One major challenge of Internet TE is the realization of automated
control capabilities that adapt quickly and cost
Performance evaluation can be achieved in many different ways. The most notable techniques include analytic methods, simulation, and empirical methods based on measurements.¶
Traffic engineering comes in two flavors:¶
In the latter case, any deviation from the optimum distribution (e.g., caused by a fiber cut) is reverted upon repair without further optimization. However, this form of TE relies upon the notion that the planned state of the network is optimal. Hence, there are two levels of TE in such a mode:¶
As a general rule, TE concepts and mechanisms must be sufficiently specific and well-defined to address known requirements but simultaneously flexible and extensible to accommodate unforeseen future demands (see Section 6.1).¶
1.2. Components of Traffic Engineering
As mentioned in Section 1.1, Internet
traffic engineering provides performance optimization of IP networks
while utilizing network resources economically and reliably. Such
optimization is supported at the control
The key elements required in any TE solution are as follows:¶
Some TE solutions rely on these elements to a lesser or greater extent. Debate remains about whether a solution can truly be called "TE" if it does not include all of these elements. For the sake of this document, we assert that all TE solutions must include some aspects of all of these elements. Other solutions can be classed as "partial TE" and also fall in scope of this document.¶
Policy allows for the selection of paths (including next hops) based on information beyond basic reachability. Early definitions of routing policy, e.g., [RFC1102] and [RFC1104], discuss routing policy being applied to restrict access to network resources at an aggregate level. BGP is an example of a commonly used mechanism for applying such policies; see [RFC4271] and [RFC8955]. In the TE context, policy decisions are made within the control plane or by controllers in the management plane and govern the selection of paths. Examples can be found in [RFC4655] and [RFC5394]. TE solutions may cover the mechanisms to distribute and/or enforce policies, but definition of specific policies is left to the network operator.¶
Path steering is the ability to forward packets using more information than just knowledge of the next hop. Examples of path steering include IPv4 source routes [RFC0791], RSVP-TE explicit routes [RFC3209], Segment Routing (SR) [RFC8402], and Service Function Chaining [RFC7665]. Path steering for TE can be supported via control plane protocols, by encoding in the data plane headers, or by a combination of the two. This includes when control is provided by a controller using a network-facing control protocol.¶
Resource management provides resource-aware control and forwarding. Examples of resources are bandwidth, buffers, and queues, all of which can be managed to control loss and latency.¶
Resource reservation is the control aspect of resource management.
It provides for domain-wide consensus about which network resources
are used by a particular flow. This determination may be made at a
very coarse or very fine level. Note that this consensus exists at
the network control or controller level but not within the data plane.
It may be composed purely of accounting
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. Resource allocation also includes the matching of a flow (i.e.,
flow classification) to a particular set of allocated resources.
The method of flow classification and granularity of resource
management is technology
1.3. Scope
The scope of this document is intra-domain TE because this is the practical level of TE technology that exists in the Internet at the time of writing. That is, this document describes TE within a given AS 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 control coordination problems that arise consequently.¶
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 are identified.¶
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 Section 7. Inter-domain Internet TE is crucial to the performance enhancement of the world-wide Internet infrastructure.¶
Whenever possible, relevant requirements from existing IETF documents and other sources are incorporated by reference.¶
1.4. Terminology
This section provides terminology that is useful for Internet TE. The definitions presented apply to this document. These terms may have other meanings elsewhere.¶
- Busy hour:
- A one-hour period within a specified interval of time (typically 24 hours) in which the traffic load in a network or sub-network is greatest.¶
- Congestion:
- A state of a network resource in which the traffic incident on the resource exceeds its output capacity over an interval of time. A small amount of congestion may be beneficial to ensure that network resources are run at full capacity, and this may be particularly true at the network edge where it is desirable to ensure that user traffic is served as much as possible. Within the network, if congestion is allowed to build (such as when input traffic exceeds output traffic in a sustained way), it will have a negative effect on user traffic.¶
- Congestion avoidance:
- An approach to congestion management that attempts to obviate the occurrence of congestion. It is chiefly relevant to network congestion, although it may form a part of demand-side congestion management.¶
- Congestion response:
- An approach to congestion management that attempts to remedy congestion problems that have already occurred.¶
- Constraint-based routing:
- A class of routing protocols that takes specified traffic
attributes, network constraints, and policy constraints into account
when making routing decisions. Constraint
-based routing is applicable to traffic aggregates as well as flows. It is a generalization of QoS-based routing.¶ - Demand-side congestion management:
- A congestion management scheme that addresses congestion problems by regulating or conditioning the offered load.¶
- Effective bandwidth:
- The minimum amount of bandwidth that can be assigned to a flow or traffic aggregate in order to deliver "acceptable service quality" to the flow or traffic aggregate. See [KELLY] for a more mathematical definition.¶
- Egress node:
- The device (router) at which traffic leaves a network toward a destination (host, server, etc.) or to another network.¶
- End-to-end:
- 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.¶ - Hotspot:
- A network element or subsystem that is in a considerably higher state of congestion than others.¶
- Ingress node:
- The device (router) at which traffic enters a network from a source (host) or from another network.¶
- Metric:
- A parameter defined in terms of standard units of measurement.¶
- Measurement methodology:
- A repeatable measurement technique used to derive one or more metrics of interest.¶
- Network congestion:
- Congestion within the network at a specific node or a specific link that is sufficiently extreme that it results in unacceptable queuing delay or packet loss. Network congestion can negatively impact end-to-end or edge-to-edge traffic flows, so TE schemes may be deployed to balance traffic in the network and deliver congestion avoidance.¶
- Network survivability:
- The capability to provide a prescribed level of QoS for existing services after a given number of failures occur within the network.¶
- Offered load:
- Offered load is also sometimes called "offered traffic load". It is a measure of the amount of traffic being presented to be carried across a network compared to the capacity of the network to carry it. This term derives from queuing theory, and an offered load of 1 indicates that the network can carry, but only just manage to carry, all of the traffic presented to it.¶
- Offline traffic engineering:
- A traffic engineering system that exists outside of the network.¶
- Online traffic engineering:
-
A traffic
-engineering system that exists within the network, typically implemented on or as adjuncts to operational network elements.¶ - Performance measures:
- Metrics that provide quantitative or qualitative measures of the performance of systems or subsystems of interest.¶
- Performance metric:
- A performance parameter defined in terms of standard units of measurement.¶
- Provisioning:
- The process of assigning or configuring network resources to meet certain requests.¶
- Quality of Service (QoS):
- QoS [RFC3198] refers to the mechanisms used within a network to achieve specific goals for the delivery of traffic for a particular service according to the 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 Service" refers to a set of capabilities that allow a service provider to prioritize traffic, control bandwidth, and network latency.¶
- QoS routing:
- Class of routing systems that selects paths to be used by a flow based on the QoS requirements of the flow.¶
- Service Level Agreement (SLA):
- A contract between a provider and a customer that guarantees specific levels of performance and reliability at a certain cost.¶
- Service Level Objective (SLO):
-
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
service provider and are outlined as a way of avoiding disputes
between the two parties based on misunderstandin
g .¶ - Stability:
- An operational state in which a network does not oscillate in a disruptive manner from one mode to another mode.¶
- Supply-side congestion management:
- A congestion management scheme that provisions additional network resources to address existing and/or anticipated congestion problems.¶
- Traffic characteristic:
- A description of the temporal behavior or a description of the attributes of a given traffic flow or traffic aggregate.¶
- Traffic
-engineering system: -
A collection of objects, mechanisms, and protocols that are
used together to accomplish traffic
-engineering objectives.¶ - Traffic flow:
- A stream of packets between two endpoints that can be characterized in a certain way. A common classification for a traffic flow selects packets with the five-tuple of source and destination addresses, source and destination ports, and protocol ID. Flows may be very small and transient, ranging to very large. The TE techniques described in this document are likely to be more effective when applied to large flows. Traffic 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 that comprise the aggregate.¶
- Traffic mapping:
-
Traffic mapping is the assignment of traffic workload onto
(pre -established ) paths to meet certain requirements.¶ - Traffic matrix:
- A representation of the traffic demand between a set of origin and destination abstract nodes. An abstract node can consist of one or more network elements.¶
- Traffic monitoring:
- The process of observing traffic characteristics at a given point in a network and collecting the traffic information for analysis and further action.¶
- Traffic trunk:
- An aggregation of traffic flows belonging to the same class that are forwarded through a common path. A traffic trunk may be characterized by an ingress and egress node and a set of attributes that determine its behavioral characteristics and requirements from the network.¶
- Workload:
- Workload is also sometimes called "traffic workload". It is an evaluation of the amount of work that must be done in a network in order to facilitate the traffic demand. Colloquially, it is the answer to, "How busy is the network?"¶
2. Background
The Internet aims to convey IP packets from ingress nodes to egress nodes
efficiently, expeditiously, and economically. Furthermore, in a
multi-class service environment (e.g., Diffserv capable networks; see
Section 5.1.1.2), the resource
2.1. Context of Internet Traffic Engineering
The context of Internet traffic engineering includes the following sub-contexts:¶
The context of Internet TE and the different problem scenarios are discussed in the following subsections.¶
2.2. Network Domain Context
IP networks range in size from small clusters of routers situated within a given location to thousands of interconnected routers, switches, and other components distributed all over the world.¶
At the most basic level of abstraction, an IP network can be represented as a distributed dynamic system consisting of:¶
The network elements and resources may have specific characteristics restricting the manner in which the traffic demand is handled. Additionally, network resources may be equipped with traffic control mechanisms managing the way in which the demand is serviced. Traffic control mechanisms may be used to:¶
A configuration management and provisioning system may allow the settings of the traffic control mechanisms to be manipulated by external or internal entities in order to exercise control over the way in which the network elements respond to internal and external stimuli.¶
The details of how the network carries packets are specified in the policies of the network administrators and are installed through network configuration management and policy-based provisioning systems. Generally, the types of service provided by the network also depend upon the technology and characteristics of the network elements and protocols, the prevailing service and utility models, and the ability of the network administrators to translate policies into network configurations.¶
Internet networks have two significant characteristics
The dynamic characteristics of IP and IP/MPLS networks can be attributed in part to fluctuations in demand, the interaction between various network protocols and processes, the rapid evolution of the infrastructure that demands the constant inclusion of new technologies and new network elements, and the transient and persistent faults that occur within the system.¶
Packets contend for the use of network resources as they are conveyed through the network. A network resource is considered to be congested if, for an interval of time, the arrival rate of packets exceeds the output capacity of the resource. Network congestion may result in some of the arriving packets being delayed or even dropped.¶
Network congestion increases transit delay and delay variation, may lead to packet loss, and reduces the predictability of network services. Clearly, while congestion may be a useful tool at ingress edge nodes, network congestion is highly undesirable. Combating network congestion at a reasonable cost is a major objective of Internet TE, although it may need to be traded with other objectives to keep the costs reasonable.¶
Efficient sharing of network resources by multiple traffic flows is a basic operational premise for the Internet. A fundamental challenge in network operation is to increase resource utilization while minimizing the possibility of congestion.¶
The Internet has to function in the presence of different classes of traffic with different service requirements. This requirement is clarified in the architecture for Differentiated Services (Diffserv) [RFC2475]. That document describes how packets can be grouped into behavior aggregates such that each aggregate has a common set of behavioral characteristics or a common set of delivery requirements. Delivery requirements of a specific set of packets may be specified explicitly or implicitly. Two of the most important traffic delivery requirements are:¶
2.3. Problem Context
There are several problems associated with operating a network like those described in the previous section. This section analyzes the problem context in relation to TE. The identification, abstraction, representation, and measurement of network features relevant to TE are significant issues.¶
A particular challenge is to formulate the problems that traffic engineering attempts to solve. For example:¶
Another class of problems is how to measure and estimate relevant network state parameters. Effective TE relies on a good estimate of the offered traffic load as well as a view of the underlying topology and associated resource constraints. Offline planning requires a full view of the topology of the network or partial network that is being planned.¶
Still another class of problem is how to characterize the state of the network and how to evaluate its performance. The performance evaluation problem is two-fold: one aspect relates to the evaluation of the system-level performance of the network, and the other aspect relates to the evaluation of resource-level performance, which restricts attention to the performance analysis of individual network resources.¶
In this document, we refer to the system-level characteristics of
the network as the "macro-states" and the resource-level
characteristics as the "micro-states." The system-level
characteristics are also known as the emergent properties of the
network. Correspondingly
Another fundamental class of problem concerns how to effectively optimize network performance. Performance optimization may entail translating solutions for specific TE problems into network configurations. Optimization may also entail some degree of resource management control, routing control, and capacity augmentation.¶
2.3.1. Congestion and Its Ramifications
Network congestion is one of the most significant problems in an operational IP context. A network element is said to be congested if it experiences sustained overload over an interval of time. Although congestion at the edge of the network may be beneficial in ensuring that the network delivers as much traffic as possible, network congestion almost always results in degradation of service quality to end users. Congestion avoidance and response schemes can include demand-side policies and supply-side policies. Demand-side policies may restrict access to congested resources or dynamically regulate the demand to alleviate the overload situation. Supply-side policies may expand or augment network capacity to better accommodate offered traffic. Supply-side policies may also reallocate network resources by redistributing traffic over the infrastructure. Traffic redistribution and resource reallocation serve to increase the effective capacity of the network.¶
The emphasis of this document is primarily on congestion management schemes falling within the scope of the network, rather than on congestion management systems dependent upon sensitivity and adaptivity from end systems. That is, the aspects that are considered in this document with respect to congestion management are those solutions that can be provided by control entities operating on the network and by the actions of network administrators and network operations systems.¶
2.4. Solution Context
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, characterizatio
The following list of instruments may be applicable to the solution context of Internet TE:¶
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
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:¶
Topology information may also be derived from servers that monitor network state and from servers that perform provisioning functions.¶
Routing in operational IP networks can be administrativel
2.4.1. Combating the Congestion Problem
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.¶
Congestion management policies can be categorized based upon the following criteria (see [YARE95] for a more detailed taxonomy of congestion control schemes):¶
2.5. Implementation and Operational Context
The operational context of Internet TE is characterized by constant changes that occur at multiple levels of abstraction. The implementation context demands effective planning, organization, and execution. The planning aspects may involve determining prior sets of actions to achieve desired objectives. Organizing involves arranging and assigning responsibility to the various components of the TE system and coordinating the activities to accomplish the desired TE objectives. Execution involves measuring and applying corrective or perfective actions to attain and maintain desired TE goals.¶
3. Traffic-Engineering Process Models
This section describes a generic process model that captures the high-level practical aspects of Internet traffic engineering in an operational context. The process model is described as a sequence of actions that must be carried out to optimize the performance of an operational network (see also [RFC2702] and [AWD2]). This process model may be enacted explicitly or implicitly, by a software process or by a human.¶
The TE process model is iterative [AWD2]. The four phases of the process model described below are repeated as a continual sequence:¶
3.1. Components of the Traffic-Engineering Process Model
The key components of the traffic
4. Taxonomy of Traffic-Engineering Systems
This section presents a short taxonomy of traffic
4.1. Time-Dependent versus State-Dependent versus Event-Dependent
Traffic
In time-dependent TE, historical information based on periodic variations in traffic (such as time of day) is used to pre-program routing and other TE control mechanisms. Additionally, customer subscription or traffic projection may be used. Pre-programmed routing plans typically change on a relatively long timescale (e.g., daily). Time-dependent algorithms do not attempt to adapt to short-term variations in traffic or changing network conditions. An example of a time-dependent algorithm is a centralized optimizer where the input to the system is a traffic matrix and multi-class QoS requirements as described in [MR99]. Another example of such a methodology is the application of data mining to Internet traffic [AJ19], which enables the use of various machine learning algorithms to identify patterns within historically collected datasets about Internet traffic and to extract information in order to guide decision-making and improve efficiency and productivity of operational processes.¶
State-dependent TE adapts the routing plans based on the current
state of the network, which provides additional information on
variations in actual traffic (i.e., perturbations from regular
variations) that could not be predicted using historical information.
Constraint
Event-dependent TE methods can also be used for TE path selection.
Event-dependent TE methods are distinct from time-dependent and
state-dependent TE methods in the manner in which paths are selected.
These algorithms are adaptive and distributed in nature, and they
typically use learning models to find good paths for TE in a network.
While state-dependent TE models typically use available
A fully functional TE system is likely to use all aspects of
time-dependent, state
4.2. Offline versus Online
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
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.¶
4.3. Centralized versus Distributed
Under centralized control, there is a central authority that determines routing plans and perhaps other TE control parameters on behalf of each router. The central authority periodically collects network-state information from all routers and sends routing information to the routers. The update cycle for information exchange in both directions is a critical parameter directly impacting the performance of the network being controlled. Centralized control may need high processing power and high bandwidth control channels.¶
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 [RFC5305], [RFC6119], [RFC7471], [RFC8570], and [RFC8571]. See also Section 5.1.3.9.¶
4.3.1. Hybrid Systems
In practice, most TE systems will be a hybrid of central and distributed control. For example, a popular MPLS approach to TE is to use a central 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 in conflicts with decisions made by other routers.¶
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 network depending on variations in network state and traffic load. Furthermore, responses to network events may be precomputed offline to allow rapid reactions without further computation or may be derived online depending on the nature of the events.¶
4.3.2. Considerations for Software-Defined Networking
As discussed in Section 5.1.2.2, one of
the main drivers for Software
The centralized control aspect of SDN helps improve network resource utilization compared with distributed network control, where local policy may often override network-wide optimization goals. In an SDN environment, the data plane forwards traffic to its desired destination. However, before traffic reaches the data plane, the logically centralized SDN control plane 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 resource state.¶
Using a PCE-based SDN control framework [RFC7491], the available network topology may be discovered by running a passive instance of OSPF or IS-IS, or via BGP Link State (BGP-LS) [RFC9552]), to generate a Traffic Engineering Database (TED) (see Section 5.1.3.14). The PCE is used to compute a path (see Section 5.1.3.11) based on the TED and available bandwidth, and further path optimization may be based on requested objective functions [RFC5541]. When a suitable path has been computed, the programming of the explicit network path may be either performed using a signaling protocol that traverses the length of the path [RFC3209] or performed per-hop with each node being directly programmed [RFC8283] by the SDN controller.¶
By utilizing a centralized approach to network control,
additional network benefits are also available, including Global
Concurrent Optimization (GCO) [RFC5557]. 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
4.4. Local versus Global
Traffic
Local information is the state of a portion of the domain. Examples include the bandwidth and packet loss rate of a particular path or the state and capabilities of a network link. Local state information may be sufficient for certain instances of distributed control TE.¶
Global information is the state of the entire TE domain. Examples include 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.¶
4.5. Prescriptive versus Descriptive
TE systems may also be classified as prescriptive or descriptive.¶
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.¶
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.¶
4.5.1. Intent-Based Networking
One way to express a service request is through "intent". Intent-Based Networking aims to produce networks that are simpler to manage and operate, requiring only minimal intervention. Intent is defined in [RFC9315] as follows:¶
A set of operational goals (that a network should meet) and outcomes (that a network is supposed to deliver) defined in a declarative manner without specifying how to achieve or implement them.¶
Intent provides data and functional abstraction so that users and operators do not need to be concerned with low-level device configuration or the mechanisms 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.¶
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.¶
4.6. Open-Loop versus Closed-Loop
Open-loop traffic
Closed-loop traffic
4.7. Tactical versus Strategic
Tactical traffic engineering aims to address specific performance problems (such as hotspots) 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.¶
Strategic traffic
5. Review of TE Techniques
This section briefly reviews different TE-related approaches proposed
and implemented in telecommunicati
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 telecommunicati
5.1. Overview of IETF Projects Related to Traffic Engineering
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.¶
5.1.1. IETF TE Mechanisms
5.1.1.1. Integrated Services
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.¶
The main issue with the Intserv model has been scalability
[RFC2998], especially in large
public IP networks that may potentially have millions of active
traffic flows in transit concurrently. Pre-Congestion
Notification (PCN) [RFC5559]
solves the scaling problems of Intserv by using measurement
A notable feature of the Intserv model is that it requires explicit signaling of QoS requirements from end systems to routers [RFC2753]. RSVP performs this signaling function and is a critical component of the Intserv model. RSVP is described in Section 5.1.3.2.¶
5.1.1.2. Differentiated Services
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 [RFC2475]. 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.¶
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 [RFC2474]. 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.¶
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.¶
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.¶
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.¶
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 [RFC3086].¶
Diffserv procedures can also be applied in an MPLS context. See Section 6.8 for more information.¶
5.1.1.3. SR Policy
SR Policy [RFC9256] is an evolution of SR (see Section 5.1.3.12) 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.¶
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).¶
The headend node is notified of SR Policies and associated SR paths via configuration or by extensions to protocols such as the Path Computation Element Communication Protocol (PCEP) [RFC8664] or BGP [SR-TE-POLICY]. 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.¶
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:¶
- SID Steering:
- Incoming packets have an active Segment Identifier (SID) matching a local BSID at the headend.¶
- Per-destination Steering:
- Incoming packets match a BGP/Service route, which indicates an SR Policy.¶
- Per-flow Steering:
- Incoming packets match a forwarding array (for example, the classic 5-tuple), which indicates an SR Policy.¶
- Policy-based Steering:
- Incoming packets match a routing policy, which directs them to an SR Policy.¶
5.1.1.4. Layer 4 Transport-Based TE
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 defines the Access Traffic Steering, Switching, and Splitting (ATSSS) [ATSSS] service functions as follows:¶
- Access Traffic Steering:
- 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.¶
- Access Traffic Switching:
- 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.¶
- Access Traffic Splitting:
- This is about forwarding the packets of a flow across multiple access networks simultaneously.¶
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:¶
- Active-Standby:
- 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.¶
- Priority-based:
- 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.¶
- Load-Balancing:
- The traffic is distributed among the available access networks following a distribution ratio (e.g., 75% to 25%).¶
- Smallest Delay:
- The traffic is forwarded via the access that presents the smallest round-trip time (RTT).¶
For resource management purposes, hosts and network devices support means such as congestion control, RTT measurement, and packet scheduling.¶
For TCP traffic, Multipath TCP [RFC8684] and the 0-RTT Convert Protocol [RFC8803] are used to provide the ATSSS service.¶
Multipath QUIC [QUIC-MULTIPATH] and Proxying UDP in HTTP [RFC9298] are used to provide the ATSSS service for UDP traffic. Note that QUIC [RFC9000] 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.¶
Extensions to the Datagram Congestion Control Protocol (DCCP) [RFC4340] to support multipath operations are defined in [MULTIPATH-DCCP].¶
5.1.1.5. Deterministic Networking
Deterministic Networking (DetNet) [RFC8655] 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 [RFC8938]. 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.¶
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) [RFC9023] deployed in Industry Control and Automation Systems (ICAS).¶
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
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.¶
Note that DetNet might suffer from some of the scalability concerns described for Intserv in Section 5.1.1.1, but the scope of DetNet's deployment scenarios is smaller and therefore less exposed to scaling issues.¶
5.1.2. IETF Approaches Relying on TE Mechanisms
5.1.2.1. Application-Layer Traffic Optimization
This document describes various TE mechanisms available in the
network. However, in general, distributed applications
(particularly, bandwidth
The basic function of ALTO is based on abstract maps of a
network. These maps provide a simplified view, yet enough
information about a network for applications to effectively
utilize them. Additional services are built on top of the maps.
[RFC7285] describes a protocol
implementing the ALTO services as an information
[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 endpoint cost map. [RFC8896] 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. [RFC9439] 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 Section 5.1.3.10), IGP-TE (see Section 5.1.3.9), 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.¶
5.1.2.2. Network Virtualization and Abstraction
One of the main drivers for SDN [RFC7149] 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 5.1.3.3 and 5.1.3.5, respectively) and the PCE (see Section 5.1.3.11). 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.¶
Abstraction and Control of TE Networks (ACTN) [RFC8453] defines a hierarchical SDN
architecture that describes the functional entities and methods
for the coordination of resources across multiple domains, to
provide composite traffic
The ACTN managed infrastructure is built from
traffic
5.1.2.3. Network Slicing
An IETF Network Slice is a logical network topology connecting a number of endpoints using a set of shared or dedicated network resources [NETWORK-SLICES]. The resources are used to satisfy specific SLOs specified by the consumer.¶
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.¶
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 [ENHANCED-VPN].¶
5.1.3. IETF Techniques Used by TE Mechanisms
5.1.3.1. Constraint-Based Routing
Constraint-based routing refers to a class of routing systems that
compute routes through a network subject to the satisfaction of a set
of constraints and requirements. In the most general case,
constraint
The constraints and requirements may be imposed by the network itself
or by administrative policies. Constraints may include bandwidth,
hop count, delay, and policy instruments such as resource class
attributes. Constraints may also include domain-specific attributes
of certain network technologies and contexts that impose
restrictions on the solution space of the routing function. Path-oriented technologies such as MPLS have made constraint
The concept of constraint
Unlike QoS-based routing (for example, see [RFC2386], [MA], and [PERFORMANCE
5.1.3.1.1. IGP Flexible Algorithms
The normal approach to routing in an IGP network relies on the IGPs deriving "shortest paths" over the network based solely on the IGP metric assigned to the links. Such an approach is often limited: traffic may tend to converge toward the destination, possibly causing congestion, and it is not possible to steer traffic onto paths depending on the end-to-end qualities demanded by the applications.¶
To overcome this limitation, various sorts of TE have been widely deployed (as described in this document), where the TE component is responsible for computing the path based on additional metrics and/or constraints. Such paths (or tunnels) need to be installed in the routers' forwarding tables in addition to, or as a replacement for, the original paths computed by IGPs. The main drawbacks of these TE approaches are the additional complexity of protocols and management and the state that may need to be maintained within the network.¶
IGP Flexible Algorithms [RFC9350] allow IGPs to construct constraint
A given combination of calculation
There are two use cases for Flexible Algorithm: in IP networks [RFC9502] and in SR networks [RFC9350]. In the first case, Flexible Algorithm computes paths to an IPv4 or IPv6 address; in the second case, Flexible Algorithms computes paths to a Prefix SID (see Section 5.1.3.12).¶
Examples of where Flexible Algorithms can be useful include:¶
5.1.3.2. RSVP
RSVP is a soft-state signaling protocol [RFC2205]. It supports receiver
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:¶
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.¶
One of the issues with the original RSVP specification [RFC2205] 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 [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 [RFC3175], to set up MPLS explicit LSPs (see Section 5.1.3.3), and to perform other signaling functions within the Internet. [RFC2961] also describes a mechanism to reduce the amount of Refresh messages required to maintain established RSVP sessions.¶
5.1.3.3. MPLS
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 [RFC3031].¶
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.¶
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.¶
MPLS is a powerful technology for Internet TE because it
supports explicit LSPs that allow constraint
5.1.3.4. RSVP-TE
RSVP-TE is a protocol extension of RSVP (Section 5.1.3.2) for traffic engineering. The base
specification is found in [RFC3209]. RSVP-TE enables the establishment of
traffic
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) [RFC4090], Diffserv [RFC4124], and bidirectional LSPs [RFC7551]. RSVP-TE extensions for support for GMPLS (see Section 5.1.3.5) are specified in [RFC3473].¶
Requirements for point
RSVP-TE has evolved to provide real-time dynamic metrics for path selection for low-latency paths using extensions to IS-IS [RFC8570] and OSPF [RFC7471] based on performance measurements for the Simple Two-Way Active Measurement Protocol (STAMP) [RFC8972] and the Two-Way Active Measurement Protocol (TWAMP) [RFC5357].¶
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.¶
5.1.3.5. Generalized MPLS (GMPLS)
GMPLS extends MPLS control protocols to encompass time-division
(e.g., Synchronous Optical Network / Synchronous Digital Hierarchy
(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
In GMPLS [RFC3945], 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 [RFC3473].¶
5.1.3.6. IP Performance Metrics (IPPM)
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 [RFC2330]. The criteria for performance metrics developed by the IPPM Working Group are described in [RFC2330]. Examples of performance metrics include one-way packet loss [RFC7680], one-way delay [RFC7679], and connectivity measures between two nodes [RFC2678]. Other metrics include second-order measures of packet loss and delay.¶
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.¶
The IPPM Working Group also designs measurement techniques and protocols to obtain these metrics.¶
5.1.3.7. Flow Measurement
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) [RFC2722]. 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 [RFC2722], a flow measurement system can be very useful in the following contexts:¶
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.¶
IP Flow Information Export (IPFIX) [RFC5470] defines an architecture that is very similar to
the RTFM architecture and includes Metering, Exporting, and
Collecting Processes. [RFC5472]
describes the applicability of IPFIX and makes a comparison with
RTFM, pointing out that, architecturally
5.1.3.8. Endpoint Congestion Management
[RFC3124] 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.¶
The concepts described in [RFC3124] and the lessons that can be learned from that work found a home in HTTP/2 [RFC9113] and QUIC [RFC9000], while [RFC9040] describes TCP control block interdependence that is a core construct underpinning the congestion manager defined in [RFC3124].¶
5.1.3.9. TE Extensions to the IGPs
[RFC5305] describes the extensions to the Intermediate System to Intermediate System (IS-IS) protocol to support TE. Similarly, [RFC3630] specifies TE extensions for OSPFv2, and [RFC5329] has the same description for OSPFv3.¶
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 Section 5.1.3.14).¶
The difference between IS-IS and OSPF is in the details of how they encode and transmit the TE parameters:¶
5.1.3.10. BGP - Link State
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 Section 5.1.3.9).¶
BGP (see also Section 7) is one of the essential routing protocols that glues the Internet together. BGP-LS [RFC9552] 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.¶
Information collected by BGP-LS can be used, for example, to construct the TED (Section 5.1.3.14) for use by the PCE (see Section 5.1.3.11) or may be used by ALTO servers (see Section 5.1.2.1).¶
5.1.3.11. Path Computation Element
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 computational components and cooperation between the elements in different domains. The PCE [RFC4655] is an entity (component, application, or network node) that is capable of computing a network path or route based on a network graph and applying computational constraints.¶
Thus, a PCE can provide a central component in a TE system operating on the TED (see Section 5.1.3.14) with delegated responsibility for determining paths in MPLS, GMPLS, or SR networks. The PCE uses the Path Computation Element Communication Protocol (PCEP) [RFC5440] to communicate with Path Computation Clients (PCCs), such as MPLS LSRs, to answer their requests for computed paths or to instruct them to initiate new paths [RFC8281] and maintain state about paths already installed in the network [RFC8231].¶
PCEs form key components of a number of TE systems. More information about the applicability of PCEs can be found in [RFC8051], while [RFC6805] describes the application of PCEs to determining paths across multiple domains. PCEs also have potential uses in Abstraction and Control of TE Networks (ACTN) (see Section 5.1.2.2), Centralized Network Control [RFC8283], and SDN (see Section 4.3.2).¶
5.1.3.12. Segment Routing (SR)
The SR architecture [RFC8402] leverages the source routing and tunneling paradigms. The path a packet takes is defined at the ingress, and the packet is tunneled to the egress.¶
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.¶
Segments are identified by SIDs. There are four types of SIDs that are relevant for TE.¶
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 Section 3 of [RFC5331]).¶
The application of policy to SR can make SR into a TE mechanism, as described in Section 5.1.1.3.¶
5.1.3.13. Tree Engineering for Bit Index Explicit Replication
Bit Index Explicit Replication (BIER) [RFC8279] 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) [RFC9262]
provides a component that could be used to build a
traffic
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
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.¶
5.1.3.14. Network TE State Definition and Presentation
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 [RFC2702] or GMPLS [RFC3945]. In order to formally define the data in the TED and to present the data to the user, the data modeling language YANG [RFC7950] can be used as described in [RFC8795].¶
5.1.3.15. System Management and Control Interfaces
The TE control system needs to have a management interface that is human-friendly and a control interface that is programmable for automation. The Network Configuration Protocol (NETCONF) [RFC6241] and the RESTCONF protocol [RFC8040] provide programmable interfaces that are also human-friendly. These protocols use XML- or JSON-encoded messages. When message compactness or protocol bandwidth consumption needs to be optimized for the control interface, other protocols, such as Group Communication for the Constrained Application Protocol (CoAP) [RFC7390] or gRPC [GRPC], are available, especially when the protocol messages are encoded in a binary format. Along with any of these protocols, the data modeling language YANG [RFC7950] can be used to formally and precisely define the interface data.¶
PCEP [RFC5440] is another protocol that has evolved to be an option for the TE system control interface. PCEP messages are TLV based; they are not defined by a data-modeling language such as YANG.¶
5.2. Content Distribution
The Internet is dominated by client-server interactions, principally web traffic and multimedia streams, although in the future, more sophisticated media servers may become dominant. The location and performance of major information servers have a significant impact on the traffic patterns within the Internet as well as on the perception of service quality by end users.¶
A number of dynamic load-balancing techniques have been devised to
improve the performance of replicated information servers. These
techniques can cause spatial traffic characteristics to become more
dynamic in the Internet because information servers can be dynamically
picked based upon the location of the clients, the location of the
servers, the relative utilization of the servers, the relative
performance of different networks, and the relative performance of
different parts of a network. This process of assignment of
distributed servers to clients is called "traffic directing". It is an
application
Traffic
When congestion exists in the network, traffic
The issues related to location and replication of information servers, particularly web servers, are important for Internet traffic engineering because these servers contribute a substantial proportion of Internet traffic.¶
6. Recommendations for Internet Traffic Engineering
This section describes high-level recommendations for traffic engineering in the Internet in general terms.¶
The recommendations describe the capabilities needed to solve a TE
problem or to achieve a TE objective. Broadly speaking, these
recommendations can be categorized as either functional or
non-functional recommendations
The subsections that follow first summarize the non-functional requirements and then detail the functional requirements.¶
6.1. Generic Non-functional Recommendations
The generic non-functional recommendations for Internet traffic engineering are listed in the paragraphs that follow. In a given context, some of these recommendations may be critical while others may be optional. Therefore, prioritization may be required during the development phase of a TE system to tailor it to a specific operational context.¶
- Automation:
- Whenever feasible, a TE system should automate as many TE functions as possible to minimize the amount of human effort needed to analyze and control operational networks. Automation is particularly important in large-scale public networks because of the high cost of the human aspects of network operations and the high risk of network problems caused by human errors. Automation may additionally benefit from feedback from the network that indicates the state of network resources and the current load in the network. Further, placing intelligence into components of the TE system could enable automation to be more dynamic and responsive to changes in the network.¶
- Flexibility:
- A TE system should allow for changes in optimization policy. In particular, a TE system should provide sufficient configuration options so that a network administrator can tailor the system to a particular environment. It may also be desirable to have both online and offline TE subsystems that can be independently enabled and disabled. TE systems that are used in multi-class networks should also have options to support class-based performance evaluation and optimization.¶
- Interoperability
: - Whenever feasible, TE systems and their components should be developed with open standards-based interfaces to allow interoperation with other systems and components.¶
- Scalability:
- Public networks continue to grow rapidly with respect to network size and traffic volume. Therefore, to remain applicable as the network evolves, a TE system should be scalable. In particular, a TE system should remain functional as the network expands with regard to the number of routers 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 and processes in a network element, and should not consume too many network resources when collecting and distributing state information or when exerting control.¶
- Security:
- Security is a critical consideration in TE systems. Such systems typically 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 the network from vulnerabilities that originate from security breaches and other impairments within the TE system.¶
- Simplicity:
- A TE system should be as simple as possible. Simplicity in user interface does not necessarily imply that the TE system will use naive algorithms. When complex algorithms and internal structures are used, the user interface should hide such complexities from the network administrator as much as possible.¶
- 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 underlying 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 between responsiveness and stability. It is strongly recommended that when a trade-off between responsiveness and stability is needed, it should be made in favor of stability (especially in public IP backbone networks).¶
- 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 maintain.¶
- Visibility:
- Mechanisms should exist as part of the TE system to collect statistics from the network and to analyze these statistics to determine how well the network is functioning. Derived statistics (such as traffic matrices, link utilization, latency, packet loss, and other performance measures of interest) that are determined from network measurements can be used as indicators of prevailing network conditions. The capabilities of the various components of the routing system are other examples of status information that should be observable.¶
6.2. Routing Recommendations
Routing control is a significant aspect of Internet traffic engineering. Routing impacts many of the key performance measures associated with networks, such as throughput, delay, and utilization. Generally, it is very difficult to provide good service quality in a wide area network without effective routing control. A desirable TE routing system is one that takes traffic characteristics and network constraints into account during route selection while maintaining stability.¶
Shortest Path First (SPF) IGPs are based on shortest path algorithms and have limited control capabilities for TE [RFC2702] [AWD2]. These limitations include:¶
Because of these limitations, capabilities are needed to enhance the routing function in IP networks. Some of these capabilities are summarized below:¶
6.3. Traffic Mapping Recommendations
Traffic mapping is the assignment of traffic workload onto
Two important aspects of the traffic mapping function are the ability to establish multiple paths between an originating node and a destination node and the capability to distribute the traffic across those paths according to configured policies. A precondition for this scheme is the existence of flexible mechanisms to partition traffic and then assign the traffic partitions onto the parallel paths (described as "parallel traffic trunks" in [RFC2702]). When traffic is assigned to multiple parallel paths, it is recommended that special care should be taken to ensure proper ordering of packets belonging to the same application (or traffic flow) at the destination node of the parallel paths.¶
Mechanisms that perform the traffic mapping functions should aim to map the traffic onto the network infrastructure to minimize congestion. If the total traffic load cannot be accommodated, or if the routing and mapping functions cannot react fast enough to changing traffic conditions, then a traffic mapping system may use short timescale congestion control mechanisms (such as queue management, scheduling, etc.) to mitigate congestion. Thus, mechanisms that perform the traffic mapping functions complement existing congestion control mechanisms. In an operational network, traffic should be mapped onto the infrastructure such that intra-class and inter-class resource contention are minimized (see Section 2).¶
When traffic mapping techniques that depend on dynamic state feedback (e.g., MPLS Adaptive Traffic Engineering (MATE) [MATE] and suchlike) are used, special care must be taken to guarantee network stability.¶
6.4. Measurement Recommendations
The importance of measurement in TE has been discussed throughout this document. A TE system should include mechanisms to measure and collect statistics from the network to support the TE function. Additional capabilities may be needed to help in the analysis of the statistics. The actions of these mechanisms should not adversely affect the accuracy and integrity of the statistics collected. The mechanisms for statistical data acquisition should also be able to scale as the network evolves.¶
Traffic statistics may be classified according to long-term or
short-term timescales. Long-term traffic statistics are very useful
for traffic engineering. Long-term traffic statistics may
periodically record network workload (such as hourly, daily, and
weekly variations in traffic profiles) as well as traffic trends.
Aspects of the traffic statistics may also describe class of service
characteristics for a network supporting multiple classes of service.
Analysis of the long-term traffic statistics may yield other
information such as busy-hour characteristics
A mechanism for constructing traffic matrices for both long-term and short-term traffic statistics should be in place. In multi-service IP networks, the traffic matrices may be constructed for different service classes. Each element of a traffic matrix represents a statistic about the traffic flow between a pair of abstract nodes. An abstract node may represent a router, a collection of routers, or a site in a VPN.¶
Traffic statistics should provide reasonable and reliable
indicators of the current state of the network on the short-term
scale. Some short-term traffic statistics may reflect link
utilization and link congestion status. Examples of congestion
indicators include excessive packet delay, packet loss, and high
resource utilization. Examples of mechanisms for distributing this
kind of information include SNMP, probing tools, FTP, IGP link-state
advertisements, NETCONF
6.5. Policing, Planning, and Access Control
The recommendations in Sections 6.2 and 6.3 may be sub-optimal or even ineffective if the amount of traffic flowing on a route or path exceeds the capacity of the resource on that route or path. Several approaches can be used to increase the performance of TE systems:¶
Combining some elements of all three of these measures is advisable to achieve a better TE system.¶
6.6. Network Survivability
Network survivability refers to the capability of a network to
maintain service continuity in the presence of faults. This can be
accomplished by promptly recovering from network impairments and
maintaining the required QoS for existing services after recovery.
Survivability is an issue of great concern within the Internet
community due to the demand to carry mission
The impact of service outages varies significantly for different
service classes depending on the duration of the outage, which can vary
from milliseconds (with minor service impact) to seconds (with
possible call drops for IP telephony and session timeouts for
connection
Failure protection and restoration capabilities are available in multiple layers as network technologies have continued to evolve. Optical networks are capable of providing dynamic ring and mesh restoration functionality at the wavelength level. At the SONET/SDH layer, survivability capability is provided with Automatic Protection Switching (APS) as well as self-healing ring and mesh architectures. Similar functionality is provided by Layer 2 technologies such as Ethernet.¶
Rerouting is used at the IP layer to restore service following link and node outages. Rerouting at the IP layer occurs after a period of routing convergence, which may require seconds to minutes to complete. Path-oriented technologies such as MPLS [RFC3469] can be used to enhance the survivability of IP networks in a potentially cost-effective manner.¶
An important aspect of multi-layer survivability is that technologies at different layers may provide protection and restoration capabilities at different granularities in terms of timescales and at different bandwidth granularities (from the level of packets to that of wavelengths). Protection and restoration capabilities can also be sensitive to different service classes and different network utility models. Coordinating different protection and restoration capabilities across multiple layers in a cohesive manner to ensure network survivability is maintained at reasonable cost is a challenging task. Protection and restoration coordination across layers may not always be feasible, because networks at different layers may belong to different administrative domains.¶
Some of the general recommendations for protection and restoration coordination are as follows:¶
6.6.1. Survivability in MPLS-Based Networks
Because MPLS is path-oriented, it has the potential to provide faster and more predictable protection and restoration capabilities than conventional hop-by-hop routed IP systems. Protection types for MPLS networks can be divided into four categories:¶
- Link Protection:
- The objective of link protection is to protect an LSP from the failure of a given link. Under link protection, a protection or backup LSP (the secondary LSP) follows a path that is disjoint from the path of the working or operational LSP (the primary LSP) at the particular link where link protection is required. When the protected link fails, traffic on the working LSP is switched to the protection LSP at the headend of the failed link. As a local repair method, link protection can be fast. This form of protection may be most appropriate in situations where some network elements along a given path are known to be less reliable than others.¶
- Node Protection:
- The objective of node protection is to protect an LSP from the failure of a given node. Under node protection, the secondary LSP follows a path that is disjoint from the path of the primary LSP at the particular node where node protection is required. The secondary LSP is also disjoint from the primary LSP at all links attached to the node to be protected. When the protected node fails, traffic on the working LSP is switched over to the protection LSP at the upstream LSR directly connected to the failed node. Node protection covers a slightly larger part of the network compared to link protection but is otherwise fundamentally the same.¶
- Path Protection:
- The goal of LSP path protection (or end-to-end protection) is to protect an LSP from any failure along its routed path. Under path protection, the path of the protection LSP is completely disjoint from the path of the working LSP. The advantage of path protection is that the backup LSP protects the working LSP from all possible link and node failures along the path, except for failures of ingress or egress LSR. Additionally, path protection may be more efficient in terms of resource usage than link or node protection applied at every hop along the path. However, path protection may be slower than link and node protection because the fault notifications have to be propagated further.¶
- Segment Protection:
- An MPLS domain may be partitioned into multiple subdomains (protection domains). Path protection is applied to the path of each LSP as it crosses the domain from its ingress to the domain to where it egresses the domain. In cases where an LSP traverses multiple protection domains, a protection mechanism within a domain only needs to protect the segment of the LSP that lies within the domain. Segment protection will generally be faster than end-to-end path protection because recovery generally occurs closer to the fault, and the notification doesn't have to propagate as far.¶
See [RFC3469] and [RFC6372] for a more comprehensive discussion of MPLS-based recovery.¶
6.6.2. Protection Options
Another issue to consider is the concept of protection options. We use notation such as "m:n protection", where m is the number of protection LSPs used to protect n working LSPs. In all cases except 1+1 protection, the resources associated with the protection LSPs can be used to carry preemptable best-effort traffic when the working LSP is functioning correctly.¶
- 1:1 protection:
- One working LSP is protected
/restored by one protection LSP. Traffic is sent only on the protected LSP until the protection /restoration event switches the traffic to the protection LSP.¶ - 1:n protection:
- One protection LSP is used to protect/restore n working LSPs.
Traffic is sent only on the n protected working LSPs until the
protection
/restoration event switches the traffic from one failed LSP to the protection LSP. Only one failed LSP can be restored at any time.¶ - n:1 protection:
- One working LSP is protected
/restored by n protection LSPs, possibly with load splitting across the protection LSPs. This may be especially useful when it is not feasible to find one path for the backup that can satisfy the bandwidth requirement of the primary LSP.¶ - 1+1 protection:
- Traffic is sent concurrently on both the working LSP and a protection LSP. The egress LSR selects one of the two LSPs based on local policy (usually based on traffic integrity). When a fault disrupts the traffic on one LSP, the egress switches to receive traffic from the other LSP. This approach is expensive in how it consumes network but recovers from failures most rapidly.¶
6.7. Multi-Layer Traffic Engineering
Networks are often implemented as layers. A layer relationship may represent the interaction between technologies (for example, an IP network operated over an optical network) or the relationship between different network operators (for example, a customer network operated over a service provider's network). Note that a multi-layer network does not imply the use of multiple technologies, although some form of encapsulation is often applied.¶
Multi-layer traffic engineering presents a number of challenges
associated with scalability and confidentiality
PCE (see Section 5.1.3.11) is also a useful tool for multi-layer networks as described in [RFC6805], [RFC8685], and [RFC5623]. Signaling techniques for multi-layer TE are described in [RFC6107].¶
See also Section 6.6 for examination of multi-layer network survivability.¶
6.8. Traffic Engineering in Diffserv Environments
Increasing requirements to support multiple classes of traffic in
the Internet, such as best-effort and mission
Differentiated Services (Diffserv) [RFC2475] can be used to ensure that SLAs defined to
differentiate between traffic flows are met. Classes of service can
be supported in a Diffserv environment by concatenating Per-Hop
Behaviors (PHBs) along the routing path. A PHB is the forwarding
behavior that a packet receives at a Diffserv
TE can complement Diffserv to improve utilization of network
resources. TE can be operated on an aggregated basis across all
service classes [RFC3270] or on a
per
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:¶
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
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:¶
See [RFC4124] for detailed requirements on Diffserv-aware TE.¶
6.9. Network Controllability
Offline and online (see Section 4.2) 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.¶
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.¶
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
interoperabilit
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).¶
7. Inter-Domain Considerations
Inter-domain TE is concerned with performance optimization for traffic that originates in one administrative domain and terminates in a different one.¶
BGP [RFC4271] is the standard exterior gateway protocol used to exchange routing information between 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:¶
- Route Propagation:
- Controlling the import and export of routes between ASes and controlling the redistribution of routes between BGP and other protocols within an AS.¶
- Best-path selection:
- Selecting the best path when there are multiple candidate paths to a given destination network. This is performed by the BGP decision process, which selects the preferred exit points out of an AS toward specific destination networks by taking a number of different considerations into account. The BGP path selection process can be influenced by manipulating the attributes associated with the process, including NEXT_HOP, LOCAL_PREF, AS_PATH, ORIGIN, MULTI_EXIT_DISC (MED), IGP metric, etc.¶
Most BGP implementations provide constructs that facilitate the implementation of complex BGP policies based on pre-configured logical conditions. These can be used to control import and export of incoming and outgoing routes, control redistribution of routes between BGP and other protocols, and influence the selection of best paths by manipulating the attributes (either standardized or local to the implementation) associated with the BGP decision process.¶
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.¶
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.¶
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 [RFC5151].¶
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.¶
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.¶
8. Overview of Contemporary TE Practices in Operational IP Networks
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.¶
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.¶
Administrators of MPLS-TE networks specify and configure link
attributes and 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
propagate 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 administrator
specifies the destination node and the attributes of the LSP that
indicate the requirements 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
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 persistent shifts in demand (traffic growth or reduction). If network congestion occurs due to unexpected events, existing LSPs can be rerouted to alleviate the situation, or the network administrator can configure new LSPs 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 by monitoring the traffic on LSPs. Such traffic statistics can be used for a variety of purposes including network planning and network optimization.¶
Network management and planning systems have evolved and assumed a lot of the 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 solutions 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 redistribute them to make better use of the available resources. Such a PCE can form part of a network orchestrator that uses PCEP or some other configuration and management interface to instruct the signaling protocol or directly program the routers.¶
SR 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 reserve resources in the routers. All resource reservation is logical within the controller and is not distributed to the routers. Packets are steered through the network using SR, and this may have configuration and operational scaling benefits.¶
As mentioned in Section 7, 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 optimize the distribution of outbound traffic between multiple inter-domain links. When operating a geographically widespread network (such as for a multi-national or global network provider), maintaining the ability to 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.¶
Inter-domain TE with BGP begins with the placement of multiple
peering interconnection points that are in close proximity to traffic
sources
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.¶
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.¶
9. Security Considerations
In general, TE mechanisms are security neutral, and this document does not introduce new security issues.¶
Network security is, of course, an important issue, and TE mechanisms can have benefits and drawbacks:¶
The consequences of attacks on the control and management protocols used to operate TE networks can be significant:¶
Thus, it is important to use adequate protection mechanisms, such as authentication, on all protocols used to deliver TE.¶
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.¶
External control interfaces that are introduced to provide additional control and management of TE systems (see Section 5.1.2) 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.¶
10. IANA Considerations
This document has no IANA actions.¶
11. Informative References
- [AFD03]
-
Pan, R., Breslau, L., Prabhakar, B., and S. Shenker, "Approximate fairness through differential dropping", ACM SIGCOMM Computer Communication Review, Volume 33,
Issue 2, Pages 23-39, DOI 10
.1145 , , <https:///956981 .956985 dl >..acm .org /doi /10 .1145 /956981 .956985 - [AJ19]
-
Adekitan, A., Abolade, J., and O. Shobayo, "Data mining approach for predicting the daily Internet data traffic of a smart university", Journal of Big Data, Volume 6, Number 1, Page 1, DOI 10
.1186 , , <https:///s40537 -019 -0176 -5 journalofbigdata >..springeropen .com /track /pdf /10 .1186 /s40537 -019 -0176 -5 .pdf - [ATSSS]
-
3GPP, "Study on access traffic steering, switch and splitting support in the 5G System (5GS) architecture", Release 16, 3GPP TR 23.793, , <https://
www >..3gpp .org /ftp //Specs /archive /23 _series /23 .793 /23793 -g00 .zip - [AWD2]
-
Awduche, D., "MPLS and traffic engineering in IP networks", IEEE Communications Magazine, Volume 37, Issue 12, Pages
42-47, DOI 10
.1109 , , <https:///35 .809383 ieeexplore >..ieee .org /document /809383 - [AWD5]
-
Awduche, D., "An approach to optimal peering between autonomous systems in the Internet", Proceedings 7th International Conference on Computer
Communications and Networks (Cat. No. 98EX226), DOI 10
.1109 , , <https:///ICCCN .1998 .998795 ieeexplore >..ieee .org /document /998795 - [E.360.1]
-
ITU-T, "Framework for QoS routing and related traffic engineering methods for IP-, ATM-, and TDM-based multiservice networks", ITU-T Recommendation E.360.1, , <https://
www >..itu .int /rec /T -REC -E .360 .1 -200205 -I /en - [ENHANCED-VPN]
-
Dong, J., Bryant, S., Li, Z., Miyasaka, T., and Y. Lee, "A Framework for NRP-based Enhanced Virtual Private Network", Work in Progress, Internet-Draft, draft
-ietf , , <https://-teas -enhanced -vpn -17 datatracker >..ietf .org /doc /html /draft -ietf -teas -enhanced -vpn -17 - [Err309]
-
RFC Errata, Erratum ID 309, RFC 3272, <https://
www >..rfc -editor .org /errata /eid309 - [EVPN
-UNEQUAL -LB] -
Malhotra, N., Ed., Sajassi, A., Rabadan, J., Drake, J., Lingala, A., and S. Thoria, "Weighted Multi-Path Procedures for EVPN Multi-Homing", Work in Progress, Internet-Draft, draft
-ietf , , <https://-bess -evpn -unequal -lb -21 datatracker >..ietf .org /doc /html /draft -ietf -bess -evpn -unequal -lb -21 - [FLJA93]
-
Floyd, S. and V. Jacobson, "Random Early Detection Gateways for Congestion Avoidance", IEEE/ACM Transactions on Networking, Volume 1,
Issue 4, Pages 397-413, DOI 10
.1109 , , <https:///90 .251892 www >..icir .org /floyd /papers /early .twocolumn .pdf - [FT00]
-
Fortz, B. and M. Thorup, "Internet Traffic Engineering by Optimizing OSPF Weights", Proceedings IEEE INFOCOM 2000, DOI 10
.1109 , , <https:///INFCOM .2000 .832225 www >..cs .cornell .edu /courses /cs619 /2004fa /documents /ospf _opt .pdf - [FT01]
-
Fortz, B. and M. Thorup, "Optimizing OSPF/IS-IS Weights in a Changing World", IEEE Journal on Selected Areas in Communications, DOI 10
.1109 , , <https:///JSAC .2002 .1003042 ieeexplore >..ieee .org /document /1003042 - [GRPC]
- gRPC Authors, "gRPC: A high performance, open source universal RPC framework", <https://grpc.io>.
- [KELLY]
- Kelly, F., "Notes on effective bandwidths", Oxford University Press, .
- [MA]
-
Ma, Q., "Quality
-of , Ph.D. Dissertation, Carnegie Mellon University, CMU-CS-98-138, , <https://-Service Routing in Integrated Services Networks" apps >..dtic .mil /sti /pdfs /ADA352299 .pdf - [MATE]
-
Elwalid, A., Jin, C., Low, S., and I. Widjaja, "MATE: MPLS Adaptive Traffic Engineering", Proceedings IEEE INFOCOM 2001, Conference on Computer
Communications, Twentieth Annual Joint Conference of the IEEE Computer
and Communications Society (Cat. No. 01CH37213), DOI 10
.1109 , , <https:///INFCOM .2001 .916625 www >..yumpu .com /en /document /view /35140398 /mate -mpls -adaptive -traffic -engineering -infocom -ieee -xplore /8 - [MR99]
-
Mitra, D. and K.G. Ramakrishnan, "A case study of multiservice, multipriority traffic engineering design for data networks", Seamless Interconnection for Universal Services, Global
Telecommunicati
ons Conference, GLOBECOM'99, (Cat. No. 99CH37042) , DOI 10.1109 , , <https:///GLOCOM .1999 .830281 ieeexplore >..ieee .org /document /830281 - [MULTIPATH-DCCP]
-
Amend, M., Ed., Brunstrom, A., Kassler, A., Rakocevic, V., and S. Johnson, "DCCP Extensions for Multipath Operation with Multiple Addresses", Work in Progress, Internet-Draft, draft
-ietf , , <https://-tsvwg -multipath -dccp -11 datatracker >..ietf .org /doc /html /draft -ietf -tsvwg -multipath -dccp -11 - [NETWORK-SLICES]
-
Farrel, A., Ed., Drake, J., Ed., Rokui, R., Homma, S., Makhijani, K., Contreras, L. M., and J. Tantsura, "A Framework for Network Slices in Networks Built from IETF Technologies", Work in Progress, Internet-Draft, draft
-ietf , , <https://-teas -ietf -network -slices -25 datatracker >..ietf .org /doc /html /draft -ietf -teas -ietf -network -slices -25 - [PERFORMANCE
-ROUTING] -
Xu, X., Hegde, S., Talaulikar, K., Boucadair, M., and C. Jacquenet, "Performance
-based BGP Routing Mechanism" , Work in Progress, Internet-Draft, draft-ietf , , <https://-idr -performance -routing -03 datatracker >..ietf .org /doc /html /draft -ietf -idr -performance -routing -03 - [QUIC-MULTIPATH]
-
Liu, Y., Ed., Ma, Y., Ed., De Coninck, Q., Ed., Bonaventure, O., Huitema, C., and M. Kühlewind, Ed., "Multipath Extension for QUIC", Work in Progress, Internet-Draft, draft
-ietf , , <https://-quic -multipath -06 datatracker >..ietf .org /doc /html /draft -ietf -quic -multipath -06 - [RFC0791]
-
Postel, J., "Internet Protocol", STD 5, RFC 791, DOI 10
.17487 , , <https:///RFC0791 www >..rfc -editor .org /info /rfc791 - [RFC1102]
-
Clark, D., "Policy routing in Internet protocols", RFC 1102, DOI 10
.17487 , , <https:///RFC1102 www >..rfc -editor .org /info /rfc1102 - [RFC1104]
-
Braun, H., "Models of policy based routing", RFC 1104, DOI 10
.17487 , , <https:///RFC1104 www >..rfc -editor .org /info /rfc1104 - [RFC2205]
-
Braden, R., Ed., Zhang, L., Berson, S., Herzog, S., and S. Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1 Functional Specification", RFC 2205, DOI 10
.17487 , , <https:///RFC2205 www >..rfc -editor .org /info /rfc2205 - [RFC2330]
-
Paxson, V., Almes, G., Mahdavi, J., and M. Mathis, "Framework for IP Performance Metrics", RFC 2330, DOI 10
.17487 , , <https:///RFC2330 www >..rfc -editor .org /info /rfc2330 - [RFC2386]
-
Crawley, E., Nair, R., Rajagopalan, B., and H. Sandick, "A Framework for QoS-based Routing in the Internet", RFC 2386, DOI 10
.17487 , , <https:///RFC2386 www >..rfc -editor .org /info /rfc2386 - [RFC2474]
-
Nichols, K., Blake, S., Baker, F., and D. Black, "Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers", RFC 2474, DOI 10
.17487 , , <https:///RFC2474 www >..rfc -editor .org /info /rfc2474 - [RFC2475]
-
Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z., and W. Weiss, "An Architecture for Differentiated Services", RFC 2475, DOI 10
.17487 , , <https:///RFC2475 www >..rfc -editor .org /info /rfc2475 - [RFC2597]
-
Heinanen, J., Baker, F., Weiss, W., and J. Wroclawski, "Assured Forwarding PHB Group", RFC 2597, DOI 10
.17487 , , <https:///RFC2597 www >..rfc -editor .org /info /rfc2597 - [RFC2678]
-
Mahdavi, J. and V. Paxson, "IPPM Metrics for Measuring Connectivity", RFC 2678, DOI 10
.17487 , , <https:///RFC2678 www >..rfc -editor .org /info /rfc2678 - [RFC2702]
-
Awduche, D., Malcolm, J., Agogbua, J., O'Dell, M., and J. McManus, "Requirements for Traffic Engineering Over MPLS", RFC 2702, DOI 10
.17487 , , <https:///RFC2702 www >..rfc -editor .org /info /rfc2702 - [RFC2722]
-
Brownlee, N., Mills, C., and G. Ruth, "Traffic Flow Measurement: Architecture", RFC 2722, DOI 10
.17487 , , <https:///RFC2722 www >..rfc -editor .org /info /rfc2722 - [RFC2753]
-
Yavatkar, R., Pendarakis, D., and R. Guerin, "A Framework for Policy-based Admission Control", RFC 2753, DOI 10
.17487 , , <https:///RFC2753 www >..rfc -editor .org /info /rfc2753 - [RFC2961]
-
Berger, L., Gan, D., Swallow, G., Pan, P., Tommasi, F., and S. Molendini, "RSVP Refresh Overhead Reduction Extensions", RFC 2961, DOI 10
.17487 , , <https:///RFC2961 www >..rfc -editor .org /info /rfc2961 - [RFC2998]
-
Bernet, Y., Ford, P., Yavatkar, R., Baker, F., Zhang, L., Speer, M., Braden, R., Davie, B., Wroclawski, J., and E. Felstaine, "A Framework for Integrated Services Operation over Diffserv Networks", RFC 2998, DOI 10
.17487 , , <https:///RFC2998 www >..rfc -editor .org /info /rfc2998 - [RFC3031]
-
Rosen, E., Viswanathan, A., and R. Callon, "Multiprotocol Label Switching Architecture", RFC 3031, DOI 10
.17487 , , <https:///RFC3031 www >..rfc -editor .org /info /rfc3031 - [RFC3086]
-
Nichols, K. and B. Carpenter, "Definition of Differentiated Services Per Domain Behaviors and Rules for their Specification", RFC 3086, DOI 10
.17487 , , <https:///RFC3086 www >..rfc -editor .org /info /rfc3086 - [RFC3124]
-
Balakrishnan, H. and S. Seshan, "The Congestion Manager", RFC 3124, DOI 10
.17487 , , <https:///RFC3124 www >..rfc -editor .org /info /rfc3124 - [RFC3168]
-
Ramakrishnan, K., Floyd, S., and D. Black, "The Addition of Explicit Congestion Notification (ECN) to IP", RFC 3168, DOI 10
.17487 , , <https:///RFC3168 www >..rfc -editor .org /info /rfc3168 - [RFC3175]
-
Baker, F., Iturralde, C., Le Faucheur, F., and B. Davie, "Aggregation of RSVP for IPv4 and IPv6 Reservations", RFC 3175, DOI 10
.17487 , , <https:///RFC3175 www >..rfc -editor .org /info /rfc3175 - [RFC3198]
-
Westerinen, A., Schnizlein, J., Strassner, J., Scherling, M., Quinn, B., Herzog, S., Huynh, A., Carlson, M., Perry, J., and S. Waldbusser, "Terminology for Policy-Based Management", RFC 3198, DOI 10
.17487 , , <https:///RFC3198 www >..rfc -editor .org /info /rfc3198 - [RFC3209]
-
Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP Tunnels", RFC 3209, DOI 10
.17487 , , <https:///RFC3209 www >..rfc -editor .org /info /rfc3209 - [RFC3270]
-
Le Faucheur, F., Ed., Wu, L., Davie, B., Davari, S., Vaananen, P., Krishnan, R., Cheval, P., and J. Heinanen, "Multi-Protocol Label Switching (MPLS) Support of Differentiated Services", RFC 3270, DOI 10
.17487 , , <https:///RFC3270 www >..rfc -editor .org /info /rfc3270 - [RFC3272]
-
Awduche, D., Chiu, A., Elwalid, A., Widjaja, I., and X. Xiao, "Overview and Principles of Internet Traffic Engineering", RFC 3272, DOI 10
.17487 , , <https:///RFC3272 www >..rfc -editor .org /info /rfc3272 - [RFC3469]
-
Sharma, V., Ed. and F. Hellstrand, Ed., "Framework for Multi-Protocol Label Switching (MPLS)-based Recovery", RFC 3469, DOI 10
.17487 , , <https:///RFC3469 www >..rfc -editor .org /info /rfc3469 - [RFC3473]
-
Berger, L., Ed., "Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol
-Traffic Engineering (RSVP-TE) Extensions" , RFC 3473, DOI 10.17487 , , <https:///RFC3473 www >..rfc -editor .org /info /rfc3473 - [RFC3630]
-
Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering (TE) Extensions to OSPF Version 2", RFC 3630, DOI 10
.17487 , , <https:///RFC3630 www >..rfc -editor .org /info /rfc3630 - [RFC3945]
-
Mannie, E., Ed., "Generalized Multi-Protocol Label Switching (GMPLS) Architecture", RFC 3945, DOI 10
.17487 , , <https:///RFC3945 www >..rfc -editor .org /info /rfc3945 - [RFC4090]
-
Pan, P., Ed., Swallow, G., Ed., and A. Atlas, Ed., "Fast Reroute Extensions to RSVP-TE for LSP Tunnels", RFC 4090, DOI 10
.17487 , , <https:///RFC4090 www >..rfc -editor .org /info /rfc4090 - [RFC4124]
-
Le Faucheur, F., Ed., "Protocol Extensions for Support of Diffserv-aware MPLS Traffic Engineering", RFC 4124, DOI 10
.17487 , , <https:///RFC4124 www >..rfc -editor .org /info /rfc4124 - [RFC4203]
-
Kompella, K., Ed. and Y. Rekhter, Ed., "OSPF Extensions in Support of Generalized Multi-Protocol Label Switching (GMPLS)", RFC 4203, DOI 10
.17487 , , <https:///RFC4203 www >..rfc -editor .org /info /rfc4203 - [RFC4271]
-
Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A Border Gateway Protocol 4 (BGP-4)", RFC 4271, DOI 10
.17487 , , <https:///RFC4271 www >..rfc -editor .org /info /rfc4271 - [RFC4340]
-
Kohler, E., Handley, M., and S. Floyd, "Datagram Congestion Control Protocol (DCCP)", RFC 4340, DOI 10
.17487 , , <https:///RFC4340 www >..rfc -editor .org /info /rfc4340 - [RFC4461]
-
Yasukawa, S., Ed., "Signaling Requirements for Point
-to , RFC 4461, DOI 10-Multipoint Traffic -Engineered MPLS Label Switched Paths (LSPs)" .17487 , , <https:///RFC4461 www >..rfc -editor .org /info /rfc4461 - [RFC4594]
-
Babiarz, J., Chan, K., and F. Baker, "Configuration Guidelines for DiffServ Service Classes", RFC 4594, DOI 10
.17487 , , <https:///RFC4594 www >..rfc -editor .org /info /rfc4594 - [RFC4655]
-
Farrel, A., Vasseur, J.-P., and J. Ash, "A Path Computation Element (PCE)-Based Architecture", RFC 4655, DOI 10
.17487 , , <https:///RFC4655 www >..rfc -editor .org /info /rfc4655 - [RFC4872]
-
Lang, J.P., Ed., Rekhter, Y., Ed., and D. Papadimitriou, Ed., "RSVP-TE Extensions in Support of End-to-End Generalized Multi-Protocol Label Switching (GMPLS) Recovery", RFC 4872, DOI 10
.17487 , , <https:///RFC4872 www >..rfc -editor .org /info /rfc4872 - [RFC4873]
-
Berger, L., Bryskin, I., Papadimitriou, D., and A. Farrel, "GMPLS Segment Recovery", RFC 4873, DOI 10
.17487 , , <https:///RFC4873 www >..rfc -editor .org /info /rfc4873 - [RFC4875]
-
Aggarwal, R., Ed., Papadimitriou, D., Ed., and S. Yasukawa, Ed., "Extensions to Resource Reservation Protocol - Traffic Engineering (RSVP-TE) for Point
-to , RFC 4875, DOI 10-Multipoint TE Label Switched Paths (LSPs)" .17487 , , <https:///RFC4875 www >..rfc -editor .org /info /rfc4875 - [RFC5151]
-
Farrel, A., Ed., Ayyangar, A., and JP. Vasseur, "Inter-Domain MPLS and GMPLS Traffic Engineering -- Resource Reservation Protocol
-Traffic Engineering (RSVP-TE) Extensions" , RFC 5151, DOI 10.17487 , , <https:///RFC5151 www >..rfc -editor .org /info /rfc5151 - [RFC5250]
-
Berger, L., Bryskin, I., Zinin, A., and R. Coltun, "The OSPF Opaque LSA Option", RFC 5250, DOI 10
.17487 , , <https:///RFC5250 www >..rfc -editor .org /info /rfc5250 - [RFC5305]
-
Li, T. and H. Smit, "IS-IS Extensions for Traffic Engineering", RFC 5305, DOI 10
.17487 , , <https:///RFC5305 www >..rfc -editor .org /info /rfc5305 - [RFC5329]
-
Ishiguro, K., Manral, V., Davey, A., and A. Lindem, Ed., "Traffic Engineering Extensions to OSPF Version 3", RFC 5329, DOI 10
.17487 , , <https:///RFC5329 www >..rfc -editor .org /info /rfc5329 - [RFC5331]
-
Aggarwal, R., Rekhter, Y., and E. Rosen, "MPLS Upstream Label Assignment and Context
-Specific Label Space" , RFC 5331, DOI 10.17487 , , <https:///RFC5331 www >..rfc -editor .org /info /rfc5331 - [RFC5357]
-
Hedayat, K., Krzanowski, R., Morton, A., Yum, K., and J. Babiarz, "A Two-Way Active Measurement Protocol (TWAMP)", RFC 5357, DOI 10
.17487 , , <https:///RFC5357 www >..rfc -editor .org /info /rfc5357 - [RFC5394]
-
Bryskin, I., Papadimitriou, D., Berger, L., and J. Ash, "Policy-Enabled Path Computation Framework", RFC 5394, DOI 10
.17487 , , <https:///RFC5394 www >..rfc -editor .org /info /rfc5394 - [RFC5440]
-
Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation Element (PCE) Communication Protocol (PCEP)", RFC 5440, DOI 10
.17487 , , <https:///RFC5440 www >..rfc -editor .org /info /rfc5440 - [RFC5470]
-
Sadasivan, G., Brownlee, N., Claise, B., and J. Quittek, "Architecture for IP Flow Information Export", RFC 5470, DOI 10
.17487 , , <https:///RFC5470 www >..rfc -editor .org /info /rfc5470 - [RFC5472]
-
Zseby, T., Boschi, E., Brownlee, N., and B. Claise, "IP Flow Information Export (IPFIX) Applicability", RFC 5472, DOI 10
.17487 , , <https:///RFC5472 www >..rfc -editor .org /info /rfc5472 - [RFC5541]
-
Le Roux, JL., Vasseur, JP., and Y. Lee, "Encoding of Objective Functions in the Path Computation Element Communication Protocol (PCEP)", RFC 5541, DOI 10
.17487 , , <https:///RFC5541 www >..rfc -editor .org /info /rfc5541 - [RFC5557]
-
Lee, Y., Le Roux, JL., King, D., and E. Oki, "Path Computation Element Communication Protocol (PCEP) Requirements and Protocol Extensions in Support of Global Concurrent Optimization", RFC 5557, DOI 10
.17487 , , <https:///RFC5557 www >..rfc -editor .org /info /rfc5557 - [RFC5559]
-
Eardley, P., Ed., "Pre-Congestion Notification (PCN) Architecture", RFC 5559, DOI 10
.17487 , , <https:///RFC5559 www >..rfc -editor .org /info /rfc5559 - [RFC5623]
-
Oki, E., Takeda, T., Le Roux, JL., and A. Farrel, "Framework for PCE-Based Inter-Layer MPLS and GMPLS Traffic Engineering", RFC 5623, DOI 10
.17487 , , <https:///RFC5623 www >..rfc -editor .org /info /rfc5623 - [RFC5664]
-
Halevy, B., Welch, B., and J. Zelenka, "Object-Based Parallel NFS (pNFS) Operations", RFC 5664, DOI 10
.17487 , , <https:///RFC5664 www >..rfc -editor .org /info /rfc5664 - [RFC5671]
-
Yasukawa, S. and A. Farrel, Ed., "Applicability of the Path Computation Element (PCE) to Point
-to , RFC 5671, DOI 10-Multipoint (P2MP) MPLS and GMPLS Traffic Engineering (TE)" .17487 , , <https:///RFC5671 www >..rfc -editor .org /info /rfc5671 - [RFC5693]
-
Seedorf, J. and E. Burger, "Application
-Layer Traffic Optimization (ALTO) Problem Statement" , RFC 5693, DOI 10.17487 , , <https:///RFC5693 www >..rfc -editor .org /info /rfc5693 - [RFC6107]
-
Shiomoto, K., Ed. and A. Farrel, Ed., "Procedures for Dynamically Signaled Hierarchical Label Switched Paths", RFC 6107, DOI 10
.17487 , , <https:///RFC6107 www >..rfc -editor .org /info /rfc6107 - [RFC6119]
-
Harrison, J., Berger, J., and M. Bartlett, "IPv6 Traffic Engineering in IS-IS", RFC 6119, DOI 10
.17487 , , <https:///RFC6119 www >..rfc -editor .org /info /rfc6119 - [RFC6241]
-
Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., and A. Bierman, Ed., "Network Configuration Protocol (NETCONF)", RFC 6241, DOI 10
.17487 , , <https:///RFC6241 www >..rfc -editor .org /info /rfc6241 - [RFC6372]
-
Sprecher, N., Ed. and A. Farrel, Ed., "MPLS Transport Profile (MPLS-TP) Survivability Framework", RFC 6372, DOI 10
.17487 , , <https:///RFC6372 www >..rfc -editor .org /info /rfc6372 - [RFC6374]
-
Frost, D. and S. Bryant, "Packet Loss and Delay Measurement for MPLS Networks", RFC 6374, DOI 10
.17487 , , <https:///RFC6374 www >..rfc -editor .org /info /rfc6374 - [RFC6601]
-
Ash, G., Ed. and D. McDysan, "Generic Connection Admission Control (GCAC) Algorithm Specification for IP/MPLS Networks", RFC 6601, DOI 10
.17487 , , <https:///RFC6601 www >..rfc -editor .org /info /rfc6601 - [RFC6805]
-
King, D., Ed. and A. Farrel, Ed., "The Application of the Path Computation Element Architecture to the Determination of a Sequence of Domains in MPLS and GMPLS", RFC 6805, DOI 10
.17487 , , <https:///RFC6805 www >..rfc -editor .org /info /rfc6805 - [RFC7011]
-
Claise, B., Ed., Trammell, B., Ed., and P. Aitken, "Specification of the IP Flow Information Export (IPFIX) Protocol for the Exchange of Flow Information", STD 77, RFC 7011, DOI 10
.17487 , , <https:///RFC7011 www >..rfc -editor .org /info /rfc7011 - [RFC7149]
-
Boucadair, M. and C. Jacquenet, "Software
-Defined Networking: A Perspective from within a Service Provider Environment" , RFC 7149, DOI 10.17487 , , <https:///RFC7149 www >..rfc -editor .org /info /rfc7149 - [RFC7285]
-
Alimi, R., Ed., Penno, R., Ed., Yang, Y., Ed., Kiesel, S., Previdi, S., Roome, W., Shalunov, S., and R. Woundy, "Application
-Layer Traffic Optimization (ALTO) Protocol" , RFC 7285, DOI 10.17487 , , <https:///RFC7285 www >..rfc -editor .org /info /rfc7285 - [RFC7390]
-
Rahman, A., Ed. and E. Dijk, Ed., "Group Communication for the Constrained Application Protocol (CoAP)", RFC 7390, DOI 10
.17487 , , <https:///RFC7390 www >..rfc -editor .org /info /rfc7390 - [RFC7426]
-
Haleplidis, E., Ed., Pentikousis, K., Ed., Denazis, S., Hadi Salim, J., Meyer, D., and O. Koufopavlou, "Software
-Defined Networking (SDN): Layers and Architecture Terminology" , RFC 7426, DOI 10.17487 , , <https:///RFC7426 www >..rfc -editor .org /info /rfc7426 - [RFC7471]
-
Giacalone, S., Ward, D., Drake, J., Atlas, A., and S. Previdi, "OSPF Traffic Engineering (TE) Metric Extensions", RFC 7471, DOI 10
.17487 , , <https:///RFC7471 www >..rfc -editor .org /info /rfc7471 - [RFC7491]
-
King, D. and A. Farrel, "A PCE-Based Architecture for Application
-Based Network Operations" , RFC 7491, DOI 10.17487 , , <https:///RFC7491 www >..rfc -editor .org /info /rfc7491 - [RFC7551]
-
Zhang, F., Ed., Jing, R., and R. Gandhi, Ed., "RSVP-TE Extensions for Associated Bidirectional Label Switched Paths (LSPs)", RFC 7551, DOI 10
.17487 , , <https:///RFC7551 www >..rfc -editor .org /info /rfc7551 - [RFC7567]
-
Baker, F., Ed. and G. Fairhurst, Ed., "IETF Recommendations Regarding Active Queue Management", BCP 197, RFC 7567, DOI 10
.17487 , , <https:///RFC7567 www >..rfc -editor .org /info /rfc7567 - [RFC7665]
-
Halpern, J., Ed. and C. Pignataro, Ed., "Service Function Chaining (SFC) Architecture", RFC 7665, DOI 10
.17487 , , <https:///RFC7665 www >..rfc -editor .org /info /rfc7665 - [RFC7679]
-
Almes, G., Kalidindi, S., Zekauskas, M., and A. Morton, Ed., "A One-Way Delay Metric for IP Performance Metrics (IPPM)", STD 81, RFC 7679, DOI 10
.17487 , , <https:///RFC7679 www >..rfc -editor .org /info /rfc7679 - [RFC7680]
-
Almes, G., Kalidindi, S., Zekauskas, M., and A. Morton, Ed., "A One-Way Loss Metric for IP Performance Metrics (IPPM)", STD 82, RFC 7680, DOI 10
.17487 , , <https:///RFC7680 www >..rfc -editor .org /info /rfc7680 - [RFC7923]
-
Voit, E., Clemm, A., and A. Gonzalez Prieto, "Requirements for Subscription to YANG Datastores", RFC 7923, DOI 10
.17487 , , <https:///RFC7923 www >..rfc -editor .org /info /rfc7923 - [RFC7926]
-
Farrel, A., Ed., Drake, J., Bitar, N., Swallow, G., Ceccarelli, D., and X. Zhang, "Problem Statement and Architecture for Information Exchange between Interconnected Traffic
-Engineered Networks" , BCP 206, RFC 7926, DOI 10.17487 , , <https:///RFC7926 www >..rfc -editor .org /info /rfc7926 - [RFC7950]
-
Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", RFC 7950, DOI 10
.17487 , , <https:///RFC7950 www >..rfc -editor .org /info /rfc7950 - [RFC8033]
-
Pan, R., Natarajan, P., Baker, F., and G. White, "Proportional Integral Controller Enhanced (PIE): A Lightweight Control Scheme to Address the Bufferbloat Problem", RFC 8033, DOI 10
.17487 , , <https:///RFC8033 www >..rfc -editor .org /info /rfc8033 - [RFC8034]
-
White, G. and R. Pan, "Active Queue Management (AQM) Based on Proportional Integral Controller Enhanced (PIE) for Data-Over-Cable Service Interface Specifications (DOCSIS) Cable Modems", RFC 8034, DOI 10
.17487 , , <https:///RFC8034 www >..rfc -editor .org /info /rfc8034 - [RFC8040]
-
Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF Protocol", RFC 8040, DOI 10
.17487 , , <https:///RFC8040 www >..rfc -editor .org /info /rfc8040 - [RFC8051]
-
Zhang, X., Ed. and I. Minei, Ed., "Applicability of a Stateful Path Computation Element (PCE)", RFC 8051, DOI 10
.17487 , , <https:///RFC8051 www >..rfc -editor .org /info /rfc8051 - [RFC8189]
-
Randriamasy, S., Roome, W., and N. Schwan, "Multi-Cost Application
-Layer Traffic Optimization (ALTO)" , RFC 8189, DOI 10.17487 , , <https:///RFC8189 www >..rfc -editor .org /info /rfc8189 - [RFC8231]
-
Crabbe, E., Minei, I., Medved, J., and R. Varga, "Path Computation Element Communication Protocol (PCEP) Extensions for Stateful PCE", RFC 8231, DOI 10
.17487 , , <https:///RFC8231 www >..rfc -editor .org /info /rfc8231 - [RFC8259]
-
Bray, T., Ed., "The JavaScript Object Notation (JSON) Data Interchange Format", STD 90, RFC 8259, DOI 10
.17487 , , <https:///RFC8259 www >..rfc -editor .org /info /rfc8259 - [RFC8279]
-
Wijnands, IJ., Ed., Rosen, E., Ed., Dolganow, A., Przygienda, T., and S. Aldrin, "Multicast Using Bit Index Explicit Replication (BIER)", RFC 8279, DOI 10
.17487 , , <https:///RFC8279 www >..rfc -editor .org /info /rfc8279 - [RFC8281]
-
Crabbe, E., Minei, I., Sivabalan, S., and R. Varga, "Path Computation Element Communication Protocol (PCEP) Extensions for PCE-Initiated LSP Setup in a Stateful PCE Model", RFC 8281, DOI 10
.17487 , , <https:///RFC8281 www >..rfc -editor .org /info /rfc8281 - [RFC8283]
-
Farrel, A., Ed., Zhao, Q., Ed., Li, Z., and C. Zhou, "An Architecture for Use of PCE and the PCE Communication Protocol (PCEP) in a Network with Central Control", RFC 8283, DOI 10
.17487 , , <https:///RFC8283 www >..rfc -editor .org /info /rfc8283 - [RFC8290]
-
Hoeiland
-Joergensen, T. , McKenney, P., Taht, D., Gettys, J., and E. Dumazet, "The Flow Queue CoDel Packet Scheduler and Active Queue Management Algorithm", RFC 8290, DOI 10.17487 , , <https:///RFC8290 www >..rfc -editor .org /info /rfc8290 - [RFC8402]
-
Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L., Decraene, B., Litkowski, S., and R. Shakir, "Segment Routing Architecture", RFC 8402, DOI 10
.17487 , , <https:///RFC8402 www >..rfc -editor .org /info /rfc8402 - [RFC8453]
-
Ceccarelli, D., Ed. and Y. Lee, Ed., "Framework for Abstraction and Control of TE Networks (ACTN)", RFC 8453, DOI 10
.17487 , , <https:///RFC8453 www >..rfc -editor .org /info /rfc8453 - [RFC8570]
-
Ginsberg, L., Ed., Previdi, S., Ed., Giacalone, S., Ward, D., Drake, J., and Q. Wu, "IS-IS Traffic Engineering (TE) Metric Extensions", RFC 8570, DOI 10
.17487 , , <https:///RFC8570 www >..rfc -editor .org /info /rfc8570 - [RFC8571]
-
Ginsberg, L., Ed., Previdi, S., Wu, Q., Tantsura, J., and C. Filsfils, "BGP - Link State (BGP-LS) Advertisement of IGP Traffic Engineering Performance Metric Extensions", RFC 8571, DOI 10
.17487 , , <https:///RFC8571 www >..rfc -editor .org /info /rfc8571 - [RFC8655]
-
Finn, N., Thubert, P., Varga, B., and J. Farkas, "Deterministic Networking Architecture", RFC 8655, DOI 10
.17487 , , <https:///RFC8655 www >..rfc -editor .org /info /rfc8655 - [RFC8664]
-
Sivabalan, S., Filsfils, C., Tantsura, J., Henderickx, W., and J. Hardwick, "Path Computation Element Communication Protocol (PCEP) Extensions for Segment Routing", RFC 8664, DOI 10
.17487 , , <https:///RFC8664 www >..rfc -editor .org /info /rfc8664 - [RFC8684]
-
Ford, A., Raiciu, C., Handley, M., Bonaventure, O., and C. Paasch, "TCP Extensions for Multipath Operation with Multiple Addresses", RFC 8684, DOI 10
.17487 , , <https:///RFC8684 www >..rfc -editor .org /info /rfc8684 - [RFC8685]
-
Zhang, F., Zhao, Q., Gonzalez de Dios, O., Casellas, R., and D. King, "Path Computation Element Communication Protocol (PCEP) Extensions for the Hierarchical Path Computation Element (H-PCE) Architecture", RFC 8685, DOI 10
.17487 , , <https:///RFC8685 www >..rfc -editor .org /info /rfc8685 - [RFC8795]
-
Liu, X., Bryskin, I., Beeram, V., Saad, T., Shah, H., and O. Gonzalez de Dios, "YANG Data Model for Traffic Engineering (TE) Topologies", RFC 8795, DOI 10
.17487 , , <https:///RFC8795 www >..rfc -editor .org /info /rfc8795 - [RFC8803]
-
Bonaventure, O., Ed., Boucadair, M., Ed., Gundavelli, S., Seo, S., and B. Hesmans, "0-RTT TCP Convert Protocol", RFC 8803, DOI 10
.17487 , , <https:///RFC8803 www >..rfc -editor .org /info /rfc8803 - [RFC8896]
-
Randriamasy, S., Yang, R., Wu, Q., Deng, L., and N. Schwan, "Application
-Layer Traffic Optimization (ALTO) Cost Calendar" , RFC 8896, DOI 10.17487 , , <https:///RFC8896 www >..rfc -editor .org /info /rfc8896 - [RFC8938]
-
Varga, B., Ed., Farkas, J., Berger, L., Malis, A., and S. Bryant, "Deterministic Networking (DetNet) Data Plane Framework", RFC 8938, DOI 10
.17487 , , <https:///RFC8938 www >..rfc -editor .org /info /rfc8938 - [RFC8955]
-
Loibl, C., Hares, S., Raszuk, R., McPherson, D., and M. Bacher, "Dissemination of Flow Specification Rules", RFC 8955, DOI 10
.17487 , , <https:///RFC8955 www >..rfc -editor .org /info /rfc8955 - [RFC8972]
-
Mirsky, G., Min, X., Nydell, H., Foote, R., Masputra, A., and E. Ruffini, "Simple Two-Way Active Measurement Protocol Optional Extensions", RFC 8972, DOI 10
.17487 , , <https:///RFC8972 www >..rfc -editor .org /info /rfc8972 - [RFC9000]
-
Iyengar, J., Ed. and M. Thomson, Ed., "QUIC: A UDP-Based Multiplexed and Secure Transport", RFC 9000, DOI 10
.17487 , , <https:///RFC9000 www >..rfc -editor .org /info /rfc9000 - [RFC9023]
-
Varga, B., Ed., Farkas, J., Malis, A., and S. Bryant, "Deterministic Networking (DetNet) Data Plane: IP over IEEE 802.1 Time-Sensitive Networking (TSN)", RFC 9023, DOI 10
.17487 , , <https:///RFC9023 www >..rfc -editor .org /info /rfc9023 - [RFC9040]
-
Touch, J., Welzl, M., and S. Islam, "TCP Control Block Interdependence
" , RFC 9040, DOI 10.17487 , , <https:///RFC9040 www >..rfc -editor .org /info /rfc9040 - [RFC9113]
-
Thomson, M., Ed. and C. Benfield, Ed., "HTTP/2", RFC 9113, DOI 10
.17487 , , <https:///RFC9113 www >..rfc -editor .org /info /rfc9113 - [RFC9256]
-
Filsfils, C., Talaulikar, K., Ed., Voyer, D., Bogdanov, A., and P. Mattes, "Segment Routing Policy Architecture", RFC 9256, DOI 10
.17487 , , <https:///RFC9256 www >..rfc -editor .org /info /rfc9256 - [RFC9262]
-
Eckert, T., Ed., Menth, M., and G. Cauchie, "Tree Engineering for Bit Index Explicit Replication (BIER-TE)", RFC 9262, DOI 10
.17487 , , <https:///RFC9262 www >..rfc -editor .org /info /rfc9262 - [RFC9298]
-
Schinazi, D., "Proxying UDP in HTTP", RFC 9298, DOI 10
.17487 , , <https:///RFC9298 www >..rfc -editor .org /info /rfc9298 - [RFC9315]
-
Clemm, A., Ciavaglia, L., Granville, L. Z., and J. Tantsura, "Intent-Based Networking - Concepts and Definitions", RFC 9315, DOI 10
.17487 , , <https:///RFC9315 www >..rfc -editor .org /info /rfc9315 - [RFC9332]
-
De Schepper, K., Briscoe, B., Ed., and G. White, "Dual-Queue Coupled Active Queue Management (AQM) for Low Latency, Low Loss, and Scalable Throughput (L4S)", RFC 9332, DOI 10
.17487 , , <https:///RFC9332 www >..rfc -editor .org /info /rfc9332 - [RFC9350]
-
Psenak, P., Ed., Hegde, S., Filsfils, C., Talaulikar, K., and A. Gulko, "IGP Flexible Algorithm", RFC 9350, DOI 10
.17487 , , <https:///RFC9350 www >..rfc -editor .org /info /rfc9350 - [RFC9439]
-
Wu, Q., Yang, Y., Lee, Y., Dhody, D., Randriamasy, S., and L. Contreras, "Application
-Layer Traffic Optimization (ALTO) Performance Cost Metrics" , RFC 9439, DOI 10.17487 , , <https:///RFC9439 www >..rfc -editor .org /info /rfc9439 - [RFC9502]
-
Britto, W., Hegde, S., Kaneriya, P., Shetty, R., Bonica, R., and P. Psenak, "IGP Flexible Algorithm in IP Networks", RFC 9502, DOI 10
.17487 , , <https:///RFC9502 www >..rfc -editor .org /info /rfc9502 - [RFC9552]
-
Talaulikar, K., Ed., "Distribution of Link-State and Traffic Engineering Information Using BGP", RFC 9552, DOI 10
.17487 , , <https:///RFC9552 www >..rfc -editor .org /info /rfc9552 - [RR94]
-
Rodrigues, M. and K.G. Ramakrishnan, "Optimal routing in shortest-path data networks", Bell Labs Technical Journal, Volume 6, Issue 1, Pages
117-138, DOI 10
.1002 , , <https:///bltj .2267 onlinelibrary >..wiley .com /doi /abs /10 .1002 /bltj .2267 - [SLDC98]
-
Suter, B., Lakshman, T.V., Stiliadis, D., and A.K. Choudhury, "Design considerations for supporting TCP with per-flow queueing", Proceedings IEEE INFOCOM '98
, DOI 10
.1109 , , <https:///INFCOM .1998 .659666 ieeexplore >..ieee .org /document /659666 - [SR-TE-POLICY]
-
Previdi, S., Filsfils, C., Talaulikar, K., Ed., Mattes, P., and D. Jain, "Advertising Segment Routing Policies in BGP", Work in Progress, Internet-Draft, draft
-ietf , , <https://-idr -segment -routing -te -policy -26 datatracker >..ietf .org /doc /html /draft -ietf -idr -segment -routing -te -policy -26 - [SR-TI-LFA]
-
Bashandy, A., Litkowski, S., Filsfils, C., Francois, P., Decraene, B., and D. Voyer, "Topology Independent Fast Reroute using Segment Routing", Work in Progress, Internet-Draft, draft
-ietf , , <https://-rtgwg -segment -routing -ti -lfa -13 datatracker >..ietf .org /doc /html /draft -ietf -rtgwg -segment -routing -ti -lfa -13 - [TE-QoS-ROUTING]
-
Ash, G., "Traffic Engineering & QoS Methods for IP-, ATM-, & Based Multiservice Networks", Work in Progress, Internet-Draft, draft
-ietf , , <https://-tewg -qos -routing -04 datatracker >..ietf .org /doc /html /draft -ietf -tewg -qos -routing -04 - [WANG]
-
Wang, Y., Wang, Z., and L. Zhang, "Internet traffic engineering without full mesh overlaying", Proceedings IEEE INFOCOM 2001
, DOI 10
.1109 , , <https:///INFCOM .2001 .916782 ieeexplore >..ieee .org /document /916782 - [XIAO]
-
Xiao, X., Hannan, A., Bailey, B., and L. Ni, "Traffic Engineering with MPLS in the Internet", IEEE Network, Volume 14, Issue 2, Pages 28-33, DOI 10
.1109 , , <https:///65 .826369 courses >..cs .washington .edu /courses /cse561 /02au /papers /xiao -mpls -net00 .pdf - [YARE95]
-
Yang, C. and A. Reddy, "A Taxonomy for Congestion Control Algorithms in Packet Switching Networks", IEEE Network, Pages 34-45, DOI 10
.1109 , , <https:///65 .397042 ieeexplore >..ieee .org /document /397042
Appendix A. Summary of Changes since RFC 3272
The changes to this document since [RFC3272] are substantial and not easily summarized as
section
The approach taken here is to list the contents of both [RFC3272] and this document saying, respectively, where the text has been placed and where the text came from.¶
Acknowledgments
Much of the text in this document is derived from [RFC3272]. 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 were:¶
The acknowledgement
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 vs 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.¶
The early draft versions of this document were produced by the TEAS Working Group's RFC3272bis Design Team. The full list of members of this team is:¶
The production of this document includes a fix to the original text resulting from an errata report #309 [Err309] by Jean-Michel Grimaldi.¶
The editor of this document would also like to thank Dhruv Dhody, Gyan Mishra, Joel Halpern, Dave Taht, John Scudder, Rich Salz, Behcet Sarikaya, Bob Briscoe, Erik Kline, Jim Guichard, Martin Duke, and Roman Danyliw for review comments.¶
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).¶
Contributors
The following people contributed substantive text to this document:¶