Bounced messages: Introduction
When an e-mail cannot be delivered for some reasons, such as full mailbox, blocked domain or non-existent account, the bounced e-mail is sent back to the original sender. Probably, if you are sending a few emails every day, the delivery errors will not be a big deal for you. In case you are sending a lot of emails every day you need to know the potential problems. The server can block all emails from you if you are repeatedly sending messages to a bad address on some popular domain. Besides, if you have a low bandwidth connection it is also necessary not to waste traffic. But if you are repeatedly sending emails to bad addresses, it wastes your bandwidth. Even if your connection has a high bandwidth capability, this problem will grow in scale with time.
It is obvious that if you want to improve your work you have to identify bad addresses and delete them from your address database. Sometimes it is necessary not to delete bad addresses, but to mark them as “bad” and then try to send a message to them one more time. But how will we know that the address is bad?
The simplest solution is address verifying. Sometimes a user can make errors in the email addresses. Thus, your program should check the email address for syntactical errors and for non-existent domains. But unfortunately, syntactical check will not tell you whether the user’s part of the address is valid.
The majority of all SMTP servers will accept mail addresses to anyone in their domain. The problem is that such servers figure out that the accepted mail address does not exist a few minutes later (time can vary). For example, if you send a message to 12345@domain.com, while you have valid addresses in the same domain (jdoe@doamain.com), you will get a bounce some time later. The server accepts all emails that go to a valid domain. That is why you can determine that an address is bad only if your message returned with the undeliverable mark (the so-called bounced message). The SMTP protocol provides a notification mechanism when a message cannot be delivered. This notification mechanism works by creating a new e-mail message which is sent to the original sender to inform him or her that their message was not delivered.