Archive for the ‘uunet’ Category

Fast, or Floppy?

October 16, 2019

In 1999, I had a DEC Celebris mini-tower for my desktop PC at UUNET. It had a Pentium Pro 200 MHz CPU, which was top of the line when the PC was purchased in 1996. But after several years, it had been far surpassed by newer PCs. PC hardware was advancing rapidly and the useful life of a PC was 3-4 years before it was obsolete.

catapult DEC PC under Dave's desk

I was managing a group of web hosting developers, but I didn’t have the budget for buying new desktop PCs. My biggest problem with my PC was that it was too slow to play MP3 files while doing anything else, and those were all the rage then. One of my co-workers had discovered Napster.

Then I learned about a CPU upgrade that adapted a Pentium II-based Celeron CPU to a Pentium Pro socket: a PowerLeap PL-PRO/II at 667 MHz, more than doubling the CPU power. I ordered a couple. A week later, they arrived at the office.

The Celebris parts weren’t fully interchangeable with ATX PCs. The CPU was on a horizontal daughterboard and the screws and plugs and I/O plates were all a little different from the standard. But the upgrade CPU fit. Except… it had a big heat sink and cooling fan that needed to be right where the floppy drive was on the Celebris. On a standard ATX PC the CPU wouldn’t have had a clearance problem.

This was before USB and CD burners became widespread, so we actually used the floppy drives. I had a choice to make: fast, or floppy? I removed the floppy drive. I didn’t have a blank cover for the hole left by the floppy drive, so it became a large ugly air intake. That’s a price I was willing to pay. My PC was useful again! And I didn’t have to reinstall or debug any software! If I ever needed the floppy drive to reinstall an OS, I could open the case door and hang it off the ribbon cable temporarily.

I installed the other upgrade CPU in a rack-mounted Celebris that needed more speed. In the next fiscal year, we bought some new Pentium III PCs, and we got spare Sun workstations running Solaris to augment them, but my upgraded DEC Celebris got me through a tight budget with only a little hassle. I’ve always hated to waste things that could still be useful. More than a decade later, I threw out my floppy disks and removed the last floppy drive from one of my PCs.

Pubnix Access Systems: A Pioneering Web Hosting Service

October 11, 2019

The Context

It was the early 1990s.

The Internet was beginning its transition from supporting only U.S. government and university research to supporting ordinary businesses. The main applications on the Internet so far were email, Usenet news, and anonymous FTP. The World Wide Web was still a primitive research project. Gopher and WAIS were obscure and of little consequence.

Most homes had nothing faster than a 28.8kbps dial-up modem with which to access the Internet or other online services like bulletin boards or AOL.

Microsoft Windows was still only a fragile shell over MS-DOS. Linux was still an obscure and immature hobby project. Neither was suitable for running a server on. MacOS X was almost a decade away. But BSD Unix, a favorite operating system at universities, had recently become available on the PC platform.

The Beginning

A group of friends who had worked together for the University of Maryland, College Park as student programmers and system administrators were trickling out into the real world. Many of them reunited in Fairfax, Virginia at UUNET Technologies, the first commercial Internet service provider.

When Kurt Lidl left UMCP for UUNET (with a stop along the way at SURAnet), he had an inspiration. Most dialup services of the time, such as AOL, were oriented toward home computers and were limited to their own little world, with no connection to the larger, growing world of the Internet. Kurt wanted to create a public-access Unix system that people could dial up to, login to a shell account, and connect to the Internet and use email. He came up with the name “Pubnix” for this public Unix service. Although Pubnix started out as a separate venture, Kurt soon sold its assets to UUNET, and it became a small semi-autonomous division of UUNET with Kurt managing it.

Soon Josh Osborne and Dave MacKenzie joined Kurt at UUNET and helped him start developing Pubnix. They wanted it to be as automated as possible, so they created a system to generate configuration files with Perl programs using an SQL database, University Ingres (the only DBMS at the time that ran on BSD Unix). Hours were spent at whiteboards designing the database schema and provisioning systems for users and servers. Within a few months, the service was up and running on a few DEC Pentium PCs running BSDI BSD/OS in UUNET’s offices at Fairview Park in Fairfax. The BSDI company had started in the UUNET offices, so there was a close connection from the beginning.

There were jokes about creating public terminal rooms and combining them with a microbrewery to create a “brewpubnix.”

Additions

As they were designing Pubnix and building the technology to run it, the Internet was changing. The World Wide Web gained enough capabilities to be a useful tool for companies to use, not just researchers. Kurt realized that they needed to change directions, as shell account systems were becoming obsolete, and that the Pubnix shell accounts technology could form the foundation of a shared web hosting platform, one of the first in the world. So they adapted their configuration system to provision a version of the NCSA httpd customized to support virtual hosts, and Josh modified the kernel of the BSD/OS operating system to support IP rate limiting by virtual IP address, so each customer could have a certain amount of bandwidth. By late 1994, UUNET’s virtual web hosting product had customers. Unlike GeoCities, which also started in 1994, each customer’s web site had its own domain name. Around that time, Chris Ross came to UUNET from UMCP and joined the group.

As customers were added, the Pubnix platform grew in capabilities. University Ingres was replaced by a port of the XDB SQL database which Kurt commissioned. The NCSA httpd was replaced by the more flexible Apache web server. SSL connections using the Netscape web server and Real Media hosting on Linux were added.

Dave MacKenzie had the idea to add virtual FTP hosting, and in a few days he modified the WU FTPD to support virtual hosting, added database and Perl script support, and presented the completed product to UUNET’s marketing group to add to the product price list and start selling. In those days as a small pioneering company, it was that easy to come up with a new product. This may have been the world’s first virtual FTP hosting service. It gradually took over from UUNET’s original scheme of selling customers a subdirectory of ftp.uu.net. Now they could have their own FTP host name.

