### Technical Briefing

Issue TB95/01
March, 1995

# TCP/IP at the Desktop

In the last few years there has been a dramatic increase in the use of TCP/IP and UNIX in traditional Token Ring environments. This technical briefing examines the reasons for their growing proliferation and discusses how Madge driver technology can add value in these open environments.Companies today are placing great emphasis on the network for the day-to-day operation of their business, with the responsibility of maintaining a fully operational network falling on the network administrator. Although Token Ring has many built-in management features to help in this process, the majority of network faults on passive MAU-based networks still require direct intervention from the network administrator in order to resolve them - an activity which is both time consuming and labour intensive.

## Growing Interest in TCP/IP & UNIX

Born in the world of academia and military defence back in the 1970s, TCP/IP is a set of communication protocols that support peer-to-peer communication between different host computers in local and wide area networks. Initially, TCP/IP was used to connect military establishments with universities, but as other hosts connected into the network, so did a global TCP/IP network emerge - the Internet.

As TCP/IP is a non-proprietary protocol, it was quickly recognised as the ideal choice for multi-vendor connectivity. Hence, in the 70s and 80s, it was widely adopted by minicomputer vendors that needed to ease the problem of connectivity with other vendor's equipment. In fact, most mainframe and mid-range computers have offered support for TCP/IP, in addition to proprietary connectivity protocols, for over a decade. Similarly, TCP-IP and SNMP have become de facto standards for the remote management of internetworking devices, such as routers.

According to the International Data Corporation (IDC), TCP/IP has now surpasssed IPX and NetBIOS as the most widely used protocol by number of nodes. The majority of these nodes are either: inter-network nodes, such as routers, minicomputers and mainframes; or clients and servers on Ethernet LANs. However, Token Ring users who previously relied on IPX, NetBIOS and/or LLC on the LAN and SNA for the WAN are now turning to TCP/IP. TCP/IP enables them to access the Internet, improve multi-vendor connectivity within their own private network, break down LAN barriers for fully distributed applications and exploit the full power of UNIX-based systems. With TCP/IP as a standard communications protocol, UNIX has matured from its academic origins, to become a well established and robust multi-user, multi-tasking operating system.

Indeed, UNIX is now commonly deployed to support both mission-critical applications for communications and client-server application servers, as well as for desktops that require the power and flexibility of multi-tasking.

## Key TCP/IP Applications

Together with the underlying TCP/IP protocol stack, all vendors of TCP/IP software provide a range of standard application programs. These provide the core functionality to allow file transfer, terminal emulation, remote program execution and other TCP/IP-based applications. These go beyond the rudimentary file and printer sharing services that come as standard with conventional LAN operating systems.

These generic TCP/IP applications are classic examples of the client-server model of computing. Any TCP/IP node can be either a server or client or both, and for each of these core functions there is a client portion and a server portion.

TCP/IP software, provided for different platforms, tends to favour either server or client functionality but often the same software suits both roles. More specialised client-server applications like SQL database access, typically come as separate server and client components and must be purchased in addition to the TCP/IP protocol stacks and generic applications.

There are many vendors of DOS and Windows TCP/IP packages, addressing the huge market for TCP/IP clients in LANs and WANs. They differentiate their products either by enhancing their offering in key functional areas (e.g. 3270 support, E-Mail access, Internet "gophers") or by focusing on slick technical implementation e.g. high performance and/or low memory usage.

The examples below illustrate the ways in which these generic TCP/IP applications address many of these internetworking needs.

### World-wide Web Access

The emergence of the World-wide Web as the user-friendly face of the Internet has led to increasing demand for IP access to the graphically-oriented information superhighway from every desktop. Network managers are therefore facing the challenge of providing a full TCP/IP stack on every networked PC, as Web browsers become a standard part of most corporate applications suites. Users with the latest desktop operating systems are able to take advantage of embedded TCP/IP, but older PC users have to resort to the memory hungry TCP/IP stacks that are often bundled with applications. The challenge for network managers is to find ways in which to deploy TCP/IP network-wide without unecessarily affecting the performance of underpowered PCs, as well as managing IP traffic and subnets.

### Host access with Telnet / TN3270

Using the TELNET protocol, users can emulate fully featured terminals attached to multiple hosts over LANs or WANs. Almost anything, from VT100 through to all models of 3270 and 5250, is supported. Advanced programs will support any combination of multiple sessions to different hosts with keyboard mapping, control of fonts and window resizing.

