You are sending a link to...
What Could Possibly Go Wrong with Email?
The other day, a client wrote in to tell us he appreciated how we take such good care of his email compared to some other hosts. That was nice to hear because while mail is one of those things that users just expect to work, it gives hosting companies fits including us.
As a web host, we maintain complex networking systems along with a variety of web servers, DNS servers, database servers, file servers, monitoring servers and backup servers just to keep your website up and running smoothly. In addition, we maintain a variety of servers for mail including servers for sending mail, receiving mail, evaluating and tagging mail for spam, storing mail and archiving it.
Email is tricky because there is so much that can go wrong with it. It wasn't always like that, though. Email was one of the first Internet protocols, having been invented to send plain text messages in 1971 just two years after the net got started and 19 years before the world wide web turned up on the scene. There were no hackers, no viruses, no spam, no phishing, no attachments... and few problems.
The first fly in the ointment came in 1992 when the first Mime attachment was sent. Before that, files were shared using FTP, Small ones might have been encoded into text, added to an email message and decoded upon receipt, but that was something for tech nerds, not the everyday Joe. Mime attachments were created for him. So if you ever wondered why you can't send huge attachments in email, it's because email wasn't originally designed to handle them at all.
Sending to Multiple Recipients
Abuse of email has caused hosts to come up with a great many tools and techniques to minimize it and protect customers without making it extremely difficult to use. One of those is to limit senders from sending the same message to a huge list of recipients. If you host limits this practice, you can use mass email marketing systems like eBlast111 or the eBlast tool built into our Build111 CMS website creation tool. These systems are designed to avoid email abuse and have a good reputation with recipient email systems.
If you haven't already created a nice secure email password, stop reading and do it immediately! If you don't have one and your email account gets hacked as a result, spammers can send tons of spam from your account and get the IP address of your mail server blocked. This generally effects everyone on your mail server including you.
How Email Works
We thought it might be fun to try to identify all the potential points of email failure in order to demonstrate why email is not easy to keep running smoothly and why it can be hard to diagnose problems when they arise. Below is what happens in a typical mail process like ours with the steps as the main bullets in bold and potential problems indented for each step.
From a user perspective, you craft your message in your mail client (Outlook, Thunderbird, Webmail like Gmail or others). Then you hit "Send" and figure you're done. But from our perspective, that's just where the fun starts...
- Your mail client uses DNS to find your SMTP (outgoing) server
- Your outgoing mail server setting must be correct (like mail.whatever.com)
- Your mail client must get through your firewall to reach the server
- You must be connected to the Internet
- Your mail client attempts to hand the message to the SMTP server
- The server must be up and running and accepting mail
- You must have a valid account username and password on the server
- The server may not be able to accept message if all available connections are in use
- The SMTP server hands off the mail to one of several mail relay servers
- â€‹â€‹The relay server must be up and running and accepting mail
- The relay server uses DNS to find the MX (receiving) server
- The domain name (after the @) must have a valid MX record
- The relay server attempts to hand the message to the receiving server
- The receiving server must be up and running and accepting mail
- The receiving server checks DNS of the sending server
- The sender's domain may need an SPF record
- The sender's domain should have reverse lookup
- The receiving server checks to see if it has a valid mailbox
- If one is not present it rejects the message
- The receiving server tells the sending server it will accept the message
- Depending on the reason, if the message is not accepted, the sending server may delay the message and try again later or simply bounce the message back to the sender. After a predetermined maximum delay, the message will also bounce.
- The message is processed through anti-virus analysis
- A virus will be stripped off if found
- A valid file may be removed if it looks like a virus to the scanner
- The message is evaluated against spam rules and a score is applied
- Blacklists of mail server IP addresses or domains or email addresses may be used
- Content may be evaluated against libraries of content reported as spam
- The message is either bounced, deleted, quarantined, grey listed or accepted based on rules
- â€‹Messages can be lost if quarantine is not watched
- Valid messages may be caught as "false positives" for spam content
- Grey listed addresses may cause mail to be delayed temporarily
- If accepted, the message is saved until the recipient checks for the mail
- â€‹A file server must be up and running with enough disk space
- A database server must be up and running with enough disk space
- The recipient's mail client checks mail with either POP or IMAP
- The incoming mail server setting must be correct (like mail.whatever.com)
- POP removes messages from the sever (depending on settings)
- IMAP keeps a copy of messages on the server until deleted
- The mail client must use a valid username and password
- If too many password failures occur, the IP of the mail client may be blacklisted
- The mail is delivered to the recipient's mail client
- The message may end up in a junk mail folder
So by my count, there are 31 potential things that can go wrong with email identified here. I'll be we missed a whole lot of others, so if you can think of some more, add your comment.
If you'd like to talk with us about email hosting, spam filtering, web hosting, virtual servers or anthing related to web design, programming or getting found on search engines, please give us a call at 877.397.7605 or contact 111 Web Studio for more information.