Internet DRAFT - draft-lefaucheur-rsvp-ipsec

draft-lefaucheur-rsvp-ipsec






TSVWG                                                     F. Le Faucheur
Internet-Draft                                                  B. Davie
Expires: April 24, 2006                                    Cisco Systems
                                                                 P. Bose
                                                         Lockheed Martin
                                                             C. Christou
                                                            M. Davenport
                                                     Booz Allen Hamilton
                                                        October 21, 2005


                  Generic Aggregate RSVP Reservations
                   draft-lefaucheur-rsvp-ipsec-02.txt

Status of this Memo

   By submitting this Internet-Draft, each author represents that any
   applicable patent or other IPR claims of which he or she is aware
   have been or will be disclosed, and any of which he or she becomes
   aware will be disclosed, in accordance with Section 6 of BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on April 24, 2006.

Copyright Notice

   Copyright (C) The Internet Society (2005).

Abstract

   [RSVP-IPSEC] defines RSVP extensions for IPsec which permit support
   of reservations for individual IPsec flows, but it does not support
   aggregate reservations between the IPsec devices with Diffserv



Le Faucheur, et al.      Expires April 24, 2006                 [Page 1]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


   [DIFFSERV] classification and scheduling.  Conversely, [RSVP-AGG]
   defines how to aggregate individual RSVP reservations over Aggregate
   IP reservations when the aggregation region supports Diffserv, but it
   does not address the case where the Aggregator and Deaggregator use
   IPsec.  Also, [RSVP-AGG] does not address the case where multiple
   Aggregate reservations are needed for the same DSCP from the same
   Aggregator to the same Deaggregator.  However, there are scenarios
   requiring aggregate reservations for IPsec tunnels or requiring
   multiple aggregate reservations for the same DSCP from a given
   Aggregator to a given Deaggregator.  This document specifies the
   incremental RSVP extensions beyond those defined in [RSVP-IPSEC] and
   [RSVP-AGG] to support such reservations.


Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  4
     1.1.  Aggregate Reservations For IPsec Tunnels . . . . . . . . .  4
     1.2.  Multiple Reservations Per DSCP From A Given Aggregator
           To A Given Deaggregator  . . . . . . . . . . . . . . . . .  6
     1.3.  Related RFCs and Internet-Drafts . . . . . . . . . . . . .  7
     1.4.  Organization Of This Document  . . . . . . . . . . . . . .  7
     1.5.  Change History . . . . . . . . . . . . . . . . . . . . . .  8
       1.5.1.  Changes From -00 To -01  . . . . . . . . . . . . . . .  8
       1.5.2.  Changes From -01 To -02  . . . . . . . . . . . . . . .  8

   2.  Overview of Extensions . . . . . . . . . . . . . . . . . . . . 10

   3.  Object Definition  . . . . . . . . . . . . . . . . . . . . . . 12
     3.1.  SESSION Class  . . . . . . . . . . . . . . . . . . . . . . 12
     3.2.  AGGREGATION-SESSION Class  . . . . . . . . . . . . . . . . 12

   4.  Processing Rules . . . . . . . . . . . . . . . . . . . . . . . 14
     4.1.  Required Changes to Path and Resv Processing . . . . . . . 14
     4.2.  Required Changes to Aggregator/Deaggregator Processing . . 16
     4.3.  Merging Rules  . . . . . . . . . . . . . . . . . . . . . . 18
       4.3.1.  FF and SE Styles . . . . . . . . . . . . . . . . . . . 18
       4.3.2.  WF Styles  . . . . . . . . . . . . . . . . . . . . . . 18
     4.4.  Handling SPI Value Changes . . . . . . . . . . . . . . . . 18

   5.  Example Usages . . . . . . . . . . . . . . . . . . . . . . . . 21
     5.1.  Example Usage Of Generic Aggregate Reservations in
           Nested VPNs  . . . . . . . . . . . . . . . . . . . . . . . 21
     5.2.  Example Usage Of Multiple Generic Aggregate
           Reservations Per DSCP From a Given Aggregator to a
           Given Deaggregator . . . . . . . . . . . . . . . . . . . . 25

   6.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 28



Le Faucheur, et al.      Expires April 24, 2006                 [Page 2]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


   7.  Security Considerations  . . . . . . . . . . . . . . . . . . . 29

   8.  Acknowledgments  . . . . . . . . . . . . . . . . . . . . . . . 30

   9.  References . . . . . . . . . . . . . . . . . . . . . . . . . . 31
     9.1.  Normative References . . . . . . . . . . . . . . . . . . . 31
     9.2.  Informative References . . . . . . . . . . . . . . . . . . 31

   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 32
   Intellectual Property and Copyright Statements . . . . . . . . . . 34









































Le Faucheur, et al.      Expires April 24, 2006                 [Page 3]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


1.  Introduction

   [RSVP-IPSEC] defines RSVP extensions for IPsec that permit support of
   reservations for individual IPsec flows, but it does not support
   aggregate reservations between IPsec devices with Diffserv [DIFFSERV]
   classification and scheduling.  Conversely, [RSVP-AGG] defines how to
   aggregate individual RSVP reservations over Aggregate IP reservations
   when the aggregation region supports Diffserv, but it does not
   address the case where the Aggregator and Deaggregator use IPsec.
   Also, [RSVG-AGG] does not address the case where multiple Aggregate
   reservations are needed for the same DSCP from the same Aggregator to
   the same Deaggregator.  However, there are scenarios requiring
   aggregate reservations for IPsec tunnels or requiring multiple
   aggregate reservations for the same DSCP from a given Aggregator to a
   given Deaggregator.  This document specifies the incremental RSVP
   extensions beyond those defined in [RSVP-IPSEC] and [RSVP-AGG] to
   support such reservations.

1.1.  Aggregate Reservations For IPsec Tunnels

   [IPSEC-ARCH] defines the term "security gateway" to refer to an
   intermediate system that implements IPsec protocols.  In this
   document we refer to a an IP router behaving as a security gateway as
   an "IPsec-Router".

   Consider an environment as depicted in Figure 1.  Let us assume that
   the IPsec-Routers tunnel traffic to each other via IPsec and that the
   devices within Cloud-1, Cloud-2 and Cloud-3 want to establish RSVP
   reservations with one another transparently over the IPsec Tunnels.
   Let us also assume that Cloud-0 supports Diffserv (and not per-flow
   classification -except perhaps at the edge for policing purposes) and
   that there is a need to reserve resources over Cloud-0 to achieve the
   targeted levels of QoS assurance.  Then there is a need to establish
   aggregate reservations within Cloud-0 for the IPsec tunnels
   transiting through Cloud-0.  These aggregate reservations will be
   used to aggregate the end-to-end RSVP reservations between Cloud-
   1/2/3.  This document concerns itself with establishment of such
   aggregate reservations for IPsec tunnels.

   The reader is referred to [SIG-NESTED] for a description of a more
   generic nested VPN environment and for discussion and examples of QoS
   signaling in that environment.









