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

       Extensions to OSPF for Advertising Optional Router Capabilities

                       draft-lindem-ospf-cap-00.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 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-00.txt                                   [Page 1]


Internet Draft    draft-lindem-ospf-cap-00.txt             May 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 a LSR to be
     a Path Computation Server for TE LSP path computation) or the
     intention of a 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-00.txt                                   [Page 2]


Internet Draft    draft-lindem-ospf-cap-00.txt             May 2003


2. OSPF Router Information 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.
   For current OSPF capabilities, the advertisement will be used for
   The Router Information opaque LSA will be originated at startup and
   reoriginated when router capabilities change or when the LSA is
   periodically refreshed.

   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


   The format of the TLVs within the body of a Router Information LSA is
   the same as the TLV format used by the Traffic Engineering Extensions
   to OSPF [3]. The TLV header consists of a 16-bit Type field and a
   16-bit length field, and is followed by zero or more bytes of value.
   The length field indicates the length of the value portion in bytes.
   The value portion is padded to four-octet alignment, but the padding
   is not included in the length field. 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.



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


Internet Draft    draft-lindem-ospf-cap-00.txt             May 2003


    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. OSPF TLV Format

2.1 OSPF Router Capability TLV

   The first TLV in the body of a Router Information LSA is the
   Router Capability TLV. It MUST be included. A router advertising
   an optional Router Information LSA SHOULD set the supported optional
   capabilities, unless they are explicitly configured off, in the
   Router Capability TLV.

   The format of the Router Capability 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            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                            Reserved                         | |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                   Router Capability sub-TLV                 | |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                   Optional sub-TLVs                           |

              Figure 4. OSPF Router Capability TLV


   Type        A 16 bit field set to 1.
   Length      A 16 bit field that indicates the length of the TLV,
               other than the Type and the Length fields in bytes.

   The first four bytes of the TLV are reserved. This is followed by
   a Router Capability sub-TLV that MUST be included. The format of
   the Router Capability sub-TLV is as follows :








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


Internet Draft    draft-lindem-ospf-cap-00.txt             May 2003


    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 5. OSPF Router Capability Sub-TLV


   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 Capability sub-TLV MAY be followed by optional sub-TLVs.
   In some cases it may be desirable to advertise additional information
   for a particular capability. This can be done by including other
   sub-TLVs.


2.2 Reserved OSPF Router Capability Bits

   We have assigned some pre-determined bits to the first capability
   flag.

   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-00.txt                                    [Page 5]


Internet Draft    draft-lindem-ospf-cap-00.txt             May 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 10 (area-scoped) opaque LSA or a type 11
   (AS-scoped) LSA may be used. The choice of flooding scope is made
   by the advertising router and is a matter of local policy. A Router
   Information LSA must be announced using only one flooding scope.

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.



draft-lindem-ospf-cap-00.txt                                  [Page 6]


Internet Draft    draft-lindem-ospf-cap-00.txt                May 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-00.txt                                  [Page 7]


Internet Draft    draft-lindem-ospf-cap-00.txt                May 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
Redback Networks
350 Holger Way
San Jose, CA 95134
e-mail: rahul@redback.com

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-00.txt                                 [Page 8]