Originally published in the August 1994 issue of Advanced Systems.

TCP/IP Connectivity

A happy hookup: TCP/IP joins Unix to PCs

Six utilities link Windows PCs to Unix using TCP/IP.

By Rawn Shah

Adding PCs to a TCP/IP network has never been easy. Today, it's even harder, though scores of vendors are struggling to make the job simple. In the last 18 months, the number of TCP/IP-for-PC software makers has doubled, product quality as a group has improved, and fresh TCP/IP stacks are now implemented as virtual device drivers (VxDs) to boost speed and improve DOS/Microsoft Windows moronic memory management. (For an exmplanation of TSRs, DLLs, and VxDs, see sidebar.)

The biggest improvement is the wide acceptance of the Microsoft Windows Socket application programming interface, colloquially known as Winsock (see the sidebar The Windows Sockets interface). Many new software packages take advantage of this common access method to network services.

In this review, we look at the latest versions of popular PC-based TCP/IP packages, namely SunSelect's new PC-NFS 5.1, FTP Software's PC/TCP 2.3, Beame & Whiteside's new BW-Connect 3.1, the Wollongong Group's PathWay Access 3.0, NetManage's ChameleonNFS 4.0, and Novell's LAN WorkPlace 4.1. We also tested the Network File System (NFS) client counterparts for these packages.

Our list constitutes the most popular packages we found in an extensive (albeit unscientific) study of the Usenet groups comp.protocols.nfs and comp.protocols.tcp-ip.ibmpc, and the latest sales information from the market research firm International Data Corp.

We hasten to add there are more than a dozen other vendors offering competitive wares (see the list Other TCP/IP for PC products). While the six products we tested represent a healthy cross-section of the TCP/IP-for-PC market today, contact the others listed if these don't meet your particular needs.

What is TCP/IP?
Back in 1969, the data communications people at the Pentagon had a problem: How do you transmit big chunks of data to and from weapons of mass destruction bounding about remote battlefields where reliable communications are the exception rather than the rule?

The Internet Protocol Suite was their answer. This suite comprises the Internet Protocol (IP) as the network-data delivery agent and communicates primarily with the Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP).

TCP breaks a file into small pieces and labels each so their receipt is verified and each piece is properly reassembled by the receiving computer. TCP also calculates a checksum and includes it with each piece. The receiving computer calculates a checksum for each piece, then compares it to the checksum the originating computer declared. If the checksums don't match, the recipient assumes the worst, dumps the piece, and asks the sender for a retransmission.

The Internet Protocol wraps each TCP piece in a bundle and handles address and delivery duties. Soon after TCP/IP was developed and made public, the National Science Foundation tapped TCP/IP as the networking protocol of choice for its fledgling NSFnet, which together with a host of other smaller networks, came to be the Internet.

Because of TCP/IP's close ties to Ethernet some might think TCP/IP is intrinsic to this network layer. It is not. TCP/IP runs over other networks, including Token Ring and SLIP.

A slew of utilities employ TCP/IP. The traditional user programs tapping TCP/IP's power are Telnet and file transfer protocol (ftp). Telnet is a command-line program similar to Rlogin that allows a user to log into a remote machine and act as though he or she is using the machine directly. ftp allows a user to copy files to and from a remote machine.

Today, Internet surfers using the friendly programs Gopher, WAIS, and World Wide Web are riding the informational waves with TCP/IP.

Network drivers
As mentioned, there's much you need to remember when considering these packages. Not all Windows TCP/IP packages include the same set of utilities. The Winsock API is a standard, but not all vendors support it. There are three main types of network drivers: Packet Drivers, Microsoft's Network Device Interface Specification (NDIS) drivers, and Novell's Open Data-Link Interface (ODI) drivers. Choosing the right driver is sometimes a nightmare, especially if you have other software, such as a PC X server, or other network protocols, such as NetBIOS of Windows for Workgroups and NetWare IPX, that use their own driver or share the driver used with one of these packages.

