DOS Networking HOWTO

1. TCP/IP
1.1. What You Need
1.1.1. Network Card
1.1.2. What Kind of Nic You Need
1.1.3. Modem (Point to Point Protocol)
1.1.3.1. WG7J NOS (JNOS) PPP ADDITIONS
1.1.3.2. Etherppp (aka Merit PPP Packet Driver)
1.1.3.3. PPPPKT
1.1.3.4. ISPA - ISDN PACKET DRIVER INTERFACE
1.1.3.5. DOSPPP 0.6
1.1.3.6. Klos Packet Driver
1.2. Nic Driver
1.2.1. Installing PD
1.2.2. Removing PD
1.3. TCP/IP Stacks for DOS
1.3.1. Trumpet TCP/IP Stack
1.3.2. NCSA TCP/IP Stack
1.3.3. WATTCP TCP/IP Stack
1.3.4. FreePASCAL TCP/IP Stack
1.3.5. Microsoft TCP/IP Stack
1.3.6. WATTCP 32
1.3.7. KA9Q NOS
1.4. Configuration
1.4.1. WATTCP
1.4.2. Trumpet
1.4.3. Microsoft
1.4.4. NCSA TCP/IP
1.5. Software
1.5.1. WATTCP
Copyright
Appendix: More information
Appendix: About running TCP/IP stacks on 8088, 8086

Dos networking has been a huge obscure topic. A lot of DOS networks are running using novel netware, since Novel is a profit organization few documents and software are available for this stack, on the other hands, TCP/IP is born “free” with all documents and sources freely accessible. This means a lot of free TCP/IP stacks for DOS but fewer IPX ones.

IPX (used on Novell Netware) is important because it is a “lithe” stack, it was write to connect computer in LAN. Older PCs are not enough fast to run TCP/IP and IPX still is the only solution. TCP/IP was written for connect networks on the globe, so it is a heavy set of protocol and works fine for WAN.

I have divided this document in two main parts: TCP/IP and IPX. If your computer use 8088 or 8086 processor TCP/IP, it could not work. TCP/IP requires a least 80286 CPU running at 8Mhz or faster clocks. IPX is really lite to be used and can run also on 8088.

1. TCP/IP

I’m sure this topic is really interesting for a lot of people, so I start from it. Let DOS speak TCP/IP is important because:

1.

TCP/IP is used on Internet.

2.

Linux, W9x, W2000, Mac ... all they are able to speak TCP/IP.

3.

SAMBA is over TCP/IP.

4.

Since TCP/IP documents called RFC are Free there are a lot of application for it.

Using TCP/IP you can: share printer and directory with: DOS, Windows and Linux, access SAMBA services on Linux machine and more.

1.1. What You Need

At least: 2 computers equipped with network cards, some meters of cable, this document and a lot of patience.

1.1.1. Network Card

Surely you are thinking to connect your DOS machine using a serial or parallel cable, forget it and search for 2 network isa cards, they are cheaper and available everywhere. Time ago (10 years) network cards were a stand-alone and cost expansive computer, I have an Ethernet card (’91) with a motorola 68000 10 Mhz and 256Kbytes of RAM on board, for this reason connecting DOS machines using N.I.Cs (Network interface Card) has not been a cheaper solution and other way to get PC connect has been made available on market, but now NICs are cheaper and you can buy it.

