What is email?
Email is electronic mail, the most reliable and legal mode of communication that uses electronic devices and data transmission to deliver messages across different computer networks to one or a group of recipients on the internet.
Advantages of email
- Email is universal as all the email servers need to be compliant with the RFC rules that are predefined by the IETF (Internet Engineering Task Force).
- You can send individual emails or send them to a group of people using different email services in a single go.
- Emails can be sent to notify people or remind people.
- Emails are an async mode of communication and the recipients can respond later at their convenience.
- Cc/ Bcc options in email are useful to keep people in the loop, even when the actual recipients are different sets of people.
- With anytime, anywhere options and universal applications, emails are still the most trusted mode of communication for intra-organization communication.
- Emails are the most effective mode of communication, in terms of cost, speed, and reliability.
How does email work?
When you send an email to your friends or contacts, it is almost immediately delivered to the recipients within the blink of an eye. However there is a set of processes that happens in the background from when you send the email, and till the email is delivered to the recipient's Inbox. A brief outline of the process is explained below:
- You log in to your email (webmail or mobile device or desktop client).
- Open the composer and specify the subject, type in the email content, choose the recipients, and draft the email.
- You hit send and send the email. Now the backend process begins.
- The email client (web/ mobile/ desktop) connects to the Outgoing SMTP server based on the email account you used.
- The email client handovers the email in MIME format to the Outgoing SMTP server.
- The Outgoing SMTP validates the sender's details and processes the message for sending.
- It also verifies the attachment size and verifies whether the email complies with the outgoing email policy set for the particular account.
- Once the entire validation is completed, it places it in the Outgoing queue.
- The SMTP server looks up the DNS records of the domain and retrieves the MX records information of the recipient servers (A Records in case no MX record is found).
- Then the SMTP Server connects with the Recipient email server MTA and sends the email through the SMTP protocol.
- The Recipient server now runs various checks - including Spam and Virus checks for the email and accepts the email based on its Anti-spam and Anti-virus policies.
- Then the Recipient server validates the recipient account and delivers the email to the user's mail account, based on the incoming email policies set for the account.
The user views the received email using his email client.
Email Bounces/ Undeliverable Messages (554.x.x errors/ 5xx errors):
Once an email is sent from the client, the emails can be bounced back as undeliverable emails due to any of the reasons below. These errors are permanent errors and hence the emails will not be retried by the SMTP Servers.
Invalid Domain:
When you send an email to an invalid domain, the SMTP server is unable to lookup DNS information for the particular domain. In this case, the email is bounced as undeliverable by the SMTP server itself.
Example: You send an email to abc@yordomain.com instead of abc@yourdomain.com. In this case, when there is no valid domain yordomain.com, the DNS Lookup fails and the domain is considered invalid domain.
Solution: Check the correct spelling of the domain name you have entered.
No MX Records found:
When you send an email to a valid domain, but there are no MX records/ valid A Records for the domain (nothing is returned by the DNS Servers), the email is bounced as undeliverable by the SMTP server itself.
Solution: Check with the recipient or the recipient administrator if this is a known issue. Check for an alternate email address and send an email there in case of an emergency. This is purely the issue at the recipient domain and can be resolved by the admin of the recipients.
Invalid Recipients/ User unknown
When you send an email, but type the email address incorrectly or send an email to an employee, who has left the organization, you may get such errors.
Example: You send an email to abb@yourdomain.com instead of abc@yourdomain.com. The email is delivered to the MX records of the yourdomain.com. But there is no valid account like abb@yourdomain.com in the server, the recipient server bounces back the email as undeliverable.
Solution: In some cases, checking the email address for typos might help.
Email Policy Violation:
The recipient email server may have some restrictions or email policies applicable to incoming emails. If the email you send violates such policies, your email might be rejected by the recipient server.
Example: You send an email to abc@yourdomain.com with a .mov attachment file. If the recipient server has an email policy to not accept .mov files, the recipient server may reject the email based on the policy.
Other reasons:
Other than the above common reasons, the recipient email servers may reject or bounce the emails due to various reasons and errors. Most of the time, the bounce email will include the reason the email was rejected.
Temporary Email Failures/ Retry Errors (451.x.x errors/ 4xx errors):
Sometimes when an SMTP Server connects with the recipient email server, the recipient server returns temporary errors. In this case, the email will be placed in the Retry Queue, and the SMTP Server will try to deliver the email to the recipient server in preset intervals. Mostly the emails might be delivered on subsequent retries. If the email is not accepted by the recipient server after the preset number of retries, the email is bounced back to the sender as a permanent failure.
Server Busy:
If the recipient server is busy, the email will be placed in the retry queue and will be retried after some time.
Greylisting:
Some recipient servers, when receiving emails from specific domains for the first time, they greylist the emails by throwing temporary errors. Mostly these emails will be delivered in subsequent retries.
Too Many Emails/ Email Policies:
Some servers greylist the emails, in case they notice a sudden surge in the number of emails received from a specific domain or specific IP Address. This temporary rejection is based on the email policy of the recipient server.
Other reasons:
Some recipient servers give 4xx errors when the recipient mailbox is full or based on the Anti-spam settings of the domain/ server etc. In the case of Zoho Mail, the no MX records found are treated as a temporary error and the email is placed in the Retry queue.