In contrast to generic TCP/IP terminal emulation programs, in recent years there have been significant developments in the PC X-Server market. With the wide-spread acceptance of Microsoft Windows, PCs are increasingly adopting the role of terminals and workstations in a UNIX environment.

X-Terminals are similar to stripped-down UNIX workstations. Much cheaper than a fully featured workstation, these devices can display complex graphics and support a UNIX-style graphical user interface, known as the X user interface; yet the application program runs on the host to which the X-Terminal is attached. Putting this functionality on a PC through add-on software, provides all the benefits of local PC processing power.

Beyond X-Terminals there is the X-Windows System. PC X-Server software effectively transforms a PC into a desktop platform that mimics a UNIX workstation. Under the X-Windows System, any host - from a UNIX server to a VM or VMS mainframe - can use the X-Protocol to open a window on a DOS, OS/2 or UNIX workstation.

For example, a Windows user can login to an IBM mainframe and run a financial report on the mainframe, as a background task. Once the job is completed, a program residing on the user's PC can download the data and then display the information as a pop-up window.

### File Transfer with FTP

One of the most common uses for TCP/IP is for transfering files between computers. Using the File Transfer Protocol (FTP), directories can be listed and files copied to or from any TCP/IP host in the network, regardless of operating system. Of course, this occurs within the constraints of the file security applied on the host. Nevertheless, this simple tool gives users the power to share data with any other network user, as well as the ability to store the data at almost any location. For example, insurance sales people might use this capability to upload new policies or download a new ratings table via a modem in their laptop, whilst out of the office.

### File Sharing with NFS

The Network File System (NFS) provides a relatively slick alternative to the more simplistic FTP approach. NFS clients can access directories on an NFS server using logical drive assignments on client PCs. The complete file system is then accessible in the same way as NetWare, LAN Server and other popular LAN Operating Systems. Full support for file and record locking ensures that programs can be executed and data files shared by any number of NFS clients. For example, you could store and execute a spreadsheet program from the NFS server using a common shared database.

### Remote Printing

The Line Printer Requester (LPR) protocol allows print jobs to be spooled to printers attached to other TCP/IP hosts. Some vendors have used this standard TCP/IP function to extend this service to FAX by introducing TCP/IP-based FAX servers.

### Electronic Mail

Another standard facility with TCP/IP is the Simple Mail Transfer Protocol (SMTP). This allows you to exchange mail with other TCP/IP hosts in a standard format. Nowadays, advanced implementations extend beyond the exchange of simple text messages, with the ability to include file attachments as well as multi-media messages, containing anything from images to voice.

### Remote Program Execution

TCP/IP functions not only give you access to data on other computers, but they also allow you to use the computing power on those hosts. For example, you may have a computational model that has outgrown the power of your own machine. Having developed the model on your own UNIX workstation, you could FTP the program to a powerful UNIX super-computer, execute it there using the REXEC function, and then route the output back to the screen or a local printer attached to your workstation.

## Implementation Issues

Since it offers such persuasive internetworking benefits, it's not surprising that many organisations are turning to TCP/IP to exploit Internet-based services, improve multi-vendor communication within their own private network, and make use of multi-platform distributed applications.Since it offers such persuasive internetworking benefits, it's not surprising that many organisations are turning to TCP/IP to exploit Internet-based services, improve multi-vendor communication within their own private network, and make use of multi-platform distributed applications.

The use of TCP/IP allows client-server applications to be utilised across the entire network, rather than becoming "LANlocked", as they can be when non-routable protocols, such as NetBIOS, are used. However, most Token Ring users contemplating TCP/IP are already reliant on other protocols such as LLC, NetBIOS and IPX. Their significant investment in using these protocols means that, initially, TCP/IP must be added alongside existing services. For hosts acting as servers, and clients based on a multi-tasking operating system, this is fairly straight forward, but for DOS and Windows PCs, the added complexity of TCP/IP often creates a configuration nightmare.

On DOS and Windows client PCs, conventional memory is frequently at a premium. Every network interface driver that is installed, consumes valuable DOS memory, with a typical TCP/IP protocol stack requiring up to 70KB. If 2 or 3 additional protocols are needed, the total memory requirement may rise to over 150KB. Supporting multiple protocols on client PCs not only introduces a performance overhead, but also raises complex support issues - as there will often be multiple vendors' products involved.

Since TCP/IP can be used to communicate with almost any system, some network administrators are tempted to migrate from existing protocols to a single non-proprietary protocol (viz: TCP/IP) throughout their network. Unfortunately, there is a trade-off, because as a LAN protocol, TCP/IP is substantially slower than IPX and NetBIOS, which are already in widespread use today. Quite a few Operating System vendors have targeted the multi-protocol issue as an area for differentiation and added value. TCP/IP support comes as standard on Windows NT and is planned for Windows 95.

