Service Advertisement Protocol (SAP) is a Novell proprietary protocol that advertises NetWare services on an IPX network. A service is a resource that IPX clients may want to use, such as a file service or print service. All services have a service type, which is denoted by a hexadecimal number. Some service types are defined by Novell, while others are proprietary to vendors that make services for NetWare. For example, SAP type 4 is the standard service type for NetWare file service, and SAP type 7 is the standard service type for printers.
By default, NetWare servers broadcast SAP packets every 60 seconds to advertise known services. Each NetWare server learns of SAP services in much the same way that it learns dynamic routing protocol information, and it builds a table of that information, called a SAP table.
Cisco routers enable SAP by default for all interfaces configured for IPX. A router builds a SAP table from SAP information learned from NetWare servers and other routers. To view the SAP table on a Cisco router, use the IOS EXEC command show ipx servers . The following example shows the output from show ipx servers on the ZIP network's SF-1 router:
SF-1# show ipx servers Codes: S - Static, P - Periodic, E - EIGRP, N - NLSP, H - Holddown, + = detail 2 Total IPX Servers Table ordering is based on routing and server info Type Name Net Address Port Route Hops Itf P 4 SF-MAIN 100.0001.0002.0006:0451 2/01 1 Et0 P 4 SF-ENG 100.0809.0001.0002:0451 2/01 1 Et0
This output shows that the SF-1 router has learned of two IPX servers, each offering a file service (shown as the number 4 in the first part of the server name). For each IPX service, you can see the IPX address of the server offering the service, the IPX route metric for the service, and the interface where the router heard the service. Both of the services in this example are identified as periodic, which means that they were learned by SAP (which advertises services on a regular periodic interval). We explore other methods to learn about IPX services in the sections "Configuring NLSP" and "Configuring IPX EIGRP" later in this chapter.
Just as you can have static IPX routes, you also can have static SAP table entries. You can define static SAP table entries using the global configuration command ipx sap . Static SAP table entries may be useful in some network environments, such as those that utilize dialup or dial backup.
After a server or router has a SAP table, it can respond to NetWare clients that ask for services. NetWare clients send IPX Get Nearest Server (GNS) messages to look for a server that can provide the services they need. NetWare servers that know about the service can respond to the client, giving it the specific IPX address where the service resides. A Cisco router can also respond to clients with the IPX address of a service if the service is in the router's SAP table. If a Cisco router hears a GNS message on a LAN segment where the service is known to exist, the router does not answer the GNS message.
The nearest server is defined as one that provides the service and has the shortest route in the SAP table. If multiple servers match this criteria, a Cisco router responds with the server most recently heard. This could result in multiple NetWare clients receiving GNS responses for the same server. This is not an optimal situation if the IPX network has multiple servers providing the same service for load balancing of client requests .
Use the ipx gns-round- robin global configuration command to tell the router to rotate in round-robin fashion through a set of eligible servers when it responds to GNS requests. See the following section for information on filtering GNS responses sent by a router on specific interfaces.