In contrast to telephone or Internet relay chat, which enable simultaneous (synchronous) communication, e-mail – like letter mail – is an asynchronous communication medium: the sender sends his message regardless of whether the recipient can receive it immediately or not. A mail server is a server that can receive, forward, hold, and send emails. The e-mail addresses whose e-mail mailboxes are managed by the mail server inherit their domain part from the domain name of the mail server. The domain name of the mail server, in turn, is the domain of the email provider that operates the mail server.
Nowadays, SMTP, POP3 and IMAP protocols are mainly used, often in conjunction with SSL encryption.
An e-mail program, mail client or mail user agent (MUA) is a program that is used to receive, read, write and send e-mails. E-mail programs are usually offered free of charge, often as free software. Among the most widely used are Apple Mail, Mozilla Thunderbird, as well as Microsoft Outlook.
Features of Mail Server
In most mail servers, several modules work together:
- The Mail Transfer Agent accepts and forwards emails
- Mail retrieval agents retrieve e-mail from other servers
- Mail filters block spam and malware
- The Mail Delivery Agent sorts emails into email inboxes
- The Message Store grants access to the mailboxes
- The GAL (Global Address List) provides an address book from the mailboxes created on this mail server.
Mail servers are also used as SMTP Relay Server.
A message transfer agent receives mail from either another mail transfer agent (MTA), a mail submission agent (MSA), or a mail user agent (MUA). The transmission details are specified by the Simple Mail Transfer Protocol (SMTP).
Example of SMTP protocol based mail server software are Apache James, Sendmail, Postfix etc.
Mail Transfer Agent (MTA)
A Mail Transfer Agent or Message Transfer Agent (MTA) is the software of a mail server that receives and sends emails. In contrast, the Mail User Agent (MUA) is used by the computer user to process mails. In multi-user systems, a mail delivery agent can also be used as an alternative to the MTA.
MTAs very often communicate according to the Simple Mail Transfer Protocol. The recipient’s MTA works with the mail server’s Mail Delivery Agent (MDA), which delivers the emails to the appropriate mailboxes in the respective user directories. The Local Mail Transfer Protocol can be used for this purpose. If a mail server is designed as an SMTP relay, it can also consist of only one MTA.
An essential part of an MTA is its queue. There it collects orders, especially if the MTA of the addressee (recipient) is not immediately available. In this case, it goes through the recipient’s MX Resource Records several times to process the job. If this fails, it sends a message back to the sender that his/her email could not be delivered.
The MTA is the part of a mail server that is most vulnerable to computer security, such as malware intrusion. It is also the e-mail server component that offers measures to defend against spam.
Mail Delivery Agent (MDA)
A Mail Delivery Agent (MDA) is software for delivering emails to the user accounts in question.
Mail delivery agents, along with mail user agents, are the two original components of systems for e-mail. Because each mail user agent can only access a single user directory of a computer user, multi-user systems assign delivery to a mail delivery agent that is equipped with extended access rights from the root account.
With the client-server model, Mail Transfer Agents and the Simple Mail Transfer Protocol were added. In addition to this network protocol, mail delivery agents can use the Local Mail Transfer Protocol. Standalone implementations of mail delivery agents are also simply called mail filters:
- dystill – Mail filter with MySQL database connection
bin/mail – the MDA part of Sendmail is an example of software that include MDA.