<<

ISSUE 2 SUMMER 1998 K This publication may be freely reproduced in whole or in part B ■■■■■■■■■■■■■■■■■ or the typical modern ISP,the It was a nightmare made even worse by the memory since the PPro motherboards could clock probably started running a fact that so many resources were accommodate up to 512MB of RAM where we bit over two years ago. Sure, there concentrated in the minis that a crash, expected to need only 192MB in the absolute are plenty of older ISPs, but few of software problem, internet attack, or user worst case. Most shell boxes run with 128MB them have had to contend with mistake could effectively take down our just fine, supporting up to 2000 user F100% per month growth and many of the entire service. accounts on each. larger ones also started more as BBS systems then ISPs. If you were like us, however, you This situation convinced the entire What we worried about was that the started right as the Internet really started to BEST Engineering department maintenance required to support a become popular and that meant having to that minis, the so- larger number of smaller boxes subsequently deal with the strain of very called would increase. In fact, the time rapid growth. ss required to maintain 24 FreeBSD boxes has occupied less than half For us, two years ago was indeed 11 fforor ISPISP the time we spent dealing with the the beginning.We had made ## two minis and plethora of smaller an educated guess as to SDSD vendor boxes, something which was our best market, hit it BEST Internet Communications, Inc. o CONTINUED... running, and turned rreeBeeB out to be right.With FF that out of the way, the by Mathew Dillon “enterprise name of the game for servers’’, are a huge BEST Internet was to simply mistake.To make a mini cost accomplish the engineering and effective would require decking each programming feats required to support one out with half a million dollars In This Issue: a rapidly exploding user base. worth of hardware, and then actually to use it would require putting a lot of FreeBSD No.1 for ISPs In the very beginning, we used BSDI and marbles in one bag, so to speak. by Mathew Dillon, BEST Internet Communications FreeBSD and, if the times had been less trying, we wouldn’ have made the almost In moving back to running FreeBSD on What is FreeBSD? fatal mistake of shifting to larger multi- rack-mounted Pentium Pro 200’s, there by Jordan K. Hubbard, Editor processor minis from a brand-name were some issues that concerned us vendor who shall remain nameless.We and some that did not.We knew that Coda on FreeBSD somehow convinced ourselves that moving the reliability was there, especially by M. Satyanarayanan, Carnegie Mellon University to larger commercially-supported boxes with the PPro 200s and their would both help sell our service and provide integrated ECC and secondary Another FreeBSD Success Story: adequate margins for growth. caches.We had also learned that the In ISP Revolutionized governing limitation to all ISP support In ISP Revolutionized by Dan Benjamin, Network Analyst That mistake almost drove us out of business. boxes is “disk I/O”,“disk I/O”, and The scalability never materialized and the “disk I/O.”(Short of putting ten SCSI work required to maintain the minis went interfaces in each of the two mini Getting Kids on the Web with TCJA Technisch Creatief Jeugdcentrum Arnhem from difficult to near impossible. Every , the ten FreeBSD boxes that by Wilko Bulte, hardware addition required a ridiculous replaced them would win hands amount of work and money to install.We down).We also knew that CPU power FreeBSD and the Palm Pilot couldn’t get bug fixes for weeks or months. would not be a factor and, indeed, it by Oliver Fromme There were all sorts of odd licensing fees that hasn’t been – the new machines made it impossible to ““genericize”” machine usually hit physical disk I/O limits long How FreeBSD Became installations. I will spare you the rest of the before the CPU saturates. Finally, we thethe FavoriteFavorite OSOS onon mymy DesktopDesktop gory details – it wasn’t a pretty scene. knew that we could balance out and by Martin Cracauer, BIK – Aschpurwis + Behrens tune “CPU vs.disk I/O” by adding PAGE 2 okXR13 ISSUE 2 • SUMMER 1998 ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ■ made possible by the fact that every single FreeBSD box is configured and updated If you’re looking for a stable, easy-to-install with a long and proven ◗ from a template machine.That’s also something we just couldn’t do with the vendor ◗ boxes due to the massive customization each one required and odd licenses which track record, FreeBSD is the OS for you! ■ required us to be frugal about installations. Who is the FreeBSD Project? ◗ FreeBSD has also done an excellent job with service-specific boxes such as our ◗ ■ “newsfeeds box,” our “newsreader boxes,” our “sendmail back-end boxes,” and other The FreeBSD Project is a group of over 100 various administra-tive-duty machines. Since the single largest cost for an ISP-capable developers led by a 17 member “core team” rack-mount PC is usually the disk drives, most of the non- boxes are incredibly which sets overall direction and ensures a ■ ◗ cheap because they require no real disk storage.A shell machine will have a 4G and ◗ consistent project focus. Most of the two 9G disks to start out with, whereas a proxy box generally requires only a single 4G developers come from commercial software disk.The ability to flexibly tailor PC hardware configurations to specific tasks can lead development and BSD UNIX backgrounds, ■ to some incredible cost savings without impacting maintainability. providing a unique perspective on what can ◗ ◗ and should be done with this technology in Ultimately, the KISS principle applies to administration. No (major) NFS mounts, no the marketplace. Our long history of ■ attempt to allow users to log into just any shell machine – we assign them one and that software development experience has also is where their account resides. No attempt to slave news is made since each newsreader paid dividends in the way that the project is ◗ box is self contained – users pick one and don’t switch.We were worried that the load ◗ organized, with multi-track development ■ would not balance well. In fact, it balances extremely well. Sure, some shell machines (stable and experimental), strong use of are loaded a bit more than others, but if it isn’t noticeable it isn’t a problem. It is, control (CVS) and a highly perhaps, a somewhat different approach to the concept of a “distributed system’’, but

■ centralized development model (not just the ◗ it works, nonetheless, and works very well. ◗ kernel, but the entire system) being just some of the results of our experience. Where we used to get a cascade of complaints when some part of the system would ■ wedge, now we get only a few.Where we used to have a difficult time working out the Where do I get more information? ◗ logistics of when to purchase a new machine or when to add a disk, now it becomes ◗ trivial because the user base on each machine builds, matures, and that’s it – we go onto

