Internet DRAFT - draft-katz-isis-3way

draft-katz-isis-3way



HTTP/1.1 200 OK
Date: Tue, 09 Apr 2002 09:27:47 GMT
Server: Apache/1.3.20 (Unix)
Last-Modified: Tue, 04 Jun 1996 16:45:37 GMT
ETag: "361d9f-2162-31b46831"
Accept-Ranges: bytes
Content-Length: 8546
Connection: close
Content-Type: text/plain






INTERNET-DRAFT                                                 Dave Katz
Expiration: October 1996                             cisco Systems, Inc.
File: draft-katz-isis-3way-00.txt                             April 1996


        Three-Way Handshake for IS-IS Point-to-Point Adjacencies

Status of this Memo

   This document is an Internet-Draft.  Internet-Drafts are working
   documents of the Internet Engineering Task Force (IETF), its areas,
   and its working groups.  Note that other groups may also distribute
   working documents as Internet-Drafts.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as ``work in progress.''

   To learn the current status of any Internet-Draft, please check the
   ``1id-abstracts.txt'' listing contained in the Internet-Drafts Shadow
   Directories on ds.internic.net (US East Coast), nic.nordu.net
   (Europe), ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific
   Rim).


Abstract

   The IS-IS routing protocol (ISO 10589) [1] does not use a three-way
   handshake when establishing adjacencies on point-to-point media.
   This paper defines an backward-compatible extension to the protocol
   that provides for a three-way handshake, in order to provide a
   solution to certain types of failures that may otherwise occur.  It
   is fully interoperable with systems that do not support the
   extension.

   This extension has been implemented in cisco routers;  this paper is
   provided as information to the Internet community in order to allow
   interoperable implementations to be built by other vendors.


1.0  Introduction

   The IS-IS protocol provides only a two-way handshake when
   establishing adjacencies on point-to-point links.  The basic
   mechanism defined in the standard is that each side declares the
   other side to be reachable if a Hello packet is heard from it.  Once
   this occurs, each side then sends a Complete Sequence Number PDU



D. Katz                   Expires October 1996                  [Page 1]

INTERNET-DRAFT         IS-IS Three-Way Handshake          April 13, 1996


   (CSNP) to trigger database synchronization.

   Two failure modes are known.  First, if the link goes down and then
   comes back up, or one of the systems restarts, and the CSNP packet is
   lost, and the network has a cut set of one through the link, the link
   state databases on either side of the link will not synchronize for a
   full LSP refresh period (fifteen minutes).

   A second, more serious failure mode was recently discovered.  If the
   link fails in only one direction, the failure will only be detected
   by one of the systems.  Normally, this is not a serious issue; only
   one of the two systems will announce the adjacency in its link state
   packets, and the SPF algorithm will thus ignore the link.  However,
   if there are two or more parallel links between the systems and one
   of them fails in one direction, SPF will still calculate paths
   between the two systems, and the system that cannot detect the
   failure will attempt to pass traffic down the failed link (in the
   direction that does not work).


2.0  Overview of Extension

   The intent is to provide a three-way handshake for point-to-point
   adjacency establishment in an backward compatible fashion.  This is
   done by providing an optional mechanism that allows each system to
   report its adjacency state;  this allows a system to only declare an
   adjacency to be up if it knows that the other system is receiving its
   IS-IS Hello (IIH) packets.

   The mechanism is essentially the same as the one defined in the
   Netware Link Services Protocol (NLSP) [2], a variant of IS-IS used
   for routing IPX traffic.  The only real difference between this
   mechanism and the one used in NLSP is the location where the
   information is carried; NLSP used two of the reserved bits in the IIH
   header, whereas this solution adds a separate option to the IIH.  In
   theory, using the reserved header bits should be backward compatible,
   since systems are supposed to ignore them.  However, it was felt that
   this was risky, as the use of untested mechanisms such as this have
   led to compatibility problems in the past in other protocols.  New
   option codes, on the other hand, have been demonstrated to work
   properly, as the deployment of Integrated IS-IS for IP [3] has done
   exactly this.  It is also worth noting that the encoding used in the
   NLSP solution does not lend itself to backward compatibility.

   The new mechanism only comes into play when the remote system
   includes the new option in its IIH packet;  if the option is not
   present, it is assumed that the system does not support the new
   mechanism, and so the old procedures are used.



D. Katz                   Expires October 1996                  [Page 2]

INTERNET-DRAFT         IS-IS Three-Way Handshake          April 13, 1996


3.0  Details

3.1  Syntax

   A new IS-IS Option type, "Point-to-Point Adjacency State", is
   defined:

          Type = 0xF0 (decimal 240)
          Length = 1
          Value = adjacency state:
            0 = Up
            1 = Initializing
            2 = Down

   Any system that supports this mechanism shall include this option in
   its Point-to-Point IIH packets.

   Any system that does not understand this option will ignore it, and
   (of course) will not include it in its own IIH packets.

   Any system that is able to process this option shall follow the
   procedures below.


3.2 Elements of Procedure

   The new procedure is added to the IS-IS point-to-point IIH state
   machine after the basic validity checks have been made, and before
   the existing state table is used.  The existing procedures are only
   executed if the neighbor is in the proper state for the adjacency to
   come up.

   Add a subsection 8.2.3 e):

     The IS shall include the Point-to-Point Adjacency State field in
     the transmitted Point-to-Point IIH PDU, including the current state
     of the adjacency with its neighbor on the link.  If no adjacency
     exists, the state shall be reported as Down.

   Add a section 8.2.4.1a, Three-Way Handshake:

     A received Point-to-Point IIH PDU may or may not contain the
     Point-to-Point Adjacency State option.  If it does not, the link is
     assumed to be functional in both directions, and the procedures
     described in section 8.2.4.2 are followed.

     If the option is present, the state table below is used to
     determine the next state, based on the current adjacency state and



D. Katz                   Expires October 1996                  [Page 3]

INTERNET-DRAFT         IS-IS Three-Way Handshake          April 13, 1996


     the received state value from the option.

     If the new state is "Down", an adjacencyStateChange(Down) event is
     generated with the reason "Neighbor restarted" and the adjacency
     shall be deleted.

     If the new state is "Initializing", the adjacency state shall be
     set to "Initializing" and no further action is taken.

     If the new state is "Up", the processing described in section
     8.2.4.2 shall be performed.


                                             Received State
                               Down           Initializing          Up
                         -------------------------------------------------
           Down          |  Initializing      Initializing         Down
                         |
     Adj   Initializing  |  Initializing          Up                Up
     State               |
           Up            |  Initializing          Up                Up


4.0  References

   [1] ISO, "Intermediate system to Intermediate system routeing
       information exchange protocol for use in conjunction with the
       Protocol for providing the Connectionless-mode Network Service
       (ISO 8473)," ISO/IEC 10589:1992.

   [2] Novell, Inc., "Netware Link Services Protocol Specification,
       Version 1.0", February 1994.

   [3] Callon, R., "OSI ISIS for IP and Dual Environment," RFC 1195,
       December 1990.


Author's Address

   Dave Katz
   cisco Systems
   170 W. Tasman Dr.
   San Jose, CA  95134-1706  USA

   Phone:  +1 408 526 8284
   Email:  dkatz@cisco.com





D. Katz                   Expires October 1996                  [Page 4]