Electronic mail is a method of transmitting and receiving digital messages using electronic devices over a computer network. It was conceived in the late–20th century as the digital version of, or counterpart to, mail. Email is a ubiquitous and very widely used communication medium; in current use, an email address is often treated as a basic and necessary part of many processes in business, commerce, government, education, entertainment, and other spheres of daily life in most countries.
Email operates across computer networks, primarily the Internet, and also local area networks. Today's email systems are based on a store-and-forward model. Email servers accept, forward, deliver, and store messages. Neither the users nor their computers are required to be online simultaneously; they need to connect, typically to a mail server or a webmail interface to send or receive messages or download it.
Originally a text-only ASCII communications medium, Internet email was extended by MIME to carry text in expanded character sets and multimedia content such as images. International email, with internationalized email addresses using UTF-8, is standardized but not widely adopted.
Terminology
The term electronic mail has been in use with its modern meaning since 1975, and variations of the shorter E-mail have been in use since 1979:- email is now the common form, and recommended by style guides. It is the form required by IETF Requests for Comments and working groups. This spelling also appears in most dictionaries.
- e-mail was originally the form favored in edited published American English and British English writing, and was formerly preferred by some style guides.
- E-mail is sometimes used. The original usage in June 1979 occurred in the journal Electronics in reference to the United States Postal Service initiative called E-COM, which was developed in the late 1970s and operated in the early 1980s.
- EMAIL was used by CompuServe starting in April 1981, which popularized the term.
- EMail is a traditional form used in RFCs for the "Author's Address".
An Internet email consists of an envelope and content; the content consists of a header and a body.
History
Computer-based messaging between users of the same system became possible after the advent of time-sharing in the early 1960s, with a notable implementation by MIT's CTSS project in 1965. Most developers of early mainframes and minicomputers developed similar, but generally incompatible, mail applications. In 1971 the first ARPANET network mail was sent, introducing the now-familiar address syntax with the '@' symbol designating the user's system address. Over a series of RFCs, conventions were refined for sending mail messages over the File Transfer Protocol.Proprietary electronic mail systems soon began to emerge. IBM, CompuServe and Xerox used in-house mail systems in the 1970s; CompuServe sold a commercial intraoffice mail product in 1978 to IBM and to Xerox from 1981. DEC's ALL-IN-1 and Hewlett-Packard's HPMAIL were released in 1982; development work on the former began in the late 1970s and the latter became the world's largest selling email system.
The Simple Mail Transfer Protocol was implemented on the ARPANET in 1983. LAN email systems emerged in the mid-1980s. For a time in the late 1980s and early 1990s, it seemed likely that either a proprietary commercial system or the X.400 email system, part of the Government Open Systems Interconnection Profile, would predominate. However, once the final restrictions on carrying commercial traffic over the Internet ended in 1995, a combination of factors made the current Internet suite of SMTP, POP3 and IMAP email protocols the standard.
Operation
The following is a typical sequence of events that takes place when sender Alice transmits a message using a mail user agent addressed to the email address of the recipient.- The MUA formats the message in email format and uses the submission protocol, a profile of the Simple Mail Transfer Protocol, to send the message content to the local mail submission agent, in this case smtp.a.org.
- The MSA determines the destination address provided in the SMTP protocol —in this case, bob@b.org—which is a fully qualified domain address. The part before the @ sign is the local part of the address, often the username of the recipient, and the part after the @ sign is a domain name. The MSA resolves a domain name to determine the fully qualified domain name of the mail server in the Domain Name System.
- The DNS server for the domain b.org responds with any MX records listing the mail exchange servers for that domain, in this case mx.b.org, a message transfer agent server run by the recipient's ISP.
- smtp.a.org sends the message to mx.b.org using SMTP. This server may need to forward the message to other MTAs before the message reaches the final message delivery agent.
- The MDA delivers it to the mailbox of user bob.
- Bob's MUA picks up the message using either the Post Office Protocol or the Internet Message Access Protocol.
- Alice or Bob may use a client connected to a corporate email system, such as IBM Lotus Notes or Microsoft Exchange. These systems often have their own internal email format and their clients typically communicate with the email server using a vendor-specific, proprietary protocol. The server sends or receives email via the Internet through the product's Internet mail gateway which also does any necessary reformatting. If Alice and Bob work for the same company, the entire transaction may happen completely within a single corporate email system.
- Alice may not have an MUA on her computer but instead may connect to a webmail service.
- Alice's computer may run its own MTA, so avoiding the transfer at step 1.
- Bob may pick up his email in many ways, for example logging into mx.b.org and reading it directly, or by using a webmail service.
- Domains usually have several mail exchange servers so that they can continue to accept mail even if the primary is not available.
Email pre-dates instant messaging, and transmission favors reliability over speed, in order to be able to cope with unreliable network links and busy servers. Reasons for slower delivery include:
- Messages going to a large number of recipients require more processing
- Large messages require more time to transmit over the network
- Messages need to pass through multiple servers
- One or more mail servers are overloaded and queuing incoming mail or temporarily refusing incoming connections
- SMTP requires multiple back-and-forths, which can amplify the impact of a slow network or dropped packets
- Sender or recipient temporarily disconnected from the network
- Slow DNS response
- Server down for maintenance or malfunction
Email messages classified as spam by a spam filter may be sorted into a separate folder which the recipient must check manually, or may be dropped entirely.
Message format
The basic Internet message format used for email is defined by, with encoding of non-ASCII data and multimedia content attachments defined in RFC 2045 through RFC 2049, collectively called Multipurpose Internet Mail Extensions or MIME. The extensions in International email apply only to email. RFC 5322 replaced RFC 2822 in 2008. Earlier, in 2001, RFC 2822 had in turn replaced RFC 822, which had been the standard for Internet email for decades. Published in 1982, RFC 822 was based on the earlier RFC 733 for the ARPANET.Internet email messages consist of two sections, "header" and "body". These are known as "content". The header is structured into fields such as From, To, CC, Subject, Date, and other information about the email. In the process of transporting email messages between systems, SMTP communicates delivery parameters and information using message header fields. The body contains the message, as unstructured text, sometimes containing a signature block at the end. The header is separated from the body by a blank line.
Message header
RFC 5322 specifies the syntax of the email header. Each email message has a header, comprising a number of fields. Each field has a name, followed by the separator character ":", and a value.Each field name begins in the first character of a new line in the header section, and begins with a non-whitespace printable character. It ends with the separator character ":". The separator is followed by the field value. The value can continue onto subsequent lines if those lines have space or tab as their first character. Field names and, without SMTPUTF8, field bodies are restricted to 7-bit ASCII characters. Some non-ASCII values may be represented using MIME encoded words.