summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc1195.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/rfc/rfc1195.txt')
-rw-r--r--doc/rfc/rfc1195.txt4763
1 files changed, 4763 insertions, 0 deletions
diff --git a/doc/rfc/rfc1195.txt b/doc/rfc/rfc1195.txt
new file mode 100644
index 0000000..2a1fb11
--- /dev/null
+++ b/doc/rfc/rfc1195.txt
@@ -0,0 +1,4763 @@
+
+
+
+
+
+
+Network Working Working Group R. Callon
+Request for Comments: 1195 Digital Equipment Corporation
+ December 1990
+
+
+ Use of OSI IS-IS for Routing in TCP/IP and Dual Environments
+
+Status of this Memo
+
+ This RFC specifies a protocol on the IAB Standards Track for the
+ Internet community, and requests discussion and suggestions for
+ improvements. Please refer to the current edition of the "IAB
+ Official Protocol Standards" for the standardization state and status
+ of this protocol. Distribution of this memo is unlimited.
+
+ This RFC is available in both postscript and text versions. Where
+ possible, use of the postscript version is recommended. For example,
+ this text version may have figures which are less informative or
+ missing.
+
+Abstract
+
+ This RFC specifies an integrated routing protocol, based on the OSI
+ Intra-Domain IS-IS Routing Protocol, which may be used as an interior
+ gateway protocol (IGP) to support TCP/IP as well as OSI. This allows
+ a single routing protocol to be used to support pure IP environments,
+ pure OSI environments, and dual environments. This specification was
+ developed by the IS-IS working group of the Internet Engineering Task
+ Force.
+
+ The OSI IS-IS protocol has reached a mature state, and is ready for
+ implementation and operational use. The most recent version of the
+ OSI IS-IS protocol is contained in ISO DP 10589 [1]. The proposed
+ standard for using IS-IS for support of TCP/IP will therefore make
+ use of this version (with a minor bug correction, as discussed in
+ Annex B). We expect that future versions of this proposed standard
+ will upgrade to the final International Standard version of IS-IS
+ when available.
+
+ Comments should be sent to "isis@merit.edu".
+
+Contents
+
+ 1 Introduction: Overview of the Protocol
+ 1.1 What the Integrated IS-IS offers
+ 1.2 Overview of the ISO IS-IS Protocol
+ 1.3 Overview of the Integrated IS-IS
+ 1.4 Support of Mixed Routing Domains
+
+
+
+Callon [Page 1]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ 1.5 Advantages of Using Integrated IS-IS
+
+ 2 Symbols and Abbreviations
+
+ 3 Subnetwork Independent Functions
+ 3.1 Exchange of Routing Information
+ 3.2 Hierarchical Abbreviation of IP Reachability Information
+ 3.3 Addressing Routers in IS-IS Packets
+ 3.4 External Links
+ 3.5 Type of Service Routing
+ 3.6 Multiple LSPs and SNPs
+ 3.7 IP-Only Operation
+ 3.8 Encapsulation
+ 3.9 Authentication
+ 3.10 Order of Preference of Routes / Dijkstra Computation
+
+ 4 Subnetwork Dependent Functions
+ 4.1 Link Demultiplexing
+ 4.2 Multiple IP Addresses per Interface
+ 4.3 LANs, Designated Routers, and Pseudonodes
+ 4.4 Maintaining Router Adjacencies
+ 4.5 Forwarding to Incompatible Routers
+
+ 5 Structure and Encoding of PDUs
+ 5.1 Overview of IS-IS PDUs
+ 5.2 Overview of IP-Specific Information for IS-IS
+ 5.3 Encoding of IP-Specific Fields in IS-IS PDUs
+
+ 6 Security Considerations
+
+ 7 Author's Address
+
+ 8 References
+
+ A Inter-Domain Routing Protocol Information
+ A.1 Inter-Domain Information Type
+ A.2 Encoding
+
+ B Encoding of Sequence Number Packets
+ B.1 Level 1 Complete Sequence Numbers PDU
+ B.2 Level 2 Complete Sequence Numbers PDU
+ B.3 Level 1 Partial Sequence Numbers PDU
+ B.4 Level 2 Partial Sequence Numbers PDU
+
+ C Dijkstra Calculation and Forwarding
+ C.1 SPF Algorithm for IP and Dual Use
+ C.2 Forwarding of IP packets
+
+
+
+
+Callon [Page 2]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ D Use of the Authentication Field
+ D.1 Authentication Field in IS-IS packets
+ D.2 Authentication Type 1 - Simple Password
+
+ E Interaction of the Integrated IS-IS with Brouters
+ E.1 The Problem
+ E.2 Possible Solutions
+
+Figures
+ 1 ISO Hierarchical Address Structure
+ 2 An Example
+ 3 Encoding of Variable Length Fields
+
+1 Introduction: Overview of the Protocol
+
+ The TCP/IP protocol suite has been growing in importance as a multi-
+ vendor communications architecture. With the anticipated emergence of
+ OSI, we expect coexistence of TCP/IP and OSI to continue for an
+ extended period of time. There is a critical need for routers to
+ support both IP traffic and OSI traffic in parallel.
+
+ There are two main methods that are available for routing protocols
+ to support dual OSI and IP routers. One method, known as "Ships in
+ the Night", makes use of completely independent routing protocols for
+ each of the two protocol suites. This specification presents an
+ alternate approach, which makes use of a single integrated protocol
+ for interior routing (i.e., for calculating routes within a routing
+ domain) for both protocol suites.
+
+ This integrated protocol design is based on the OSI Intra-domain IS-
+ IS routing protocol [1], with IP-specific functions added. This RFC
+ is considered a companion to the OSI IS-IS Routing spec, and will
+ only describe the required additional features.
+
+ By supporting both IP and OSI traffic, this integrated protocol
+ design supports traffic to IP hosts, OSI end systems, and dual end
+ systems. This approach is "integrated" in the sense that the IS-IS
+ protocol can be used to support pure-IP environments, pure-OSI
+ environments, and dual environments. In addition, this approach
+ allows interconnection of dual (IP and OSI) routing domains with
+ other dual domains, with IP-only domains, and with OSI-only domains.
+
+ The protocol specified here is based on the work of the IETF IS-IS
+ working group.
+
+1.1 What the Integrated IS-IS offers
+
+ The integrated IS-IS provides a single routing protocol which will
+
+
+
+Callon [Page 3]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ simultaneously provide an efficient routing protocol for TCP/IP, and
+ for OSI. This design makes use of the OSI IS-IS routing protocol,
+ augmented with IP-specific information. This design provides explicit
+ support for IP subnetting, variable subnet masks, TOS-based routing,
+ and external routing. There is provision for authentication
+ information, including the use of passwords or other mechanisms. The
+ precise form of authentication mechanisms (other than passwords) is
+ outside of the scope of this document.
+
+ Both OSI and IP packets are forwarded "as is" -- i.e., they are
+ transmitted directly over the underlying link layer services without
+ the need for mutual encapsulation. The integrated IS-IS is a dynamic
+ routing protocol, based on the SPF (Dijkstra) routing algorithm.
+
+ The protocol described in this specification allows for mixing of
+ IP-only, OSI-only, and dual (IP and OSI) routers, as defined below.
+
+ An IP-only IS-IS router (or "IP-only" router) is defined to be a
+ router which: (i) Uses IS-IS as the routing protocol for IP, as
+ specified in this report; and (ii) Does not otherwise support OSI
+ protocols. For example, such routers would not be able to forward OSI
+ CLNP packets.
+
+ An OSI-only router is defined to be a router which uses IS-IS as the
+ routing protocol for OSI, as specified in [1]. Generally, OSI-only
+ routers may be expected to conform to OSI standards, and may be
+ implemented independent of this specification.
+
+ A dual IS-IS router (or "dual" router) is defined to be a router
+ which uses IS-IS as a single integrated routing protocol for both IP
+ and OSI, as specified in this report.
+
+ This approach does not change the way that IP packets are handled.
+ IP-only and dual routers are required to conform to the requirements
+ of Internet Gateways [4]. The integrated IS-IS protocol described in
+ this report outlines an Interior Gateway Protocol (IGP) which will
+ provide routing within a TCP/IP routing domain (i.e., autonomous
+ system). Other aspects of router functionality (e.g., operation of
+ ICMP, ARP, EGP, etc.) are not affected by this proposal.
+
+ Similarly, this approach does not change the way that OSI packets are
+ handled. There will be no change at all to the contents nor to the
+ handling of ISO 8473 Data packets and Error Reports, nor to ISO 9542
+ Redirects and ES Hellos. ISO 9542 IS Hellos transmitted on LANs are
+ similarly unchanged. ISO 9542 IS Hellos transmitted on point-to-point
+ links are unchanged except for the addition of IP-related
+ information. Similarly, other OSI packets (specifically those
+ involved in the IS-IS intra-domain routing protocol) remain unchanged
+
+
+
+Callon [Page 4]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ except for the addition of IP-related information.
+
+ This approach makes use of the existing IS-IS packets, with IP-
+ specific fields added. Specifically: (i) authentication information
+ may be added to all IS-IS packets; (ii) the protocols supported by
+ each router, as well as each router's IP addresses, are specified in
+ ISO 9542 IS Hello, IS-IS Hello and Link State Packets; (iii)
+ internally reachable IP addresses are specified in all Link State
+ Packets; and (iv) externally reachable IP addresses, and external
+ routing protocol information, may be specified in level 2 Link State
+ Packets. The detailed encoding and interpretation of this in
+ formation is specified in sections 3, 4, and 5 of this RFC.
+
+ The protocol described in this report may be used to provide routing
+ in an IP-only routing domain, in which all routers are IP-only.
+ Similarly, this protocol may be used to provide routing in a pure
+ dual domain, in which all routers are dual. Finally, this protocol
+ may be used to provide routing in a mixed domain, in which some
+ routers are IP-only, some routers are OSI-only, and some routers are
+ dual. The specific topological restrictions which apply in this
+ latter case are described in detail in section 1.4 ("Support of Mixed
+ Routing Domains"). The use of IS-IS for support of pure OSI domains
+ is specified in [1].
+
+ This protocol specification does not constrain which network
+ management protocol(s) may be used to manage IS-IS-based routers.
+ Management information bases (MIBs) for managing IP-only, OSI-only,
+ and dual routers, compatible with CMIP, CMOT, and/or SNMP, are the
+ subject of a separate, companion document [8].
+
+1.2 Overview of the ISO IS-IS Protocol
+
+ The IS-IS Routing Protocol has been developed in ISO to provide
+ routing for pure OSI environments. In particular, IS-IS is designed
+ to work in conjunction with ISO 8473 (The ISO Connectionless Network
+ Layer Protocol [2]), and ISO 9542 (The ISO End System to Intermediate
+ System Protocol [3]). This section briefly describes the manner in
+ which IS-IS is used to support pure OSI environments. Enhancements
+ for support of IP and dual environments are specified elsewhere in
+ this report.
+
+ In IS-IS, the network is partitioned into "routing domains". The
+ boundaries of routing domains are defined by network management, by
+ setting some links to be "exterior links". If a link is marked as
+ "exterior", no IS-IS routing messages are sent on that link.
+
+ Currently, ISO does not have a standard for inter-domain routing
+ (i.e., for routing between separate autonomous routing domains).
+
+
+
+Callon [Page 5]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ Instead, manual configuration is used. The link is statically
+ configured with the set of address prefixes reachable via that link,
+ and with the method by which they can be reached (such as the DTE
+ address to be dialed to reach that address, or the fact that the DTE
+ address should be extracted from the IDP portion of the ISO address).
+
+ OSI IS-IS routing makes use of two-level hierarchical routing. A
+ routing domain is partitioned into areas. Level 1 routers know the
+ topology in their area, including all routers and end systems in
+ their area. However, level 1 routers do not know the identity of
+ routers or destinations outside of their area. Level 1 routers
+ forward all traffic for destinations outside of their area to a level
+ 2 router in their area. Similarly, level 2 routers know the level 2
+ topology, and know which addresses are reachable via each level 2
+ router. However, level 2 routers do not need to know the topology
+ within any level 1 area, except to the extent that a level 2 router
+ may also be a level 1 router within a single area. Only level 2
+ routers can exchange data packets or routing information directly
+ with external routers located outside of the routing domains.
+
+ +----------------------+-------------------------------+
+ | IDP | DSP |
+ +----------------------+-------------------------------+
+ . . .
+ . . .
+ . . .
+ +-----+----------------+----------+--------------+-----+
+ | AFI | IDI | HO-DSP | ID | SEL |
+ +-----+----------------+----------+--------------+-----+
+
+ Figure 1 - ISO Hierarchical Address Structure
+
+
+ As illustrated in figure 1, ISO addresses are subdivided into the
+ Initial Domain Part (IDP), and the Domain Specific Part (DSP). The
+ IDP is the part which is standardized by ISO, and specifies the
+ format and authority responsible for assigning the rest of the
+ address. The DSP is assigned by whatever addressing authority is
+ specified by the IDP. The DSP is further subdivided into a "High
+ Order Part of DSP" (HO-DSP), a system identifier (ID), and an NSAP
+ selector (SEL). The HO-DSP may use any format desired by the
+ authority which is identified by the IDP. Together, the combination
+ of [IDP, HO-DSP] identify both the routing domain and the area within
+ the routing domain. The combination of [IDP,HO-DSP] may therefore be
+ referred to as the "Area Address".
+
+ Usually, all nodes in an area have the same area address. However,
+ sometimes an area might have multiple addresses. Motivations for
+
+
+
+Callon [Page 6]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ allowing this are:
+
+ - It might be desirable to change the address of an area. The most
+ graceful way of changing an area from having address A to having
+ address B is to first allow it to have both addresses A and B, and
+ then after all nodes in the area have been modified to recognize
+ both addresses, then one by one the nodes can be modified to
+ "forget" address A.
+
+ - It might be desirable to merge areas A and B into one area. The
+ method for accomplishing this is to, one by one, add knowledge of
+ address B into the A partition, and similarly add knowledge of
+ address A into the B partition.
+
+ - It might be desirable to partition an area C into two areas, A
+ and B (where "A" might equal "C", in which case this example
+ becomes one of removing a portion of an area). This would be
+ accomplished by first introducing knowledge of address A into
+ the appropriate nodes (those destined to become area A), and
+ knowledge of address B into the appropriate nodes, and then one
+ by one removing knowledge of address C.
+
+ Since OSI addressing explicitly identifies the area, it is very easy
+ for level 1 routers to identify packets going to destinations outside
+ of their area, which need to be forwarded to level 2 routers.
+
+ In IS-IS, there are two types of routers:
+
+ - Level 1 intermediate systems -- these nodes route based on the ID
+ portion of the ISO address. They route within an area. They
+ recognize, based on the destination address in a packet, whether
+ the destination is within the area. If so, they route towards
+ the destination. If not, they route to the nearest level 2 router.
+
+ - Level 2 intermediate systems -- these nodes route based on the area
+ address (i.e., on the combination of [IDP, HO-DSP]). They route
+ towards areas, without regard to the internal structure of an area.
+ A level 2 IS may also be a level 1 IS in one area.
+
+ A level 1 router will have the area portion of its address manually
+ configured. It will refuse to become a neighbor with a node whose
+ area addresses do not overlap its area addresses. However, if level 1
+ router has area addresses A, B, and C, and a neighbor has area
+ addresses B and D, then the level 1 router will accept the other node
+ as a neighbor.
+
+ A level 2 router will accept another level 2 router as a neighbor,
+ regardless of area address. However, if the area addresses do not
+
+
+
+Callon [Page 7]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ overlap, the link would be considered by both routers to be "level 2
+ only", and only level 2 LSPs would flow on the link. External links
+ (to other routing domains) must be from level 2 routers.
+
+ IS-IS provides an optional partition repair function. In the unlikely
+ case that a level 1 area become partitioned, this function, if
+ implemented, allows the partition to be repaired via use of level 2
+ routes.
+
+ IS-IS requires that the set of level 2 routers be connected. Should
+ the level 2 backbone become partitioned, there is no provision for
+ use of level 1 links to repair a level 2 partition.
+
+ In unusual cases, a single level 2 router may lose connectivity to
+ the level 2 backbone. In this case the level 2 router will indicate
+ in its level 1 LSPs that it is not "attached", thereby allowing level
+ 1 routers in the area to route traffic for outside of the domain to a
+ different level 2 router. Level 1 routers therefore route traffic to
+ destinations outside of their area only to level 2 routers which
+ indicate in their level 1 LSPs that they are "attached".
+
+ An end system may autoconfigure the area portion of its address by
+ extracting the area portion of a neighboring router's address. If
+ this is the case, then an endnode will always accept a router as a
+ neighbor. Since the standard does not specify that the end system
+ MUST autoconfigure its area address, an end system may be configured
+ with an area address. In this case the end system would ignore router
+ neighbors with non-matching area addresses.
+
+ Special treatment is necessary for broadcast subnetworks, such as
+ LANs. This solves two sets of issues: (i) In the absence of special
+ treatment, each router on the subnetwork would announce a link to
+ every other router on the subnetwork, resulting in n-squared links
+ reported; (ii) Again, in the absence of special treatment, each
+ router on the LAN would report the same identical list of end systems
+ on the LAN, resulting in substantial duplication.
+
+ These problems are avoided by use of a "pseudonode", which represents
+ the LAN. Each router on the LAN reports that it has a link to the
+ pseudonode (rather than reporting a link to every other router on the
+ LAN). One of the routers on the LAN is elected "designated router".
+ The designated router then sends out an LSP on behalf of the
+ pseudonode, reporting links to all of the routers on the LAN. This
+ reduces the potential n-squared links to n links. In addition, only
+ the pseudonode LSP includes the list of end systems on the LAN,
+ thereby eliminating the potential duplication (for further
+ information on designated routers and pseudonodes, see [1]).
+
+
+
+
+Callon [Page 8]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ The IS-IS provides for optional Quality of Service (QOS) routing,
+ based on throughput (the default metric), delay, expense, or residual
+ error probability. This is described in greater detail in section
+ 3.5, and in [1].
+
+1.3 Overview of the Integrated IS-IS
+
+ The integrated IS-IS allows a single routing protocol to be used to
+ route both IP and OSI packets. This implies that the same two-level
+ hierarchy will be used for both IP and OSI routing. Each area will be
+ specified to be either IP-only (only IP traffic can be routed in that
+ particular area), OSI-only (only OSI traffic can be routed in that
+ area), or dual (both IP and OSI traffic can be routed in the area).
+
+ This proposal does not allow for partial overlap of OSI and IP areas.
+ For example, if one area is OSI-only, and an other area is IP-only,
+ then it is not permissible to have some routers be in both areas.
+ Similarly, a single backbone is used for the routing domain. There is
+ no provision for independent OSI and IP backbones.
+
+ Similarly, within an IP-only or dual area, the amount of knowledge
+ maintained by routers about specific IP destinations will be as
+ similar as possible as for OSI. For example, IP-capable level 1
+ routers will maintain the topology within the area, and will be able
+ to route directly to IP destinations within the area. However, IP-
+ capable level 1 routers will not maintain information about
+ destinations outside of the area. Just as in normal OSI routing,
+ traffic to destinations outside of the area will be forwarded to the
+ nearest level 2 router. Since IP routes to subnets, rather than to
+ specific end systems, IP routers will not need to keep nor distribute
+ lists of IP host identifiers (note that routes to hosts can be
+ announced by using a subnet mask of all ones).
+
+ The IP address structure allows networks to be partitioned into
+ subnets, and allows subnets to be recursively subdivided into smaller
+ subnets. However, it is undesireable to require any specific
+ relationship between IP subnet addresses and IS-IS areas. For
+ example, in many cases, the dual routers may be installed into
+ existing environments, which already have assigned IP and/or OSI
+ addresses. In addition, even if IP addresses are not already pre-
+ assigned, the address limitations of IP constrain what addresses may
+ be assigned. We therefore will not require any specific relationship
+ between IP addresses and the area structure. The IP addresses can be
+ assigned completely independently of the OSI addresses and IS-IS area
+ structure. As will be described in section 3.2 ("Hierarchical
+ Abbreviation of IP Reachability Information"), greater efficiency and
+ scaling of the routing algorithm can be achieved if there is some
+ correspondence between the IP address assignment structure and the
+
+
+
+Callon [Page 9]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ area structure.
+
+ Within an area, level 1 routers exchange link state packets which
+ identify the IP addresses reachable by each router. Specifically,
+ zero or more [IP address, subnet mask, metric] combinations may be
+ included in each Link State Packet. Each level 1 router is manually
+ configured with the [IP address, subnet mask, metric] combinations
+ which are reachable on each interface. A level 1 router routes as
+ follows:
+
+ - If a specified destination address matches an [IP address, subnet
+ mask, metric] reachable within the area, the packet is routed via
+ level 1 routing.
+
+ - If a specified destination address does not match any [IP address,
+ subnet mask, metric] combination listed as reachable within the
+ area, the packet is routed towards the nearest level 2 router.
+
+ Flexible use of the limited IP address space is important in order to
+ cope with the anticipated growth of IP environments. Thus an area
+ (and by implication a routing domain) may simultaneously make use of
+ a variety of different address masks for different subnets in the
+ area (or domain). Generally, if a specified destination address
+ matches more than one [IP address, subnet mask] pair, the more
+ specific address is the one routed towards (the one with more "1"
+ bits in the mask -- this is known as "best match" routing).
+
+ Level 2 routers include in their level 2 LSPs a complete list of [IP
+ address, subnet mask, metric] specifying all IP addresses reachable
+ in their area. As described in section 3, this information may be
+ obtained from a combination of the level 1 LSPs (obtained from level
+ 1 routers in the same area), and/or by manual configuration. In
+ addition, Level 2 routers may report external reachability
+ information, corresponding to addresses which can be reached via
+ routers in other routing domains (autonomous systems)
+
+ Default routes may be announced by use of a subnet mask containing
+ all zeroes. Default routes should be used with great care, since they
+ can result in "black holes". Default routes are permitted only at
+ level 2 as external routes (i.e., included in the "IP External
+ Reachability Information" field, as explained in sections 3 and 5).
+ Default routes are not permitted at level 1.
+
+ The integrated IS-IS provides optional Type of Service (TOS) routing,
+ through use of the QOS feature from IS-IS.
+
+
+
+
+
+
+Callon [Page 10]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+1.4 Support of Mixed Routing Domains
+
+ The integrated IS-IS proposal specifically allows for three types of
+ routing domains:
+
+ - Pure IP
+
+ - Pure OSI
+
+ - Dual
+
+ In a pure IP routing domain, all routers must be IP-capable. IP-only
+ routers may be freely mixed with dual routers. Some fields
+ specifically related to OSI operation may be included by dual
+ routers, and will be ignored by IP-only routers. Only IP traffic will
+ be routed in an pure IP domain. Any OSI traffic may be discarded
+ (except for the IS-IS packets necessary for operation of the routing
+ protocol).
+
+ In a pure OSI routing domain, all routers must be OSI-capable. OSI-
+ only routers may be freely mixed with dual routers. Some fields
+ specifically related to IP operation may be included by dual routers,
+ and will be ignored by OSI-only routers. Only OSI traffic will be
+ routed in a pure OSI domain. Any IP traffic may be discarded.
+
+ In a dual routing domain, IP-only, OSI-only, and dual routers may be
+ mixed on a per-area basis. Specifically, each area may itself be
+ defined to be pure IP, pure OSI, or dual.
+
+ In a pure IP area within a dual domain, IP-only and dual routers may
+ be freely mixed. Only IP traffic can be routed by level 1 routing
+ within a pure-IP area.
+
+ In a pure-OSI area within a dual domain, OSI-only and dual routers
+ may be freely mixed. Only OSI traffic can be routed by level 1
+ routing within a pure OSI area.
+
+ In a dual area within a dual routing domain only dual routers may be
+ used. Both IP and OSI traffic can be routed within a dual area.
+
+ Within a dual domain, if both IP and OSI traffic are to be routed
+ between areas then all level 2 routers must be dual.
+
+1.5 Advantages of Using Integrated IS-IS
+
+ Use of the integrated IS-IS protocol, as a single protocol for
+ routing both IP and OSI packets in a dual environment, has
+ significant advantages over using separate protocols for
+
+
+
+Callon [Page 11]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ independently routing IP and OSI traffic.
+
+ An alternative approach is known as "Ships In the Night" (S.I.N.).
+ With the S.I.N. approach, completely separate routing protocols are
+ used for IP and for OSI. For example, OSPF [5] may be used for
+ routing IP traffic, and IS-IS [1] may be used for routing OSI
+ traffic. With S.I.N., the two routing protocols operate more or less
+ independently. However, dual routers will need to implement both
+ routing protocols, and therefore there will be some degree of
+ competition for resources.
+
+ Note that S.I.N. and the integrated IS-IS approach are not really
+ completely separate options. In particular, if the integrated IS-IS
+ is used within a routing domain for routing of IP and OSI traffic, it
+ is still possible to use other independent routing protocols for
+ routing other protocol suites.
+
+ In the future, optional extensions to IS-IS may be defined for
+ routing other common protocol suites. However, such future options
+ are outside of the scope of this document. This section will compare
+ integrated IS-IS and S.I.N. for routing of IP and OSI only.
+
+ A primary advantage of the integrated IS-IS relates to the network
+ management effort required. Since the integrated IS-IS provides a
+ single routing protocol, within a single coordinated routing domain
+ using a single backbone, this implies that there is less information
+ to configure. This combined with a single coordinated MIB simplifies
+ network management.
+
+ Note that the operation of two routing protocols with the S.I.N.
+ approach are not really independent, since they must share common
+ resources. However, with the integrated IS-IS, the interactions are
+ explicit, whereas with S.I.N., the interactions are implicit. Since
+ the interactions are explicit, again it may be easier to manage and
+ debug dual routers.
+
+ Another advantage of the integrated IS-IS is that, since it requires
+ only one routing protocol, it uses fewer resources. In particular,
+ less implementation resources are needed (since only one protocol
+ needs to be implemented), less CPU and memory resources are used in
+ the router (since only one protocol needs to be run), and less
+ network resources are used (since only one set of routing packets
+ need to be transmitted). Primarily this translates into a financial
+ savings, since each of these three types of resources cost money.
+ This implies that dual routers based on the integrated IS-IS should
+ be less expensive to purchase and operate than dual routers based on
+ S.I.N.
+
+
+
+
+Callon [Page 12]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ Note that the operation of two routing protocols with the S.I.N.
+ approach are not really independent, since they must share common
+ resources. For example, if one routing protocol becomes unstable and
+ starts to use excessive resources, the other protocol is likely to
+ suffer. A bug in one protocol could crash the other. However, with
+ the integrated IS-IS, the interactions are explicit and are defined
+ into the protocol and software interactions. With S.I.N., the
+ interactions are implicit.
+
+ The use of a single integrated routing protocol similarly reduces the
+ likely frequency of software upgrades. Specifically, if you have two
+ different routing protocols in your router, then you have to upgrade
+ the software any time EITHER of the protocols change. If you make use
+ of a single integrated routing protocol, then software changes are
+ still likely to be needed, but less frequently.
+
+ Finally, routing protocols have significant real time requirements.
+ In IS-IS, these real time requirements have been explicitly
+ specified. In other routing protocols, these requirements are
+ implicit. However, in all routing protocols, there are real time
+ guarantees which must be met in order to ensure correct operation. In
+ general, it is difficult enough to ensure compliance with real time
+ requirements in the implementation of a single real time system. With
+ S.I.N., implementation of two semi-independent real-time protocols in
+ a single device makes this more difficult.
+
+ Note that both integrated IS-IS and S.I.N. allow for independence of
+ external routes (for traffic from/to outside of the routing domain),
+ and allow for independent assignment of OSI and TCP/IP addresses.
+
+2 Symbols and Abbreviations
+
+AA Administrative Authority
+ (a three octet field in the GOSIP version 2.0 NSAP
+ address format)
+
+AFI Authority and Format Identifier
+ (the first octet of all OSI NSAP addresses -- identifies
+ format of the rest of the address)
+
+CLNP Connection-Less Network Protocol
+ (ISO 8473, the OSI connectionless network layer protocol
+ -- very similar to IP)
+
+DFI DSP Format Identifier
+ (a one octet field in the GOSIP version 2.0 NSAP address
+ format)
+
+
+
+
+Callon [Page 13]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ES End System
+ (The OSI term for a host)
+
+ES-IS End System to Intermediate System Routeing Exchange
+ Protocol (ISO 9542 -- OSI protocol between routers
+ and end systems)
+
+ICD International Code Designator
+ (ISO standard for identifying organizations)
+
+IP Internetwork Protocol
+ (an Internet Standard Network Layer Protocol)
+
+IS Intermediate System
+ (The OSI term for a router)
+
+IS-IS Intermediate System to Intermediate System Routeing
+ Exchange Protocol
+ (the ISO protocol for routing within a single
+ routing domain)
+
+IS-IS Hello An Hello packet defined by the IS-IS protocol
+ (a type of packet used by the IS-IS protocol)
+
+ISH An Hello packet defined by ISO 9542 (ES-IS protocol).
+ (not the same as IS-IS Hello)
+
+ISO International Organization for Standardization
+ (an international body which is authorized to write
+ standards of many kinds)
+
+LSP Link State Packet
+ (a type of packet used by the IS-IS protocol)
+
+NLPID Network Layer Protocol ID
+ (A one-octet field identifying a network layer protocol)
+
+NSAP Network Service Access Point
+ (a conceptual interface point at which the network
+ service is made available)
+
+SEL NSAP Selector
+ (the last octet of NSAP addresses, also called NSEL)
+
+OSI Open Systems Interconnection
+ (an international standard protocol architecture)
+
+
+
+
+
+Callon [Page 14]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+RD Routing Domain
+ (the set of routers and end systems using a single
+ instance of a routing protocol such as IS-IS)
+
+SNPA Subnetwork Point of Attachment
+ (a conceptual interface at which a subnetwork service
+ is provided)
+
+TCP Transmission Control Protocol
+ (an Internet Standard Transport Layer Protocol)
+
+TCP/IP The protocol suite based on TCP, IP, and related
+ protocols (the Internet standard protocol
+ architecture)
+
+3 Subnetwork Independent Functions
+
+3.1 Exchange of Routing Information
+
+ The exchange of routing information between routers makes use of the
+ normal routing packet exchange as defined in the OSI IS-IS routing
+ spec, with additional IP-specific information added to the IS-IS
+ routing packets.
+
+ The IS-IS protocol provides for the inclusion of variable length
+ fields in all IS-IS packets. These fields are encoded using a "Code,
+ Length, Value" triplet, where the code and length are encoded in one
+ octet each, and the value has the length specified (from 0 to 254
+ octets). IS-IS requires that: "Any codes in a received PDU that are
+ not recognised are ignored and passed through unchanged". This
+ requirement applies to all routers implementing IS-IS, including
+ OSI-only, IP-only, and dual routers. This allows IP-specific
+ information to be encoded in a manner which OSI-only routers will
+ ignore, and also allows OSI-specific information to be encoded in a
+ manner which IP-only routers will ignore.
+
+ IP-capable (i.e., all IP-only and dual) routers need to know what
+ network layer protocols are supported by other routers in their area.
+ This information is made available by inclusion of a "protocols
+ supported" field in all IS-IS Hello and Link State Packets. This
+ field makes use of the NLPID (Network Layer Protocol Identifier),
+ which is a one-octet value assigned by ISO to identify network level
+ protocols. NLPID values have been assigned to ISO 8473 and to IP.
+
+ IP-capable routers need to know the IP address of the adjacent
+ interface of neighboring routers. This is required for sending ICMP
+ redirects (when an IP-capable router sends an ICMP redirect to a
+ host, it must include the IP address of the appropriate interface of
+
+
+
+Callon [Page 15]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ the correct next-hop router). This information is made available by
+ inclusion of the IP interface address in the IS-IS Hello packets.
+ Specifically, each IS-IS Hello packet contains the IP address(es) of
+ the interface over which the Hello is transmitted. The IS-IS allows
+ multiple IP addresses to be assigned to each physical interface.
+
+ In some cases, it will be useful for IP-capable routers to be able to
+ determine an IP address(es) of all other routers at their level
+ (i.e., for level 1 routers: all other routers in their area; for
+ level 2 routers: all other level 2 routers in the routing domain).
+ This is useful whenever an IP packet is to be sent to a router, such
+ as for encapsulation or for transmission of network management
+ packets. This information is made available by inclusion of IP
+ address in LSPs. Specifically, each IS-IS LSP includes one or more IP
+ addresses of the router which transmits the LSP. An IP-capable router
+ is required to include at least one of its IP addresses in its LSPs,
+ and may optionally include several or all of its IP addresses. Where
+ a single router operates as both a level 1 and a level 2 router, it
+ is required to include the same IP address(es) in its level 1 and
+ level 2 LSPs.
+
+ IP-capable routers need to know, for any given IP destination
+ address, the correct route to that destination. Specifically, level 1
+ routers need to know what IP addresses are reachable from each level
+ 1 router in their area. In addition, level 1 routers need to find
+ level 2 routers (for traffic to IP addresses outside of their area).
+ Level 2 routers need to know what IP addresses are reachable
+ internally (either directly, or via level 1 routing) from other level
+ 2 routers, and what addresses are reachable externally from other
+ level 2 routers. All of this information is made available by
+ inclusion of IP reachable address information in the Link State
+ Packets.
+
+ Internal (within the routing domain) and external (outside the
+ domain) reachability information is announced separately in level 2
+ LSPs. Reachable IP addresses include a default metric, and may
+ include multiple TOS-specific metrics. In general, for external
+ routes, metrics may be of type "internal" (i.e., directly comparable
+ with internal metrics) or of type "external" (i.e., not comparable
+ with the internal metric). A route using internal metrics (i.e.,
+ either announced as "IP internal reachability information", or
+ announced as "IP external reachability information" with an internal
+ metric) is always preferred to a route using external metrics (i.e.,
+ announced as "IP external reachability information", with an external
+ metric).
+
+ The detailed encoding of the IP-specific information included in
+ routing packets is provided in section 5 (Structure and Encoding of
+
+
+
+Callon [Page 16]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ PDUs).
+
+3.2 Hierarchical Abbreviation of IP Reachability Information
+
+ Level 2 routers include in their level 2 LSPs a list of all [IP
+ address, subnet mask, metric] combinations reachable in their area.
+ In general, this information may be determined from the level 1 LSPs
+ from all routers in the area. If we ignore resource constraints, then
+ it would be permissible for a level 2 router to simply duplicate all
+ [IP address, subnet mask, metric] entries from all level 1 routers in
+ its area (with appropriate metric adjustment), for inclusion in its
+ level 2 LSP. However, in order for hierarchical routing to scale to
+ large routing domain sizes, it is highly desired to abbreviate the
+ reachable address information.
+
+ This is accomplished by manual configuration of summary addresses.
+ Each level 2 router may be configured with one or more [IP address,
+ subnet mask, metric] entries for announcement in their level 2 LSPs.
+
+ The set of reachable addresses obtained from level 1 LSPs is compared
+ with the configured reachable addresses. Redundant information
+ obtained from level 1 LSPs is not included in level 2 LSPs. Generally
+ it is expected that the level 2 configured information will specify
+ more inclusive addresses (corresponding to a subnet mask with fewer
+ bits set to 1). This will therefore allow one configured
+ address/submask pair (or a small number of such pairs) to
+ hierarchically supercede the information corresponding to multiple
+ entries in level 1 LSPs.
+
+ The manually configured addresses are included in level 2 LSPs only
+ if they correspond to at least one address which is reachable in the
+ area. For manually configured level 2 addresses, the associated
+ metric values to announce in level 2 LSPs are also manually
+ configured. The configured addresses will supercede reachable address
+ entries from level 1 LSPs based only on the IP address and subnet
+ mask -- metric values are not considered when determining if a given
+ configured address supercedes an address obtained from a level 1 LSP.
+
+ Any address obtained from a level 1 LSP which is not superceded by
+ the manually configured information is included in the level 2 LSPs.
+ In this case, the metric value announced in the level 2 LSPs is
+ calculated from the sum of the metric value announced in the
+ corresponding level 1 LSP, plus the distance from the level 2 router
+ to the appropriate level 1 router. Note: If this sum results in a
+ metric value greater than 63 (the maximum value that can be reported
+ in level 2 LSPs), then the value 63 must be used. Delay, expense, and
+ error metrics (i.e., those TOS metrics other than the default metric)
+ will be included only if (i) the level 2 router supports the specific
+
+
+
+Callon [Page 17]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ TOS; (ii) the path from the level 2 router to the appropropriate
+ level 1 router is made up of links which support the specific TOS;
+ and (iii) the level 1 router which can reach the address directly
+ also supports the specific TOS for this route, as indicated in its
+ level 1 LSP.
+
+ In general, the same [IP address, subnet mask] pair may be announced
+ in level 1 LSPs sent by multiple level 1 routers in the same area. In
+ this case (assuming the entry is not superceded by a manually
+ configured entry), then only one such entry shall be included in the
+ level 2 LSP. The metric value(s) announced in level 2 LSPs correspond
+ to the minimum of the metric value(s) that would be calculated for
+ each of the level 1 LSP entries.
+
+ A level 2 router will have IP addresses which are directly reachable
+ via its own interfaces. For purposes of inclusion of IP reachable
+ address information in level 2 LSPs, these "directly reachable"
+ addresses are treated exactly the same as addresses received in level
+ 1 LSPs.
+
+ Manually configured addresses may hierarchically supercede multiple
+ level 1 reachable address entries. However, there may be some IP
+ addresses which match the manually configured addresses, but which
+ are not reachable via level 1 routing. If a level 2 router receives
+ an IP packet whose IP address matches a manually configured address
+ which it is including in its level 2 LSP, but which is not reachable
+ via level 1 routing in the area, then the packet must be discarded.
+ In this case, an error report may be returned (as specified in RFC
+ 1009), with the reason for discard specifying destination
+ unreachable.
+
+
+
+
+
+
+ Figure 2 - An Example Routing Domain (not shown)
+
+ An example is illustrated in figure 2. Suppose that the network
+ number for the entire routing domain is 17 (a class A network).
+ Suppose each area is assigned a subnet number consisting of the next
+ 8 bits. The area may be further subdivided by assigning the next
+ eight bits to each LAN in the area, giving each a 24 bit subnet mask
+ (counting the network and subnet fields). Finally 8 bits are left for
+ the host field. Suppose that for a particular area (given subnet
+ number 17.133) there are a number of IP capable level 1 routers
+ announcing (in the special IP entry in their level 1 LSPs) subnets
+ 17.133.5, 17.133.43, and 17.133.57.
+
+
+
+Callon [Page 18]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ Suppose that in this example, in order to save space in level 2 LSPs,
+ the level 2 routers in this area are configured to announce subnet
+ 17.133. Only this one address needs to be announced in level 2 LSPs.
+ Thus if an IP packet comes along for an address in subnet 17.133.5,
+ 17.133.43 or 17.133.57, then other level 2 routers, in other areas,
+ will know to pass the traffic to this area.
+
+ The inclusion of 17.133 in level 2 LSPs means that the three subnet
+ addresses starting with 17.133 do not all have to be listed
+ separately in level 2 LSPs.
+
+ If any traffic comes along that is for an unreachable address such as
+ 17.133.124.7, then level 2 routers in other areas in this particular
+ domain will think that this area can handle this traffic, will
+ forward traffic to level 2 routers in this area, which will have to
+ discard this traffic.
+
+ Suppose that subnet number 17.133.125 was actually reachable via some
+ other area, such as the lower right hand area. In this case, the
+ level 2 router in the left area would be announcing (in its level 2
+ LSPs according to manually configured information) reachability to
+ subnet 17.133. However, the level 2 router in the lower right area
+ would be announcing (in its level 2 LSPs according to information
+ taken from its received level 1 LSPs), reachability to subnet
+ 17.133.125. Due to the use of best match routing, this works
+ correctly. All traffic from other areas destined to subnet 17.133.125
+ would be sent to the level 2 router in the lower right area, and all
+ other traffic to subnet 17.133 (i.e., traffic to any IP address
+ starting with 17.133, but not starting with 17.133.125) would be sent
+ to the level 2 router in the leftmost area.
+
+3.3 Addressing Routers in IS-IS Packets
+
+ The IS-IS packet formats explicitly require that OSI-style addresses
+ of routers appear in the IS-IS packets. For example, these addresses
+ are used to determine area membership of routers. It is therefore
+ necessary for all routers making use of the IS-IS protocol to have
+ OSI style addresses assigned. For IP-only routers, these addresses
+ will be used only in the operation of the IS-IS protocol, and are not
+ used for any other purpose (such as the operation of EGP, ICMP, or
+ other TCP/IP protocols).
+
+ For OSI-only and dual routers, assignment of NSAP addresses is
+ straight forward, but is outside of the scope of this specification.
+ Address assignment mechanisms are being set up by standards bodies
+ which allow globally unique OSI NSAP addresses to be assigned. All
+ OSI-only and dual routers may therefore make use of normal OSI
+ addresses in the operation of the IS-IS protocol.
+
+
+
+Callon [Page 19]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ For IP-only routers, there are two ways in which NSAP addresses may
+ be obtained for use with the IS-IS protocol.
+
+ 1) For those environments in which OSI is being used, or in which it
+ is anticipated that OSI will be used in the future, it is
+ permissible to obtain NSAP address assignments in the normal
+ manner, assign normal NSAP addresses to IP-only routers, and use
+ these addresses in the operation of IS-IS. This approach is
+ recommended even for pure IP routing domains, as it will simplify
+ future migration from IP-only to dual operation.
+
+ 2) In some cases, routers may have only TCP/IP addresses, and it may
+ be undesireable to have to go through the normal mechanisms for
+ assignment of NSAP addresses. Instead, an alternate mechanim is
+ provided below for algorithmically generating a valid OSI style
+ address from existing IP address and autonomous system number
+ assignments.
+
+ Where desired, for IP-only routers, for use in IS-IS packet formats
+ only, OSI-style addresses (compatible with the USA GOSIP version 2.0
+ NSAP address format [9]) may be derived as follows:
+
+ AFI 1 octet value "47" (specifies ICD format)
+
+ ICD 2 octet value "00 05" (specifies Internet/Gosip)
+
+ DFI 1 octet value "xx"
+
+ AA 3 octets value "xx xx xx" (specifies special
+ IP-only use of NSAPs)
+
+ Reserved 2 octets must be "00 00"
+
+ RD 2 octets contains autonomous system number
+
+ Area 2 octets must be assigned as described below
+
+ ID 6 octets must be assigned as described below
+
+ SEL 1 octet used as described below
+
+ The AFI value of "47" and the ICD value of "00 05" specifies the
+ Gosip Version 2.0 addressing format. The DFI number of "xx" and the
+ AA of "xx xx xx" specify that this special NSAP address format is
+ being used, solely for IS-IS packet formats in an IP-only
+ environment. The reserved field must contain "00 00", as specified in
+ GOSIP version 2.0.
+
+
+
+
+Callon [Page 20]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ The routing domain field contains the Autonomous System number.
+ Strictly speaking, this is not necessary, since the IS-IS packets are
+ exchanged within a single AS only. However, inclusion of the AS
+ number in this address format will ensure correct operation in the
+ event that routers from separate routing domains/ASs are incorrectly
+ placed on the same link. The AS number in this context is used only
+ for definition of unique NSAP addresses, and does not imply any
+ coupling with exterior routing protocols.
+
+ The Area field must be assigned by the authority responsible for the
+ routing domain, such that each area in the routing domain must have a
+ unique Area value.
+
+ The ID must be assigned by the authority responsible for the routing
+ domain. The ID must be assigned such that every router in the routing
+ domain has a unique value. It is recommended that one of the
+ following methods is used:
+
+ 1)use a unique IEEE 802 48 bit station ID
+
+ 2)use the value hex "02 00" prepended to an IP address of the router.
+
+ IEEE 802 addresses, if used, must appear in IEEE canonical format.
+
+ Since the IEEE 802 station IDs are assigned to be globally unique,
+ use of these values clearly assures uniqueness in the area. Also, all
+ assigned IEEE 802 station IDs have the global/local bit set to zero.
+ Prepending the indicated pattern to the front of the IP address
+ therefore assures that format (2) illustrated above cannot produce
+ addresses which collide with format (1). Finally, to the extent that
+ IP addresses are also globally unique, format (2) will produce unique
+ IDs for routers.
+
+ The indicated hex value is specified in IEEE 802 canonical form [10].
+ In IEEE 802 addresses, the multicast bit is the least significant bit
+ of the first byte. The global/local bit is the next least significant
+ bit of the first byte. The indicated prefix therefore sets the
+ global/local bit to 1, and all other bits in the first two octets to
+ 0.
+
+ Note that within an area, whether ISO addresses are configured into
+ the routers through ISO address assignment, or whether the ISO-style
+ address is generated directly from the AS number and IP address, all
+ routers within an area must have the same high order part of address
+ (AFI, ICD, DFI, AA, RD, and Area). This ISO-style address is used in
+ IS-IS Hello messages and is the basis by which routers recognize
+ whether neighbor nodes are in or out of their area.
+
+
+
+
+Callon [Page 21]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+3.4 External Links
+
+ External connectivity (i.e., communications with routers outside of
+ the routing domain) is done only by level 2 routers. The ISO version
+ of IS-IS allows external OSI routes to be reported as "reachable
+ address prefixes" in level 2 LSPs. The integrated IS-IS also allows
+ external IP reachable addresses (i.e., IP addresses reachable via
+ inter-domain routing) to be reported in level 2 LSPs in the "IP
+ external reachability information" field. External OSI and external
+ IP routes are handled independently.
+
+ The routes announced in IP external reachability information entries
+ include all routes to outside of the routing domain. This includes
+ routes learned from OSPF, EGP, RIP, or any other external protocol.
+
+ External routes may make use of "internal" or "external" metrics.
+ Internal metrics are comparable with the metrics used for internal
+ routes. Thus in choosing between an internal route, and an external
+ route using internal metrics, the metric values may be directly
+ compared. In contrast, external metrics cannot be directly compared
+ with internal metrics. Any route defined solely using internal
+ metrics is always preferred to any route defined using external
+ metrics. When an external route using external metrics must be used,
+ the lowest value of the external metric is preferred regardless of
+ the internal cost to reach the appropriate exit point.
+
+ It is useful, in the operation of external routing protocols, to
+ provide a mechanism for border routers (i.e., routers in the same
+ routing domain, which have the ability to route externally to other
+ domains) to determine each other's existence, and to exchange
+ external information (in a form understood only by the border routers
+ themselves). This is made possible by inclusion of "inter-domain
+ routing protocol information" fields in level 2 LSPs. The inter-
+ domain routing protocol information field is not included in
+ pseudonode LSPs.
+
+ In general there may be multiple types of external inter-domain
+ routing protocol information exchanged between border routers. The
+ IS-IS therefore specifies that each occurance of the inter-domain
+ routing protocol information field include a "type" field, which
+ indicates the type of inter-domain routing protocol information
+ enclosed. Values to be used in the type field will be specified in
+ future versions of the "Assigned Numbers" RFC. Initial values for
+ this field are specified in Annex A of this specification.
+
+ Information contained in the inter-domain routing protocol
+ information field will be carried in level 2 LSPs, and will therefore
+ need to be stored by all level 2 routers in the domain. However, only
+
+
+
+Callon [Page 22]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ those level 2 routers which are directly involved in external routing
+ will use this information. In designing the use of this field, it is
+ important to carefully consider the implications that this may have
+ on storage requirements in level 2 routers (including those level 2
+ routers which are not directly involved in external routing).
+
+ The protocols used to exchange routing information directly between
+ border routers, and external routers (in other routing domains /
+ autonomous systems) are outside of the scope of this specification.
+
+3.5 Type of Service Routing
+
+ The integrated IS-IS protocol provides IP Type of Service (TOS)
+ routing, through use of the Quality of Service (QOS) feature of IS-
+ IS. This allows for routing on the basis of throughput (the default
+ metric), delay, expense, or residual error probability. Note than any
+ particular packet may be routed on the basis of any one of these four
+ metrics. Routing on the basis of general combinations of metrics is
+ not supported.
+
+ The support for TOS/QOS is optional. If a particular packet calls for
+ a specific TOS, and the correct path from the source to destination
+ is made up of routers all of which support that particular TOS, then
+ the packet will be routed on the optimal path. However, if there is
+ no path from the source to destination made up of routers which
+ support that particular type of service, then the packet will be
+ forwarded using the default metric instead. This allows for TOS
+ service in those environments where it is needed, while still
+ providing acceptable service in the case where an unsupported TOS is
+ requested.
+
+ NOTE - IP does not have a cost TOS. There is therefore no mapping of
+ IP TOS metrics which corresponds to the minimum cost metric.
+
+ The IP TOS field is mapped onto the four available metrics as
+ follows:
+
+ Bits 0-2 (Precedence): This field does not affect the route, but
+ rather may affect other aspects of packet
+ forwarding.
+
+ Bits 3 (Delay), 4 (Throughput) and 5 (Reliability):
+
+ 000 (all normal) Use default metric
+
+ 100 (low delay) Use delay metric
+
+ 010 (high throughput) Use default metric
+
+
+
+Callon [Page 23]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ 001 (high reliabiity) Use reliability metric
+
+ other Use default metric
+
+3.6 Multiple LSPs and SNPs
+
+ In some cases, IS-IS packets (specifically Link State Packets and
+ Complete Sequence Number Packets) may be too large to fit into one
+ packet. The OSI IS-IS [1] allows for LSPs and CSNPs to be split into
+ multiple packets. This is independent of ISO 8473 segmentation, and
+ is also independent of IP fragmentation. Use of independent multiple
+ packets has the advantages (with respect to segmentation or
+ fragmentation) that: (i) when information in the IS-IS changes, only
+ those packets effected need to be re-issued; (ii) when a single
+ packet is received, it can be processed without the need to receive
+ all other packets of the same type from the same router before
+ beginning processing.
+
+ The Integrated IS-IS makes use of the same multiple packet function,
+ as defined in [1]. IP-specific fields in IS-IS packets may be split
+ across multiple packets. As specified in section 5 ("Structure and
+ Encoding of PDUs"), some of the IP-specific fields (those which may
+ be fairly long) may be split into several occurences of the same
+ field, thereby allowing splitting of the fields across different
+ packets.
+
+ Multiple LSPs from the same router are distinguished by LSP number.
+ Generally, most variable length fields may occur in an LSP with any
+ LSP number. Some specific variable length fields may be required to
+ occur in LSP number 0. Except where explicitly stated otherwise, when
+ an IS-IS router issues multiple LSPs, the IP-specific fields may
+ occur in an LSP with any LSP number.
+
+ Complete Sequence Number Packets may be split into multiple packets,
+ with the range to which each packet applies explicitly reported in
+ the packet. Partial Sequence Number Packets are inherently partial,
+ and so can easily be split into multiple packets if this is
+ necessary. Again, where applicable, IP-specific fields may occur in
+ any SNP.
+
+3.7 IP-Only Operation
+
+ For IP-only routers, the format for IS-IS packets remains unchanged.
+ However, there are some variable length fields from the IS-IS packets
+ that can be omitted. Specifically:
+
+
+
+
+
+
+Callon [Page 24]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ IS-IS Hello Packets:
+
+ - no change
+
+ IS-IS Link State Packets:
+
+ - the "End Systems Neighbours" entries are omitted
+
+ - the "Prefix Neighbours" entries are omitted
+
+ IS-IS Sequence Number Packets:
+
+ - no change
+
+3.8 Encapsulation
+
+ Future versions of the Integated IS-IS may specify optional
+ encapsulation mechanisms for partition repair, and for forwarding
+ packets through incompatible routers (i.e., for forwarding OSI
+ packets through IP-only routers, and forwarding IP packets through
+ OSI-only routers). The details of encapsulation and decapsulation are
+ for further study. Routers complying with the Integrated IS-IS are
+ not required to implement encapsulation nor decapsulation.
+
+3.9 Authentication
+
+ The authentication field allows each IS-IS packet to contain
+ information used to authenticate the originator and/or contents of
+ the packet. The authentication information contained in each packet
+ is used to authenticate the entire packet, including OSI and IP
+ parts. If a packet is received which contains invalid authentication
+ information, then the entire packet is discarded. If an LSP or SNP is
+ split into multiple packets (as described in section 3.6), then each
+ is authenticated independently.
+
+ Use of the authentication field is optional. Routers are not required
+ to be able to interpret authentication information. As with other
+ fields in the integrated IS-IS, if a router does not implement
+ authentication then it will ignore any authentication field that may
+ be present in an IS-IS packet.
+
+ Annex D specifies a proposed use of the authentication field.
+
+3.10 Order of Preference of Routes / Dijkstra Computation
+
+ We define the term "IP reachability entry" to mean the combination of
+ the [IP address, subnet mask]. The Dijkstra calculation must
+ calculate routes to each distinct IP reachability entry. For the
+
+
+
+Callon [Page 25]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ Dijkstra calculation, each IP reachability entry can be treated in
+ much the same manner as an OSI end system. Naturally, each IP
+ reachability entry is treated as distinct from any OSI end systems
+ which may also be reachable in the same area or routing domain.
+
+ For any particular IP reachability entry, this is the same as another
+ entry if and only if: (i) the subnet masks are identical; and (ii)
+ for each bit in the subnet mask which has the value "1", the IP
+ address is identical. This can easily be tested by zeroing those bits
+ in the IP address which correspond to a zero bit in the mask, and
+ then treating the entry as a 64 bit quantity, and testing for
+ equality between different 64 bit quantities. The actual calculation
+ of routes to IP reachability entries is therefore no more complex
+ than calculation of routes to OSI end systems (except for the
+ replacement of a 48-bit test with a 64-bit test).
+
+ The Dijkstra computation does not take into consideration whether a
+ router is IP-only, OSI-only, or dual. The topological restrictions
+ specified in section 1.4 ensure that IP packets will only be sent via
+ IP-capable routers, and OSI packets will only be sent via OSI-capable
+ routers.
+
+ The Integrated IS-IS prefers routes within the area (via level 1
+ routing) whenever possible. If level 2 routes must be used, then
+ routes within the routing domain (specifically, those routes using
+ internal metrics) are prefered to routes outside of the routing
+ domain (using external metrics).
+
+ The Integrated IS-IS protocol makes use of "best match" routing of IP
+ packets. This implies that a particular destination address may match
+ more than one entry in the forwarding database. If a particular IP
+ packet has a destination address which matches two different IP
+ reachability entries, then the entry who's mask contains the most "1"
+ bits is preferred.
+
+ IP packets whose destination is a router are routed the same way as
+ any other IP packet, by forwarding first to the appropriate subnet,
+ and then forwarding on that subnet to the destination host (which
+ just happens to be a router in this case). In particular, the IP
+ forwarding database does not contain explicit routes to the
+ individual "IP interface addresses" listed by each router in its LSP.
+
+ However, host routes (routes with a subnet mask of all ones) may of
+ course be included in the IP reachability entries, and will be
+ handled in the same manner as other IP reachability entries.
+
+ In order to ensure correct interoperation of different router
+ implementations, it is necessary to specify the order of preference
+
+
+
+Callon [Page 26]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ of possible routes. For OSI destinations, this is outside of the
+ scope of this report. For IP destinations, this is specified in
+ section 3.10.1 and 3.10.2 below. Annex C specifies a detailed
+ Dijkstra calculation and forwarding algorithm which is compatible
+ with the order of preference of routes specified here.
+
+ With IS-IS, if a route to a given destination is advertised, or a
+ link between routers is advertised, then metric values associated
+ with some or all of the specified TOS metric types may be associated
+ with that destination or link. However, the default metric must
+ always be available. Normally this ensures that if a route using any
+ TOS metric is available, then a route using the default metric will
+ also be available. The only exception to this is where the
+ corresponding route using the default metric has a total cost (within
+ the area, or within the level 2 backbone) greater than MaxPathMetric.
+
+ In determining the route to a particular destination for a specified
+ TOS, only routes using either the requested TOS metric, or the
+ default TOS metric, are considered.
+
+3.10.1 Order of Preference of Routes In Level 1 Routing
+
+ If a given destination is reachable within an area via a route using
+ either the requested TOS or the default TOS, then the IS-IS will
+ always make use of a path within the area (via level 1 routing),
+ regardless of whether an alternate path exists outside of the area
+ (via level 2 routing). In this case, routes within the area are
+ selected as follows:
+
+ 1) Amongst routes in the area, if the specified destination
+ address matches more than one [IP address, subnet mask] pair,
+ then the more specific address match (the one with more "1"
+ bits in the mask) is prefered.
+
+ 2) Amongst routes in the area to equally specific address
+ matches, routes on which the requested TOS (if any) is
+ supported are always prefered to routes on which the
+ requested TOS is not supported.
+
+ 3) Amongst routes in the area of the same TOS to equally
+ specific address matches, the shortest routes are prefered.
+ For determination of the shortest path, if a route on which
+ the specified TOS is supported is available, then the
+ specified TOS metric is used, otherwise the default metric
+ is used. Amongst routes of equal cost, load splitting may
+ be performed as specified in [1].
+
+ For a level 1 only router (i.e., a router which does not take part in
+
+
+
+Callon [Page 27]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ level 2 routing, or a level 2 router which is not "attached"), if a
+ given destination is not reachable within an area, level 1 routing
+ will always route to a level 2 router as follows:
+
+ 1) Amongst routes in the area to attached level 2 routers,
+ routes on which the requested TOS (if any) is supported
+ are always prefered to routes on which the requested TOS
+ is not supported.
+
+ 2) Amongst routes in the area of the same TOS to attached
+ level 2 routers, the shortest routes are prefered. For
+ determination of the shortest path, if a route on which
+ the specified TOS is supported is available, then the
+ specified TOS metric is used, otherwise the default
+ metric is used. Amongst routes of equal cost,
+ loadsplitting may be performed as specified in [1].
+
+3.10.2 Order of Preference of Routes in Level 2 Routing
+
+ For those level 2 routers which also take part in level 1 routing,
+ routes learned via level 1 routing, using either the requested TOS or
+ the default TOS, are always prefered to routes learned through level
+ 2 routing. For destinations which are not reachable via level 1
+ routing, or for level 2 only routers (routers which do not take part
+ in level 1 routing), then level 2 routes are selected as follows:
+
+ 1) Routes using internal metrics only are always preferred
+ to routes using external metrics.
+
+ 2) If a route using internal metrics only is available:
+
+ a) If the specified destination address matches more
+ than one [IP address, subnet mask] pair, then the more
+ specific address match (i.e., the largest number of
+ "1"s present in the subnet mask) is prefered.
+
+ b) Amongst routes with equally specific address matches
+ (i.e., an equal number of "1"s present in the subnet
+ mask), routes on which the requested TOS (if any) is
+ supported are always preferred to routes on which the
+ requested TOS is not supported.
+
+ c) Amongst routes of the same TOS with an equally specific
+ address matches, the shortest path is prefered. For
+ determination of the shortest path, if a route on which
+ the specified TOS is supported is available, then the
+ specified TOS metric is used, otherwise the default
+ metric is used. Amongst routes of equal cost,
+
+
+
+Callon [Page 28]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ loadsplitting may be performed as specified in [1].
+
+ NOTE: Internal routes (routes to destinations announced
+ in the "IP Internal Reachability Information" field),
+ and external routes using internal metrics (routes to
+ destinations announced in the "IP External Reachability
+ Information" field, with a metric of type "internal")
+ are treated identically for the purpose of the order of
+ preference of routes, and the Dijkstra calculation.
+
+ 3) If a route using internal metrics only is not available,
+ but a route using external metrics is available:
+
+ a) If the specified destination address matches more than
+ one [IP address, subnet mask] pair, then the more
+ specific address match is prefered.
+
+ NOTE: For external routes, the subnet mask will normally
+ correspond precisely to the network number. This implies
+ that this test will always discover equal length matching
+ strings. However, this test is included to allow future
+ migration to more general handling of external addresses.
+
+ b) Amongst routes with equally specific matches, routes on
+ which the requested TOS (if any) is supported are always
+ preferred to routes on which the requested TOS is not
+ supported. NOTE: for external routes, the route is
+ considered to support the requested TOS only if the
+ internal route to the appropriate border router
+ supports the requested TOS, and the external route
+ reported by the border router also supports the
+ requested TOS.
+
+ c) Amongst routes of the same TOS with an equal length
+ matching address string, the shortest path is prefered.
+ For determination of the shortest path:
+
+ (i) Routes with a smaller announced external metric
+ are always prefered.
+
+ (ii) Amongst routes with an equal external metric,
+ routes with a shorter internal metric are prefered.
+ Amongst routes of equal cost, loadsplitting may be
+ performed as specified in [1].
+
+ For level 2 routers which are announcing manually configured summary
+ addresses in their level 2 LSPs, in some cases there will exist IP
+ addresses which match the manually configured addresses, but which do
+
+
+
+Callon [Page 29]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ not match any addresses which are actually reachable via level 1
+ routing in the area. Generally, packets to such addresses are handled
+ according to the following rules:
+
+ 1) If the specified destination is reachable via level 1 routing,
+ then according to the order of preference of routes specified
+ above, the packet will be delivered via level 1 routing.
+
+ 2) If the specified destination is not reachable via level 1 routing,
+ but is reachable via 2 routing, and there are other level 2
+ routers which offer more desireable routes according to the
+ rules specified above (for example a route with a more specific
+ match, or a route with an equally specific match which supports
+ the correct TOS), then level 2 routing will forward the packet
+ according to the more desireable route.
+
+ 3) If the specified destination is not reachable via level 1 routing,
+ and the manually configured summary address advertised by this
+ router (the router which has received the packet and is trying
+ to forward it) represents the most desireable route, then the
+ destination is unreachable and the packet must be discarded.
+
+4 Subnetwork Dependent Functions
+
+4.1 Link Demultiplexing
+
+ Dual routers may receive a combination of OSI packets, and IP
+ packets. It is necessary for the dual routers to be able to clearly
+ and unambiguously distinguish the two protocol suites.
+
+ This problem is not unique to the integrated IS-IS routing protocol.
+ In fact, this problem will occur in any multi-protocol environment.
+ This problem is currently being worked on independently, and is
+ outside of the scope of this specification.
+
+ In general, the link type is a configuration parameter. For example,
+ whether to use PPP, HDLC, or some other point-to-point protocol over
+ a point-to-point link would be configured. For any particular link
+ type, a method must be defined for encapsulation of both OSI and IP
+ packets. Definition of such methods for common link types is outside
+ of the scope of this specification.
+
+ IP packets are encapsulated directly over the underlying link layer
+ service, using the normal method for transmssion of IP packets over
+ each type of link. Similarly OSI packets are encapsulated directly
+ over the underlying link layer service, using the normal method for
+ transmission of OSI packets over each type of link. Finally, note
+ that IS-IS packets are encapsulated using the normal method for
+
+
+
+Callon [Page 30]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ transmission of OSI packets over any particular link type. This
+ implies that all IS-IS routers, including IP-only routers, must be
+ able to receive IS-IS packets using the normal encapsulation for OSI
+ packets.
+
+4.2 Multiple IP Addresses per Interface
+
+ The integrated IS-IS allows each router to have multiple IP addresses
+ for each physical interface, up to the maximum number which may be
+ contained in a single "IP Interface Address" field (i.e., up to a
+ maximum of 63 addresses per interface). For example, where there are
+ two logical subnets on the same LAN, the interface may have two IP
+ addresses, one corresponding to each logical subnet. Each IS-IS Hello
+ packet contains a list of IP addresses associated with the physical
+ interface over which the Hello is transmitted.
+
+ It is permissible to implement routers which conform to the
+ Integrated IS-IS specification which restrict the number of IP
+ addresses per interface. However, IP-capable routers must be able to
+ interact correctly with other routers which assign multiple IP
+ addresses per physical interface (up to the maximum of 63 addresses
+ per interface).
+
+ Where appropriate (for example, in some cases on point-to-point
+ links), some interfaces may have no IP addresses assigned. In this
+ case, the IS-IS Hello transmitted on that interface may omit the IP
+ Interface Address field, or may include the IP Interface Address
+ field with zero entries.
+
+4.3 LANs, Designated Routers, and Pseudonodes
+
+ The maintenance of designated routers and pseudonodes is specified in
+ [1], and is not changed by this proposal. In the case that IP-only
+ and dual routers (or OSI-only and dual routers) are mixed on the same
+ LAN in a pure IP area (or a pure OSI area, respectively), any router
+ on the LAN may be elected designated router.
+
+ However, there is a fundamental difference in the way that OSI and
+ TCP/IP deal with LANs, and other broadcast subnetworks.
+
+ With OSI, the use of the ES-IS protocol (ISO 9542) allows the end
+ systems and routers to automatically determine their connectivity,
+ thereby allowing all end systems on the LAN to potentially route via
+ any of the routers on the LAN.
+
+ In contract, TCP/IP explictly assigns subnet identifiers to each
+ local area network. In some cases, a single physical LAN could have
+ multiple subnet identifiers assigned to it. In this case, end systems
+
+
+
+Callon [Page 31]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ (hosts) which have an address on one logical subnet are explicitly
+ precluded from sending IP packets directly to a router whose address
+ places it on a different logical subnet. Each router is manually
+ configured to know which subnets it can reach on each interface. In
+ the case that there are multiple logical subnets on the same LAN,
+ each router can only exchange IP packets with those end systems which
+ are on the same logical subnet. This implies that it is not
+ sufficient for the pseudonode LSP to announce all subnets on the LAN
+ (i.e., all [IP address, subnet mask] pairs reachable on the LAN).
+
+ It is therefore necessary for each router to announce in its LSPs
+ those subnets which it can reach on each interface, including
+ interfaces to broadcast subnetworks such as LANs. The pseudonode LSP
+ does not specify the IP addresses which are reachable on the LAN
+ (i.e., does not contain the the IP reachability field).
+
+ As specified elsewhere (see the forthcoming update to the
+ "Requirements of IP Gateways" [4]), routers may send ICMP redirects
+ only if: (i) the IP packet is being forwarded over the same physical
+ interface over which it arrived; and (ii) the source address of the
+ forwarded IP packet, the IP address of this router's interface (as
+ indicated by the source address of the ICMP redirect), and the IP
+ address of the router to which the packet is being redirected (again,
+ as indicated in the ICMP redirect) are all on the same IP subnet.
+
+4.4 Maintaining Router Adjacencies
+
+ The IS-IS determines whether an adjacency is to be established
+ between two routers using means which are independent of the IP
+ interface addresses of the routers. Where multiple logical subnets
+ occur on the same physical LAN, this potentially allows adjacencies
+ to be brought up between two routers which share physical
+ connectivity to each other, but which don't have a logical subnet in
+ common. IP-capable IS-IS routers therefore must be able to forward IP
+ packets over existing adjacencies to routers with which they share
+ physical connectivity, even when the IP address of the adjacent
+ interface of the neighboring router is on a different logical IP
+ subnet.
+
+ For point-to-point links, IS-IS requires exchange of ISO 9542 ISHs,
+ as the first step in establishing the link between routers. All IS-IS
+ routers are therefore required to transmit and receive ISO 9542 ISH
+ packets on point-to-point links.
+
+ The "protocols supported" field (defined in section 5 below) must be
+ present in all IS-IS Hello packets sent by dual and IP-only routers.
+ If this field is missing, then it is assumed that the packet was
+ transmitted by an OSI-only router. Similarly, those 9542 ISHs sent
+
+
+
+Callon [Page 32]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ over point-to-point links, where there is (or may be) another IS-IS
+ router at the other end of the point-to-point link, must also
+ contains the "protocols supported" field. Note that if this field is
+ mistakenly sent in a 9542 ISH where there is an ordinary OSI-only End
+ System at the other end of the link, then (in accordance to ISO 9542)
+ the End System is required to ignore the field and interpret the ISH
+ correctly. It is therefore safe to always include this field in ISHs
+ sent over point-to-point links.
+
+ Dual routers must operate in a dual fashion on every link in the
+ routing domain over which they are running IS-IS. Thus, the value of
+ the "protocols supported" field must be identical on every link
+ (i.e., for any one router running IS-IS, all of the Hellos and LSPs
+ transmitted by it must contain the same "protocols supported"
+ values).
+
+4.5 Forwarding to Incompatible Routers
+
+ There may be times when a dual router has to forward an IP packet to
+ an OSI-only router, or forward an OSI packet to an IP-only router. In
+ this case the packet must be discarded. An error report may be
+ transmitted, in accordance with the IP or ISO 8473 specification
+ (respectively). The reason for discard specified in the error report
+ should specify "destination host unreachable" (for IP), or
+ "destination unreachable" (for OSI).
+
+ Similarly, due to errors, in some cases an IP-only router may have to
+ forward an IP packet to an OSI-only router. Again, the packet must be
+ discarded, as specified above. This may only occur if IP-only and
+ OSI-only routers occur in the same area, which is a configuration
+ error.
+
+5 Structure and Encoding of PDUs
+
+ This clause describes the additional packet fields for use of the ISO
+ IS-IS Intra-Domain Routing protocol in pure IP and dual environments.
+ Specifically, the same packet types are used as in IS-IS [1], and all
+ fixed fields remain the same. Additional variable length fields are
+ defined in this section.
+
+5.1 Overview of IS-IS PDUs
+
+ The packets used in IS-IS routing protocol fall into three main
+ classes: (i) Hello Packets; (ii) Link State Packets (LSPs); and (iii)
+ Sequence Number Packets (SNPs).
+
+ Hello packets are used to initialize and maintain adjacencies between
+ neighboring routers. There are three types of IS-IS Hello packets:
+
+
+
+Callon [Page 33]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ (i) "Level 1 LAN IS to IS Hello PDUs" are used by level 1 routers on
+ broadcast LANs. (ii) "Level 2 LAN IS to IS Hello PDUs" are used by
+ level 2 routers on broadcast LANs. (iii) "Point-to-Point IS to IS
+ Hello PDUs" are used on non-broadcast media, such as point-to-point
+ links, or general topology subnetworks.
+
+ On point-to-point links, the exchange of ISO 9542 ISHs (intermediate
+ system Hellos) is used to initialize the link, and to allow each
+ router to know if there is a router on the other end of the link,
+ before IS-IS Hellos are exchanged. All routers implementing IS-IS
+ (whether IP-only, OSI-only, or dual), if they have any interfaces on
+ point-to-point links, must therefore be able to transmit ISO 9542
+ ISHs on their point-to-point links.
+
+ Link State Packets (LSPs) are used to exchange link state
+ information. There are two types of LSPs: (i) "Level 1 Link State
+ PDUs" are transmitted by level 1 routers. (ii) "Level 2 Link State
+ PDUs" are transmitted by level 2 routers. Note that level 2 routers
+ will, in most cases, also be level 1 routers, and will therefore
+ transmit both sorts of LSPs.
+
+ Sequence number PDUs are used to ensure that neighboring routers have
+ the same notion of what is the most recent LSP from each other
+ router. The sequence number PDUs therefore serve a similar function
+ to acknowledgement packets, but allow more efficient operation. There
+ are four types of sequence number packets: (i) "Level 1 Complete
+ Sequence Numbers PDU"; (ii) "Level 2 Complete Sequence Numbers PDU";
+ (iii) "Level 1 Partial Sequence Numbers PDU"; and (iv) "Level 2
+ Partial Sequence Numbers PDU". A partial sequence number packet lists
+ the most recent sequence number of one or more LSPs, and operates
+ much like an acknowlegement. A partial sequence number packet differs
+ from an conventional acknowledgement in the sense that it may
+ acknowlege multiple LSPs at once, and in the sense that it may act as
+ a request for information. A complete sequence number packet contains
+ the most recent sequence number of all LSPs in the database. A
+ complete sequence number packet may therefore be used to ensure
+ synchronization of the database between adjacent routers either
+ periodically, or when a link first comes up.
+
+5.2 Overview of IP-Specific Information for IS-IS
+
+ There are six new fields defined for the Integrated IS-IS: (i)
+ "Protocols Supported"; (ii) "IP Interface Address"; (iii)
+ "Authentication Information"; (iv) "IP Internal Reachability
+ Information"; (v) "IP External Reachability Information"; and (vi)
+ "Inter-Domain Routing Protocol Information".
+
+ The "Protocols Supported" field identifies the protocols which are
+
+
+
+Callon [Page 34]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ supported by each router. This field must be included in all IS-IS
+ Hello packets and all LSPs with LSP number 0 transmitted by IP-
+ capable routers. If this field is not included in an IS-IS Hello
+ packet or an LSP with LSP number 0, it may be assumed that the packet
+ was transmitted by an OSI-only router. The "Protocols Supported"
+ field must also be included in ISO 9542 ISHs send by IP-capable
+ routers over point-to-point links to other IS-IS routers.
+
+ The "IP Interface Address" is included in all IS-IS Hello packets and
+ LSPs transmitted by IP-only and dual routers. In the Hello packets,
+ this field occurs once only, and contains the IP address(es) of the
+ interface on which the Hello packet is transmitted (up to a maximum
+ of 63 IP addresses on each interface). If an IS-IS Hello is
+ transmitted over an interface which does not have an IP address
+ assigned, then this field may be omitted, or may be included with
+ zero entries. In Link State Packets, this field contains a list of
+ one or more IP addresses corresponding to one or more interfaces of
+ the router which originates the LSP. Each IP-capable router must
+ include this field in its LSPs. This field may occur multiple times
+ in an LSP, and may occur in an LSP with any LSP number.
+
+ The "Authentication Information" field is optional in all IS-IS PDUs.
+ If used, it contains information used to authenticate the packet. All
+ IS-IS packets (including 9542 IS Hellos) may be authenticated by use
+ of this field.
+
+ The "IP Internal Reachability Information" field may be present in
+ all LSPs transmitted by IP-capable routers. If present, it identifies
+ a list of zero or more [IP address, subnet mask, metrics] reachable
+ by the router which originates the LSP. Each entry must contain a
+ default metric, and may contain delay, expense, and error metrics. If
+ an IP-capable router does not directly reach any IP addresses, then
+ it may omit this field, or may include the field with zero [IP
+ address, subnet mask, metrics] entries. If included in level 1 LSPs,
+ this field includes only entries directly reachable by the router
+ which originates the LSP, via one of its interfaces. If included in
+ level 2 LSPs, this field includes only entries reachable by the
+ router which originates the LSP, either via one of its interfaces, or
+ indirectly via level 1 routing. This field may occur multiple times
+ in an LSP, and may occur in an LSP with any LSP number.
+
+ The "IP External Reachability Information" field may be present in
+ level 2 LSPs transmitted by level 2 IP-capable routers. If present,
+ it identifies a list of zero or more [IP address, subnet mask,
+ metrics] entries reachable by the router which originates the level 2
+ LSP. Each entry must contain a default metric, and may contain delay,
+ expense, and error metrics. Each entry may contain metrics of type
+ "internal", or of type "external". If a level 2 router does not have
+
+
+
+Callon [Page 35]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ any external routes (via neighboring routers in other routing
+ domains), when it may omit this field, or may include the field with
+ zero entries. This field includes only entries reachable by the
+ router which originates the LSP, via a direct link to an external
+ router. This field may occur multiple times in a level 2 LSP, and may
+ occur in an LSP with any LSP number.
+
+ The "Inter-Domain Routing Protocol Information" field may be present
+ in level 2 LSPs transmitted by level 2 IP-capable routers. This field
+ is transmitted for the convenience of the external routing protocol,
+ and is not used by the IS-IS. For example, this may be used to allow
+ border routers to find each other. This field may occur multiple
+ times in a level 2 LSP, and may occur in an LSP with any LSP number.
+
+ The DP 10589 version of the OSI IS-IS does not currently allow
+ addition of TLV-encoded variable length fields to Sequence Number
+ Packets. However, this is being corrected in future versions of
+ 10589. In addition, this is expected to be the only correction to
+ future versions of 10589 that is not backward-compatible with the DP
+ version. The Integrated IS-IS therefore makes use of a corrected
+ version of DP 10589, such that the encoding of SNPs has been fixed.
+ The correct encoding of sequence number packets (as is expected to
+ appear in future versions of ISO 10589) is given in Annex B of this
+ specification.
+
+ All IP-specific information is encoded in IS-IS packets as variable
+ length fields. All variable length fields in IS-IS are encoded as
+ follows:
+
+ No. of Octets
+ +---------------------------+
+ | CODE | 1
+ +---------------------------+
+ | LENGTH | 1
+ +---------------------------+
+ | VALUE | LENGTH
+ +---------------------------+
+
+ Figure 3 - Encoding of Variable Length Fields
+
+ Any codes in a received PDU that are not recognised shall be ignored
+ and, for those packets which are forwarded (specifically Link State
+ Packets), passed on unchanged.
+
+ In general, an IS-IS PDU may contain multiple variable length fields,
+ some of which contain OSI-specific information (specified in [1]) and
+ some of which contain IP-specific information (specified below).
+ Except where explicitly stated otherwise, these variable length
+
+
+
+Callon [Page 36]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ fields may occur in any order.
+
+5.3 Encoding of IP-Specific Fields in IS-IS PDUs
+
+ This section specifies the detailed encoding of all IP-specific
+ fields in IS-IS PDUs. Where a particular field may be present in more
+ than one type of PDU, the field is repeated for each type of PDU to
+ which it applies.
+
+ Bit and octet numbering is the same as in [1]. In particular, octets
+ in a PDU are numbered starting from 1, in increasing order. Bits in
+ an octet are numbered from 1 to 8, where bit 1 is the least
+ significant bit and is pictured on the right. When consecutive octets
+ are used to represent a number, the lower octet number has the most
+ significant value.
+
+5.3.1 Level 1 LAN IS to IS Hello PDU
+
+- Additional codes for IP support are:
+
+ 7 Protocols Supported -- the set Network Layer Protocol Identifiers
+ for Network Layer protocols that this Intermediate System is
+ capable of relaying
+
+ x CODE - 129
+
+ x LENGTH - total length of the value field (one octet per
+ protocol supported).
+
+ x VALUE - one octet NLPID (as assigned by ISO/TR 9577) for
+ each supported data protocol.
+ No. of Octets
+ +---------------------------+
+ | NLPID | 1
+ +---------------------------+
+ : :
+ : :
+ |---------------------------|
+ | NLPID | 1
+ +---------------------------+
+ NLPID - ISO/TR 9577 registered Network Layer Protocol Identifier.
+
+ 7 IP Interface Address -- the IP address(es) of the interface
+ corresponding to the SNPA over which this PDU is to be transmitted.
+
+ x CODE - 132
+
+ x LENGTH - total length of the value field (four octets per address).
+
+
+
+Callon [Page 37]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ x VALUE -
+ No. of Octets
+ +----------------------------+
+ | IP ADDRESS | 4
+ +----------------------------+
+ : :
+ : :
+ +----------------------------+
+ | IP ADDRESS | 4
+ +----------------------------+
+ IP ADDRESS - 4 octet IP Address of the Interface.
+
+ 7 Authentication Information -- Information used to authenticate the
+ PDU
+
+ x CODE - 133
+
+ x LENGTH - total length of the value field.
+
+ x VALUE - TBD.
+
+5.3.2 Level 2 LAN IS to IS Hello PDU
+
+- Additional codes for IP support are:
+
+ 7 Protocols Supported -- the set Network Layer Protocol Identifiers
+ for Network Layer protocols that this Intermediate System is
+ capable of relaying
+
+ x CODE - 129
+
+ x LENGTH - total length of the value field (one octet per protocol
+ supported).
+
+ x VALUE - one octet NLPID (as assigned by ISO/TR 9577) for each
+ supported data protocol.
+ No. of Octets
+ +----------------------------+
+ | NLPID | 1
+ +----------------------------+
+ : :
+ : :
+ +----------------------------+
+ | NLPID | 1
+ +----------------------------+
+ NLPID - ISO/TR 9577 registered Network Layer Protocol Identifier.
+
+ 7 IP Interface Address -- The IP address(es) of the interface
+
+
+
+Callon [Page 38]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ corresponding to the SNPA over which this PDU is to be transmitted.
+
+ x CODE - 132
+
+ x LENGTH - total length of the value field (four octets per address).
+
+ x VALUE -
+ No. of Octets
+ +----------------------------+
+ | IP ADDRESS | 4
+ +----------------------------+
+ : :
+ : :
+ +----------------------------+
+ | IP ADDRESS | 4
+ +----------------------------+
+ IP ADDRESS - 4 octet IP Address of the Interface.
+
+ 7 Authentication Information -- Information used to authenticate
+ the PDU
+
+ x CODE - 133
+
+ x LENGTH - total length of the value field
+
+ x VALUE - TBD
+
+5.3.3 Point-to-Point IS to IS Hello PDU
+
+- Additional codes for IP support are:
+
+ 7 Protocols Supported -- the set Network Layer Protocol Identifiers
+ for Network Layer protocols that this Intermediate System is
+ capable of relaying
+
+ x CODE - 129
+
+ x LENGTH - total length of the value field (one octet per protocol
+ supported).
+
+ x VALUE - one octet NLPID (as assigned by ISO/TR 9577) for each
+ supported data protocol.
+
+
+
+
+
+
+
+
+
+Callon [Page 39]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ No. of Octets
+ +----------------------------+
+ | NLPID | 1
+ +----------------------------+
+ : :
+ : :
+ +----------------------------+
+ | NLPID | 1
+ +----------------------------+
+ NLPID - ISO/TR 9577 registered Network Layer Protocol Identifier.
+
+ 7 IP Interface Address -- The IP address(es) of the interface
+ corresponding to the SNPA over which this PDU is to be transmitted.
+
+ x CODE - 132
+
+ x LENGTH - total length of the value field (four octets per address).
+
+ x VALUE -
+ No. of Octets
+ +----------------------------+
+ | IP ADDRESS | 4
+ +----------------------------+
+ : :
+ : :
+ +----------------------------+
+ | IP ADDRESS | 4
+ +----------------------------+
+ IP ADDRESS - 4 octet IP Address of the Interface.
+
+ 7 Authentication Information -- Information used to authenticate
+ the PDU
+
+ x CODE - 133
+
+ x LENGTH - total length of the value field
+
+ x VALUE - TBD
+
+5.3.4 Level 1 Link State PDU
+
+- Additional codes for IP support are:
+
+ 7 Protocols Supported -- the set Network Layer Protocol Identifiers
+ for Network Layer protocols that this Intermediate System is
+ capable of relaying.
+
+ This must appear once in LSP number 0.
+
+
+
+Callon [Page 40]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ x CODE - 129
+
+ x LENGTH - total length of the value field (one octet per protocol
+ supported).
+
+ x VALUE - one octet NLPID (as assigned by ISO/TR 9577) for each
+ supported data protocol.
+ No. of Octets
+ +----------------------------+
+ | NLPID | 1
+ +----------------------------+
+ : :
+ : :
+ +----------------------------+
+ | NLPID | 1
+ +----------------------------+
+ NLPID - ISO/TR 9577 registered Network Layer Protocol Identifier.
+
+ 7 IP Interface Addresses -- The IP addresss of one or more interfaces
+ corresponding to the SNPAs enabled on this Intermediate system
+ (i.e., one or more IP addresses of this router).
+
+ This is permitted to appear multiple times, and in an LSP with
+ any LSP number.
+
+ x CODE - 132
+
+ x LENGTH - total length of the value field (four octets per address).
+
+ x VALUE -
+ No. of Octets
+ +----------------------------+
+ | IP ADDRESS | 4
+ +----------------------------+
+ : :
+ : :
+ +----------------------------+
+ | IP ADDRESS | 4
+ +----------------------------+
+ IP ADDRESS - 4 octet IP Address
+
+ 7 Authentication Information -- Information used to authenticate
+ the PDU
+
+ x CODE - 133
+
+ x LENGTH - total length of the value field
+
+
+
+
+Callon [Page 41]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ x VALUE - TBD
+
+ 7 IP Internal Reachability Information -- IP addresses within the
+ routing domain reachable directly via one or more interfaces on
+ this Intermediate system.
+
+ This is permitted to appear multiple times, and in an LSP with any
+ LSP number. However, this field must not appear in pseudonode LSPs.
+
+ x CODE - 128.
+
+ x LENGTH - a multiple of 12.
+
+ x VALUE -
+ No. of Octets
+ +----------------------------+
+ | 0 |I/E| DEFAULT METRIC | 1
+ +----------------------------+
+ | S | R | DELAY METRIC | 1
+ +----------------------------+
+ | S | R | EXPENSE METRIC | 1
+ +----------------------------+
+ | S | R | ERROR METRIC | 1
+ +----------------------------+
+ | IP ADDRESS | 4
+ +----------------------------+
+ | SUBNET MASK | 4
+ +----------------------------+
+ : :
+ : :
+ +----------------------------+
+ | 0 |I/E| DEFAULT METRIC | 1
+ +----------------------------+
+ | S | R | DELAY METRIC | 1
+ +----------------------------+
+ | S | R | EXPENSE METRIC | 1
+ +----------------------------+
+ | S | R | ERROR METRIC | 1
+ +----------------------------+
+ | IP ADDRESS | 4
+ +----------------------------+
+ | SUBNET MASK | 4
+ +----------------------------+
+
+ DEFAULT METRIC is the value of the default metric for the link
+ to the listed neighbor. Bit 8 of this field is reserved, and
+ must be set to zero on tranmission and ignored on reception.
+ Bit 7 of this field (marked I/E) indicates the metric type
+
+
+
+Callon [Page 42]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ (internal or external) for all four TOS metrics, and must be
+ set to zero indicating internal metrics.
+
+ DELAY METRIC is the value of the delay metric for the link to the
+ listed neighbor. If this IS does not support this metric it shall
+ set the bit "S" to 1 to indicate that the metric is unsupported.
+ Bit 7 of this field is reserved, and must be set to zero on
+ transmission and ignored on reception.
+
+ EXPENSE METRIC is the value of the expense metric for the link to
+ the listed neighbor. If this IS does not support this metric it
+ shall set the bit "S" to 1 to indicate that the metric is
+ unsupported. Bit 7 of this field is reserved, and must be set to
+ zero on transmission and ignored on reception.
+
+ ERROR METRIC is the value of the error metric for the link to
+ the listed neighbor. If this IS does not support this metric it
+ shall set the bit "S" to 1 to indicate that the metric is
+ unsupported. Bit 7 of this field is reserved, and must be set
+ to zero on transmission and ignored on reception.
+
+ IP ADDRESS is a 4-octet Internet address
+
+ SUBNET MASK is a 4 octet IP subnet mask.
+
+5.3.5 Level 2 Link State PDU
+
+- Additional codes for IP support are:
+
+ 7 Protocols Supported -- the set Network Layer Protocol Identifiers
+ for Network Layer protocols that this Intermediate System is
+ capable of relaying.
+
+ This must appear once in LSP number 0.
+
+ x CODE - 129
+
+ x LENGTH - total length of the value field (one octet per
+ protocol supported).
+
+
+
+
+
+
+
+
+
+
+
+
+Callon [Page 43]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ x VALUE - one octet NLPID (as assigned by ISO/TR 9577) for
+ each supported data protocol.
+ No. of Octets
+ +----------------------------+
+ | NLPID | 1
+ +----------------------------+
+ : :
+ : :
+ +----------------------------+
+ | NLPID | 1
+ +----------------------------+
+ NLPID - ISO/TR 9577 registered Network Layer Protocol Identifier.
+
+ 7 IP Interface Addresses -- The IP addresss of one or more interfaces
+ corresponding to the SNPAs enabled on this Intermediate system
+ (i.e., one or more IP addresses of this router).
+
+ This is permitted to appear multiple times, and in an LSP with
+ any LSP number. Where a router is both a level 1 and level 2 router,
+ it must include the same IP addresses in its level 1 and level 2 LSPs.
+
+ x CODE - 132
+
+ x LENGTH - total length of the value field (four octets per address).
+
+ x VALUE-
+ No. of Octets
+ +----------------------------+
+ | IP ADDRESS | 4
+ +----------------------------+
+ : :
+ : :
+ +----------------------------+
+ | IP ADDRESS | 4
+ +----------------------------+
+ IP ADDRESS - 4 octet IP Address
+
+ 7 Authentication Information -- Information used to authenticate
+ the PDU
+
+ x CODE - 133
+
+ x LENGTH - total length of the value field
+
+ x VALUE - TBD
+
+ 7 IP Internal Reachability Information -- IP addresses within the
+ routing domain reachable directly via one or more interfaces on
+
+
+
+Callon [Page 44]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ this Intermediate system.
+
+ This is permitted to appear multiple times, and in an LSP with
+ any LSP number. However, this field must not appear in pseudonode
+ LSPs.
+
+ x CODE - 128.
+
+ x LENGTH - a multiple of 12.
+
+ x VALUE -
+ No. of Octets
+ +----------------------------+
+ | 0 |I/E| DEFAULT METRIC | 1
+ +----------------------------+
+ | S | R | DELAY METRIC | 1
+ +----------------------------+
+ | S | R | EXPENSE METRIC | 1
+ +----------------------------+
+ | S | R | ERROR METRIC | 1
+ +----------------------------+
+ | IP ADDRESS | 4
+ +----------------------------+
+ | SUBNET MASK | 4
+ +----------------------------+
+ : :
+ : :
+ +----------------------------+
+ | 0 |I/E| DEFAULT METRIC | 1
+ +----------------------------+
+ | S | R | DELAY METRIC | 1
+ +----------------------------+
+ | S | R | EXPENSE METRIC | 1
+ +----------------------------+
+ | S | R | ERROR METRIC | 1
+ +----------------------------+
+ | IP ADDRESS | 4
+ +----------------------------+
+ | SUBNET MASK | 4
+ +----------------------------+
+
+ DEFAULT METRIC is the value of the default metric for the link
+ to the listed neighbor. Bit 8 of this field is reserved, and must
+ be set to zero on transmission and ignored on reception. Bit 7
+ of this field indicates the metric type (internal or external)
+ for all four TOS metrics, and must be set to zero indicating
+ internal metrics.
+
+
+
+
+Callon [Page 45]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ DELAY METRIC is the value of the delay metric for the link to
+ the listed neighbor. If this IS does not support this metric it
+ shall set the bit "S" to 1 to indicate that the metric is
+ unsupported. Bit 7 of this field is reserved, and must be set
+ to zero on transmission and ignored on reception.
+
+ EXPENSE METRIC is the value of the expense metric for the link to
+ the listed neighbor. If this IS does not support this metric it
+ shall set the bit "S" to 1 to indicate that the metric is
+ unsupported. Bit 7 of this field is reserved, and must be set
+ to zero on transmission and ignored on reception.
+
+ ERROR METRIC is the value of the error metric for the link to the
+ listed neighbor. If this IS does not support this metric it shall
+ set the bit "S" to 1 to indicate that the metric is unsupported.
+ Bit 7 of this field is reserved, and must be set to zero on
+ transmission and ignored on reception.
+
+ IP ADDRESS is a 4-octet Internet address
+
+ SUBNET MASK is a 4 octet IP subnet mask.
+
+ 7 IP External Reachability Information -- IP addresses outside the
+ routing domain reachable via interfaces on this Intermediate
+ system.
+
+ This is permitted to appear multiple times, and in an LSP with
+ any LSP number. However, this field must not appear in pseudonode LSPs.
+
+ x CODE - 130.
+
+ x LENGTH - a multiple of 12.
+
+ x VALUE -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Callon [Page 46]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ No. of Octets
+ +----------------------------+
+ | 0 |I/E| DEFAULT METRIC | 1
+ +----------------------------+
+ | S | R | DELAY METRIC | 1
+ +----------------------------+
+ | S | R | EXPENSE METRIC | 1
+ +----------------------------+
+ | S | R | ERROR METRIC | 1
+ +----------------------------+
+ | IP ADDRESS | 4
+ +----------------------------+
+ | SUBNET MASK | 4
+ +----------------------------+
+ : :
+ : :
+ +----------------------------+
+ | 0 |I/E| DEFAULT METRIC | 1
+ +----------------------------+
+ | S | R | DELAY METRIC | 1
+ +----------------------------+
+ | S | R | EXPENSE METRIC | 1
+ +----------------------------+
+ | S | R | ERROR METRIC | 1
+ +----------------------------+
+ | IP ADDRESS | 4
+ +----------------------------+
+ | SUBNET MASK | 4
+ +----------------------------+
+
+ DEFAULT METRIC is the value of the default metric for the
+ path to the listed IP addresses. Bit 8 of this field is
+ reserved, and must be set to zero on transmission and ignored
+ on reception. Bit 7 of this field indicates the metric type
+ (internal or external) for all four TOS metrics, and may be
+ set to zero indicating internal metrics, or may be set to 1
+ indicating external metrics.
+
+ DELAY METRIC is the value of the delay metric for the path
+ to the listed IP addresses. If this IS does not support this
+ metric it shall set the bit "S" to 1 to indicate that the metric
+ is unsupported. Bit 7 of this field is reserved, and must be
+ set to zero on transmission and ignored on reception.
+
+ EXPENSE METRIC is the value of the expense metric for the link
+ to the listed IP addresses. If this IS does not support this
+ metric it shall set the bit "S" to 1 to indicate that the metric
+ is unsupported. Bit 7 of this field is reserved, and must be
+
+
+
+Callon [Page 47]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ set to zero on transmission and ignored on reception.
+
+ ERROR METRIC is the value of the error metric for the link to
+ the listed IP addresses. If this IS does not support this metric
+ it shall set the bit "S" to 1 to indicate that the metric is
+ unsupported. Bit 7 of this field is reserved, and must be set to
+ zero on transmission and ignored on reception.
+
+ IP ADDRESS is a 4-octet Internet address
+
+ SUBNET MASK is a 4 octet IP subnet mask
+
+ 7 Inter-Domain Routing Protocol Information -- Inter-domain routing
+ protocol information carried transparently through level 2 for
+ the convenience of any Inter-Domain protocol that may be running
+ in the boundary ISs.
+
+ This is permitted to appear multiple times, and in an LSP with
+ any LSP number.
+
+ x CODE - 131.
+
+ x LENGTH - total length of the value field
+
+ x VALUE -
+ No. of Octets
+ +-------------------------------+
+ | Inter-Domain Information Type | 1
+ +-------------------------------+
+ | External Information | VARIABLE
+ +-------------------------------+
+
+ INTER-DOMAIN INFORMATION TYPE indicates the type of the
+ external information which is encoded in the field.
+
+ EXTERNAL INFORMATION contains inter-domain routing protocol
+ information, and is passed transparently by the IS-IS protocol.
+
+5.3.6 Level 1 Complete Sequence Numbers PDU
+
+- Additional codes for IP support are:
+
+ 7 Authentication Information -- Information used to authenticate
+ the PDU
+
+ x CODE - 133
+
+ x LENGTH - total length of the value field
+
+
+
+Callon [Page 48]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ x VALUE - TBD
+
+5.3.7 Level 2 Complete Sequence Numbers PDU
+
+- Additional codes for IP support are:
+
+ 7 Authentication Information -- Information used to authenticate
+ the PDU
+
+ x CODE - 133
+
+ x LENGTH - total length of the value field
+
+ x VALUE - TBD
+
+5.3.8 Level 1 Partial Sequence Numbers PDU
+
+- Additional codes for IP support are:
+
+ 7 Authentication Information -- Information used to authenticate
+ the PDU
+
+ x CODE - 133
+
+ x LENGTH - total length of the value field
+
+ x VALUE - TBD
+
+5.3.9 Level 2 Partial Sequence Numbers PDU
+
+- Additional codes for IP support are:
+
+ 7 Authentication Information -- Information used to authenticate
+ the PDU
+
+ x CODE - 133
+
+ x LENGTH - total length of the value field
+
+ x VALUE - TBD
+
+5.3.10 ISO 9542 ISH PDU
+
+- Additional codes for IP support are:
+
+ 7 Protocols Supported -- the set Network Layer Protocol Identifiers
+ for Network Layer protocols that this Intermediate System is
+ capable of relaying.
+
+
+
+Callon [Page 49]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ This appears in ISO 9542 ISH PDUs transmitted on point-to-point
+ links.
+
+ x CODE - 129
+
+ x LENGTH - total length of the value field (one octet per
+ protocol supported).
+
+ x VALUE - one octet NLPID (as assigned by ISO/TR 9577) for
+ each supported data protocol.
+ No. of Octets
+ +----------------------------+
+ | NLPID | 1
+ +----------------------------+
+ : :
+ : :
+ +----------------------------+
+ | NLPID | 1
+ +----------------------------+
+ NLPID - ISO/TR 9577 registered Network Layer Protocol Identifier.
+
+ 7 Authentication Information -- Information used to authenticate
+ the PDU
+
+ x CODE - 133
+
+ x LENGTH - total length of the value field
+
+ x VALUE - TBD
+
+6 Security Considerations
+
+ The integrated IS-IS has a provision for carrying authentication
+ information in all IS-IS packets. This is extensible to multiple
+ authentication mechanisms. However, currently the only defined
+ mechanism is a simple password, transmitted in the clear without
+ encryption (see Annex D). The use of a simple password does not
+ provide useful protection against intentional misbehavior. Rather,
+ this should be thought of as a weak protection against accidental
+ errors such as accidental mis-configuration. Definition of other
+ authentication mechanisms is beyond the scope of this document.
+
+ Other aspects of security are not discussed in this document.
+
+
+
+
+
+
+
+
+Callon [Page 50]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+7 Author's Address
+
+ Ross Callon
+ Digital Equipment Corporation
+ 550 King Street, LKG 1-2/A19
+ Littleton, MA 01460-1289
+ 508-486-5009
+
+8 References
+
+[1] "Intermediate System to Intermediate System Intra-Domain
+ Routeing Exchange Protocol for use in Conjunction with the
+ Protocol for Providing the Connectionless-mode Network Service
+ (ISO 8473)", ISO DP 10589, February 1990.
+
+[2] "Protocol for Providing the Connectionless-Mode Network
+ Service", ISO 8473, March 1987.
+
+[3] "End System to Intermediate System Routeing Exchange Protocol
+ for Use in Conjunction with the Protocol for Providing the
+ Connectionless-Mode Network Service (ISO 8473)", ISO 9542,
+ March 1988.
+
+[4] Braden,R., and Postel,J., "Requirements for Internet Gateways",
+ RFC 1009, June 1987.
+
+[5] Moy,J., "The OSPF Specification", RFC 1131, October 1989.
+
+[6] Postel,J., "Internetwork Protocol", RFC 791, September 1981.
+
+[7] Postel,J., "Internet Control Message Protocol", RFC 792,
+ September 1981.
+
+[8] "MIB for Use with the Extended OSI IS-IS in TCP/IP and Dual
+ Environments", forthcoming.
+
+[9] GOSIP Advanced Requirements Group, "Government Open Systems
+ Interconnection Profile (GOSIP) Version 2.0 [Final Text]",
+ Federal Information Processing Standard, U.S. Department of
+ Commerce, National Institute of Standards and Technology,
+ Gaithersburg, MD, October 1990.
+
+[10] "Standard for Local Area Networks and Metropolitan Area
+ Networks: Overview and Architecture of Network Standards",
+ IEEE Standard 802.1a-1990.
+
+
+
+
+
+
+Callon [Page 51]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ Annex A
+ Inter-Domain Routing Protocol Information
+
+ This annex specifies the contents and encoding of the Inter-Domain
+ Routing Protocol Information (IDRPI) field. This annex is an integral
+ part of the Integrated IS-IS specification. However, it is expected
+ that this annex may be augmented or superceded by future efforts
+ outside of the scope of the IS-IS specification.
+
+A.1 Inter-Domain Information Type
+
+ As specified in sections 3.4 and 5.3, the IDRPI field consists of a
+ one-octet inter-domain information type field, plus a variable
+ external information field. This section specifies initial values for
+ the inter-domain information type field. Other values for inter-
+ domain information type will be assigned and maintained in future
+ versions of the "Assigned Numbers" RFC.
+
+ The following types have been assigned:
+
+ Type = 0 reserved
+
+ Type = 1 local (uses routing-domain specific format)
+
+ Type = 2 AS Number Tag
+
+ Type = 1 indicates that the inter-domain routing protocol information
+ uses a format which is local to the routing domain.
+
+ Type = 2 indicates that the inter-domain routing protocol information
+ includes autonomous system information used to tag IP external
+ reachability information. In this case the inter-domain routing
+ protocol information entry must include a single AS number, which is
+ used to tag all subsequent External IP Reachability entries until the
+ end of the LSP, or until the next occurence of the Inter-Domain
+ Routing Protocol Information field.
+
+A.2 Encoding
+
+ As specified in section 5.3.5, the IDPRI entry is encoded as a
+ variable length field, as follows:
+
+ x CODE - 131
+
+ x LENGTH - total length of the value field
+
+ x VALUE -
+
+
+
+
+Callon [Page 52]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ No. of Octets
+ +-------------------------------+
+ | Inter-Domain Information Type | 1
+ +-------------------------------+
+ | External Information | VARIABLE
+ +-------------------------------+
+
+ INTER-DOMAIN INFORMATION TYPE indicates the type of the
+ external information which is encoded in the field.
+
+ EXTERNAL INFORMATION contains inter-domain routing protocol
+ information, and is passed transparently by the IS-IS protocol.
+
+ The Inter-domain information type field indicates the type of
+ information which is contained in the external information field, as
+ follow:
+
+ Type = 0 is reserved (must not be sent, and must be ignored on receipt).
+
+ Type = 1 indicates that the external information field contains
+ information which follows a locally specified format.
+
+ Type = 2 indicates that the external information field contains an
+ autonomous system number tag, to be applied to subsequent IP external
+ reachability information entries. In this case, this "inter-domain
+ routing protocol information" entry must contain precisely one 2
+ octet AS number. The AS tag is associated with subsequent IP External
+ Reachability entries, until the end of the LSP, or until the next
+ occurence of the Inter-Domain Routing Protocol Information field.
+ In this case, the VALUE contains the following:
+
+ x VALUE -
+ No. of Octets
+ +---------------------------------+
+ | Inter-Domain Information Type=2 | 1
+ +---------------------------------+
+ | Autonomous System Number | 2
+ +---------------------------------+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Callon [Page 53]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ Annex B
+ Encoding of Sequence Number Packets
+
+ The Integrated IS-IS protocol defined in this specification makes use
+ of the ISO Draft Proposed standard for Intra-domain routing (ISO DP
+ 10589 [1]) as the base routing protocol, upon which IP support may be
+ added.
+
+ However, DP 10589 contains a bug regarding encoding of the variable
+ length fields in Sequence Number Packets. In particular, DP 10589
+ encodes the variable length fields in SNPs in a manner which is not
+ flexible (additional variable length fields cannot be defined for
+ sequence number packets), and which is inconsistent with the encoding
+ of the variable length fields in all other IS-IS and ES-IS packets.
+
+ The encoding of the variable length fields in SNPs is expected to be
+ fixed in future versions of 10589. Also, this bug represents the only
+ expected change to 10589 which cannot be made backward compatible
+ with existing DP 10589 implementations. For these reasons, the
+ current version of the Integrated IS-IS will use the anticipated
+ future encoding of the variable length part of the SNPs. This should
+ allow future versions of this specification to be compatible with
+ implementations based on this specification.
+
+ This annex specifies the encoding of SNPs, as amended to fix the
+ encoding of variable length fields. This annex is an integral part of
+ the Integrated IS-IS specification.
+
+ The encoding of SNPs for OSI-only use is shown in this section. For
+ IP-only or Integrated use, the additional variable length fields
+ specified in sections 5.3.6 through 5.3.9 are also applicable to
+ SNPs.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Callon [Page 54]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+B.1 Level 1 Complete Sequence Numbers PDU
+
+ No. of Octets
+ +--------------------------------+
+ | INTRA-DOMAIN ROUTEING | 1
+ | PROTOCOL DISCRIMINATOR |
+ +--------------------------------+
+ | LENGTH INDICATOR | 1
+ +--------------------------------+
+ | VERSION/PROTOCOL ID EXT | 1
+ +--------------------------------+
+ | RESERVED | 1
+ +--------------------------------+
+ | R | R | R | TYPE | 1
+ +--------------------------------+
+ | VERSION | 1
+ +--------------------------------+
+ | ECO | 1
+ +--------------------------------+
+ | USER ECO | 1
+ +--------------------------------+
+ | PDU LENGTH | 2
+ +--------------------------------+
+ | SOURCE ID | 7
+ +--------------------------------+
+ | START LSP ID | 8
+ +--------------------------------+
+ | END LSP ID | 8
+ +================================+====================
+ | VARIABLE LENGTH FIELDS | VARIABLE
+ +--------------------------------+
+
+
+- INTRADOMAIN ROUTEING PROTOCOL DISCRIMINATOR - architectural constant
+
+- LENGTH INDICATOR - Header Length in octets (33.)
+
+- VERSION/PROTOCOL ID EXTENSION - 1
+
+- RESERVED - transmitted as 0, ignored on receipt
+
+- TYPE (bits 1 through 5) - 24. Note bits 6, 7 and 8 are Reserved,
+ which means they are transmitted as 0 and ignored on receipt.
+
+- VERSION - 1
+
+- ECO - transmitted as zero, ignored on receipt
+
+
+
+
+Callon [Page 55]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+- USER ECO - transmitted as zero, ignored on receipt
+
+- PDU LENGTH - Entire Length of this PDU, in octets, including header
+
+- SOURCE ID - 7 octet ID of Intermediate System (with zero Circuit ID)
+ generating this Sequence Numbers PDU.
+
+- START LSP ID - 8 octet ID of first LSP in the range covered by this
+ Complete Sequence Numbers PDU.
+
+- END LSP ID - 8 octet ID of last LSP in the range covered by this
+ Complete Sequence Numbers PDU.
+
+- VARIABLE LENGTH FIELDS - fields of the form:
+
+ No. of Octets
+ +--------------------------------+
+ | CODE | 1
+ +--------------------------------+
+ | LENGTH | 1
+ +--------------------------------+
+ | VALUE | LENGTH
+ +--------------------------------+
+
+Any codes in a received CSNP that are not recognised are ignored.
+
+Currently defined codes are:
+
+ 7 LSP Entries -- This may appear multiple times. The option fields,
+ if they appear more than once, shall appear sorted into ascending
+ LSPID order.
+
+ x CODE - 9
+
+ x LENGTH - total length of the value field.
+
+ x VALUE - a list of LSP entries of the form:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Callon [Page 56]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+
+ No. of Octets
+ +--------------------------------+
+ | REMAINING LIFETIME | 2
+ +--------------------------------+
+ | LSP ID | 8
+ +--------------------------------+
+ | LSP SEQ NUMBER | 4
+ +--------------------------------+
+ | CHECKSUM | 2
+ +--------------------------------+
+ : :
+ : :
+ +--------------------------------+
+ | REMAINING LIFETIME | 2
+ +--------------------------------+
+ | LSP ID | 8
+ +--------------------------------+
+ | LSP SEQ NUMBER | 4
+ +--------------------------------+
+ | CHECKSUM | 2
+ +--------------------------------+
+
+7 REMAINING LIFETIME - Remaining Lifetime of LSP.
+
+7 LSP ID - 8 octet ID of the LSP to which this entry refers.
+
+7 LSP SEQ NUMBER - Sequence number of LSP.
+
+7 CHECKSUM - Checksum reported in LSP.
+
+The entries shall be sorted into ascending LSPID order (the LSP
+number octet of the LSPID is the least significant octet).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Callon [Page 57]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+B.2 Level 2 Complete Sequence Numbers PDU
+
+ No. of Octets
+ +--------------------------------+
+ | INTRA-DOMAIN ROUTEING | 1
+ | PROTOCOL DISCRIMINATOR |
+ +--------------------------------+
+ | LENGTH INDICATOR | 1
+ +--------------------------------+
+ | VERSION/PROTOCOL ID EXT | 1
+ +--------------------------------+
+ | RESERVED | 1
+ +--------------------------------+
+ | R | R | R | TYPE | 1
+ +--------------------------------+
+ | VERSION | 1
+ +--------------------------------+
+ | ECO | 1
+ +--------------------------------+
+ | USER ECO | 1
+ +--------------------------------+
+ | PDU LENGTH | 2
+ +--------------------------------+
+ | SOURCE ID | 7
+ +--------------------------------+
+ | START LSP ID | 8
+ +--------------------------------+
+ | END LSP ID | 8
+ +================================+====================
+ | VARIABLE LENGTH FIELDS | VARIABLE
+ +--------------------------------+
+
+
+- INTRADOMAIN ROUTEING PROTOCOL DISCRIMINATOR - architectural constant
+
+- LENGTH INDICATOR - Header Length in octets (33.)
+
+- VERSION/PROTOCOL ID EXTENSION - 1
+
+- RESERVED - transmitted as 0, ignored on receipt
+
+- TYPE (bits 1 through 5) - 25. Note bits 6, 7 and 8 are Reserved,
+ which means they are transmitted as 0 and ignored on receipt.
+
+- VERSION - 1
+
+- ECO - transmitted as zero, ignored on receipt
+
+
+
+
+Callon [Page 58]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+- USER ECO - transmitted as zero, ignored on receipt
+
+- PDU LENGTH - Entire Length of this PDU, in octets, including header
+
+- SOURCE ID - 7 octet ID of Intermediate System (with zero Circuit ID)
+ generating this Sequence Numbers PDU.
+
+- START LSP ID - 8 octet ID of first LSP in the range covered by this
+ Complete Sequence Numbers PDU.
+
+- END LSP ID - 8 octet ID of last LSP in the range covered by this
+ Complete Sequence Numbers PDU.
+
+- VARIABLE LENGTH FIELDS - fields of the form:
+
+ No. of Octets
+ +--------------------------------+
+ | CODE | 1
+ +--------------------------------+
+ | LENGTH | 1
+ +--------------------------------+
+ | VALUE | LENGTH
+ +--------------------------------+
+
+Any codes in a received CSNP that are not recognised are ignored.
+
+Currently defined codes are:
+
+7 LSP Entries -- this may appear multiple times. The option fields,
+ if they appear more than once, shall appear sorted into ascending
+ LSPID order.
+
+ x CODE - 9
+
+ x LENGTH - total length of the value field.
+
+ x VALUE - a list of LSP entries of the form:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Callon [Page 59]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ No. of Octets
+ +--------------------------------+
+ | REMAINING LIFETIME | 2
+ +--------------------------------+
+ | LSP ID | 8
+ +--------------------------------+
+ | LSP SEQ NUMBER | 4
+ +--------------------------------+
+ | CHECKSUM | 2
+ +--------------------------------+
+ : :
+ : :
+ +--------------------------------+
+ | REMAINING LIFETIME | 2
+ +--------------------------------+
+ | LSP ID | 8
+ +--------------------------------+
+ | LSP SEQ NUMBER | 4
+ +--------------------------------+
+ | CHECKSUM | 2
+ +--------------------------------+
+
+7 REMAINING LIFETIME - Remaining Lifetime of LSP.
+
+7 LSP ID - 8 octet ID of the LSP to which this entry refers.
+
+7 LSP SEQ NUMBER - Sequence number of LSP.
+
+7 CHECKSUM - Checksum reported in LSP.
+
+The entries shall be sorted into ascending LSPID order (the LSP
+number octet of the LSPID is the least significant octet).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Callon [Page 60]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+B.3 Level 1 Partial Sequence Numbers PDU
+
+ No. of Octets
+ +--------------------------------+
+ | INTRA-DOMAIN ROUTEING | 1
+ | PROTOCOL DISCRIMINATOR |
+ +--------------------------------+
+ | LENGTH INDICATOR | 1
+ +--------------------------------+
+ | VERSION/PROTOCOL ID EXT | 1
+ +--------------------------------+
+ | RESERVED | 1
+ +--------------------------------+
+ | R | R | R | TYPE | 1
+ +--------------------------------+
+ | VERSION | 1
+ +--------------------------------+
+ | ECO | 1
+ +--------------------------------+
+ | USER ECO | 1
+ +--------------------------------+
+ | PDU LENGTH | 2
+ +--------------------------------+
+ | SOURCE ID | 7
+ +================================+====================
+ | VARIABLE LENGTH FIELDS | VARIABLE
+ +--------------------------------+
+
+- INTRADOMAIN ROUTEING PROTOCOL DISCRIMINATOR - architectural constant
+
+- LENGTH INDICATOR - Header Length in octets (17.)
+
+- VERSION/PROTOCOL ID EXTENSION - 1
+
+- RESERVED - transmitted as 0, ignored on receipt
+
+- TYPE (bits 1 through 5) 26. Note bits 6, 7 and 8 are Reserved,
+ which means they are transmitted as 0 and ignored on receipt.
+
+- VERSION - 1
+
+- ECO - transmitted as zero, ignored on receipt
+
+- USER ECO - transmitted as zero, ignored on receipt
+
+- PDU LENGTH - Entire Length of this PDU, in octets, including header
+
+- SOURCE ID - 7 octet ID of Intermediate system (with zero Circuit ID)
+
+
+
+Callon [Page 61]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ generating this Sequence Numbers PDU.
+
+- VARIABLE LENGTH FIELDS - fields of the form:
+
+ No. of Octets
+ +--------------------------------+
+ | CODE | 1
+ +--------------------------------+
+ | LENGTH | 1
+ +--------------------------------+
+ | VALUE | LENGTH
+ +--------------------------------+
+
+Any codes in a received PSNP that are not recognised are ignored.
+
+Currently defined codes are:
+
+7 LSP Entries - this may appear multiple times. The option fields,
+ if they appear more than once, shall appear sorted into ascending
+ LSPID order.
+
+ x CODE - 9
+
+ x LENGTH - total length of the value field.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Callon [Page 62]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ x VALUE - a list of LSP entries of the form:
+
+ No. of Octets
+ +--------------------------------+
+ | REMAINING LIFETIME | 2
+ +--------------------------------+
+ | LSP ID | 8
+ +--------------------------------+
+ | LSP SEQ NUMBER | 4
+ +--------------------------------+
+ | CHECKSUM | 2
+ +--------------------------------+
+ : :
+ : :
+ +--------------------------------+
+ | REMAINING LIFETIME | 2
+ +--------------------------------+
+ | LSP ID | 8
+ +--------------------------------+
+ | LSP SEQ NUMBER | 4
+ +--------------------------------+
+ | CHECKSUM | 2
+ +--------------------------------+
+
+7 REMAINING LIFETIME - Remaining Lifetime of LSP.
+
+7 LSP ID - 8 octet ID of the LSP to which this entry refers.
+
+7 LSP SEQ NUMBER - Sequence number of LSP.
+
+7 CHECKSUM - Checksum reported in LSP.
+
+The entries shall be sorted into ascending LSPID order (the LSP number
+octet of the LSPID is the least significant octet).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Callon [Page 63]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+B.4 Level 2 Partial Sequence Numbers PDU
+
+ No. of Octets
+ +--------------------------------+
+ | INTRA-DOMAIN ROUTEING | 1
+ | PROTOCOL DISCRIMINATOR |
+ +--------------------------------+
+ | LENGTH INDICATOR | 1
+ +--------------------------------+
+ | VERSION/PROTOCOL ID EXT | 1
+ +--------------------------------+
+ | RESERVED | 1
+ +--------------------------------+
+ | R | R | R | TYPE | 1
+ +--------------------------------+
+ | VERSION | 1
+ +--------------------------------+
+ | ECO | 1
+ +--------------------------------+
+ | USER ECO | 1
+ +--------------------------------+
+ | PDU LENGTH | 2
+ +--------------------------------+
+ | SOURCE ID | 7
+ +================================+====================
+ | VARIABLE LENGTH FIELDS | VARIABLE
+ +--------------------------------+
+
+- INTRADOMAIN ROUTEING PROTOCOL DISCRIMINATOR - architectural constant
+
+- LENGTH INDICATOR - Header Length in octets (17.)
+
+- VERSION/PROTOCOL ID EXTENSION - 1
+
+- RESERVED - transmitted as 0, ignored on receipt
+
+- TYPE (bits 1 through 5) - 27. Note bits 6, 7 and 8 are Reserved,
+ which means they are transmitted as 0 and ignored on receipt.
+
+- VERSION - 1
+
+- ECO - transmitted as zero, ignored on receipt
+
+- USER ECO - transmitted as zero, ignored on receipt
+
+- PDU LENGTH - Entire Length of this PDU, in octets, including header
+
+- SOURCE ID - 7 octet ID of Intermediate system (with zero Circuit ID)
+
+
+
+Callon [Page 64]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ generating this Sequence Numbers PDU.
+
+- VARIABLE LENGTH FIELDS - fields of the form:
+
+ No. of Octets
+ +--------------------------------+
+ | CODE | 1
+ +--------------------------------+
+ | LENGTH | 1
+ +--------------------------------+
+ | VALUE | LENGTH
+ +--------------------------------+
+
+Any codes in a received PSNP that are not recognised are ignored.
+
+Currently defined codes are:
+
+7 LSP Entries -- this may appear multiple times. The option fields,
+ if they appear more than once, shall appear sorted into ascending
+ LSPID order.
+
+ x CODE - 9
+
+ x LENGTH - total length of the value field.
+
+ x VALUE - a list of LSP entries of the form:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Callon [Page 65]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ No. of Octets
+ +--------------------------------+
+ | REMAINING LIFETIME | 2
+ +--------------------------------+
+ | LSP ID | 8
+ +--------------------------------+
+ | LSP SEQ NUMBER | 4
+ +--------------------------------+
+ | CHECKSUM | 2
+ +--------------------------------+
+ : :
+ : :
+ +--------------------------------+
+ | REMAINING LIFETIME | 2
+ +--------------------------------+
+ | LSP ID | 8
+ +--------------------------------+
+ | LSP SEQ NUMBER | 4
+ +--------------------------------+
+ | CHECKSUM | 2
+ +--------------------------------+
+
+7 REMAINING LIFETIME - Remaining Lifetime of LSP.
+
+7 LSP ID - 8 octet ID of the LSP to which this entry refers.
+
+7 LSP SEQ NUMBER -Sequence number of LSP.
+
+7 CHECKSUM - Checksum reported in LSP.
+
+The entries shall be sorted into ascending LSPID order (the LSP
+number octet of the LSPID is the least significant octet).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Callon [Page 66]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ Annex C
+ Dijkstra Calculation and Forwarding
+
+ Annex C.2 of ISO DP 10589 [1] specifies the SPF (Dikskstra) algorithm
+ for calculating routes with the IS-IS routing protocol. This annex
+ specifies modifications to the SPF algorithm for supporting IP and
+ dual routing, and specifies a compatible method for forwarding IP
+ packets. This will result in an order of preference of routes which
+ is compatible with that specified in section 3.10.
+
+ This annex is included for informational purposes.
+
+C.1 SPF Algorithm for IP and Dual Use
+
+ This section specifies an SPF Algorithm for calculating routes with
+ the IS-IS routing protocol, for support of both TCP/IP and OSI. This
+ is based on an extention to the algorithm specified in annex C.2 of
+ ISO DP 10589 [1].
+
+ An algorithm invented by Dijkstra known as shortest path first (SPF)
+ is used as the basis for the route calculation. It has a
+ computational complexity of the square of the number of nodes, which
+ can be decreased to the number of links in the domain times the log
+ of the number of nodes for sparse networks (networks which are not
+ highly connected).
+
+ A number of additional optimizations are possible:
+
+ 1) If the routing metric is defined over a small finite field (as in
+ this standard), the factor of log n may be removed by using data
+ structures which maintain a separate list of systems for each value
+ of the metric rather than sorting the systems by logical distance.
+
+ 2) Updates can be performed incrementally without requiring a complete
+ recalculation. However, a full update must be done periodically to
+ ensure recovery from data corruption, and studies suggest that with
+ a very small number of link changes (perhaps 2) the expected
+ computation complexity of the incremental update exceeds the
+ complete recalculation. Thus, this annex specifies the algorithm
+ only for the full update.
+
+ 3) If only End System LSP information has changed, it is not necessary
+ to re-compute the entire Dijkstra tree. If the proper data
+ structures are used, End Systems (including IP reachability
+ entries) may be attached and detached as leaves of the tree and
+ their forwarding information base entries altered as appropriate.
+
+ The original SPF algorithm does not support load splitting over
+
+
+
+Callon [Page 67]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ multiple paths. The algorithm in this annex does permit load
+ splitting by identifying a set of equal cost paths to each
+ destination rather than a single least cost path.
+
+C.1.1 Databases
+
+ PATHS -- This represents an acyclic directed graph of shortest paths
+ from the system S performing the calculation. It is stored as a set
+ of triples of the form <N,d(N),{Adj(N)}>, where:
+
+ N is a system identifier. In the level 1 algorithm, N is a
+ 6 octet ID for OSI end systems, a 7 octet ID for routers, or
+ an 8 octet IP Internal Reachability Information entry. For a
+ router which is not a pseudonode, it is the 6 octet system ID,
+ with a 0 appended octet. For a pseudonode it is a true 7 octet
+ quantity, comprised of the 6 octet Designated Intermediate
+ System ID and the extra octet assigned by the Destinated Router.
+ The IP Internal Reachability Information entries consist of a
+ 4 octet IP address plus a 4 octet subnet mask, and will always
+ be a leaf, i.e., "End System" in PATHS.
+
+ In the level 2 algorithm, N is either a 7 octet router or
+ pseudonode ID (as in the level 1 algorithm); a variable
+ length OSI address prefix; an 8 octet IP Internal Reachability
+ Information Entry, or an 8 octet IP External Reachability
+ Information entry. The variable length OSI address prefixes,
+ and 8 octet IP Reachability Information entries will always
+ be a leaf, i.e., "End System" in PATHS. As above, the IP
+ Reachability Information entries consist of an [IP address,
+ subnet mask] combination.
+
+ d(N) is N's distance from S (i.e., the total metric value
+ from N to S).
+
+ {Adj(N)} is a set of valid adjacencies that S may use for
+ forwarding to N.
+
+ When a system is placed on PATHS, the path(s) designated by its
+ position in the graph is guaranteed to be a shortest path.
+
+ TENT -- This is a list of triples of the form <N,d(N),{Adj(N)}>,
+ where N, d(N), and {Adj(N)} are as defined above for PATHS.
+
+ TENT can intuitively be thought of as a tentative placement
+ of a system in PATHS. In other words, the triple <N,x,{A}>
+ in TENT means that if N were placed in PATHS, d(N) would be x,
+ but N cannot be placed on PATHS until is is guaranteed that
+ no path shorter than x exists.
+
+
+
+Callon [Page 68]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ Similarly, the triple <N,x,{A,B}> in TENT means that if N
+ were placed in PATHS, then d(N) would be x via either
+ adjacency A or B.
+
+ Note: It is suggested that the implementation maintain the database
+ TENT as a set of list of triples of the form <*,Dist,*>, sorted by
+ distance Dist. In addition, it is necessary to be able to process
+ those systems which are pseudonodes before any non-pseudonodes at the
+ same distance Dist.
+
+ The 8 octet system identifiers which specify IP reachability entries
+ must always be distinguishable from other system identifiers. As
+ specified in section 3.10, two IP reachability entries which differ
+ only in the subnet mask are still considered to be separate, and will
+ therefore have distinct system identifiers N. The SPF algorithm will
+ therefore calculate routes to each such entry, and the correct entry
+ will be selected in the forwarding process.
+
+C.1.2 Use of Metrics in the SPF Algorithm
+
+ Internal metrics are not comparable to external metrics. For external
+ routes (routes to destinations outside of the routing domain), the
+ cost d(N) of the path from N to S may include both internal and
+ external metrics. d(N) may therefore be maintained as a two-
+ dimensioned vector quantity (specifying internal and external metric
+ values).
+
+ d(N) is initialized to [internal metric = 0, external metric = 0].
+
+ In incrementing d(N) by 1, if the internal metric value is less than
+ the maximum value MaxPathMetric, then the internal metric value is
+ incremented by one and the external metric value left unchanged; if
+ the internal metric value is equal to the maximum value
+ MaxPathMetric, then the internal metric value is set to 0 and the
+ external metric value is incremented by 1. Note that this can be
+ implemented in a straightforward manner by maintaining the external
+ metric as the high order bits of the distance.
+
+ In the code of the algorithm below, the current path length is held
+ in the variable "tentlength". This variable is a two-dimensional
+ quantity tentlength=[internal metric, external metric], and is used
+ for comparing the current path length with d(N) as described above.
+ Tentlength is incremented in the same manner as d(N).
+
+C.1.3 Overview of the Algorithm
+
+ The basic algorithm, which builds PATHS from scratch, starts out by
+ putting the system doing the computation on PATHS (no shorter path to
+
+
+
+Callon [Page 69]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ SELF can possibly exist). TENT is then pre-loaded from the local
+ adjacency database.
+
+ Note that a system is not placed on PATHS unless no shorter path to
+ that system exists. When a system N is placed on PATHS, the path to
+ each neighbor M of N, through N, is examined, as the path to N plus
+ the link from N to M. If <M,*,*> is in PATHS, this new path will be
+ longer, and thus ignored.
+
+ If <M,*,*> is in TENT, and the new path is shorter, the old entry is
+ removed from TENT and the new path is placed in TENT. If the new path
+ is the same length as the one in TENT, then the set of potential
+ adjacencies {Adj(M)} is set to the union of the old set (in TENT) and
+ the new set {Adj(N)}. If M is not in TENT, then the path is added to
+ TENT.
+
+ Next the algorithm finds the triple <N,x,{Adj(N)}> in TENT, with
+ minimal x. Note: This is done efficiently because of the optimization
+ described above. When the list of triples for distance Dist is
+ exhausted, the algorithm then increments Dist until it finds a list
+ with a triple of the form <*,Dist,*>.
+
+ N is placed in PATHS. We know that no path to N can be shorter than x
+ at this point because all paths through systems already in PATHS have
+ already been considered, and paths through systems in TENT still have
+ to be greater than x because x is minimal in TENT.
+
+ When TENT is empty, PATHS is complete.
+
+ Note that external metrics can only occur in "IP External
+ Reachability Information" entries, which correspond to a leaf (i.e.,
+ End System in PATHS). Any route utilizing an entry with an external
+ metric will always be considered to be less desireable than any entry
+ which uses an internal metric. This implies that in the addition of
+ systems to PATHS, all systems reachable via internal routes are
+ always added before any system reachable via external routes.
+
+C.1.4 The Algorithm
+
+ The Decision Process Algorithm must be run once for each supported
+ routing metric (i.e., for each supported Type of Service). A level 1
+ router runs the algorithm using the level 1 LSP database to compute
+ level 1 paths (for those level 1 routers which are not level 2
+ routers, this includes the path to the nearest attached level 2
+ router). Level 2 routers also separately run the algorithm using the
+ level 2 LSP database to compute level 2 paths. IP-capable level 2
+ routers must keep level 2 internal IP routes separate from level 2
+ external IP routes.
+
+
+
+Callon [Page 70]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ Note that this implies that routers which are both level 1 and level
+ 2 routers, and which support all four routing metrics, must run the
+ SPF algorithm 8 times (assuming partition repair is not implemented).
+
+ If this system is a Level 2 Router which supports the partition
+ repair optional function the Decision Process algorithm for computing
+ Level 1 paths must be run twice for the default metric. This first
+ execution is done to determine which of the area's
+ manualAreaAddresses are reachable in this partition, and to elect a
+ Partition Designated Level 2 Router for the partition. The partition
+ Designated Level 2 Router will determine if the area is partitioned
+ and will create virtual Level 1 links to the other Partition
+ Designated Level 2 Routers in the area in order to repair the Level 1
+ partition. This is further described in section 7.2.10 of [1].
+
+ The SPF algorithm specified here will calculate routes for both OSI
+ and IP. In particular, routes are calculated to all system
+ identifiers N, where N may specify an OSI End System, the OSI address
+ of a router, or an IP reachability entry. In computing the forwarding
+ database, it is an implementation specific issue whether the IP
+ forwarding database is kept separately from the OSI forwarding
+ database. Where appropriate, this annex will refer separately to
+ entries in these two forwarding data bases. This is not meant to
+ preclude any specific implementation method.
+
+ OSI and IP use separate mechanisms to determine whether a packet is
+ in the area (in particular, OSI makes use of area addresses, and IP
+ determines that a destination is not in an area by looking in the
+ level 1 forwarding database and determining that no entry exists for
+ that destination within the area). The route to the nearest level 2
+ router will result in separate entries in the forwarding database for
+ OSI and IP. For IP, the route to the nearest attached level 2 router
+ may be entered in the forwarding database as a default route (i.e., a
+ route with a subnet mask of all 0).
+
+ One approach would be to put the results of each Dijkstra algorithm
+ in a separate forwarding database. For a router which supports both
+ level 1 and level 2 routing (including level 2 internal and level 2
+ external routes), and which supports all four types of service, this
+ would result in twelve separate forwarding databases for IP.
+ Implementations may choose to minimize the number of forwarding
+ databases by combining the information from the multiple Dijkstra
+ calculations into a single database per supported TOS. This is
+ discussed in section C.2 below.
+
+ The SPF algorithm specified in section C.2.3 of [1] is amended to
+ appear as follows:
+
+
+
+
+Callon [Page 71]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ Step 0: Initialize TENT and PATHS to empty. Initialize tentlength to
+ [internalmetric=0, externalmetric=0].
+
+ (tentlength is the pathlength of elements in TENT that we are
+ examining.)
+
+ 1) Add <SELF,0,W> to PATHS, where W is a special value indicating
+ traffic to SELF is passed up to internal processes (rather than
+ forwarded).
+
+ 2) Now pre-load TENT with the local adjacency database (Each
+ entry made to TENT must be marked as being either an End System
+ or a router to enable the check at the end of Step 2 to be made
+ correctly - Note that each local IP reachability entry is
+ included as an adjacency, and is marked as being an End System).
+ For each adjacency Adj(N) (including level 1 OSI Manual
+ Adjacencies, or level 2 OSI enabled reachable addresses, and
+ IP reachability entries) on enabled circuits, to system N of
+ SELF in state "Up" compute:
+
+ d(N) = cost of the parent circuit of the adjacency (N),
+ obtained from metric.k , where k = one of {default metric,
+ delay metric, monetary metric, error metric}
+
+ Adj(N) = the adjacency number of the adjacency to N
+
+ 3) If a triple <N,x,{Adj(M)}> is in TENT, then:
+
+ If x = d(N), then {Adj(M)} <--- {Adj(M)} U {Adj(N)}.
+
+ 4) If N is a router or an OSI End System entry, and there are now
+ more adjacencies in {Adj(M)} than maximumPathSplits, then remove
+ excess adjacencies as described in Clause 7.2.7 of [1]. If N
+ is an IP Reachability Entry, then excess adjacencies may be
+ removed as desired. This will not effect the correctness of
+ routing, but may eliminate the determinism for IP routes (i.e.,
+ IP packets still follow optimal routes within an area, but
+ where multiple equally good routes exist, will not necessarily
+ follow precisely the route that any one particular router
+ would have anticipated).
+
+ 5) If x < d(N), do nothing.
+
+ 6) If x > d(N), remove <N,x,{Adj(M)}> from TENT and add the triple
+ <N,d(N),{Adj(N)}>.
+
+ 7) If no triple <N,x,{Adj(M)}> is in TENT, then add <N,d(N),{Adj(N)}>
+ to TENT.
+
+
+
+Callon [Page 72]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ 8) Now add systems to which the local router does not have adjacencies,
+ but which are mentioned in neighboring pseudonode LSPs. The
+ adjacency for such systems is set to that of the designated router.
+ Note that this does not include IP reachability entries from
+ neighboring pseudonode LSPs. In particular, the pseudonode LSPs
+ do not include IP reachability entries.
+
+ 9) For all broadcast circuits in state "On", find the pseudonode
+ LSP for that circuit (specifically, the LSP with number zero and
+ with the first 7 octets of LSPID equal to LnCircuitID for that
+ circuit, where n is 1 (for level 1 routing) or 2 (level 2
+ routing)). If it is present, for all the neighbors N reported in
+ all the LSPs of this pseudonode which do not exist in TENT add
+ an entry <N,d(N),{Adj(N)}> to TENT, where:
+
+ d(N) = metric.k of the circuit.
+ Adj(N) = the adjacency number of the adjacency to the DR.
+
+ 10) Go to Step 2.
+
+ Step 1: Examine the zeroeth link state PDU of P, the system just
+ placed on PATHS (i.e., the LSP with the same first 7 octets of LSPID
+ as P, and LSP number zero).
+
+ 1) If this LSP is present, and the "Infinite Hippity Cost" bit is
+ clear, then for each LSP of P (i.e., all LSPs with the same
+ first 7 octets of LSPID and P, irrespective of the value of
+ LSP number) compute:
+
+ dist(P,N) = d(P) + metric.k(P,N)
+
+ for each neighbor N (both End System and router) of the system P. If
+ the "Infinite Hippity Cost" bit is set, only consider the End System
+ neighbors of the system P. Note that the End Systems neighbors of the
+ system P includes IP reachable address entries included in the LSPs
+ from system P. Here, d(P) is the second element of the triple
+
+ <P,d(P),{Adj(P)}>
+
+ and metric.k(P,N) is the cost of the link from P to N as reported in
+ P's link state PDU.
+
+ 2) If dist(P,N) > MaxPathMetric, then do nothing.
+
+ 3) If <N,d(N),{Adj(N)}> is in PATHS, then do nothing.
+
+ Note: d(N) must be less than dist(P,N), or else N would not
+ have been put into PATHS. An additional sanity check may be
+
+
+
+Callon [Page 73]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ done here to ensure that d(N) is in fact less than dist(P,N)
+
+ 4) If a triple <N,x,{Adj(N)}> is in TENT, then:
+
+ a) If x = dist(P,N), then {Adj(N)} <-- {Adj(N)} U {Adj(P)}.
+
+ b) If N is a router or an OSI end system, and there are now more
+ adjacencies in {Adj(N)} than maximumPath Splits, then remove
+ excess adjacencies, as described in clause 7.2.7 of [1]. For
+ IP Reachability Entries, excess adjacencies may be removed as
+ desired. This will not effect the correctness of routing, but
+ may eliminate the determinism for IP routes (i.e., IP packets
+ will still follow optimal routes within an area, but where
+ multiple equally good routes exist, will not necessarily follow
+ precisely the route that any one particular router would have
+ anticipated).
+
+ c) if x < dist(P,N), do nothing.
+
+ d) if x > dist(P,N), remove <N,x,{Adj(N)}> from TENT, and add
+ <N,dist(P,N),{Adj(P)}>
+
+ 5) if no triple <N,x,{Adj(N)}> is in TENT, then add
+ <N,dist(P,N),{Adj(P)}> to TENT.
+
+ Step 2: If TENT is empty, stop. Else:
+
+ 1) Find the element <P,x,{Adj(P)}>, with minimal x as follows:
+
+ a) If an element <*,tentlength,*> remains in TENT in the list for
+ tentlength, choose that element. If there are more than one
+ elements in the list for tentlength, choose one of the elements
+ (if any) for a system which is a pseudonode in preference to one
+ for a non-pseudonode. If there are no more elements in the list
+ for tentlength, increment tentlength and repeat Step 2.
+
+ b) Remove <P,tentlength,{Adj(P)}> from TENT.
+
+ c) Add <P,d(P),{Adj(P)}> to PATHS.
+
+ d) If this is the Level 2 Decision Process running, and the system
+ just added to PATHS listed itself as Partition Designated Level 2
+ Intermediate system, then additionally add <AREA.P,d(P),{Adj(P)}>
+ to PATHS, where AREA.P is the Network Entity Title of the other
+ end of the Virtual Link, obtained by taking the first AREA
+ listed in P's LSP and appending P's ID.
+
+ e) If the system just added to PATHS was an end system, go to
+
+
+
+Callon [Page 74]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ step 2. Else go to Step 1.
+
+ NOTE - In the level 2 context, the "End Systems" are the set of
+ Reachable Address Prefixes (for OSI), the set of Area Addresses with
+ zero cost (again, for OSI), plus the set of IP reachability entries
+ (including both internal and external).
+
+C.2 Forwarding of IP packets
+
+ The SPF algorithm specified in section C.1 may be used to calculate
+ (logically) separate IP forwarding tables for each type of service,
+ and for level 1, level 2 internal, and level 2 external routes.
+ Section C.2.1 describes how to forward IP packets, based on these
+ multiple forwarding databases. Section C.2.2 describes how the
+ multiple forwarding databases can be combined into a single
+ forwarding database per supported TOS.
+
+C.2.1 Basic Method for Forwarding IP packets
+
+ For level 1-only routers:
+
+ - Determine if the IP destination address matches any entry in the
+ level 1 forwarding table for the specified TOS.
+
+ - Determine if the IP destination address matches any entry in the
+ level 1 forwarding table for the default TOS.
+
+ - If default TOS resulted in more specific entry, forward according
+ to default TOS.
+
+ - If equally specific entries found, or specified TOS resulted in
+ more specific entry, forward according to specified TOS
+
+ - If no entry was found (which includes no default route entry), then
+ destination is unreachable.
+
+ Note: For level 1 only routers, the route to the nearest attached
+ level 2 router will be entered into the forwarding database as a
+ default route (i.e., a route with a subnet mask which is all 0). Thus
+ this last event (no entry found) can occur only if there is no
+ attached level 2 router reachable in the area.
+
+ For routers which are both level 1 and level 2 routers:
+
+ - Determine if the IP destination address matches any entry in the
+ level 1 forwarding table for the specified TOS.
+
+ - Determine if the IP destination address matches any entry in the
+
+
+
+Callon [Page 75]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ level 1 forwarding table for the default TOS.
+
+ - If default TOS resulted in more specific entry (i.e., more bits in
+ the subnet mask take the value 1), forward according to default TOS.
+
+ - If equally specific entries found, or specified TOS resulted in
+ more specific entry, forward according to specified TOS
+
+ - If no entry found:
+
+ - Determine if the IP destination address matches any entry in the
+ level 2 internal forwarding table for the specified TOS.
+
+ - Determine if the IP destination address matches any entry in the
+ level 2 internal forwarding table for the default TOS.
+
+ - If default TOS resulted in more specific entry, forward according
+ to default TOS.
+
+ - If equally specific entries found, or specified TOS resulted in
+ more specific entry, forward according to specified TOS
+
+ - If no entry found:
+
+ - Determine if the IP destination address matches any entry in the
+ level 2 external forwarding table for the specified TOS.
+
+ - Determine if the IP destination address matches any entry in the
+ level 2 external forwarding table for the default TOS.
+
+ - If default TOS resulted in more specific entry, forward according
+ to default TOS.
+
+ - If equally specific entries found, or specified TOS resulted in
+ more specific entry, forward according to specified TOS
+
+ - If no entry is found, then destination is unreachable
+
+ For level 2-only routers, the above algorithm can be used, except
+ since there is no level 1 forwarding database, the corresponding
+ steps can be skipped.
+
+ As discussed in section 3.10.2, for level 2 routers which are
+ announcing manually configured summary addresses in their level 2
+ LSPs, in some cases there will exist IP addresses which match the
+ manually configured addresses, but which do not match any addresses
+ which are reachable via level 1 routing in the area. Packets to such
+ addresses are handled according to the rules specified in section
+
+
+
+Callon [Page 76]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ 3.10.2. This may be accomplished by adding the manually configured
+ [IP address, subnet mask] entry to the level 2 forwarding database
+ (for the appropriate TOS), with a special "next hop" address which
+ specifies that packets for which this entry is selected are to be
+ discarded. This will work correctly because more desireable entries
+ (such as delivering the packet via level 1 routing to the correct
+ destination, or a more specific level 2 route) will automatically
+ take precedence according to the forwarding rules specified above.
+ Less desireable routes (such as using a level 2 external route to the
+ "default route" entry) are not possible because other level 2 routers
+ will believe the summary addresses advertised by this router.
+
+C.2.2 Reduction of IP Forwarding Databases
+
+ The multiple forwarding databases used in the basic forwarding method
+ in section C.2.1 can be reduced, by combining the multiple databases
+ into one database for each supported TOS.
+
+ For reduction of IP forwarding databases, it is assumed that for any
+ two overlapping address entries, either the entries are identical, or
+ one range contains the other. In other words, for any two [IP
+ address, subnet mask] entries A and B, if there is at least one IP
+ address which matches both entries, then either: (i) the two entries
+ are identical; or (ii) entry A contains entry B (i.e., any IP address
+ which matches entry B also matches entry A); or (iii) entry B
+ contains entry A (any IP address which matches entry A also matches
+ entry B).
+
+ Non-contiguous subnet masks can be configured to violate this
+ assumption. For example, consider the two entries:
+
+ - A=[address="01010101 00000101 00000000 00000000",
+ mask="11111111 00001111 00000000 00000000"]
+
+ - B=[address="01010101 01010000 00000000 00000000",
+ mask="11111111 11110000 00000000 00000000"]
+
+ In this case neither entry contains the other. Specifically;
+
+ - there are IP addresses which match both A and B (e.g.,
+ "01010101 01010101 xxxxxxxx xxxxxxxx"),
+
+ - there are IP addresses which match A but not B (e.g.,
+ "01010101 11110101 xxxxxxxx xxxxxxxx")
+
+ - there are IP addresses which match B but not A (e.g.,
+ "01010101 01011111 xxxxxxxx xxxxxxxx").
+
+
+
+
+Callon [Page 77]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ The reduction of the multiple forwarding databases for each TOS to a
+ single database for each TOS is based on the use of "best match"
+ routing, combined with reduction of the entries placed in the
+ forwarding database in order to eliminate entries which are not to be
+ selected (based on the order of preference of routes specified in
+ section 3.10). The specific algorithm for creation of the IP
+ forwarding database can be described as follows:
+
+ 1) Make use of the the Dijkstra algorithm described in section C.1 to
+ create separate forwarding databases for each supported TOS for
+ level 1 routes, level 2 internal routes, and level 2 external
+ routes. (Note that each entry in the forwarding database will
+ specify an [IP address, subnet mask] combination, as well as the
+ next hop router for IP packets which match that entry).
+
+ 2) For each level 1 route entry which has been placed in the level 1
+ IP forwarding database for a specific TOS, copy that entry into
+ the overall IP forwarding database for that TOS.
+
+ 3) For each route entry X which has been placed in the level 2 internal
+ IP forwarding database for a specific TOS, search for overlapping
+ entries in the level 1 IP forwarding database for the specific TOS,
+ and also for the default TOS:
+
+ a) If there is any overlapping entry Y in the level 1 forwarding
+ database (for the specfic TOS, or for the default TOS) such
+ that either (i) Y contains X; or (ii) Y is identically specific
+ to X; then ignore entry X.
+
+ b) Otherwise, copy entry X into the overall IP forwarding database
+ for the specific TOS.
+
+ 4) For each route entry X which has been placed in the level 2
+ external IP forwarding database for a specific TOS, search for
+ overlapping entries in the level 1 IP forwarding database for
+ the specific TOS, and for the default TOS, and the level 2
+ internal IP forwarding database for the specific TOS, and for
+ the default TOS.
+
+ a) If there is an overlapping entry Y such that either (i) Y
+ contains X; or (ii) Y is identically specific to X; then
+ ignore entry X.
+
+ b) Otherwise, copy entry X into the overall IP forwarding database
+ for the specific TOS.
+
+ This method will result in one forwarding database for each supported
+ TOS. The forwarding of packets can then be simplified to be as follows:
+
+
+
+Callon [Page 78]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ 1) For IP packets which map to the default TOS metric (or to an
+ unsupported TOS metric), search the default TOS forwarding
+ database and select the entry which has the most specific match.
+ Forward the packet accordingly.
+
+ 2) For packets which map to a specific (non-default) TOS metric,
+ search the specific TOS forwarding database and select the entry
+ j which has the most specific match. Also search the default TOS
+ forwarding database and select the entry k which has the most
+ specific match. Forward the packet as follows:
+
+ a) If k is more specific than j, forward according to entry k
+
+ b) If j and k are equally specific, forward according to entry j
+
+ c) If j is more specific than k, forward according to entry j
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Callon [Page 79]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ Annex D
+ Use of the Authentication Field
+
+ The use of the Authentication field is outside of the scope of this
+ specification. However, there is a urgent need for simple error
+ detection/authentication mechanisms (such as a simple password) to
+ protect against certain types of errors. This annex therefore
+ proposes a possible use of this field.
+
+ This annex is included for informational purposes.
+
+D.1 Authentication Field in IS-IS packets
+
+ All IS-IS packets may optionally include the authentication field, as
+ described in sections 3.9 and 5 of this specification. As described
+ in section 5, the authentication field is encoded as a (Code, Length,
+ Value) triplet. This annex proposes that the contents of the Value
+ field consist of a one octet "Authentication Type" field, plus a
+ variable length "Authentication Information" field. A specific value
+ of the "Authentication Type" is assigned to passwords, transmitted in
+ the clear without encryption. The authentication field is encoded as
+ follows:
+
+ 7 Authentication Information -- Information used to authenticate
+ the PDU
+
+ x CODE - 133
+
+ x LENGTH - total length of the value field
+
+ x VALUE -
+ No. of Octets
+ +--------------------------------+
+ | Authentication Type | 1
+ +--------------------------------+
+ | Authentication Information | VARIABLE
+ +--------------------------------+
+
+The Authentication Type is assigned as follows:
+
+ Type = 0 reserved
+
+ Type = 1 simple password
+
+ Type > 1 reserved
+
+
+
+
+
+
+Callon [Page 80]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+D.2 Authentication Type 1 - Simple Password
+
+ Using this authentication type, a variable length password is passed
+ in the clear (i.e., not encrypted) in the Authentication Information
+ field.
+
+ WARNING: The use of a simple password does not provide useful
+ protection against intentional misbehavior. In particular, since the
+ password is transmitted in the clear without encryption, it is easy
+ for a hostile system to intercept the passwords, and to transmit
+ authenticated packets. The use of simple passwords should be
+ considered only as a weak protection against accidental errors such
+ as accidental misconfiguration.
+
+ The password shall be configured on a per-link, per-area, and per-
+ domain basis. Specifically, when this form of authentication is used:
+
+ - IS-IS Hello and 9542 IS Hello packets shall contain the
+ per-link password
+
+ - Level 1 Link State Packets shall contain the per-area password
+
+ - Level 2 Link State Packets shall contain the per-domain password
+
+ - Level 1 Sequence Number Packets shall contain the per-area password
+
+ - Level 2 Sequence Number Packets shall contain the per-domain
+ password
+
+ Also, each of these three passwords shall be configured with: (i)
+ "Transmit Password", whose value is a single password, and (ii)
+ "Receive Passwords", whose value is a set of passwords. The transmit
+ password value is always transmitted. However, any password contained
+ in the receive password set will be accepted on receipt. This method
+ allows the graceful changing of passwords without temporary loss of
+ connectivity.
+
+ For example, consider the case that an area has the configured area
+ password "OLDAREAPASSWORD". In this case, the per-area transmit
+ password value is set to OLDAREAPASSWORD, and the per-area receive
+ password value is set to {OLDAREAPASSWORD}. Suppose that it is
+ desired to change the per-area password to "NEWERPASSWORD". The
+ first step would be to manually configure all of the routers in the
+ area to set the per-area receive password value to {OLDAREAPASSWORD,
+ NEWERPASSWORD}. When this step is complete, then all routers in the
+ area will still be using the old password OLDAREAPASSWORD in their
+ level 1 LSPs and SNPs. However, they will also accept the alternate
+ password NEWERPASSWORD. The second step would be to configure the
+
+
+
+Callon [Page 81]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ routers in the area to set the per-area transmit password to
+ NEWERPASSWORD. When the second step is complete, then all routers
+ will be using the new value of the per-area password, but will accept
+ the old value as well. Finally, the third step is to change all
+ routers in the area to have the per-area receive password set to
+ {NEWERPASSWORD}.
+
+ By configuring transmit and receive values for the passwords in this
+ manner, it is possible to maintain continuous correct operation. For
+ example, in the middle of the second step in the above example, some
+ of the routers in the area will be transmitting level 1 LSPs and SNPs
+ using the old password OLDAREAPASSWORD, and some will be transmitting
+ level 1 LSPs and SNPs using the new password NEWERPASSWORD. However,
+ during the second step of the transition all routers in the area will
+ accept level 1 LSPs and SNPs using either password.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Callon [Page 82]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ Annex E
+ Interaction of the Integrated IS-IS with Brouters
+
+ A "brouter" is a device which operates an both a bridge and a router.
+ One possible type of brouter acts as a router for IP traffic, and
+ acts as a bridge for all other types of traffic.
+
+ Depending upon the manner in which a brouter is implemented, and
+ depending upon the network topology, there is an obscure bug which
+ can result from the interaction of the Integrated IS-IS protocol, and
+ brouters. This appendix gives an example of the bug, and proposes a
+ simple correction to the operation of brouters to correct the
+ problem.
+
+ This annex is included for informational purposes.
+
+E.1 The Problem
+
+ Suppose that we have a brouter which treats IP packets as if it were
+ a normal IP router, and which treats all other packets as if it is a
+ bridge.
+
+ Suppose that two routers "X" and "Y" (which implement the integrated
+ IS-IS protocol), two Ethernets, and a brouter B are all connected as
+ follows:
+
+
+ | |
+ +----+---+ +----+---+
+ | Router | | Router |
+ | X | | Y |
+ +----+---+ +----+---+
+ | |
+ -----+------------+- -+------------+----
+ | |
+ +-+-----+-+
+ | Brouter |
+ | B |
+ +---------+
+
+
+ Here suppose that X and Y are running the Integrated IS-IS protocol,
+ and are both level 1 routers in the same area. Thus X and Y send IS-
+ IS Hello packets on the LAN. These Hello packets are received and
+ forwarded by the brouter (using normal bridge functions). Similarly,
+ X and Y receive each other's IS-IS LSP packets. In this way, it
+ appears to the Brouter that X and Y are exchanging OSI packets, and
+ so they are forwarded using normal bridge functions. It appears to X
+
+
+
+Callon [Page 83]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+ and Y as if they are on the same LAN, and so they learn each others
+ 48-bit Ethernet addresses and exchange routing information.
+
+ Now, suppose that X receives an IP packet, which it needs to forward
+ via Y. Since X thinks that it and Y are on the same Ethernet, it just
+ forwards the IP packet directly, using normal Ethernet encapsulation
+ and using the 48-bit Ethernet address of Y as the destination address
+ in the Ethernet header. Brouter B, when thinking as a bridge says:
+ "this is an IP packet, I don't forward this as a bridge". Brouter B,
+ when thinking like an IP router says: "this is an IP packet, I know
+ how to forward IP packets. However, this is sent to an Ethernet
+ address which is not me, thus I will ignore it". The result is that
+ the IP packet does not get forwarded.
+
+ This problem relates directly to the fact that X and Y are exchanging
+ OSI packets to determine the connectivity of the path between them,
+ but then are trying to send IP packets over the path. Also, there is
+ a device between X and Y on the path which treats OSI and IP packets
+ differently.
+
+ Also note that this problem can also occur in more complex
+ topologies, whenever a brouter is treating OSI and IP packets in a
+ fundamentally different manner.
+
+E.2 Possible Solutions
+
+E.2.1 More Sophisticated Brouter
+
+ One solution is that brouter B needs to be a little more
+ sophisticated. In particular, it needs to use the following rules:
+
+ - For packets which are not IP packets, act as a bridge (this is the
+ same as before).
+
+ - For IP packets sent to an Ethernet broadcast or multicast address,
+ act as an IP router (this is also the same as before).
+
+ - For IP packets sent to my own Ethernet 48-bit address(es), act as
+ an IP router (this is also the same as before).
+
+ - For IP packets sent to a single station 48-bit address which is not
+ one of my addresses, act at a bridge (THIS IS NEW).
+
+ With this change, the IP packet transmitted from X to Y is forwarded
+ by the brouter, acting as a bridge. This allows the Brouter and the
+ multiprotocol routers to interoperate properly.
+
+
+
+
+
+Callon [Page 84]
+
+RFC 1195 OSI ISIS for IP and Dual Environments December 1990
+
+
+E.2.2 Dual Router / Brouter
+
+ An alternate solution would be for the Brouter to route both OSI and
+ IP equally. If the Brouter used the integrated IS-IS for this
+ purpose, then it could be part of the same routing domain and
+ interoperate like any other dual router (except for the ability to
+ bridge other protocol suites). If it used other protocols for
+ routing OSI and IP, then it would need to be part of another routing
+ domain, and could interoperate with integrated IS-IS routers like any
+ other external router.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Callon [Page 85]
+ \ No newline at end of file