Network Working Group                Acee Lindem    (Redback Networks)
Internet Draft                       Naiming Shen   (Redback Networks)
Expiration Date: December 2003       Rahul Aggarwal (Juniper Networks)
                                     Scott Shaffer  (Genuity, Inc.)
                                     JP Vasseur     (Cisco Systems, Inc)

       Extensions to OSPF for Advertising Optional Router Capabilities

                       draft-lindem-ospf-cap-01.txt


Status of this Memo

   This document is an Internet-Draft and is in full conformance with
   all provisions of Section 10 of RFC2026, except that the right to
   produce derivative works is not granted.

   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.


Abstract

   It is useful for routers in an OSPF routing domain to know the 
   capabilities of their neighbors and other routers in the OSPF
   routing domain. This draft proposes extensions to OSPF for 
   advertising optional router capabilities. A new Router 
   Information (RI) opaque LSA is proposed for this purpose. 

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 RFC-2119 [3]. 
    





draft-lindem-ospf-cap-01.txt                                   [Page 1]






Internet Draft    draft-lindem-ospf-cap-01.txt            June 2003


1. Motivation

   It is useful for routers in an OSPF routing domain to know the 
   capabilities of their neighbors and other routers in the OSPF
   routing domain. This can be useful for various applications: 

   o In MPLS Traffic Engineering (TE), it can be used as a discovery 
     mechanism [7, 8] to announce a LSR's TE capabilities like 
     Path Computation Server capability (Capability of an LSR to be 
     a Path Computation Server for TE LSP path computation) or the 
     intention of an LSR to be part of a particular MPLS TE mesh group.

   o For network management and troubleshooting. It gives operators a 
     network wide view of OSPF capabilities on different routers.
     The presence of a capability on a given router implies 
     that the software version supports the capability and the router
     is configured to support it. On the other hand, the absence of an 
     expected capability on a particular router can imply either 
     misconfiguration or an incorrect software version. Hence, this 
     capability information can be used to track problems resulting from
     misconfiguration or an incorrect software version. 
      
   OSPF uses the options field in the hello packet to advertise optional
   router capabilities [1]. However, all the bits in this field have  
   been allocated and there is no way to advertise new optional
   or MPLS TE capabilities.  This document proposes extensions to OSPF
   to advertise these optional capabilities. For existing OSPF 
   capabilities, this advertisement will be used primarily for 
   informational purposes. For MPLS TE features, it is used for 
   advertisement and discovery. Future OSPF features could also 
   use this mechanism for advertisement and discovery.







draft-lindem-ospf-cap-01.txt                                   [Page 2]



Internet Draft    draft-lindem-ospf-cap-01.txt            June 2003


2. OSPF Router Information (RI) Opaque LSA
     
   OSPF routers will optionally advertise their optional capabilities
   in an area-scoped, local scope, or AS-scoped Opaque-LSA [2]. 
   If a router does not advertise this LSA, it does not imply that the 
   router does not support one or more of the defined capabilities. 
   For existing OSPF capabilities, this advertisement will be used 
   primarily for informational purposes. For MPLS TE features, 
   it is used for advertisement and discovery. Future OSPF features 
   could also use this mechanism for advertisement and discovery.
   The RI opaque LSA will be originated when one of the advertised 
   capabilities is configured or changed. 
    
   The Router Information LSA will have an Opaque type of 4 and Opaque 
   ID of 0.

    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |            LS age             |     Options   |  9, 10 or 11  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |       4       |                    0                          |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     Advertising Router                        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     LS sequence number                        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |         LS checksum           |             length            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   +-                            TLVs                             -+
   |                             ...                               |

             Figure 2. OSPF Router Information LSA


   
draft-lindem-ospf-cap-01.txt                                  [Page 3]




Internet Draft    draft-lindem-ospf-cap-01.txt            June 2003


    The format of the TLVs within the body of a router information LSA 
    is the same as the format used by the Traffic Engineering 
    Extensions to OSPF [4]. The LSA payload consists of one or 
    more nested Type/Length/Value (TLV) triplets. The format of 
    each TLV is:

      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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |              Type             |             Length            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                            Value...                           |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

             Figure 3. TLV Format

    The Length field defines the length of the value portion in octets
    (thus a TLV with no value portion would have a length of zero).  The
    TLV is padded to four-octet alignment;  padding is not included in
    the length field (so a three octet value would have a length of
    three, but the total size of the TLV would be eight octets).  Nested
    TLVs are also 32-bit aligned. For example, a one byte value
    would have the length field set to 1, and three bytes of padding
    would be added to the end of the value portion of the TLV.
    Unrecognized types are ignored.

2.1 OSPF Router Capabilities TLV

   The first defined TLV in the body of a RI opaque LSA is 
   the Router Capabilities TLV. A router advertising a RI opaque LSA
   SHOULD include the Router Capabilities TLV and SHOULD correctly 
   identify the status of the capabilities defined in section 2.2. 

   The format of the Router Capabilities TLV is as follows:

    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |              Type             |             Length            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |             Capabilities                                      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                Figure 4. OSPF Router Capabilities TLV