We looked for a robust set of utilities, perky performance, proper functionality in a Microsoft Windows environment, useful documentation, cost effectiveness, and ease of installation, configuration, and use. We found something for everyone in the products reviewed. TCP/IP greenhorns will appreciate NetManage's ChameleonNFS, while gurus and speed demons will gravitate toward FTP Software's PC/TCP. System administrators herding hundreds of PCs will demand nothing less than SunSelect's PC-NFS. Sites with NetWare should consider Novell's LAN Workplace for DOS, while aficionados of fine GUI design will appreciate Wollongong's PathWay Access. Finally, Beame & Whiteside's BW-Connect offers a twist -- a local daemon that makes the PC a DOS character application server.

How we tested
Each package was installed on a i486/DX33 PC with an Etherlink III network interface card (NIC), 16 megabytes of RAM, and Microsoft Windows 3.1. This machine inhabits an Ethernet LAN with a PC server running BSD/386 1.1 (a i486/DX50 with 32 megabytes of RAM) with another Etherlink III NIC. A pair of Macintoshes also call this network segment home.

We tested ftp transfers across the LAN in binary mode in both directions between the PC-to-Unix system with 1-kilobyte, 100-kilobyte, 1-megabyte, and 10-megabyte files. Both DOS and Windows applications were tested where possible. We also tested NFS copies of the same files in DOS and Windows both to and from the directory NFS-mounted from the Unix host. The load on the Unix system and the LAN was otherwise minimal during our tests.

The meat of our review is in the table TCP/IP for PC features compared, where we reveal each product's details, and in the table TCP/IP for PC time trials, where we compare the performance of each. A brief description of each product and its noteworthy features follows.

SunSelect PC-NFS 5.1
If this review was a popularity contest, SunSelect's PC-NFS would win hands down. PC-NFS was an early and robust NFS client-for-PC systems, eventually selling more than a million nodes. Earlier versions had clunky Microsoft Windows front ends for PC-NFS' DOS utilities. Today's version 5.1 has both DOS and slick Microsoft Windows tools included in the shrink-wrap.

The real strength in 5.1 is the implementation of the Dynamic Host Configuration Protocol (DHCP), an emerging standard for booting and configuring devices, such as X terminals, connecting to a network for the first time. Devices using DHCP, which is based on the Internet Engineering Task Force quasi-standard RFC 1541, are supposed to broadcast a message in an attempt to contact a DHCP server. The DHCP server assigns the device an IP address and downloads a configuration file automatically. DHCP goes beyond conventional BOOTP or RARP IP assignments.

Sun Microsystems created NFS, and its product has been the guiding light in NFS for PCs since its inception. Although considered by many the canonical NFS for PCs, other vendors have since made their own implementations and offer features that do not exist in PC-NFS. E-mail and 3270 terminal emulator applications are options.

FTP Software PC/TCP 2.3
FTP Software is another pioneer in this market and was formed in 1986 by programmers who developed PC-IP, a freeware product that ranks amongst the first TCP/IP implementations for PCs anywhere. Today's product includes support for a wider range of applications.

PC/TCP has certain features that, although handy, will not seem useful to most novices. System and network administrators, however, will see these as a blessing, including such delights as gateway fallback, Kerberos security enhancements, router discovery, and MTU path discovery.

Most of the utilities bundled with PC/TCP are DOS-based, though the Windows programs include Telnet, ftp, Ping, and TN3270. Others will make the switch in the next release. As if to compensate for its lagging on the GUI front, PC/TCP was the fastest package tested.

Novell LAN WorkPlace for DOS 4.1
Novell packs a powerful punch with LAN WorkPlace for DOS. Despite the name, this is also Novell's product for Windows. LAN WorkPlace is one of the best implementations that keeps the users feet planted in both the IP and the IPX world, with services that will satisfy users who need access not only to their Unix servers but also their NetWare systems.

LAN WorkPlace, however, mostly consists of DOS programs and lacks features such as e-mail programs or a Usenet Network News Transport Protocol reader. On the other hand, it offers utilities that work with NetWare for print and file services. Although LAN WorkPlace has many redeeming qualities, Novell's technical support is notoriously difficult to reach.

