Network Working Group L. Ginsberg
Internet-Draft S. Previdi
Intended status: Standards Track M. Shand
Expires: May 2, 2008 Cisco Systems
October 30, 2007
Advertising Generic Information in IS-IS
draft-ietf-isis-genapp-00.txt
Status of this Memo
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 becomes
aware will be disclosed, in accordance with Section 6 of BCP 79.
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.
This Internet-Draft will expire on May 2, 2008.
Copyright Notice
Copyright (C) The IETF Trust (2007).
Abstract
This draft describes the manner in which generic application
information (i.e. information not directly related to the operation
of the IS-IS protocol) SHOULD be advertised in IS-IS LSPs and defines
guidelines which SHOULD be used when flooding such information.
Ginsberg, et al. Expires May 2, 2008 [Page 1]
Internet-Draft Advertising Generic Information in IS-IS October 2007
Table of Contents
1. Conventions used in this Document . . . . . . . . . . . . . . 3
2. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Encoding Format for GENINFO . . . . . . . . . . . . . . . . . 3
3.1. GENINFO TLV . . . . . . . . . . . . . . . . . . . . . . . 4
3.2. Use of subTLVs in GENINFO TLV . . . . . . . . . . . . . . 6
3.3. Standardization Requirements . . . . . . . . . . . . . . . 6
4. GENINFO Flooding Procedures . . . . . . . . . . . . . . . . . 6
4.1. Leaking Procedures . . . . . . . . . . . . . . . . . . . . 7
4.2. Minimizing Update Confusion . . . . . . . . . . . . . . . 8
4.3. Interpreting Attribute Information . . . . . . . . . . . . 8
5. Use of a Separate Protocol Instance . . . . . . . . . . . . . 8
6. Applicability of GENINFO TLV . . . . . . . . . . . . . . . . . 9
7. Security Considerations . . . . . . . . . . . . . . . . . . . 9
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 10
10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 10
10.1. Normative References . . . . . . . . . . . . . . . . . . . 10
10.2. Informative References . . . . . . . . . . . . . . . . . . 11
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 11
Intellectual Property and Copyright Statements . . . . . . . . . . 12
Ginsberg, et al. Expires May 2, 2008 [Page 2]
Internet-Draft Advertising Generic Information in IS-IS October 2007
1. 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 [RFC2119].
2. Overview
[ISO10589] defines the format of TLVs which may be sent in IS-IS
PDUs. The first octet of a TLV encodes the "type" or "codepoint"
which provides a scope for the information and information format
which follows. The protocol is therefore limited to 256 different
codepoints which may be assigned. This number has proved generous as
regards the information required for correct operation of the IS-IS
protocol. However, the increasing use of IS-IS LSPs for
advertisement of generic information (GENINFO) not directly related
to the operation of the IS-IS protocol places additional demands on
the TLV encoding space which has the potential to consume a
significant number of TLV codepoints. This document therefore
defines an encoding format for GENINFO which minimizes the
consumption of TLV codepoints and also maximizes the flexibility of
the formats which can be used to represent GENINFO.
This document also discusses optimal behavior associated with the
advertisement and flooding of LSPs containing GENINFO in order to
avoid the advertisement of stale information and minimize the
presence of duplicate or conflicting information when advertisements
are updated.
The manner in which the information contained in GENINFO TLVs is
exchanged between an instance of the IS-IS protocol and the
application which generates/consumes the GENINFO is outside the scope
of this specification.
In order to minimize the impact advertisement of GENINFO may have on
the operation of routing, such advertisements SHOULD occur in the
context of a non-zero instance of the IS-IS protocol as defined in
[I-D.previdi-isis-mi].
3. Encoding Format for GENINFO
The encoding format defined below has the following goals regarding
the advertisement of GENINFO in IS-IS LSPs:
Ginsberg, et al. Expires May 2, 2008 [Page 3]
Internet-Draft Advertising Generic Information in IS-IS October 2007
o Minimize the number of codepoints required
o Minimize the depth of subTLV levels required
In order to support these goals, a new IANA registry is required.
This registry is required to manage the assignment of IS-IS GENINFO
Application Identifiers. These numbers are unsigned 16 bit numbers
ranging in value from 1 to 65535. The registry is also required to
manage the assignment of application specific subTLV codepoints.
These numbers are unsigned 8 bit numbers ranging in value from 0 to
255. The assignment of the subTLV codepoints is scoped by the
Application Identifier.
3.1. GENINFO TLV
The GENINFO TLV supports the advertisement of application specific
information which is not directly related to the operation of the
IS-IS protocol.
Type 251
Length # of octets in the value field (3 to 255)
Value
No. of octets
+-----------------------+
| Flags | 1
+-----------------------+
| Application ID | 2
+-----------------------+
| Application |
| IP Address Info | 0 to 20
+-----------------------+
| Additional Application| 0 to (252 -
| Specific Information | len of IP Address info)
+-----------------------+
Flags
0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
| Rsvd |V|I|D|S|
+-+-+-+-+-+-+-+-+
The following bit flags are defined.
S bit (0x01): If the S bit is set(1), the GENINFO TLV
Ginsberg, et al. Expires May 2, 2008 [Page 4]
Internet-Draft Advertising Generic Information in IS-IS October 2007
MUST be flooded across the entire routing domain. If
the S bit is not set(0), the TLV MUST NOT be leaked
between levels. This bit MUST NOT be altered during the
TLV leaking.
D bit (0x02): When the GENINFO TLV is leaked from
level-2 to level-1, the D bit MUST be set. Otherwise
this bit MUST be clear. GENINFO TLVs with the D bit set
MUST NOT be leaked from level-1 to level-2. This is to
prevent TLV looping.
I bit (0x04): When the I bit is set the 4 octet IPv4
address associated with the application immediately
follows the Application ID.
V bit (0x08): When the V bit is set, the 16 octet IPv6
address associated with the application immediately
follows either the Application ID (if I bit is clear)
or the IPv4 address (if I bit is set).
Application ID
An identifier assigned to this application via the
GENINFO-REG.
Application IPv4 Address Info
The IPv4 address associated with the application. This
is not necessarily an address of a router running the
IS-IS protocol.
Application IPv6 Address Info
The IPv6 address associated with the application. This
is not necessarily an address of a router running the
IS-IS protocol.
Additional Application Specific Information
Each application may define additional information to
be encoded in a GENINFO TLV following the fixed
information. Definition of such information is beyond
the scope of this document.
The Application ID in combination with the Application IPv4/IPv6
Address Information uniquely identifies the GENINFO Application
Context (GENINFO-CTX).
Ginsberg, et al. Expires May 2, 2008 [Page 5]
Internet-Draft Advertising Generic Information in IS-IS October 2007
3.2. Use of subTLVs in GENINFO TLV
[RFC3784] introduced the definition and use of subTLVs. One of the
advantages of using subTLVs rather than fixed encoding of information
inside a TLV is to allow for the addition of new information in a
backwards compatible manner i.e. just as with TLVs, implementations
are required to ignore subTLVs which they do not understand.
GENINFO TLVs MAY include subTLVs in the application specific
information as deemed necessary and appropriate for each application.
The scope of the codepoints used in such subTLVs is defined by the
GENINFO TLV codepoint AND the Application ID i.e. the subTLV
codepoints are private to the application. Such subTLVs are referred
to as APPSUBTLVs and MUST be assigned via the GENINFO-REG IANA
registry.
Additional levels of APPSUBTLVs may be required when there is
variable information which is scoped by a specific APPSUBTLV. These
"nested" subTLVs MUST be encoded in the same manner as subTLVs i.e.
with a one-octet Type field, a one-octet Length field, and zero or
more octets of Value. These types MUST also be assigned via the
GENINFO-REG IANA registry.
The use of additional levels of subTLVs is discouraged due to the
inherent inefficiency in encoding introduced because the parent
subTLV must encode the nested subTLV length. While this inefficiency
is small (one additional octet), it may be sufficient to extend the
total information about a single application object beyond the
carrying capacity of a single GENINFO TLV. Given that each
Application ID can utilize the full range of subTLV codepoints (0 to
255) without conflict with any other application, the need to be
frugal in the use of APPSUBTLV codepoints is greatly reduced.
3.3. Standardization Requirements
GENINFO is intended to advertise information on behalf of
applications whose operations have been defined in public documents.
Therefore the uses of GENINFO MUST be standardized.
GENINFO is NOT intended to be used for proprietary or experimental
purposes.
4. GENINFO Flooding Procedures
This section describes procedures which apply to the propagation of
LSPs which contain GENINFO TLVs. These procedures have been
previously discussed in [RFC4971]. This section is intended to serve
Ginsberg, et al. Expires May 2, 2008 [Page 6]
Internet-Draft Advertising Generic Information in IS-IS October 2007
as a reference specification for future documents which define the
use of GENINFO TLV(s) for a specific application - eliminating the
need to repeat the definition of these procedures in the application
specific documents.
Each GENINFO TLV contains information regarding exactly one
application instance as identified by the GENINFO-CTX. When it is
necessary to advertise sets of information with the same GENINFO-CTX
which have different flooding scopes, a router MUST originate a
minimum of one GENINFO TLV for each required flooding scope. GENINFO
TLVs which contain information having area/level scope will have the
S bit clear. These TLVs MUST NOT be leaked into another level.
GENINFO TLVs which contain information which has domain scope will
have the S bit set. These TLVs MUST be leaked into other IS-IS
levels. When a TLV is leaked from level-2 to level-1, the D bit MUST
be set in the level-1 LSP advertisement.
4.1. Leaking Procedures
When leaking GENINFO TLVs downward from Level-2 into Level-1, if the
originator of the TLV is a Level-1 router in another area, it is
possible that multiple copies of the same TLV may be received from
multiple L2 routers in the originating area. A router performing
downward leaking MUST check for such duplication by comparing the
contents of the TLVs. The set of LSPs generated by a router for a
given level MUST NOT contain two or more copies of the same GENTLV.
In order to prevent the use of stale GENINFO information, a system
MUST NOT use a GENINFO TLV present in an LSP of a system which is not
currently reachable via Level-x paths, where "x" is the level (1 or
2) associated with the LSP in which the GENINFO TLV appears. Note
that leaking a GENINFO TLV is one of the uses which is prohibited
under these conditions. The following example illustrates what might
occur in the absence of this restriction.
Example: If Level-1 router A generates a GENINFO TLV and floods it to
two L1/L2 routers S and T, they will flood it into the Level-2 sub-
domain. Now suppose the Level-1 area partitions, such that A and S
are in one partition and T is in another. IP routing will still
continue to work, but if A now issues a revised version of the
GENINFO TLV, or decides to stop advertising it, S will follow suit,
but T will continue to advertise the old version until the LSP times
out.
Routers in other areas have to choose whether to trust T's copy of
A's GENINFO TLV or S's copy of A's information and they have no
reliable way to choose. By making sure that T stops leaking A's
information, this removes the possibility that other routers will use
Ginsberg, et al. Expires May 2, 2008 [Page 7]
Internet-Draft Advertising Generic Information in IS-IS October 2007
stale information from A.
4.2. Minimizing Update Confusion
If an update to a TLV is advertised in an LSP with a different number
than the LSP associated with the old advertisement, the possibility
exists that other systems can temporarily have either 0 copies of a
particular advertisement or 2 copies of a particular advertisement,
depending on the order in which new copies of the LSP which had the
old advertisement and the LSP which has the new advertisement arrive
at other systems.
Whenever possible, an implementation SHOULD advertise the update to a
GENINFO TLV in the LSP with the same number as the advertisement
which it replaces. Where this is not possible, the two affected LSPs
SHOULD be flooded as an atomic action.
Systems which receive an update to an existing GENINFO TLV can
minimize the potential disruption associated with the update by
employing a holddown time prior to processing the update so as to
allow for the receipt of multiple LSPs associated with the same
update prior to beginning processing.
4.3. Interpreting Attribute Information
Where a receiving system has two copies of a GENINFO TLV with the
same GENINFO-CTX, attribute information in the two TLVs which does
not conflict MUST be considered additive. When information in the
two GENINFO TLVs conflicts i.e there are different settings for a
given attribute, the procedure used to choose which copy shall be
used is undefined.
5. Use of a Separate Protocol Instance
The use of the IS-IS flooding mechanism as a means of reliably and
efficiently propagating information is understandably attractive.
However, it is prudent to remember that the primary purpose of that
mechanism is to flood information necessary for the correct operation
of the IS-IS protocol. Flooding of information not directly related
to the use of the IS-IS protocol in support of routing degrades the
operation of the protocol. Degradation occurs because the frequency
of LSP updates is increased and because the processing of non-routing
information in each router consumes resources whose primary
responsibility is to efficiently respond to reachability changes in
the network.
Advertisement of GENINFO therefore SHOULD occur in the context of a
Ginsberg, et al. Expires May 2, 2008 [Page 8]
Internet-Draft Advertising Generic Information in IS-IS October 2007
non-zero instance of the IS-IS protocol as defined in
[I-D.previdi-isis-mi]. The use of a separate instance of the
protocol allows both the flooding and the processing of the non-
routing information to be decoupled from the information necessary to
support correct routing of data in the network. The flooding and
processing of non-routing information can then be prioritized
appropriately.
Use of a separate protocol instance to advertise GENINFO does not
eliminate the need to use prudence in the frequency with which such
information is updated. One of the most egregious oversights is a
failure to appropriately dampen changes in the information to be
advertised, which can lead to flooding storms. Documents which
specify the use of the mechanisms defined here MUST define the
expected rate of change of the information to be advertised.
6. Applicability of GENINFO TLV
The GENINFO TLV supports the advertisement of application specific
information in IS-IS LSPs which is not directly related to the
operation of the IS-IS protocol. Information which is not directly
used by the IS-IS Decision process falls into this category. The
Decision Process is defined by [ISO10589] and extended by [RFC1195]
and [RFC3906].
The IS-IS WG of the IETF acts as the authority to determine whether
information proposed to be advertised in IS-IS LSPs falls under this
definition.
The applicability statement above is expected to cover some
information currently being advertised by IS-IS in previously defined
TLVs. It is expected and seen as desirable that an effort be made to
migrate the advertisement of such information to utilize the
procedures defined in this document.
7. Security Considerations
This document raises no new security issues for IS-IS.
8. IANA Considerations
This document defines a new ISIS TLV that needs to be reflected in
the ISIS TLV code-point registry:
Ginsberg, et al. Expires May 2, 2008 [Page 9]
Internet-Draft Advertising Generic Information in IS-IS October 2007
Type Description IIH LSP SNP
---- ----------------------------------- --- --- ---
251 Generic Information n y n
This document also defines a new registry which needs to be created.
The new registry is required to manage two types of assigned numbers:
1)Application Identifiers which may be used in the Generic
Information TLV. These identifiers are unsigned 16 bit numbers
ranging in value from 1 to 65535.
2)Application specific subTLV codepoints which may be used in a
GENINFO TLV when a specific Application Identifier is used. These
numbers are unsigned 8 bit numbers ranging in value from 0 to 255.
9. Acknowledgements
The authors would like to thank JP Vasseur and David Ward for
providing the need to produce this document and Tony Li for making
sure it was done with appropriate wisdom and prudence.
10. References
10.1. Normative References
[ISO10589]
International Organization for Standardization,
"Intermediate system to Intermediate system intra-domain
routeing information exchange protocol for use in
conjunction with the protocol for providing the
connectionless-mode Network Service (ISO 8473)", ISO/
IEC 10589:2002, Second Edition, Nov 2002.
[RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and
dual environments", RFC 1195, December 1990.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC4971] Vasseur, JP., Shen, N., and R. Aggarwal, "Intermediate
System to Intermediate System (IS-IS) Extensions for
Advertising Router Information", RFC 4971, July 2007.
Ginsberg, et al. Expires May 2, 2008 [Page 10]
Internet-Draft Advertising Generic Information in IS-IS October 2007
10.2. Informative References
[I-D.previdi-isis-mi]
Previdi, S., "IS-IS Multi-instance",
draft-previdi-isis-mi-00 (work in progress), May 2007.
[RFC3784] Smit, H. and T. Li, "Intermediate System to Intermediate
System (IS-IS) Extensions for Traffic Engineering (TE)",
RFC 3784, June 2004.
[RFC3906] Shen, N. and H. Smit, "Calculating Interior Gateway
Protocol (IGP) Routes Over Traffic Engineering Tunnels",
RFC 3906, October 2004.
Authors' Addresses
Les Ginsberg
Cisco Systems
510 McCarthy Blvd.
Milpitas, Ca. 95035
USA
Email: ginsberg@cisco.com
Stefano Previdi
Cisco Systems
Via Del Serafico 200
00142 - Roma,
Italy
Email: sprevidi@cisco.com
Mike Shand
Cisco Systems
250, Longwater Avenue.
Reading, Berks RG2 6GB
UK
Email: mshand@cisco.com
Ginsberg, et al. Expires May 2, 2008 [Page 11]
Internet-Draft Advertising Generic Information in IS-IS October 2007
Full Copyright Statement
Copyright (C) The IETF Trust (2007).
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.
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
THE INTERNET ENGINEERING TASK FORCE DISCLAIM 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.
Intellectual Property
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
http://www.ietf.org/ipr.
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
ietf-ipr@ietf.org.
Acknowledgment
Funding for the RFC Editor function is provided by the IETF
Administrative Support Activity (IASA).
Ginsberg, et al. Expires May 2, 2008 [Page 12]