ietf-smtp
[Top] [All Lists]

Re: [ietf-smtp] [Emailcore] Proposed ESMTP keyword RCPTLIMIT

2021-04-20 10:01:31
It looks like something like this would handle a lot, quite possibly most, of the rate limits that receivers are willing to disclose:

  CONNRATE=m/s MSGRATE=m/s

Where m is a number of connections or messages or whatever, and s is a number of seconds.

I suppose it could also have something like SCOPE=HOST or SCOPE=GROUP to say whether it's for a single host or a group but I don't see any way of describing groups that wouldn't be too complicated and I doubt that many mail providers would want to tell hostile strangers that much about their internal architecture.

R's,
John


On Tue, 20 Apr 2021, Ned Freed wrote:
A little surveying might be in order.

I see that Postfix lets you set both the numerator and denominator of
the rate limit, but the denominator defaults to a minute.  It has
separate rate limits for connections and messages.

Exim also lets you set both, the examples use an hour.  The
documentation says that if you use a large interval that lets people send 
bursts.

Sounds familiar. Oracle Messaging Server lets you set both; the denominator 
default is one hour.

We store the limits in memcache or Redis so they can apply across mutiple MTAs.
The usual limit is per-IP, but we support per-host and per-domain as well.

The demoninator in PowerMTA is a string rather than a number, possible values 
are sec, s, min, m, hr, or h. It supports per-IP and per-host and probably 
other stuff; my familiarity here is limited.

I assume the Exim and Postfix limits are per-host, which in most cases 
translates to per-IP.

I have to say there's more consistency here than I expected.


Regards,
John Levine, johnl(_at_)taugh(_dot_)com, Taughannock Networks, Trumansburg NY
Please consider the environment before reading this e-mail. https://jl.ly

_______________________________________________
ietf-smtp mailing list
ietf-smtp(_at_)ietf(_dot_)org
https://www.ietf.org/mailman/listinfo/ietf-smtp

<Prev in Thread] Current Thread [Next in Thread>