On Jan 21, 2007, at 4:34 PM, bofh wrote:

On 1/21/07, Brian Keefer <[EMAIL PROTECTED]> wrote:
Because driver support for Linux is a lot better than for OpenBSD,

I'm not sure if I believe this to be as strong an argument since, as
the blackbox maker, you have your choice of hardware.  This means you
can choose hardware that runs openbsd without issues, unless you need
the most cuttng edge hardware.  We have two of your Edge boxes at
work, and from what I can see, you can get that, or equivalent
hardware running openbsd without problems.

It depends what hardware. We *could* find hardware that runs with whatever OS we choose, but the OS then dictates the hardware and we wouldn't be able to change easily. We rev our hardware from time to time and usually jump to something fairly recent and with a fair amount of embedded chips (we try to use what's already on the motherboard as much as possible). Using *BSD would lock us down to only chipsets that don't depend on blobs. Yes, we know blobs are bad but we're also trying to get hardware rev'd as quickly as possible with minimal amounts of tweaking.

If we ever need to say, switch RAID controllers quickly because of shortages, or our motherboard supplier swaps in a new model with embedded 10GigE NICs or something like that, chances are there won't be an open-spec driver, but there will probably be a binary from the manufacturer pre-compiled for Linux.

and a lot of the Anti-Virus vendors supply Linux binaries, but no BSD
binaries.

Now, this, I believe.  But many of the smaller vendors have binaries
for freebsd, and I'm also quite sure someone the size of Tumbleweed
can get binaries for whatever platform you guys want.  Maybe not as
easily.  I might be wrong too :)

Ask CipherTrust (well, SecureComputing now) how they run their AV engines. IronMail is based on FreeBSD and uses Linux binary compatibility for their AV engines--I know this for a fact, because I worked for them. Most of my recommendation for sticking with Linux was due to my experience at CipherTrust.

Messaging security companies might make 50-100M a year, but that's scratch to Symmantec, McAfee, Trend, etc. They're multi-billion dollar companies from direct AV sales alone. They don't *need* e- mail security companies for revenue. If they have something off the shelf, sure they'll sell it... they're not going to do a new build just for a single vendor (and if they would, they'd pass the cost on to us which would kill margins).


 Also, developers for Linux are cheaper (and more
plentiful) than developers for BSD.

This, I have to disagree with.  Are you talking about kernel hackers?
If so, I'd think they cost about the same.  If you're talking about
application developers, what really is the difference between someone
who writes an application in openbsd, versus one who writes it in
solaris or aix or linux?!
And if you believe in java, openbsd 4.0 runs jdk 1.5 :)

We do some limited kernel work, mostly around file system debugging. When you have something that causes the I/O loads of a high-end e- mail relay, you really rely on the file system a lot and interesting things happen when it goes wrong.

The rest of it is user-land stuff, but we (and many companies like us) leverage Java heavily. We've found that performance-tuning Java can make a big difference for various things (mostly our other products, not so much for e-mail) so running it on a platform where a lot of other companies are doing the same thing gives us a shared pool of experience to tap into. Never underestimate the power of a few snippets of example code found through Google. Could we run Java and PHP on OpenBSD? Sure. The setup just wouldn't be quite the same and developers would have to relearn things. Also, as much as Sun would like us to believe that it works the same everywhere, that's just not true. There are platform-specific quirks and if developers already have a background with the quirks on Linux, it helps.

The company I worked for considered switching our appliance OS to a
*BSD from Linux, but in the end we decided that commercial support
was too important to ignore.

"Commercial support from large vendors?"  Probably so.  And I have no
idea how good is the commercial support from the smaller vendors
listed on openbsd's site either.

Mostly on the hardware side. It's a lot easier to get a binary driver for Linux for some brand-new hardware than it is to get a source driver for *BSD. Other than the hardware, we actually get commercial support and can open bugs with our Linux supplier. It's not really a question of how technically competent the support is from OpenBSD consultants, it has a lot more to do with how available the support is, how likely it is that the support company will be in business 10 years from now, how responsive the support is at getting issues in the OS fixed in a timely and trackable way, how committed they are to support new hardware as it becomes available, etc.


is crap).  If you're building something that needs to use a lot of
third-party commercial software in addition to your own code, sadly
Linux is currently a better choice.  I personally cannot stand Linux,

I'm looking at something like the Edge, and I'm not sure if I see
anything on it that couldn't be quickly developed on openbsd.  After
all, the main engine is postfix.

Well, yes and no... The MTA, or modifications to it, the web UI, etc could be done on other platforms... The database is another story. MySQL never did have really excellent support for *BSD and I believe their latest support release is dropping support for any *BSDs, or at least putting them in second tier. I can't go into details, but the company I worked at before had... some interesting situations due to the combination of OS and database they were using. You can actually get first-tier commercial support for MySQL on Linux, and if we didn't like the service from MySQL we could go with something else easily enough. The database turns out to be pretty critical when you're pushing hundreds of thousands of messages per hour through a single machine.

Sorry for the long, somewhat OT reply, but hopefully that gives everyone some insight into how "blackbox" manufactures work. A lot of it is not wanting to get overly restricted in what hardware we can use, and the rest of it is wanting to have the best support possible for third-party software. It just doesn't make sense for us to write everything in-house. Why would we write our own database? Why would we develop our own AV engine? How confident are we in the technical support from our third-party suppliers and what kind of contractual obligation do they have to provide updates and patches?

Like I said before, if we were manufacturing and selling firewall appliances, our choice of OS would probably be much different. If I went out today and decided to start a company selling router appliances, it would be OpenBSD/OpenBGPd for sure rather than Linux/ Quagga. It depends to what extent the OS is just a platform, and to what extent the OS is the *product*. For e-mail and file transfer stuff, the OS is really just a platform to run our application code. For networking services, the OS really is the product to a large extent and then the quality of the OS matters a lot more than how easy it is to develop quality software on top of it.

Don't get me wrong, I consider OpenBSD to be the highest quality OS you can use for most things (probably Solaris for the rest), but at the moment Linux has the advantage of wider hardware and software support. At the end of the day being able to hold someone accountable matters a lot.

I'll take the other stuff off-list since it's of limited value to anyone else.

Brian Keefer
www.Tumbleweed.com
"The Experts in Secure Internet Communication"

Reply via email to