■ The project runs a web at the next machine.We stay one or two boxes ahead of the growth curve and everything http://www. .org which contains runs smooth as glass. a lot of useful information (also mirrored in ◗ ◗

■ over 25 countries—please see I think it would be fair to say that FreeBSD not only saved us from past mistakes, but http://www..freebsd.org now empowers us to continue building our business at whatever rate we choose. 4 for the nearest local server) and you’re highly encouraged to visit it. ◗ ◗ Hi, I’m Dot, one of To reach the FreeBSD development team, Jordan’s 15 cats. please send email to [email protected]. ◗ ◗ If you have a matter which requires the WhatWhat isis specific attentions of the core team (a commercial request or some other proposed cooperative venture), please ◗ FFrreeBeeBSD?SD? ◗ ◗ ◗ ◗ send email to [email protected]. by Jordan K. Hubbard Editor So, in short... ◗ ◗ reeBSD is a UNIX®-compatible operating barrier to some, we’ve made sure that the F system based on 4.4 BSD Lite2 from the system is always available free of charge on the The marketing hype may tell you that NT University of California, Berkeley and its Internet (ftp://ftp.freebsd.org/pub/FreeBSD) can do everything a well-configured UNIX contributors. BSD has been in more or less and we welcome both free and commercial machine can do, but we know differently ◗ ◗ constant development for over 15 years.The redistribution of the technology. from practical experience and if we didn’t same technologies used in FreeBSD have also feel this was the best possible technology for been the basis for many commercial operating FreeBSD can be used for everything from the needs of Internet Service Providers and other commercial/private interests, we’d be ◗ ◗ systems, from Digital’s to Sun’s SunOS, creating web servers, providing enterprise and still remains a staple of commercial OS mail services, file and printer sharing (for using something else ourselves! As it is, development today. other UNIX systems as well as the Windows thousands of commercial users, including and platforms) and serious such notables as Yahoo! and Walnut Creek ◗ ◗ Like its commercial counterparts, FreeBSD software development. FreeBSD also provides CDROM (who run the biggest general FTP also seeks to make the task of using and binary emulation for other systems such as server in the world on FreeBSD), are happily installing the system as simple as possible, BSD/OS, and SCO, allowing applications running FreeBSD and we hope that you will ◗ ◗ going on the basic principle that no advanced available for those systems to run on FreeBSD choose to do so too! E technology is worth much if those who wish and providing the widest possible selection of to use it are presented with significant applications to the user. difficulties in doing so. Since cost is also a ◗ ◗ ISSUE 2 • SUMMER 1998 KBcd[] PAGE 3 ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ f he FreeBSD Project is pleased to announce the public FreeBSD beta test of Blender, a full-feature 3D design, rendering and animation package from NeoGeo b.v. NeoGeo (http://www.neogeo.nl) is the Netherlands’ largest 3D animation studio, and has developed Blender in-house to meet their demanding requirements.

TBlender allows the rapid prototyping and design of breathtaking 3D visuals and complex animations, and handles all phases of the design and production process.

“The release of Blender brings the power of professional 3D animation design software to the PC in a feature-packed and very affordable form.” (Ton Roosendaal, NeoGeo/Enji)

See http://www.neogeo.nl/blender.html Blender for more information, news and to b download{ Blender today! m m m m m m m

administration; an capability of Coda has served CodaCoda onon FFrreeBeeBSDSD access-list model of as the inspiration for the by M. Satyanarayanan School of Science, Carnegie Mellon University protection; and a user- IntelliMirror component of level implementation Microsoft’s forthcoming NT ● strategy that keeps the 5.0 file system. entire server and all but a tiny fraction of the We invite the FreeBSD ● F client out of the kernel. community to join us in transforming Coda from the In addition, Coda experimental prototype that it ● provides many unique is now to a high-quality, well- capabilities for next- engineered system for the free generation wired and UNIX community.The person ● wireless environments. leading this effort is Peter Braam These include: support ([email protected]), a senior for voluntary and researcher in the Coda project at ● e are pleased to inform University as a test bed for involuntary disconnected Carnegie Mellon. Other people Wthe FreeBSD community research in replication and operation (including hoarding, currently involved in this work that the Coda File System is now mobile computing.As a reintegration, and conflict- at Carnegie Mellon include Bob ● available for FreeBSD 2.2.5 and descendant of the Andrew File detection); support for weakly- Baron, Henry Pierce, Robert 2.2.6. Our hope is that the free System (AFS), it inherits many of connected operation with Watson, and Jan Harkes.The full availability of this state-of-the-art the key features that make AFS dynamic adaptation to network cast of contributors to Coda over ● distributed file system in source attractive in large-scale quality ranging from modem its multi-year evolution is too code form will attract serious distributed environments.These speeds to LAN speeds; and long to list here. users and developers whose include: a client-server model transparent optimistic read-write ● talents will enhance the system with trusted servers and server replication of data, with For further details, visit the Coda along many dimensions. Since untrusted clients; location support for directory resolution Web page at Coda also runs on NetBSD and transparency, so that server and application-specific conflict ● www.coda.cs.cmu.edu.To obtain Linux, we hope that over time it identities are completely hidden; resolution. Planned research papers and Ph.D. theses will become the distributed file aggressive on-disk whole-file enhancements to Coda include generated by Coda, follow the system of choice for free UNIX client caching, with a further ● write-back caching for improved “papers” link.To learn more platforms. level of block-level caching in performance while strongly- about the broader research the buffer cache; organization of connected, and integration with context in which Coda is being data into logical volumes for ● Coda is a distributed file system authentication.The developed, follow the “Coda developed at Carnegie Mellon purposes of easy system disconnected operation project” link. k PAGE 4 okXR13 ISSUE 2 • SUMMER 1998 ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ AAnnootthheerr FFrreeeeBBSSDD SSuucccceessss SSttoorryy:: AAnn ISPISP RRevolutionizedevolutionized by Dan Benjamin Network Analyst, Intel UNIX Systems Manufacturer