Le Faucheur, et al.      Expires April 24, 2006                 [Page 4]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


                          I----------I               I----------I
                          I  Cloud-1 I               I  Cloud-2 I
                          I----------I               I----------I
                                |                      |
                          IPSec-Router-1     IPSec-Router-2
                                    /         /
                                   I----------I
                                   I          I
                                   I  Cloud-0 I
                                   I          I
                                   I----------I
                                        /
                                IPSec-Router-3
                                     |
                               I----------I
                               I  Cloud-3 I
                               I----------I
   Figure 1: Example Scenario Requiring Aggregate Reservations for IPsec
   tunnels

   [RSVP-AGG] defines a Session Object containing only the Deaggregator
   IP address and the DSCP, and defines a Filter Spec Object containing
   only the aggregator IP address.  Thus, we observe that it is not
   possible to convey the IPsec Security Parameter Index (SPI) that is
   used for a given IPsec tunnel (unlike with [RSVP-IPSEC]).  In turn,
   this means that, if [RSVP-AGG] was used to establish aggregate
   reservations for IPsec tunnels, it would not be possible for the
   (edge) routers within Cloud-0 to classify traffic belonging to the
   reservation corresponding to a given IPsec tunnel (say for the
   purpose of doing policing on the edge of Cloud-0).  It also means
   that it would not be possible (short of multiplying IP addresses) to
   setup separate reservations for different IPsec tunnels (using
   different SPIs) between the same IPsec encryptor and decryptor (which
   may be used if different types of traffic have different security
   requirements).  Similarly, it would not be possible to set up
   separate reservations for traffic going over the IPsec tunnel and for
   traffic that is not encrypted (which is a useful scenario if some
   traffic has IPsec requirement while the rest doesn't).  Moreover, it
   would not be possible to setup multiple reservations between a given
   pair of IPsec encryptor and decryptor for transport of flows with
   different preemptions [RSVP-PREEMP].  These restrictions illustrate
   why the RSVP extensions defined in [RSVP-AGG] are not sufficient to
   support aggregate reservations for IPsec tunnels.

   [RSVP-IPSEC] defines a Session Object containing several fields
   including a Virtual Destination Port (VDstPort) which allows support
   of a different reservation for each IPsec flow , or even of multiple
   reservations for a given IPsec flow.  However, (unlike with [RSVP-



Le Faucheur, et al.      Expires April 24, 2006                 [Page 5]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


   AGG]), the RSVP extensions of [RSVP-IPSEC] do not allow the DSCP to
   be part of the fields uniquely identifying the reservation (i.e. the
   Session and Filter Spec objects).  The extensions of [RSVP-IPSEC]
   essentially assume a per-flow classification model instead of
   Diffserv aggregate classification and scheduling.  This is why the
   RSVP extensions defined in [RSVP-IPSEC] are not sufficient either to
   support aggregate reservations for IPsec tunnels.

   This document defines incremental RSVP extensions that simply combine
   the concepts introduced in [RSVP-IPSEC] and in [RSVP-AGG].  This way,
   their benefits can be obtained simultaneously hence allowing
   aggregate reservations for IPsec tunnels with Diffserv classification
   and scheduling.

   These extensions can be used in a number of scenarios.  They allow
   aggregation of end-to-end RSVP reservations over aggregate
   reservations for IPsec tunnels.  They also allow multi-level
   aggregation.  For example, end-to-end RSVP reservations may first be
   aggregated by a router acting as an [RSVP-AGG] aggregator and then
   the resulting [RSVP-AGG] aggregate reservations may in turn be
   aggregated by the IPsec encryptor into generic aggregate RSVP
   reservations.  These extensions may also be used to establish an
   aggregate reservation for an IPsec tunnel between an IPsec encryptor
   and an IPsec decryptor for transport of other traffic than the one
   corresponding to end to end RSVP reservations (for example to provide
   a fixed pipe of Diffserv bandwidth from IPsec encryptor to IPsec
   decryptor to carry end-to-end Diffserv traffic).  Another possible
   example usage is for establishment of an aggregate reservation end-
   to-end from an IPsec end-system to another IPsec end-system.

   These extensions allow full support of QoS signaling in Nested VPNs
   as discussed in [SIG-NESTED].  Example usage of these extensions in
   Nested VPN is described in section 5.

1.2.  Multiple Reservations Per DSCP From A Given Aggregator To A Given
      Deaggregator

   Let us consider an environment where E2E RSVP reservations need to be
   aggregated over an aggregation region.  Now imagine that different
   E2E RSVP reservations (corresponding to the same DSCP) are
   established with different preemptions [RSVP-PREEMP] and that the
   corresponding preemption need to be enforced over the aggregation
   region.  One method to achieve this is to establish one Aggregate
   RSVP reservation per preemption level for a given DSCP and from a
   given Aggregator to a given Deaggregator.

   As mentioned earlier, [RSVP-AGG] defines a Session Object containing
   only the Deaggregator IP address and the DSCP, and defines a Filter



Le Faucheur, et al.      Expires April 24, 2006                 [Page 6]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


   Spec Object containing only the aggregator IP address.  Thus, the
   extensions defined in [RSVP-AGG] do not allow establishment of
   multiple Aggregate RSVP reservations for a given <Aggregator/
   Deaggregator/DSCP> Tuple (short of multiplying the IP addresses
   allocated to the Aggregator or Deaggregator).

   The extensions defined in this document combine the concept of
   Virtual Destination Port introduced in [RSVP-IPSEC] (which allows
   establishment of multiple reservations between same source/
   destination) with the inclusion of DSCP in the Session object
   introduced in [RSVP-AGG].  This allows establishment of multiple
   Aggregate RSVP reservations for a given <Aggregator/Deaggregator/
   DSCP> Tuple.

1.3.  Related RFCs and Internet-Drafts

   The mechanisms defined in [BW-REDUC] allow an existing reservation to
   be reduced in allocated bandwidth in lieu of tearing that reservation
   down.  These mechanisms are applicable to the aggregate reservations
   for IPsec tunnels 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", is similar to the tunnels described in this
   draft.  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 case where data flows are encrypted, and thus does not deal with
   the use of the SPI to identify flows and sessions.  Nor does it
   address the use of Diffserv-based classification and queuing in the
   core of a network (between tunnel endpoints), but rather relies on a
   UDP/IP tunnel header for classification.  Thus we require some
   additional objects and procedures, defined in this draft, beyond
   those of [RSVP-TUNNEL].

1.4.  Organization Of This Document

   Section 2 presents an overview of the RSVP extensions defined in this
   document and how those are used.  Section 3 provides specification
   for the new RSVP objects.  The changes to existing RSVP processing
   rules are identified in Section 4.  Section 5 provides example usages
   of aggregate reservations for IPsec tunnels in a Nested VPN
   environment as well as of aggregate IP reservations.  The IANA
   Considerations and the Security Considerations are discussed in
   Section 6 and 7, respectively.






Le Faucheur, et al.      Expires April 24, 2006                 [Page 7]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


1.5.  Change History

1.5.1.  Changes From -00 To -01

   The most significant change is the broadening of the applicability of
   the new type of aggregate reservations beyond use for Aggregate
   reservations for IPsec tunnels (to environments where IPsec is not
   used).  This affects the document in multiple places including the
   following changes:

   o  document renamed to "Generic Aggregate RSVP Reservations"

   o  added a subsection in Introduction to discuss a case where Generic
      Aggregate RSVP Reservations are needed in non IPsec environments

   o  added text about the fact that the Generic Aggregate Reservations
      can be used with IP-in-IP and GRE encapsulation (in addition to
      with IPsec AH and ESP)

   o  added example usage under Section 5 for environment where IPsec is
      not used

   The other significant changes are:

   o  added a subsection on the changes of the [RSVP-AGG] procedures
      under Section 4

   o  added explanation about allocation of VDstPort values by
      Deaggregator, in that same subsection

   o  added value of Protocol ID in all example generic aggregate
      reservations in Section 5

1.5.2.  Changes From -01 To -02

   The most significant changes are :

   o  added text in section 4.2 about Aggregator/Deaggregator
      responsibilities with respect to mapping of end-to-end
      reservations onto aggregate reservations.  The text also clarified
      that DCLASS object is no longer needed in PathErr message
      requesting new Aggregate Reservations

   o  Moved the text discussing details of the procedures to handle
      dynamic update of SPI values from Security Considerations section
      into a new section 4.4.





Le Faucheur, et al.      Expires April 24, 2006                 [Page 8]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


   o  updates to Security Considerations section to start addressing
      some comments from Security experts review.

















































Le Faucheur, et al.      Expires April 24, 2006                 [Page 9]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


2.  Overview of Extensions

   The extensions defined in this document can be seen as simply the
   combination of the RSVP extensions defined in [RSVP-IPSEC] and in
   [RSVP-AGG].

   The basic notion of [RSVP-IPSEC] is to extend RSVP to use the IPsec
   Security Parameter Index (SPI) in place of the UDP/TCP-like ports.
   This was achieved via:

   o  definition of a new FILTER_SPEC object which includes a
      Generalized Port Identifier (GPI) field which is used to convey
      the SPI

   o  definition of a new SESSION object which includes a Virtual
      Destination Port (VDstPort).  The VDstPort effectively allows for
      the differentiation of multiple IPsec sessions destined to the
      same IP address.  (The VDstPort is used in the Session rather than
      the SPI because it isn't feasible to force all senders to a
      session to use the same SPI - which is needed in situations where
      sharing of reservations across multiple senders is required)

   One of the key notions of [RSVP-AGG] is that inside the aggregation
   region, some RSVP reservation state is maintained per aggregate
   reservation, while classification and scheduling state (e.g., DSCPs
   used for classifying traffic) is maintained on a more highly
   aggregated basis.  For example, if Guaranteed Service reservations
   are mapped to the EF DSCP throughout the aggregation region, there
   may be a reservation for each Aggregator/Deaggregator pair in each
   router.  However, only the EF DSCP needs to be inspected for
   classification of the data traffic at each interior interface, and
   only a single queue is used for all EF traffic.  Support for this in
   [RSVP-AGG] involved:

   o  definition of a new SESSION object which includes the DSCP

   Hence, in order to simultaneously achieve support of per IPsec flow
   reservations as well as Diffserv aggregate classification and
   scheduling, this document :

   o  reuses the FILTER_SPEC object defined in [RSVP-IPSEC] and
      containing a GPI (which in turn can include the SPI)

   o  defines a new SESSION object which contains both the VDstPort and
      the DSCP

   The use of the VDstPort field is as specified in [RSVP-IPSEC].  When
   traffic from the E2E reservations is transported in aggregate IPsec



Le Faucheur, et al.      Expires April 24, 2006                [Page 10]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


   tunnels using AH or ESP, the use of the GPI field is as specified in
   [RSVP-IPSEC].  When traffic from the E2E reservations is transported
   into aggregate IP reservations using IP-in-IP or GRE, the GPI field
   is not used.  In that case, the GPI is to be set to 0 by the sender
   of the RSVP message and to be ignored by the receiver of the RSVP
   message.  The use of the DSCP field is as specified in [RSVP-AGG].

   Where these RSVP extensions are used to perform aggregation of RSVP
   reservations over generic aggregate RSVP reservations, the
   aggregation and deaggregation functions are as specified in [RSVP-
   AGG] unless explicitly spelled out in the following paragraphs.

   Like with [RSVP-AGG], it is the Deaggregator which is responsible for
   mapping E2E reservations onto generic aggregate reservations.  In
   turn, this means the Deaggregator is responsible for requesting the
   Aggregator to initiate establishment of a new generic aggregate
   reservation when necessary and also for conveying to the Aggregator
   information about which generic aggregate reservation a given flow
   needs to be mapped onto.

   Like with [RSVP-AGG], to request establishment of a generic aggregate
   reservation, the Deaggregator sends an E2E PathErr message with an
   error code of NEW-AGGREGATE-NEEDED.  However, to provide all the
   necessary information about the needed generic aggregate reservation,
   this document extends the procedures of [RSVP-AGG] and allows the
   Deaggregator to include in the E2E PathErr message a new object
   called AGGREGATION-SESSION.  This object contains all the information
   describing the Session of the needed new generic aggregate
   reservation, in order to convey those to the Aggregator.

   This document also extends the procedures of [RSVP-AGG] to allow the
   Deaggregator to include the new AGGREGATION-SESSION object in the E2E
   Resv message, in order to convey to the Aggregator which generic
   aggregate session to map a given E2E reservation onto.

















Le Faucheur, et al.      Expires April 24, 2006                [Page 11]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


3.  Object Definition

   This document defines two new objects under the SESSION Class and a
   new object under a new AGGREGATION SESSION Class.

   It reuses the IPv4/GPI FILTER_SPEC, IPv6/GPI FILTER_SPEC, IPv4/GPI
   SENDER_TEMPLATE and IPv6/GPI SENDER_TEMPLATE objects defined in
   [RSVP-IPSEC].

3.1.  SESSION Class


           o    AGGREGATE-IPv4/GPI SESSION object:
                  Class = 1
                  C-Type = To be allocated by IANA

            0           7 8          15 16         23 24          31
           +-------------+-------------+-------------+-------------+
           |               IPv4 DestAddress (4 bytes)              |
           +-------------+-------------+-------------+--+----------+
           | Protocol ID |     Flags   |  vDstPort      |  DSCP    |
           +-------------+-------------+-------------+--+----------+
            0           7 8          15 16            25 26       31

           o    AGGREGATE-IPv6/GPI SESSION object:
                  Class = 1
                  C-Type = To be allocated by IANA

            0           7 8          15 16         23 24          31
           +-------------+-------------+-------------+-------------+
           |                                                       |
           +                                                       +
           |                                                       |
           +               IPv6 DestAddress (16 bytes)             +
           |                                                       |
           +                                                       +
           |                                                       |
           +-------------+-------------+-------------+--+----------+
           | Protocol ID |     Flags   |  vDstPort      |   DSCP   |
           +-------------+-------------+-------------+--+----------+
            0           7 8          15 16            25 26       31

3.2.  AGGREGATION-SESSION Class








Le Faucheur, et al.      Expires April 24, 2006                [Page 12]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


           o    AGGREGATION-SESSION object:
                  Class = To be allocated by IANA
                  C-Type = To be allocated by IANA

             0           7 8          15 16            25 26       31
            +-------------+-------------+-------------+-------------+
            |       Length (bytes)      |  Class-Num  |   C-Type    |
            +-------------+-------------+-------------+-------------+
            |                                                       |
            //                  SESSION Object                     //
            |                                                       |
            +-------------+-------------+-------------+-------------+


   The Length, Class-Num and C-Type are those of the Session object
   which is included inside the AGGREGATION-SESSION object.  For
   example, if the AGGREGATION-SESSION object is used to indicate that
   the Aggregate Session needed is an AGGREGATE-IPv4/GPI SESSION then
   the AGGREGATION-SESSION will be encoded like this:

             0           7 8          15 16            25 26       31
            +-------------+-------------+-------------+-------------+
            |                           |AGGREGATE/GPI|AGGREGATE/GPI|
            |       Length (bytes)      |  Class-Num  |   C-Type    |
            +-------------+-------------+-------------+-------------+
            |               IPv4 DestAddress (4 bytes)              |
            +-------------+-------------+-------------+--+----------+
            | Protocol ID |     Flags   |  vDstPort      |   DSCP   |
            +-------------+-------------+-------------+--+----------+
             0           7 8          15 16            25 26       31





















Le Faucheur, et al.      Expires April 24, 2006                [Page 13]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


4.  Processing Rules

   This section presents additions to the Processing Rules presented in
   [RSVP-PROCESS] and in [RSVP-IPSEC].  These additions are required in
   order to properly process the AGGREGATE-IPv4/GPI (resp. AGGREGATE-
   IPv6/GPI) SESSION object and the IPv4/GPI (resp. IPv4-6/GPI)
   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 AGGREGATE-IPv4/GPI and AGGREGATE-IPv6/GPI
   SESSION objects, IP version will not be included and they will be
   referred to simply as AGGREGATE/GPI SESSION, unless a specific
   distinction between IPv4 and IPv6 is being made.

   Similarly, as per the convention used in [RSVP-IPSEC], when referring
   to the objects defined in [RSVP-IPSEC], IP version will not be
   included unless a specific distinction between IPv4 and IPv6 is being
   made.

4.1.  Required Changes to Path and Resv Processing

   Both RESV and PATH processing will need to be changed to support the
   new objects.

   The following PATH message processing changes are required:

   o  When a session is defined using the AGGREGATE/GPI SESSION object,
      only the GPI SENDER_TEMPLATE may be used.  When this condition is
      violated, RSVP end-stations should report a "Conflicting C-Type"
      API error to the application and routers should consider this as a
      message formatting error.

   o  For PATH messages that contain the AGGREGATE/GPI SESSION object,
      RSVP end-stations must verify that the protocol ID corresponds to
      a protocol known to use the AGGREGATE/GPI SESSION object.
      Protocol ID known to use the AGGREGATE/GPI SESSION are values 4
      (IP-in-IP), 47 (GRE), 51 (AH) and 50 (ESP).  If a router receives
      such a Path message with a protocol ID which doesn't correspond to
      a protocol known to use the AGGREGATE/GPI SESSION object, the
      router should consider this as a message formatting error.  If an
      end-systems receives a Path message with an unknown protocol ID,
      then the API on the RSVP end-system should report an "API Error"
      to the application.

   o  For PATH messages that contain the AGGREGATE/GPI SESSION object,
      the VDstPort value and the DSCP value should be recorded.  These
      values form part of the recorded state of the session.  Only the



Le Faucheur, et al.      Expires April 24, 2006                [Page 14]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


      DSCP needs be passed to traffic control, since the vDstPort is not
      contained in data packets.

   The changes to RESV message processing are:

   o  When a RESV message contains a GPI FILTER_SPEC, the session must
      be defined using either the GPI SESSION object (as per [RSVP-
      IPSEC]) or the AGGREGATE/GPI SESSION object (as per this
      document).  Otherwise, this is a message formatting error.

   o  The GPI contained in the GPI FILTER_SPEC must match the GPI
      contained in the SENDER_TEMPLATE.  Otherwise, a "No sender
      information for this Resv message" error is generated.

   o  When the GPI FILTER_SPEC is used and the SESSION type is
      AGGREGATE/GPI, each node must have a data classifier installed for
      the flow:

      *  If the node needs to perform fine-grain classification (for
         example to perform fine-grain policing on ingress at a trust
         boundary) then the node must create a data classifier described
         by

         +  the 5-tuple <DestAddress, protocol ID, SrcAddress, GPI,
            DSCP> if the Protocol ID is AH or ESP.  The data classifier
            will need to look for the four byte GPI at transport header
            offset +4 for AH, and at transport header offset +0 for ESP
            (see [RSVP-IPSEC], [IPSEC-AG] and [IPSEC-ESP]).  Note that
            if multiple reservations are established with different
            Virtual Destination Ports but with the same <DestAddress,
            protocol ID, SrcAddress, GPI, DSCP>, 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.

         +  the 4-tuple <DestAddress, protocol ID, SrcAddress, DSCP> if
            the Protocol ID is IP-in-IP or GRE.  Note that if multiple
            reservations are established with different Virtual
            Destination Ports but with the same <DestAddress, protocol
            ID, SrcAddress, DSCP>, 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.





Le Faucheur, et al.      Expires April 24, 2006                [Page 15]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


      *  If the node only needs to perform Diffserv classification (for
         example inside the aggregation domain downstream of the trust
         boundary) then the node must rely on the Diffserv data
         classifier based on the DSCP only.

4.2.  Required Changes to Aggregator/Deaggregator Processing

   As specified in [RSVP-AGG], the Deaggregator requests establishment
   of the corresponding Aggregate Path by sending an E2E PathErr message
   with an error code of NEW-AGGREGATE-NEEDED and the desired DSCP
   encoded in the respective DCLASS Object.  This document modifies and
   extends this procedure by allowing the Deaggregator to include in the
   E2E PathErr message an AGGREGATION-SESSION object which contains the
   Session to be used for establishment of the Aggregate Path.  Since
   the AGGREGATION-SESSION object contains the DSCP, the DCLASS object
   need not be included in the PathErr message.  Note that the
   AGGREGATION-SESSION object provides a very convenient mechanism to
   ensure that different Aggregators use different sessions for their
   Aggregate Path towards a given Deaggregator.  This is because the
   Deaggregator can easily select VDstPort numbers which are different
   for each Aggregator and communicate those inside the AGGREGATION-
   SESSION object.  This provides an easy solution to establish separate
   reservations from every Aggregator to a given Deaggregator.
   Conversely, if reservation sharing was needed across multiple
   Aggregators, the Deaggregator could facilitate this by allocating the
   same VDstPort to the multiple Aggregators and thus including the same
   AGGREGATION-SESSION object in the E2E PathErr messages sent to these
   Aggregators.  The Aggregators could then all establish an Aggregate
   Path with the same Session.

   Similarly, the [RSVP-AGG] procedures for processing of an E2E PathErr
   message by the Aggregator are extended so that the Aggregator uses
   the Session provided in the AGGREGATION-SESSION object to establish
   the Aggregate Path.

   This document also extends the procedures of [RSVP-AGG] to allow the
   Deaggregator to include the new AGGREGATION-SESSION object in the E2E
   Resv message, in order to convey to the Aggregator which aggregate
   session to map a given E2E reservation onto.  Again, since the
   AGGREGATION-SESSION object contains the DSCP, the DCLASS object need
   not be included in the E2E Resv message.

   As discussed in [RSVP-AGG]:

   o  the rules for mapping E2E reservations onto aggregate reservations
      are policy decisions which are outside the scope of [RSVP-AGG] and
      of this specification.  Suffice to know that such a policy is
      somehow accessible to the Aggregators/Deaggregators.



Le Faucheur, et al.      Expires April 24, 2006                [Page 16]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


   o  Regardless of the actual policy, a range of options are
      conceivable for where the decision to map an E2E reservation onto
      an aggregate reservation is taken and how this decision is
      communicated between Aggregator and Deaggregator.

   For simplicity and reliability, [RSVP-AGG] assigns the responsibility
   of the mapping decision entirely to the Deaggregator.  In that mode,
   the Aggregator is notified of the selected mapping by the
   Deaggregator and follows this decision.  The Deaggregator was chosen
   rather than the Aggregator because the Deaggregator is the first to
   have access to all the information required to make such a decision
   (in particular receipt of the E2E Resv which indicates the requested
   Int-Serv service type and includes information signaled by the
   receiver).  This allows faster operations such as set-up or size
   adjustment of an Aggregate Reservation in a number of situations
   resulting in faster E2E reservation establishment.

   This document retains this approach of assigning the responsibility
   of the mapping decision entirely to the Deaggregator.  However, in
   one specific case, this document imposes one specific constraint on
   the mapping decision made by the Deaggregator:

   o  The specific case is where multiple security associations are used
      between the Aggregator and the Deaggregator.

   o  The specific constraint is that the aggregate reservation selected
      for the mapping of the E2E reservation must correspond to the
      Security Association that is to be used for transport of the E2E
      reservation traffic.

   Note that, in IPsec environments, when multiple Security Associations
   are used from an IPsec router to another IPsec router, the selection
   of which security association is to be used for transport of traffic
   (or even the decision to use IPsec at all for a transport of a given
   flow) is normally controlled by the encryptor side (i.e. the
   Aggregator in our environment).  However, the Deaggregator is made
   aware of which Security Association is selected by the Aggregator for
   a particular E2E flow because the E2E path message is received by the
   Deaggregator encrypted using that Security Association.  The
   Deaggregator can store that information (i.e. which Security
   Association the E2E Path was received on) and take that into account
   when selecting the Aggregate reservation on which to map the E2E
   reservation in order to comply with the specific constraint stated
   above.

   When IPsec is not used from the Aggregator to the Deaggregator, the
   Deaggregator has full responsibility of the mapping decision as per
   [RSVP-AGG] and this document does not impose any additional



Le Faucheur, et al.      Expires April 24, 2006                [Page 17]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


   constraints on that mapping.

4.3.  Merging Rules

   When using the extensions defined in this draft, RSVP sessions are
   defined by the 4-tuple: (DestAddress, protocol Id, vDstPort, DSCP).
   Similarly, a sender is defined by the tuple: (SrcAddress, GPI) when
   the protocol is AH or ESP, where the GPI field will be a four byte
   representation of a generalized source port, or by the tuple
   (SrcAddress) when the protocol is IP-in-IP or GRE .  These extensions
   have some ramifications depending upon the reservation style.

   We note that VDstPorts can be communicated by Deaggregators to
   Aggregators via the AGGREGATION-SESSION object included in the E2E
   PathErr.  This can be used to facilitate various sharing scenarios as
   needed (e.g. the Deaggregator can convey the same VDstPort to
   different Aggregators which need to share a reservation; or
   conversely, the Deaggregator can communicate different VDstPorts to
   different Aggregators which need to have separate reservations).
   Policies followed by the Deaggregator to determine which aggregators
   need shared or separate reservations are beyond the scope of this
   document.

4.3.1.  FF and SE Styles

   In the FF and SE Styles, the FILTER_SPEC object contains the
   (SrcAddress) or the (SrcAddress, SPI) pair.  When the SPI is used,
   this allows the receiver to uniquely identify senders based on both
   elements of the pair.  When merging explicit sender descriptors, the
   senders may only be considered identical when both elements are
   identical.

4.3.2.  WF Styles

   As with [RSVP-IPSEC], WF style is not well supported with these
   extensions.  Because there are no FILTER_SPEC objects for a WF
   reservation, any data packets with the session's destination IP
   address, protocol ID and DSCP will match the reservation (even if it
   is not carried inside the relevant IPsec tunnels because the SPI is
   not signaled and cannot be used for data classification).  This
   limitation is considered acceptable because of the expectation that
   WF reservations are not likely to be used in this environment.

4.4.  Handling SPI Value Changes

   Changes in SPI values for a given IPsec tunnel will affect associated
   generic aggregate RSVP reservations.  Changes will happen whenever
   that IPsec tunnel updates its Security Association.  Such changes



Le Faucheur, et al.      Expires April 24, 2006                [Page 18]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


   will occur when a tunnel is re-keyed (i.e. to use a new key).  Re-
   keying intervals are typically set based on traffic levels, key size,
   threat environment, and crypto algorithm in use.  Implementations of
   this specification need to take the possibility of changes of SPI
   into account to ensure proper reservation behavior.  This section
   discusses how generic aggregate RSVP reservations associated with
   IPsec tunnels can be adjusted in line with SPI value change.

   When an SPI change occurs it will, in most cases, be necessary to
   update (send) the corresponding SENDER_TEMPLATEs and FILTER_SPECs.

   The impact of sending new PATH and RESV messages corresponding to
   aggregate reservations will vary based on the reservation style being
   used.  Builders of such applications may want to select reservation
   style based on interaction with SPI changes.

   The least impact of an SPI change would be to WF style reservations.
   For such reservations, a new SENDER_TEMPLATE will need to be sent,
   but no new RESV is required.  However, as mentioned earlier, WF
   reservations are not likely to be used in this environment.  This is
   because of the fact that any data packets with the session's
   destination IP address, protocol ID and DSCP would match the
   reservation (regardless of any other field in the packet header such
   as source address or SPI).

   For SE style reservations, both a new SENDER_TEMPLATE and a new RESV
   will need to be sent.  This will result in changes to state, but
   should not affect data packet delivery or actual resource allocation
   in any way.

   The FF style will be impacted the most.  Like with SE, both PATH and
   RESV messages will need to be sent.  But, since FF style reservations
   result in sender receiving its own resource allocation, resources
   will be allocated twice for a period of time.  Or, even worse, there
   won't be enough resources to support the new flow without first
   freeing the old flow.  To address this issue, it is recommended that
   applications that want FF style reservations (in other words that
   want separate reservations) actually use multiple SE reservations.
   Each Aggregator would have a separate SESSION definition thanks to a
   different VDstPort value.  This is facilitated by the ability of the
   Deaggregator to distribute different VDstPorts to each Aggregator
   (through the AGGREGATION-SESSION object in the E2E PathErr as
   discussed above).  When it came time to switch SPIs, a shared
   reservation could be made for the new SPI while the old SPI was still
   active.  Once the new SPI was in use, the old reservation could be
   torn down.  This will provide uninterrupted service over the
   aggregate reservations for IPsec tunnels.




Le Faucheur, et al.      Expires April 24, 2006                [Page 19]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


   In conclusion, it is possible to ensure uninterrupted QoS service
   (and avoid duplicate resource allocation) during SPI value change,
   both in the case where shared reservations across Aggregators are
   required and in the case where separate reservations per Aggregator
   are required.














































Le Faucheur, et al.      Expires April 24, 2006                [Page 20]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


5.  Example Usages

5.1.  Example Usage Of Generic Aggregate Reservations in Nested VPNs




                           /                           \
                          (       +--+   +--+   enclave )   ,---------.
            .----------.   \      |H2+---+R2|          / ,-'           `
             +--+   +--+`--.\     +--+   ++-+         / /   +--+   +--+
             |H1+---+R1|    \`.           |         ,' /    |R3+---+H3|
             +--+   +-++     ) '--.    +----++  _.-'  (     ++-+   +--+
                      |     /    _.`---|VPN2||''-.     \     |
            enclave +----+-i.--''      +----++    `----.\ +----+ enclave
            --------|VPN1|'              |              ``|VPN3|       ,
                   ,+----+               |                +----+------'
                 ,' --+-------+----------+------------------+---`.
               ,'            ++-+                                 `.
             ,'              |R7+--------+                          `.
            / interface      +--+        |                            \
              domain 1                 +-+--+                          \
                             _.--------|VPN7|--------.
                     ,-----''          +--+-+         `------.         .
            `-.   ,-'                     |                   `-.   .-'
               `-:  inner domain        +-++                     `.'
               (                        |R9|                       )
               .'.                      ++-+                     ;-.
             .'   `-.                    |                    ,-'   `-.
            '        `------.          +-+--+         _.-----'         `
              interface      `---------|VPN8|-------''
              domain 2                 +-+--+                          /
            \                            |          +--+              /
             `.                          +----------+R8|            ,'
               `.                                   ++-+          ,'
                 `. --+------------------+-----------+------+-- ,'
              ,-----+----+               |                +----+------.
            ,'      |VPN6|.              |              _.|VPN4|       `
                    +----+.`----.      +----+     _.--'' ,+----+
                     |     \     `--=.-|VPN5|---:'      /    |
             +--+   ++-+    :   ,-''   +----+    `--.  ;    ++-+   +--+
             |H6+---+R6|    | ,'          |          `.|    |R4+---+H4|
             +--+   +--+    ;/    +--+   ++-+          :    +--+   +--+
                           //     |H5+---+R5|           \
             enclave     ,'(      +--+   +--+            `.     enclave
            `.         ,'   \                 enclave   /  '-.         ,
              `-------'      \                         /      `-------'




Le Faucheur, et al.      Expires April 24, 2006                [Page 21]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


   Figure 2: Reservations in a Nested VPN

   For clarity we will only consider a subset of the traffic flows and
   will only consider:

   o  the flows from the VPN1 enclave to the VPN5 enclave (e.g. flows
      from Host H1 to Host H5)

   o  the flows from the VPN2 enclave to the VPN5 enclave (e.g. flows
      from Host H2 to Host H5)

   Let us assume that:

   o  there is one security association between VPN1 and VPN5 (SPI1)

   o  there are two security associations between VPN2 and VPN5 (SPI2
      and SPI3)

   o  the reservations from VPN1 enclave to VPN5 enclave have a
      preemption P1

   o  the reservations from VPN2 enclave to VPN5 have a preemption of
      either P1 or P2

   o  the reservations are either Voice (which needs to be treated in
      the aggregation region using the EF PHB) or Video (which needs to
      be treated in the aggregation region using the AF41 PHB)

   o  there is one security association between VPN7 and VPN8 (SPI4)

   o  that AH is used for IPsec tunneling

   Then, the following generic aggregate RSVP reservations may be
   established from VPN1 to VPN5 for aggregation of the lower level RSVP
   reservations:

   1.  Reservation for aggregation of Voice reservations from VPN1
       enclave to VPN5 enclave, requiring use of SPI1 and preemption P1:

       *  AGGREGATE-IPv4/GPI SESSION=VPN5/AH/V1/EF

       *  STYLE=FF or SE

       *  IPv4/GPI FILTER_SPEC=VPN1/SPI1

       *  POLICY_DATA (PREEMPTION_PRI)=P1





Le Faucheur, et al.      Expires April 24, 2006                [Page 22]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


   2.  Reservation for aggregation of Video reservations from VPN1
       enclave to VPN5 enclave, requiring use of SPI1 and preemption P1:

       *  AGGREGATE-IPv4/GPI SESSION=VPN5/AH/V2/AF41

       *  STYLE=FF or SE

       *  IPv4/GPI FILTER_SPEC=VPN1/SPI1

       *  POLICY_DATA (PREEMPTION_PRI)=P1

   where V1 and V2 are arbitrary VDstPort values picked by VPN5 within
   the range set aside for dynamic allocation (see section 6).

   The following generic aggregate RSVP reservations may be established
   from VPN2 to VPN5 for aggregation of the lower level RSVP
   reservations:

   1.  Reservation for aggregation of Voice reservations from VPN2
       enclave to VPN5 enclave, requiring use of SPI2 and preemption P1:

       *  AGGREGATE-IPv4/GPI SESSION=VPN5/AH/V3/EF

       *  STYLE=FF or SE

       *  IPv4/GPI FILTER_SPEC=VPN2/SPI2

       *  POLICY_DATA (PREEMPTION_PRI)=P1

   2.  Reservation for aggregation of Video reservations from VPN2
       enclave to VPN5 enclave, requiring use of SPI2 and preemption P1:

       *  AGGREGATE-IPv4/GPI SESSION=VPN5/AH/V4/AF41

       *  STYLE=FF or SE

       *  IPv4/GPI FILTER_SPEC=VPN2/SPI2

       *  POLICY_DATA (PREEMPTION_PRI)=P1

   3.  Reservation for aggregation of Voice reservations from VPN2
       enclave to VPN5 enclave, requiring use of SPI2 and preemption P2:

       *  AGGREGATE-IPv4/GPI SESSION=VPN5/AH/V5/EF

       *  STYLE=FF or SE





Le Faucheur, et al.      Expires April 24, 2006                [Page 23]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


       *  IPv4/GPI FILTER_SPEC=VPN2/SPI2

       *  POLICY_DATA (PREEMPTION_PRI)=P2

   4.  Reservation for aggregation of Video reservations from VPN2
       enclave to VPN5 enclave, requiring use of SPI2 and preemption P2:

       *  AGGREGATE-IPv4/GPI SESSION=VPN5/AH/V6/AF41

       *  STYLE=FF or SE

       *  IPv4/GPI FILTER_SPEC=VPN2/SPI2

       *  POLICY_DATA (PREEMPTION_PRI)=P2

   5.  Reservation for aggregation of Voice reservations from VPN2
       enclave to VPN5 enclave, requiring use of SPI3 and preemption P1:

       *  AGGREGATE-IPv4/GPI SESSION=VPN5/AH/V7/EF

       *  STYLE=FF or SE

       *  IPv4/GPI FILTER_SPEC=VPN2/SPI3

       *  POLICY_DATA (PREEMPTION_PRI)=P1

   6.  Reservation for aggregation of Video reservations from VPN2
       enclave to VPN5 enclave, requiring use of SPI3 and preemption P1:

       *  AGGREGATE-IPv4/GPI SESSION=VPN5/AH/V8/AF41

       *  STYLE=FF or SE

       *  IPv4/GPI FILTER_SPEC=VPN2/SPI3

       *  POLICY_DATA (PREEMPTION_PRI)=P1

   7.  Reservation for aggregation of Voice reservations from VPN2
       enclave to VPN5 enclave, requiring use of SPI3 and preemption P2:

       *  AGGREGATE-IPv4/GPI SESSION=VPN5/AH/V9/EF

       *  STYLE=FF or SE

       *  IPv4/GPI FILTER_SPEC=VPN2/SPI3

       *  POLICY_DATA (PREEMPTION_PRI)=P2




Le Faucheur, et al.      Expires April 24, 2006                [Page 24]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


   8.  Reservation for aggregation of Video reservations from VPN2
       enclave to VPN5 enclave, requiring use of SPI3 and preemption P2:

       *  AGGREGATE-IPv4/GPI SESSION=VPN5/AH/V10/AF41

       *  STYLE=FF or SE

       *  IPv4/GPI FILTER_SPEC=VPN2/SPI3

       *  POLICY_DATA (PREEMPTION_PRI)=P2

   where V3 to V10 are arbitrary VDstPort values picked by VPN5 within
   the range set aside for dynamic allocation (see section 6).

   The following generic aggregate RSVP reservations may be established
   from VPN7 to VPN8 for aggregation of the lower level RSVP
   reservations (i.e. the reservations from VPN1 to VPN5 and from VPN2
   to VPN5):

   1.  Reservation for aggregation of Voice reservations from interface
       domain 1 to interface domain 2, requiring use of SPI4 and
       preemption P1:

       *  AGGREGATE-IPv4/GPI SESSION=VPN8/AH/V1/EF

       *  STYLE=FF or SE

       *  IPv4/GPI FILTER_SPEC=VPN7/SPI4

       *  POLICY_DATA (PREEMPTION_PRI)=P1

   2.  Reservation for aggregation of Video reservations from interface
       domain 1 to interface domain 2, requiring use of SPI4 and
       preemption P1:

       *  AGGREGATE-IPv4/GPI SESSION=VPN8/AH/V2/AF41

       *  STYLE=FF or SE

       *  IPv4/GPI FILTER_SPEC=VPN7/SPI4

       *  POLICY_DATA (PREEMPTION_PRI)=P1

5.2.  Example Usage Of Multiple Generic Aggregate Reservations Per DSCP
      From a Given Aggregator to a Given Deaggregator






Le Faucheur, et al.      Expires April 24, 2006                [Page 25]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


                             I----------I               I----------I
                             I  Cloud-1 I               I  Cloud-2 I
                             I----------I               I----------I
                                   |                      |
                               Agg-Deag-1        Agg-Deag-2
                                       /         /
                                      I----------I
                                      I          I
                                      I  Cloud-0 I
                                      I          I
                                      I----------I
                                           /
                                     Agg-Deag-3
                                        |
                                  I----------I
                                  I  Cloud-3 I
                                  I----------I



   Figure 3: Example Scenario Requiring Multiple 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 PHB)

   o  traffic from the E2E reservations is encapsulated in Aggregate IP
      reservations from Aggregator to Deaggregator using GRE

   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.  Reservation for aggregation of Voice reservations from Cloud-1 to
       Cloud-3 requiring use of P1:

       *  AGGREGATE-IPv4/GPI SESSION=Agg-Deag-3/GRE/V1/EF

       *  STYLE=FF or SE




