SMTPとメールの到達性

SMTPとメールの到達性

この記事は SMTP and Email Deliverability の抄訳です。

前回のブログ記事「SMTPとメール」では、SMTPの起源と、メールがどのようにして広まったのかについてご紹介しました。

本ブログではこれまで、メールを届けるためのベストプラクティスやトラブル時の対処について色々とお話してきましたが、今回はいつもと少し違った視点で、「メールが届くとはどういうことなのか」について改めて考えてみたいと思います。

メールの到達性とは?

簡単に言うと、メールが目的地へ届くかどうか、ということです。注文状況や商品発送のお知らせ、更新通知、一刻を争うアナウンスの送信などのメールでは、到達性が特に重要になります。届かないメッセージは、顧客にとっても送信者にとっても価値がありません。

何をもって “メールが届いた” と考えるか?

“メールが届く” ということについて、考え方はいくつかあります。
例えばContoso社のAliceが、Fabrikam社のBobにメールを送る場合を考えてみましょう。彼女のメールが “届いた” のは、いつでしょうか?

  • メールがAliceのメールクライアントから送信され、Contosoのサーバに受け付けられたとき?
    • 送信側のメールクライアントが送信処理を終えた時点、ということになるので、これを手紙で例えるなら「オフィス内の郵便ポストに出したとき」といったところでしょうか。
  • メールが、ContosoのネットワークからFabrikamのサーバまで到達したとき?
    • これを企業のメールルームに荷物を送るようなケースに例えると、宛先企業の誰かが受取りのサインをした、という状況です。届けたい相手がその荷物を手にした訳ではありません。
  • Aliceのメールが、Bobのサーバのメールボックスに届いたとき?
  • Bobがそのメールを実際に開封して読んだとき?

“到達” の意味はその背景によって変わるため、答えは1つではありません。しかし、大抵は「宛先のメールボックスに届いたとき」をメールの到達と考えます。(ただし、技術的にはSMTPトランザクションの最後で ”250 OK” のレスポンスを受け取ったときを “到達” と考えます。”250 OK” は、SMTPの手続きが最初から最後まで成功した、という意味です。)

手紙の場合、ほとんどの人が「手紙が届く=手紙が宛先の郵便受けに入った」と考えると思いますが、メールの場合は「宛先に到達したかどうかだけではなく、受信者がそのメッセージを読んだかどうかに着目すべき」という意見の人もいます。なお、メールの開封やクリックをトラッキングすることで、この判別は可能です。

一時的な不達問題と、恒久的な不達問題

メールの不達問題を考える際に重要になるのが、それが一時的なものなのか恒久的なものなのかを区別することです。
一時的な問題(ソフトバウンス)の場合、遅延することはありますが最終的には届きます(一般的にSMTPサーバは最大72時間自動的に再送します)。ソフトバウンスの例としては、一時的なネットワーク障害、スロットリング(流量制限)、宛先メールボックスがいっぱいになっている、といったものが挙げられます。こういった問題に対処するため、MTAはメールのキューイングやリトライといった機能を持っています。
宛先メールアドレスが存在しないなど、恒久的な問題(ハードバウンス)については時間が経っても解決しません。

これらのバウンスの種類をチェックし、必要に応じて宛先リストを更新することが重要です。SendGridのようなメール配信サービスを利用している場合、受信者の反応を詳しく知ることができるため、反応のない宛先をリストから削除するといった対処が可能です。

SendGridにおけるバウンスの扱いについては、バウンスメールとその対策をご覧ください。

関連記事