★ s a Network Analyst and an Intel UNIX Systems Manufacturer, Macintosh servers and put their faith in an architecture A being able to offer my clients a wide variety of options is that had slowly eroded the Mac’s place in American always a priority. Most of my clients are companies who need computing.A difficult task.

★ servers, and support or consulting work like network analysis, setup, and administration. Few companies I l Fortunately, establishing FreeBSD’s rock-solid stability deal with have an unlimited budget – on the contrary, one of l proved to be an easier than expected task:As this client

★ the most challenging aspects of this business is stretching conducted most of its business on the Internet, they had the dollar. In many cases, my clients incorrectly believe that all used Yahoo extensively – both to research and locate they need to spend a inordinate amount of money to purchase a information, as well as to publicize and advertise for

★ high-end server.A FreeBSD server built with fault-tolerant themselves and their clients.What they didn’t know was that Yahoo components has, in my experience, always proved to be a used FreeBSD almost exclusively (FreeBSD News, Issue 1). Once they excellent, cost-cutting solution to this problem. learned that FreeBSD also powered ftp.cdrom.com, their decision to

★ switch became even more clear. In addition, the company president, Real Life Example:A local ISP and Web presence provider was also a Macintosh user and fan, was actually in favor of FreeBSD growing rapidly.They were adding clients regularly and new running their on-line business. Because of his background with BSD

★ businesses were signing up on an almost daily basis.They had UNIX networking, he knew it would improve speed and reliability. recently upgraded their bandwidth and were renting larger office space in a better location. However, But what about the people “in the trenches”, the designers

★ they quickly found that their “A FreeBSD server and developers who would need to access and update the servers, primarily three overloaded Web sites on a daily, even hourly basis. How would a , just couldn’t cut it, built with fault-tolerant FreeBSD server change their world? There were several ★ even with memory and processor components has, in my legitimate concerns, first and foremost, how would the upgrades.The client was concerned developers interface with the new server? Using ftp was that the price tag for a new, high- experience, always not an option – that method was cryptic and went against ★ performance server to handle their proved to be a excellent, the grain of the Mac user’s mind set. Drag and drop, double DNS,Web access, FTP, and E-mail click, theirs is the world of the original GUI. services would be too high. Despite cost-cutting solution...”

★ the new business, they did not have Fortunately, Research Systems UNIX Group (RSUG) at the an unlimited budget but also could not afford to be without a fast University of Michigan has developed Netatalk, which provides access machine that could deliver rock-stable performance. FreeBSD was to the for Macintosh and other systems with

★ the answer. AppleShare client software. Simply put, Netatalk is a file and print server for AppleTalk networks and is available for FreeBSD from the This company was a Macintosh shop from the ground up, save for one Ports collection. Installing software from a FreeBSD Port is usually as

★ PC running Windows 95.They did (and still do) all of their graphic simple as downloading a tar file (or, if you already have the ports design, web, and paper advertising for themselves and for clients collection loaded, simply going to the correct directory) and typing using Macintosh computers.With this in mind, I knew that convincing “make install”.A few changes to some configuration files, and a quick ★ them to switch server platforms could be a difficult task. In past restart of inetd, and the situations, moving a client site from an aging SunOS, NT, or Novell Macs were again network to a FreeBSD managed one was a relatively straightforward dragging and dropping ★ task. In many cases it was a simple matter of the client adjusting to a to their hearts content. slightly different flavor of UNIX. In others, the client might opt for I used , a remote network management or hire a full-time UNIX-savvy networking package created by Andrew Tridgell – also available as a ★ administrator. In any case, the transition was usually straight forward FreeBSD port, to provide connectivity to the Windows 95 machine. and the performance improvements could be easily measured – the switch invariably meant a jump in productivity and a decrease in After transitioning DNS, the next and most important step was ★ operating and upgrade costs. Integrating a FreeBSD system into a pre- transitioning the web sites.At that time, the server was a Pentium 160 existing network is easy when you take advantage of the numerous with 32MB memory and several SCSI drives. It ran FreeBSD-Release applications available from the FreeBSD Ports collection. 2.1.7 and an early Apache Web server.The performance improvements ★ were impressive, to say the least, and it wasn’t long before all of the But convincing this all-Macintosh shop to switch hardware platforms sites were moved. Mail and FTP services quickly followed, and and operating systems in one motion wouldn’t be easy.This client eventually the single FreeBSD server had completely replaced several ★ would literally need to shut down their dependable (albeit slow) Macintosh servers. ISSUE 2 • SUMMER 1998 KBcd[] PAGE 5 ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲

The introduction of the server brought a higher level of security in addition to GettingGetting performance improvements. I’d taken several measures with “sendmail” to prevent spamming and relaying – something that had KidsKids plagued them in the past. I’d also installed the TCP Wrappers port which helps prevent on the unauthorized access to well-known services, on the and several other security tweaks – all for the cost of a pre-configured FreeBSD server. WWebeb Since then, I’ve installed several more servers and replaced the initial server with a Pentium withwith II running FreeBSD 2.2.5-stable (pre-2.2.6). Internally, their network has never been faster but their clients – to whom the upgrades TTCJACJA have meant the most – are quite happy with by Wilko Bulte ✦ ✦ the improvements in speed and the lack of hat is TCJA? TCJA is the Technisch Creatief downtime. Most recently, we added an NT Jeugdcentrum Arnhem in Arnhem,The ✦ ✦ W server to handle active server pages. It Netherlands.TCJA loosely translates to “Technical coexists with FreeBSD rather well, sharing and Creative Youth Center.” ✦ with it the dynamic content of a backend SQL ✦ server. TCJA is a foundation, in existence for over 25 ✦ ✦ years, that has the goal of popularizing scientific And this is just one example. Most of the and technical subjects for kids from 10-20 years of server solutions I provide to my clients are age. Emphasis is put on getting women into TCJA’s ✦ running FreeBSD, all with excellent results. ✦ activities since, in the Netherlands, women in technical or scientific disciplines are a very Another recent project involved the rare phenomenon. In fact, the influx of students in almost all technical studies has been