Le Faucheur, et al.      Expires April 24, 2006                [Page 26]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


       *  IPv4/GPI FILTER_SPEC=Agg-Deag-1/0

       *  POLICY_DATA (PREEMPTION_PRI)=P1

   2.  Reservation for aggregation of Voice reservations from Cloud-1 to
       Cloud-3 requiring use of P2:

       *  AGGREGATE-IPv4/GPI SESSION=Agg-Deag-3/GRE/V2/EF

       *  STYLE=FF or SE

       *  IPv4/GPI FILTER_SPEC=Agg-Deag-1/0

       *  POLICY_DATA (PREEMPTION_PRI)=P2

   where V1 and V2 are arbitrary VDstPort values picked by Agg-Deag-3
   within the range set aside for dynamic allocation (see section 6).

   And 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:

   1.  Reservation for aggregation of Voice reservations from Cloud-2 to
       Cloud-3 requiring use of P1:

       *  AGGREGATE-IPv4/GPI SESSION=Agg-Deag-3/GRE/V3/EF

       *  STYLE=FF or SE

       *  IPv4/GPI FILTER_SPEC=Agg-Deag-2/0

       *  POLICY_DATA (PREEMPTION_PRI)=P1

   2.  Reservation for aggregation of Voice reservations from Cloud-2 to
       Cloud-3 requiring use of P2:

       *  AGGREGATE-IPv4/GPI SESSION=Agg-Deag-3/GRE/V4/EF

       *  STYLE=FF or SE

       *  IPv4/GPI FILTER_SPEC=Agg-Deag-2/0

       *  POLICY_DATA (PREEMPTION_PRI)=P2

   where V3 and V4 are arbitrary VDstPort values picked by Agg-Deag-3
   within the range set aside for dynamic allocation (see section 6).





