summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc4860.txt
diff options
context:
space:
mode:
authorThomas Voss <mail@thomasvoss.com> 2024-11-27 20:54:24 +0100
committerThomas Voss <mail@thomasvoss.com> 2024-11-27 20:54:24 +0100
commit4bfd864f10b68b71482b35c818559068ef8d5797 (patch)
treee3989f47a7994642eb325063d46e8f08ffa681dc /doc/rfc/rfc4860.txt
parentea76e11061bda059ae9f9ad130a9895cc85607db (diff)
doc: Add RFC documents
Diffstat (limited to 'doc/rfc/rfc4860.txt')
-rw-r--r--doc/rfc/rfc4860.txt1795
1 files changed, 1795 insertions, 0 deletions
diff --git a/doc/rfc/rfc4860.txt b/doc/rfc/rfc4860.txt
new file mode 100644
index 0000000..b07349d
--- /dev/null
+++ b/doc/rfc/rfc4860.txt
@@ -0,0 +1,1795 @@
+
+
+
+
+
+
+Network Working Group F. Le Faucheur
+Request for Comments: 4860 B. Davie
+Category: Standards Track Cisco Systems, Inc.
+ P. Bose
+ Lockheed Martin
+ C. Christou
+ M. Davenport
+ Booz Allen Hamilton
+ May 2007
+
+
+ Generic Aggregate Resource ReSerVation Protocol (RSVP) Reservations
+
+Status of This Memo
+
+ This document specifies an Internet standards track protocol for the
+ Internet community, and requests discussion and suggestions for
+ improvements. Please refer to the current edition of the "Internet
+ Official Protocol Standards" (STD 1) for the standardization state
+ and status of this protocol. Distribution of this memo is unlimited.
+
+Copyright Notice
+
+ Copyright (C) The IETF Trust (2007).
+
+Abstract
+
+ RFC 3175 defines aggregate Resource ReSerVation Protocol (RSVP)
+ reservations allowing resources to be reserved in a Diffserv network
+ for a given Per Hop Behavior (PHB), or given set of PHBs, from a
+ given source to a given destination. RFC 3175 also defines how end-
+ to-end RSVP reservations can be aggregated onto such aggregate
+ reservations when transiting through a Diffserv cloud. There are
+ situations where multiple such aggregate reservations are needed for
+ the same source IP address, destination IP address, and PHB (or set
+ of PHBs). However, this is not supported by the aggregate
+ reservations defined in RFC 3175. In order to support this, the
+ present document defines a more flexible type of aggregate RSVP
+ reservations, referred to as generic aggregate reservation. Multiple
+ such generic aggregate reservations can be established for a given
+ PHB (or set of PHBs) from a given source IP address to a given
+ destination IP address. The generic aggregate reservations may be
+ used to aggregate end-to-end RSVP reservations. This document also
+ defines the procedures for such aggregation. The generic aggregate
+ reservations may also be used end-to-end directly by end-systems
+ attached to a Diffserv network.
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 1]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+Table of Contents
+
+ 1. Introduction ....................................................3
+ 1.1. Related IETF Documents .....................................6
+ 1.2. Organization of This Document ..............................6
+ 1.3. Requirements Language ......................................7
+ 2. Object Definition ...............................................7
+ 2.1. SESSION Class ..............................................8
+ 2.2. SESSION-OF-INTEREST (SOI) Class ...........................11
+ 3. Processing Rules for Handling Generic Aggregate RSVP
+ Reservations ...................................................13
+ 3.1. Extensions to Path and Resv Processing ....................13
+ 4. Procedures for Aggregation over Generic Aggregate RSVP
+ Reservations ...................................................14
+ 5. Example Usage Of Multiple Generic Aggregate Reservations
+ per PHB from a Given Aggregator to a Given Deaggregator ........19
+ 6. Security Considerations ........................................21
+ 7. IANA Considerations ............................................24
+ 8. Acknowledgments ................................................25
+ 9. Normative References ...........................................26
+ 10. Informative References ........................................26
+ Appendix A. Example Signaling Flow ................................28
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 2]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+1. Introduction
+
+ [RSVP-AGG] defines RSVP aggregate reservations that allow resources
+ to be reserved in a Diffserv network for a flow characterized by its
+ 3-tuple <source IP address, destination IP address, Diffserv Code
+ Point>.
+
+ [RSVP-AGG] also defines the procedures for aggregation of end-to-end
+ (E2E) RSVP reservations onto such aggregate reservations when
+ transiting through a Diffserv cloud. Such aggregation is illustrated
+ in Figure 1. This document reuses the terminology defined in
+ [RSVP-AGG].
+
+ --------------------------
+ / Aggregation \
+ |----| | Region | |----|
+ H--| R |\ |-----| |------| /| R |-->H
+ H--| |\\| | |---| |---| | |//| |-->H
+ |----| \| | | I | | I | | |/ |----|
+ | Agg |======================>| Deag |
+ /| | | | | | | |\
+ H--------//| | |---| |---| | |\\-------->H
+ H--------/ |-----| |------| \-------->H
+ | |
+ \ /
+ --------------------------
+
+ H = Host requesting end-to-end RSVP reservations
+ R = RSVP router
+ Agg = Aggregator
+ Deag = Deaggregator
+ I = Interior Router
+
+ --> = E2E RSVP reservation
+ ==> = Aggregate RSVP reservation
+
+ Figure 1 : Aggregation of E2E Reservations
+ over Aggregate RSVP Reservations
+
+ These aggregate reservations use a SESSION type specified in
+ [RSVP-AGG] that contains the receiver (or Deaggregator) IP address
+ and the Diffserv Code Point (DSCP) of the Per Hop Behavior (PHB) from
+ which Diffserv resources are to be reserved. For example, in the
+ case of IPv4, the SESSION object is specified as:
+
+
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 3]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ o Class = SESSION,
+ C-Type = RSVP-AGGREGATE-IP4
+
+ +-------------+-------------+-------------+-------------+
+ | IPv4 Session Address (4 bytes) |
+ +-------------+-------------+-------------+-------------+
+ | /////////// | Flags | ///////// | DSCP |
+ +-------------+-------------+-------------+-------------+
+
+ These aggregate reservations use SENDER_TEMPLATE and FILTER_SPEC
+ types, specified in [RSVP-AGG], that contain only the sender (or
+ Aggregator) IP address. For example, in the case of IPv4, the
+ SENDER_TEMPLATE object is specified as:
+
+ o Class = SENDER_TEMPLATE,
+ C-Type = RSVP-AGGREGATE-IP4
+
+ +-------------+-------------+-------------+-------------+
+ | IPv4 Aggregator Address (4 bytes) |
+ +-------------+-------------+-------------+-------------+
+
+ Thus, it is possible to establish, from a given source IP address to
+ a given destination IP address, separate such aggregate reservations
+ for different PHBs (or different sets of PHBs). However, from a
+ given source IP address to a given IP destination address, only a
+ single [RSVP-AGG] aggregate reservation can be established for a
+ given PHB (or given set of PHBs).
+
+ Situations have since been identified where multiple such aggregate
+ reservations are needed for the same source IP address, destination
+ IP address, and PHB (or set of PHBs). One example is where E2E
+ reservations using different preemption priorities (as per
+ [RSVP-PREEMP]) need to be aggregated through a Diffserv cloud using
+ the same PHB. Using multiple aggregate reservations for the same PHB
+ allows enforcement of the different preemption priorities within the
+ aggregation region. In turn, this allows more efficient management
+ of the Diffserv resources, and in periods of resource shortage, this
+ allows sustainment of a larger number of E2E reservations with higher
+ preemption priorities.
+
+ For example, [SIG-NESTED] discusses in detail how end-to-end RSVP
+ reservations can be established in a nested VPN environment through
+ RSVP aggregation. In particular, [SIG-NESTED] describes how multiple
+ parallel generic aggregate reservations (for the same PHB), each with
+ different preemption priorities, can be used to efficiently support
+ the preemption priorities of end-to-end reservations.
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 4]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ This document addresses this requirement for multiple aggregate
+ reservations for the same PHB (or same set of PHBs), by defining a
+ more flexible type of aggregate RSVP reservations, referred to as
+ generic aggregate reservations. This is achieved primarily by adding
+ the notions of a Virtual Destination Port and of an Extended Virtual
+ Destination Port in the RSVP SESSION object.
+
+ The notion of Virtual Destination Port was introduced in [RSVP-IPSEC]
+ to address a similar requirement (albeit in a different context) for
+ identification and demultiplexing of sessions beyond the IP
+ destination address. This document reuses this notion from
+ [RSVP-IPSEC] for identification and demultiplexing of generic
+ aggregate sessions beyond the IP destination address and PHB. This
+ allows multiple generic aggregate reservations to be established for
+ a given PHB (or set of PHBs), from a given source IP address to a
+ given destination IP address.
+
+ [RSVP-TE] introduced the concept of an Extended Tunnel ID (in
+ addition to the tunnel egress address and the Tunnel ID) in the
+ SESSION object used to establish MPLS Traffic Engineering tunnels
+ with RSVP. The Extended Tunnel ID provides a very convenient
+ mechanism for the tunnel ingress node to narrow the scope of the
+ session to the ingress-egress pair. The ingress node can achieve
+ this by using one of its own IP addresses as a globally unique
+ identifier and including it in the Extended Tunnel ID and therefore
+ within the SESSION object. This document reuses this notion of
+ Extended Tunnel ID from [RSVP-TE], simply renaming it Extended
+ Virtual Destination Port. This provides a convenient mechanism to
+ narrow the scope of a generic aggregate session to an Aggregator-
+ Deaggregator pair.
+
+ The RSVP SESSION object for generic aggregate reservations uses the
+ PHB Identification Code (PHB-ID) defined in [PHB-ID] to identify the
+ PHB, or set of PHBs, from which the Diffserv resources are to be
+ reserved. This is instead of using the Diffserv Code Point (DSCP) as
+ per [RSVP-AGG]. Using the PHB-ID instead of the DSCP allows explicit
+ indication of whether the Diffserv resources belong to a single PHB
+ or to a set of PHBs. It also facilitates handling of situations
+ where a generic aggregate reservation spans two (or more) Diffserv
+ domains that use different DSCP values for the same Diffserv PHB (or
+ set of PHBs) from which resources are reserved. This is because the
+ PHB-ID allows conveying of the PHB (or set of PHBs) independently of
+ what DSCP value(s) are used locally for that PHB (or set of PHBs).
+
+ The generic aggregate reservations may be used to aggregate end-to-
+ end RSVP reservations. This document also defines the procedures for
+ such aggregation. These procedures are based on those of [RSVP-AGG],
+ and this document only specifies the differences from those.
+
+
+
+Le Faucheur, et al. Standards Track [Page 5]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ The generic aggregate reservations may also be used end-to-end
+ directly by end-systems attached to a Diffserv network.
+
+1.1. Related IETF Documents
+
+ This document is heavily based on [RSVP-AGG]. It reuses [RSVP-AGG]
+ wherever applicable and only specifies the necessary extensions
+ beyond [RSVP-AGG].
+
+ The mechanisms defined in [BW-REDUC] allow an existing reservation to
+ be reduced in allocated bandwidth by RSVP routers in lieu of tearing
+ that reservation down. These mechanisms are applicable to the
+ generic aggregate reservations defined in the present document.
+
+ [RSVP-TUNNEL] describes a general approach to running RSVP over
+ various types of tunnels. One of these types of tunnel, referred to
+ as a "type 2 tunnel", has some similarity with the generic aggregate
+ reservations described in this document. The similarity stems from
+ the fact that a single, aggregate reservation is made for the tunnel
+ while many individual flows are carried over that tunnel. However,
+ [RSVP-TUNNEL] does not address the use of Diffserv-based
+ classification and scheduling in the core of a network (between
+ tunnel endpoints), but rather relies on a UDP/IP tunnel header for
+ classification. This is why [RSVP-AGG] required additional objects
+ and procedures beyond those of [RSVP-TUNNEL]. Like [RSVP-AGG], this
+ document also assumes the use of Diffserv-based classification and
+ scheduling in the aggregation region and, thus, requires additional
+ objects and procedures beyond those of [RSVP-TUNNEL].
+
+ As explained earlier, this document reuses the notion of Virtual
+ Destination Port from [RSVP-IPSEC] and the notion of Extended Tunnel
+ ID from [RSVP-TE].
+
+1.2. Organization Of This Document
+
+ Section 2 defines the new RSVP objects related to generic aggregate
+ reservations and to aggregation of E2E reservations onto those.
+ Section 3 describes the processing rules for handling of generic
+ aggregate reservations. Section 4 specifies the procedures for
+ aggregation of end-to-end RSVP reservations over generic aggregate
+ RSVP reservations. Section 5 provides example usage of how the
+ generic aggregate reservations may be used.
+
+ The Security Considerations and the IANA Considerations are discussed
+ in Sections 6 and 7, respectively.
+
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 6]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ Finally, Appendix A provides an example signaling flow that
+ illustrates aggregation of E2E RSVP reservations onto generic
+ aggregate RSVP reservations.
+
+1.3. 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 [KEYWORDS].
+
+2. Object Definition
+
+ This document reuses the RSVP-AGGREGATE-IP4 FILTER_SPEC, RSVP-
+ AGGREGATE-IP6 FILTER_SPEC, RSVP-AGGREGATE-IP4 SENDER_TEMPLATE, and
+ RSVP-AGGREGATE-IP6 SENDER_TEMPLATE objects defined in [RSVP-AGG].
+
+ This document defines:
+
+ - two new objects (GENERIC-AGGREGATE-IP4 SESSION and GENERIC-
+ AGGREGATE-IP6 SESSION) under the existing SESSION Class, and
+
+ - two new objects (GENERIC-AGG-IP4-SOI and GENERIC-AGG-IP6-SOI)
+ under a new SESSION-OF-INTEREST Class.
+
+ Detailed description of these objects is provided below in this
+ section.
+
+ The GENERIC-AGGREGATE-IP4 SESSION and GENERIC-AGGREGATE-IP6 SESSION
+ objects are applicable to all types of RSVP messages.
+
+ This specification defines the use of the GENERIC-AGG-IP4-SOI and
+ GENERIC-AGG-IP6-SOI objects in two circumstances:
+
+ - inside an E2E PathErr message that contains an error code of
+ NEW-AGGREGATE-NEEDED in order to convey the session of a new
+ generic aggregate reservation that needs to be established.
+
+ - inside an E2E Resv message in order to convey the session of the
+ generic aggregate reservation onto which this E2E reservation
+ needs to be mapped.
+
+ Details of the corresponding procedures can be found in Section 4.
+
+ However, it is envisioned that the ability to signal, inside RSVP
+ messages, the Session of another reservation (which has some
+ relationship with the current RSVP reservation) might have some other
+ applicability in the future. Thus, those objects have been specified
+ in a more generic manner under a flexible SESSION-OF-INTEREST class.
+
+
+
+Le Faucheur, et al. Standards Track [Page 7]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ All the new objects defined in this document are optional with
+ respect to RSVP so that general RSVP implementations that are not
+ concerned with generic aggregate reservations do not have to support
+ these objects. RSVP routers supporting generic aggregate IPv4 or
+ IPv6 reservations MUST support the GENERIC-AGGREGATE-IP4 SESSION
+ object or the GENERIC-AGGREGATE-IP6 SESSION object, respectively.
+ RSVP routers supporting RSVP aggregation over generic aggregate IPv4
+ or IPv6 reservations MUST support the GENERIC-AGG-IP4-SOI object or
+ GENERIC-AGG-IP6-SOI object, respectively.
+
+2.1. SESSION Class
+
+ o GENERIC-AGGREGATE-IP4 SESSION object:
+ Class = 1 (SESSION)
+ C-Type = 17
+
+ 0 7 8 15 16 23 24 31
+ +-------------+-------------+-------------+-------------+
+ | IPv4 DestAddress (4 bytes) |
+ +-------------+-------------+-------------+-------------+
+ | Reserved | Flags | PHB-ID |
+ +-------------+-------------+-------------+-------------+
+ | Reserved | vDstPort |
+ +-------------+-------------+-------------+-------------+
+ | Extended vDstPort |
+ +-------------+-------------+-------------+-------------+
+ 0 7 8 15 16 23 24 31
+
+ IPv4 DestAddress (IPv4 Destination Address)
+
+ IPv4 address of the receiver (or Deaggregator).
+
+ Reserved
+
+ An 8-bit field. All bits MUST be set to 0 on transmit. This
+ field MUST be ignored on receipt.
+
+ Flags
+
+ An 8-bit field. The content and processing of this field are the
+ same as for the Flags field of the IPv4/UDP SESSION object (see
+ [RSVP]).
+
+
+
+
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 8]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ PHB-ID (Per Hop Behavior Identification Code)
+
+ A 16-bit field containing the Per Hop Behavior Identification Code
+ of the PHB, or of the set of PHBs, from which Diffserv resources
+ are to be reserved. This field MUST be encoded as specified in
+ Section 2 of [PHB-ID].
+
+ Reserved
+
+ A 16-bit field. All bits MUST be set to 0 on transmit. This
+ field MUST be ignored on receipt.
+
+ VDstPort (Virtual Destination Port)
+
+ A 16-bit identifier used in the SESSION that remains constant over
+ the life of the generic aggregate reservation.
+
+ Extended vDstPort (Extended Virtual Destination Port)
+
+ A 32-bit identifier used in the SESSION that remains constant over
+ the life of the generic aggregate reservation. A sender (or
+ Aggregator) that wishes to narrow the scope of a SESSION to the
+ sender-receiver pair (or Aggregator-Deaggregator pair) SHOULD
+ place its IPv4 address here as a network unique identifier. A
+ sender (or Aggregator) that wishes to use a common session with
+ other senders (or Aggregators) in order to use a shared
+ reservation across senders (or Aggregators) MUST set this field to
+ all zeros.
+
+ o GENERIC-AGGREGATE-IP6 SESSION object:
+ Class = 1 (SESSION)
+ C-Type = 18
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 9]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ 0 7 8 15 16 23 24 31
+ +-------------+-------------+-------------+-------------+
+ | |
+ + +
+ | |
+ + IPv6 DestAddress (16 bytes) +
+ | |
+ + +
+ | |
+ +-------------+-------------+-------------+-------------+
+ | Reserved | Flags | PHB-ID |
+ +-------------+-------------+-------------+-------------+
+ | Reserved | vDstPort |
+ +-------------+-------------+-------------+-------------+
+ | |
+ + +
+ | Extended vDstPort |
+ + +
+ | (16 bytes) |
+ + +
+ | |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ 0 7 8 15 16 25 26 31
+
+ IPv6 DestAddress (IPv6 Destination Address)
+
+ IPv6 address of the receiver (or Deaggregator).
+
+ Reserved
+
+ An 8-bit field. All bits MUST be set to 0 on transmit. This
+ field MUST be ignored on receipt.
+
+ Flags
+
+ An 8-bit field. The content and processing of this field are the
+ same as for the Flags field of the IPv6/UDP SESSION object (see
+ [RSVP]).
+
+ PHB-ID (Per Hop Behavior Identification Code)
+
+ A 16-bit field containing the Per Hop Behavior Identification Code
+ of the PHB, or of the set of PHBs, from which Diffserv resources
+ are to be reserved. This field MUST be encoded as specified in
+ Section 2 of [PHB-ID].
+
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 10]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ Reserved
+
+ A 16-bit field. All bits MUST be set to 0 on transmit. This
+ field MUST be ignored on receipt.
+
+ VDstPort (Virtual Destination Port)
+
+ A 16-bit identifier used in the SESSION that remains constant over
+ the life of the generic aggregate reservation.
+
+ Extended vDstPort (Extended Virtual Destination Port)
+
+ A 128-bit identifier used in the SESSION that remains constant
+ over the life of the generic aggregate reservation. A sender (or
+ Aggregator) that wishes to narrow the scope of a SESSION to the
+ sender-receiver pair (or Aggregator-Deaggregator pair) SHOULD
+ place its IPv6 address here as a network unique identifier. A
+ sender (or Aggregator) that wishes to use a common session with
+ other senders (or Aggregators) in order to use a shared
+ reservation across senders (or Aggregators) MUST set this field to
+ all zeros.
+
+2.2. SESSION-OF-INTEREST (SOI) Class
+
+ o GENERIC-AGG-IP4-SOI object:
+ Class = 132
+ C-Type = 1
+
+ 0 7 8 15 16 23 24 31
+ +-------------+-------------+-------------+-------------+
+ | | SOI |GEN-AGG-IP4- |
+ | Length (bytes) | Class-Num |SOI C-Type |
+ +-------------+-------------+-------------+-------------+
+ | |
+ // Content of a GENERIC-AGGREGATE-IP4 SESSION Object //
+ | |
+ +-------------+-------------+-------------+-------------+
+
+ Content of a GENERIC-AGGREGATE-IP4 SESSION Object:
+
+ This field contains a copy of the SESSION object of the session
+ that is of interest for the reservation. In the case of a
+ GENERIC-AGG-IP4-SOI, the session of interest conveyed in this
+ field is a GENERIC-AGGREGATE-IP4 SESSION.
+
+
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 11]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ o GENERIC-AGG-IP6-SOI object:
+ Class = 132
+ C-Type = 2
+
+ 0 7 8 15 16 23 24 31
+ +-------------+-------------+-------------+-------------+
+ | | SOI |GEN-AGG-IP6- |
+ | Length (bytes) | Class-Num |SOI C-Type |
+ +-------------+-------------+-------------+-------------+
+ | |
+ // Content of a GENERIC-AGGREGATE-IP6 SESSION Object //
+ | |
+ +-------------+-------------+-------------+-------------+
+
+ Content of a GENERIC-AGGREGATE-IP6 SESSION Object:
+
+ This field contains a copy of the SESSION object of the session
+ that is of interest for the reservation. In the case of a
+ GENERIC-AGG-IP6-SOI, the session of interest conveyed in this
+ field is a GENERIC-AGGREGATE-IP6 SESSION.
+
+ For example, if a SESSION-OF-INTEREST object is used inside an E2E
+ Resv message (as per the procedures defined in Section 4) to indicate
+ which generic aggregate IPv4 session the E2E reservation is to be
+ mapped onto, then the GENERIC-AGG-IP4-SOI object will be used, and it
+ will be encoded like this:
+
+ 0 7 8 15 16 23 24 31
+ +-------------+-------------+-------------+-------------+
+ | | SOI |GEN-AGG-IP4- |
+ | Length (bytes) | Class-Num |SOI C-Type |
+ +-------------+-------------+-------------+-------------+
+ | IPv4 DestAddress (4 bytes) |
+ +-------------+-------------+-------------+--+----------+
+ | Reserved | Flags | PHB-ID |
+ +-------------+-------------+-------------+-------------+
+ | Reserved | vDstPort |
+ +-------------+-------------+-------------+-------------+
+ | Extended vDstPort |
+ +-------------+-------------+-------------+-------------+
+ 0 7 8 15 16 23 24 31
+
+ Note that a SESSION-OF-INTEREST object is not a SESSION object in
+ itself. It does not replace the SESSION object in RSVP messages. It
+ does not modify the usage of the SESSION object in RSVP messages. It
+ simply allows conveying the Session of another RSVP reservation
+ inside RSVP signaling messages, for some particular purposes. In the
+ context of this document, it is used to convey, inside an E2E RSVP
+
+
+
+Le Faucheur, et al. Standards Track [Page 12]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ message pertaining to an end-to-end reservation, the Session of a
+ generic aggregate reservation associated with the E2E reservation.
+ Details for the corresponding procedures are specified in Section 4.
+
+3. Processing Rules for Handling Generic Aggregate RSVP Reservations
+
+ This section presents extensions to the processing of RSVP messages
+ required by [RSVP] and presented in [RSVP-PROCESS]. These extensions
+ are required in order to properly process the GENERIC-AGGREGATE-IP4
+ or GENERIC-AGGREGATE-IP6 SESSION object and the RSVP-AGGREGATE-IP4 or
+ RSVP-AGGREGATE-IP6 FILTER_SPEC object. Values for referenced error
+ codes can be found in [RSVP]. As with the other RSVP documents,
+ values for internally reported (API) errors are not defined.
+
+ When referring to the new GENERIC-AGGREGATE-IP4 and GENERIC-
+ AGGREGATE-IP6 SESSION objects, IP version will not be included, and
+ they will be referred to simply as GENERIC-AGGREGATE SESSION, unless
+ a specific distinction between IPv4 and IPv6 is being made.
+
+ When referring to the [RSVP-AGG] RSVP-AGGREGATE-IP4 and RSVP-
+ AGGREGATE-IP6 SESSION, FILTER_SPEC, and SENDER_TEMPLATE objects, IP
+ version will not be included, and they will be referred to simply as
+ RSVP-AGGREGATE, unless a specific distinction between IPv4 and IPv6
+ is being made.
+
+3.1. Extensions to Path and Resv Processing
+
+ The following PATH message processing changes are defined:
+
+ o When a session is defined using the GENERIC-AGGREGATE SESSION
+ object, only the [RSVP-AGG] RSVP-AGGREGATE SENDER_TEMPLATE may
+ be used. When this condition is violated in a PATH message
+ received by an RSVP end-station, the RSVP end-station SHOULD
+ report a "Conflicting C-Type" API error to the application.
+ When this condition is violated in a PATH message received by an
+ RSVP router, the RSVP router MUST consider this as a message
+ formatting error.
+
+ o For PATH messages that contain the GENERIC-AGGREGATE SESSION
+ object, the VDstPort value, the Extended VDstPort value, and the
+ PHB-ID value should be recorded (in addition to the
+ destination/Deaggregator address and source/Aggregator address).
+ These values form part of the recorded state of the session.
+ The PHB-ID may need to be passed to traffic control; however the
+ vDstPort and Extended VDstPort are not passed to traffic control
+ since they do not appear inside the data packets of the
+ corresponding reservation.
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 13]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ The following changes to RESV message processing are defined:
+
+ o When a RESV message contains a [RSVP-AGG] RSVP-AGGREGATE
+ FILTER_SPEC, the session MUST be defined using either the RSVP-
+ AGGREGATE SESSION object (as per [RSVP-AGG]) or the GENERIC-
+ AGGREGATE SESSION object (as per this document). If this
+ condition is not met, an RSVP router or end-station MUST
+ consider that there is a message formatting error.
+
+ o When the RSVP-AGGREGATE FILTER_SPEC is used and the SESSION type
+ is GENERIC-AGGREGATE, each node uses data classifiers as per the
+ following:
+
+ * to perform Diffserv classification the node MUST rely on the
+ Diffserv data classifier based on the DSCP only. The relevant
+ DSCP value(s) are those that are associated with the PHB-ID of
+ the generic aggregate reservation.
+
+ * If the node also needs to perform fine-grain classification
+ (for example, to perform fine-grain input policing at a trust
+ boundary) then the node MUST create a data classifier
+ described by the 3-tuple <DestAddress, SrcAddress, DSCP>.
+
+ The relevant DSCP value(s) are those that are associated with
+ the PHB-ID of the generic aggregate reservation.
+
+ Note that if multiple generic aggregate reservations are
+ established with different Virtual Destination Ports (and/or
+ different Extended Virtual Destination Ports) but with the
+ same <DestAddress, SrcAddress, PHB-ID>, then those cannot be
+ distinguished by the classifier. If the router is using the
+ classifier for policing purposes, the router will therefore
+ police those together and MUST program the policing rate to
+ the sum of the reserved rate across all the corresponding
+ reservations.
+
+4. Procedures for Aggregation over Generic Aggregate RSVP Reservations
+
+ The procedures for aggregation of E2E reservations over generic
+ aggregate RSVP reservations are the same as the procedures specified
+ in [RSVP-AGG] with the exceptions of the procedure changes listed in
+ this section.
+
+ As specified in [RSVP-AGG], the Deaggregator is responsible for
+ mapping a given E2E reservation on a given aggregate reservation.
+ The Deaggregator requests establishment of a new aggregate
+ reservation by sending to the Aggregator an E2E PathErr message with
+ an error code of NEW-AGGREGATE-NEEDED. In [RSVP-AGG], the
+
+
+
+Le Faucheur, et al. Standards Track [Page 14]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ Deaggregator conveys the DSCP of the new requested aggregate
+ reservation by including a DCLASS Object in the E2E PathErr and
+ encoding the corresponding DSCP inside. This document modifies and
+ extends this procedure. The Deaggregator MUST include in the E2E
+ PathErr message a SESSION-OF-INTEREST object that contains the
+ GENERIC-AGGREGATE SESSION to be used for establishment of the
+ requested generic aggregate reservation. Since this GENERIC-
+ AGGREGATE SESSION contains the PHB-ID, the DCLASS object need not be
+ included in the PathErr message.
+
+ Note that the Deaggregator can easily ensure that different
+ Aggregators use different sessions for their Aggregate Path towards a
+ given Deaggregator. This is because the Deaggregator can easily
+ select VDstPort and/or Extended VDstPort numbers which are different
+ for each Aggregator (for example, by using the Aggregator address as
+ the Extended VDstPort) and can communicate those inside the GENERIC-
+ AGGREGATE SESSION included in the SESSION-OF-INTEREST object. This
+ provides an easy solution to establish separate reservations from
+ every Aggregator to a given Deaggregator. Conversely, if reservation
+ sharing were needed across multiple Aggregators, the Deaggregator
+ could facilitate this by allocating the same VDstPort and Extended
+ VDstPort to the multiple Aggregators, and thus including the same
+ GENERIC-AGGREGATE SESSION inside the SESSION-OF-INTEREST object in
+ the E2E PathErr messages sent to these Aggregators. The Aggregators
+ could then all establish an Aggregate Path with the same GENERIC-
+ AGGREGATE SESSION.
+
+ Therefore, various sharing scenarios can easily be supported.
+ Policies followed by the Deaggregator to determine which Aggregators
+ need shared or separate reservations are beyond the scope of this
+ document.
+
+ The Deaggregator MAY also include in the E2E PathErr message (with an
+ error code of NEW-AGGREGATE-NEEDED) additional RSVP objects which are
+ to be used for establishment of the newly needed generic aggregate
+ reservation. For example, the Deaggregator MAY include in the E2E
+ PathErr an RSVP Signaled Preemption Priority Policy Element (as
+ specified in [RSVP-PREEMP]).
+
+ The [RSVP-AGG] procedures for processing of an E2E PathErr message
+ received with an error code of NEW-AGGREGATE-NEEDED by the Aggregator
+ are extended correspondingly. On receipt of such a message
+ containing a SESSION-OF-INTEREST object, the Aggregator MUST trigger
+ establishment of a generic aggregate reservation. In particular, it
+ MUST start sending aggregate Path messages with the GENERIC-AGGREGATE
+ SESSION found in the received SESSION-OF-INTEREST object. When an
+ RSVP Signaled Preemption Priority Policy Element is contained in the
+ received E2E PathErr message, the Aggregator MUST include this object
+
+
+
+Le Faucheur, et al. Standards Track [Page 15]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ in the Aggregate Path for the corresponding generic aggregate
+ reservation. When other additional objects are contained in the
+ received E2E PathErr message and those can be unambiguously
+ interpreted as related to the new needed generic aggregate
+ reservation (as opposed to related to the E2E reservation), the
+ Aggregator SHOULD include those in the Aggregate Path for the
+ corresponding generic aggregate reservation. The Aggregator MUST use
+ as the Source Address (i.e., as the Aggregator Address in the Sender-
+ Template) for the generic aggregate reservation, the address it uses
+ to identify itself as the PHOP (RSVP previous hop) when forwarding
+ the E2E Path messages corresponding to the E2E PathErr message.
+
+ The Deaggregator follows the same procedures as described in
+ [RSVP-AGG] for establishing, maintaining and clearing the aggregate
+ Resv state. However, a Deaggregator behaving according to the
+ present specification MUST use the generic aggregate reservations and
+ hence use the GENERIC-AGGREGATE SESSION specified earlier in this
+ document.
+
+ This document also modifies the procedures of [RSVP-AGG] related to
+ exchange of E2E Resv messages between Deaggregator and Aggregator.
+ The Deaggregator MUST include the new SESSION-OF-INTEREST object in
+ the E2E Resv message, in order to indicate to the Aggregator the
+ generic aggregate session to map a given E2E reservation onto.
+ Again, since the GENERIC-AGGREGATE SESSION (included in the SESSION-
+ OF-INTEREST object) contains the PHB-ID, the DCLASS object need not
+ be included in the E2E Resv message. The Aggregator MUST interpret
+ the SESSION-OF-INTEREST object in the E2E Resv as indicating which
+ generic aggregate reservation session the corresponding E2E
+ reservation is mapped onto. The Aggregator MUST not include the
+ SESSION-OF-INTEREST object when sending an E2E Resv upstream towards
+ the sender.
+
+ Based on relevant policy, the Deaggregator may decide at some point
+ that an aggregate reservation is no longer needed and should be torn
+ down. In that case, the Deaggregator MUST send an aggregate
+ ResvTear. On receipt of the aggregate ResvTear, the Aggregator
+ SHOULD send an aggregate PathTear (unless the relevant policy
+ instructs the Aggregator to do otherwise or to wait for some time
+ before doing so, for example in order to speed up potential re-
+ establishment of the aggregate reservation in the future).
+
+ [RSVP-AGG] describes how the Aggregator and Deaggregator can
+ communicate their respective identities to each other. For example,
+ the Aggregator includes one of its IP addresses in the RSVP HOP
+ object in the E2E Path that is transmitted downstream and received by
+ the Deaggregator once it traversed the aggregation region.
+ Similarly, the Deaggregator identifies itself to the Aggregator by
+
+
+
+Le Faucheur, et al. Standards Track [Page 16]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ including one of its IP addresses in various fields, including the
+ ERROR SPECIFICATION of the E2E PathErr message (containing the NEW-
+ AGGREGATE-NEEDED Error Code) and in the RSVP HOP object of the E2E
+ Resv message. However, [RSVP-AGG] does not discuss which IP
+ addresses are to be selected by the Aggregator and Deaggregator for
+ such purposes. Because these addresses are intended to identify the
+ Aggregator and Deaggregator and not to identify any specific
+ interface on these devices, this document RECOMMENDS that the
+ Aggregator and Deaggregator SHOULD use interface-independent
+ addresses (for example, a loopback address) whenever they communicate
+ their respective identities to each other. This ensures that
+ respective identification of the Aggregator and Deaggregator is not
+ impacted by any interface state change on these devices. In turn,
+ this results in more stable operations and considerably reduced RSVP
+ signaling in the aggregation region. For example, if interface-
+ independent addresses are used by the Aggregator and the
+ Deaggregator, then a failure of an interface on these devices may
+ simply result in the rerouting of a given generic aggregate
+ reservation, but will not result in the generic aggregate reservation
+ having to be torn down and another one established. Moreover, it
+ will not result in a change of mapping of E2E reservations on generic
+ aggregate reservations (assuming the Aggregator and Deaggregator
+ still have reachability after the failure, and the Aggregator and
+ Deaggregator are still on the shortest path to the destination).
+
+ However, when identifying themselves to real RSVP neighbors (i.e.,
+ neighbors that are not on the other side of the aggregation region),
+ the Aggregator and Deaggregator SHOULD continue using interface-
+ dependent addresses as per regular [RSVP] procedures. This applies
+ for example when the Aggregator identifies itself downstream as a
+ PHOP for the generic aggregate reservation or identifies itself
+ upstream as a NHOP (RSVP next hop) for an E2E reservation. This also
+ applies when the Deaggregator identifies itself downstream as a PHOP
+ for the E2E reservation or identifies itself upstream as a NHOP for
+ the generic aggregate reservation. As part of the processing of
+ generic aggregate reservations, interior routers (i.e., routers
+ within the aggregation region) SHOULD continue using interface-
+ dependent addresses as per regular [RSVP] procedures.
+
+ More generally, within the aggregation region (i.e., between
+ Aggregator and Deaggregator) the operation of RSVP should be modeled
+ with the notion that E2E reservations are mapped to aggregate
+ reservations and are no longer tied to physical interfaces (as was
+ the case with regular RSVP). However, generic aggregate reservations
+ (within the aggregation region) as well as E2E reservations (outside
+ the aggregation region) retain the model of regular RVSP and remain
+ tied to physical interfaces.
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 17]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ As discussed above, generic aggregate reservations may be established
+ edge-to-edge as a result of the establishment of E2E reservations
+ (from outside the aggregation region) that are to be aggregated over
+ the aggregation region. However, generic aggregate reservations may
+ also be used end-to-end by end-systems directly attached to a
+ Diffserv domain, such as Public Switched Telephone Network (PSTN)
+ gateways. In that case, the generic aggregate reservations may be
+ established by the end-systems in response to application-level
+ triggers such as voice call signaling. Alternatively, generic
+ aggregate reservations may also be used edge-to-edge to manage
+ bandwidth in a Diffserv cloud even if RSVP is not used end-to-end. A
+ simple example of such a usage would be the static configuration of a
+ generic aggregate reservation for a certain bandwidth for traffic
+ from an ingress (Aggregator) router to an egress (Deaggregator)
+ router.
+
+ In this case, the establishment of the generic aggregate reservations
+ is controlled by configuration on the Aggregator and on the
+ Deaggregator. Configuration on the Aggregator triggers generation of
+ the aggregate Path message and provides sufficient information to the
+ Aggregator to derive the content of the GENERIC-AGGREGATE SESSION
+ object. This would typically include Deaggregator IP address, PHB-ID
+ and possibly VDstPort. Configuration on the Deaggregator would
+ instruct the Deaggregator to respond to a received generic aggregate
+ Path message and would provide sufficient information to the
+ Deaggregator to control the reservation. This may include bandwidth
+ to be reserved by the Deaggregator (for a given <Deaggregator,
+ PHB-ID, VDstPort> tuple).
+
+ In the absence of E2E microflow reservations, the Aggregator can use
+ a variety of policies to set the DSCP of packets passing into the
+ aggregation region and how they are mapped onto generic aggregate
+ reservations, thus determining whether they gain access to the
+ resources reserved by the aggregate reservation. These policies are
+ a matter of local configuration, as is typical for a device at the
+ edge of a Diffserv cloud.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 18]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+5. Example Usage Of Multiple Generic Aggregate Reservations per PHB
+ from a Given Aggregator to a Given Deaggregator
+
+ Let us consider the environment depicted in Figure 2 below. RSVP
+ aggregation is used to support E2E reservations between Cloud-1,
+ Cloud-2, and Cloud-3.
+
+ I----------I I----------I
+ I Cloud-1 I I Cloud-2 I
+ I----------I I----------I
+ | |
+ Agg-Deag-1------------ Agg-Deag-2
+ / \
+ / Aggregation |
+ | Region |
+ | |
+ | ---/
+ \ /
+ \Agg-Deag-3---------/
+ |
+ I----------I
+ I Cloud-3 I
+ I----------I
+
+ Figure 2 : Example Usage of Generic Aggregate IP Reservations
+
+ Let us assume that:
+
+ o The E2E reservations from Cloud-1 to Cloud-3 have a preemption
+ of either P1 or P2.
+
+ o The E2E reservations from Cloud-2 to Cloud-3 have a preemption
+ of either P1 or P2.
+
+ o The E2E reservations are only for Voice (which needs to be
+ treated in the aggregation region using the EF -Expedited
+ Forwarding- PHB).
+
+ o Traffic from the E2E reservations is encapsulated in aggregate
+ IP reservations from Aggregator to Deaggregator using Generic
+ Routing Encapsulation [GRE] tunneling.
+
+ Then, the following generic aggregate RSVP reservations may be
+ established from Agg-Deag-1 to Agg-Deag-3 for aggregation of the end-
+ to-end RSVP reservations:
+
+ (1) A first generic aggregate reservation for aggregation of Voice
+ reservations from Cloud-1 to Cloud-3 requiring use of P1:
+
+
+
+Le Faucheur, et al. Standards Track [Page 19]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ * GENERIC-AGGREGATE-IP4 SESSION:
+ IPv4 DestAddress = Agg-Deag-3
+ vDstPort = V1
+ PHB-ID = EF
+ Extended VDstPort = Agg-Deag-1
+
+ * STYLE = FF or SE
+
+ * IPv4/GPI FILTER_SPEC:
+ IPv4 SrcAddress = Agg-Deag-1
+
+ * POLICY_DATA (PREEMPTION_PRI) = P1
+
+ (2) A second generic aggregate reservation for aggregation of Voice
+ reservations from Cloud-1 to Cloud-3 requiring use of P2:
+
+ * GENERIC-AGGREGATE-IP4 SESSION:
+ IPv4 DestAddress = Agg-Deag-3
+ vDstPort = V2
+ PHB-ID = EF
+ Extended VDstPort = Agg-Deag-1
+
+ * STYLE = FF or SE
+
+ * IPv4/GPI FILTER_SPEC:
+ IPv4 SrcAddress = Agg-Deag-1
+
+ * POLICY_DATA (PREEMPTION_PRI) = P2
+
+ where V1 and V2 are arbitrary VDstPort values picked by Agg-
+ Deag-3.
+
+ The following generic aggregate RSVP reservations may be established
+ from Agg-Deag-2 to Agg-Deag-3 for aggregation of the end-to-end RSVP
+ reservations:
+
+ (3) A third generic aggregate reservation for aggregation of Voice
+ reservations from Cloud-2 to Cloud-3 requiring use of P1:
+
+ * GENERIC-AGGREGATE-IP4 SESSION:
+ IPv4 DestAddress = Agg-Deag-3
+ vDstPort = V3
+ PHB-ID = EF
+ Extended VDstPort = Agg-Deag-2
+
+ * STYLE = FF or SE
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 20]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ * IPv4/GPI FILTER_SPEC:
+ IPv4 SrcAddress = Agg-Deag-2
+
+ * POLICY_DATA (PREEMPTION_PRI) = P1
+
+ (4) A fourth generic aggregate reservation for aggregation of Voice
+ reservations from Cloud-2 to Cloud-3 requiring use of P2:
+
+ * GENERIC-AGGREGATE-IP4 SESSION:
+ IPv4 DestAddress = Agg-Deag-3
+ vDstPort = V4
+ PHB-ID = EF
+ Extended VDstPort = Agg-Deag-2
+
+ * STYLE = FF or SE
+
+ * IPv4/GPI FILTER_SPEC:
+ IPv4 SrcAddress = Agg-Deag-2
+
+ * POLICY_DATA (PREEMPTION_PRI) = P2
+
+ where V3 and V4 are arbitrary VDstPort values picked by Agg-
+ Deag-3.
+
+ Note that V3 and V4 could be equal to V1 and V2 (respectively)
+ since, in this example, the Extended VDstPort of the GENERIC-
+ AGGREGATE Session contains the address of the Aggregator and,
+ thus, ensures that different sessions are used from each
+ Aggregator.
+
+6. Security Considerations
+
+ In the environments addressed by this document, RSVP messages are
+ used to control resource reservations for generic aggregate
+ reservations and may be used to control resource reservations for E2E
+ reservations being aggregated over the generic aggregate
+ reservations. To ensure the integrity of the associated reservation
+ and admission control mechanisms, the RSVP Authentication mechanisms
+ defined in [RSVP-CRYPTO1] and [RSVP-CRYPTO2] may be used. These
+ protect RSVP message integrity hop-by-hop and provide node
+ authentication as well as replay protection, thereby protecting
+ against corruption and spoofing of RSVP messages. These hop-by-hop
+ integrity mechanisms can be naturally used to protect the RSVP
+ messages used for generic aggregate reservations and to protect RSVP
+ messages used for E2E reservations outside the aggregation region.
+ These hop-by-hop RSVP integrity mechanisms can also be used to
+ protect RSVP messages used for E2E reservations when those transit
+ through the aggregation region. This is because the Aggregator and
+
+
+
+Le Faucheur, et al. Standards Track [Page 21]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ Deaggregator behave as RSVP neighbors from the viewpoint of the E2E
+ flows (even if they are not necessarily IP neighbors).
+
+ [RSVP-CRYPTO1] discusses several approaches for key distribution.
+ First, the RSVP Authentication shared keys can be distributed
+ manually. This is the base option and its support is mandated for
+ any implementation. However, in some environments, this approach may
+ become a burden if keys frequently change over time. Alternatively,
+ a standard key management protocol for secure key distribution can be
+ used. However, existing key distribution protocols may not be
+ appropriate in all environments because of the complexity or
+ operational burden they involve.
+
+ The use of RSVP Authentication in parts of the network where there
+ may be one or more IP hops in between two RSVP neighbors raises an
+ additional challenge. This is because, with some RSVP messages such
+ as a Path message, an RSVP router does not know the RSVP next hop for
+ that message at the time of forwarding it. In fact, part of the role
+ of a Path message is precisely to discover the RSVP next hop (and to
+ dynamically re-discover it when it changes, say because of a routing
+ change). Hence, the RSVP router may not know which security
+ association to use when forwarding such a message. This applies in
+ particular to the case where RSVP Authentication mechanisms are to be
+ used for protection of RSVP E2E messages (e.g., E2E Path) while they
+ transit through an aggregation region and where the dynamic
+ Deaggregator determination procedure defined in [RSVP-AGG] is used.
+ This is because the Aggregator and the Deaggregator behave as RSVP
+ neighbors for the E2E reservation, while there may be one or more IP
+ hops in between them, and the Aggregator does not know ahead of time
+ which router is going to act as the Deaggregator.
+
+ In that situation, one approach is to share the same RSVP
+ Authentication shared key across all the RSVP routers of a part of
+ the network where there may be RSVP neighbors with IP hops in
+ between. For example, all the Aggregators or Deaggregators of an
+ aggregation region could share the same RSVP Authentication key,
+ while different per-neighbor keys could be used between any RSVP
+ router pair straddling the boundary between two administrative
+ domains that have agreed to use RSVP signaling.
+
+ When the same RSVP Authentication shared key is to be shared among
+ multiple RSVP neighbors, manual key distribution may be used. For
+ situations where RSVP is being used for multicast flows, it might
+ also be possible, in the future, to adapt a multicast key management
+ method (e.g. from IETF Multicast Security Working Group) for key
+ distribution with such multicast RSVP usage. For situations where
+ RSVP is being used for unicast flows across domain boundaries, it is
+ not currently clear how one might provide automated key management.
+
+
+
+Le Faucheur, et al. Standards Track [Page 22]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ Specification of a specific automated key management technique is
+ outside the scope of this document. Operators should consider these
+ key management issues when contemplating deployment of this
+ specification.
+
+ The RSVP Authentication mechanisms do not provide confidentiality.
+ If confidentiality is required, IPsec ESP [IPSEC-ESP] may be used,
+ although it imposes the burden of key distribution. It also faces
+ the additional issue discussed for key management above in the case
+ where there can be IP hops in between RSVP hops. In the future,
+ confidentiality solutions may be developed for the case where there
+ can be IP hops in between RSVP hops, perhaps by adapting
+ confidentiality solutions developed by the IETF MSEC Working Group.
+ Such confidentiality solutions for RSVP are outside the scope of this
+ document.
+
+ Protection against traffic analysis is also not provided by RSVP
+ Authentication. Since generic aggregate reservations are intended to
+ reserve resources collectively for a whole set of users or hosts,
+ malicious snooping of the corresponding RSVP messages could provide
+ more traffic analysis information than snooping of an E2E
+ reservation. When RSVP neighbors are directly attached, mechanisms
+ such as bulk link encryption might be used when protection against
+ traffic analysis is required. This approach could be used inside the
+ aggregation region for protection of the generic aggregate
+ reservations. It may also be used outside the aggregation region for
+ protection of the E2E reservation. However, it is not applicable to
+ the protection of E2E reservations while the corresponding E2E RSVP
+ messages transit through the aggregation region.
+
+ When generic aggregate reservations are used for aggregation of E2E
+ reservations, the security considerations discussed in [RSVP-AGG]
+ apply and are revisited here.
+
+ First, the loss of an aggregate reservation to an aggressor causes
+ E2E flows to operate unreserved, and the reservation of a great
+ excess of bandwidth may result in a denial of service. These issues
+ are not confined to the extensions defined in the present document:
+ RSVP itself has them. However, they may be exacerbated here by the
+ fact that each aggregate reservation typically facilitates
+ communication for many sessions. Hence, compromising one such
+ aggregate reservation can result in more damage than compromising a
+ typical E2E reservation. Use of the RSVP Authentication mechanisms
+ to protect against such attacks has been discussed above.
+
+ An additional security consideration specific to RSVP aggregation
+ involves the modification of the IP protocol number in RSVP Path
+ messages that traverse an aggregation region. Malicious modification
+
+
+
+Le Faucheur, et al. Standards Track [Page 23]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ of the IP protocol number in a Path message would cause the message
+ to be ignored by all subsequent RSVP devices on its path, preventing
+ reservations from being made. It could even be possible to correct
+ the value before it reached the receiver, making it difficult to
+ detect the attack. Note that, in theory, it might also be possible
+ for a node to modify the IP protocol number for non-RSVP messages as
+ well, thus interfering with the operation of other protocols. It is
+ RECOMMENDED that implementations of this specification only support
+ modification of the IP protocol number for RSVP Path, PathTear, and
+ ResvConf messages. That is, a general facility for modification of
+ the IP protocol number SHOULD NOT be made available.
+
+ Network operators deploying routers with RSVP aggregation capability
+ should be aware of the risks of inappropriate modification of the IP
+ protocol number and should take appropriate steps (physical security,
+ password protection, etc.) to reduce the risk that a router could be
+ configured by an attacker to perform malicious modification of the
+ protocol number.
+
+7. IANA Considerations
+
+ IANA modified the RSVP parameters registry, 'Class Names, Class
+ Numbers, and Class Types' subregistry, and assigned two new C-Types
+ under the existing SESSION Class (Class number 1), as described
+ below:
+
+ Class
+ Number Class Name Reference
+ ------ ----------------------- ---------
+
+ 1 SESSION [RFC2205]
+
+ Class Types or C-Types:
+
+ 17 GENERIC-AGGREGATE-IP4 [RFC4860]
+ 18 GENERIC-AGGREGATE-IP6 [RFC4860]
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 24]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ IANA also modified the RSVP parameters registry, 'Class Names, Class
+ Numbers, and Class Types' subregistry, and assigned one new Class
+ Number for the SESSION-OF-INTEREST class and two new C-Types for that
+ class, according to the table below:
+
+ Class
+ Number Class Name Reference
+ ------ ----------------------- ---------
+
+ 132 SESSION-OF-INTEREST [RFC4860]
+
+ Class Types or C-Types:
+
+ 1 GENERIC-AGG-IP4-SOI [RFC4860]
+ 2 GENERIC-AGG-IP6-SOI [RFC4860]
+
+ These allocations are in accordance with [RSVP-MOD].
+
+8. Acknowledgments
+
+ This document borrows heavily from [RSVP-AGG]. It also borrows the
+ concepts of Virtual Destination Port and Extended Virtual Destination
+ Port from [RSVP-IPSEC] and [RSVP-TE], respectively.
+
+ Also, we thank Fred Baker, Roger Levesque, Carol Iturralde, Daniel
+ Voce, Anil Agarwal, Alexander Sayenko, and Anca Zamfir for their
+ input into the content of this document. Thanks to Steve Kent for
+ insightful comments on usage of RSVP reservations in IPsec
+ environments.
+
+ Ran Atkinson, Fred Baker, Luc Billot, Pascal Delprat, and Eric Vyncke
+ provided guidance and suggestions for the security considerations
+ section.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 25]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+9. Normative References
+
+ [IPSEC-ESP] Kent, S., "IP Encapsulating Security Payload (ESP)",
+ RFC 4303, December 2005.
+
+ [KEYWORDS] Bradner, S., "Key words for use in RFCs to Indicate
+ Requirement Levels", BCP 14, RFC 2119, March 1997.
+
+ [PHB-ID] Black, D., Brim, S., Carpenter, B., and F. Le
+ Faucheur, "Per Hop Behavior Identification Codes", RFC
+ 3140, June 2001.
+
+ [RSVP] Braden, R., Ed., Zhang, L., Berson, S., Herzog, S.,
+ and S. Jamin, "Resource ReSerVation Protocol (RSVP) --
+ Version 1 Functional Specification", RFC 2205,
+ September 1997.
+
+ [RSVP-AGG] Baker, F., Iturralde, C., Le Faucheur, F., and B.
+ Davie, "Aggregation of RSVP for IPv4 and IPv6
+ Reservations", RFC 3175, September 2001.
+
+ [RSVP-CRYPTO1] Baker, F., Lindell, B., and M. Talwar, "RSVP
+ Cryptographic Authentication", RFC 2747, January 2000.
+
+ [RSVP-CRYPTO2] Braden, R. and L. Zhang, "RSVP Cryptographic
+ Authentication -- Updated Message Type Value", RFC
+ 3097, April 2001.
+
+ [RSVP-IPSEC] Berger, L. and T. O'Malley, "RSVP Extensions for IPSEC
+ Data Flows", RFC 2207, September 1997.
+
+ [RSVP-MOD] Kompella, K. and J. Lang, "Procedures for Modifying
+ the Resource reSerVation Protocol (RSVP)", BCP 96, RFC
+ 3936, October 2004.
+
+10. Informative References
+
+ [BW-REDUC] Polk, J. and S. Dhesikan, "A Resource Reservation
+ Protocol (RSVP) Extension for the Reduction of
+ Bandwidth of a Reservation Flow", RFC 4495, May 2006.
+
+ [GRE] Farinacci, D., Li, T., Hanks, S., Meyer, D., and P.
+ Traina, "Generic Routing Encapsulation (GRE)", RFC
+ 2784, March 2000.
+
+ [RSVP-PREEMP] Herzog, S., "Signaled Preemption Priority Policy
+ Element", RFC 3181, October 2001.
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 26]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ [RSVP-PROCESS] Braden, R. and L. Zhang, "Resource ReSerVation
+ Protocol (RSVP) -- Version 1 Message Processing
+ Rules", RFC 2209, September 1997.
+
+ [RSVP-TE] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan,
+ V., and G. Swallow, "RSVP-TE: Extensions to RSVP for
+ LSP Tunnels", RFC 3209, December 2001.
+
+ [RSVP-TUNNEL] Terzis, A., Krawczyk, J., Wroclawski, J., and L.
+ Zhang, "RSVP Operation Over IP Tunnels", RFC 2746,
+ January 2000.
+
+ [SIG-NESTED] Baker, F. and P. Bose, "QoS Signaling in a Nested
+ Virtual Private Network", Work in Progress, February
+ 2007.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 27]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+Appendix A. Example Signaling Flow
+
+ This appendix does not provide additional specification. It only
+ illustrates the specification detailed in Section 4 through a
+ possible flow of RSVP signaling messages. This flow assumes an
+ environment where E2E reservations are aggregated over generic
+ aggregate RSVP reservations. It illustrates a possible RSVP message
+ flow that could take place in the successful establishment of a
+ unicast E2E reservation that is the first between a given pair of
+ Aggregator/Deaggregator.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 28]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ Aggregator Deaggregator
+
+ E2E Path
+ ----------->
+ (1)
+ E2E Path
+ ------------------------------->
+ (2)
+ E2E PathErr(New-agg-needed,SOI=GAx)
+ <----------------------------------
+ E2E PathErr(New-agg-needed,SOI=GAy)
+ <----------------------------------
+ (3)
+ AggPath(Session=GAx)
+ ------------------------------->
+ AggPath(Session=GAy)
+ ------------------------------->
+ (4)
+ E2E Path
+ ----------->
+ (5)
+ AggResv (Session=GAx)
+ <-------------------------------
+ AggResv (Session=GAy)
+ <-------------------------------
+ (6)
+ AggResvConfirm (Session=GAx)
+ ------------------------------>
+ AggResvConfirm (Session=GAy)
+ ------------------------------>
+ (7)
+ E2E Resv
+ <---------
+ (8)
+ E2E Resv (SOI=GAx)
+ <-----------------------------
+ (9)
+ E2E Resv
+ <-----------
+
+ (1) The Aggregator forwards E2E Path into the aggregation region
+ after modifying its IP protocol number to RSVP-E2E-IGNORE
+
+ (2) Let's assume no Aggregate Path exists. To be able to accurately
+ update the ADSPEC of the E2E Path, the Deaggregator needs the
+ ADSPEC of Aggregate Path. In this example, the Deaggregator
+ elects to instruct the Aggregator to set up Aggregate Path states
+ for the two supported PHB-IDs. To do that, the Deaggregator
+
+
+
+Le Faucheur, et al. Standards Track [Page 29]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ sends two E2E PathErr messages with a New-Agg-Needed PathErr
+ code. Both PathErr messages also contain a SESSION-OF-INTEREST
+ (SOI) object. In the first E2E PathErr, the SOI contains a
+ GENERIC-AGGREGATE SESSION (GAx) whose PHB-ID is set to x. In the
+ second E2E PathErr, the SOI contains a GENERIC-AGGREGATE SESSION
+ (GAy) whose PHB-ID is set to y. In both messages the GENERIC-
+ AGGREGATE SESSION contains an interface-independent Deaggregator
+ address inside the DestAddress and appropriate values inside the
+ vDstPort and Extended vDstPort fields.
+
+ (3) The Aggregator follows the request from the Deaggregator and
+ signals an Aggregate Path for both GENERIC-AGGREGATE Sessions
+ (GAx and GAy).
+
+ (4) The Deaggregator takes into account the information contained in
+ the ADSPEC from both Aggregate Paths and updates the E2E Path
+ ADSPEC accordingly. The Deaggregator also modifies the E2E Path
+ IP protocol number to RSVP before forwarding it.
+
+ (5) In this example, the Deaggregator elects to immediately proceed
+ with establishment of generic aggregate reservations for both
+ PHB-IDs. In effect, the Deaggregator can be seen as anticipating
+ the actual demand of E2E reservations so that resources are
+ available on the generic aggregate reservations when the E2E Resv
+ requests arrive, in order to speed up establishment of E2E
+ reservations. Assume also that the Deaggregator includes the
+ optional Resv Confirm Request in these Aggregate Resv.
+
+ (6) The Aggregator merely complies with the received ResvConfirm
+ Request and returns the corresponding Aggregate ResvConfirm.
+
+ (7) The Deaggregator has explicit confirmation that both Aggregate
+ Resvs are established.
+
+ (8) On receipt of the E2E Resv, the Deaggregator applies the mapping
+ policy defined by the network administrator to map the E2E Resv
+ onto a generic aggregate reservation. Let's assume that this
+ policy is such that the E2E reservation is to be mapped onto the
+ generic aggregate reservation with PHB-ID=x. The Deaggregator
+ knows that a generic aggregate reservation (GAx) is in place for
+ the corresponding PHB-ID since (7). The Deaggregator performs
+ admission control of the E2E Resv onto the generic aggregate
+ reservation for PHB-ID=x (GAx). Assuming that the generic
+ aggregate reservation for PHB-ID=x (GAx) had been established
+ with sufficient bandwidth to support the E2E Resv, the
+ Deaggregator adjusts its counter, tracking the unused bandwidth
+ on the generic aggregate reservation. Then it forwards the E2E
+ Resv to the Aggregator including a SESSION-OF-INTEREST object
+
+
+
+Le Faucheur, et al. Standards Track [Page 30]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+ conveying the selected mapping onto GAx (and hence onto
+ PHB-ID=x).
+
+ (9) The Aggregator records the mapping of the E2E Resv onto GAx (and
+ onto PHB-ID=x). The Aggregator removes the SOI object and
+ forwards the E2E Resv towards the sender.
+
+Authors' Addresses
+
+ Francois Le Faucheur
+ Cisco Systems, Inc.
+ Village d'Entreprise Green Side - Batiment T3
+ 400, Avenue de Roumanille
+ 06410 Biot Sophia-Antipolis
+ France
+ EMail: flefauch@cisco.com
+
+ Bruce Davie
+ Cisco Systems, Inc.
+ 1414 Massachusetts Ave.
+ Boxborough, MA 01719
+ USA
+ EMail: bds@cisco.com
+
+ Pratik Bose
+ Lockheed Martin
+ 700 North Frederick Ave.
+ Gaithersburg, MD 20879
+ USA
+ EMail: pratik.bose@lmco.com
+
+ Chris Christou
+ Booz Allen Hamilton
+ 13200 Woodland Park Road
+ Herndon, VA 20171
+ USA
+ EMail: christou_chris@bah.com
+
+ Michael Davenport
+ Booz Allen Hamilton
+ Suite 390
+ 5220 Pacific Concourse Drive
+ Los Angeles, CA 90045
+ USA
+ EMail: davenport_michael@bah.com
+
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 31]
+
+RFC 4860 Generic Aggregate RSVP Reservations May 2007
+
+
+Full Copyright Statement
+
+ Copyright (C) The IETF Trust (2007).
+
+ This document is subject to the rights, licenses and restrictions
+ contained in BCP 78, and except as set forth therein, the authors
+ retain all their rights.
+
+ This document and the information contained herein are provided on an
+ "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
+ OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
+ THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
+ OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
+ THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
+ WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+
+Intellectual Property
+
+ The IETF takes no position regarding the validity or scope of any
+ Intellectual Property Rights or other rights that might be claimed to
+ pertain to the implementation or use of the technology described in
+ this document or the extent to which any license under such rights
+ might or might not be available; nor does it represent that it has
+ made any independent effort to identify any such rights. Information
+ on the procedures with respect to rights in RFC documents can be
+ found in BCP 78 and BCP 79.
+
+ Copies of IPR disclosures made to the IETF Secretariat and any
+ assurances of licenses to be made available, or the result of an
+ attempt made to obtain a general license or permission for the use of
+ such proprietary rights by implementers or users of this
+ specification can be obtained from the IETF on-line IPR repository at
+ http://www.ietf.org/ipr.
+
+ The IETF invites any interested party to bring to its attention any
+ copyrights, patents or patent applications, or other proprietary
+ rights that may cover technology that may be required to implement
+ this standard. Please address the information to the IETF at
+ ietf-ipr@ietf.org.
+
+Acknowledgement
+
+ Funding for the RFC Editor function is currently provided by the
+ Internet Society.
+
+
+
+
+
+
+
+Le Faucheur, et al. Standards Track [Page 32]
+