RFC 3496

Protocol Extension for Support of Asynchronous Transfer Mode (ATM) Service Class-aware Multiprotocol Label Switching (MPLS) Traffic Engineering

๐Ÿ“… published March 2003, from ietf

RFC 3496 ๐ŸŽ€ Title Block Tea โ˜•

Okay bestie, this one's a real one. ๐Ÿ’… It's RFC 3496, from the Network Working Group, dated March 2003. Its title is Protocol Extension for Support of Asynchronous Transfer Mode (ATM) Service Class-aware Multiprotocol Label Switching (MPLS) Traffic Engineering โœจ.

The authors are A. G. Malis (Andrew G. Malis) and T. Hsiao (Tony Hsiao), both from Vivace Networks ๐Ÿฆ‹. The category is Informational ๐ŸŒธ. The title block doesn't list anything it obsoletes or updates. Blank space, no drama ๐Ÿ™ˆ.


Status of this Memo ๐Ÿซถ

Okay so this doc is giving information for the Internet community. It is NOT an Internet standard, no cap ๐Ÿงข. Distribution is unlimited, so share it with everyone ๐Ÿ’–.

Copyright (C) The Internet Society (2003). All Rights Reserved ๐Ÿ‘‘.

Abstract โœจ

So the big idea is this: it's a Resource ReSerVation Protocol-Traffic Engineering (RSVP-TE) signaling extension that supports Asynchronous Transfer Mode (ATM) Service Class-aware Multiprotocol Label Switching (MPLS) Traffic Engineering ๐Ÿ”ฅ.

Table of Contents ๐Ÿ—‚๏ธ

1.  Overview......................................................2
2.  Extended RSVP-TE Path Message Format..........................2
    2.1 PATH Message Format.......................................3
3.  ATM_SERVICECLASS Object.......................................3
4.  Handling the ATM_SERVICECLASS Object..........................4
5.  Non-support of the ATM_SERVICECLASS Object....................4
6.  Security Considerations.......................................4
7.  IANA Considerations...........................................5
8.  References....................................................5
9.  Authors' Addresses............................................5
10. Full Copyright Statement......................................6

1. Overview ๐ŸŒˆ

Okay so this doc defines an RSVP-TE protocol addition that brings ATM Service Class-aware MPLS Traffic Engineering to the party ๐ŸŽ‰.

This addition works with all MPLS Label Switched Routers (LSRs) and all link types, including (but not limited to) Packet over SONET, Ethernet, and ATM links ๐Ÿ”—. It's used to signal traffic engineered paths that can support the ATM service classes defined by the ATM Forum [TM] ๐Ÿ’œ.

Now here's the tea โ˜•: this doc does not explain HOW the MPLS LSRs actually pull off those ATM service classes (stuff like queuing and scheduling). It only covers how to signal that the TE path has to support those classes ๐Ÿ™ˆ. A super useful use case is carrying ATM cells inside IP or MPLS packets, so MPLS networks can act as drop-in replacements for ATM networks ๐Ÿงš.


2. Extended RSVP-TE Path Message Format ๐Ÿ’…

So this doc adds exactly one new RSVP-TE Object: the ATM_SERVICECLASS Object ๐ŸŽ€. Its full details are down below. It goes in PATH messages, and only the ones used to set up LSP (Label Switched Path) Tunnels under [RSVP-TE] ๐Ÿฆ‹. Those PATH messages carry a Session Object with a C-Type equal to LSP_TUNNEL_IPv4, plus a LABEL_REQUEST object ๐Ÿ“.

All the [RSVP-TE] restrictions for setting up LSP Tunnels also apply to these ATM Service Class-aware tunnels ๐Ÿ”’. For example, only unicast LSPs are supported, and multicast LSPs are "for further study" ๐ŸŒธ.

Also, the ATM_SERVICECLASS object is optional from RSVP-TE's point of view ๐Ÿ’–. That means general RSVP-TE implementations that don't care about ATM Service Class-aware MPLS LSP setup don't have to support it โœจ.

2.1 PATH Message Format ๐Ÿงพ

The extended PATH message looks like this ๐Ÿ‘€:

<PATH Message> ::=      <Common Header> [ <INTEGRITY> ]
                             <SESSION> <RSVP_HOP>
                         <TIME_VALUES>
                         [ <EXPLICIT_ROUTE> ]
                         <LABEL_REQUEST>
                         [ <SESSION_ATTRIBUTE> ]
                         [ <DIFFSERV> ]
                         [ <ATM_SERVICECLASS> ]
                         [ <POLICY_DATA> ... ]
                         [ <sender descriptor> ]

