RFC 6663
Requirements for Signaling of Pre-Congestion Information in a Diffserv Domain
RFC 6663 π¦ Requirements for Signaling of Pre-Congestion Information in a Diffserv Domain
Okay bestie, here's the title block tea π«Ά This is an Informational RFC (ISSN 2070-1721) dated July 2012. It was written by G. Karagiannis (University of Twente), T. Taylor (Huawei), K. Chan (Consultant), M. Menth (University of Tuebingen), and P. Eardley (BT). The title block doesn't list anything it obsoletes or updates π
Abstract β¨
Okay so PCN (Pre-Congestion Notification) is how we protect quality of service for inelastic traffic that's been admitted to a Diffserv domain π The whole PCN architecture lives in RFC 5559. This memo is all about the signaling inside the PCN-domain π (1) PCN-feedback-information gets carried from the PCN-egress-node up to the Decision Point, and (2) the Decision Point can ask the PCN-ingress-node to measure and report back the rate of sent PCN-traffic between that PCN-ingress-node and PCN-egress-node. The Decision Point can be collocated with the PCN-ingress-node or be a centralized node (in the first case, (2) is not required). These requirements especially matter for two edge behaviors, Controlled Load (CL) and Single Marking (SM) π
Status of This Memo π§
This document is not an Internet Standards Track specification, so it's just 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 a candidate for any level of Internet Standard; see Section 2 of RFC 5741 π
Info about the current status of this document, any errata, and how to give feedback on it can be found at http://www.rfc-editor.org/info/rfc6663 π
Copyright Notice π
Copyright (c) 2012 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 (http://trustee.ietf.org/license-info) as in effect on the date of publication. Please review these documents carefully, because they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions, and they're provided without warranty as described in the Simplified BSD License π«Ά
Table of Contents π
1. Introduction ....................................................2
1.1. Requirements Language ......................................3
2. Signaling Requirements for Messages from the PCN-Egress-Nodes
to Decision Point(s) ............................................3
3. Signaling Requirements for Messages between Decision Point(s)
and PCN-Ingress-Nodes ...........................................5
4. Security Considerations .........................................5
5. Acknowledgments .................................................6
6. References ......................................................6
6.1. Normative References .......................................6
6.2. Informative References .....................................6
1. Introduction πΈ
Okay, the main objective of PCN is to support the quality of service (QoS) of inelastic flows within a Diffserv domain. It does this in a simple, scalable, and robust way π§ There are two mechanisms: admission control and flow termination. Admission control decides whether to admit or block a new flow request. Flow termination is for abnormal circumstances, and it decides whether to terminate some of the existing flows π
To support these two features, the overall rate of PCN-traffic is metered on every link in the domain, and PCN-packets get appropriately marked when certain configured rates are exceeded. Those configured rates sit below the rate of the link, so boundary nodes get notified about overloads before any congestion happens. That's the "pre-congestion" in pre-congestion notification, bestie β¨ The PCN-egress-nodes measure the rates of differently marked PCN traffic in periodic intervals and report those rates to the Decision Points. The Decision Points use those rates to make their decisions for admission control and flow termination. A Decision Point can be collocated with the PCN-ingress-nodes, or its function can live in a centralized node. For more details see [RFC5559], [RFC6661], and [RFC6662] π¦
This memo specifies the requirements on signaling protocols for three jobs π
- to carry reports from a PCN-egress-node to the Decision Point,
- to carry requests, from the Decision Point to a PCN-ingress-node, that trigger the PCN-ingress-node to measure the PCN-sent-rate,
- to carry reports, from a PCN-ingress-node to the Decision Point.
The latter two messages are only needed if the Decision Point and PCN-ingress-node are not collocated π
1.1. Requirements Language π
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119] π«Ά
2. Signaling Requirements for Messages from the PCN-Egress-Nodes to Decision Point(s) π₯
The PCN-egress-node measures the rates of differently marked PCN-traffic per ingress-egress-aggregate, at regular intervals. The measurement intervals are recommended to take a fixed value between 100 ms and 500 ms, so check [RFC6661] and [RFC6662] π At the end of each measurement interval, the PCN-egress-node calculates the congestion-level-estimate (CLE) from these quantities π
The PCN-egress-node MAY be configured to record a set of identifiers of PCN-flows for which it received excess-traffic-marked packets during the last measurement interval. That latter bit may be useful for doing flow termination in networks with multipath routing π§
At the end of each measurement interval, or less often if "optional report suppression" is activated (see [RFC6661] and [RFC6662]), the PCN-egress-node sends a report to the Decision Point π
For the SM edge behavior, the report MUST contain:
- the identifier of the PCN-ingress-node and the identifier of the PCN-egress-node (typically their IP addresses). Together they specify the ingress-egress-aggregate that the report refers to,
- the rate of not-marked PCN-traffic (NM-rate) in octets/second, and
- the rate of PCN-marked traffic (PM-rate) in octets/second.
For the CL edge behavior, the report MUST contain:
- the identifier of the PCN-ingress-node and the identifier of the PCN-egress-node (typically their IP addresses). Together they specify the ingress-egress-aggregate that the report refers to,
- the rate of not-marked PCN-traffic (NM-rate) in octets/second,
- the rate of threshold-marked PCN traffic (ThM-rate) in octets/second, and
- the rate of excess-traffic-marked traffic (ETM-rate) in octets/second.
The number format and the rate units used by the signaling protocol will limit the maximum rate that PCN can use. If signaling space is tight, it might be reasonable to impose a limit, but any such limit may impose unnecessary constraints in the future π
The signaling report can either be sent directly to the Decision Point, or it can "piggy-back". That means it gets included inside some other message that passes through the PCN-egress-node and then reaches the Decision Point π«Ά
As described in [RFC6661], PCN reports from the PCN-egress-node to the Decision Point may contain flow identifiers for individual flows within an ingress-egress-aggregate that have recently experienced excess-marking. So the PCN report messages used by the PCN CL edge behavior MUST be capable of carrying sequences of octet strings that constitute those identifiers π
Signaling messages SHOULD have a higher priority and a lower drop precedence than PCN-packets (see [RFC5559]), so they get delivered quickly and don't get dropped when things overload π₯
The load generated by the signaling protocol SHOULD be minimized. Three methods may help reach that goal π
- piggy-backing the reports by the PCN-egress-nodes to the Decision Point(s) onto other signaling messages that are already in place,
- reducing the amount of reports to be sent by optional report suppression, or
- combining reports for different ingress-egress-aggregates in a single message (if they are for the same Decision Point).
As PCN reports are sent regularly, additional reliability mechanisms are not needed. This also holds in the presence of optional report suppression, because reports are sent periodically if actions by the Decision Point(s) are needed; see [RFC6661] and [RFC6662] π¦
3. Signaling Requirements for Messages between Decision Point(s) and PCN-Ingress-Nodes π§
Through request-response signaling between the Decision Point and the PCN-ingress-node, the Decision Point makes a request, and in response the PCN-ingress-node measures and reports the PCN-sent-rate for a specific ingress-egress-aggregate. Signaling is only needed if the Decision Point and PCN-ingress-node are not collocated πΈ
The request MUST contain:
- the identifier of the PCN-ingress-node and the identifier of the PCN-egress-node. Together they determine the ingress-egress-aggregate for which the PCN-sent-rate is requested, and
- the identifier of the Decision Point that requests the PCN-sent-rate.
The report MUST contain:
- the PCN-sent-rate in octets/second, and
- the identifier of the PCN-ingress-node and the identifier of the PCN-egress-node.
The request MUST be addressed to the PCN-ingress-node, and the report MUST be addressed to the Decision Point that requested it π
Because these are only sent when flow termination is needed (which is an urgent action), the request and the report SHOULD be sent with high priority, with a lower drop precedence than PCN-packets, and in a reliable manner π₯
Note that a complete system description for a PCN-domain with a centralized Decision Point includes the signaling from the Decision Point to the PCN-ingress-nodes, which controls flow admission and termination. However, this is a known problem (with solutions provided in [RFC3084] and [RFC5431], for example), and it lies outside the scope of the present document π«Ά
4. Security Considerations πβ¨
okay bestie, security is the villain arc of this whole protocol and we are taking it seriously π. [RFC5559] gives the big-picture security story for PCN π , and this memo leans on the security-related requirements of the PCN signaling that [RFC5559] lays out. The main point: the signaling between the PCN-boundary-nodes must be protected from attacks π¨. For example, the recipient needs to validate that the message is indeed from the node that claims to have sent it. Possible measures include digest authentication and protection against replay and man-in-the-middle attacks. no cap, those are the attacks you need to be paranoid about π
Specifically for the generic aggregate RSVP protocol, additional protection methods against security attacks are described in [RFC4860]. π‘οΈπ
5. Acknowledgments π«Ά
We would like to acknowledge the members of the PCN working group for the discussions that produced the contents of this memo. Huge thanks to the whole crew ππΈ
6. References π
6.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC5559] Eardley, P., Ed., "Pre-Congestion Notification (PCN)
Architecture", RFC 5559, June 2009.
[RFC6661] Charny, A., Huang, F., Karagiannis, G., Twente, U., Menth,
M., and T. Taylor, Ed., "Pre-Congestion Notification (PCN)
Boundary-Node Behaviour for the Controlled Load (CL) Mode
of Operation", RFC 6661, July 2012.
[RFC6662] Charny, A., Zhang, J., Karagiannis, G., Twente, U., Menth,
M., and T. Taylor, Ed., "Pre-Congestion Notification (PCN)
Boundary-Node Behaviour for the Single Marking (SM) Mode
of Operation", RFC 6662, July 2012.
6.2. Informative References
[RFC3084] Chan, K., Seligson, J., Durham, D., Gai, S., McCloghrie,
K., Herzog, S., Reichmeyer, F., Yavatkar, R., and A.
Smith, "COPS Usage for Policy Provisioning (COPS-PR)", RFC
3084, March 2001.
[RFC4860] Le Faucheur, F., Davie, B., Bose, P., Christou, C., and M.
Davenport, "Generic Aggregate Resource ReSerVation
Protocol (RSVP) Reservations", RFC 4860, May 2007.
[RFC5431] Sun, D., "Diameter ITU-T Rw Policy Enforcement Interface
Application", RFC 5431, March 2009.
Authors' Addresses π
Georgios Karagiannis
University of Twente
P.O. Box 217
7500 AE Enschede,
The Netherlands
EMail: g.karagiannis@utwente.nl
Tom Taylor
Huawei Technologies
Ottawa
Canada
EMail: tom.taylor.stds@gmail.com
Kwok Ho Chan
Consultant
EMail: khchan.work@gmail.com
Michael Menth
University of Tuebingen
Sand 13
72076 Tuebingen
Germany
Phone: +49-7071-2970505
EMail: menth@uni-tuebingen.de
Philip Eardley
BT
B54/77, Sirius House Adastral Park Martlesham Heath
Ipswich, Suffolk IP5 3RE
United Kingdom
EMail: philip.eardley@bt.com
π¦ where this page comes from
- ietf: rfc6663 2012-07
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms