RFC 6387 PROPOSED STANDARD GMPLS · RSVP · SIGNALING

GMPLS Asymmetric Bandwidth Bidirectional Label Switched Paths (LSPs)

How GMPLS paths can reserve different bandwidth in each direction, using three new RSVP objects.

On rfc-editor.org ↗
PUBLISHED
September 2011
AUTHORS
A. Takacs, L. Berger, D. Caviglia, D. Fedyk, J. Meuric
STREAM
IETF
BUILDS ON
RFC 5467 — GMPLS Asymmetric LSPs
UPSTREAM_FLOWSPEC CLASS NUMBER
120
UPSTREAM_TSPEC CLASS NUMBER
121
UPSTREAM_ADSPEC CLASS NUMBER
122
SUPPORTED LSP TYPE
Point-to-Point only
DOI
10.17487/RFC6387

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Internet Engineering Task Force (IETF)                         A. Takacs
Request for Comments: 6387                                      Ericsson
Obsoletes: 5467                                                L. Berger
Category:  Standards Track                       LabN Consulting, L.L.C.
ISSN:  2070-1721                                             D. Caviglia
                                                                Ericsson
                                                                D. Fedyk
                                                          Alcatel-Lucent
                                                               J. Meuric
                                                   France Telecom Orange
                                                          September 2011


  GMPLS Asymmetric Bandwidth Bidirectional Label Switched Paths (LSPs)

Abstract

   This document defines a method for the support of GMPLS asymmetric
   bandwidth bidirectional Label Switched Paths (LSPs).  The approach
   presented is applicable to any switching technology and builds on the
   original Resource Reservation Protocol (RSVP) model for the transport
   of traffic-related parameters.  This document moves the experiment
   documented in RFC 5467 to the standards track and obsoletes RFC 5467.

Status of This Memo

   This is an Internet Standards Track document.

   This document is a product of the Internet Engineering Task Force
   (IETF).  It represents the consensus of the IETF community.  It has
   received public review and has been approved for publication by the
   Internet Engineering Steering Group (IESG).  Further information on
   Internet Standards is available in Section 2 of RFC 5741.

   Information about the current status of this document, any errata,
   and how to provide feedback on it may be obtained at
   http://www.rfc-editor.org/info/rfc6387.

Copyright Notice

   Copyright (c) 2011 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  2
     1.1.  Background . . . . . . . . . . . . . . . . . . . . . . . .  3
     1.2.  Approach Overview  . . . . . . . . . . . . . . . . . . . .  3
     1.3.  Conventions Used in This Document  . . . . . . . . . . . .  4
   2.  Generalized Asymmetric Bandwidth Bidirectional LSPs  . . . . .  4
     2.1.  UPSTREAM_FLOWSPEC Object . . . . . . . . . . . . . . . . .  5
       2.1.1.  Procedures . . . . . . . . . . . . . . . . . . . . . .  5
     2.2.  UPSTREAM_TSPEC Object  . . . . . . . . . . . . . . . . . .  5
       2.2.1.  Procedures . . . . . . . . . . . . . . . . . . . . . .  5
     2.3.  UPSTREAM_ADSPEC Object . . . . . . . . . . . . . . . . . .  6
       2.3.1.  Procedures . . . . . . . . . . . . . . . . . . . . . .  6
   3.  Packet Formats . . . . . . . . . . . . . . . . . . . . . . . .  6
   4.  Compatibility  . . . . . . . . . . . . . . . . . . . . . . . .  7
   5.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . .  8
     5.1.  UPSTREAM_FLOWSPEC Object . . . . . . . . . . . . . . . . .  8
     5.2.  UPSTREAM_TSPEC Object  . . . . . . . . . . . . . . . . . .  8
     5.3.  UPSTREAM_ADSPEC Object . . . . . . . . . . . . . . . . . .  8
   6.  Security Considerations  . . . . . . . . . . . . . . . . . . .  8
   7.  References . . . . . . . . . . . . . . . . . . . . . . . . . .  9
     7.1.  Normative References . . . . . . . . . . . . . . . . . . .  9
     7.2.  Informative References . . . . . . . . . . . . . . . . . .  9

1.  Introduction

   GMPLS [RFC3473] introduced explicit support for bidirectional Label
   Switched Paths (LSPs).  The defined support matched the switching
   technologies covered by GMPLS, notably Time Division Multiplexing
   (TDM) and lambdas; specifically, it only supported bidirectional LSPs
   with symmetric bandwidth allocation.  Symmetric bandwidth
   requirements are conveyed using the semantics objects defined in
   [RFC2205] and [RFC2210].

   GMPLS asymmetric bandwidth bidirectional LSPs are bidirectional LSPs
   that have different bandwidth reservations in each direction.
   Support for bidirectional LSPs with asymmetric bandwidth was
   previously discussed in the context of Ethernet, notably [RFC6060]
   and [RFC6003].  In that context, asymmetric bandwidth support was
   considered to be a capability that was unlikely to be deployed, and
   hence [RFC5467] was published as Experimental.  The MPLS Transport
   Profile, MPLS-TP, requires that asymmetric bandwidth bidirectional
   LSPs be supported (see [RFC5654]); therefore, this document is being
   published on the Standards Track.  This document has no technical
   changes from the approach defined in [RFC5467].  This document moves
   the experiment documented in [RFC5467] to the standards track and
   obsoletes [RFC5467].  This document also removes the Ethernet-
   technology-specific alternative approach discussed in the appendix of
   [RFC5467] and maintains only one approach that is suitable for use
   with any technology.

1.1.  Background

   Bandwidth parameters are transported within RSVP ([RFC2210],
   [RFC3209], and [RFC3473]) via several objects that are opaque to
   RSVP.  While opaque to RSVP, these objects support a particular model
   for the communication of bandwidth information between an RSVP
   session sender (ingress) and receiver (egress).  The original model
   of communication, defined in [RFC2205] and maintained in [RFC3209],
   used the SENDER_TSPEC and ADSPEC objects in Path messages and the
   FLOWSPEC object in Resv messages.  The SENDER_TSPEC object was used
   to indicate a sender's data generation capabilities.  The FLOWSPEC
   object was issued by the receiver and indicated the resources that
   should be allocated to the associated data traffic.  The ADSPEC
   object was used to inform the receiver and intermediate hops of the
   actual resources available for the associated data traffic.

   With the introduction of bidirectional LSPs in [RFC3473], the model
   of communication of bandwidth parameters was implicitly changed.  In
   the context of [RFC3473] bidirectional LSPs, the SENDER_TSPEC object
   indicates the desired resources for both upstream and downstream
   directions.  The FLOWSPEC object is simply confirmation of the
   allocated resources.  The definition of the ADSPEC object is either
   unmodified and only has meaning for downstream traffic, or is
   implicitly or explicitly ([RFC4606] and [RFC6003]) irrelevant.

1.2.  Approach Overview

   The approach for supporting asymmetric bandwidth bidirectional LSPs
   defined in this document builds on the original RSVP model for the
   transport of traffic-related parameters and GMPLS's support for
   bidirectional LSPs.

   The defined approach is generic and can be applied to any switching
   technology supported by GMPLS.  With this approach, the existing
   SENDER_TSPEC, ADSPEC, and FLOWSPEC objects are complemented with the
   addition of new UPSTREAM_TSPEC, UPSTREAM_ADSPEC, and
   UPSTREAM_FLOWSPEC objects.  The existing objects are used in the
   original fashion defined in [RFC2205] and [RFC2210], and refer only
   to traffic associated with the LSP flowing in the downstream
   direction.  The new objects are used in exactly the same fashion as
   the old objects, but refer to the upstream traffic flow Figure 1
   shows the bandwidth-related objects used for asymmetric bandwidth
   bidirectional LSPs.

                    |---|        Path        |---|
                    | I |------------------->| E |
                    | n | -SENDER_TSPEC      | g |
                    | g | -ADSPEC            | r |
                    | r | -UPSTREAM_FLOWSPEC | e |
                    | e |                    | s |
                    | s |        Resv        | s |
                    | s |<-------------------|   |
                    |   | -FLOWSPEC          |   |
                    |   | -UPSTREAM_TSPEC    |   |
                    |   | -UPSTREAM_ADSPEC   |   |
                    |---|                    |---|

         Figure 1: Generic Asymmetric Bandwidth Bidirectional LSPs

   The extensions defined in this document are limited to Point-to-Point
   (P2P) LSPs.  Support for Point-to-Multipoint (P2MP) bidirectional
   LSPs is not currently defined and, as such, not covered in this
   document.

1.3.  Conventions Used in This Document

   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 [RFC2119].

2.  Generalized Asymmetric Bandwidth Bidirectional LSPs

   The setup of an asymmetric bandwidth bidirectional LSP is signaled
   using the bidirectional procedures defined in [RFC3473] together with
   the inclusion of the new UPSTREAM_FLOWSPEC, UPSTREAM_TSPEC, and
   UPSTREAM_ADSPEC objects.

   The new upstream objects carry the same information and are used in
   the same fashion as the existing downstream objects; they differ in
   that they relate to traffic flowing in the upstream direction while
   the existing objects relate to traffic flowing in the downstream
   direction.  The new objects also differ in that they are carried in
   messages traveling in the opposite direction.

2.1.  UPSTREAM_FLOWSPEC Object

   The format of an UPSTREAM_FLOWSPEC object is the same as a FLOWSPEC
   object [RFC2210].  This includes the definition of class types and
   their formats.  The class number of the UPSTREAM_FLOWSPEC object is
   120 (of the form 0bbbbbbb).

2.1.1.  Procedures

   The Path message of an asymmetric bandwidth bidirectional LSP MUST
   contain an UPSTREAM_FLOWSPEC object and MUST use the bidirectional
   LSP formats and procedures defined in [RFC3473].  The C-Type of the
   UPSTREAM_FLOWSPEC object MUST match the C-Type of the SENDER_TSPEC
   object used in the Path message.  The contents of the
   UPSTREAM_FLOWSPEC object MUST be constructed using a format and
   procedures consistent with those used to construct the FLOWSPEC
   object that will be used for the LSP, e.g., [RFC2210] or [RFC4328].

   Nodes processing a Path message containing an UPSTREAM_FLOWSPEC
   object MUST use the contents of the UPSTREAM_FLOWSPEC object in the
   upstream label and the resource allocation procedure defined in
   Section 3.1 of [RFC3473].  Consistent with [RFC3473], a node that is
   unable to allocate a label or internal resources based on the
   contents of the UPSTREAM_FLOWSPEC object MUST issue a PathErr message
   with a "Routing problem/MPLS label allocation failure" indication.

2.2.  UPSTREAM_TSPEC Object

   The format of an UPSTREAM_TSPEC object is the same as a SENDER_TSPEC
   object, which includes the definition of class types and their
   formats.  The class number of the UPSTREAM_TSPEC object is 121 (of
   the form 0bbbbbbb).

2.2.1.  Procedures

   The UPSTREAM_TSPEC object describes the traffic flow that originates
   at the egress.  The UPSTREAM_TSPEC object MUST be included in any
   Resv message that corresponds to a Path message containing an
   UPSTREAM_FLOWSPEC object.  The C-Type of the UPSTREAM_TSPEC object
   MUST match the C-Type of the corresponding UPSTREAM_FLOWSPEC object.
   The contents of the UPSTREAM_TSPEC object MUST be constructed using a
   format and procedures consistent with those used to construct the
   FLOWSPEC object that will be used for the LSP, e.g., [RFC2210] or
   [RFC4328].  The contents of the UPSTREAM_TSPEC object MAY differ from
   contents of the UPSTREAM_FLOWSPEC object based on application data
   transmission requirements.

   When an UPSTREAM_TSPEC object is received by an ingress, the ingress
   MAY determine that the original reservation is insufficient to
   satisfy the traffic flow.  In this case, the ingress MAY tear down
   the LSP and send a PathTear message.  Alternatively, the ingress MAY
   issue a Path message with an updated UPSTREAM_FLOWSPEC object to
   modify the resources requested for the upstream traffic flow.  This
   modification might require the LSP to be re-routed, and in extreme
   cases might result in the LSP being torn down when sufficient
   resources are not available along the path of the LSP.

2.3.  UPSTREAM_ADSPEC Object

   The format of an UPSTREAM_ADSPEC object is the same as an ADSPEC
   object.  This includes the definition of class types and their
   formats.  The class number of the UPSTREAM_ADSPEC object is 122 (of
   the form 0bbbbbbb).

2.3.1.  Procedures

   The UPSTREAM_ADSPEC object MAY be included in any Resv message that
   corresponds to a Path message containing an UPSTREAM_FLOWSPEC object.
   The C-Type of the UPSTREAM_TSPEC object MUST be consistent with the
   C-Type of the corresponding UPSTREAM_FLOWSPEC object.  The contents
   of the UPSTREAM_ADSPEC object MUST be constructed using a format and
   procedures consistent with those used to construct the ADSPEC object
   that will be used for the LSP, e.g., [RFC2210] or [RFC6003].  The
   UPSTREAM_ADSPEC object is processed using the same procedures as the
   ADSPEC object and, as such, MAY be updated or added at transit nodes.

3.  Packet Formats

   This section presents the RSVP message-related formats as modified by
   this section.  This document modifies formats defined in [RFC2205],
   [RFC3209], and [RFC3473].  See [RFC5511] for the syntax used by RSVP.
   Unmodified formats are not listed.  Three new objects are defined in
   this section:

      Object name            Applicable RSVP messages
      ---------------        ------------------------
      UPSTREAM_FLOWSPEC      Path, PathTear, PathErr, and Notify
                                 (via sender descriptor)
      UPSTREAM_TSPEC         Resv, ResvConf, ResvTear, ResvErr, and
                                 Notify (via flow descriptor list)
      UPSTREAM_ADSPEC        Resv, ResvConf, ResvTear, ResvErr, and
                                 Notify (via flow descriptor list)

   The format of the sender description for bidirectional asymmetric
   LSPs is:

      <sender descriptor> ::=  <SENDER_TEMPLATE> <SENDER_TSPEC>
                               [ <ADSPEC> ]
                               [ <RECORD_ROUTE> ]
                               [ <SUGGESTED_LABEL> ]
                               [ <RECOVERY_LABEL> ]
                               <UPSTREAM_LABEL>
                               <UPSTREAM_FLOWSPEC>

   The format of the flow descriptor list for bidirectional asymmetric
   LSPs is:

      <flow descriptor list> ::= <FF flow descriptor list>
                               | <SE flow descriptor>

      <FF flow descriptor list> ::= <FLOWSPEC>
                               <UPSTREAM_TSPEC> [ <UPSTREAM_ADSPEC> ]
                               <FILTER_SPEC>
                               <LABEL> [ <RECORD_ROUTE> ]
                               | <FF flow descriptor list>
                               <FF flow descriptor>

      <FF flow descriptor> ::= [ <FLOWSPEC> ]
                               [ <UPSTREAM_TSPEC>] [ <UPSTREAM_ADSPEC> ]
                               <FILTER_SPEC> <LABEL>
                               [ <RECORD_ROUTE> ]

      <SE flow descriptor> ::= <FLOWSPEC>
                               <UPSTREAM_TSPEC> [ <UPSTREAM_ADSPEC> ]
                               <SE filter spec list>

      <SE filter spec list> is unmodified by this document.

4.  Compatibility

   This extension reuses and extends semantics and procedures defined in
   [RFC2205], [RFC3209], and [RFC3473] to support bidirectional LSPs
   with asymmetric bandwidth.  Three new objects are defined to indicate
   the use of asymmetric bandwidth.  Each of these objects is defined
   with class numbers in the form 0bbbbbbb.  Per [RFC2205], nodes not
   supporting this extension will not recognize the new class numbers
   and will respond with an "Unknown Object Class" error.  The error
   message will propagate to the ingress, which can then take action to
   avoid the path with the incompatible node or can simply terminate the
   session.

