SNA Server Client/Server Architecture

SNA Server running on server machines in the network uses SnaBase, SnaServer, and SnaDMOD to communicate with API DLLs residing on client computers. Information is transferred by means of the DMOD transportation layer.

SNA Server’s many processes perform different functions and operate in an interrelated manner. The services in SNA Server can exchange messages between themselves and across the network. SNA Server uses SnaBase, SnaServer, and SnaDmod to perform various important functions on the server computer. Figure 3.4 shows detailed diagram of the server architecture.

Figure 3.4 This figure depicts the components SNA Server architecture uses to communicate with other server computers and clients on the network.

Four major APIs are used to support SNA sessions: Request Unit Interface (RUI), Session Level Interface (SLI), Advanced Program-to-Program Communication (APPC), and Common Programming Interface Communication (CPI-C). RUI and SLI, also collectively called Logical Unit Application (LUA), use LU profiles 0 through 3 over dependent LUs. APPC and CPI-C use LU profile LU 6.2 over either dependent or independent LUs. For more information regarding LUA and APPC, see the IBM publication SNA Technical Overview, document GC30-307.

SNA Server provides DLLs to support each of these APIs for SNA applications running on clients: WINRUI, WINSLI, WINAPPC, and WINCPIC. All four API DLLs translate the SNA API into client-server messages that are then sent through DMOD to an SNA Server node or nodes on the network. SNA Server also supports proprietary APIs for legacy 3270 emulation products: the 3270 Emulator Interface or the Function Management Interface (FMI). The FMI API DLL does not exist; applications using FMI interface directly with DMOD.

All four APIs provide the same basic application service: access to SNA LU sessions. The multiple APIs provide compatibility with the SNA architecture as it has evolved over more than 20 years of use. APPC and CPI-C are new APIs, and many applications require the use of the older LUA. Figure 3.5 shows a detailed diagram of the client architecture.

Figure 3.5 This figure depicts how the various components of the SNA Server client architecture work to communicate with SNA Server.

WINRUI and WINAPPC are event-driven DLLs. When a request is issued, the client can continue to perform other tasks while waiting for notification to come back that the request has completed (asynchronous communication).

WINSLI and WINCPIC are API DLLs that support session-oriented APIs. When a request is issued, the verb needs to be synchronized with the program. Until the request is completed, the client cannot go on to other tasks (synchronous communication).

SNA Server clients communicate with SNA Server computers using network protocols such as TCP/IP, IPX/SPX, Microsoft Networking, and Banyan VINES.

Other services provided by SNA Server are also implemented as client SNA applications based on one of the four API DLLs. These include TN3270, TN5250, Shared Folders Gateway, Host Print Service, Host Security Integration, and SNA Remote Access Service.