Re: [exim] retry configuration

Top Page
Delete this message
Reply to this message
Author: Catalin Constantin
Date:  
To: exim-users
Subject: Re: [exim] retry configuration
Hello,

Thank you for your reply.
Unfortunately it's not doing any good.

The problem is caused by the way EXIM is handling retries.

If one REMOTE server (IP) gives an error, including defers, 4xx
errors, for one EMAIL in the queue, then
for the rest of emails which have the same destination, there is no
attempt to deliver until the NEXT retry limit is reached.

Consider you have 1000 emails waiting to be delivered to @yahoo.
After the first attempt to deliver one email from the queue you get a
451 Message temporarily deferred.
The 2nd email from the queue (has the same destination - i include
here all MX with all IP aliases) will not even be tried for delivery
because the IP did not reach it's retry time.

Yahoo has a very aggressive Greylisting system which works not on PER
IP basis, but on per email basis.

The bottom line is that in this situation Exim delivery mechanism fails.

And this is not only Yahoo.
All major providers practice a very aggressive greylisting scheme to fight spam.

The line from the help page:
"
Exim's retry processing in this case is applied on a per-host
(strictly, per IP address) basis, not on a per-message basis.
"
i think it says it all.

Exim is not the tool for this job. Correct me if i am wrong.

(Note: i did not see such behaviour in Postfix).

If anybody has any clue of how this could be resolved, feel free to share.

Thank you,

On Mon, Apr 20, 2009 at 3:03 PM, <Lena@???> wrote:
>> From: Catalin Constantin
>
>> This is?a pretty bad thing for @yahoo delivery since yahoo tends to
>> defer at first not per IP but per email.
>
> Not a reply to your question, but try (yahoo behavior may change):
>
> begin routers
> remote_domains_throttled:
>  driver = dnslookup
>  domains = \N^yahoo\.\N : rocketmail.com : ymail.com
>  transport = throttled_smtp
> ...
> begin transports
> throttled_smtp:
>  driver = smtp
>  connection_max_messages = 5
>  serialize_hosts = *
>
> At reboot (under FreeBSD I use /etc/rc.local):
>
> #!/bin/sh
> rm /var/spool/exim/db/misc*
>
> --
> ## List details at http://lists.exim.org/mailman/listinfo/exim-users
> ## Exim details at http://www.exim.org/
> ## Please use the Wiki with this list - http://wiki.exim.org/
>




--
Catalin Constantin
Dazoot Software
http://www.dazoot.eu/