placement of a dual-homed, mirrored and ✦ ✦ declining over the past few years. security-hardened FreeBSD mail server to filter spam and deny relaying. Beneath their

✦ We try to achieve our goals in ways that kids appreciate – not putting them into class ✦ firewall sit several more FreeBSD servers to rooms but instead giving them the opportunity to obtain hands-on experience with the handle internal pop mail and file serving subjects at hand.The variety of subjects include chemistry, photography, electronics, silk ✦ across the WAN. ✦ screen printing, wood and metal working, and last but not least computer related fields.

But lest we forget, FreeBSD isn’t only a server. ✦ ✦ In order to make all this possible,TCJA has their own building with a small paid and a The FreeBSD X I’m sitting in much bigger unpaid volunteer staff. Money and equipment is donated by the government, front of now allows me to run StarWriter 3, companies and individuals. ✦ with it’s MS Word-like interface, to compose ✦ this article. I manage my business finances Computers at TCJA ✦ and client lists with databases that run on ✦ FreeBSD, and we even do graphic design As we’ve already mentioned, a lot of equipment is donated and our computing (with the Gimp port) and (with the JDK infrastructure is no exception to this rule.We run a thinwire ethernet network with ✦ ✦ 1.1.5 port), all using FreeBSD. Cabletron hubs that connects all systems to a single LAN.The network involves six Sun SparcStation IPCs, a Sun SparcServer 4/470, nine 486DXs and one 386DX-based PC ✦ Overall, although I use it on a daily basis ✦ machine.The Sun machines were a gift from Philips Electronics and Sun Netherlands, the within my own business, FreeBSD has had it’s PCs were partially bought and partially donated by Digital Equipment.We even have Sun

greatest impact on my clients in the hardware ✦ ✦ equipment that was donated by a generous guy in California (thanks Gary!) and consulting business. I can provide them with reliable servers and workstations that In this network five tabletop 486DX2/66 boxes run MS Windows for Workgroups and ✦ guarantee the performance and reliability my ✦ Netscape Navigator for Web access, while a 486SX33 runs our administration (also with clients require.And because FreeBSD is free, I WfW).A 486DX/33 is run with MS DOS to allow computer-aided ✦ can pass that as a savings on to my ✦ printed circuit design. customers. , ✦

✦ The remaining two PC machines are more interesting - they both run FreeBSD 2.2.1-Release. Both boxes are 486DX/33 EISA- ★ ★ ★ based Philips servers. One of them is dedicated to NFS, serving 9 ✦ ✦ both the Sun boxes and the PCs (using Samba with WfW).The CONTINUED... PAGE 6 okXR13 ISSUE 2 • SUMMER 1998 ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ✦ ✦ Sun SparcServer 4/470 is also run as an NFS server and because it had to be powercycled to add a UPS. also handles the diskless booting of the Sun IPCs.All Uptime before the UPS was also 100+ days. Suns run SunOS. ✦ ✦ It is well connected to NLnet, being almost on the The other PC is the more interesting one: it is our NLnet backbone at the Nijmegen University, so please gateway to the Internet. It has been dubbed feel free to take a look at http://www.tcja.nl. It is ✦ ✦ “dontpanic.tcja.nl”, a name taken from the cover of the mostly in Dutch, but an English abstract has been Hitchhiker’s Guide to the Galaxy (although we admit provided and some photographs help to get the idea we christened it this way in hopes that it would live across. kl ✦ ✦ up to it’s name and so far it has done so brilliantly). If you are interested in the quality of the power grid in Dontpanic’s connection has recently been upgraded Nijmegen, you can ask our intelligent UPS by checking ✦ ✦ from a 28.8K modem to an ISDN/PPP link using a Teles http://www.tcja.nl/ups.A Java applet will draw you 16.3 interface board. Since all our Suns and PCs tend to diagrams of the previous 7 days. be run at the same time, especially during weekends, ✦ ✦ we run a caching Apache proxy server on it to limit Apart from serving our web pages with Apache, the actual ISDN/PPP link traffic as much as possible.The machine also handles our email traffic.All mail to ISDN link uses the bisdn/ppp package which tcja.nl is UUCP-queued at www.tcja.nl and grabbed ✦ ✦ we adapted slightly for our specific needs. from there by dontpanic.tcja.nl whenever the ISDN/PPP link is up.This may sound a bit strange to To protect our network from the evil outside world US-based people, but there is no such thing as a free ✦

✦ (and probably also to keep our adventurous kids from permanently connected phone/ISDN line here in the hacking the Internet too much ;-) dontpanic runs a Netherlands.You always pay a metered fee, so queuing customized version of the TIS firewall tool kit in is the answer if you don’t want to go bankrupt. addition to a set of ipfw filters using FreeBSD’s kernel- ✦ ✦ based firewall.Apart from its networking duties, Our Experiences with FreeBSD “dontpanic” also serves as our local mailhub (POP for X the PC Eudora or Netscape clients, NFS mail spool for So, what do we think of FreeBSD? You’ve probably ✦ ✦ the Suns), a local Apache Web server (more on our Web guessed it already.We are more than just a bit happy stuff in a moment), a local DNS server and as the with the performance and reliability of FreeBSD.We printhost for an Apple LaserWriter postscript laser started in the dark ages with 386BSD 0.1 + patchkit, ✦ ✦ printer (again with Samba for the WfW clients, and lpd and have never regretted using BSD technology. for the Sun/FreeBSD machines). It’s perhaps not entirely recommended to have all these functions In the course of events a considerable number of the ✦ ✦ running on the firewall box, but we have to use what people who’ve seen our setup have also converted to we have in this case. FreeBSD.This included a number of Linux adepts, but also WinNT users who are currently contemplating the ✦ ✦ We are currently in the process of migrating all our move.You could say we act as a technical evangelist Sun disk storage to SCSI disks, the Sun server used to group who can show a proven track record in the use have six 900MB SMD disks and one 1.3GB IPI disk. For of FreeBSD. ✦ ✦ reasons of power consumption and heat production, donated SCSI disks are taking their place. FreeBSD has proven to be very stable, adaptable to local needs (thanks to the availability of source code) ✦ ✦ Our Web Presence and economical. Even with our sometimes questionable and limited hardware resources, the reliability of An organization like ours of course must the total system has proven to be better than also have it’s own Internet domain commercial operating system offerings. ✦ ✦ registration and a Web server.Thanks to some kind souls, a 386DX/40 with 8MB Any questions about this article, general and a 300MB ESDI disk now exists as remarks, or even a proposed donation of

