All About Email
When I initially began writing this article, I wrote it for someone who is reasonably intimately familiar with the basic principles of email and its underlying terminology. However, as I delved deeper into the issues surrounding my requirements and the details of each client, I realized that I was using language with which some may not be so familiar. As such, I thought it wise to take a step back and outline some of the more crucial points to understanding the annoying complexities of modern email.
For those of my readers who are familiar with how email works (and I’m not talking about the basic ‘hit the send button and it gets my mail’ type of how), please feel free to skip ahead. Everyone else, consider this section a crash-course in the fundamentals of modern email. This list is far from inclusive, but it should cover everything I talk about in the remainder of this article (as well as a few things I don’t).
Probably the one term that everyone is familiar with, but also the most critical word in the list. Simply put, email is one of the most popular forms of communication available today. While most general emails are plain text, it is possible to send images, HTML content, and various other types of data.
Authentication is a generalized term which refers to standards such as SenderID, SPF, and DomainKeys/DKIM through which a server can verify that an email is sent from the user and domain that are listed as the sender. Authentication standards are used to fight SPAM and email spoofing.
A Bayesian filter is a type of filter which attempts to determine the probability that an inbound email is SPAM. Bayesian filters have the benefit of being adaptable in the sense that they can identify new patterns by analyzing incoming email.
A blacklist is a list containing email or IP addresses from which one does not want to receive email. Such records can be server-side or client-side.
A bounce is a term used to define an email which does not reach its intended destination. There are two forms of bounces: hard bounces, and soft bounces. A hard bounce is a permanent failure. It can be caused by an invalid address or server, or a permanent rejection (such as a blacklisted response) from a server. A soft bounce is a temporary failure. Soft bounces are generally caused by unintentional issues such as network problems or server overload.
DNS is an acronym which is not specific to email and stands for Domain Name Server. A Domain Name Server is like the post office of the Internet; it takes a given domain name and translates it into an IP address that a computer can understand.
Domain Keys Identified Mail, often simply referred to as DomainKeys or DKIM, is a cryptographic authentication solution which adds a signature to emails allowing the recipient server to authenticate the sender information and verify that the message was not altered during transit.
An email client is merely the software which a user uses to retrieve and read their email. Clients can be desktop or web-based, but generally follow a standard format through which users can read, write and reply to messages.
The header of an email is generally not seen by the user, though it is always accessible. It contains the necessary information regarding the sender of the message, as well as specific routing information.
A Fully Qualified Domain Name is a name consisting of both a hostname and domain name. For example, in my domain, the FQDN is ‘www.evertiro.com.’ In this instance, ‘www’ is the hostname, ‘evertiro’ is the second-level domain, and ‘com’ is the top-level domain.
HTML is the traditional acronym for HyperText Markup Language, perhaps the most commonly-used language for the creation of web content and email messages.
The Internet Message Access Protocol is one of the two predominant protocols through which email messages are retrieved. When emails are retrieved through IMAP, the emails remain on the remote server, making it the more versatile protocol.
An IP (or Internet Protocol) address is a unique identifier assigned to each computer connected to the Internet. A traditional (IPv4) address is comprised of four numbers separated by periods. Each number is in the range of 0-255 and IPv4 allows a total of roughly 4.3 billion addresses. Recently, a new revision of the IP format has come out called IPv6. IPv6 addresses are comprised of eight, four-character hexadecimal sequences separated by colons. The new format allows 7.9×10^28 times more addresses than its predecessor, which is becoming increasingly crucial as IPv4 runs out of available addresses.
Plaintext is relatively self-explanatory; simply put, it is any textual content which includes no formatting.
POP, or Post Office Protocol, is the second protocol which can be used to retrieve email from a remote server. Unlike IMAP, POP stores email on the local machine and removes it from the remote server. As a result, it is less versatile, limiting the user to accessing their email through only one client.
A protocol is a set of rules which define how to transmit, receive, or store data.
Sender ID is an authentication protocol through which a server can verify that the IP address used to send an email is authorized to send on behalf of the listed domain.
Simple Mail Transfer Protocol, more commonly known as SMTP, is a protocol used to send email. It defines a set of rules regarding the interaction between the program sending the email and the program receiving it.
SPAM is the term used to define any form of unsolicited junk email.
SPF, or Sender Policy Framework, is an authentication protocol used to identify messages sent with a forged ‘MAIL FROM’ address.
Spoofing is the act of falsifying the sender information to make it appear as if an email came from someone other than the actual sender. Spoofing is highly illegal.
Transmission Control Protocol/Internet Protocol is a protocol suite which defines the rules by which computers communicate. Virtually all modern Internet communication is handled through TCP/IP.