[Mimedefang] Re: Mail volume control

Chris Myers chris at by-design.net
Wed Jun 2 20:17:27 EDT 2004


----- Original Message ----- 
From: "NFN Smith" <worldoff9908 at sacbeemail.com>
To: <mimedefang at lists.roaringpenguin.com>
Sent: Wednesday, June 02, 2004 6:21 PM
Subject: [Mimedefang] Re: Mail volume control


> Chris Myers wrote:
> >>Where we're having occasional problems is when we have users who do
> >>large personal mailings, sometimes as many as 400 or 500 recipients on a
> >>single message. [...]
> >
> > Rather than resending a copy of the message to each and every recipient,
how
> > about just replacing the To: and Cc: headers with something innocuous,
> > effectively making all of the recipients blind-carbon-copy (Bcc:)
recipients
> > instead?
>
> For this kind of thing, we'd generally prefer server-based enforcement
> -- if there's too many on the distribution list, reject, and force the
> sender to do receiver lists accordingly.
>
> However, I do like the approach of forcing Bcc: to all addresses -- it's
> something that we really want, anyway.  I'll see what we can do on that
one.

In your filter, just do this:

action_delete_all_headers("To");
action_delete_all_headers("Cc");
action_add_header("To", $sender);  # or some other Reply-safe email address

> > Another approach might be to send to groups of recipients: 1) insiders,
who
> > get full headers, and 2) outsiders, who get whitewashed headers.
>
> Also worth looking at, although may not be hugely practical.  For most
> distributions where there's more than 10 or 15 addressees, nearly the
> entire list is external.  When we had the mailing of 75 recipients with
> a 3.5 MB attachment, only two or three of the addresses were internal.
>
> But there's definitely potential in separating the groupings, anyway.

The way I read your original posting, the problem came across as "our mail
server got killed" rather than "our policies are broken".  This reply is
based on that interpretation... :-)

Based on your previous description, it's not the mail message that killed
your server.  It was resending the message 75 times, which created 75
(more-or-less) simultaneous sendmail processes.  If you have only one
sendmail process running, the number of recipients and the message size is
pretty much irrelevant unless you're also nuking your Internet connection
simply due to the bulk data transfer.  This shouldn't be a problem unless
you have a fairly slow (<T1) Internet connection.

> > Either way, the mail server itself would only have to deliver a couple
of
> > messages (to many recipients) rather than hundreds of messages to
individual
> > recipients with the attendant load-multiplying effect.
>
> Yes, this is the intent, and these give us some additional possibilities.
>
> One other thing that I did was check with sendmail documentation, and it
> is possible to lower the default envelope size -- say, a max of 25
> addresses per envelope.
>
> Is this something that could also help in this area?

You can certainly do this, although the SMTP standard (RFC2821) also
strongly recommends a minimum of 100 recipients.  If this is also your
inbound mail server, there's a possibility that you'll break a small amount
of inbound mail.

It's your specific filter implementation that's hurting the most.  The same
policies can be implemented in different ways that will put a lot less load
on your box, without adding further restrictions.

Chris Myers
Networks By Design




More information about the MIMEDefang mailing list