322
322
<li> <p> The queue manager (the qmgr(8) server process in the
323
323
figure) is the heart of Postfix mail delivery. It contacts the
324
smtp(8), lmtp(8), local(8), virtual(8), pipe(8), or error(8) delivery
325
agents, and sends a delivery request for one or more recipient
326
addresses. The error(8) delivery agent is special: it always declares
327
mail as undeliverable. It is not shown in the figure above. </p>
324
smtp(8), lmtp(8), local(8), virtual(8), pipe(8), discard(8) or
325
error(8) delivery agents, and sends a delivery request for one
326
or more recipient addresses. The discard(8) and error(8) delivery
327
agents are special: they discard or bounce all mail, and are not
328
shown in the figure above. </p>
329
330
<p> The queue manager maintains a small active queue with the
330
331
messages that it has opened for delivery. The active queue acts as
395
396
<p> The previous sections gave an overview of how Postfix server
396
397
processes send and receive mail. These server processes rely on
397
other server processes that do things behind the scenes. Where
398
practical, each service will be visualized in its own context. As
398
other server processes that do things behind the scenes. The text
399
below attempts to visualize each service in its own context. As
399
400
before, names followed by a number are Postfix commands or server
400
401
programs, while unnumbered names inside shaded areas represent
401
402
Postfix queues. </p>
447
<li> <p> The anvil(8) server implements client connection and rate
448
<li> <p> The anvil(8) server implements client connection and
448
450
limiting for all smtpd(8) servers. The TUNING_README document
449
451
provides guidance for dealing with mis-behaving SMTP clients. The
450
anvil(8) service is not included with Postfix version 2.1 or earlier.
452
anvil(8) service is available in Postfix version 2.2 and later.
535
537
and reduces the number of open lookup tables by sharing one open
536
538
table among multiple processes. </p>
540
<li> <p> The scache(8) server maintains the connection cache for
541
the Postfix smtp(8) client. When connection caching is enabled for
542
selected destinations, the smtp(8) client does not disconnect
543
immediately after a mail transaction, but gives the connection to
544
the connection cache server which keeps the connection open for a
545
limited amount of time. The smtp(8) client continues with some
546
other mail delivery request. Meanwhile, any smtp(8) process can
547
ask the scache(8) server for that cached connection and reuse it
548
for mail delivery. As a safety measure, Postfix limits the number
549
of times that a connection may be reused. </p>
551
<p> When delivering mail to a destination with multiple mail servers,
552
connection caching can help to skip over a non-responding server,
553
and thus dramatically speed up delivery. </p>
557
<tr> <td align="center" bgcolor="#f0f0ff"> <br> smtp(8) <br>
558
</td> <td> <tt> <-> </tt> </td> <td align="center"
559
bgcolor="#f0f0ff"> <br> scache(8) <br> </td> <td> <tt>
560
<-> </tt> </td> <td align="center" bgcolor="#f0f0ff"> <br>
561
smtp(8) <br> </td>
538
565
<li> <p> The showq(8) servers list the Postfix queue status. This
539
566
is the queue listing service that does the work for the mailq(1)
540
567
and postqueue(1) commands. </p>
557
584
standard input, output and error streams. You can find examples of
558
585
its use in the SMTPD_POLICY_README document. </p>
587
<li> <p> The tlsmgr(8) server runs when TLS (Transport Layer
588
Security, formerly known as SSL) is turned on in the Postfix smtp(8)
589
client or smtpd(8) server. This process has two duties: </p>
593
<li> <p> Maintain the pseudo-random number generator (PRNG) that
594
is used to seed the TLS engines in Postfix smtp(8) client or smtpd(8)
595
server processes. The state of this PRNG is periodically saved to
596
a file, and is read when tlsmgr(8) starts up. </p>
598
<li> <p> Maintain the optional Postfix smtp(8) client or smtpd(8)
599
server caches with TLS session keys. Saved keys can improve
600
performance by reducing the amount of computation at the start of
605
<p> TLS support is available in Postfix version 2.2 and later.
606
Information about the Postfix TLS implementation is in the TLS_README
611
<tr> <td>Network<tt>-> </tt> </td> <td align="center"
612
bgcolor="#f0f0ff"> <br> smtpd(8) <br> </td> <td colspan="2">
613
<tt> <---seed---<br><br><-session-> </tt> </td> <td
614
align="center" bgcolor="#f0f0ff"> <br> tlsmgr(8) <br> </td>
615
<td colspan="3"> <tt> ---seed---><br> <br><-session->
616
</tt> </td> <td align="center" bgcolor="#f0f0ff"> <br> smtp(8) <br>
617
</td> <td> <tt> -></tt>Network </td> </tr>
619
<tr> <td colspan="3"> </td> <td align="right"> <table> <tr> <td>
620
</td> <td> / </td> </tr> <tr> <td> / </td> <td> </td> </tr> </table>
621
</td> <td align="center"> |<br> |</td> <td align="left"> <table>
622
<tr> <td> \ </td> <td> </td> </tr> <tr> <td> </td> <td> \ </td>
623
</tr> </table> </td> <td colspan="3"> </td> </tr>
625
<tr> <td colspan="2"> </td> <td align="center" bgcolor="#f0f0ff">
626
smtpd<br> session<br> cache </td> <td> </td> <td align="center"
627
bgcolor="#f0f0ff"> PRNG<br> state <br>file </td> <td> </td> <td
628
align="center" bgcolor="#f0f0ff"> smtp<br> session<br> cache </td>
629
<td colspan="2"> </td> </tr>
560
634
<li> <p> The verify(8) server verifies that a sender or recipient
561
635
address is deliverable before the smtpd(8) server accepts it. The
562
636
verify(8) server injects probe messages into the Postfix queue and