Sendmail 8 Performance Tuning Tips for Large Systems

Brad Knowles
Colltech

<brad@shub-internet.org>

Fortunately for most users (and admins), when it comes to handling Internet e-mail, version 8 sendmail is quite capable of handling tens of thousands to hundreds of thousands of mail messages per day on a single machine, right out of the box. The problem comes in when the demand (quantity of e-mail) exceeds the supply (system capacity), with a default configuration.

Unfortunately, with mail loops, ubiquitous millions of junkmail messages that can be launched with the push of a single button, e-mailbombings, etc...., it's very easy to find yourself in a situation where the out-of-the-box performance of your mail system was just fine a few minutes ago, but now it's woefully inadequate to the task it's suddenly being asked to do.

Some problems are endemic to sendmail in general, some are specific to only receiving large amounts of e-mail, some are specific to only sending e-mail, and large mailing lists are a special case of the latter. This paper discusses a number of solutions that will help virtually any installation of sendmail handle much larger volumes of mail than it would otherwise be capable of, in addition to specifically addressing certain other issues particular to large sites.

The author is an administrator and not a programmer. Although competent to discuss source code modifications on a functional level, no actual examples are provided.

The target audience is experienced Unix System Administrators, in particular administrators of large Internet e-mail systems or administrators of Internet e-mail systems that are having difficulty dealing with their growth.

Brad Knowles learned Unix the hard way, as a student at the University of Oklahoma in Norman, on Zenith Z-19 terminals connected to a PDP 11/70 running BSD 2.9. He learned System Administration the hard way, having a diskless Sun 386i running SunOS 4.0.1 dumped in his lap within one week after starting his first job out of College. He learned sendmail the hard way, from the only chapter on the subject in first edition of `TCP/IP Network Administration' by Craig Hunt. He learned hyper-growth system scaling the hard way, as the first (and later Senior) Internet Mail Systems Administrator at America Online, Inc. He is in recovery now and through involvement with Usenix, SAGE, and local affiliates like dc.sage, as well as the occasional white paper or conference presentation, he hopes to help others avoid having to learn the hard way too many of those same things.


Last modified: September 16, 1998 (ehk)