Le Faucheur, et al.      Expires April 24, 2006                [Page 27]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


6.  IANA Considerations

   This document requests that IANA allocates two new C-Types under the
   Class 1 for the two new RSVP objects defined in section 3.1.

   This document requests that IANA allocates a new Class-Num and a new
   C-Type for the two new RSVP object defined in section 3.2.

   This document defines in section 3.1 a "Virtual Destination Port
   (VDstPort)" field of 8 bits within the new Session objects defined in
   this document.  The range of possible vDstPort values is broken down
   into sections, in a fashion similar to the VDstPort range of [RSVP-
   IPSEC] (but not identical since the VDstPort field of [RSVP-IPSEC]
   has 16 bits):

      0         Illegal Value
      1 - 63    Assigned by IANA
      64 - 255  Dynamic

   IANA is requested to create and maintain this new name space.  The
   IANA guidelines for assignments for this field are as follows: o
   values in the range 1-63 are to be assigned according to the "XXX"
   policy defined in [IANA-CONS].




























Le Faucheur, et al.      Expires April 24, 2006                [Page 28]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


7.  Security Considerations

   The security considerations associated with the RSVP protocol [RSVP]
   apply to this document as it relies on RSVP.

   This document assumes that meaningful DSCP values are visible between
   the Aggregator and the Deaggregator.  This needs to be considered in
   high assurance IPsec environments.  Note that this considerations
   would also apply if a pure Diffserv service was used between IPsec
   VPN-routers without RSVP reservations, for example as would be the
   case if the uniform model defined in [DS-TUNNEL] was used for
   Diffserv support over IPsec tunnels.  We also note that in some
   environments (such as some wireless environments), visibility of the
   IP traffic (and hence of the DSCP) may be reduced through the use of
   link layer encryption.

   Where IPsec is used, all the E2E RSVP signaling is encrypted inside
   the IPsec tunnel and thus is not visible in the encrypted cloud.

   This document assumes that aggregate RSVP signaling is used between
   Aggregator and Deaggregator.  The mechanisms defined in [RSVP-CRYPTO]
   and [RSVP-CRYPTO2] can be used to provide hop-by-hop integrity and
   authentication of RSVP messages related to the aggregate reservations
   discussed in this document.

   This document assumes that, by default, the information signaled in
   RSVP for aggregate reservations is visible.  This may include such
   information as the preemption priority of an aggregate reservation.
   This needs to be considered in high assurance IPsec environments.
   Where justified, RSVP signaling could be encrypted hop-by-hop (for
   example via hop-by-hop IPsec tunnels).  Also, we note again that in
   some environments (such as some wireless environments), visibility of
   the IP traffic (and hence of RSVP) may be reduced through the use of
   link layer encryption.

   IPsec common practices involve regular IPsec tunnel key updates.
   This document does not impact these practices as it allows
   uninterrupted QoS service (and avoids duplicate resource allocation)
   during SPI value change.  Details of the corresponding procedures are
   provided in section 4.4.