5.  IANA Considerations

   The IANA has made the assignments described below in the "Class
   Names, Class Numbers, and Class Types" section of the "RSVP
   PARAMETERS" registry.

5.1.  UPSTREAM_FLOWSPEC Object

   The class named UPSTREAM_FLOWSPEC has been assigned in the 0bbbbbbb
   range (120) with the following definition:

        Class Types or C-types:

        Same values as FLOWSPEC object (C-Num 9)

5.2.  UPSTREAM_TSPEC Object

   The class named UPSTREAM_TSPEC has been assigned in the 0bbbbbbb
   range (121) with the following definition:

        Class Types or C-types:

        Same values as SENDER_TSPEC object (C-Num 12)

5.3.  UPSTREAM_ADSPEC Object

   The class named UPSTREAM_ADSPEC has been assigned in the 0bbbbbbb
   range (122) with the following definition:

        Class Types or C-types:

        Same values as ADSPEC object (C-Num 13)

6.  Security Considerations

   This document introduces new message objects for use in GMPLS
   signaling [RFC3473] -- specifically the UPSTREAM_TSPEC,
   UPSTREAM_ADSPEC, and UPSTREAM_FLOWSPEC objects.  These objects
   parallel the existing SENDER_TSPEC, ADSPEC, and FLOWSPEC objects but
   are used in the opposite direction.  As such, any vulnerabilities
   that are due to the use of the old objects now apply to messages
   flowing in the reverse direction.

   From a message standpoint, this document does not introduce any new
   signaling messages or change the relationship between LSRs that are
   adjacent in the control plane.  As such, this document introduces no
   additional message- or neighbor-related security considerations.

   See [RFC3473] for relevant security considerations and [RFC5920] for
   a more general discussion on RSVP-TE security discussions.

7.  References

7.1.  Normative References

   [RFC2205]   Braden, R., Ed., Zhang, L., Berson, S., Herzog, S., and
               S. Jamin, "Resource ReSerVation Protocol (RSVP) --
               Version 1 Functional Specification", RFC 2205, September
               1997.

   [RFC2119]   Bradner, S., "Key words for use in RFCs to Indicate
               Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2210]   Wroclawski, J., "The Use of RSVP with IETF Integrated
               Services", RFC 2210, September 1997.

   [RFC3209]   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.

   [RFC3473]   Berger, L., Ed., "Generalized Multi-Protocol Label
               Switching (GMPLS) Signaling Resource ReserVation
               Protocol-Traffic Engineering (RSVP-TE) Extensions", RFC
               3473, January 2003.

7.2.  Informative References

   [RFC4606]   Mannie, E. and D. Papadimitriou, "Generalized Multi-
               Protocol Label Switching (GMPLS) Extensions for
               Synchronous Optical Network (SONET) and Synchronous
               Digital Hierarchy (SDH) Control", RFC 4606, August 2006.

   [RFC4328]   Papadimitriou, D., Ed., "Generalized Multi-Protocol Label
               Switching (GMPLS) Signaling Extensions for G.709 Optical
               Transport Networks Control", RFC 4328, January 2006.

   [RFC5511]   Farrel, A., "Routing Backus-Naur Form (RBNF): A Syntax
               Used to Form Encoding Rules in Various Routing Protocol
               Specifications", RFC 5511, April 2009.

   [RFC5654]   Niven-Jenkins, B., Ed., Brungard, D., Ed., Betts, M.,
               Ed., Sprecher, N., and S. Ueno, "Requirements of an MPLS
               Transport Profile", RFC 5654, September 2009.

   [RFC5920]   Fang, L., Ed., "Security Framework for MPLS and GMPLS
               Networks", RFC 5920, July 2010.

   [RFC5467]   Berger, L., Takacs, A., Caviglia, D., Fedyk, D., and J.
               Meuric, "GMPLS Asymmetric Bandwidth Bidirectional Label
               Switched Paths (LSPs)", RFC 5467, March 2009.

   [RFC6003]   Papadimitriou, D., "Ethernet Traffic Parameters", RFC
               6003, October 2010.

   [RFC6060]   Fedyk, D., Shah, H., Bitar, N., and A. Takacs,
               "Generalized Multiprotocol Label Switching (GMPLS)
               Control of Ethernet Provider Backbone Traffic Engineering
               (PBB-TE)", RFC 6060, March 2011.

