Email agent (infrastructure)

The best-known are message user agents (MUAs, aka, e-mail clients) and message transfer agents (MTAs, programs that transfer e-mail between clients), but finer divisions exist.

[1][2] The finest and most expansive classification in current use is into five functions in addition to the mail exchanger (MX):[3] The traditional division is into client-side (MUA) and server-side (MTA, notably sendmail), with the flow given as:[17] Other divisions have been made to draw distinctions that some have found useful, which are detailed as follows.

Broadly and traditionally, any program that transfers mail between the ends (all server-side functions) is an MTA.

The motivation for distinguishing the MSA role has largely been security, with MUA–MSA interactions (initial submission) receiving greater scrutiny than MTA–MTA (server–server) transfers.

The delivery (MDA) stage is where such tasks as filtering (of undesired messages) and filing (into separate folders) occur, and are the start of the user agent; traditionally this was done via procmail, while today it may be done via server-side programs, often using spam filters such as SpamAssassin.

Schema of e-mail delivery