May 3, 2022 5:45 PM, "Demi Marie Obenour" <[email protected]> wrote:
> 
> Would pipelining provide any benefits for submissions/smtps on port 465?
>

I'm biased towards saying no but maybe it would kinda ?

Let me give a more detailed answer so you can infer pros/cons:

The benefit of pipelining is higher for protocols that support multiplexing,
like http/2.0 which supports multiple requests over the same connections, or
for protocols where you can batch your requests and read your responses as a
batch, like http/1.0 with keep-alive which lets you submit multiple GETs and
read the corresponding responses sequentially. 

The SMTP protocol is neither one these.

It doesn't support multiplexing and only lets you deal with one message at a
time, and this message is dealt with within a transaction which expects that
commands execute in a specific sequence as they are all dependant on results
from previous ones, there's no possibility to take advantage of knowing what
commands are about to be executed to prepare stuff in advance as any failure
may mean that everything that follows should be failed.

The benefit you gain from pipelining is that you can pack your commands as a
mean to reduce round-trips but, as soon as they hit the server, they are put
in a fifo and have to wait for previous commands to be dealt with. This does
not mean that there's no benefit but it is at least partly cancelled by that
transactional behaviour: if you saved some ms on transport, part of them are
going to be wasted waiting for the command to be executed on server side. It
is mainly a benefit for bulk sender who want to enqueue a ton of recipients,
knowing that none will fail in their setup... but even then, I've worked for
a bulk sender and the SMTP layer without pipelining was never the bottleneck
for volume ranging from hundreds of thousands to millions of enqueues.

I'm very biased towards "this is a useless feature" but I might very well be
wrong and you should not take my word for it, the diff to support pipelining
is quite simple and you should really test it if you think it may benefit.

Gilles

Reply via email to