Authors' Addresses

   Attila Takacs
   Ericsson
   Konyves Kalman krt. 11.
   Budapest, 1097
   Hungary

   EMail: attila.takacs@ericsson.com


   Lou Berger
   LabN Consulting, L.L.C.

   EMail: lberger@labn.net


   Diego Caviglia
   Ericsson
   Via A. Negrone 1/A
   Genova-Sestri Ponente,
   Italy

   Phone: +390106003738
   Fax:
   EMail: diego.caviglia@ericsson.com


   Don Fedyk
   Alcatel-Lucent
   Groton, MA
   USA

   EMail: donald.fedyk@alcatel-lucent.com


   Julien Meuric
   France Telecom Orange
   2, avenue Pierre Marzin
   Lannion Cedex,   22307
   France

   EMail: julien.meuric@orange.com

AI ELI5

On this page
PROBLEMGMPLS bidirectional Label Switched Paths could only reserve the same bandwidth in both directions, but some uses, notably MPLS-TP, need different amounts for each direction.
MECHANISMThree new RSVP objects, UPSTREAM_TSPEC, UPSTREAM_ADSPEC and UPSTREAM_FLOWSPEC, carry the upstream traffic parameters in the same way the existing objects carry the downstream ones.
WHY IT MATTERSThe approach is the one from the experimental RFC 5467 with no technical changes. It is now on the standards track and RFC 5467 is obsoleted.

§1Why Asymmetric Bandwidth

GMPLS, as defined in RFC 3473, introduced explicit support for bidirectional Label Switched Paths (LSPs). That support matched switching technologies such as Time Division Multiplexing (TDM) and lambdas, and it only allowed symmetric bandwidth: the same reservation in each direction.

An asymmetric bandwidth bidirectional LSP has a different bandwidth reservation in each direction. The idea was first discussed for Ethernet and published as Experimental in RFC 5467, because it was thought unlikely to be deployed. The MPLS Transport Profile (MPLS-TP) requires such LSPs, so this document moves the experiment to the standards track. It states that it has no technical changes from RFC 5467, and it drops the Ethernet-specific alternative from that RFC's appendix, keeping a single approach that works with any technology.

Old two-way paths always gave both directions the same amount of room. Now some jobs need more room one way than the other, so the rules were upgraded.

§1.1How RSVP Carries Bandwidth Today

RSVP treats bandwidth parameters as opaque objects. In the original model from RFC 2205, the sender puts SENDER_TSPEC and ADSPEC in Path messages, and the receiver answers with a FLOWSPEC in Resv messages. The SENDER_TSPEC describes what the sender can generate, the FLOWSPEC says what resources should be allocated, and the ADSPEC tells the receiver and intermediate hops what is actually available.

With bidirectional LSPs in RFC 3473 the model changed implicitly. The SENDER_TSPEC indicates the desired resources for both directions, and the FLOWSPEC just confirms what was allocated. The ADSPEC only has meaning for downstream traffic, or is irrelevant.

Normally the sender asks for room and the receiver says yes. With two-way paths that asking only covered one amount for both ways, so there was no place to ask for two different amounts.

§1.2The Approach: Mirror Objects for Upstream

The existing SENDER_TSPEC, ADSPEC and FLOWSPEC objects stay as they are and refer only to traffic in the downstream direction. Three new objects are added: UPSTREAM_TSPEC, UPSTREAM_ADSPEC and UPSTREAM_FLOWSPEC. They are used exactly like the old ones but describe the upstream flow, and they travel in messages going the opposite way.

The approach is generic and applies to any switching technology supported by GMPLS. It is limited to Point-to-Point (P2P) LSPs; Point-to-Multipoint bidirectional LSPs are not covered.

