<domain>set by the Hub
A connection with nothing to send is closed after this interval. Zero means “close as soon as the queue is empty.”
Why keep an empty connection. A TLS handshake costs more than the message itself, and if in half a minute the next message to the same recipient arrives in the queue, reusing the open connection is noticeably cheaper than opening a new one. On a steady stream this saves both time and the connections the provider counts.
For addresses under warm-up the line is not written: they have a single connection, and the connection closes as soon as there is nothing to send.
| Mode | Per address (vMTA) | In the provider rule | When this is your case |
|---|---|---|---|
| Warm-up, cold address | 1m | — | An address younger than 4–6 weeks or back from a pause |
| Careful | 1m | — | Strict receivers, questionable reputation, the first weeks after warm-up |
| Balanced default | 5m | — | Normal operation of an established fleet |
| Aggressive | 10m | — | Warmed-up addresses, friendly receivers, urgent volumes |
| PowerMTA default | 0 | — | If the directive is not written at all |
The ceiling is set by the engine: ten minutes. The manual will not accept more, and that is reasonable — a connection that has been idle for ten minutes is quite likely to be closed by the receiver itself.
The point is to survive the pause between batches. If messages arrive unevenly, a closed connection has to be reopened, and receivers watch frequent connections more closely than volume. Five minutes cover the usual gap between batches of one mailing.
The default is 0 — the connection closes as soon as there is nothing to send. For a steady stream that is fine; for an uneven one it is wasteful.
# we keep the connection between batches, but no longer than needed <domain hotmail.com> max-smtp-out 15 connection-idle-timeout 5m</domain>
what people get wrong and how it ends2 mistakes▶
§ 3.3.10.92
our experience
3 relations
max-msg-per-connection<domain>The second way to end a connection — by the number of messages rather than by idle time. inferencesmtp-out-rampup-interval<domain>The flip side: holding removes the need to reopen a connection, while the pause slows down opening new ones. § 3.3.10.92
pmta show settings hotmail.com/vmta1 | grep -i idle pmta show queues --connected=yes --maxitems=20
3 articles
◇Four value types the whole config is written inBoolean, domain pattern, regular expression and time interval — defined once in § 3.2 and then used by all directives.◇How the policy for a receiver is assembledSettings are assembled from the most general pattern to the most precise; the order of blocks in the file means nothing.◇Backoff mode — the queue's second personalityA queue that a receiver has started refusing switches to a parallel set of limits, retries and routes — ten directives that act only in this mode.