UUNET started a Windows NT based web hosting service as well, which was independent of the Pubnix effort and seemed to have learned none of the lessons from it. Provisioning and monitoring were done manually, as NT was hard to configure programmatically, so the staff to customer ratio for the NT service was much higher. The independence from being an independent division of UUNET also proved to have a downside, in that the rest of the company began to marginalize and ignore the Pubnix product line, even though it was probably the most profitable product line the company had.

Multiplication

More people joined the Pubnix group, including Andy Crerar, Russell Street, Joey McDonald, Li Glover, and Peter Davis. Eventually, as UUNET grew, Kurt left the Pubnix group to start an R&D team. It was also based on the BSD/OS platform, and became a technology supplier to the Pubnix group in a symbiotic relationship, as the R&D systems were configured by the same SQL database. New technologies were incorporated as they became available, including Kerberos v5, Apache Stronghold for SSL,  ProFTPd, and Postgres. The service was running hundreds of web sites on a mixture of dedicated and shared servers.

UUNET was bought by MFS (Metropolitan Fiber Systems), who were soon bought by WorldCom, who then also bought MCI, and Pubnix became a tiny part of a huge conglomerate. Along the way, the former AOL web hosting division was acquired, and the Pubnix staff was moved into their offices in Reston, Virginia. The AOL web hosting ran on customized Solaris servers with little centralized or automated management. With input from Dave MacKenzie, they developed an Oracle database called FARMS to drive configuring their systems.

The End

As MCI WorldCom was going bankrupt in a financial scandal, most of the Pubnix and R&D staff left or volunteered to be laid off. At the end of 2002, the product line was sunsetted. Kurt Lidl tried to buy back the BSD/OS hosting business from them, but got stonewalled by MCI WorldCom’s legal department until it was too late.

For more context, see this history of UUNET’s product lines, which mentions Unix-based web hosting.

When Your Naming Scheme Runs Dry

August 6, 2008

The group of system administrators I worked with for over a decade had a tradition of giving Unix computers host names that followed a different theme for each cluster of computers.

We started out as students running the computer labs for the College of Engineering at the University of Maryland, College Park in the late 1980s. Our first public computer lab was a dozen or so Sun 3/50 and 3/60 workstations named after Tolkien’s The Hobbit. Host names included shire, bilbo, gloin, rivendell, etc.

When the Sun 3’s became obsolete, we turned them into X terminals connecting to several Sparcstation servers, which got their own naming scheme: coke, pepsi, jolt, and mountain-dew. We could have kept adding soda names for awhile, but we didn’t need many servers for that lab.

In the staff office (the “Hackers Pitt”, with spelling from Buckaroo Banzai), the Sparcstations we got for testing and software development were called tweak, twiddle, and frob. Good thing we didn’t need to come up with any more names in that series!

Here are a couple of pictures of the Hackers Pitt. Dave, Josh, and Chris:

Kurt, Dave, and Randall:

Later, we opened up another lab, consisting of Decstations, I think. We decided to go with names of computer languages as the naming scheme, so we had workstations called basic, cobol, lisp, perl, etc. There was a networked Postscript laser printer in the lab, and someone got the bright idea to give it a name in the same scheme, so naturally it had to be called postscript! A few months later, though, we had to rename it, because some software would get confused and malfunction when encountering a printer queue called postscript.

Aerospace Engineering named their computers after airplanes. Their Sun3 server was called hellcat, a WWII fighter.

There was one department in the College of Engineering that simply numbered their workstations: Chemical Engineering, whose computers were named cm##. The student sysadmins didn’t like that scheme much, because it was hard to keep those computers straight. Their names had no memorable personalities, so we had trouble remembering whether we were supposed to do something to cm18 or cm19, or cm23 or cm32.

Within a couple of years, many of us started work at UUNET and created one of the first commercial web hosting services. We took our penchant for naming schemes with us. Here’s a picture of Josh, Chris, and Kurt in Kurt’s office at UUNET assembling some servers:

The infrastructure servers (email, rdist, backups, etc.) had names of butlers from literature: jeeves, nestor, smithers, alfred. That was a clever but very restrictive scheme. It turns out there aren’t very many well-known butlers in literature. Now there’s a Wikipedia article listing them, but at the time we were beating our heads against the wall trying to think of more.

For Kerberos (secure login) servers, the list was the most limited. The first one was called keymaster (from Ghostbusters). When we added a second one as a backup, we had to make up a name. Would it be keyslave or keyminor? Hmm, maybe that wasn’t such a great idea.

For customer web servers, we decided on a larger class of cleverly appropriate names: spider names. The first few were easy: charlotte, blackwidow, brownrecluse, tarantula, trapdoor, funnelweb. After exhausting the well-known ones, we had to get more creative or obscure: peterparker, banana, garden, huntsman, crab. Customers had to login or FTP to the machine’s name to administer their servers, and it felt a little silly to tell them their web server was hosted on, say, banana. Who actually knows there’s such a thing as a banana spider? As we got more customers, we wasted quite a bit of time researching and compiling lists of spider species so we’d have enough names for new servers we were bringing online.

It all started out as good fun, but these days I’d just call them all web001, web002, mail, etc. and be done with it. No creative naming scheme will scale to hundreds of computers.

I confess that at home, I adopted a naming scheme based on classical elements: fire, water, air, earth, and a few more inspired by that pattern. I haven’t changed it partly because the limitations of that scheme help motivate me to not keep too many computers at home.