✦ R ✦ 0 www.tcja.nl. It is also of course running equipment or money to the TCJA can be FreeBSD (2.1.0R in this case). Because it is sent to: 20 miles away we tend to leave it alone as much as e ✦ ✦ possible. So far, only a single unscheduled intervention Wilko Bulte ([email protected]) has been needed after a machine failed to reboot Rene de Vries ([email protected]) properly after a power failure. http://www.tcja.nl ✦ ✦ Stichting Technisch Creatief Jeugdcentrum Arnhem E Although the previous hardware description probably Arnhem,The Netherlands sounds like a sorry excuse for a web server we have N ✦ ✦ (knock on wood) impressive uptimes to report.As of today it has an uptime of 112 days, and that is only ✦ ✦ ✦ FreeBSD T-shirts These Hanes “Beefy T” t-shirts are FreeBSDFreeBSD 2.2.62.2.6 100% cotton, machine washable, and made in the U.S.A. All FreeBSD 2.2.6 is a full, professional t-shirts are white and come in quality, UNIX-compatible operating system. three sizes: medium, large, Simple CDROM installation with El Torito and extra large. T-shirts can be direct-boot support. Easy switching purchased for $16.00 plus shipping. You can between multiple operating systems. This also see them on our web-site at: http://www.cdrom.com/ four CDROM set also includes more than titles/os/fbsdtsh.htm 2 GB of ports, packages and applications. If you subscribe to our quarterly updates, FreeBSD Polo shirts you will always have the latest edition at FreeBSD Polo shirts a substan tial savings. These high quality polo-style ...... $39.95 shirts come from Lands End...... subs $24.95 They are 100% combed cotton interlochen, machine washable, and made in the U.S.A. Polo FreeBSD Snapshot 3.0 shirts come in three sizes: medium, large, and extra The FreeBSD Snapshot CDROM contains the curr large. You can also choose ent development release, with bug fixes and between three colors: white, black, enhancements that aren’t quite ready for the and light blue. Polo shirts can be purchased FreeBSD production release. We release the for $45.00 plus shipping. You can also see them on our snapshots every few months. If you would like web-site at: http://www.cdrom.com/titles/os/fbsdpolo.htm to keep track of FreeBSD’s latest developments, you can save m oney by subscribing to this disc...... 24.95 ...... subs $14.95 When you order Walnut Creek CDROM • http://www.cdrom.com/ TheThe CompleteComplete 1-800-786-9907 or 1-925-674-0783 • fax: +1-925-674-0821 • [email protected] Phone Orders FreeBSD,FreeBSD, 2nd2nd Ed.Ed. To speed your phone order, please have our credit card at hand. You may want to fill out the order form in advance. This FreeBSD Book an d CDROM set is a Standard 24-hour Shipping recently updated and expanded book containing over 1700 pages We ship 98% of our orders within 24 hours of receipt. In North of expert America (United States, Canada, Mexico) we charge a standard information on in stalling and running shipping fee of $5 per order for First Class Mail delivery. For FreeBSD. The book comes with four international customer, we charge a $9 fee per order for AirMail CDROMs that contain the complete delivery. U.S. customers should receive their phone orders within FreeBSD OS and over 2 GB of utilities, 3-5 business days. applications, and on-line documents. Note: If an item is out of stock, our sales representatives will From first-time installation to inform you of the expected delay. Items ordered together may be day-to-day administration of FreeBSD, shipped separately for no additional charge. this book provides an unmatched reference complete with a thorough Express Delivery index. This book will gui de you We offer UPS Express Delivery for all North American orders received through setting up FreeBSD before 3 p.m. Pacific Standard Time. cooperatively with oth er OSes, installing the system files, and settin users an g up d Internet FTP/WWW services. There is a Quick Installation Guide $10 per order UPS Blue • 2-day service to get you started an d much more detailed instruction if you want to $15 per order UPS Red • Next-day service customize your system. Th e guide also simplifies X Windows configur We offer various express services for our international customers. ation and demystifies configuring a kernel for your own hardware. It explain Please call for details. s how to set up Samba and Netatalk to provide reliable and high-perform ance file and printer service to Windows and Macintosh clients. W e also include tutorials on system administration so Returns and Exchanges you can becom e a FreeBSD guru in no time! As a comprehensive If you are dissatisfied with a product, we will reference on Fr gladly replace the item or refund your money. eeBSD, this book is absolutely indispensable! Simply return the product with a short note to: ...... 100% $69.95 Walnut Creek CDROM Guarantee! ...... book w/o CDROMs $29.95 Attn: Returns 4041 Pike Lane, Ste F-933 Concord, CA 94520 When you order When you order WebMaster’s Toolkit CDROM Walnut Creek CDROM • http://www.cdrom.com/ A comprehensive collection of 1-800-786-9907 or 1-925-674-0783 • fax: +1-925-674-0821 • [email protected] documentation, utilities, and graphics that can help you create, maintain and 1 Order in four easy steps: ove your HTML pages. You get HTML PLEASE FILL OUT COMPLETELY impr tutorials, editors, conversion utilities, , templates, images, Perl CGI source First Name Last Name FAQs code, applets and ActiveX controls. $39.95 Address ......