Le Faucheur, et al.      Expires April 24, 2006                [Page 29]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


8.  Acknowledgments

   This document borrows heavily from [RSVP-IPSEC] and [RSVP-AGG].
   Also, we thank Fred Baker, Roger Levesque, Carol Iturralde, Daniel
   Voce and Anil Agarwal for their input into the content of this
   document.  Thanks to Steve Kent for insightful comments on security
   aspects.












































Le Faucheur, et al.      Expires April 24, 2006                [Page 30]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


9.  References

9.1.  Normative References

   [RSVP] "Resource ReSerVation Protocol (RSVP) -- Version 1 Functional
   Specification", Braden et al, RFC2205

   [RSVP-IPSEC] "RSVP Extensions for IPsec Data Flows", Berger et al,
   RFC2207

   [RSVP-AGG] "Aggregation of RSVP for IPv4 and IPv6 Reservations",
   Baker et al, RFC3175

   [SIG-NESTED] "QoS Signaling in a Nested Virtual Private Network",
   Baker et al, draft-baker-tsvwg-vpn-signaled-preemption-04.txt, work
   in progress

   [RSVP-PROCESS] "Resource ReSerVation Protocol (RSVP) -- Version 1
   Message Processing Rules", Braden et al, RFC2209

   [IPSEC-ARCH] "Security Architecture for the Internet Protocol", Kent
   et al, RFC2401

   [IPSEC-AH] "IP Authentication Header", Kent et al, RFC2402

   [IPSEC-ESP] "IP Encapsulating Security Payload (ESP)", Kent et al,
   RFC2406

   [RSVP-CRYPTO] "RSVP Cryptographic Authentication", Baker et al,
   RFC2747

   [RSVP-CRYPTO2] "RSVP Cryptographic Authentication", Braden et al,
   RFC3097

   [DS-TUNNEL] "Differentiated Services and Tunnels", Black, RFC2983

