All rights reserved.
%sccs.include.redist.man%
@(#)esis.4 6.1 (Berkeley) 07/25/90
The mapping between NSAP addresses and SNPA addresses is accomplished by transmitting hello PDUs between the cooperating Systems. These PDUs are transmitted whenever the configuration timer expires. When a hello PDU is received, the SNPA address that it conveys is stored in the routing table for as long as the holding time in the PDU suggests. The default holding time (120 seconds) placed in the hello PDU, the configuration timer value, and the system type (End System or Intermediate System) may be changed by issuing an SIOCSSTYPE ioctl(), which is defined in /sys/netiso/iso_snpac.h.
The protocol behaves differently depending on whether the System is configured as an End System or an Intermediate System.
If an NPDU is forwarded by the End System, a redirect PDU will not be generated. However, redirect PDUs received will be processed. This processing consists of adding an entry in the routing table. If the redirect is towards an Intermediate System, then an entry is made in the routing table as well. The entry in the routing table will may mark the NSAP address contained in the redirect PDU as the gateway for the destination system (if an NET is supplied), or will create a route with the NSAP address as the destination and the SNPA address (embodied as a link-level sockaddr) as the gateway.
If the System is configured as an End System, it will report all the NSAPs that have been configured using the ifconfig command, and no others. It is possible to have more than one NSAP assigned to a given interface, and it is also possible to have the same NSAP assigned to multiple interfaces. However, any NSAP containing an NSEL that is consistent with the nsellength option (default one) of any interface will be accepted as an NSAP for this System.
When an NPDU is forwarded out on the same interface that the NPDU arrived upon, a redirect PDU is generated.
To facilitate communications with systems which do not use ES-IS, one may add a route whose destination is a sockaddr_iso containing the NSAP in question, and the gateway being a link-level sockaddr, either by writing a special purpose program, or using the route (8) command e.g.:
route add -iface -osi 49.0.4.8.0.2b.b.83.bf -link qe0:8.0.2b.b.83.bf
If the System is configured as an End System and has a single network interface which does not support multicast reception, it is necessary to manually configure the location of an IS, using the route command in a similar way. There, the destination address should be ``default'' (spelled out literally as 7 ascii characters), and the gateway should be once again be a link-level sockaddr specifying the SNPA of the IS.
``End system to Intermediate system routing exchange protocol for use in conjunction with the Protocol for providing the connectionless-mode network service'' (ISO 9542).