Ref: 99980022 Title: Information on the Intelligent LAN Adapter (ILANA) Card Date: 1/1/88 Copyright 3Com Corporation, 1991. All rights reserved. Intelligent LAN Adapter (ILANA) Card Run 3Com's 3+ Network Operating System while supporting up to eight terminal sessions! Intelligent Local Area Network Adapter card turns the personal computer into the business workstation. The PC has a memory problem With Terminate and Stay Resident (TSR) software and various device drives (printers, serial communications) eating up available RAM, applications are finding less and less room to run. An IBM PC with 640K bytes of memory and running 3Com's 3Plus workstation drivers, Microsoft Windows, and Microsoft Word does not have enough remaining memory to run the Word spelling checker. The PCs is also overworked. At the same time, users are demanding more and more performance. Considerable processing is necessary to provide an interface to a 10 Mbps LAN. All LAN traffic must be constantly monitored; pertinent traffic must be acknowledged; established traffic must be maintained. In addition, various levels of communication (from data link level to presentation level) must be tied together perfectly, making them invisible to the end-user application. PC's were not designed to directly interface to a network. In fact, the COM1 serial port running 9,600 bits-per- second constant data traffic can completely consume an IBM PC. Is the PC doomed to collapse under the pressure? Maybe, but not from the network. Now the enormous processing requirements of PC networking have been removed from the overburdened PC by the intelligent network adapter card. First-generation network adapters provided enough processing power to avoid data link and most network level processing on the PC. However, most transport and session level protocols were handled by the PC. This necessitated a lot of code, over 100 kilobytes (KB), in the PC transient memory and considerable processor overhead. Without the processing power, the idea of multiple network connections to different network devices (hosts, printers, Public Data Networks) was only a dream. ILANA-Intelligent LAN Adapter The ILANA is the first in the next generation of network adapter cards for PCs. All TCP/IP protocols, including Telnet, run on the ILANA card. Only the interface (user or program) portions of the network control code run in the PC. This increases the PC's performance and drastically reduces the PC memory required by the adapter. The PC accesses the ILANA board through a shared memory interface. In other words, a portion of the ILANA's 512K of RAM appears to the PC as memory on the PC bus. This is different from DOS memory, which is only the first 630K of the 1M byte of memory space in a PC. The ILANA also has access to this memory (thus it is shared). This portion of RAM is also referred to as the window, and its size can be adjusted between 64 KB and 128 KB, depending on how much address space is available in the user's PC. The beginning address of the window in PC memory, referred to as the base address, is selectable as well. The window is used for communications buffer space, and access to the window is coordinated using a PC interrupt. The ILANA supports any unreserved PC interrupt level. The ILANA board does not support DMA transfers. This is not an oversight. The window has been designed to be large enough so that data is normally not copied between PC memory and the window. Instead, data is placed directly in the window by PCS/1 software (see New Products), for transmission once the entire packet is complete. (In addition, DMA transfers in a PC/AT are slower than memory copies, due to the design of the PC/AT. Most other attempts at intelligent adapters do not have windows large enough to allow this type of implementation and have to copy data between the window and PC RAM. The ILANA board is available in both the PC/AT (XT/286) form factor and the PC/XT form factor. The primary difference between the two is the width of the PC bus. The PC/AT form factor has a 16-bit wide bus, so that two bytes are transferred across the bus when a memory location is accessed. The PC/XT form factor has an eight-bit wide bus so that only a single byte is transferred when a memory location is accessed. In theory, the PC/AT bus should offer higher performance than the PC/XT bus. In practice, there is no significant difference because the PC bus is not a bottleneck. A more important difference is that the PC/AT version allows the choice of a 64K window or a 128K window, whereas the PC/XT version only has a 64KB window. The bigger the window, the more communications buffers and the more available sessions. The 64 KB window configuration can support 4 Telnet sessions, 4FTP sessions, and 24 NETBIOS sessions. The 128 KB window configuration can support 8 Telnet sessions, 8 FTP sessions, and 48 NETBIOS sessions. In mose cases this is immaterial as well, except for PCs that function as servers with a NETBIOS application. The PC/AT version supports Ethernet (802.3) and Bridge Broadband; while the PC/XT version supports Ethernet (802.3) and thin Ethernet (a.k.a. Cheapernet). Note that the PC/XT version will operate in an AT-call machine if a thin Ethernet adapter is desired. The reverse is not true. A PC/AT version will not work in a PC/XT. The PC/XT version and the PCS/1 software will work in the new IBM PS/2 Model 30. Network Software, PCS/1 ILANA network software comprises into two components. The first is the network software, which handles all of the protocol processing as well as provides communication services to application software. The second component, discussed later, is the application software, which performs the actual presentation services to the PC user. The network software, although in large part invisible to the user, is the basis for the flexibility and sophisticated capabilities of the PCS/1. Protocols The TCP/IP protocols, including Telnet (client only), TCP, IP, UDP, ARP, Bridge Network Management, and NETBIOS, run on the ILANA board. This provides the two basic advantages of the intelligent adapter. First, the PC processor does not have to do protocol processing, increasing performance and freeing the PC processor for application processing. Second, PC memory consumption is dramatically reduced. Although this is normal for an implementation using an intelligent adapter, it is unusual for Telnet and NETBIOS to be run on the adapter (most implementations run these on the PC). Bridge has spent a considerable effort implementing these protocols on the ILANA board in order to provide multiple session support and to further off load the PC. In fact, only the software interfaces and the user interface run in the PC. Everything else runs on the ILANA. For all practical purposes, the ILANA card with the PCS/1 network software running on it, is equivalent to a CS/50 embedded inside the PC. Application software allows the PC user to access this personal communications server via the software interfaces provided by the memory-resident portion of the PCS/1 software. The interface to the ILANA board is a driver (1KB) that is loaded by DOS when DOS is first booted. The ILANA board itself is loaded by a DOS applicaiton that runs immediately after all drivers have been loaded. This loader reads that ILANA program from the PC's disk and moves it into the ILANA's RAM. During this phase, DOS also loads the Terminate-and-Stay-Resident (TSR) program that provides the software interface to the PCS/1 protocols and a TSR program that provides the Bridge Application Program Interface. BAPI The Bridge Application Program Interface (BAPI) provides a way for network applications developers to offer customer solutions for network management and other complex communications problems. The Bridge Application Program Interface serves as an interface to Telnet that application software, such as a terminal emulator, can use to provide a PC user with TCP/IP connection services. This interface is used by Bridge-supplied emulators, including the simple terminal emulators, PCSVT, and PCS3270, as well as by third-pary terminal emulation programs. BAPI is similar to the Interrput 14H Emulation supported by EtherTerm, but differs in several ways. First, extensions have been added to allow application software to transfer blocks of data to the network, improving performance, and to directly control session establishment and termination, increasing flexibility. Second, BAPI provides a CS/1-like user interface to applications that do not use the session control extensions. In addition, BAPI provides a mechanism to allow multiple session support. BAPI is a key component because it allows compatible terminal emulators to emulate almost any terminal, from a simple TTY to an IBM 3270 display station. NETBIOS NETBIOS emulation provides a mechanism for industry-standard software to communication over the LAN. NETBIOS is a standard established by IBM (developed by IBM and Sytek) that defines an interface to the PC Basic Input/Output System (BIOS) extension. It allows application software to transmit and recieve packets over a local area network. The NETBIOS specification defines a software interface to the transport and datagram mechanisms of the LAN hardware. The Intelligent LAN Adapter provides the flexibility to implement the NETBIOS interface in software, thus the term NETBIOS emulation. All of the NETBIOS functions defined by the IBM are supported by the NETBIOS emulation. Bridge's NETBIOS emulation utilizes TCP/IP to provde NETBIOS services to application software. This implementation of NETBIOS over TCP/IP fully conforms to the standard defined by RFC (Request for Comment) 1001 and 1002. NETBIOS only defines an interface to the transport and datagram mechanisms of the LAN. It does not define the underlying mechanism, which in this case is TCP/IP. Other implementations of the NETBIOS interface use other protocols to provide the NETBIOS services to applications; for example, 3COM's implementation which uses XNS and IBM's implementation which uses a proprietary set of protocols. Thus one vendor's NETBIOS will, in most cases, not work with another vendors' NETBIOS. An exception to this occurs when both vendors' NETBIOS conform to RFC 1001 and 1002. In fact, the purpose of RFC 1001 and 1002 was to define a standard implementation of NETBIOS using TCP/IP protocols, so that different vendor's NETBIOS implementations can be made compatible. This is currently the only independent specification for NETBIOS implementation. 3Com/Novell Drivers 3Com's 3Plus and Novell's Netware software allow sharing of PC resources, such as disk drives, files and printers over a LAN. The ILANA's PCS/1 software can provide a compatible driver for either (that is, one 3Com driver or one Novell driver). The driver makes the ILANA appear to the 3Com or Novell software as a non-intelligent adapter with buffering capability. Everybody thinks they own the interface, but the ILANA is smart enough to manage the interface and provide services to LAN applications. Only one of these two, either 3Com or Novell software, may be installed in a PC at any one time. The full set of 3Com/Novell software runs in the PC, as it would with any other adapter card, and this has two benefits. First, the 3Com or Novell software can communicate with any other device on the network that runs the 3Com or Novell software, with whatever adapters installed to allow communication. Second, since 3Com and Novell use XNS protocols, a PC with either installed can be said to support multiple protocol stacks. This is important because LAN users are interested in being able to have access to as many LAN services as possible. More importantly, however, this can ease the transition to TCP/IP from XNS. When 3Com's 3Plus software is installed with the ILANA and its software, EtherTerm can be run in the PC (it uses the same 3Com drivers) to provide access to XNS Communications Servers until the Communications Servers are migrated to TCP/IP. ASYNCHRONOUS TERMINAL SERVICE Bridge provides two standard TTY terminal emulators and an optional VT100 emulator with the ILANA and PCS/1 Software Engine. All three use the BAPI interface. The two TTY terminal emulators can be used in conjunction with a DOS driver called ANSI.SYS that lets the PC emulate and ANSI (VT100subset) terminal. The GraphPoint TNET-05 product works in the same way and can also be used with the standard TTY emulators. TCP/IP FILE TRANSFER SERVICE TCP/IP file transfer service, supplied with the PCS/1 Software Engine, is a client-only implementation of TCP/IP FTP. The complete set of FTP commands found in most commercial implementations of FTP are supported. This makes for some interesting possibilities when running PC networking software, such as 3Plus, and the PCS/1FTP. By using FTP to direct a file to a 3Plus shared volume, a file can be copied directly from an TCP/IP host to a XNS file server (i.e., 3Server3). 3270 EMULATION SERVICE The 3270 emulation service is an optional software product for the PCS/1. This is the same 3270 emulation software used in EtherTerm/3270, except connections are established by specifying the name when invoking the emulator instead of using EtherTerm menus. LOCAL AREA NETWORK MANAGEMENT SERVICE Network management service is accessed through the PCSMGR program (part of the PCS/1 network software). Invoked from the DOS prompt, it provides a CS/1-like user interface, including context- sensitive help, to perform local network management activities. The PCS/1 software lets either 3Com or Novell software run in the PC and access existing servers on an Ethernet. This also allows a graceful migration from XNS to TCP/IP. The PCS/1 can even be used in non-Ethernet 3Com and Novell environments. Both vendors offer a way for the server to attach to more than one network (standard for Novell; 3Com offers NetConnect). For example, in a network that has a Novell server using Arcnet, you can put an Ethernet card in the server (with the Arcnet card) and let PCS/1 users access the Novell server over the Ethernet.