The vagaries of 1990s 32-bit Windows networking

Dec 08, 2021 12:16


I recently commented about a deeply misguided comment on HN that claimed that Windows 98 was the beginning of integrated networking in Windows. Wolfie Pauli (as I like to call him) applies: "that is not only not right, that is not even wrong!"

But, to be fair, which I rarely feel the urge to be towards Microsoft, Win98 did have one killer networking feature: (effectively) unlimited IP addresses.

I do not know the internals and the Web seems to have forgotten if it ever did... but the Win9x and NT networking stacks were very different.

The NT network stack is cleanly layered, supported multiple adaptor types and protocols and clients all in one, and was so complicated that up to NT 4, when you finished making changes to the networking configuration and clicked "OK", a tiny embedded Prolog interpreter fired up and ran a single embedded Prolog program, the only one in all of the DOS, OS/2 and Windows codebase that I'm aware of -- possibly the only one in any commercial OS anywhere. This Prolog code parsed your desired config, worked out how to interconnect all the layers of the NT network stack, and wrote the configuration file(s) and registry settings in order to give you what you wanted.

That's why a little progress dialog box popped up for a while.

I do not know if the Prolog has gone, but I suspect that the progress indicator box has gone just because [a] everything defaults to TCP/IP now, and the Netware support stuff is mostly or all gone and [b] computers are much faster now so there's no perceptible pause, so no need for a progress bar.

Win9x, on  the other hand, was Windows 4, the successor to Windows for Workgroups 3.11, and so I strongly suspect that its network stack was just a modified version of the WfWg 3.11 stack, from what tiny bit I know from experience plus some educated guesswork.

In Win95/95B you could only have a maximum of 4 TCP/IP addresses. That's on all adapters (Ethernet, modem, Direct Cable Conneciton, AOL dialup, etc.) put together.

Aside: yes, the AOL adaptor was its own device, not a Windows-managed modem device: AOL managed its own dial-up. Don't knock it, it worked: it was much easier to get online with AOL in the 1990s than it was with, well anything else, because AOL did a lot of R&D to make it happen. I know this because I've had a free journo AOL account since the 1990s and it gave me toll-free worldwide dialup, so I used it a lot when visiting Oslo, which I did monthly for a couple of years at the start of the century. (Thanks, Ryanair!) No wifi or broadband back then!

Win95 bound all protocols to all adaptors. No need for Prolog here. I had a Thinkpad 701C -- the classic folding-keyboard Butterfly model -- and I had several PCMCIA cards for it. One had a 56K modem. One was a 10base-T network card. One was a 100base-T network card. And I had direct cable connection for linking to other PCs. That's four network connections, if you're counting.

The AOL dial-up adaptor made 5.

Awooga! Alert! That means five network cards, and Win95 didn't support more than four IP addresses, in total, for all devices. A dynamic address -- that is, an adaptor that does BootP or DHCP -- is still an address. An adaptor that's not plugged in at the moment was still an adaptor and had TCP/IP bound to it so it needed a slot for an address.

(Oh, and forget about IPv6 - Win95 just didn't do that, period; it hadn't been invented yet.)

Result: problem. A basically-insoluble problem. Microsoft didn't really expect people to want so many IP addresses in those days.

Windows 98 allowed effectively unlimited IP addresses, so I could have all those adaptors at once.

Problem: the Thinkpad 701C is a 75MHz 486 with 40MB of RAM, and Windows 98 was too much for it. I used 98lite to trim it down, but it was still bulky and sluggish.

In desperation I did try Windows 2000 on the machine. Win2K on a 486 with 40MB of RAM is possible, just, but it's not much fun to use. Thankfully the old Thinkpad's hard disk tray was removable and I had a few drives and caddies, so I could switch Windows versions in half a minute.

Anyway: that was the sole significant improvement in networking in Win98 that I am aware of. The other thing 98 could do was drive multiple monitors, if you had the right - that is, from an extremely limited selection - graphics cards. Otherwise, it was just 95B with more drivers and the odious Active Desktop built in.

butterfly, windows 98, windows 2000, windows 95, thinkpad 701c

Previous post Next post
Up