<sender descriptor> ::=  <SENDER_TEMPLATE> [ <SENDER_TSPEC> ]
                         [ <ADSPEC> ]
                         [ <RECORD_ROUTE> ]

3. ATM_SERVICECLASS Object ๐Ÿฆ„

The ATM_SERVICECLASS object is laid out like this ๐Ÿ’œ. Its Class Number is 227 and its C_Type is 1 ๐Ÿ”ฅ.

Class Number = 227, C_Type = 1

 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                       Reserved                          | SC  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Reserved: 29 bits ๐Ÿซง This field is reserved. It must be set to zero on transmission and must be ignored on receipt.

SC: 3 bits ๐ŸŒท This tells you the ATM Service Class. The values currently allowed are:

  • 0: UBR (Unspecified Bit Rate)
  • 1: VBR-NRT (Variable Bit Rate, Non-Real Time)
  • 2: VBR-RT (Variable Bit Rate, Real Time)
  • 3: CBR (Constant Bit Rate)
  • 4-7: reserved

4. Handling the ATM_SERVICECLASS Object ๐ŸŽฌ

So to set up an LSP tunnel with RSVP-TE, the sender LSR builds a PATH message with a session type of LSP_Tunnel_IPv4 and a LABEL_REQUEST object, as described in [RSVP-TE] ๐Ÿญ. The sender LSR may also include the DIFFSERV object, following [DIFF-MPLS] โœจ.

If the LSP is tied to an ATM Service Class, the sender LSR must include the ATM_SERVICECLASS object in the PATH message, with the Service-Class (SC) field set to the class it wants ๐Ÿ’–.

If a path message has multiple ATM_SERVICECLASS objects, only the first one counts ๐Ÿ™ƒ. The later ones must be ignored, and they must not be forwarded ๐Ÿšซ.

Every ATM_SERVICECLASS-aware LSR along the path records the ATM_SERVICECLASS object (when it's there) in its path state block ๐Ÿ“.

The destination LSR answers the PATH message with a RESV message that has no ATM_SERVICECLASS object in it. This is true whether or not the PATH message had one ๐ŸŒˆ.


5. Non-support of the ATM_SERVICECLASS Object ๐Ÿฅ€

Okay this part is kinda important, so pay attention ๐Ÿ‘€.

If an LSR doesn't recognize the ATM_SERVICECLASS Class Number, it must act according to the [RSVP] rules for an unknown Class Number with the binary format 11bbbbbb, where b=0 or 1. In other words, RSVP ignores the object but still forwards it unexamined and unmodified ๐Ÿซฅ.

If an LSR recognizes the Class Number but not the C-Type, it must act according to the [RSVP] rules for an unknown C-type. That means it must send a PathErr with the error code 'Unknown object C-Type' back toward the sender ๐Ÿšจ.

In both cases, the path setup fails ๐Ÿ’€. The sender should tell management that the LSP can't be set up, and it might try to retry the reservation without the ATM_SERVICECLASS object ๐Ÿ”.


6. Security Considerations ๐Ÿ”

The solution is not expected to add specific security requirements beyond those of Diff-Serv and existing TE ๐Ÿšจ. The security mechanisms currently used with Diff-Serv and existing TE can be used with this solution ๐Ÿ›ก๏ธ.

7. IANA Considerations ๐Ÿ“‹

IANA has registered a new RSVP Class Number for ATM_SERVICECLASS, which is 227 ๐ŸŽ€. You can check the registry at http://www.iana.org/assignments/rsvp-parameters ๐Ÿฆ‹.


8. References ๐Ÿ“š

[DIFF-MPLS] Le Faucheur, F., Wu, L., Davie, B., Davari, S., Vaananen,
            P., Krishnan, R., Cheval, P. and J. Heinanen, "Multi-
            Protocol Label Switching (MPLS) Support of Differentiated
            Services", RFC 3270, May 2002.

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

[RSVP-TE]   Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V.
            and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP
            Tunnels", RFC 3209, December 2001.

[TM]        ATM Forum Traffic Management Specification Version 4.0,
            af-tm-0056.000, April 1996.

9. Authors' Addresses ๐Ÿ“ฎ

Andrew G. Malis
Vivace Networks, Inc.
2730 Orchard Parkway
San Jose, CA 95134

EMail: Andy.Malis@vivacenetworks.com

Tony Hsiao
Vivace Networks, Inc.
2730 Orchard Parkway
San Jose, CA 95134

EMail: Tony.Hsiao@VivaceNetworks.com

Copyright (C) The Internet Society (2003). All Rights Reserved.

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.

The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.

This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS 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.

Acknowledgement ๐Ÿ™

Funding for the RFC Editor function is currently provided by the Internet Society ๐Ÿ’œ.

๐Ÿ“ฆ where this page comes from