RFC 2583 (rfc2583) - Page 2 of 9


Guidelines for Next Hop Client (NHC) Developers



Alternative Format: Original Text Document



RFC 2583             Guidelines for NHC Developers              May 1999


   circuit to improve performance when needed.

   The NHS code replaces the ATMARP code in the ATMARP server.  Each NHS
   serves a set of destination client hosts and cooperates with other
   NHSs to resolve NHRP next hop requests within their own logical ATM
   network. The NHC to NHS and NHS to NHS protocol interactions are
   described in [2].  Other documents in the NHRP series define the
   general applicability [3] and the transition from ATMARP servers to
   NHSs [4].

   The NHC code replaces the ATMARP code in the local workstations.
   This code will take the destination IP address and map it into the
   ATM End Station Address (AESA) for both intra and inter LIS
   destinations.  The returned AESA will be stored in a local cache
   table.  In addition to storing the positive replies, the NHC will
   need to store the negative replies to avoid making repeated NHS calls
   when using the routed path.

   This document describes a base line method for caching the returned
   information.  Other methods may be used as long as the same
   functionality is provided.

3. IP Processing

   In the Classical IP LIS model [1] the TCP/IP protocol stack treats
   the ATM network as a simple data link layer protocol.  When an
   application sends data using the Classical IP protocol, IP performs a
   routing table lookup to determine if the destination is reachable via
   a local interface or whether an intermediate router is the next hop
   to the IP destination.

   If the destination is found to be local (e.g. in the same LIS as the
   source) the packet will be passed to the local ATM interface with the
   next hop IP address set to the destination nodes IP address.  At this
   point the ATMARP table will be searched to determine the ATM Address
   of the destination node.  If no ATMARP table entry is found an ATMARP
   request will be sent to the ATMARP server.  This server can reply
   with a positive (ACK) or negative (NAK) answer depending on the
   current information it has in its cache.  If an ACK is received the
   host's local ATMARP table is filled in appropriately and the source
   is now able to send IP datagrams to the destination.  If a NAK is
   returned, the calling application is notified of this error condition
   (e.g., ICMP destination unreachable).

   If the destination is found to be remote (e.g., in a different LIS
   from the source) the IP address of the next hop router is extracted
   from the IP routing table and the ATM Address of this router is
   looked up in the ATMARP table.  Since the router is in the same LIS



Carlson & Winkler            Informational