Subject: RE: Regarding Resource Class Attribute in CRLDP

From: "Don Fedyk"<[email-masked]>
Date: Tue, 14 May 2002 19:36:13 -0400

Ravi

To do include/exclude properly you need 2 vectors or you need semantics 
associated with the one vector (which we don't put in standards
as Kireeti reminded me). But apparently you could have a policy to do it.

In a single domain you may get by without signaling the vectors since a 
route computation can be run on a node doing include and exclude and 
it is unlikely the attributes will change. In the case of multiple 
domains without route leaking, where you have to do multiple path 
selections along the path, you need to carry the a vector which 
would mean that it has to be consistent between domains. 

Don 

> -----Original Message-----
> From: Ravi Sankar Mantha [mailto:[email-masked]]
> 
> 
>  Hi ,
>    This is regarding resource class attribute in MPLS;
>     I am facing problem in understanding the conversion from Explicit
> Inclusion, Explicit Exclusion (as specified in RFC2702, 
> section 5.6.3) 
> to
> the Resource Class Bit Mask ( RsCls field in the Resource Class Tlv in
> CRLDP).
>     Take the case of Explicit Inclusion, supposing the Bit 
> Mask is 4 of 
> bits
> (for simplicity). ( in reality it is of 32 bits)
>        Red - bit '0' (LSB)
>        Blue - bit '1'
>        Green - bit '2'
>        Yellow - bit '4' (MSB).
>       Suppose there is a CRLSP whose resource class affinity is 
> INCLUDE -
> Blue, this  can be encoded in the form of bit map as 0010 ( I assume 
> that
> the '0's are considered as Don't care ?), now this CRLSP can traverse
> through links whose Resource Class Attributes can be 0110, 0010, 1111
>  which include the color- blue) etc. If this is the way, 
> Resource Class
> Bitmap is interpreted by the CRLDP signaling protocol, I wonder how 
> Explicit
> Exclusion can be encoded as bit map, and interpreted by the Signaling
> protocol ?
>      It would be of great help if somebody can through some light on 
> this.,
> Thanks in advance,
> Ravi
> 
> 
>

---

From: "Ravi Sankar Mantha" <[email-masked]>
Date: Wed, 15 May 2002 10:20:28 +0530

Hi Don,
    Thank you for the explanation.
    In the Resource Class Tlv of CRLDP, the definition of RsCls, "The
Resource Class bit mask indicating wihch of the 32 _administrative groups_
or _colors_ of links the CR-LSP can traverse", sounds as though it can carry
only the "Include" information in it. Thus it looks like it is out of the
scope of CRLDP signaling to carry the "Exclude" vector. Is it not required
to signal through CRLDP ? ( I think this is what you mentioned as the 2nd
vector).
    Then, what do you mean by associating semantics with one vector ?, is it
something like supporting only one ( either Include/ Exclude) in the entire
domain, so that the Bit Mask can be interpreted accordingly ?
Thanks and Regards,
Ravi

-----Original Message-----
From: Fedyk, Don [BL60:1A00:EXCH] [mailto:[email-masked]]
Sent: Wednesday, May 15, 2002 5:06 AM
To: Ravi Sankar Mantha; [email-masked]; [email-masked]
Subject: RE: Regarding Resource Class Attribute in CRLDP

Ravi

Don

---

From: Curtis Villamizar <[email-masked]>
Date: Wed, 15 May 2002 10:54:50 -0400

In message <[email-masked]>, "Ravi Sankar Mantha" wri
> domain, so that the Bit Mask can be interpreted accordingly ?

The extensions to OSPF and ISIS provide one 32 bit word to be used as
a bitmap to describe the attributes (colors) of a link.  RFC3209
provides semantics for RSVP/TE which are only needed if local-protect
is used or for inter-area LSPs (which are problematic to say the least
if attempts are made to enforce color restrictions across IGP areas).

  4.7.2. Format with resource affinities

    SESSION_ATTRIBUTE class = 207, LSP_TUNNEL_RA 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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                         Exclude-any                           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                         Include-any                           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                         Include-all                           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   Setup Prio  | Holding Prio  |     Flags     |  Name Length  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   //          Session Name      (NULL padded display string)      //
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

      Exclude-any

         A 32-bit vector representing a set of attribute filters
         associated with a tunnel any of which renders a link
         unacceptable.

      Include-any

         A 32-bit vector representing a set of attribute filters
         associated with a tunnel any of which renders a link acceptable
         (with respect to this test).  A null set (all bits set to zero)
         automatically passes.

      Include-all

         A 32-bit vector representing a set of attribute filters
         associated with a tunnel all of which must be present for a
         link to be acceptable (with respect to this test).  A null set
         (all bits set to zero) automatically passes.

The FRR draft draft-ping-rsvp-fastreroute-00.txt provides the same
semantics with an include-any but does not support an include-all.

  3.1.1. FAST_REROUTE Object

     Class = 205  (use form 11bbbbbb for compatibility)
     C-Type = 7

              0             1              2             3
       +-------------+-------------+-------------+-------------+
       |       Length (bytes)      |  Class-Num  |   C-Type    |
       +-------------+-------------+-------------+-------------+
       | Setup Prio  | Hold Prio   | Hop-limit   | Reserved    |
       +-------------+-------------+-------------+-------------+
       |                 Bandwidth                             |
       +-------------+-------------+-------------+-------------+
       |                 Include colors                        |
       +-------------+-------------+-------------+-------------+
       |                 Exclude colors                        |
       +-------------+-------------+-------------+-------------+

 [ ... snip ... ]

     Include colors

      A 32-bit vector representing a set of attribute filters associated
      with a detour any of which renders a link acceptable (with respect
      to this test).  A null set (all bits set to zero) automatically
      passes.

     Exclude colors

      A 32-bit vector representing a set of attribute filters associated
      with a detour any of which renders a link unacceptable.

AFAIK no one really cares about CRLDP so whether they got it wrong by
providing only one word for the LSP may not be important.

Curtis