RFC 9274 | ALTO Cost Mode | July 2022 |
Boucadair & Wu | Standards Track | [Page] |
This document creates a new IANA registry for tracking cost modes supported by the Application-Layer Traffic Optimization (ALTO) Protocol. Also, this document relaxes a constraint that was imposed by the ALTO specification on allowed cost mode values.¶
This document updates RFC 7285.¶
This is an Internet Standards Track document.¶
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). Further information on Internet Standards is available in 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://www.rfc-editor.org/info/rfc9274.¶
Copyright (c) 2022 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://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
The cost mode attribute indicates how costs should be interpreted when communicated as described in "Application-Layer Traffic Optimization (ALTO) Protocol" [RFC7285], which includes a provision for only two modes:¶
Additional cost modes are required for specific ALTO deployment cases (e.g., [ALTO-PV]). In order to allow for such use cases, this document relaxes the constraint imposed by the base ALTO specification on allowed cost modes (Section 3) and creates a new ALTO registry to track new cost modes (Section 5).¶
The mechanisms defined in [RFC7285] are used to advertise the support of new cost modes for specific cost metrics. Refer to Section 4 for more details.¶
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
This document updates Section 6.1.2 of [RFC7285] as follows:¶
OLD:¶
NEW:¶
This document updates Section 10.5 of [RFC7285] as follows:¶
OLD:¶
NEW:¶
ALTO servers that support new cost modes for specific cost metrics will use the mechanism specified in Section 9.2 of [RFC7285] to advertise their capabilities. ALTO clients (including legacy) will use that information to specify cost constraints in their requests (e.g., indicate a cost metric and a cost mode). An example of such a behavior is depicted in Section 9.2.3 of [RFC7285].¶
If an ALTO client includes a cost mode that is not supported by an ALTO server, the server indicates such an error with the error code E_INVALID_FIELD_VALUE as per Section 8.5.2 of [RFC7285]. In practice, legacy ALTO servers will reply with the error code E_INVALID_FIELD_VALUE to requests that include a cost type other than "numerical" or "ordinal" for the "routingcost" cost metric.¶
The encoding constraints in Section 3.2 do not introduce any interoperability issue given that currently implemented cost modes adhere to these constrains (mainly, those in [RFC7285] and [ALTO-PV]).¶
IANA has created the new "ALTO Cost Modes" subregistry within the "Application-Layer Traffic Optimization (ALTO) Protocol" registry available at [ALTO].¶
The assignment policy for this subregistry is "IETF Review" (Section 4.8 of [RFC8126]).¶
Requests to register a new ALTO cost mode must include the following information:¶
Cost modes prefixed with "priv:" are reserved for Private Use (Section 4.1 of [RFC8126]). IANA has added the following note to the new subregistry:¶
Identifiers prefixed with "priv:" are reserved for Private Use (see RFC 9274, Section 5).¶
The subregistry is initially populated with the following values:¶
Identifier | Description | Intended Semantics | Reference |
---|---|---|---|
numerical | Indicates that numerical operations can be performed on the returned costs | Section 6.1.2.1 of [RFC7285] | RFC 9274 |
ordinal | Indicates that the cost values in a cost map represent ranking | Section 6.1.2.2 of [RFC7285] | RFC 9274 |
This document does not introduce new concerns other than those already discussed in Section 15 of [RFC7285].¶
Many thanks to Benjamin Kaduk for spotting the issue during the review of [ALTO-PV].¶
Thanks to Adrian Farrel, Dhruv Dhody, Luis Miguel Contreras Murillo, Sabine Randriamasy, and Qiao Xiang for the review and comments.¶
Special thanks to Kai Gao for Shepherding the document.¶
Thanks to Martin Duke for the AD review.¶
Thanks to Roni Even for the gen-art review, Jaime Jimenez for the artart review, and Stephen Farrell for the secdir review.¶
Thanks to Robert Wilton, Lars Eggert, Francesca Palombini, Roman Danyliw, Paul Wouters, and Murray Kucherawy for the IESG review.¶