NetManage ChameleonNFS 4.0
Let's get the most negative aspects of Chameleon out of the way. It is a Microsoft Windows-only product and it is, overall, slow. However, ChameleonNFS is one of the easiest packages to install and use. This is a very important feature when considering many PC users have apprehensions about using character-based TCP/IP applications.

ChameleonNFS includes a greater variety of utilities than its competitors. For example, there is an IBM PROFS mail reader as well as an IBM 5250 terminal emulation.

Beame & Whiteside BW-Connect 3.1
Carl Beame's original product has really taken off since it came into being in the late '80s. We reviewed version 3.1, which improved on the performance of its predecessor through the re-creation of the TCP/IP stack as a VxD and just started shipping in time for the review. Originally called BW-TCP and BW-NFS, BW-Connect is a superset of these earlier products. Beame & Whiteside offer an NFS server product as well.

BW-Connect has several innovative features we found nifty. The first is a program similar to the Unix inetd, which listens for Internet connections, then launches other servers and programs. In most other products, the servers have to be running at all times.

BW-Connect also has a Telnet daemon, which is unusual considering the non pre-emptive multitasking in Microsoft Windows. The daemon allows you to telnet into the PC and use character-based DOS applications from afar. Unfortunately, the Telnet session is slow and does not allow the use of any Windows applications.