Similarly Banyan's Vines for SCO allows the facilities of a complete UNIX system and a Vines server to be consolidated on the same hardware platform, requiring only TCP/IP to access both services. Meanwhile, UnixWare and SCO allow alternative protocols such as IPX or OSI to be run alongside TCP/IP, making it possible for NetWare client PCs to access other hosts, without moving away from IPX. However, as before, ease of implementation must be traded against performance, due to the additional protocol conversion overhead involved.

Due to the need for individual Internet addressing on each TCP/IP node, a typical TCP/IP LAN is generally more difficult to implement and maintain than an equivalent IPX network. Yet, for many organisations, the substantial benefits of implementing TCP/IP on Token Ring far outweigh the implementation difficulties.Due to the need for individual Internet addressing on each TCP/IP node, a typical TCP/IP LAN is generally more difficult to implement and maintain than an equivalent IPX network. Yet, for many organisations, the substantial benefits of implementing TCP/IP on Token Ring far outweigh the implementation difficulties.

## Madge Solutions

Madge's approach to Token Ring support for Open Systems has been to deliver network adapters with the most comprehensive set of LAN protocol drivers in the industry. The Smart LAN Support Software includes NetBIOS, LLC, IPX and TCP/IP protocols as well as standard NDIS and ODI interfaces. In addition, Madge has exploited its industry acclaimed Fastmac technology to build powerful drivers for some of the most popular UNIX systems on the market.

In concert with a Madge Smart 16/4 Ringnode, these driver solutions help to address the main issues encountered in TCP/IP implementations: poor performance in servers and clients, high DOS memory usage and configuration complexity in DOS/Windows clients.

## Madge UNIX Platform Support

Improving the UNIX server's network performance is one of the easiest steps to improving TCP/IP performance for LAN users. Madge's UNIX drivers are based on the same Fastmac Plus technology used in the DOS, OS/2 and NT drivers for ODI and NDIS support. Combined with one of Madge's advanced adapter designs, you can expect industry leading performance from all major UNIX systems, described below:

SCO : Supporting Open Desktop version 2.0 or above, Madge provides a fully compatible Link Level Interface (LLI) driver. This also supports SCO's multi-processor extension (MPX) for scalability across the range of hardware platforms.

UnixWare : Supports versions 1.0, 1.1 and 2.0. This certified Streams driver incorporates a complete Data Link Provider Interface (DLPI) ensuring compatibility with higher protocols such as TCP/IP and IPX/SPX.

Solaris : Supporting versions 2.1 or above, Madge offers a fully compatible Streams driver. The driver is also shipped by Sun Microsystems Inc.

### HP 9000 series - HP-UX

Providing a direct Token Ring connection for Hewlett Packard's RISC-based HP 9000 Series 700 workstations and 800 servers, a Madge developed HP-UX driver and Smart 16/4 EISA Ringnode is available direct from HP.

### RISC System/6000 - AIX

Offering the only 32-bit Token Ring solution for IBM's AIX, Madge's Smart 16/4 MC32 Ringnode exploits the potential of the 40MByte/s streaming Micro Channel bus used in most RISC System/6000 models.

### Madge Smart Software

Madge's Smart TCP/IP protocol can be downloaded to adapter memory and run on the adapter itself, along with any combination of the following: LLC, NetBIOS, IPX, ODI, NDIS. This unique and elegant approach gives DOS and MS-Windows client PCs excellent performance, substantial DOS memory savings and unrivalled multi-protocol flexibility.

Madge's Smart TCP/IP provides complete DOS and Windows application support for Novell's LAN WorkPlace and LAN WorkGroup products as well as support for NetWare/IP.

In addition, a Windows Sockets API allows any vendor's WinSock 1.1 compliant TCP/IP applications to access other TCP/IP hosts through Madge's highly efficient Smart TCP/IP. In this way, the Madge Smart TCP/IP stack allows you to entirely replace the memory hungry TCP/IP protocol stack that comes with most TCP/IP connectivity products.

Smart Software's multi-protocol flexibility and small memory footprint dramatically simplifies the task of managing the configuration changes imposed by the adoption of TCP/IP. One driver from a single source can satisfy all the protocol requirements. Smart TCP/IP also supports the BOOTP remote booting scheme to further ease the implementation of TCP/IP across multiple clients. This enables clients to obtain their IP address from a server, without the complications and added support burden of each PC requiring a unique configuration or boot image.