Back in February, my wife and I acquired Wolfgang, the Horizontal Dog, from the Mariposa SPCA. Now, we knew a good week ahead of time that Wolfie would be joining us -- he spent the intervening period resting quietly as part of his treatment for a nasty heartworm infection -- and we wanted to make sure that he'd have a comfortable place in which to get out of the weather. So, since we couldn't afford to buy him a pre-made shelter, we built the World's Ugliest Doghouse, instead. To save money, we fabricated the WUD from 2x4's and plywood sheets we had left over from my second campaign for El Cerrito City Council. I have to confess that it's just a jackleg design job, based on an idea, rather than on a plan. (And, truth to tell, it was my wife who came up with the idea, not me.) The resulting structure is..well..ugly. Ugly as a mud fence, in fact. Esthetics aside, however, it fulfills its intended function pretty darned well: it's snug, watertight and fairly roomy, as doghouses go. And its resident doesn't much seem to care about the architectural niceties -- his concerns are a lot more basic. The thing is, while our casual schema worked reasonably well in erecting our canine's quarters, it would not have done so for any even slightly-more-complex construct. We got away with it simply because the design criteria were non-critical and because the customer -- in this case, our prostrate pooch -- was unusually undemanding and highly tolerant of visible rough edges. That's a situation that's very much more the exception than it is the rule -- and it's the very rock upon which many a shoestring ISP operation has foundered. The Shape of Things to Come? It's a shibboleth that networks increase in complexity as a non-linear function of the number of servers on the net. The curve that describes the growth in network intricacy is particularly steep for that first leap from one machine running everything to spreading your services across multiple boxen. And, as you add new boxes, it doesn't decline much from there until you get up into double digits. The best bet is to pilot your network expansion in the lab before you roll it out to your customers. That's what the big boys do -- at least, that's what we did when we did a big server upgrade while I was with Wells Fargo. You start by mimicking your user environment as closely as possible. For an ISP, that means setting up a bunch of machines to hammer away at your proposed new configuration, banging on your email, Web and Usenet servers as hard as you can. Then you monitor your new setup to see how the simulated load causes it to crumble or explode, track down the source or sources of failure, apply fixes and retest until the new system stays up, regardless of the punishment you inflict upon it. Of course, it'd be nice to win the Lotto, too -- and chances are that you're just about as likely to be able to do the one as the other. Heck, if you could afford a lab setup to begin with, you probably wouldn't have picked "one-horse ISP" as your career path of choice. The bad news is that there's really not much help available to get you over that hump, either. That's a big part of the reason that business customers are rightly suspicious of signing up with the small fry -- that is, if they're intelligent, well-informed business customers, they'll display a certain dubiety in mere self-defense. And they'll be right to do so, because, if scaling to meet demand takes you down for the count, they'll hit the mat right alongside you. Oh, if you're in the business of designing SONET rings, Lucent Technologies will be happy to help you out. They have this snazzy package called Fibergrafix Network Design Software for Windows that'll fix you right up. At $54.95, the once and future Bell Labs' offering is anything but pricey. (There are other vendors who offer other tools for large, multiprotocol network design, too -- but they are, without exception, excessively coy about pricing. That almost inevitably means that the appropriate bromide is, "If you have to ask, you don't want to know.") If you're setting up a wireless network, there are several tools available: TeleworX's MicroworX, for one instance or NorthwooD's deciBel Planner for another or NuComm, Inc.'s RF-PLAN for a third. For traditional, POTS-based voice networks, there's Westbay Engineers Limited's $275 Westplan, a Windows-based voice network modeling tool targeted at both larger corporate end-users and telecom carriers. The Westbay folks also offer a set of free, online, Javascript-based Erlang voice traffic calculators and they sell Windows versions of them for $80 for the lot -- and throw in a copy of their traffic caculator add-in for Excel, too. The Westbay folks also host a set of free telecom design forums that're well worth a CLEC's time. And, for those of you who are Cisco direct-purchase customers, channel partners or Cisco Certified Internetworking Engineers (which includes just about everyone who reads this magazine) with complex data network design tasks, Cisco makes available Netformx, Ltd.'s DesignXpert, an application that employs a proprietary, rules-based MultiVendor Device Library to validate interoperability and proper configuration specs between different vendors' devices. Even if it didn't also offer a proposal generator module -- complete with bill of materials output -- and a drag-and-drop design interface, the validation function alone would make it worth you checking out DesignXpert. DIY But the little guys are pretty much screwed. Oh, there're plenty of tools available to help you lay out your network. The problem is that they most all began life as flowcharting applications and that's about the acme of their capabilities of in terms of design. They can help you visualize how you'll physically and logically connect together your collection of boxes -- Microsoft's Visio Professional even includes a bunch of nifty objects that began life as part of the SysDraw library -- but they can't tell you if your configuration will work. And they sure as heck can't tell you how properly to configure your server software -- which is the one aspect of the problem that's likliest to result in disaster. You can't depend on that kind of help from anyone. All the major Linux distros install buggy, exploitable server software -- and none of them give you any useful assistance in spreading your services across multiple machines. You could build a Beowulf cluster, but there just aren't yet that many apps that are designed to take real advantage of clustered CPUs and you'll still wind up having to introduce major modifications in your existing setup. In fact, none of the Unixian OSes make that first step easy. It won't help to surrender to the Evil Empire, either, because you'll have even more trouble securing services on multiple Windows boxes. (It's those silly trust relationships that'll get you -- those and the casual attitude Microsoft's OS programmers seem to have about system cracker intrusion and exploits.) And, if your existing server is already overburdened, you can forget entirely about using Macs. They're (relatively) easy to set up and configure, but they just can't stand up to heavy loads. Face it. You're just going to have to bite the bullet, buy new machines and work it all out in the lab. It may sting a little, but you don't really have any choice, because the alternative is to trust that your users will stick around as you gradually work the bugs out of your seat-of-the-pants upgrade. You did want to hang on to your users, didn't you? And don't forget to develop an emergency back-out contingency plan, either. If you do your homework carefully enough, you may not need that sucker -- but, should you be tempted to skip that bit of preparation, you can depend on Murphy to make it an absolute necessity. As for me, my next project will be to build a barn -- assuming, of course, that the IRS hasn't left the Stark family homeless. For that, I know I'll need to do some serious planning. After all, wood has gotten breathtakingly expensive nowadays and it'll not only be our horses that will have to live with the consequences of my design decisions -- it'll be my computers, my files and my library, too, because I'm planning to move my office there, as soon as I can. So I'm going to have to do some serious planning. For that task, I expect to use punch! Software's $89 Professional Home Design Suite. It has a pretty shallow learning curve, so it'll take some time, but I'm certain that it'll be worth the effort. Meanwhile, I'm grateful that Wolfie's comfortable and happy in his new digs. Heck, you might almost think that we'd planned it that way. (Copyright© 2001 by Thom Stark--all rights reserved) |