There was one form for asking for room. Now there is a second, matching form for the other direction, so each direction can ask for its own amount.

BANDWIDTH OBJECTS IN PATH AND RESV (FIGURE 1)
IngressEgress
  1. PathSENDER_TSPEC, ADSPEC, UPSTREAM_FLOWSPEC
  2. ResvFLOWSPEC, UPSTREAM_TSPEC, UPSTREAM_ADSPEC

§2Object Procedures

An asymmetric LSP is set up with the bidirectional procedures of RFC 3473 plus the three new objects. Each new object has the same format as its downstream twin.

  • UPSTREAM_FLOWSPEC (class number 120): the Path message MUST contain it. Its C-Type MUST match the SENDER_TSPEC C-Type. A node that cannot allocate a label or resources from it MUST send a PathErr with a "Routing problem/MPLS label allocation failure" indication.
  • UPSTREAM_TSPEC (class number 121): describes the traffic that starts at the egress. It MUST be in any Resv message answering a Path that held an UPSTREAM_FLOWSPEC, and its contents MAY differ from that object.
  • UPSTREAM_ADSPEC (class number 122): MAY be included in such a Resv message, is processed like an ADSPEC, and MAY be updated or added at transit nodes.

When the ingress receives an UPSTREAM_TSPEC, it MAY decide the original reservation is not enough. It can then tear the LSP down with a PathTear, or send a new Path message with an updated UPSTREAM_FLOWSPEC. That change might force a re-route and, in extreme cases, tear the LSP down if resources run out.

The starting end asks for the amount it wants for the return trip. The far end can say what it actually plans to send back, and if that is more than was reserved, the start can ask again or give up.

§3Message Formats

The new objects appear in specific RSVP messages. UPSTREAM_FLOWSPEC goes with the sender descriptor in Path, PathTear, PathErr and Notify. UPSTREAM_TSPEC and UPSTREAM_ADSPEC go with the flow descriptor list in Resv, ResvConf, ResvTear, ResvErr and Notify.

In the sender descriptor, <UPSTREAM_LABEL> and <UPSTREAM_FLOWSPEC> are required after the optional objects. In the flow descriptors, <UPSTREAM_TSPEC> follows the <FLOWSPEC> and an optional <UPSTREAM_ADSPEC> may follow it. The syntax follows RFC 5511, and unmodified formats are not repeated.

This part is the exact checklist of which forms go into which kinds of letters, so every router reads them in the same order.

§4Compatibility With Older Nodes

The three new objects use class numbers of the form 0bbbbbbb. Under RFC 2205, a node that does not support this extension will not recognize those class numbers and responds with an "Unknown Object Class" error. The error propagates to the ingress, which can then avoid the incompatible node or simply end the session.

IANA assigned the classes in the RSVP PARAMETERS registry: 120 for UPSTREAM_FLOWSPEC (same C-Types as FLOWSPEC, C-Num 9), 121 for UPSTREAM_TSPEC (same as SENDER_TSPEC, C-Num 12) and 122 for UPSTREAM_ADSPEC (same as ADSPEC, C-Num 13).

If a router has never heard of the new forms, it says so, and the sender can pick a route around it.

NEW RSVP CLASS NUMBERS ASSIGNED BY IANA
  • 120UPSTREAM_FLOWSPEC — Same C-Types as FLOWSPEC (C-Num 9).
  • 121UPSTREAM_TSPEC — Same C-Types as SENDER_TSPEC (C-Num 12).
  • 122UPSTREAM_ADSPEC — Same C-Types as ADSPEC (C-Num 13).

§6Security Considerations

The new objects parallel the old ones but are used in the opposite direction. So any vulnerability that comes from the old objects now applies to messages flowing in the reverse direction.

The document adds no new signaling messages and does not change the relationship between control-plane neighbors, so it adds no further message- or neighbor-related concerns. It points to RFC 3473 and RFC 5920 for the wider discussion of GMPLS and RSVP-TE security.

The new forms can be misused in the same ways as the old ones, just going the other way. Nothing brand new is added to worry about.

§8References