Title: Comparison of Outbound Email Delivery Strategies
1Comparison of Outbound E-mail Delivery Strategies
- Postini SMTP Proxy, Smart Hosts, Direct Delivery
- January 14, 2008
2Direct Delivery of E-Mail Messages
Transfer Agent
Retreival Agent
Transfer Agent
Message Sender
User Interface
Mail Queue
User Mailbox
User Interface
Submission Agent
Transfer Agent
Access Agent
Message Recipient
Mail Client
Originating Server
Destination Server
Mail Client
- User composes message and submits message to
originating server - A limited amount of error checking is done in the
client and server - The client can check for basic proper formation
of recipient addresses - The originating server might check for validity
of remote domains in DNS - The client or originating server can validate
local addresses against directory - Once the message leaves the client, status is via
mail notification - Servers will send status notification messages
back to the sender as needed
3Direct Delivery of E-Mail Messages
Transfer Agent
Retreival Agent
Transfer Agent
Message Sender
User Interface
Mail Queue
User Mailbox
User Interface
Submission Agent
Transfer Agent
Access Agent
Message Recipient
Mail Client
Originating Server
Destination Server
Mail Client
- The originating server places the message in a
queue for holding - Queued messages are delivered when the
destinations can be reached - If a destination is available, the message will
typically be delivered instantly - If not reachable, the message will remain queued
on the originating server - In Exchange, a separate queue is maintained for
each destination server - To improve efficiency, the server keeps track of
state of destinations - If a destination is known to be down, retries are
attempted less frequently
4Direct Delivery of E-Mail Messages
Transfer Agent
Retreival Agent
Transfer Agent
Message Sender
User Interface
Mail Queue
User Mailbox
User Interface
Submission Agent
Transfer Agent
Access Agent
Message Recipient
Mail Client
Originating Server
Destination Server
Mail Client
- The destination server accepts the message and
delivers to mailbox - Delivery failures can still occur at this point
for various reasons - Mailbox size quotas or individual message size
limitations may exist - Filtering mechanisms may reject a message based
on its content - Failures should be detected before the message is
completely accepted - Destination servers should not generate delivery
status messages - The sender address on a message may be faked,
generating backscatter
5Direct Delivery Characteristics
- Advantages to the originating mail server
administrator - High degree of visibility into the email delivery
process - No additional components or outside services
needed - Simple, minimal, configuration minimizes points
of failure - Disadvantages to the originating mail server
administrator - Server and IP address are directly visible on
Internet - Server administrator needs to handle resolution
of blacklist issues - Administrator needs to perform monitoring and
troubleshooting - Mail delivery may be affected by connectivity of
mail server - Server needs to be able to handle size of queues
and retries
6What is a Smart Host?
- A Smart Host is simply a fully-functional SMTP
email server - Smart Hosts accept messages and deliver them to
their final destinations - A Smart Host takes all responsibility for a
message once it accepts it - Smart Hosts handle queuing, delivery retries, and
delivery failures - The Smart Host is an old concept dating to the
start of SMTP email - Not all machines had enough power to route email
messages - Dumb Hosts simply forwarded all messages to a
Smart Host - Smart Hosts may perform additional message
processing - Smart Hosts might filter outgoing messages to
prevent egress of spam - Outgoing messages might be tagged as an aid in
filtered inbound mail - Smart Hosts have become increasingly necessary
due to spam - Consumer and small business ISPs often will not
allow direct email delivery - Forcing outbound mail through Smart Host allows
monitoring and control
7Smart Host Mail Delivery Process
Transfer Agent
Retreival Agent
Transfer Agent
Transfer Agent
Message Sender
User Interface
Mail Queue
Mail Queue
User Mailbox
User Interface
Submission Agent
Transfer Agent
Transfer Agent
Access Agent
Message Recipient
Mail Client
Originating Server
Destination Server
Mail Client
Smart Host
- User composes message and submits message to
originating server - A limited amount of error checking is done in the
client and server - The client can check for basic proper formation
of recipient addresses - The originating server might check for validity
of remote domains in DNS - The client or originating server can validate
local addresses against directory - Once the message leaves the client, status is via
mail notification - Servers will send status notification messages
back to the sender as needed
8Smart Host Mail Delivery Process
Transfer Agent
Retreival Agent
Transfer Agent
Transfer Agent
Message Sender
User Interface
Mail Queue
Mail Queue
User Mailbox
User Interface
Submission Agent
Transfer Agent
Transfer Agent
Access Agent
Message Recipient
Mail Client
Originating Server
Destination Server
Mail Client
Smart Host
- The originating server places the message in a
queue for holding - Queued messages are sent to the Smart Host almost
immediately - No routing decisions are made except whether a
recipient is local or remote - As long as Smart Host is available, the
originating queue remains empty - In Exchange, one queue is maintained as the Smart
Host is one destination - The Smart Host may perform additional validation
at acceptance time - If a message is rejected, the originating server
sends a status to the sender
9Smart Host Mail Delivery Process
Transfer Agent
Retreival Agent
Transfer Agent
Transfer Agent
Message Sender
User Interface
Mail Queue
Mail Queue
User Mailbox
User Interface
Submission Agent
Transfer Agent
Transfer Agent
Access Agent
Message Recipient
Mail Client
Originating Server
Destination Server
Mail Client
Smart Host
- The Smart Host places the message in a queue for
holding - Queued messages are delivered when the
destinations can be reached - If a destination is available, the message will
typically be delivered instantly - If not reachable, the message will remain queued
on the Smart Host - The Smart Host is responsible for queue
management and delivery retries - The originating server no longer has any
responsibility for the message - If a message is delayed or fails, the Smart Host
sends a status to the sender
10Smart Host Mail Delivery Process
Transfer Agent
Retreival Agent
Transfer Agent
Transfer Agent
Message Sender
User Interface
Mail Queue
Mail Queue
User Mailbox
User Interface
Submission Agent
Transfer Agent
Transfer Agent
Access Agent
Message Recipient
Mail Client
Originating Server
Destination Server
Mail Client
Smart Host
- The destination server accepts the message and
delivers to mailbox - Delivery failures can still occur at this point
for various reasons - Mailbox size quotas or individual message size
limitations may exist - Filtering mechanisms may reject a message based
on its content - Failures should be detected before the message is
completely accepted - Destination servers should not generate delivery
status messages - The sender address on a message may be faked,
generating backscatter
11Smart Host Characteristics
- Advantages to the originating mail server
administrator - The originating server does not need to perform
queue management - Monitoring is simplified, server becomes almost
maintenance free - Originating server is isolated from the Internet
remains anonymous - Delivery troubleshooting is handled by the Smart
Host administrator - Resolution of blacklisting is handled by the
Smart Host administrator - Outgoing bandwidth reduced for multiple-recipient
messages - Disadvantages to the originating mail server
administrator - Loss of visibility into the delivery process
cant status messages - Smart Host is a potential additional point of
failure in delivery - Traffic from other Smart Host users could
increase blacklist risk
12What is the Postini SMTP Proxy?
- Postini provides outbound mail handling as part
of their service - The service includes filtering of outgoing
messages for viruses - Provides anonymity of IP address as mail going
out under Postinis address - The service is implemented as an SMTP proxy, not
a Smart Host - Postini does not queue messages, data is simply
passed through in real time - Any failure conditions from destination are
passed back to originating server - For delayed deliveries, the originating server
needs to handle retries - Exchange does not support configuration of an
SMTP proxy - The Postini services needs to be configured as a
Smart Host on Exchange - Because it is not truly a Smart Host, this causes
some negative effects
13Postini Mail Delivery Process
Transfer Agent
Retreival Agent
Transfer Agent
Transfer Agent
Message Sender
User Interface
Mail Queue
User Mailbox
User Interface
Transfer Agent
Submission Agent
Transfer Agent
Access Agent
Message Recipient
Mail Client
Originating Server
Destination Server
Mail Client
Postini Proxy
- User composes message and submits message to
originating server - A limited amount of error checking is done in the
client and server - The client can check for basic proper formation
of recipient addresses - The originating server might check for validity
of remote domains in DNS - The client or originating server can validate
local addresses against directory - Once the message leaves the client, status is via
mail notification - Servers will send status notification messages
back to the sender as needed
14Postini Mail Delivery Process
Transfer Agent
Retreival Agent
Transfer Agent
Message Sender
Transfer Agent
User Interface
Mail Queue
User Mailbox
User Interface
Transfer Agent
Submission Agent
Transfer Agent
Access Agent
Message Recipient
Mail Client
Originating Server
Destination Server
Mail Client
Postini Proxy
- The originating server places the message in a
queue for holding - Queued messages are delivered to destination
through Postini - No routing decisions are made except whether a
recipient is local or remote - If a delivery fails or is deferred, the message
stays queued at the origin - In Exchange, one queue is maintained as Postini
is setup as a Smart Host - Errors from the destination are treated by
Exchange as errors from Postini - The message passes through Postini but is not
stored by them
15Postini Mail Delivery Process
Transfer Agent
Retreival Agent
Transfer Agent
Message Sender
Transfer Agent
User Interface
Mail Queue
User Mailbox
User Interface
Transfer Agent
Submission Agent
Transfer Agent
Access Agent
Message Recipient
Mail Client
Originating Server
Destination Server
Mail Client
Postini Proxy
- The destination server accepts the message and
delivers to mailbox - Delivery failures can still occur at this point
for various reasons - Mailbox size quotas or individual message size
limitations may exist - Filtering mechanisms may reject a message based
on its content - Failures should be detected before the message is
completely accepted - Destination servers should not generate delivery
status messages - The sender address on a message may be faked,
generating backscatter
16Postini SMTP Relay Characteristics
- Advantages to the originating mail server
administrator - Originating server is isolated from the Internet
remains anonymous - Resolution of blacklisting is handled by Postini
service - Outgoing mail is scanned for viruses
- Disadvantages to the originating mail server
administrator - Administrator needs to perform monitoring and
troubleshooting - Interjection of Postini in mail path complicates
troubleshooting - Exchange cannot manage the queue optimally with
Postini - Server needs to be able to handle size of queues
and retries - Postini service is a potential additional point
of failure in delivery - Traffic from other Postini users could increase
blacklist risk
17Comparison Between Methods
- Exchange SMTP queues
- Postini One queue for all messages, problem
deliveries mixed in - Direct One queue per destination, only problems
will have a queue - Smart Host One queue for all messages, queue
will remain empty - Content filtering
- Postini Service provides content scanning of
outgoing mail - Direct Any scanning would be performed on
originating server - Smart Host Service might or might not provide
scanning of mail - Visibility of servers
- Postini Mail appears to come from Postini
addresses - Direct Mail would show IP address of originating
server - Smart Host Mail appears to come from the Smart
Host
18Comparison Between Methods
- Delivery performance
- Postini Problem destinations might affect
delivery of other messages due to shared link
state and intermingling of messages in queues - Direct Problem destinations will only affect
those destinations since each message is
maintained in a separate queue - Smart Host Messages leave server immediately and
queue stays empty, Smart Host manages delivery of
messages and retries - Monitoring and troubleshooting
- Postini Server administrator performs delivery
troubleshooting, having Postini as an
intermediary complicates diagnosis - Direct Easy to monitor for issues, server
administrator needs to perform all
troubleshooting of deliveries - Smarthost Very little that administrator can do,
Smart Host performs all monitoring and
troubleshooting