Email agents
Jump to navigation
Jump to search
This article is a subtopic in a cluster of articles under Email system. We assume the reader understands that parent article and its terminology. Here we go into more detail on Actors and their roles. We define each role in terms of the responsibilities associated with that role. We illustrate the use of roles as building blocks in diagrams of various typical email systems.
Actors and Roles
Actors include Users and Agents Agents may play more than one role Typical roles include Transmitter, Receiver, and Delivery (MDA). A Border shows where there is no prior relationship between Agents. --> Direction of mail flow (no statement as to relationship) ==> Direct relationship between Actors (e.g. a contract) ~~> Indirect relationship (e.g. both directly related to Recipient) A/B Roles A and B both played by the same Actor
Typical System
|--- Sender's Network ---| |-- Recipient's Network -| / Author ==> MSA/Transmitter --> / --> Receiver/MDA ==> Recipient / Border
Roles and Responsibilities
Author - Originate messages - Provide a password or other means of authentication
MSA - Mail Submission Agent - Authenticate the Author - Manage Author accounts
Transmitter - Spam Prevention - rate limits, content analysis, alerts - respond to spam reports - maintain reputation - Authentication - RFC compliance - IP authorization (SPF, SID, CSV, ...) - signatures & key management (DKIM ...) - Return Address validation code - Process SMTP Rejects
Receiver - Block DoS - Authenticate Sender - HELO, Return Address, Headers, Signature - reject forgeries - Assess reputation - whitelists - Filter spam - Add authentication headers - Manage Recipient accounts/options - whitelisting, blacklisting, filtering, blocking, forwarding - Process spam reports, DSNs
Forwarder - Authenticate upstream Agent - Set up forwarding to downstream Agent - check RFC compliance - set up authentication records - submit forwarding request, wait for approval - Manage Recipient accounts - maintain database of forwarding addresses - suspend account when a message is rejected - communicate w Recipient re " " - Maintain reputation as a trusted Forwarder - certifications - Process SMTP Rejects
MDA - Mail Delivery Agent - Authenticate upstream Agent - Sort and store messages - Provide access for Recipients - POP3, IMAP, Webmail - Manage Recipient accounts/options - Relay spam reports to Receiver (or don't accept them)
Recipient - Set up accounts with each Agent - Select options in each account - Report spam to Receiver
Mediator - Receive - Process - Resend automatically - Acts as an Agent, but - Classified as a User for simplicity
Example Systems
Basic setup with four actors
|--- Sender's Network ---| |-- Recipient's Network -| / Author ==> MSA/Transmitter --> / --> Receiver/MDA ==> Recipient / Border
Simple forwarding is quite common
|-------- Recipient's Network ---------| / --> / --> Receiver/Forwarder ~~> MDA ==> Recipient / Border
Chain forwarding should be discouraged
|------------ Recipient's Network ------------| / --> / --> Receiver ~~> Forwarder(s) ~~> MDA ==> Recipient / Border
Open forwarding must be banned
/ / |-- Recipient's Network -| --> / --> Forwarder --> / --> Receiver/MDA ==> Recipient / / Border Border