Network Working Group                                 A. Lindem (Editor)
Internet-Draft                                        Cisco Systems, Inc
Expires: May 30, July 8, 2005                                            N. Shen
                                                       BCN Networks, Inc
                                                           Cisco Systems
                                                             R. Aggarwal
                                                        Juniper Networks
                                                              S. Schaffer Shaffer
                                                     BridgePort Networks
                                                             JP. Vasseur
                                                      Cisco Systems, Inc
                                                       November 29, 2004
                                                         January 7, 2005

    Extensions to OSPF for Advertising Optional Router Capabilities

Status of this Memo

   This document is an Internet-Draft and is subject to all provisions
   of section 3 of RFC 3667.  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 become aware will be disclosed, in accordance with
   RFC 3668.

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

   The list of Internet-Draft Shadow Directories can be accessed at

   This Internet-Draft will expire on May 30, July 8, 2005.

Copyright Notice

   Copyright (C) The Internet Society (2004). (2005).

   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.

Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  OSPF Router Information (RI) Opaque LSA  . . . . . . . . . . .  4
     2.1   OSPF Router Capabilities TLV . . . . . . . . . . . . . . .  5
     2.2   Reserved OSPF Router Capability Bits . . . . . . . . . . .  6
     2.3   Flooding Scope of the Router Information LSA . . . . . . .  6
   3.  Router Information LSA Opaque Usage and Applicability  . . . .  8
   4.  Security Considerations  . . . . . . . . . . . . . . . . . . .  8
   4.  9
   5.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . .  9
   5. 10
   6.  References . . . . . . . . . . . . . . . . . . . . . . . . . . 10
   5.1 11
   6.1   Normative References . . . . . . . . . . . . . . . . . . . . 10
   5.2 11
   6.2   Informative References . . . . . . . . . . . . . . . . . . . 10 11
       Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 10 11
   A.  Acknowledgments  . . . . . . . . . . . . . . . . . . . . . . . 12 13
       Intellectual Property and Copyright Statements . . . . . . . . 13 14

1.  Introduction

   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 [TECAP] 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 [OSPF].  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.

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 [OPAQUE].  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            |
      |                                                               |
      +-                            TLV's                            -+
      |                             ...                               |

   The format of the TLV's within the body of a router information LSA
   is the same as the format used by the Traffic Engineering Extensions
   to OSPF [TE].  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...                           |

   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
   TLV's 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 an RI opaque LSA is the Router
   Capabilities TLV.  A router advertising an 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                                      |

      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 TLV's 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 [GRACE]
      5         OSPF graceful restart helper  [GRACE]
      6         OSPF Stub Router support [STUB]
      7         OSPF Traffic Engineering support [TE]
      8         OSPF point-to-point over LAN [P2PLAN]
      9         OSPF Path Computation Server discovery [TECAP]
      10        OSPF Experimental TE [EXPTE]
      11-31     Future assignments

2.3  Flooding Scope of the Router Information LSA

   The flooding scope for a 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 flooded.  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).  An OSPF router MAY
   advertise different capabilities when both NSSA/stub area type 10
   LSA(s) and an AS scoped type 11 opaque LSA is advertised.  This
   allows functional capabilities to be limited in scope.  For example,
   a router may be an area border router but only support traffic
   engineering (TE) in a subset of its attached areas.  The choice of
   flooding scope is made by the advertising router and is a matter of
   local policy.  The originating router MAY advertise multiple RI
   opaque LSAs as long as the flooding scopes differ.  TLV flooding
   scope rules will be specified on a per-TLV basis.

3.  Router Information LSA Opaque Usage and Applicability

   The purpose of the Router Information (RI) opaque LSA is to advertise
   information relating to the aggregate OSPF router.  Normally, this
   should be confined to TLVs with a single value or very few values.
   It is not meant to be a generic container to carry any and all
   information.  The intent is to both limit the size of the RI LSA to
   the point where an OSPF router will always be able to contain the
   TLVs in a single LSA and to keep the task of determining what has
   changed between LSA instances reasonably simple.  Hence, discretion
   and sound engineering judgement MUST be adhered to when deciding
   whether newly proposed TLV(s) in support of a new function are
   advertised in the RI opaque LSA or warrent the creation of a function
   specific opaque LSA.

4.  Security Considerations

   This memo

   The function described in this document does not create any new
   security issues for the OSPF protocol.  Security considerations for
   the base OSPF protocol are covered in [OSPF].


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 TLV's.  The TLV assignee will be responsible
   for allocation of any sub-TLV's for the IANA assigned TLV.  All TLV's
   and sub-TLV's will be subject to OSPF WG review.


6.  References


6.1  Normative References

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

   [RFC2119]  Bradner, S., "Key words for use in RFC's to Indicate
              Requirement Levels", RFC 2328, March 1977.

   [TE]       Katz, D., Yeung, D. and K. Kompella, "Traffic Engineering
              Extensions to OSPF", RFC 3630, September 2003.


6.2  Informative References

   [EXPTE]   Srisuresh, P. and P. Joseph, "OSPF  OSPF-TE: An
             experimental extension to OSPF for Traffic Engineering",
             draft-srisuresh-ospf-te-07.txt (work in progress).

   [GRACE]   Moy, J., Pillay-Esnault, P. and A. Lindem, "Graceful OSPF
             Restart", RFC 3623, November 2003.

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

   [P2PLAN]  Shen, N. and A. Zinin, "Point-to-point operation over LAN
             in link-state routing protocols",
             draft-ietf-isis-igp-p2p-over-lan-05.txt (work in progress).

   [STUB]    Retana, A., Nguyen, L., White, R., Zinin, A. and D.
             McPherson, "OSPF Stub Router Advertisement", RFC 3137, June

   [T3CAP]   Vasseur, JP., Psenak, P., Yasukawa, S. and JL. Le Roux,
             "OSPF MPLS Traffic Engineering Capabilities",
             draft-vasseur-ospf-te-caps-00.txt (work in progress).

Authors' Addresses

   Acee Lindem
   Cisco Systems, Inc
   7025 Kit Creek Road
   Research Triangle Park, NC  27709

   Naiming Shen
   BCN Networks, Inc
   Cisco Systems
   225 West Tasman Drive
   San Ysidro Way
   Santa Clara, Jose, CA  95051  95134


   Rahul Aggarwal
   Juniper Networks
   1194 N. Mathilda Ave.
   Sunnyvale, CA  94089


   Scott Schaffer Shaffer
   BridgePort Networks
   One Main Street, 7th Floor
   Cambridge, MA  02142


   Jean-Philippe Vasseur
   Cisco Systems, Inc
   300 Beaver Brook Road
   Boxborough, MA  01719


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

   Comments from Abhay Roy, Vishwas Manral, and Vivek Dubey were
   incorporated into the final draft version.

   The RFC text was produced using Marshall Rose's xml2rfc tool.

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

   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

Disclaimer of Validity

   This document and the information contained herein are provided on an

Copyright Statement

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


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