City Internet Info CDROM This latest update gives you over 13,000 f the State/Zip/Country documents detailing all aspects o Internet, including: HTML tutorials, WWW , Phone Number – with Area & Country Code (in case we have questions about your order) guides, Internet FAQs, RFCs, IENs Network Maps, and much more. This disc , from beginners to the 2 I’d like to order: suits all users seasoned cyber addict. QUANTITY PRODUCT NAME COST EACH TOTAL ...... $39.95 Unix Freeware CDROM This disc contains 638 MB of source code for over 700 different packages. There are programs in almost every category. These programs compile under FreeBSD, BSD/OS, Linux, SunOS, SUB TOTAL Solaris, etc. Add sales tax, $39.95 CA resident only ...... 8.25%

Shipping PER ORDER $5 US/Can/Mex $9 Int’l Overseas ol 1,2,3 GRAND TOTAL Usenet Source Code, V ehensive 3 Payment Method: This three volume set is a compr f source code from Usenet. It ❍ Please charge my credit card collection o ces.misc, ❍ Check enclosed (United States currency) includes alt.sources, comp.sour d more. ❍ ❍ ❍ ❍ ❍ games, unix, postscript, x, sun, an Volume 1 has files from 1985-1990. Volume 2 has files from 1991-1993. Volume 3 has files from 1993-1996 $39.95, OR Account # ...... all three for $59.95

Name on Card Expiration Date Python Toolkit CDROM Python is an interpreted and object- age with Cardholder Signature oriented programming langu powerful features for networking, string handling, user interfaces, etc. This disc 4 Keycode: gives you thousands of sample programs, Please enter the keycode located near your address on the self-mail portion of this newsletter. libraries, packages, tutorials, “how-to” Enter Keycode: Y ENVELOPE documents, and FAQs. We’ve included Enter YOUR code on this line. nix EXAMPLE: John Doe interpreters for Win95/NT and most U Your Company Keycode: 345678 P.O. Box 1234 variants. Anytown, US 12345 ACHED REPL $39.95 TT ...... 933 Perl CPAN CDROM Walnut Creek This is based on the CPAN archive. CDROM The material is as up-to-date as possible, 1-800-786-9907 uncompressed, and organized to make Call finding files easy. You get the latest 4041 Pike Lane, Suite F-933, Concord, CA 94520 U.S.A. Perl source code, and binary versions for Solaris, SunOS, Linux, FreeBSD, by phone...+1-925-674-0783 WinNT/95, Mac, OS/2, DOS and . by fax...+1-925-674-0821 ORDER...... $39.95