We had a problem with this product and our NIC. BW-Connect did not work with our default IRQ setting (the other products tested didn't complain) requiring us to change it to a different setting. Also, B&W does not have a native driver for the top-selling Etherlink III. We used the NDIS and protman driver with consistent, though not speedy results.

The Wollongong Group PathWay Access 4.0
The Wollongong Group is known for fine TCP/IP products on a range of other hardware, and this greatness is not lost when it comes to its Microsoft Windows package, either. Until recently, PathWay Access did not provide some of the other services beyond Telnet, ftp and NFS, such as e-mail. Release 4.0 of PathWay takes care of this problem as well as adding other important features.

Notable is PathWay's ftp utility. This is the best network file manager of the bunch, providing not only a friendly file directory, but also providing most of the functionality of ftps found in the command-line Unix versions while offering top-notch performance.

Pick of the litter
There were different performers on the stage. Overall we suggest NetManage's ChameleonNFS as the right choice for novice and intermediate users. It is fancy and friendly, though a bit slow. There are many small features within ChameleonNFS' utilities that are more cleverly implemented than the others tested. For advanced users who know what they want and are on intimate terms with their network, go straight for FTP Software's PC/TCP. It is not as easy to install or use as the others, but stands above the others in performance and network support.

Large installations may wish to take a look at the new DHCP feature of PC-NFS. With this addition, network administrators will face fewer network configuration nightmares.

On the down side, most vendors seem content to include just a few utilities in their packages, with most giving up after Telnet and ftp. Things are brightening on the horizon. With the problem of a common programming library hurdled with the help of Winsock and with the growing popularity of TCP/IP, vendors are giving more attention to these tools, and the latest version of each is far more capable than its ancestor. []

About the author
Rawn Shah (rawn.shah@advanced.com) is a systems consultant at RTD Systems & Networking in Tucson, AZ. He also maintains the PC-Mac TCP/IP & NFS FAQ on several Usenet newsgroups.

[Back to story]

TSRs, DLLs, & VxDs

Microsoft didn't even acknowledge the existence of TCP/IP and NFS until the advent of Microsoft Windows 3.11. Keeping this in mind, we can look at the implementations of the TCP/IP stacks of vendors in a new light.

The traditional method of creating a background task for DOS systems has been with Terminate-and-Stay-Ready (TSR) programs. TSR-based TCP/IP stacks offer high performance at the expense of conventional DOS memory, which is considered prime real estate of system resources.

Another method of supporting TCP/IP network functions is to create the stack as a Windows Dynamically Linked Library (DLL). All calls are intercepted by Windows and handed over to the DLL for processing when possible. DLLs have several drawbacks. Since DLL is a part of Windows, DOS-only users are left out. Also because DLLs depend on Windows frameworks, the cooperative multitasking of Windows may interfere with network transfers if the foreground program makes intense use of the system.

The third method of implementing a network stack is as a virtual device driver (VxD). A VxD provides a cleaner method of providing network functionality at both the DOS and Windows levels, and it works in protected mode. This means it has 32-bit access to memory and there is no requirement for conventional memory usage.

All three have their merits. Many consider that VxDs the fastest type of network driver, although this is not always the case. TSRs can be speedier than VxDs, as Beame & Whiteside's Carl Beame pointed out at a recent convention. One important future consideration is VxDs will be used as network drivers in the upcoming release of Chicago, the successor to today's Windows. However, these will not be the same as today's VxDs due to the massive overhaul of Microsoft Windows in the upcoming version, Chicago, which includes a restructured memory management system and multithreading and multitasking.

[Back to story]

[Back to story]

The Windows Sockets interface

The Windows Sockets API (Winsock) 1.1 has really caught on in the industry as a common access method for network services. Unbeknownst to some, Winsock is not specifically for the Internet Protocol suite. The design of the Sockets interface allows communication interfaces for other protocols, such as IPX. However, the API structure was derived from the Berkeley Sockets programming interface. This was originally from the Berkeley System Design (BSD) 4.3 of Unix, which has become the de facto standard for interprocess communications on the Internet, thus the association of Winsock with TCP/IP.

Winsock came about because of a specific problem with the various implementations of the IP suite for PC systems. Before Winsock, there were a number of disparate programming libraries that were also ports of the Berkeley Sockets library with slight modifications to work with Microsoft Windows. This resulted in similar libraries with slight differences that caused compatibility headaches for programmers. Programmers had to either choose between the popular vendors' libraries or create separate versions of their applications for each vendor's products.

In 1991, Microsoft, SunSelect, FTP Software, Microdyne Corp., and JSB Corp. came together to decide on a common interface they hoped would be adopted by the other vendors. Soon representatives from other vendors came to agree on these views and a standardization process began. By January 1992, with the release of version 1.1 of this standard, it had caught on as the interface to have for TCP/IP on Microsoft Windows.

Winsock allows a common call structure for different programs. It is a structured Microsoft Windows Dynamically Linked Library (DLL), which may either implement the calls to the network driver or be an intermediate layer to a proprietary library. For example, ChameleonNFS's WINSOCK.DLL is a complete implementation in itself, where PC-NFS's WINSOCK.DLL is an intermediate later between the applications and SunSelect's TKLIB.DLL, which contains the code for network services.

Winsock acts as a multiplexer between the applications and the network driver, allowing both blocking (synchronous) and nonblocking (asynchronous) calls for the different applications. Developers can now write one application that would be compatible with the majority of the PC-based TCP/IP packages. For example, the World Wide Web, which is a hypertext document system spanning across the Internet, is now accessible from a IP-based PC through the public-domain package Mosaic for Microsoft Windows. Other applications include Gopher clients, e-mail systems, and SQL database interfaces.

The number of Winsock programs is increasing as is the number of TCP/IP packages supporting it. This is especially important now that Microsoft has added the TCP/IP protocol as part of its networking service in its Microsoft Windows and Windows NT. With the adoption of this standard by some of the major software companies, its longevity is assured.

[Back to story]

[Back to story]

More PC TCP/IP products

Distinct TCP, Distinct Software Inc., 14082 Loma Rio Dr., Saratoga, CA 95070, 408-741-0781.

TUN, Esker Inc., 1181 Chess Dr., Suite C, Foster City, CA 94404, 800-88-ESKER. Super-TCP, Frontier Technologies Inc., 10201 N. Port Washington Rd., Mequon, WI 53092, 414-241-4555.

TCP/IP for DOS, IBM, Dept. G90, P.O. Box 12195, Research Triangle Park, NC 27709, 800-IBM-CALL.

TCP/Connect II for Windows, InterCon Systems Inc., 950 Herndon Pkwy., #420, Herndon, VA 22070, 703-709-5500.

Piper/IP, Ipswitch Inc., 333 North Ave., Wakefield, MA 01880, 617-942-0621. ICE.TCP, James River Group Inc., 125 N. First St., Minneapolis, MN 55401, 619-339-2521.

TCP/Open, Lanera Inc., 516 Valley Way, Milpitas, CA 95035, 408-956-8344. PC Interface, PC Interface Plus, Locus Computing Corp., 9800 La Cienega Blvd., Inglewood, CA 90301-4440, 800-95-LOCUS, ussales@locus.com.

Fusion TCP, Pacific Softworks Inc., 4000 Via Pescador, Camarillo, CA 93012-5049, 800-541-9508. The AIR Series, SPRY Inc., 316 Occidental Ave. S., Seattle, WA 98104, 206-447-0300.

The Reflection Series, Walker, Richer & Quinn Inc., 2815 Eastlake Ave. E., Seattle, WA 98102, 800-926-3896. NCSA Telnet, NCSA, Internet URL: ftp://ftp.ncsa.uiuc.edu/NCSA/Telnet WinQVT/Net, QPC Inc., Internet URL: ftp://biochemistry.bioc.cwru/qvtnet

Trumpet, Trumpet Software International, anonymous ftp: ftp.utas.edu.au:/ pc/trumpet

You can find more information on these and other TCP/IP products for DOS/Microsoft Windows, Macintosh, and OS/2 systems in frequently-asked-questions (FAQ) files, which are available via anonymous ftp from the site www.rtd.com. FAQs in various file formats are in the directory /pub/tcpip.

[Back to story]

[Back to story]

TCP/IP for PC time trials

	FTP Transfers to and from a Unix host
	From Windows	From DOS	To Windows	To DOS
	1K	100K	1MB	10MB	1K	100K	1MB	10MB	1K	100K	1MB	10MB	1K	100K	1MB	10MB
BW-Con.	1.01	2.17	12.66	143.76	0.93	1.95	11.20	119.91	0.93	1.95	11.20	119.91	1.01	2.17	12.66	143.76
Cham.	0.67	2.23	28.89	296.26	 NA	NA	NA	NA	0.60	1.11	4.72	52.11	NA	NA	NA	NA
PathWay	0.26	0.70	4.69	63.90	0.00	0.46	3.67	48.49	0.24	0.58	4.05	58.27	0.00	0.59	4.80	56.46
PC/TCP	0.39	2.81	35.49	346.75	0.23	0.49	2.48	33.07	0.63	1.05	4.18	49.07	0.00	0.56	5.20	78.64
LWP	0.26	0.68	4.72	68.81	0.00	0.89	2.71	34.40	.35	0.89	4.18	47.96	0.00	0.35	3.08	61.34
PC-NFS	0.38	0.93	6.53	85.72	0.00	0.51	2.49	33.65	0.55	0.92	4.16	48.91	0.00	0.61	4.90	79.85
	NFS Copies to and from a Unix host
	From Windows	From DOS	To Windows	To DOS
	1K	100K	1MB	10MB	1K	100K	1MB	10MB	1K	100K	1MB	10MB	1K	100K	1MB	10MB
BW-Con.	0.85	2.45	17.50	203.75	0.43	1.39	8.35	93.14	0.92	2.08	12.36	128.53	0.38	1.41	10.41	128.90
Cham.	1.23	3.92	31.66	323.81	NA	NA	NA	NA	1.19	2.23	13.37	139.43	NA	NA	NA	NA
PathWay	0.49	1.86	15.99	186.26	0.00	0.22	2.53	37.17	0.87	2.01	13.93	144.16	0.18	0.31	4.12	75.86
PC/TCP	0.74	1.35	7.34	84.85	0.00	0.00	2.61	35.37	0.79	1.28	4.27	48.29	0.00	0.00	3.13	58.60
LWP	0.51	1.32	9.58	115.84	0.31	1.11	5.62	65.55	0.63	1.33	7.39	83.75	0.32	1.05	9.65	113.49
PC-NFS	1.03	3.79	29.27	307.09	0.00	0.45	4.57	57.56	1.13	3.42	23.50	135.47	0.00	0.85	7.61	103.85

[Back to story]

[Copyright 1995 Web Publishing Inc.]

If you have problems with this magazine, contact webmaster@sunworld.com
URL: http://www.sunworld.com/asm-08-1994/asm-08-tcpip.html.
Last updated: 1 August 1994. 61 pesky Mac characters removed