Messaging Processing in a Two-Tier Deployment With LMTP presents in pictorial form the following discussion of message processing in a two-tier deployment scenario with LMTP.
With LMTP in place, a connection on the SMTP port of the relay machine is picked up by the dispatcher and handed off to a tcp_smtp_server process. This process does a number of things with the inbound message including:
Looking up the user in the directory
Determining if the user is within a domain hosted by this email deployment
Determining if the user is a valid user in the domain
Determining which back end message store machine hosts the mailbox for the user
Enqueuing the message for delivery to the mailhost
On the store machine, a connection to the LMTP port is received by the dispatcher and handed off to the lmtp_server process. The LMTP server then inserts the message into the user's mailbox or into the UNIX native mailbox. If message delivery is successful, the message is dequeued on the relay machine. If unsuccessful, the message remains on the relay machine. Note that the LMTP process on the message store does not engage any MTA machinery for processing addresses or messages.