by [email protected] CUT HERE AND RETURN ORDER FORM IN A ISSUE 2 • SUMMER 1998 KBcd[] PAGE 9 ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ FFrreeBeeBSDSD AAndnd thethe PPalmPilotalmPilot [ by Oliver Fromme [

❋ o, you’ve purchased this cute little PDA, section of the tools for talking to the PalmPilot and also Splayed around a bit with the built-in FreeBSD includes various libraries and modules, so applications, entered a few memos, dates and Handbook.) you can easily write your own programs addresses, and maybe even wrote a reply to (in , perl, tcl/tk etc.) to access the

❋ 3Com’s “Welcome” email.And now you The main PalmPilot if you are a . wonder: what’s next? You’ve seen all those advantage of neat applications and games on the Internet, kpilot is its easy- The single most useful tool from the pilot- how do you get them into your PalmPilot? to-use graphical link port is the “pilot-xfer” program. It

❋ You probably also want to backup its data interface.With a supports a number of command line options, onto your desktop PC but the tools supplied click of your the most important being -b (backup your with the pilot only support Windows and mouse, you can PalmPilot’s data to a given directory, i.e. do a Macs... what to do? convert text files one-way-sync), -s (sync with the contents of

❋ from your PC to memos on your PalmPilot a directory), and -i (install a file on your Fortunately, there are several tools available and vice versa. It also allows you to import PalmPilot). Let’s say, for example, that you for making the PalmPilot live happily with a and export address book entries and have downloaded a game “foobar” from the UNIX system, and that includes, of course, exchange email messages with your mail Internet.To install it on your PalmPilot with

❋ FreeBSD.This article can’t replace an in- server. Kpilot supports the POP3 protocol to pilot-xfer, you’d simply type: depth tutorial, but it should get you started. retrieve mail from the mail server, then It also assumes that you are already familiar transferring it to the mail application on pilot-xfer -i foobar.prc with the basic functions and features of your your PalmPilot. It also uses sendmail to

❋ PalmPilot as well as with FreeBSD. Note that deliver any outgoing mail messages that you Note that programs for the PalmPilot have I use the word “PalmPilot” throughout this have queued up on your PalmPilot.You can the filename extension .prc (pilot runnable article, but everything also applies to the also use kpilot to backup and hot-sync your code), while other data files have the older Pilot models, IBM’s Workpad (which is data, and there is even a little daemon extension.pdb (pilot database). Since

❋ basically an OEM version of the PalmPilot program which automatically initiates the PalmPilot programs can also be databases, Professional) and to the new Palm III. hot-sync process whenever you press the however, this distinction isn’t always hot-sync button on the cradle. Like most adhered to. Note: Most tools access the PalmPilot via the KDE applications, kpilot also provides

❋ /dev/pilot device, which should be a symlink online-help in HTML format (though, Note: If you use the pilot-link port, one to the serial port to which your Pilot’s cradle unfortunately, there are no manual pages for important thing that is missing from the is connected. For example, assuming that those more traditionally inclined). documentation is the PILOTRATE you’ve connected the cradle to the second environment variable which is used to

❋ (COM2) serial port, you’d create a symlink to Note also that you don’t need KDE to run select the speed of the serial port.The point /dev/pilot at /dev/cuaa1 as follows: kpilot – you actually only need the KDE default of 9600 is slow and drains your libraries (which are a separate FreeBSD batteries. I recommended that this be set ln -fs /dev/cuaa1 /dev/pilot port).Without the full KDE environment, to 57600 (the maximum).

❋ however, you won’t be able to use some of You will also need read and write permission kpilot’s features which makes KDE worth Finally, if you’re a software developer, there to the serial port. If you do not wish to run installing (from the ports collection) if you are several tools available which help you to these utilities as root, one way of doing it is have the disk space.This will allow the full develop PalmPilot applications under

❋ to add yourself to the “dialer” group (edit online help, automatic hot-sync, and status FreeBSD. Describing all of them would be /etc/group) and make sure that the serial display to work (these require the kdehelp beyond the scope of this article, so I’ll just device is group-owned by dialer. tool, KFM and kpanel). In any case, you can mention a few and leave the rest as an read the online help with your favorite exercise to the reader. First off, there is the

❋ The first tool that we’ll discuss is “kpilot”. HTML browser – it is installed in “prc-tools” port (/usr/ports/devel/prc-tools), As the name suggests, kpilot is a graphical /usr/local/share/doc/HTML/en/kpilot/. a complete GCC cross-compilation application for the KDE environment. It is environment and linker which lets you write available from the FreeBSD ports collection If you don’t like GUIs in general or KDE in applications in C or C++ and compile them

❋ in the /usr/ports/comms/kpilot directory. (If particular, you should have a look at the straight to .prc format under FreeBSD. If you’re not familiar with the ports collection, “pilot-link” port (/usr/ports/comms/pilot- you prefer to program your pilot beast in you should have a look at the appropriate link).This is a set of command-line driven assembler, then “pila” – the Pilot assembler, CONTINUED... PAGE 10 okXR13 ISSUE 2 • SUMMER 1998 ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲

is for you.Another interesting utility is might find it useful). Xcopilot is a complete PalmPilot engineers for a fine product and to ❋ “jump”, a Java bytecode converter. It PalmPilot emulator for X11 and needs only a the many Unix developers out there who converts Java class files to assembler source PalmOS ROM image to completely simulate a worked hard to provide us with such a rich files which can then be assembled with pila. PalmPilot. If you installed the pilot-link port selection of utilities for it! It produces surprisingly compact and fairly just mentioned, you can use its “pi-getrom” ❋ fast executables, but it doesn’t support the utility to transfer your own PalmPilot’s ROM References: complete Java language (e.g. no threads). to a file on your desktop PC where it can be • http://www.palmpilot.com/ Both utilities, along with many others, are used by xcopilot.All of this allows you to 3Com’s PalmPilot and Palm III pages. described and available for download at test new software in a safe, emulated • http://www.freebsd.org/ ❋ http://www.palmpilotfiles.com/ environment without risking the data on The FreeBSD homepage. Development.html your trusty pilot. • http://ftp.tu-clausthal.de/pub/palmpilot Software and documents for PalmPilot Last, but not least, the xcopilot port The PalmPilot is a surprisingly powerful little and UNIX users. ❋ (/usr/ports/emulators/xcopilot) should be machine in a compact size and, with 3 installed on every PalmPilot programmer’s FreeBSD’s help, is quite easy to both use and ❋ ❋ ❋ PC (and even if you’re not a programmer, you develop new software for. Kudos to the HowHow FFrreeBeeBSDSD BecameBecame thethe FFavoriteavorite OSOS onon mymy DesktopDesktop by Martin Cracauer ▲ ’m working for BIK outside customers used it much smaller tabulations to disk again when another analysis I– Aschpurwis + directly. It ran on all the produce and we set our limit to was started. Behrens, a German platforms listed above. 7 seconds.That figure couldn’t market- and media- be reached by using modern • We needed maximum disk ▲ research institute OO When the World Wide Web machines alone. thoughput, of course, and much (www.bik-gmbh.de). took off, we suddenly found more than the best disks offered. BIK used a wide ourselves in a much better We faced four problems: variety of UNIX derivatives position than those competitors • Some way had to be found to • Our application isn’t just one ▲ including SCO, NeXTStep, who developed interactive speed up getting only the program, but a collection of a SunOS, Solaris, NetBSD, several tabulation software on portion of data that was number of connected programs PC-based SVR4s and, of course, DOS/Windows or Macintosh.We immediately needed so that the that get restarted on every FreeBSD. could easily turn HTML forms CPU could be kept busy instead invocation.The costs were

▲ input into definitions for our of waiting for data to arrive from negligible on a 30-minute The story how FreeBSD became program and display the results disk. analysis, but for the web-based the favorite OS on my desktop at in HTML. product we had to make sure we work is somewhat boring and • Our application not only uses could start all these processes

▲ largely a matter of personal While the needed functionality large data sets but calls the C fast enough.We also wanted to preference. FreeBSD just felt best was easily added, we faced major compiler (including assembler implement this as a CGI for me and I had the fewest performance problems.What we and linker) two times on every application, adding even more problems from all the UNIX found was that FreeBSD did an invocation. Besides the cost of process starts.

▲ derivatives I tried. amazing job speeding up our the compiler run itself, we also application without major recognized that most systems Of course, all of these are Somewhat less boring is how rewrites. problems which could FreeBSD became the dominant probably have been best computing platform for the “Besides its advantages in

▲ First of all, our solved by changing our company’s multiuser and server application was performance, we found FreeBSD application, but doing so machines. optimized to would also have required produce large to be the UNIX system that was valuable programmer hours Since 1990, we developed a quantities of which we really needed to ▲ most easily managed.” batch-oriented tabulation tables for lengthy apply elsewhere. Such generator with a lot of hooks for printed reports. In resistance to “fixing” an adding functionality. It became a the early 90’s, 30-45 minutes for would kick the main data set out application is also hardly an pretty decent product, though it such a run was considered a of the filesystem buffer cache atypical situation in almost any ▲ remained hard to use for GUI- very good time. For the WWW- during these compilations and so area of professional computing, oriented users, so only a few based world of 1996, we had it would need to be reread from especially when the application ISSUE 2 • SUMMER 1998 KBcd[] PAGE 11 ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▲ in question “works” (including HTML support, which was added Assuming that they run properly at all – are they faster or slower than in no time). single disks?

Believe it or not, the operating system alone can solve many such Besides its advantages in performance, we found FreeBSD to be the ▲ problems without having to change the application, and FreeBSD UNIX system that was most easily managed.We often have to certainly came to our aid here. configure machines for additional web services and, when we do, copying an existing FreeBSD installation is done in no time, mostly The first problem was that we read only small random portions from due to its simple disk volume management and the fact that all ▲ big data sets.All other UNIX derivatives we tried could not deliver the configuration is done via user-editable ASCII files. Installing a new data efficiently enough for our specific access patterns (which were machine from scratch using sysinstall is also easy and fast – the result not optimal, of course).The systems were either too often idle waiting being already much more customized than many other UNIX system’s for the disk or spent a lot of time in the kernel installations leave them (network configuration, third-

▲ (obviously managing caches and copying data). party-applications, all done in one pass). Many did both, and I won’t even start talking “...our own about the various () problems we found. programming The FreeBSD community is a major selling point, too. FreeBSD, however, managed to deliver the needed As of this writing, five people from the BSD user

▲ pieces of data fast enough that we achieved 90% abilities have also group Hamburg (www.bsdhh.org) have joined us as CPU time spent in our application.This was improved through and system managers. If you’ve already enough to save us from having to rewrite a critical experienced trying to get good staff, you can imagine part of the application. reading the what the real value is.And the FreeBSD mailing lists

▲ excellent code are an invaluable source of information for many The next problem was that our application calls areas of professionally computing. the C compiler before and after accessing the in some of main data set. On all other systems we tried, the FreeBSD’s Of course, problems with getting reliable PC result was that the compiler runs caused the data hardware exist also. Motherboards with only 64MB ▲ set to be removed from the disk cache so that subsystems.” of cacheable memory, non-parity memory, or even subsequent application runs on the same data had worse, motherboards with parity support, as well as to get it from the disk again, resulting in a large performance hit. badly-designed PCI cards and cases with insufficient cooling are all Adding memory didn’t even seem to help much, these systems just problems that have plagued our computing staff. ▲ seemed not to like keeping big files cached when smaller ones were being accessed and nothing could be done to tell them otherwise. We are very happy with FreeBSD, and our own programming abilities Using these systems, we first thought we’d have to develop a special have also improved through reading the excellent code in some of program to hold the data set in memory and provide it to the FreeBSD’s subsystems. Only a few other machines have survived here ▲ tabulation generator via . Since more than one data set and, as time goes on, FreeBSD’s position here also gets only stronger as resides on a machine and one shouldn’t keep all memory for itself, we our experience using it and our familiarity with the sources grows.We would basically need to reimplement the job of an operating system’s hope that you too will be motivated to try FreeBSD for your own small buffer cache, simply with different preferences.A lot of work! business or research project!

▲ K Happily, all of this became a moot point under FreeBSD. On a FreeBSD box with 256 MB memory we can run multiple analysis on the same 212 MB data set and the file is still in cache after the compilation runs

▲ between each analysis. Maybe this behavior can potentially hurt the performance of other applications, but we didn’t find any cases of this happening. In this alone, FreeBSD saved us weeks of implementation, testing, performance analysis and tuning. ▲ Disk throughput is, of course, also critical to our task and we found that FreeBSD’s ccd (disk striping) driver

▲ scales well for us. If we add disks and 1998 USENIX Annual Technical Conference controllers to a striped volume, the resulting performance out of the June 15–19, 1998 Marriott Hotel, New Orleans, Louisiana combined file system is pretty near Come to the FREENIX track at the

▲ the sum-total throughput of single file systems on individual drives. Frankly, $ FREENIXFREENIX USENIX Conference. Topics we expected this to be much less. For discussed will be FreeBSD, anyone requiring disk throughput over reliability, it is nonetheless an Linux and various other types of on the ▲ important question to ask of those market today. For more information see BE offering other RAID solutions: http://www.usenix.org/events/no98/index.html. THERE! Walnut Creek CDROM BULK RATE 4041 Pike Lane, Suite F-933 U.S. POSTAGE Concord, CA 94520 PAID CONCORD, CA PERMIT NO. 653

PAGE 12 okXR13 ISSUE 2 • SUMMER 1998 ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲ ▼▼ ▲▲

To subscribe... to this newsletter, please A visit http://www.freebsd.org/register.html and fill in the name & address form. GOTTVE IT! HA The The contents of this newsletter... were freely contributed by Complete members of the FreeBSD user community and are fully redistributable/ reprintable in other media as long as proper credit to the authors is given. FreeBSD The Complete FreeBSD, 2nd edition, is an Without volunteer authors... updated and expanded text containing more this newsletter would not exist. Submissions than 1700 pages of expert information on installing and running for future newsletters are always gratefully accepted and may be sent to newsletter@ FreeBSD. The 33 chapters include everything from an installation guide, freebsd.org (plain text is fine, we’ll handle the to tutorials on configuring your kernel, setting up a firewall, and formatting). administering a network. This book will show you how to use FreeBSD as a reliable high-performance fileserver for Win95 and Macintosh. It also For more information... visit the explains PPP and X11 setup, and provides a tour of the ports collection. FreeBSD web site @ http://www.freebsd.org/ This comprehensive reference on FreeBSD is absolutely indispensible. Check inside for more details and ordering information....

For a complete listing of Walnut Creek CDROM PRODUCTS, check http://www.cdrom.comhttp://www.cdrom.com