draft-lindem-ospf-cap-01.txt                                  [Page 4]





Internet Draft    draft-lindem-ospf-cap-01.txt            June 2003

   Type        A 16 bit field set to 1. 
   Length      A 16 bit field that indicates the length of the value 
               portion in bytes. Its set to N x 4 octets. N starts from
               1 and can be increased when there is a need. Each 4 
               octets are referred to as a capability flag.
   Value       This comprises one or more capability flags. For each 4 
               octets, the bits are indexed from the most significant
               to the least significant, where each bit represents one 
               router capability. When the first 32 capabilities are
               defined, a new capability flag will be used to
               accommodate the next capability.

   The Router Capabilities TLV MAY be followed by optional TLVs that
   further specify a capability.

2.2 Reserved OSPF Router Capability Bits

   The following bits in the first capability flag have been 
   assigned:
    
   Bit       Capabilities
    
   0-3       Reserved
   4         OSPF graceful restart capable [5]
   5         OSPF graceful restart helper  [5]
   6         Stub Router support [6]
   7         Traffic Engineering support [4]
   8         OSPF point-to-point over LAN [9]
   9         OSPF Path Computation Server discovery [7, 8]
   10-31     Future assignments





draft-lindem-ospf-cap-01.txt                                    [Page 5]



Internet Draft    draft-lindem-ospf-cap-01.txt            June 2003

  
2.3 Flooding Scope of the Router Information LSA

   The flooding scope of the Router Information opaque LSA is determined
   by the LSA type. A type 9 (link-scope), type 10 (area-scoped), or a 
   type 11 (AS-scoped) opaque LSA may be used. If a type 11 opaque LSA
   is chosen, the originating router should also advertise type 10 
   LSA(s) into any attached NSSA/stub area(s). The choice of flooding 
   scope is made by the advertising router and is a matter of local 
   policy. The originating router MAY advertise multiple Router 
   Information LSAs as long as the flooding scope differs. TLV flooding 
   scope rules will be specified on a per-TLV basis.

3. Security Consideration

   This memo does not create any new security issues for the OSPF
   protocol. Security considerations for the base OSPF protocol are
   covered in [1].

4. Acknowledgments
   
   The idea for this work grew out of a conversation with Andrew Partan
   and we would like to thank him for his contribution. The authors 
   would like to thanks Peter Psenak for his review and helpful
   comments early versions of the draft.



draft-lindem-ospf-cap-01.txt                                  [Page 6]

Internet Draft    draft-lindem-ospf-cap-01.txt               June 2003


5. IANA Considerations

   A new opaque LSA type will need to be assigned by IANA. Additionally,
   IANA will need to have registries for the Router Information opaque
   LSA TLVs. The TLV assignee will be responsible for allocation of 
   any sub-TLVs for the IANA assigned TLV. All TLVs and sub-TLVs will 
   be subject to OSPF WG review. 

6. References

Normative References

   [1]  Coltun, R., "The OSPF Opaque LSA Option", RFC 2370, July
        1998.

   [2]  Moy, J., "OSPF Version 2", RFC 2328, April 1998.

   [3]  Bradner, S., "Key words for use in RFCs to Indicate Requirement 
        Level", BCP 14, RFC 2119, March 1997. 
    
Informative References

   [4]  Katz, D., D. Yeung and K. Kompella, "Traffic Engineering
        Extensions to OSPF", Internet Draft, work in progress.

   [5]  Moy, J., "OSPF Graceful OSPF Restart", Internet Draft, work in 
        progress.

   [6]  Retana, A., et al, "OSPF Stub Router Advertisement",
        RFC 3137, June 2001.

   [7]  Vasseur, Psenak, "Traffic Engineering Capability TLV for OSPF",
        Internet Draft, work in progress.

   [8]  Vasseur et al, "RSVP Path computation request and reply
        messages", draft-vasseur-mpls-computation-rsvp-te-03.txt, 
        work in progress

   [9]  N. Shen, et al, "Point-to-point operation over LAN in 
        link-state-routing protocols", Internet Draft, work in 
        progress.


draft-lindem-ospf-cap-01.txt                                  [Page 7]

Internet Draft    draft-lindem-ospf-cap-01.txt               June 2003


9. Author Information

Acee Lindem
Redback Networks
350 Holger Way
San Jose, CA 95134
e-mail: acee@redback.com

Naiming Shen
Redback Networks
350 Holger Way
San Jose, CA 95134
e-mail: naiming@redback.com

Rahul Aggarwal
Juniper Networks
1194 N. Mathilda Ave.
Sunnyvale, CA 94089 USA
e-mail: rahul@juniper.net

Scott Shaffer
Genuity, Inc.
3 Van de Graaff Drive
PO Box 3073
Burlington, MA 01803
e-mail: sshaffer@genuity.com

JP Vasseur 
Cisco Systems, Inc. 
300 Apollo Drive
Chelmsford, MA 01824
e-mail: jpv@cisco.com 



draft-lindem-ospf-cap-01.txt                                 [Page 8]