Linux in the Real World
Texas Agricultural Extension Service (TAEX) “helps people improve their lives through an educational process which uses scientific knowledge focused on issues and needs”. Much of TAEX's mission involves information transfer to the people of the State of Texas. Like many government agencies tasked with providing better service with a shrinking resource base, TAEX has long been interested in innovative approaches to better serving the public without the barriers of time and distance.
TAEX began experimenting with electronic information distribution in 1984 with dial-in bulletin boards. In 1992, we rescued an aging Compaq DeskPro 286 from the auction block. We transformed it into an experimental Gopher/PopMail/FTP (File Transfer Protocol) server. The surprising response to this soon filled the 40MB drive. We began an exhaustive search for a better platform.
The best server software ran on Unix platforms, but they were prohibitively expensive. We were already using some Unix platforms for mail and networking applications. We tried to use one as a gopher server, but the response time was inadequate. We realized that additional duty as an information server would require significant system upgrades. We would need to increase main memory, add more mass storage, upgrade the operating system, and obtain the separately marketed “software development system” (basically a C compiler, awk, and yacc). Unfortunately, any one of these items cost more than an entire high-end Intel-based PC! When we tried to get price quotes, we discovered that the TCP/IP networking package for the upgraded SVR4 operating system was “not yet available”. Coincidentally, our agency also received another decrease in funding levels.
About that same time, a Finnish college student added networking to his free “Linux” operating system. This free Unix clone ran on readily available Intel 80386/486 processors with inexpensive drives. Initial experimentation on an 80386-based box showed that it actually worked quite well! TCP/IP networking was thoughtfully included, as was a superb C compiler system. Linux was like no other Unix system we had ever used, as it combined some BSD features with some SVR4 features, while maintaining some POSIX compliance. Our initial confusion changed to the delightful perception that Linux provided a most sensible mix of desirable features.
We obtained a low-end 80486 machine, fitted with a network card, and installed Linux. Both UMNs gopherd server and NWU's GN combination Gopher/WWW server compiled easily, and “Leviathan” was born. From a user's viewpoint, Leviathan seemed to operate faster, and we hoped that it would be able to handle a bigger user load than the Compaq. We transplanted the information tree from the Compaq to Leviathan, and both machines ran side by side, tangible proof that simple (and obsolete) computers could still be useful.
The initial information served via gopher included the “Master Gardener” files, the TAEX personnel directory, and abstracts of all Extension bulletins and leaflets. Wherever possible, we also provided the full text of these publications. We put the TAEX Agricultural Software Catalog on line. The 200MB drive soon filled, and a 300MB drive was added. Leviathan began performing as a bootp and PopMail server as “extra duty”. We scanned several clip-art collections and made them accessible. Usage grew steadily. Soon, users from all over the world were logging in round the clock. The March 1994 access logs showed that 2,245 sites obtained almost 100MB of mostly clip-art at a rate of more than 500 accesses daily. Then, Mosaic happened.
We had been experimenting with the Mosaic WWW browser since December 1993, but it was under Linux and X-Windows that I first experienced an implementation of Mosaic that really impressed me. Mosaic under Linux was stable, flashy, and very useful. This caused me to review Mosaic for DOS/Windows platforms. While not as stable and full-featured as the Unix versions, we evaluated it as tolerable. The World Wide Web concept seemed tremendously important, so we began demonstrating Mosaic throughout the Agency in February 1994. Newer versions of GN had added the ability to serve a new protocol, Hyper Text Transfer Protocol (http), which was used to tie together a “World Wide Web” (WWW) of networked information servers. In May 1994, text pages were marked up for Hyper Text Markup Language (HTML), and GN began responding to http requests as well as gopher users. Leviathan broke the 1,000 accesses/10MB per day mark that month with 31,427 requests, 3,406 of which were from http (Mosaic) clients.
We added anonymous FTP access in August 1994 at the request of many users. Leviathan began distributing the National 4-H Enrollment Management software via gopher, http, and ftp access. In September, Leviathan also became TAEX's departmental CCSO qi/ph maintenance client. The 2,000 accesses per day watermark occurred in October 1994, when GN served 28,345 files (510MB) in 63,000 accesses, of which 60% (36,000) went to gopher clients. Access rates increased by approximately 10,000 per month in both November (72,300) and December (83,801). December 15th's 4,570 accesses broke the previous record of 4,370 accesses established the day before. December's average access rates were about 2,700 per day, with 20.6MB of files retrieved daily. Gopher type accesses still accounted for 51% of the accesses (42,371), but http accesses increased more than gopher accesses from the previous month.
Cumulatively, between February and the end of December, Leviathan served 188,672 files (3.71 gigabytes) to 33,542 unique machines in 434,025 separate transactions, of which 295,330 went to gopher users. During the same time, another 4,844 files (151MB) were retrieved via anonymous ftp. Leviathan was still serving as a bootp and PopMail server in its spare time, while accepting logins for maintenance of our part of the University-wide CCSO “ph” directory services database system. All this activity took place on an inexpensive 80486/33 computer sitting under a table, with neither monitor nor keyboard attached.
- High-Availability Storage with HA-LVM
- DNSMasq, the Pint-Sized Super Dæmon!
- Localhost DNS Cache
- Real-Time Rogue Wireless Access Point Detection with the Raspberry Pi
- Days Between Dates: the Counting
- You're the Boss with UBOS
- The Usability of GNOME
- Linux for Astronomers
- Multitenant Sites
- PostgreSQL, the NoSQL Database