If you are going to buy an used NIC you must identify it in order to load the correct packet driver. Each NIC need its (packet) driver, if FCC code is present you can identify it (see http://www.repairfaq.org/REPAIR/F_FCC_ID.html) otherwise you need to know its ethernet address (see http://www.coffer.com/mac_find/), also called the “MAC address”. Packet drivers can be downloaded from manufacture website or from simtel.net (see http://www.simtel.net/simtel.net) where Nelson Russel has made, available freely, a lot of packet drivers for several NICs.

1.1.2. What Kind of Nic You Need

If you are a student like me search for: Cheaper Ethernet 10Mbits. If you are searching a good solution for you SOHO (small office Home Office) solution buy Cheaper Ethernet 100Mbits NICs. If you need the best solution for Office and home buy IBM TOKEN RING NICs, I’m assuming money is not a problem for you.

1.1.3. Modem (Point to Point Protocol)

If you want to connect your computer to Internet or another “external” network there is the Point to Point Protocol, upper level software see it as a special kind of packet driver and so you can still keep all your work without need to rewrite or modify it. At the beginning connecting to Internet using a dial up was solved by three protocols: SPLIP. PLIP and CSPLIP, unfortunately using these a fixed IP must be assigned to clients. Today IP space address is ending and assign an unique IP to each client is impossible, Point to Point Protocol allow dynamic IP and can transport not only IP packets unlike other protocols. Connection using PPP is made by two different tasks: Calling remote computer and negotiate a PPP connection.

1.1.3.1. WG7J NOS (JNOS) PPP ADDITIONS

Johan Reinalda (WG7J) did a lot of additions/improvements to the KA9Q for MSDOS.One of them seems to be that PPP is working, finally.Get version 1.08 and up. Authors Phil Karn (KA9Q), Johan Reinalda (WG7J), with additions from lots of others. PPP code written by Katie Stevens of UC Davis, based on the original implementation by Drew Perkins of CMU. Updated byBill Simpson and Glenn McGregor of the Universityof Michigan. James Dugal (N5KNX) has taken over development of JNOS. Features server, client, scripting, redial (see ftp.ucsd.edu:hamradio/packet/tcpip/incoming/jnos*).

1.1.3.2. Etherppp (aka Merit PPP Packet Driver)

16 Mar 1994 The “NCSAPPP” version of the DOS PPP packet driver is no longer being distributed due to the availability of the newer “ETHERPPP” version of the packet driver.This packet driver emulates an Ethernet class packet driver and is thus compatible with a wider range of applications.The older driver presented only a “PPP” class packet driver and only worked with applications which knew specifically of “PPP” class packet drivers. -Larry Blunk, Merit Network, Inc. / The University of Michigan Then ftp to merit.edu (notice: not ftp.merit.edu) and from the /pub/ppp/dos directory, fetch etherppp.commands. (The etherppp-new executable will seem to be there also, but you’llfind you can’t download it.) The documentation file in the archive with the executable was written for a much older version of the software, and is obsolete in several respects.The /k parameter apparently is no longer needed in 1.9.49beta. And although you can use the supplied version of TERMIN to unload the driver from memory, it is no longer necessary.PPP has a /u switch which will do the same thing. On the plus side, the dialer works nicely.When the driver is unloaded from memory, it will automatically hang up the modem.On the minus side,in addition to random exception errors and lockups, the thing is a memory hog.PPP 1.9.49 takes up over 120,000 bytes of memory.That doesn’t leaveMinuet’s graphical web browser enough room to function properly. (Runtimeerror #204 will commonly appear.)When fetching news with Minuet 17A and PPP 1.9.49 beta using Merit’s default or “quick” configuration, I frequently crashed on Exception 13errors.The following seems to work better, though not 100 percent stable--gopher and ftp in 18A sometimes generate exception errors.
____________________________________________________________

 ppp ipcp local compress allow
 ppp ipcp open
 ppp lcp local accm 0
 ppp lcp local acfc on
 ppp lcp local pfc on
 ppp lcp local magic allow
 ppp lcp open
____________________________________________________________

Author: Neil Parks <nparks@torah.org> (download: ftp.merit.edu:internet.tools/ppp/dos/etherppp.zip or http://digilander.iol.it/kht/net/etherppp.zip).

1.1.3.3. PPPPKT

The product is not a complete packet driver by itself.It requires someadditional files that are actually part of Novell’s commercial networking products.Fortunately, Novell makes them available for free download via anonymous ftp, if you know where to look. Molzahn provides complete and detailed instructions for finding and installing them. PPPPKT does not have any kind of dialer. You have to dial the old-fashioned way--use a plain term pgm that will establish the connection and then get out of the way without hanging up the phone line. (Telix, for example, does this very nicely.) Performance is a mixed bag. News (with 17A) and Gopher are very fast. Mail is so slow that “time out” errors occur frequently. Increasing the “I/O timeout” and “retransmit timeout” numbers in Minuet’s Setup/Network screen increases the chances the mail might go through eventually--but not always. Telnet is so slow that it appears to lock up. ftp performance is odd: Logon negotiations and directory listings are slow, but once you start to fetch a file it will come roaring in faster than with any other packet driver I’ve tried. PPPPKT takes up less memory than Merit PPP, so your chances of successfully browsing a graphical web page are better.

Author: Neil Parks <nparks@torah.org> (download: oak.oakland.edu).

1.1.3.4. ISPA - ISDN PACKET DRIVER INTERFACE

ISPA is an ethernet-type (class=1) packet-driver for IP-Routing or remote Ethernet bridging over ISDN. ISPA communicates with the ISDN card using the Common ISDN API 1.1 specification (a standard defined by German ISDN card manufacturers and the German Telekom). Because of this, ISPA is completely hardware independent and has successfully been tested with many active or passive ISDN cards. ISPA supports a large set of protocols for communication with other vendors ISDN routers or servers. Among these protocols are: LAPB, Frame-Relay, PPP (including PAP support), SLIP, Cisco-HDLC. ISPA was developed for use with PCROUTE as a cheap Ethernet-ISDN Router. However, it has been successfully tested with a wide range of TCP/IP programs e.g. WATTCP based IP programs, PC-NFS, NCSA &amp; CU -Telnet/ftp, gopher, popmail, PCTCP 2.2 or Trumpet WINSOCK. ISPA was written for use with ISDN BRI PC cards. I myself have used ISPA only with the Teles.S0 card, one of the cheapest ISDN cards in Germany. But I got responses from users of ISPA that it will work at least with the following other ISDN cards: AVM A1, AVM B1, Diehl SCOM, Diehl SoTec, NICCY 1000 PC, mbp Solis. Many German vendors of ISDN cards have started to support besides the German signaling system (1TR6) and Euro-ISDN (EDSS1) also other signaling systems in their Common ISDN API 1.1 implementation. The current version of ISPA supports two independent active connections at a time. Alternativly a connection can use two B-channels for loadsharing. ISPA can be loaded more than once, if more than two simultanous connections to different sites are desired. Loadsharing can be configured as static or dynamic (bandwith on demand). Dynamic loadsharing can be used concurrently to a second independent connection. Loadsharing over two channels is implemented using simple round robin scheduling, because IP doesn’t require the orginal packet sequence. It’s completly hardware independent. It’s works the same way as Cisco implements loadsharing over to X.21 interfaceses and I have tested ISPA with a Cisco Router and two Philips TA’s. Sure it will not double the performance this way, but around 13kBytes/s you can get.

Maintainer: Herbert Hanewinkel, July 1994 (download: ftp.biochem.mpg.de:/pc/isdn).

1.1.3.5. DOSPPP 0.6

This is a partial port of Linux’s PPPD, it supports CHAP and PAP but can act as client only. A dialer is included in distribution and set-up a connection is not a simpler as you can thing. It works fine and can emulate also a class 1 packet driver. This PPP software is the only I discuss in this document. It supports also BOOTP protocol (download: http://digilander.iol.it/kht/net/dosppp06.zip).

1.1.3.6. Klos Packet Driver

This is also a packet driver and dialer (free demo: http://www.klos.com/get.pppshare.html).

1.2. Nic Driver

After you connected your used or new NIC to your ISA bus you still need to install its driver. When you need to speak TCP/IP or simply are not using a Novel networking solution the correct name for NIC’s driver is PACKET DRIVER. Basically a PACKET DRIVER give you access to all services required from TCP/IP, these are not available on a device driver born to work under IPX. If you NIC is used you can find the correct PD from Nelson Russel’s collection, otherwise you’ll find it on disk provided with your NIC. A PACKET DRIVER spec has been defined from FTP software.

You can get more information about how packets driver works, read it if you are a programmer (see http://195.148.172.4/~aw/net/pds.html).

I’m working to a Public Domain library (see http://www.khet.net/freedos/docs/packetdriver.html for access all packet driver function directly from C. It can be compiled using Borland’s TC++ 1.0, which is freely downloadable for personal use. Now it is buggy and incomplete, but I hope to fix it soon.

1.2.1. Installing PD

PD is software that adds some services to your computers; you can access them using a software interrupt. What interrupt does your PD use? Default values are 0x60, since a computer can have more than one NIC interrupt must be provide when PD is started. i.e.:
____________________________________________________________

 3c5x9pd.com 0x60
____________________________________________________________

If you have two nics both 3509:
____________________________________________________________

 3c5x9pd.com 0x60
 3c5x9pd.com 0x61
____________________________________________________________

1.2.2. Removing PD

To remove a PD from memory you need to access it removing services. There is a program called TERMIN.COM who is able to access this services and can remove your PD. Warning: Some PD can be removed using special switch:
____________________________________________________________

3c5x9pd.com -u 0x60
____________________________________________________________

so you don’t always need termin.com

1.3. TCP/IP Stacks for DOS

There are 5 TCP/IP stacks for DOS. These stacks can be more or less interesting to you function if you are or not are a programmer. If you don’t need to write TCP/IP application stacks are different in the way to configure them. The main problem using programs requiring different stacks is keep all configuration file in the same systems, this problem go bigger if you are connect to Internet via a PPP access, in this case you need to change ALL configuration file each time you got connected to Internet! If you are connect to Internet via SLIP or CSLIP this problem does not exist since all network parameters are static.

1.3.1. Trumpet TCP/IP Stack

This stack is the only which stay resident in your machine and it is provided as a stand alone piece of software, there are few application using it. (Web site: http://www.trumpet.com). This stack is the simpler to configure.

1.3.2. NCSA TCP/IP Stack

Public domain stack, also still supported for NCSA. This stack is based on NET14 stack from BSD. NCSA’s telnet is using this stack, configuring this stack require to set-up config.tel with the appropriate options. This stack is also able to drive directly some NICs.

NCSA TCP/IP is a weak implementation of TCP/IP protocols and can manage UDP, TCP and ICMP packets. It also handles ARP protocol since TCP/IP requires a way to BIND MAC address to IP address. This software is public domain and this is the only reason because somebody should go to get it from NCSA FTP archive.

1.3.3. WATTCP TCP/IP Stack

It is based on NCSA stack, has been enhanced and it not free, manuals but be ordered to author. There are a lot application using WATTCP stack, now also come embed system are using it. You can get it sources for free. Set up this software is simple; it is also able to get automatically configured via BOOTP.

This stack does not support Berkley API, perhaps because it is based on NCSA TCP/IP, it contains more protocols than NCSA TCP/IP and there are good examples included with source, which make manuals do not so necessary.

1.3.4. FreePASCAL TCP/IP Stack

At www.freepascal.org I found the first TCP/IP stack written in pascal!! It is complete Free. Really few applications available. I have not tested it so I can’t write anything about it.

This software come with poor documentation but is object oriented. This software contains also a PPP client and it looks great for write embed TCP/IP software per old DOS machine.

1.3.5. Microsoft TCP/IP Stack

This huge company hold it own stack, simpler to use but it eats large amount of memory.

1.3.6. WATTCP 32

Watt-32,unlike wattcp, tries to mimic the BSD-socket API with support for SOCK_DGRAM, SOCK_STREAM, SOCK_RAW, blocking and non- blocking I/O. Most header files required to port Unix network programs to Watt-32/DOS are provided.

From the WATTCP 32 home page: (see http://www.bgnett.no/~giva/index.html)

“Watt-32 is a library for making networked TCP/IP programs in the language of C and C++. Both 16-bit real-mode and 32-bit protected-mode is supported. Watt-32 requires a packet-driver (PKTDRVR) to access the data-link layer (ether-PPP, SLIP or Ethernet. Token-Ring is untested).

The name Watt-32 was chosen to signal the emphasis on 32-bit platforms (Allthough 16-bit compiler are also supported). What, besides embedded systems, is DOS good for these days if not running high-performance 32-bit programs. And the embedded market is booming; with the price of PC-104/EtherNet cards, Watt-32 could be used in a lot of fancy boxes. How about an IP-telephone, MP3 home-player or an Internet Radio.&quot;

1.3.7. KA9Q NOS

TCP/IP is also used in the amateur radio environment (see http://people.qualcomm.com/karn/code/ka9qnos/).

1.4. Configuration

If you want to use TCP/IP software you need al least these net parameters:

1.

Your IP Address

2.

DNS IP address

3.

Net mask

4

Gateway IP address.

As memory location computer in network are addressed using “address”. Typical IP address looks like: xxx.xxx.xxx.xxx, where 0<xxx<255. All TCP/IP stack for DOS are using IPv4, there are not IPv6 implementation.

-

Your IP address is the address of your machine.

-

DNS IP address is the address of a Domain Name Server. When you need to access a computer never use its address but its name. Example: http://www.khet.net or http://www.freedos.org. Since TCP/IP require IP address a service able to convert name into address has been build. You can know what is the address of a computer given it name using: ping computer name.

-

Net mask is used to split your IP address in two parts: network and computer address. I don’t speak about it is this section.

-

Gateway is an IP address of a device (it may be a computer) that is used when your IP packed has a destination computer does not present in your LAN.

If your DOS machine is LAN connected all these parameters are static, if your DOS machine is connected to Internet via PPP your IP address will change at each connection so there are other way to configure this kind of connection. There is a protocol called SLIP and in its enhanced version called CSLIP, all these use static IP but today IPv4 is ending addresses and I doubt about there are ISP which give you internet access using these older protocols.

1.4.1. WATTCP

[insert text here]

1.4.2. Trumpet

Simply start your software with the following options:
____________________________________________________________

 ntcpdrv -ip=128.25.45.206 -netmask=255.255.255.0 -gateway=128.25.45.1
    -dns=128.25.45.10
____________________________________________________________

ntcpdrv is the TCP/IP stack from trumpet, options are the same.

1.4.3. Microsoft

Microsoft TCP/IP suite is available from download site, packet drivers are included in these files and all you need is run setup.exe. IP addresses always are written as 4 number spaced via a dot: xxx.xxx.xxx.xxx. Microsoft breaks this rule

1.4.4. NCSA TCP/IP

[insert text here]

1.5. Software

Nagy Daniel’s SSHDOS (SSH client for DOS), it is open source (see http://sourceforge.net/projects/sshdos). I collected a lot of software for DOS networking and I have upload all at http://digilander.iol.it/kht/mirror/network, all this software has born to be used with one of above TCP/IP stack. It you like can use Lycos, ftp search option or inside simtel.net collection. What follow is a list ordered by stack:

1.5.1. WATTCP

apps.zip

Basic TCP/IP stuff like Lpr, Lpq, Finger, Ftp client and more.

ftp.zip

ftp client.

lynk_386.zip

This version uses the WATTCP stack.

mcast.zip

IP Multicasting is a mechanism to send and receive data from a group of hosts rather than via the more traditional one on one interaction. This technology is being heavily used for experimentation into Audio/Video Conferencing over IP, but has the potential to be used in a much more far-reaching manner. In fact, one school of thought says that multicasting (1-&gt;n) is the general case, and that unicasts (1-&gt;1) are simply a special case. This package contains the pieces necessary to extend the WATTCP libraries to support IP multicasting as defined by RFC-1112[1] (Deering)

mt.zip

MiniTelnet - A TELNET client for WATTCP.

newsnuz.zip

“This is only a test version of the newsreader, we will formally announce it when a working version is complete - probably within a week or two.” You are free to test it, but do not rely on it yet. Snuz was a news reader written by Doug MacDonald.

nfsdrv.zip

NFS for DOS, it also require a demon running on Linux machine : PCNFSd

pcp_wat.zip

Pine for DOS and Wattcp

pprd200.zip

PPRD is a small program that turns an XT or AT running DOS into a dedicated LPD printer server. You can send jobs to the printers from any machine running LPR.

smbpd094.zip

SMBPD is a small program that turns an XT or AT running DOS into a dedicated SMB printer server. You can send jobs to the printers from any machine running WfWg or Samba.

telnetd.zip

This program allows you to remotely control your pc. It is a pretty simple implementation, but usable enough for many people.

trtb01b.zip

This is TROUT, a clone of the Unix ’traceroute’ program for MS-DOS built with a slightly modified version of the WatTCP TCP/IP library for DOS.

[...]

I’ll add here your notices.

Copyright

Copyright (c) 1999,2000,2001 Alessio Palma <freedos@khet.net>.

DOS NETWORKING HOWTO document may be reproduced and distributed in whole or in part, in any medium physical or electronic, as long as this copyright notice is retained on all copies. Commercial redistribution is deny. DOS NETWORKING HOWTO document must be covered under this copyright notice, exceptions to this rule may be granted under certain conditions; please contact the DOS NETWORKING HOWTO author at the address given. In short, we wish to promote dissemination of this information for no profit purpose only.

Appendix: More information

You can learn more about DOS networking from the following locations:

-

http://home7.inet.tele.dk/batfiles/main/links.htm#connectivity

(Internet connectivity for DOS)

-

http://www.private.org.il/tcpip_rl.html

(a TCP/IP resources list)

-

http://www.trumpet.com/

(Trumpet Software)

-

http://www.redbooks.ibm.com/abstracts/gg243911.html

(TCP/IP for MVS, VM, OS/2 and DOS: X Window System Guide)

-

http://www.tropinet.com/ppp.html

(PPP and Internet applications for DOS)

-

http://147.156.1.46/~hmr/tcpip-pcFAQ.html

(comp.protocols.tcp-ip.ibmpc Frequently Asked Questions)

-

ftp://ftp.demon.co.uk/pub/doc/ibmpc/dos-apps.txt

(Michael Bernardi’s DOS applications for Internet Frequently Asked Questions)

-

http://www.helmig.com/j_helmig/Doscltcp.htm

(Connection from a DOS-system using TCP/IP)

-

http://www.oldskool.org/~tvdog/internet.html

(Internet access programs)

-

http://www.komaromi.com/dos_email/

(Setting up email in DOS using a dialup PPP TCP/IP connection)

Appendix: About running TCP/IP stacks on 8088, 8086

Or Botton <winterk@netvision.net.il> asked:

Does anyone have TCP/IP working ok on an XT? QP According to an article on FreeDOS’s site, this is impossible due to required CPU speeds. It says that its quite heavy, and therefore IPX is more recommended for anything below 286 systems.

This sounds rather strange to me, as I have heard of people in this list allready using nettamer and bobcat on an XT?..

Alessio Palma answers:

Perhaps I wrote it. Is it the Dos Networking HT 0.2.3? I wrote this because on slow XT computers attached to fast modems, PPP compression and TCP/IP handling cause a lot of problems. Also memory requirement are higher on TCP/IP than IPX. This happned because IPX has been designed to work over a LAN, but TCP-IP has been designed to work over a WAN; for examples TCP/IP checks packets integrity but IPX does not it, this control consumes processor time. If your computer is slow and your modem is fast, packet processing overhead can be a serious problem. Nobody can avoid you to use TCP/IP over a Commodore 64 but keep in your mind that it is a heavy network stack. If you use NCSA telnet on an old XT attached to Internet using DOSPPP, you can make experience about how heavy is PPP & TCP/IP for 8088 (4.77 Mhz computers). In this case one packet is sent for each keystroke using TCP protocol, if PPP compression is enable software slow down, but if compression is not enable packets are larger and take more time to be sent.

This software [nettamer and bobcat] is an all-in-one solution and surely code is optimezed, this can be reached meltdown differents networks layers into a “BLOB”. This kind of software (like NCSA TCP/IP stack) is far from be a good TCP/IP since some serivices’ port are hardcoded and other minor hacks has been made.

IPX is simple, fast and does not consume too much processor time. IPX does not need a DNS, it does not need ARP protocols and RARP one... ecc... It easy for XTs get TCP/IP timeout when connected in LAN using TCP/IP.

Steven C. Darnold <ichi@ihug.co.nz> also answers:

Yup. I use the Crynwn SLIP packetdriver on my XT portable to connect to my Linux TCP/IP network. It works fine.

SLIP is pretty slow anyway, so I don’t think CPU speed is going to be an issue. Actually, I wanted to try PLIP on that machine, but its parallel port is mono-directional.

Anthony J. Albert <albert@polaris.umpi.maine.edu> also writes:

Sure, this can be done, and it can work quite well. I’ve personally run TCP/IP and IPX simultaneously on the same machine, over Ethernet networks, and had performance that was good enough to run the NCSA terminal emulator to a remote site with no problems. I have had problems running it over anthing faster than a 14.4 modem, though, so I can’t recommend that. A shell account is probably going to be required if you are planning to go on-line, too.

Equipment was AT&T 6300, 4.77MHz processor with a NE2000-compatible 10-Base-2 NIC. Software used was NCSA telnet, and the ODIPKT interface atop the NE2000 ODI driver.

Whether there are any more modern programs that will work efficiently with this interface, I don’t know, but I do know that this is still in use on 286 systems on our campus, being used as dumb terminals.

Alex Venn <aven@ukgateway.net> also responds:

It depends on the speed you want to work at and how many things you want going on at any one time. I used to regularly run a version of KA9Q (internal PPP and with 2 or 3 tasks active) on a 10 Mhz XT &quot;laptop&quot; without any problems, but in those days I only had a V32 modem and the tasks were limited to mail, FTP and telnet. Later, with a GT 16Mhz 286 it coped with a V34 modem and was up to four of five tasks including news and diagnostics. By the time the giddy heights of a 386SX25 came my way, nine tasks could just about run and and HTTP/Browse had been added. I didn’t have a V90 modem at the time, but the next machine boasting a 486DX33 was perfectly happy with that. I’ve yet to find the current 486DX100 wanting which is why it’s still in use, allied to the fact that I’ve yet to find anything faster than a P90 thrown away and they gave more trouble than the 486.

All that is with DOS text-mode stuff and anything graphical will slug performance dramatically. I’d imagine that something like Bobcat will work quite happily on hardware which will struggle with Arachne. Having said that, my old 486DX66 was quite happy with a V90 modem under Windows 3.11 WfW. My needs obviously lag far behind what the Wintel alliance thinks are required :)

One thing which can distort the evaluation of what can be done is the CPU (and possibly the mobo) design. In my experience, running 16-bit software, the older chips (up to the 486) were far better at interrupt handling and hence realtime operations like comms. For fast modem work in DOS, a couple of 486DX66s gave me far less trouble than the later and supposedly faster P75/P90s. Indeed, I couldn’t run a V90 flat out on the P75/P90s without errors.

In response to slow SLIP access, Alessio Palma writes:

You miss info about protocol used with your modem. SLIP CSLIP or PPP with compressed or uncompressed packets? This could do the difference and reduce to 9600 or less your baud rate. Surely you used SLIP, which practically do &quot;nothing&quot;. Try you configuration with CSLIP or PPP at 14.4K.

TCP/IP eats memory, how much memory AT&T 6300 own? Did you tried the MS TCP/IP or K9AQ stack in your machine?

About nettamer, Jerry J. Haumberger <jerryjh@imt.net> writes:

Net-Tamer handles all of the common Internet protocols, according to its author, Dave Colston. I’ve used the XT version of Net-Tamer successfully with PC DOS 3.3 and a USR Courier HST modem from 1989 (external modem, which does not go beyond 9600 kbps when in non- priority mode) on my IBM PC/XT running at 4.77 MHz. The modem indicates that it connects at 2400, but Net-Tamer reports that it achieves an average of, perhaps, 400 CPS, which includes both mail upload/download and website access rates.

Of course, this version of Net-Tamer is non-graphical, and you have to be contented with less than high speed performance when downloading website material. Nonetheless, it’s an excellent example of SURVPC utility and limited resources functioning at their best.

Those AT&T 6300’s were as short on memory as they were long on weight - they had 640KB, no more, when the &quot;expansion kit&quot; was added in, and weight about 20kg.

Never tried the MS TCP/IP stack or K9AQ stack, I’m afraid. The ODIPKT interface was our selection here, and we stuck with it. Still have a number of machines running it, as I mentioned in my earlier post.

More on networking, Dale Mentzer <dmentzer@aristotle.net> writes:

I have Arachne on an old DTK 10mhz XT. It seems to me the real choke point in this setup is the VGA screen draws on the old 8 bit bus. I think I may also have gotten Bobcat running on it.

And Samuel W. Heywood <sheywood@shentel.net> writes:

I’ve done it quite successfully with several XTs with 2400 bps modem and having 360K floppy disks and with no hard drive. I have done it with Bobcat, Nettamer, the Barebones DOS Email System, and HTGET. No problem except for very slow speed, which of course is to be expected.