9.2.  Informative References

   [BW-REDUC] "A Resource Reservation Extension for the Reduction of
   Bandwidth of a Reservation Flow", Polk et al,
   draft-polk-tsvwg-rsvp-bw-reduction-01.txt, work in progress

   [RSVP-TUNNEL] "RSVP Operation Over IP Tunnels", Terzis et al., RFC
   2746, January 2000.







Le Faucheur, et al.      Expires April 24, 2006                [Page 31]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


Authors' Addresses

   Francois Le Faucheur
   Cisco Systems
   Greenside - 400 Avenue de Roumanille
   Sophia Antipolis,   06410
   France

   Phone: +33-4-97-23-26-19
   Fax:   +33-4-97-23-26-26
   Email: flefauch@cisco.com


   Bruce Davie
   Cisco Systems
   1414 Massachusetts Ave.
   Boxborough, MA  01719
   USA

   Phone:
   Fax:
   Email: bdavie@cisco.com


   Pratik Bose
   Lockheed Martin
   22300 Comsat Drive Clarksburg, MD 20814 USA


   Phone: +1 301 428 4215
   Fax:   +1 301 428 5147
   Email: pratik.bose@lmco. com


   Chris Christou
   Booz Allen Hamilton
   8283 Greensboro Drive
   McLean, VA 22102,
   USA

   Phone:
   Fax:
   Email: christou_chris@bah.com








Le Faucheur, et al.      Expires April 24, 2006                [Page 32]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


   Mike Davenport
   Booz Allen Hamilton
   Suite 390
   5220 Pacific Concourse Drive,   Los Angeles, CA 90045
   USA

   Phone:
   Fax:
   Email: davenport_michael@bah.com










































Le Faucheur, et al.      Expires April 24, 2006                [Page 33]

Internet-Draft     Generic Aggregate RSVP Reservations      October 2005


Intellectual Property Statement

   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.


Disclaimer of Validity

   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 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.


Copyright Statement

   Copyright (C) The Internet Society (2005).  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.


Acknowledgment

   Funding for the RFC Editor function is currently provided by the
   Internet Society.




Le Faucheur, et al.      Expires April 24, 2006                [Page 34]