home *** CD-ROM | disk | FTP | other *** search
/ Handbook of Infosec Terms 2.0 / Handbook_of_Infosec_Terms_Version_2.0_ISSO.iso / text / rfcs / rfc1195.txt < prev    next >
Text File  |  1996-05-07  |  191KB  |  2,387 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Working Group                                  R. Callon Request for Comments: 1195                 Digital Equipment Corporation                                                            December 1990 
  8.  
  9.        Use of OSI IS-IS for Routing in TCP/IP and Dual Environments 
  10.  
  11. Status of this Memo 
  12.  
  13.    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. 
  14.  
  15.    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. 
  16.  
  17. Abstract 
  18.  
  19.    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. 
  20.  
  21.    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. 
  22.  
  23.    Comments should be sent to "isis@merit.edu". 
  24.  
  25. Contents 
  26.  
  27.     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 
  28.  
  29.  
  30.  
  31. Callon                                                          [Page 1] 
  32.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  33.  
  34.          1.5     Advantages of Using Integrated IS-IS 
  35.  
  36.     2   Symbols and Abbreviations 
  37.  
  38.     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 
  39.  
  40.     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 
  41.  
  42.     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 
  43.  
  44.     6   Security Considerations 
  45.  
  46.     7   Author's Address 
  47.  
  48.     8   References 
  49.  
  50.     A   Inter-Domain Routing Protocol Information         A.1     Inter-Domain Information Type         A.2     Encoding 
  51.  
  52.     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 
  53.  
  54.     C   Dijkstra Calculation and Forwarding         C.1     SPF Algorithm for IP and Dual Use         C.2     Forwarding of IP packets 
  55.  
  56.  
  57.  
  58.  Callon                                                          [Page 2] 
  59.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  60.  
  61.      D   Use of the Authentication Field         D.1     Authentication Field in IS-IS packets         D.2     Authentication Type 1 - Simple Password 
  62.  
  63.     E   Interaction of the Integrated IS-IS with Brouters         E.1     The Problem         E.2     Possible Solutions 
  64.  
  65. Figures         1       ISO Hierarchical Address Structure         2       An Example         3       Encoding of Variable Length Fields 
  66.  
  67. 1 Introduction: Overview of the Protocol 
  68.  
  69.    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. 
  70.  
  71.    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. 
  72.  
  73.    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. 
  74.  
  75.    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. 
  76.  
  77.    The protocol specified here is based on the work of the IETF IS-IS    working group. 
  78.  
  79. 1.1 What the Integrated IS-IS offers 
  80.  
  81.    The integrated IS-IS provides a single routing protocol which will 
  82.  
  83.  
  84.  
  85. Callon                                                          [Page 3] 
  86.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  87.  
  88.     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. 
  89.  
  90.    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. 
  91.  
  92.    The protocol described in this specification allows for mixing of    IP-only, OSI-only, and dual (IP and OSI) routers, as defined below. 
  93.  
  94.    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. 
  95.  
  96.    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. 
  97.  
  98.    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. 
  99.  
  100.    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. 
  101.  
  102.    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 
  103.  
  104.  
  105.  
  106. Callon                                                          [Page 4] 
  107.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  108.  
  109.     except for the addition of IP-related information. 
  110.  
  111.    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. 
  112.  
  113.    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]. 
  114.  
  115.    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]. 
  116.  
  117. 1.2 Overview of the ISO IS-IS Protocol 
  118.  
  119.    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. 
  120.  
  121.    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. 
  122.  
  123.    Currently, ISO does not have a standard for inter-domain routing    (i.e., for routing between separate autonomous routing domains). 
  124.  
  125.  
  126.  
  127. Callon                                                          [Page 5] 
  128.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  129.  
  130.     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). 
  131.  
  132.    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. 
  133.  
  134.     +----------------------+-------------------------------+     |        IDP           |              DSP              |     +----------------------+-------------------------------+     .                      .                               .     .                      .                               .     .                      .                               .     +-----+----------------+----------+--------------+-----+     | AFI |      IDI       |  HO-DSP  |      ID      | SEL |     +-----+----------------+----------+--------------+-----+ 
  135.  
  136.          Figure 1 - ISO Hierarchical Address Structure 
  137.  
  138.     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". 
  139.  
  140.    Usually, all nodes in an area have the same area address. However,    sometimes an area might have multiple addresses. Motivations for 
  141.  
  142.  
  143.  
  144. Callon                                                          [Page 6] 
  145.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  146.  
  147.     allowing this are: 
  148.  
  149.    - 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. 
  150.  
  151.    - 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. 
  152.  
  153.    - 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. 
  154.  
  155.    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. 
  156.  
  157.    In IS-IS, there are two types of routers: 
  158.  
  159.    - 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. 
  160.  
  161.    - 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. 
  162.  
  163.    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. 
  164.  
  165.    A level 2 router will accept another level 2 router as a neighbor,    regardless of area address. However, if the area addresses do not 
  166.  
  167.  
  168.  
  169. Callon                                                          [Page 7] 
  170.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  171.  
  172.     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. 
  173.  
  174.    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. 
  175.  
  176.    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. 
  177.  
  178.    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". 
  179.  
  180.    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. 
  181.  
  182.    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. 
  183.  
  184.    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]). 
  185.  
  186.  
  187.  
  188.  Callon                                                          [Page 8] 
  189.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  190.  
  191.     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]. 
  192.  
  193. 1.3 Overview of the Integrated IS-IS 
  194.  
  195.    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). 
  196.  
  197.    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. 
  198.  
  199.    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). 
  200.  
  201.    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 
  202.  
  203.  
  204.  
  205. Callon                                                          [Page 9] 
  206.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  207.  
  208.     area structure. 
  209.  
  210.    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: 
  211.  
  212.    - If a specified destination address matches an [IP address, subnet      mask, metric] reachable within the area, the packet is routed via      level 1 routing. 
  213.  
  214.    - 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. 
  215.  
  216.    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). 
  217.  
  218.    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) 
  219.  
  220.    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. 
  221.  
  222.    The integrated IS-IS provides optional Type of Service (TOS) routing,    through use of the QOS feature from IS-IS. 
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  Callon                                                         [Page 10] 
  229.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  230.  
  231.  1.4 Support of Mixed Routing Domains 
  232.  
  233.    The integrated IS-IS proposal specifically allows for three types of    routing domains: 
  234.  
  235.    - Pure IP 
  236.  
  237.    - Pure OSI 
  238.  
  239.    - Dual 
  240.  
  241.    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). 
  242.  
  243.    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. 
  244.  
  245.    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. 
  246.  
  247.    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. 
  248.  
  249.    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. 
  250.  
  251.    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. 
  252.  
  253.    Within a dual domain, if both IP and OSI traffic are to be routed    between areas then all level 2 routers must be dual. 
  254.  
  255. 1.5 Advantages of Using Integrated IS-IS 
  256.  
  257.    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 
  258.  
  259.  
  260.  
  261. Callon                                                         [Page 11] 
  262.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  263.  
  264.     independently routing IP and OSI traffic. 
  265.  
  266.    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. 
  267.  
  268.    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. 
  269.  
  270.    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. 
  271.  
  272.    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. 
  273.  
  274.    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. 
  275.  
  276.    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. 
  277.  
  278.  
  279.  
  280.  Callon                                                         [Page 12] 
  281.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  282.  
  283.     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. 
  284.  
  285.    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. 
  286.  
  287.    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. 
  288.  
  289.    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. 
  290.  
  291. 2 Symbols and Abbreviations 
  292.  
  293. AA              Administrative Authority                 (a three octet field in the GOSIP version 2.0 NSAP                 address format) 
  294.  
  295. AFI             Authority and Format Identifier                 (the first octet of all OSI NSAP addresses -- identifies                 format of the rest of the address) 
  296.  
  297. CLNP            Connection-Less Network Protocol                 (ISO 8473, the OSI connectionless network layer protocol                 -- very similar to IP) 
  298.  
  299. DFI             DSP Format Identifier                 (a one octet field in the GOSIP version 2.0 NSAP address                 format) 
  300.  
  301.  
  302.  
  303.  Callon                                                         [Page 13] 
  304.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  305.  
  306.  ES              End System                 (The OSI term for a host) 
  307.  
  308. ES-IS           End System to Intermediate System Routeing Exchange                 Protocol (ISO 9542 -- OSI protocol between routers                 and end systems) 
  309.  
  310. ICD             International Code Designator                 (ISO standard for identifying organizations) 
  311.  
  312. IP              Internetwork Protocol                 (an Internet Standard Network Layer Protocol) 
  313.  
  314. IS              Intermediate System                 (The OSI term for a router) 
  315.  
  316. IS-IS           Intermediate System to Intermediate System Routeing                 Exchange Protocol                 (the ISO protocol for routing within a single                 routing domain) 
  317.  
  318. IS-IS Hello     An Hello packet defined by the IS-IS protocol                 (a type of packet used by the IS-IS protocol) 
  319.  
  320. ISH             An Hello packet defined by ISO 9542 (ES-IS protocol).                 (not the same as IS-IS Hello) 
  321.  
  322. ISO             International Organization for Standardization                 (an international body which is authorized to write                 standards of many kinds) 
  323.  
  324. LSP             Link State Packet                 (a type of packet used by the IS-IS protocol) 
  325.  
  326. NLPID           Network Layer Protocol ID                 (A one-octet field identifying a network layer protocol) 
  327.  
  328. NSAP            Network Service Access Point                 (a conceptual interface point at which the network                 service is made available) 
  329.  
  330. SEL             NSAP Selector                 (the last octet of NSAP addresses, also called NSEL) 
  331.  
  332. OSI             Open Systems Interconnection                 (an international standard protocol architecture) 
  333.  
  334.  
  335.  
  336.  
  337.  
  338. Callon                                                         [Page 14] 
  339.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  340.  
  341.  RD              Routing Domain                 (the set of routers and end systems using a single                 instance of a routing protocol such as IS-IS) 
  342.  
  343. SNPA            Subnetwork Point of Attachment                 (a conceptual interface at which a subnetwork service                 is provided) 
  344.  
  345. TCP             Transmission Control Protocol                 (an Internet Standard Transport Layer Protocol) 
  346.  
  347. TCP/IP          The protocol suite based on TCP, IP, and related                 protocols (the Internet standard protocol                 architecture) 
  348.  
  349. 3 Subnetwork Independent Functions 
  350.  
  351. 3.1 Exchange of Routing Information 
  352.  
  353.    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. 
  354.  
  355.    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. 
  356.  
  357.    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. 
  358.  
  359.    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 
  360.  
  361.  
  362.  
  363. Callon                                                         [Page 15] 
  364.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  365.  
  366.     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. 
  367.  
  368.    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. 
  369.  
  370.    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. 
  371.  
  372.    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). 
  373.  
  374.    The detailed encoding of the IP-specific information included in    routing packets is provided in section 5 (Structure and Encoding of 
  375.  
  376.  
  377.  
  378. Callon                                                         [Page 16] 
  379.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  380.  
  381.     PDUs). 
  382.  
  383. 3.2 Hierarchical Abbreviation of IP Reachability Information 
  384.  
  385.    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. 
  386.  
  387.    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. 
  388.  
  389.    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. 
  390.  
  391.    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. 
  392.  
  393.    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 
  394.  
  395.  
  396.  
  397. Callon                                                         [Page 17] 
  398.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  399.  
  400.     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. 
  401.  
  402.    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. 
  403.  
  404.    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. 
  405.  
  406.    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. 
  407.  
  408.  
  409.  
  410.  
  411.  
  412.             Figure 2 - An Example Routing Domain (not shown) 
  413.  
  414.    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. 
  415.  
  416.  
  417.  
  418. Callon                                                         [Page 18] 
  419.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  420.  
  421.     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. 
  422.  
  423.    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. 
  424.  
  425.    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. 
  426.  
  427.    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. 
  428.  
  429. 3.3 Addressing Routers in IS-IS Packets 
  430.  
  431.    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). 
  432.  
  433.    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. 
  434.  
  435.  
  436.  
  437. Callon                                                         [Page 19] 
  438.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  439.  
  440.     For IP-only routers, there are two ways in which NSAP addresses may    be obtained for use with the IS-IS protocol. 
  441.  
  442.    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. 
  443.  
  444.    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. 
  445.  
  446.    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: 
  447.  
  448.         AFI       1 octet       value "47" (specifies ICD format) 
  449.  
  450.         ICD       2 octet       value "00 05" (specifies Internet/Gosip) 
  451.  
  452.         DFI       1 octet       value "xx" 
  453.  
  454.         AA        3 octets      value "xx xx xx" (specifies special                                 IP-only use of NSAPs) 
  455.  
  456.         Reserved  2 octets      must be "00 00" 
  457.  
  458.         RD        2 octets      contains autonomous system number 
  459.  
  460.         Area      2 octets      must be assigned as described below 
  461.  
  462.         ID        6 octets      must be assigned as described below 
  463.  
  464.         SEL       1 octet       used as described below 
  465.  
  466.    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. 
  467.  
  468.  
  469.  
  470.  Callon                                                         [Page 20] 
  471.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  472.  
  473.     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. 
  474.  
  475.    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. 
  476.  
  477.    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: 
  478.  
  479.    1)use a unique IEEE 802 48 bit station ID 
  480.  
  481.    2)use the value hex "02 00" prepended to an IP address of the router. 
  482.  
  483.    IEEE 802 addresses, if used, must appear in IEEE canonical format. 
  484.  
  485.    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. 
  486.  
  487.    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. 
  488.  
  489.    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. 
  490.  
  491.  
  492.  
  493.  Callon                                                         [Page 21] 
  494.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  495.  
  496.  3.4 External Links 
  497.  
  498.    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. 
  499.  
  500.    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. 
  501.  
  502.    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. 
  503.  
  504.    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. 
  505.  
  506.    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. 
  507.  
  508.    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 
  509.  
  510.  
  511.  
  512. Callon                                                         [Page 22] 
  513.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  514.  
  515.     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). 
  516.  
  517.    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. 
  518.  
  519. 3.5 Type of Service Routing 
  520.  
  521.    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. 
  522.  
  523.    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. 
  524.  
  525.    NOTE - IP does not have a cost TOS. There is therefore no mapping of    IP TOS metrics which corresponds to the minimum cost metric. 
  526.  
  527.    The IP TOS field is mapped onto the four available metrics as    follows: 
  528.  
  529.    Bits 0-2 (Precedence):  This field does not affect the route, but                            rather may affect other aspects of packet                            forwarding. 
  530.  
  531.    Bits 3 (Delay), 4 (Throughput) and 5 (Reliability): 
  532.  
  533.            000     (all normal)            Use default metric 
  534.  
  535.            100     (low delay)             Use delay metric 
  536.  
  537.            010     (high throughput)       Use default metric 
  538.  
  539.  
  540.  
  541. Callon                                                         [Page 23] 
  542.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  543.  
  544.             001     (high reliabiity)       Use reliability metric 
  545.  
  546.            other                           Use default metric 
  547.  
  548. 3.6 Multiple LSPs and SNPs 
  549.  
  550.    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. 
  551.  
  552.    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. 
  553.  
  554.    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. 
  555.  
  556.    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. 
  557.  
  558. 3.7 IP-Only Operation 
  559.  
  560.    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: 
  561.  
  562.  
  563.  
  564.  
  565.  
  566.  Callon                                                         [Page 24] 
  567.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  568.  
  569.     IS-IS Hello Packets: 
  570.  
  571.            - no change 
  572.  
  573.    IS-IS Link State Packets: 
  574.  
  575.            - the "End Systems Neighbours" entries are omitted 
  576.  
  577.            - the "Prefix Neighbours" entries are omitted 
  578.  
  579.    IS-IS Sequence Number Packets: 
  580.  
  581.            - no change 
  582.  
  583. 3.8 Encapsulation 
  584.  
  585.    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. 
  586.  
  587. 3.9 Authentication 
  588.  
  589.    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. 
  590.  
  591.    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. 
  592.  
  593.    Annex D specifies a proposed use of the authentication field. 
  594.  
  595. 3.10 Order of Preference of Routes / Dijkstra Computation 
  596.  
  597.    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 
  598.  
  599.  
  600.  
  601. Callon                                                         [Page 25] 
  602.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  603.  
  604.     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. 
  605.  
  606.    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). 
  607.  
  608.    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. 
  609.  
  610.    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). 
  611.  
  612.    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. 
  613.  
  614.    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. 
  615.  
  616.    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. 
  617.  
  618.    In order to ensure correct interoperation of different router    implementations, it is necessary to specify the order of preference 
  619.  
  620.  
  621.  
  622. Callon                                                         [Page 26] 
  623.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  624.  
  625.     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. 
  626.  
  627.    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. 
  628.  
  629.    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. 
  630.  
  631. 3.10.1 Order of Preference of Routes In Level 1 Routing 
  632.  
  633.    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: 
  634.  
  635.    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. 
  636.  
  637.    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. 
  638.  
  639.    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]. 
  640.  
  641.    For a level 1 only router (i.e., a router which does not take part in 
  642.  
  643.  
  644.  
  645. Callon                                                         [Page 27] 
  646.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  647.  
  648.     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: 
  649.  
  650.    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. 
  651.  
  652.    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]. 
  653.  
  654. 3.10.2 Order of Preference of Routes in Level 2 Routing 
  655.  
  656.    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: 
  657.  
  658.    1) Routes using internal metrics only are always preferred       to routes using external metrics. 
  659.  
  660.    2) If a route using internal metrics only is available: 
  661.  
  662.       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. 
  663.  
  664.       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. 
  665.  
  666.       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, 
  667.  
  668.  
  669.  
  670. Callon                                                         [Page 28] 
  671.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  672.  
  673.           loadsplitting may be performed as specified in [1]. 
  674.  
  675.          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. 
  676.  
  677.    3) If a route using internal metrics only is not available,       but a route using external metrics is available: 
  678.  
  679.       a) If the specified destination address matches more than          one [IP address, subnet mask] pair, then the more          specific address match is prefered. 
  680.  
  681.          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. 
  682.  
  683.       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. 
  684.  
  685.       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: 
  686.  
  687.          (i)  Routes with a smaller announced external metric               are always prefered. 
  688.  
  689.          (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]. 
  690.  
  691.    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 
  692.  
  693.  
  694.  
  695. Callon                                                         [Page 29] 
  696.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  697.  
  698.     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: 
  699.  
  700.    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. 
  701.  
  702.    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. 
  703.  
  704.    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. 
  705.  
  706. 4 Subnetwork Dependent Functions  4.1 Link Demultiplexing 
  707.  
  708.    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. 
  709.  
  710.    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. 
  711.  
  712.    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. 
  713.  
  714.    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 
  715.  
  716.  
  717.  
  718. Callon                                                         [Page 30] 
  719.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  720.  
  721.     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. 
  722.  
  723. 4.2 Multiple IP Addresses per Interface 
  724.  
  725.    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. 
  726.  
  727.    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). 
  728.  
  729.    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. 
  730.  
  731. 4.3 LANs, Designated Routers, and Pseudonodes 
  732.  
  733.    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. 
  734.  
  735.    However, there is a fundamental difference in the way that OSI and    TCP/IP deal with LANs, and other broadcast subnetworks. 
  736.  
  737.    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. 
  738.  
  739.    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 
  740.  
  741.  
  742.  
  743. Callon                                                         [Page 31] 
  744.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  745.  
  746.     (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). 
  747.  
  748.    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). 
  749.  
  750.    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. 
  751.  
  752. 4.4 Maintaining Router Adjacencies 
  753.  
  754.    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. 
  755.  
  756.    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. 
  757.  
  758.    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 
  759.  
  760.  
  761.  
  762. Callon                                                         [Page 32] 
  763.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  764.  
  765.     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. 
  766.  
  767.    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). 
  768.  
  769. 4.5 Forwarding to Incompatible Routers 
  770.  
  771.    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). 
  772.  
  773.    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. 
  774.  
  775. 5 Structure and Encoding of PDUs 
  776.  
  777.    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. 
  778.  
  779. 5.1 Overview of IS-IS PDUs 
  780.  
  781.    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). 
  782.  
  783.    Hello packets are used to initialize and maintain adjacencies between    neighboring routers. There are three types of IS-IS Hello packets: 
  784.  
  785.  
  786.  
  787. Callon                                                         [Page 33] 
  788.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  789.  
  790.     (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. 
  791.  
  792.    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. 
  793.  
  794.    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. 
  795.  
  796.    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. 
  797.  
  798. 5.2 Overview of IP-Specific Information for IS-IS 
  799.  
  800.    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". 
  801.  
  802.    The "Protocols Supported" field identifies the protocols which are 
  803.  
  804.  
  805.  
  806. Callon                                                         [Page 34] 
  807.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  808.  
  809.     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. 
  810.  
  811.    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. 
  812.  
  813.    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. 
  814.  
  815.    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. 
  816.  
  817.    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 
  818.  
  819.  
  820.  
  821. Callon                                                         [Page 35] 
  822.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  823.  
  824.     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. 
  825.  
  826.    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. 
  827.  
  828.    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. 
  829.  
  830.    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: 
  831.  
  832.                                          No. of Octets           +---------------------------+           |           CODE            |      1           +---------------------------+           |          LENGTH           |      1           +---------------------------+           |           VALUE           |      LENGTH           +---------------------------+ 
  833.  
  834.         Figure 3 - Encoding of Variable Length Fields 
  835.  
  836.    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. 
  837.  
  838.    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 
  839.  
  840.  
  841.  
  842. Callon                                                         [Page 36] 
  843.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  844.  
  845.     fields may occur in any order. 
  846.  
  847. 5.3 Encoding of IP-Specific Fields in IS-IS PDUs 
  848.  
  849.    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. 
  850.  
  851.    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. 
  852.  
  853. 5.3.1 Level 1 LAN IS to IS Hello PDU 
  854.  
  855. - Additional codes for IP support are: 
  856.  
  857.   7 Protocols Supported -- the set Network Layer Protocol Identifiers     for Network Layer protocols that this Intermediate System is     capable of relaying 
  858.  
  859.     x CODE - 129 
  860.  
  861.     x LENGTH - total length of the value field (one octet per       protocol supported). 
  862.  
  863.     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. 
  864.  
  865.   7 IP Interface Address -- the IP address(es) of the interface     corresponding to the SNPA over which this PDU is to be transmitted. 
  866.  
  867.     x CODE - 132 
  868.  
  869.     x LENGTH - total length of the value field (four octets per address). 
  870.  
  871.   Callon                                                         [Page 37] 
  872.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  873.  
  874.      x VALUE -                                           No. of Octets           +----------------------------+           |         IP ADDRESS         |      4           +----------------------------+           :                            :           :                            :           +----------------------------+           |         IP ADDRESS         |      4           +----------------------------+         IP ADDRESS - 4 octet IP Address of the Interface. 
  875.  
  876.   7 Authentication Information -- Information used to authenticate the     PDU 
  877.  
  878.     x CODE - 133 
  879.  
  880.     x LENGTH - total length of the value field. 
  881.  
  882.     x VALUE - TBD. 
  883.  
  884. 5.3.2 Level 2 LAN IS to IS Hello PDU 
  885.  
  886. - Additional codes for IP support are: 
  887.  
  888.   7 Protocols Supported -- the set Network Layer Protocol Identifiers     for Network Layer protocols that this Intermediate System is     capable of relaying 
  889.  
  890.     x CODE - 129 
  891.  
  892.     x LENGTH  - total length of the value field (one octet per protocol                 supported). 
  893.  
  894.     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. 
  895.  
  896.   7 IP Interface Address -- The IP address(es) of the interface 
  897.  
  898.  
  899.  
  900. Callon                                                         [Page 38] 
  901.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  902.  
  903.      corresponding to the SNPA over which this PDU is to be transmitted. 
  904.  
  905.     x CODE - 132 
  906.  
  907.     x LENGTH - total length of the value field (four octets per address). 
  908.  
  909.     x VALUE -                                      No. of Octets           +----------------------------+           |        IP ADDRESS          |      4           +----------------------------+           :                            :           :                            :           +----------------------------+           |         IP ADDRESS         |      4           +----------------------------+         IP ADDRESS - 4 octet IP Address of the Interface. 
  910.  
  911.   7 Authentication Information -- Information used to authenticate     the PDU 
  912.  
  913.     x CODE - 133 
  914.  
  915.     x LENGTH - total length of the value field 
  916.  
  917.     x VALUE - TBD 
  918.  
  919. 5.3.3 Point-to-Point IS to IS Hello PDU 
  920.  
  921. - Additional codes for IP support are: 
  922.  
  923.   7 Protocols Supported -- the set Network Layer Protocol Identifiers     for Network Layer protocols that this Intermediate System is     capable of relaying 
  924.  
  925.     x CODE - 129 
  926.  
  927.     x LENGTH - total length of the value field (one octet per protocol                supported). 
  928.  
  929.     x VALUE - one octet NLPID (as assigned by ISO/TR 9577) for each               supported data protocol. 
  930.  
  931.  
  932.  
  933.  
  934.  
  935.  
  936.  
  937.  
  938.  
  939. Callon                                                         [Page 39] 
  940.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  941.  
  942.                                       No. of Octets           +----------------------------+           |           NLPID            |      1           +----------------------------+           :                            :           :                            :           +----------------------------+           |           NLPID            |      1           +----------------------------+         NLPID - ISO/TR 9577 registered Network Layer Protocol Identifier. 
  943.  
  944.   7 IP Interface Address -- The IP address(es) of the interface     corresponding to the SNPA over which this PDU is to be transmitted. 
  945.  
  946.     x CODE - 132 
  947.  
  948.     x LENGTH - total length of the value field (four octets per address). 
  949.  
  950.     x VALUE -                                           No. of Octets           +----------------------------+           |         IP ADDRESS         |      4           +----------------------------+           :                            :           :                            :           +----------------------------+           |         IP ADDRESS         |      4           +----------------------------+         IP ADDRESS - 4 octet IP Address of the Interface. 
  951.  
  952.   7 Authentication Information -- Information used to authenticate     the PDU 
  953.  
  954.     x CODE - 133 
  955.  
  956.     x LENGTH - total length of the value field 
  957.  
  958.     x VALUE - TBD 
  959.  
  960. 5.3.4 Level 1 Link State PDU 
  961.  
  962. - Additional codes for IP support are: 
  963.  
  964.   7 Protocols Supported -- the set Network Layer Protocol Identifiers     for Network Layer protocols that this Intermediate System is     capable of relaying. 
  965.  
  966.     This must appear once in LSP number 0. 
  967.  
  968.  
  969.  
  970. Callon                                                         [Page 40] 
  971.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  972.  
  973.      x CODE - 129 
  974.  
  975.     x LENGTH - total length of the value field (one octet per protocol                supported). 
  976.  
  977.     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. 
  978.  
  979.   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). 
  980.  
  981.     This is permitted to appear multiple times, and in an LSP with     any LSP number. 
  982.  
  983.     x CODE - 132 
  984.  
  985.     x LENGTH - total length of the value field (four octets per address). 
  986.  
  987.     x VALUE -                                           No. of Octets           +----------------------------+           |         IP ADDRESS         |      4           +----------------------------+           :                            :           :                            :           +----------------------------+           |         IP ADDRESS         |      4           +----------------------------+         IP ADDRESS - 4 octet IP Address 
  988.  
  989.   7 Authentication Information -- Information used to authenticate     the PDU 
  990.  
  991.     x CODE - 133 
  992.  
  993.     x LENGTH - total length of the value field 
  994.  
  995.  
  996.  
  997.  Callon                                                         [Page 41] 
  998.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  999.  
  1000.      x VALUE - TBD 
  1001.  
  1002.   7 IP Internal Reachability Information -- IP addresses within the     routing domain reachable directly via one or more interfaces on     this Intermediate system. 
  1003.  
  1004.     This is permitted to appear multiple times, and in an LSP with any     LSP number. However, this field must not appear in pseudonode LSPs. 
  1005.  
  1006.     x CODE - 128. 
  1007.  
  1008.     x LENGTH - a multiple of 12. 
  1009.  
  1010.     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           +----------------------------+ 
  1011.  
  1012.       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 
  1013.  
  1014.  
  1015.  
  1016. Callon                                                         [Page 42] 
  1017.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1018.  
  1019.        (internal or external) for all four TOS metrics, and must be       set to zero indicating internal metrics. 
  1020.  
  1021.       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. 
  1022.  
  1023.       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. 
  1024.  
  1025.       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. 
  1026.  
  1027.       IP ADDRESS is a 4-octet Internet address 
  1028.  
  1029.       SUBNET MASK is a 4 octet IP subnet mask. 
  1030.  
  1031. 5.3.5 Level 2 Link State PDU 
  1032.  
  1033. - Additional codes for IP support are: 
  1034.  
  1035.   7 Protocols Supported -- the set Network Layer Protocol Identifiers     for Network Layer protocols that this Intermediate System is     capable of relaying. 
  1036.  
  1037.     This must appear once in LSP number 0. 
  1038.  
  1039.     x CODE - 129 
  1040.  
  1041.     x LENGTH - total length of the value field (one octet per       protocol supported). 
  1042.  
  1043.  
  1044.  
  1045.  
  1046.  
  1047.  
  1048.  
  1049.  
  1050.  
  1051.  
  1052.  
  1053.  Callon                                                         [Page 43] 
  1054.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1055.  
  1056.      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. 
  1057.  
  1058.   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). 
  1059.  
  1060.     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. 
  1061.  
  1062.     x CODE - 132 
  1063.  
  1064.     x LENGTH - total length of the value field (four octets per address). 
  1065.  
  1066.     x VALUE-                                           No. of Octets           +----------------------------+           |         IP ADDRESS         |      4           +----------------------------+           :                            :           :                            :           +----------------------------+           |         IP ADDRESS         |      4           +----------------------------+         IP ADDRESS - 4 octet IP Address 
  1067.  
  1068.   7 Authentication Information -- Information used to authenticate     the PDU 
  1069.  
  1070.     x CODE - 133 
  1071.  
  1072.     x LENGTH - total length of the value field 
  1073.  
  1074.     x VALUE - TBD 
  1075.  
  1076.   7 IP Internal Reachability Information -- IP addresses within the     routing domain reachable directly via one or more interfaces on 
  1077.  
  1078.  
  1079.  
  1080. Callon                                                         [Page 44] 
  1081.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1082.  
  1083.      this Intermediate system. 
  1084.  
  1085.     This is permitted to appear multiple times, and in an LSP with     any LSP number. However, this field must not appear in pseudonode     LSPs. 
  1086.  
  1087.     x CODE - 128. 
  1088.  
  1089.     x LENGTH -  a multiple of 12. 
  1090.  
  1091.     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           +----------------------------+ 
  1092.  
  1093.       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. 
  1094.  
  1095.  
  1096.  
  1097.  Callon                                                         [Page 45] 
  1098.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1099.  
  1100.        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. 
  1101.  
  1102.       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. 
  1103.  
  1104.       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. 
  1105.  
  1106.       IP ADDRESS is a 4-octet Internet address 
  1107.  
  1108.       SUBNET MASK is a 4 octet IP subnet mask. 
  1109.  
  1110.   7 IP External Reachability Information -- IP addresses outside the     routing domain reachable via interfaces on this Intermediate     system. 
  1111.  
  1112.     This is permitted to appear multiple times, and in an LSP with     any LSP number. However, this field must not appear in pseudonode LSPs. 
  1113.  
  1114.     x CODE - 130. 
  1115.  
  1116.     x LENGTH - a multiple of 12. 
  1117.  
  1118.     x VALUE - 
  1119.  
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.  
  1127.  
  1128.  
  1129.  
  1130.  
  1131.  
  1132.  
  1133.  
  1134.  
  1135.  
  1136. Callon                                                         [Page 46] 
  1137.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1138.  
  1139.                                            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           +----------------------------+ 
  1140.  
  1141.       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. 
  1142.  
  1143.       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. 
  1144.  
  1145.       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 
  1146.  
  1147.  
  1148.  
  1149. Callon                                                         [Page 47] 
  1150.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1151.  
  1152.        set to zero on transmission and ignored on reception. 
  1153.  
  1154.       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. 
  1155.  
  1156.       IP ADDRESS is a 4-octet Internet address 
  1157.  
  1158.       SUBNET MASK is a 4 octet IP subnet mask 
  1159.  
  1160.   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. 
  1161.  
  1162.     This is permitted to appear multiple times, and in an LSP with     any LSP number. 
  1163.  
  1164.     x CODE - 131. 
  1165.  
  1166.     x LENGTH - total length of the value field 
  1167.  
  1168.     x VALUE -                                              No. of Octets           +-------------------------------+           | Inter-Domain Information Type |      1           +-------------------------------+           |     External Information      |      VARIABLE           +-------------------------------+ 
  1169.  
  1170.       INTER-DOMAIN INFORMATION TYPE indicates the type of the       external information which is encoded in the field. 
  1171.  
  1172.       EXTERNAL INFORMATION contains inter-domain routing protocol       information, and is passed transparently by the IS-IS protocol. 
  1173.  
  1174. 5.3.6 Level 1 Complete Sequence Numbers PDU 
  1175.  
  1176. - Additional codes for IP support are: 
  1177.  
  1178.   7 Authentication Information -- Information used to authenticate     the PDU 
  1179.  
  1180.     x CODE - 133 
  1181.  
  1182.     x LENGTH - total length of the value field 
  1183.  
  1184.  
  1185.  
  1186. Callon                                                         [Page 48] 
  1187.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1188.  
  1189.      x VALUE - TBD 
  1190.  
  1191. 5.3.7 Level 2 Complete Sequence Numbers PDU 
  1192.  
  1193. - Additional codes for IP support are: 
  1194.  
  1195.   7 Authentication Information -- Information used to authenticate     the PDU 
  1196.  
  1197.     x CODE - 133 
  1198.  
  1199.     x LENGTH - total length of the value field 
  1200.  
  1201.     x VALUE - TBD 
  1202.  
  1203. 5.3.8 Level 1 Partial Sequence Numbers PDU 
  1204.  
  1205. - Additional codes for IP support are: 
  1206.  
  1207.   7 Authentication Information -- Information used to authenticate     the PDU 
  1208.  
  1209.     x CODE - 133 
  1210.  
  1211.     x LENGTH - total length of the value field 
  1212.  
  1213.     x VALUE - TBD 
  1214.  
  1215. 5.3.9 Level 2 Partial Sequence Numbers PDU 
  1216.  
  1217. - Additional codes for IP support are: 
  1218.  
  1219.   7 Authentication Information -- Information used to authenticate     the PDU 
  1220.  
  1221.     x CODE - 133 
  1222.  
  1223.     x LENGTH - total length of the value field 
  1224.  
  1225.     x VALUE - TBD 
  1226.  
  1227. 5.3.10 ISO 9542 ISH PDU 
  1228.  
  1229. - Additional codes for IP support are: 
  1230.  
  1231.   7 Protocols Supported -- the set Network Layer Protocol Identifiers     for Network Layer protocols that this Intermediate System is     capable of relaying. 
  1232.  
  1233.  
  1234.  
  1235. Callon                                                         [Page 49] 
  1236.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1237.  
  1238.      This appears in ISO 9542 ISH PDUs transmitted on point-to-point     links. 
  1239.  
  1240.     x CODE - 129 
  1241.  
  1242.     x LENGTH - total length of the value field (one octet per       protocol supported). 
  1243.  
  1244.     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. 
  1245.  
  1246.   7 Authentication Information -- Information used to authenticate     the PDU 
  1247.  
  1248.     x CODE - 133 
  1249.  
  1250.     x LENGTH - total length of the value field 
  1251.  
  1252.     x VALUE - TBD 
  1253.  
  1254. 6 Security Considerations 
  1255.  
  1256.    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. 
  1257.  
  1258.    Other aspects of security are not discussed in this document. 
  1259.  
  1260.  
  1261.  
  1262.  
  1263.  
  1264.  
  1265.  
  1266.  Callon                                                         [Page 50] 
  1267.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1268.  
  1269.  7 Author's Address 
  1270.  
  1271.     Ross Callon     Digital Equipment Corporation     550 King Street, LKG 1-2/A19     Littleton, MA 01460-1289     508-486-5009 
  1272.  
  1273. 8 References 
  1274.  
  1275. [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. 
  1276.  
  1277. [2]     "Protocol for Providing the Connectionless-Mode Network         Service", ISO 8473, March 1987. 
  1278.  
  1279. [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. 
  1280.  
  1281. [4]     Braden,R., and Postel,J., "Requirements for Internet Gateways",         RFC 1009, June 1987. 
  1282.  
  1283. [5]     Moy,J., "The OSPF Specification", RFC 1131, October 1989. 
  1284.  
  1285. [6]     Postel,J., "Internetwork Protocol", RFC 791, September 1981. 
  1286.  
  1287. [7]     Postel,J., "Internet Control Message Protocol", RFC 792,         September 1981. 
  1288.  
  1289. [8]     "MIB for Use with the Extended OSI IS-IS in TCP/IP and Dual         Environments", forthcoming. 
  1290.  
  1291. [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. 
  1292.  
  1293. [10]    "Standard for Local Area Networks and Metropolitan Area         Networks: Overview and Architecture of Network Standards",         IEEE Standard 802.1a-1990. 
  1294.  
  1295.  
  1296.  
  1297.  
  1298.  
  1299.  Callon                                                         [Page 51] 
  1300.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1301.  
  1302.                                  Annex A                Inter-Domain Routing Protocol Information 
  1303.  
  1304.    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. 
  1305.  
  1306. A.1 Inter-Domain Information Type 
  1307.  
  1308.    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. 
  1309.  
  1310.    The following types have been assigned: 
  1311.  
  1312.         Type = 0        reserved 
  1313.  
  1314.         Type = 1        local (uses routing-domain specific format) 
  1315.  
  1316.         Type = 2        AS Number Tag 
  1317.  
  1318.    Type = 1 indicates that the inter-domain routing protocol information    uses a format which is local to the routing domain. 
  1319.  
  1320.    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. 
  1321.  
  1322. A.2 Encoding 
  1323.  
  1324.    As specified in section 5.3.5, the IDPRI entry is encoded as a    variable length field, as follows: 
  1325.  
  1326.     x CODE - 131 
  1327.  
  1328.     x LENGTH - total length of the value field 
  1329.  
  1330.     x VALUE - 
  1331.  
  1332.  
  1333.  
  1334.  Callon                                                         [Page 52] 
  1335.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1336.  
  1337.                                               No. of Octets           +-------------------------------+           | Inter-Domain Information Type |      1           +-------------------------------+           |     External Information      |      VARIABLE           +-------------------------------+ 
  1338.  
  1339.       INTER-DOMAIN INFORMATION TYPE indicates the type of the       external information which is encoded in the field. 
  1340.  
  1341.       EXTERNAL INFORMATION contains inter-domain routing protocol       information, and is passed transparently by the IS-IS protocol. 
  1342.  
  1343.    The Inter-domain information type field indicates the type of    information which is contained in the external information field, as    follow: 
  1344.  
  1345.   Type = 0 is reserved (must not be sent, and must be ignored on receipt). 
  1346.  
  1347.   Type = 1 indicates that the external information field contains   information which follows a locally specified format. 
  1348.  
  1349.   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: 
  1350.  
  1351.     x VALUE -                                                No. of Octets           +---------------------------------+           | Inter-Domain Information Type=2 |      1           +---------------------------------+           |   Autonomous System Number      |      2           +---------------------------------+ 
  1352.  
  1353.  
  1354.  
  1355.  
  1356.  
  1357.  
  1358.  
  1359.  
  1360.  
  1361.  
  1362.  
  1363.  
  1364.  
  1365. Callon                                                         [Page 53] 
  1366.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1367.  
  1368.                                  Annex B                   Encoding of Sequence Number Packets 
  1369.  
  1370.    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. 
  1371.  
  1372.    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. 
  1373.  
  1374.    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. 
  1375.  
  1376.    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. 
  1377.  
  1378.    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. 
  1379.  
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390.  
  1391.  
  1392.  
  1393.  
  1394.  
  1395.  
  1396.  
  1397.  
  1398. Callon                                                         [Page 54] 
  1399.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1400.  
  1401.  B.1 Level 1 Complete Sequence Numbers PDU 
  1402.  
  1403.                                               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           +--------------------------------+ 
  1404.  
  1405.  - INTRADOMAIN ROUTEING PROTOCOL DISCRIMINATOR - architectural constant 
  1406.  
  1407. - LENGTH INDICATOR - Header Length in octets (33.) 
  1408.  
  1409. - VERSION/PROTOCOL ID EXTENSION - 1 
  1410.  
  1411. - RESERVED - transmitted as 0, ignored on receipt 
  1412.  
  1413. - 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. 
  1414.  
  1415. - VERSION - 1 
  1416.  
  1417. - ECO - transmitted as zero, ignored on receipt 
  1418.  
  1419.  
  1420.  
  1421.  Callon                                                         [Page 55] 
  1422.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1423.  
  1424.  - USER ECO - transmitted as zero, ignored on receipt 
  1425.  
  1426. - PDU LENGTH - Entire Length of this PDU, in octets, including header 
  1427.  
  1428. - SOURCE ID - 7 octet ID of Intermediate System (with zero Circuit ID)   generating this Sequence Numbers PDU. 
  1429.  
  1430. - START LSP ID - 8 octet ID of first LSP in the range covered by this   Complete Sequence Numbers PDU. 
  1431.  
  1432. - END LSP ID - 8 octet ID of last LSP in the range covered by this   Complete Sequence Numbers PDU. 
  1433.  
  1434. - VARIABLE LENGTH FIELDS - fields of the form: 
  1435.  
  1436.                                               No. of Octets           +--------------------------------+           |              CODE              |      1           +--------------------------------+           |             LENGTH             |      1           +--------------------------------+           |             VALUE              |      LENGTH           +--------------------------------+ 
  1437.  
  1438. Any codes in a received CSNP that are not recognised are ignored. 
  1439.  
  1440. Currently defined codes are: 
  1441.  
  1442.   7 LSP Entries -- This may appear multiple times. The option fields,     if they appear more than once, shall appear sorted into ascending     LSPID order. 
  1443.  
  1444.     x CODE - 9 
  1445.  
  1446.     x LENGTH - total length of the value field. 
  1447.  
  1448.     x VALUE - a list of LSP entries of the form: 
  1449.  
  1450.  
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456.  
  1457.  
  1458.  
  1459.  
  1460.  
  1461.  
  1462.  Callon                                                         [Page 56] 
  1463.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1464.  
  1465.  
  1466.  
  1467.                                               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           +--------------------------------+ 
  1468.  
  1469. 7 REMAINING LIFETIME - Remaining Lifetime of LSP. 
  1470.  
  1471. 7 LSP ID - 8 octet ID of the LSP to which this entry refers. 
  1472.  
  1473. 7 LSP SEQ NUMBER - Sequence number of LSP. 
  1474.  
  1475. 7 CHECKSUM - Checksum reported in LSP. 
  1476.  
  1477. The entries shall be sorted into ascending LSPID order (the LSP number octet of the LSPID is the least significant octet). 
  1478.  
  1479.  
  1480.  
  1481.  
  1482.  
  1483.  
  1484.  
  1485.  
  1486.  
  1487.  
  1488.  
  1489.  
  1490.  
  1491.  
  1492.  
  1493.  
  1494.  
  1495.  Callon                                                         [Page 57] 
  1496.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1497.  
  1498.  B.2 Level 2 Complete Sequence Numbers PDU 
  1499.  
  1500.                                               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           +--------------------------------+ 
  1501.  
  1502.  - INTRADOMAIN ROUTEING PROTOCOL DISCRIMINATOR - architectural constant 
  1503.  
  1504. - LENGTH INDICATOR - Header Length in octets (33.) 
  1505.  
  1506. - VERSION/PROTOCOL ID EXTENSION - 1 
  1507.  
  1508. - RESERVED - transmitted as 0, ignored on receipt 
  1509.  
  1510. - 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. 
  1511.  
  1512. - VERSION - 1 
  1513.  
  1514. - ECO - transmitted as zero, ignored on receipt 
  1515.  
  1516.  
  1517.  
  1518.  Callon                                                         [Page 58] 
  1519.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1520.  
  1521.  - USER ECO - transmitted as zero, ignored on receipt 
  1522.  
  1523. - PDU LENGTH - Entire Length of this PDU, in octets, including header 
  1524.  
  1525. - SOURCE ID - 7 octet ID of Intermediate System (with zero Circuit ID)   generating this Sequence Numbers PDU. 
  1526.  
  1527. - START LSP ID - 8 octet ID of first LSP in the range covered by this   Complete Sequence Numbers PDU. 
  1528.  
  1529. - END LSP ID - 8 octet ID of last LSP in the range covered by this   Complete Sequence Numbers PDU. 
  1530.  
  1531. - VARIABLE LENGTH FIELDS - fields of the form: 
  1532.  
  1533.                                               No. of Octets           +--------------------------------+           |              CODE              |      1           +--------------------------------+           |             LENGTH             |      1           +--------------------------------+           |             VALUE              |      LENGTH           +--------------------------------+ 
  1534.  
  1535. Any codes in a received CSNP that are not recognised are ignored. 
  1536.  
  1537. Currently defined codes are: 
  1538.  
  1539. 7 LSP Entries -- this may appear multiple times. The option fields,   if they appear more than once, shall appear sorted into ascending   LSPID order. 
  1540.  
  1541.   x CODE - 9 
  1542.  
  1543.   x LENGTH - total length of the value field. 
  1544.  
  1545.   x VALUE - a list of LSP entries of the form: 
  1546.  
  1547.  
  1548.  
  1549.  
  1550.  
  1551.  
  1552.  
  1553.  
  1554.  
  1555.  
  1556.  
  1557.  
  1558.  
  1559.  Callon                                                         [Page 59] 
  1560.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1561.  
  1562.                                                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           +--------------------------------+ 
  1563.  
  1564. 7 REMAINING LIFETIME - Remaining Lifetime of LSP. 
  1565.  
  1566. 7 LSP ID - 8 octet ID of the LSP to which this entry refers. 
  1567.  
  1568. 7 LSP SEQ NUMBER - Sequence number of LSP. 
  1569.  
  1570. 7 CHECKSUM - Checksum reported in LSP. 
  1571.  
  1572. The entries shall be sorted into ascending LSPID order (the LSP number octet of the LSPID is the least significant octet). 
  1573.  
  1574.  
  1575.  
  1576.  
  1577.  
  1578.  
  1579.  
  1580.  
  1581.  
  1582.  
  1583.  
  1584.  
  1585.  
  1586.  
  1587.  
  1588.  
  1589.  
  1590.  
  1591.  
  1592. Callon                                                         [Page 60] 
  1593.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1594.  
  1595.  B.3 Level 1 Partial Sequence Numbers PDU 
  1596.  
  1597.                                               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           +--------------------------------+ 
  1598.  
  1599. - INTRADOMAIN ROUTEING PROTOCOL DISCRIMINATOR - architectural constant 
  1600.  
  1601. - LENGTH INDICATOR - Header Length in octets (17.) 
  1602.  
  1603. - VERSION/PROTOCOL ID EXTENSION - 1 
  1604.  
  1605. - RESERVED - transmitted as 0, ignored on receipt 
  1606.  
  1607. - 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. 
  1608.  
  1609. - VERSION - 1 
  1610.  
  1611. - ECO - transmitted as zero, ignored on receipt 
  1612.  
  1613. - USER ECO - transmitted as zero, ignored on receipt 
  1614.  
  1615. - PDU LENGTH - Entire Length of this PDU, in octets, including header 
  1616.  
  1617. - SOURCE ID - 7 octet ID of Intermediate system (with zero Circuit ID) 
  1618.  
  1619.  
  1620.  
  1621. Callon                                                         [Page 61] 
  1622.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1623.  
  1624.    generating this Sequence Numbers PDU. 
  1625.  
  1626. - VARIABLE LENGTH FIELDS - fields of the form: 
  1627.  
  1628.                                               No. of Octets           +--------------------------------+           |              CODE              |      1           +--------------------------------+           |             LENGTH             |      1           +--------------------------------+           |             VALUE              |      LENGTH           +--------------------------------+ 
  1629.  
  1630. Any codes in a received PSNP that are not recognised are ignored. 
  1631.  
  1632. Currently defined codes are: 
  1633.  
  1634. 7  LSP Entries - this may appear multiple times. The option fields,    if they appear more than once, shall appear sorted into ascending    LSPID order. 
  1635.  
  1636.    x CODE - 9 
  1637.  
  1638.    x LENGTH - total length of the value field. 
  1639.  
  1640.  
  1641.  
  1642.  
  1643.  
  1644.  
  1645.  
  1646.  
  1647.  
  1648.  
  1649.  
  1650.  
  1651.  
  1652.  
  1653.  
  1654.  
  1655.  
  1656.  
  1657.  
  1658.  
  1659.  
  1660.  
  1661.  
  1662.  
  1663.  
  1664.  
  1665.  
  1666. Callon                                                         [Page 62] 
  1667.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1668.  
  1669.     x VALUE - a list of LSP entries of the form: 
  1670.  
  1671.                                               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           +--------------------------------+ 
  1672.  
  1673. 7 REMAINING LIFETIME - Remaining Lifetime of LSP. 
  1674.  
  1675. 7 LSP ID - 8 octet ID of the LSP to which this entry refers. 
  1676.  
  1677. 7 LSP SEQ NUMBER - Sequence number of LSP. 
  1678.  
  1679. 7 CHECKSUM - Checksum reported in LSP. 
  1680.  
  1681. The entries shall be sorted into ascending LSPID order (the LSP number octet of the LSPID is the least significant octet). 
  1682.  
  1683.  
  1684.  
  1685.  
  1686.  
  1687.  
  1688.  
  1689.  
  1690.  
  1691.  
  1692.  
  1693.  
  1694.  
  1695.  
  1696.  
  1697.  
  1698.  
  1699. Callon                                                         [Page 63] 
  1700.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1701.  
  1702.  B.4 Level 2 Partial Sequence Numbers PDU 
  1703.  
  1704.                                               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           +--------------------------------+ 
  1705.  
  1706. - INTRADOMAIN ROUTEING PROTOCOL DISCRIMINATOR - architectural constant 
  1707.  
  1708. - LENGTH INDICATOR - Header Length in octets (17.) 
  1709.  
  1710. - VERSION/PROTOCOL ID EXTENSION - 1 
  1711.  
  1712. - RESERVED - transmitted as 0, ignored on receipt 
  1713.  
  1714. - 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. 
  1715.  
  1716. - VERSION - 1 
  1717.  
  1718. - ECO - transmitted as zero, ignored on receipt 
  1719.  
  1720. - USER ECO - transmitted as zero, ignored on receipt 
  1721.  
  1722. - PDU LENGTH - Entire Length of this PDU, in octets, including header 
  1723.  
  1724. - SOURCE ID - 7 octet ID of Intermediate system (with zero Circuit ID) 
  1725.  
  1726.  
  1727.  
  1728. Callon                                                         [Page 64] 
  1729.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1730.  
  1731.    generating this Sequence Numbers PDU. 
  1732.  
  1733. - VARIABLE LENGTH FIELDS - fields of the form: 
  1734.  
  1735.                                               No. of Octets           +--------------------------------+           |              CODE              |      1           +--------------------------------+           |             LENGTH             |      1           +--------------------------------+           |             VALUE              |      LENGTH           +--------------------------------+ 
  1736.  
  1737. Any codes in a received PSNP that are not recognised are ignored. 
  1738.  
  1739. Currently defined codes are: 
  1740.  
  1741. 7 LSP Entries -- this may appear multiple times. The option fields,   if they appear more than once, shall appear sorted into ascending   LSPID order. 
  1742.  
  1743.   x CODE - 9 
  1744.  
  1745.   x LENGTH - total length of the value field. 
  1746.  
  1747.   x VALUE - a list of LSP entries of the form: 
  1748.  
  1749.  
  1750.  
  1751.  
  1752.  
  1753.  
  1754.  
  1755.  
  1756.  
  1757.  
  1758.  
  1759.  
  1760.  
  1761.  
  1762.  
  1763.  
  1764.  
  1765.  
  1766.  
  1767.  
  1768.  
  1769.  
  1770.  
  1771.  
  1772.  
  1773. Callon                                                         [Page 65] 
  1774.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1775.  
  1776.                                                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           +--------------------------------+ 
  1777.  
  1778. 7 REMAINING LIFETIME - Remaining Lifetime of LSP. 
  1779.  
  1780. 7 LSP ID - 8 octet ID of the LSP to which this entry refers. 
  1781.  
  1782. 7 LSP SEQ NUMBER  -Sequence number of LSP. 
  1783.  
  1784. 7 CHECKSUM - Checksum reported in LSP. 
  1785.  
  1786. The entries shall be sorted into ascending LSPID order (the LSP number octet of the LSPID is the least significant octet). 
  1787.  
  1788.  
  1789.  
  1790.  
  1791.  
  1792.  
  1793.  
  1794.  
  1795.  
  1796.  
  1797.  
  1798.  
  1799.  
  1800.  
  1801.  
  1802.  
  1803.  
  1804.  
  1805.  
  1806. Callon                                                         [Page 66] 
  1807.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1808.  
  1809.                                  Annex C                   Dijkstra Calculation and Forwarding 
  1810.  
  1811.    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. 
  1812.  
  1813.    This annex is included for informational purposes. 
  1814.  
  1815. C.1 SPF Algorithm for IP and Dual Use 
  1816.  
  1817.    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]. 
  1818.  
  1819.    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). 
  1820.  
  1821.    A number of additional optimizations are possible: 
  1822.  
  1823.    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. 
  1824.  
  1825.    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. 
  1826.  
  1827.    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. 
  1828.  
  1829.    The original SPF algorithm does not support load splitting over 
  1830.  
  1831.  
  1832.  
  1833. Callon                                                         [Page 67] 
  1834.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1835.  
  1836.     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. 
  1837.  
  1838. C.1.1 Databases 
  1839.  
  1840.   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: 
  1841.  
  1842.       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. 
  1843.  
  1844.       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. 
  1845.  
  1846.       d(N) is N's distance from S (i.e., the total metric value       from N to S). 
  1847.  
  1848.       {Adj(N)} is a set of valid adjacencies that S may use for       forwarding to N. 
  1849.  
  1850.    When a system is placed on PATHS, the path(s) designated by its    position in the graph is guaranteed to be a shortest path. 
  1851.  
  1852.   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. 
  1853.  
  1854.   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. 
  1855.  
  1856.  
  1857.  
  1858. Callon                                                         [Page 68] 
  1859.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1860.  
  1861.    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. 
  1862.  
  1863.    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. 
  1864.  
  1865.    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. 
  1866.  
  1867. C.1.2 Use of Metrics in the SPF Algorithm 
  1868.  
  1869.    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). 
  1870.  
  1871.    d(N) is initialized to [internal metric = 0, external metric = 0]. 
  1872.  
  1873.    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. 
  1874.  
  1875.    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). 
  1876.  
  1877. C.1.3 Overview of the Algorithm 
  1878.  
  1879.    The basic algorithm, which builds PATHS from scratch, starts out by    putting the system doing the computation on PATHS (no shorter path to 
  1880.  
  1881.  
  1882.  
  1883. Callon                                                         [Page 69] 
  1884.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1885.  
  1886.     SELF can possibly exist). TENT is then pre-loaded from the local    adjacency database. 
  1887.  
  1888.    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. 
  1889.  
  1890.    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. 
  1891.  
  1892.    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,*>. 
  1893.  
  1894.    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. 
  1895.  
  1896.    When TENT is empty, PATHS is complete. 
  1897.  
  1898.    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. 
  1899.  
  1900. C.1.4 The Algorithm 
  1901.  
  1902.    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. 
  1903.  
  1904.  
  1905.  
  1906. Callon                                                         [Page 70] 
  1907.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1908.  
  1909.     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). 
  1910.  
  1911.    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]. 
  1912.  
  1913.    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. 
  1914.  
  1915.    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). 
  1916.  
  1917.    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. 
  1918.  
  1919.    The SPF algorithm specified in section C.2.3 of [1] is amended to    appear as follows: 
  1920.  
  1921.  
  1922.  
  1923.  Callon                                                         [Page 71] 
  1924.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1925.  
  1926.     Step 0: Initialize TENT and PATHS to empty. Initialize tentlength to    [internalmetric=0, externalmetric=0]. 
  1927.  
  1928.    (tentlength is the pathlength of elements in TENT that we are    examining.) 
  1929.  
  1930.    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). 
  1931.  
  1932.    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: 
  1933.  
  1934.          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} 
  1935.  
  1936.          Adj(N) = the adjacency number of the adjacency to N 
  1937.  
  1938.    3) If a triple <N,x,{Adj(M)}> is in TENT, then: 
  1939.  
  1940.          If x = d(N), then {Adj(M)} <--- {Adj(M)} U {Adj(N)}. 
  1941.  
  1942.    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). 
  1943.  
  1944.    5) If x < d(N), do nothing. 
  1945.  
  1946.    6) If x > d(N), remove <N,x,{Adj(M)}> from TENT and add the triple       <N,d(N),{Adj(N)}>. 
  1947.  
  1948.    7) If no triple <N,x,{Adj(M)}> is in TENT, then add <N,d(N),{Adj(N)}>       to TENT. 
  1949.  
  1950.  
  1951.  
  1952. Callon                                                         [Page 72] 
  1953.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1954.  
  1955.     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. 
  1956.  
  1957.    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: 
  1958.  
  1959.          d(N) = metric.k  of the circuit.          Adj(N) = the adjacency number of the adjacency to the DR. 
  1960.  
  1961.    10) Go to Step 2. 
  1962.  
  1963.    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). 
  1964.  
  1965.    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: 
  1966.  
  1967.          dist(P,N) = d(P) + metric.k(P,N) 
  1968.  
  1969.    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 
  1970.  
  1971.          <P,d(P),{Adj(P)}> 
  1972.  
  1973.    and metric.k(P,N) is the cost of the link from P to N as reported in    P's link state PDU. 
  1974.  
  1975.    2) If dist(P,N) > MaxPathMetric, then do nothing. 
  1976.  
  1977.    3) If <N,d(N),{Adj(N)}> is in PATHS, then do nothing. 
  1978.  
  1979.          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 
  1980.  
  1981.  
  1982.  
  1983. Callon                                                         [Page 73] 
  1984.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  1985.  
  1986.           done here to ensure that d(N) is in fact less than dist(P,N) 
  1987.  
  1988.    4) If a triple <N,x,{Adj(N)}> is in TENT, then: 
  1989.  
  1990.      a) If x = dist(P,N), then {Adj(N)} <-- {Adj(N)} U {Adj(P)}. 
  1991.  
  1992.      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). 
  1993.  
  1994.      c) if x < dist(P,N), do nothing. 
  1995.  
  1996.      d) if x > dist(P,N), remove <N,x,{Adj(N)}> from TENT, and add         <N,dist(P,N),{Adj(P)}> 
  1997.  
  1998.    5) if no triple <N,x,{Adj(N)}> is in TENT, then add       <N,dist(P,N),{Adj(P)}> to TENT. 
  1999.  
  2000.    Step 2: If TENT is empty, stop. Else: 
  2001.  
  2002.    1) Find the element <P,x,{Adj(P)}>, with minimal x as follows: 
  2003.  
  2004.      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. 
  2005.  
  2006.      b) Remove <P,tentlength,{Adj(P)}> from TENT. 
  2007.  
  2008.      c) Add <P,d(P),{Adj(P)}> to PATHS. 
  2009.  
  2010.      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. 
  2011.  
  2012.      e) If the system just added to PATHS was an end system, go to 
  2013.  
  2014.  
  2015.  
  2016. Callon                                                         [Page 74] 
  2017.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  2018.  
  2019.          step 2. Else go to Step 1. 
  2020.  
  2021.    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). 
  2022.  
  2023. C.2 Forwarding of IP packets 
  2024.  
  2025.    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. 
  2026.  
  2027. C.2.1 Basic Method for Forwarding IP packets 
  2028.  
  2029.    For level 1-only routers: 
  2030.  
  2031.    - Determine if the IP destination address matches any entry in the      level 1 forwarding table for the specified TOS. 
  2032.  
  2033.    - Determine if the IP destination address matches any entry in the      level 1 forwarding table for the default TOS. 
  2034.  
  2035.    - If default TOS resulted in more specific entry, forward according      to default TOS. 
  2036.  
  2037.    - If equally specific entries found, or specified TOS resulted in      more specific entry, forward according to specified TOS 
  2038.  
  2039.    - If no entry was found (which includes no default route entry), then      destination is unreachable. 
  2040.  
  2041.    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. 
  2042.  
  2043.    For routers which are both level 1 and level 2 routers: 
  2044.  
  2045.    - Determine if the IP destination address matches any entry in the      level 1 forwarding table for the specified TOS. 
  2046.  
  2047.    - Determine if the IP destination address matches any entry in the 
  2048.  
  2049.  
  2050.  
  2051. Callon                                                         [Page 75] 
  2052.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  2053.  
  2054.       level 1 forwarding table for the default TOS. 
  2055.  
  2056.    - 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. 
  2057.  
  2058.    - If equally specific entries found, or specified TOS resulted in      more specific entry, forward according to specified TOS 
  2059.  
  2060.    - If no entry found: 
  2061.  
  2062.    - Determine if the IP destination address matches any entry in the      level 2 internal forwarding table for the specified TOS. 
  2063.  
  2064.    - Determine if the IP destination address matches any entry in the      level 2 internal forwarding table for the default TOS. 
  2065.  
  2066.    - If default TOS resulted in more specific entry, forward according      to default TOS. 
  2067.  
  2068.    - If equally specific entries found, or specified TOS resulted in      more specific entry, forward according to specified TOS 
  2069.  
  2070.    - If no entry found: 
  2071.  
  2072.    - Determine if the IP destination address matches any entry in the      level 2 external forwarding table for the specified TOS. 
  2073.  
  2074.    - Determine if the IP destination address matches any entry in the      level 2 external forwarding table for the default TOS. 
  2075.  
  2076.    - If default TOS resulted in more specific entry, forward according      to default TOS. 
  2077.  
  2078.    - If equally specific entries found, or specified TOS resulted in      more specific entry, forward according to specified TOS 
  2079.  
  2080.    - If no entry is found, then destination is unreachable 
  2081.  
  2082.    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. 
  2083.  
  2084.    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 
  2085.  
  2086.  
  2087.  
  2088. Callon                                                         [Page 76] 
  2089.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  2090.  
  2091.     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. 
  2092.  
  2093. C.2.2 Reduction of IP Forwarding Databases 
  2094.  
  2095.    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. 
  2096.  
  2097.    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). 
  2098.  
  2099.    Non-contiguous subnet masks can be configured to violate this    assumption. For example, consider the two entries: 
  2100.  
  2101.    - A=[address="01010101 00000101 00000000 00000000",      mask="11111111 00001111 00000000 00000000"] 
  2102.  
  2103.    - B=[address="01010101 01010000 00000000 00000000",      mask="11111111 11110000 00000000 00000000"] 
  2104.  
  2105.    In this case neither entry contains the other. Specifically; 
  2106.  
  2107.    - there are IP addresses which match both A and B (e.g.,      "01010101 01010101 xxxxxxxx xxxxxxxx"), 
  2108.  
  2109.    - there are IP addresses which match A but not B (e.g.,      "01010101 11110101 xxxxxxxx xxxxxxxx") 
  2110.  
  2111.    - there are IP addresses which match B but not A (e.g.,      "01010101 01011111 xxxxxxxx xxxxxxxx"). 
  2112.  
  2113.  
  2114.  
  2115.  Callon                                                         [Page 77] 
  2116.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  2117.  
  2118.     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: 
  2119.  
  2120.    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). 
  2121.  
  2122.    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. 
  2123.  
  2124.    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: 
  2125.  
  2126.       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. 
  2127.  
  2128.       b) Otherwise, copy entry X into the overall IP forwarding database          for the specific TOS. 
  2129.  
  2130.    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. 
  2131.  
  2132.       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. 
  2133.  
  2134.       b) Otherwise, copy entry X into the overall IP forwarding database          for the specific TOS. 
  2135.  
  2136.    This method will result in one forwarding database for each supported    TOS. The forwarding of packets can then be simplified to be as follows: 
  2137.  
  2138.  
  2139.  
  2140. Callon                                                         [Page 78] 
  2141.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  2142.  
  2143.     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. 
  2144.  
  2145.    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: 
  2146.  
  2147.       a) If k is more specific than j, forward according to entry k 
  2148.  
  2149.       b) If j and k are equally specific, forward according to entry j 
  2150.  
  2151.       c) If j is more specific than k, forward according to entry j 
  2152.  
  2153.  
  2154.  
  2155.  
  2156.  
  2157.  
  2158.  
  2159.  
  2160.  
  2161.  
  2162.  
  2163.  
  2164.  
  2165.  
  2166.  
  2167.  
  2168.  
  2169.  
  2170.  
  2171.  
  2172.  
  2173.  
  2174.  
  2175.  
  2176.  
  2177.  
  2178.  
  2179.  
  2180.  
  2181.  
  2182.  
  2183.  
  2184.  
  2185.  
  2186.  
  2187. Callon                                                         [Page 79] 
  2188.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  2189.  
  2190.                                    Annex D                       Use of the Authentication Field 
  2191.  
  2192.    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. 
  2193.  
  2194.    This annex is included for informational purposes. 
  2195.  
  2196. D.1 Authentication Field in IS-IS packets 
  2197.  
  2198.    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: 
  2199.  
  2200.   7 Authentication Information -- Information used to authenticate     the PDU 
  2201.  
  2202.     x CODE - 133 
  2203.  
  2204.     x LENGTH - total length of the value field 
  2205.  
  2206.     x VALUE -                                               No. of Octets           +--------------------------------+           |      Authentication Type       |      1           +--------------------------------+           |   Authentication Information   |      VARIABLE           +--------------------------------+ 
  2207.  
  2208. The Authentication Type is assigned as follows: 
  2209.  
  2210.       Type  =  0        reserved 
  2211.  
  2212.       Type  =  1        simple password 
  2213.  
  2214.       Type  >  1        reserved 
  2215.  
  2216.  
  2217.  
  2218.  
  2219.  
  2220.  Callon                                                         [Page 80] 
  2221.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  2222.  
  2223.  D.2 Authentication Type 1 - Simple Password 
  2224.  
  2225.    Using this authentication type, a variable length password is passed    in the clear (i.e., not encrypted) in the Authentication Information    field. 
  2226.  
  2227.    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. 
  2228.  
  2229.    The password shall be configured on a per-link, per-area, and per-    domain basis. Specifically, when this form of authentication is used: 
  2230.  
  2231.    - IS-IS Hello and 9542 IS Hello packets shall contain the      per-link password 
  2232.  
  2233.    - Level 1 Link State Packets shall contain the per-area password 
  2234.  
  2235.    - Level 2 Link State Packets shall contain the per-domain password 
  2236.  
  2237.    - Level 1 Sequence Number Packets shall contain the per-area password 
  2238.  
  2239.    - Level 2 Sequence Number Packets shall contain the per-domain      password 
  2240.  
  2241.    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. 
  2242.  
  2243.    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 
  2244.  
  2245.   Callon                                                         [Page 81] 
  2246.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  2247.  
  2248.     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}. 
  2249.  
  2250.    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. 
  2251.  
  2252.  
  2253.  
  2254.  
  2255.  
  2256.  
  2257.  
  2258.  
  2259.  
  2260.  
  2261.  
  2262.  
  2263.  
  2264.  
  2265.  
  2266.  
  2267.  
  2268.  
  2269.  
  2270.  
  2271.  
  2272.  
  2273.  
  2274.  
  2275.  
  2276.  
  2277.  
  2278.  
  2279.  
  2280.  
  2281.  
  2282.  
  2283.  
  2284.  
  2285.  
  2286.  Callon                                                         [Page 82] 
  2287.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  2288.  
  2289.                                    Annex E              Interaction of the Integrated IS-IS with Brouters 
  2290.  
  2291.    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. 
  2292.  
  2293.    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. 
  2294.  
  2295.    This annex is included for informational purposes. 
  2296.  
  2297. E.1 The Problem 
  2298.  
  2299.    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. 
  2300.  
  2301.    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: 
  2302.  
  2303.                       |                               |                 +----+---+                      +----+---+                 | Router |                      | Router |                 |   X    |                      |   Y    |                 +----+---+                      +----+---+                      |                               |                 -----+------------+-   -+------------+----                                   |     |                                 +-+-----+-+                                 | Brouter |                                 |    B    |                                 +---------+ 
  2304.  
  2305.     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 
  2306.  
  2307.  
  2308.  
  2309. Callon                                                         [Page 83] 
  2310.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  2311.  
  2312.     and Y as if they are on the same LAN, and so they learn each others    48-bit Ethernet addresses and exchange routing information. 
  2313.  
  2314.    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. 
  2315.  
  2316.    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. 
  2317.  
  2318.    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. 
  2319.  
  2320. E.2 Possible Solutions 
  2321.  
  2322. E.2.1 More Sophisticated Brouter 
  2323.  
  2324.    One solution is that brouter B needs to be a little more    sophisticated. In particular, it needs to use the following rules: 
  2325.  
  2326.    - For packets which are not IP packets, act as a bridge (this is the      same as before). 
  2327.  
  2328.    - For IP packets sent to an Ethernet broadcast or multicast address,      act as an IP router (this is also the same as before). 
  2329.  
  2330.    - For IP packets sent to my own Ethernet 48-bit address(es), act as      an IP router (this is also the same as before). 
  2331.  
  2332.    - 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). 
  2333.  
  2334.    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. 
  2335.  
  2336.  
  2337.  
  2338.  
  2339.  
  2340. Callon                                                         [Page 84] 
  2341.  RFC 1195         OSI ISIS for IP and Dual Environments     December 1990 
  2342.  
  2343.  E.2.2 Dual Router / Brouter 
  2344.  
  2345.    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. 
  2346.  
  2347.  
  2348.  
  2349.  
  2350.  
  2351.  
  2352.  
  2353.  
  2354.  
  2355.  
  2356.  
  2357.  
  2358.  
  2359.  
  2360.  
  2361.  
  2362.  
  2363.  
  2364.  
  2365.   
  2366.  
  2367.  
  2368.  
  2369.  
  2370.  
  2371.  
  2372.  
  2373.  
  2374.  
  2375.  
  2376.  
  2377.  
  2378.  
  2379.  
  2380.  
  2381.  
  2382.  
  2383.  
  2384.  
  2385.  Callon                                                         [Page 85] 
  2386.  
  2387.