メールソフトを使って電子メールのメッセージを作成し、それを送信すると、やがて相手のメールソフトにそのメッセージが表示されます。このように書けば簡単なのですが、電子メールシステムの裏側ではなにが起きているのでしょうか。ここでは、電子メールシステムの仕組みと働きを題材に、コンピュータネットワークシステムについての理解を深めていきます。
ここまで、簡単にメールソフトと書いてしまいました。しかし、実はメールに関わるソフトウェアには多くの種類が存在します。たとえば、電子メールの読み書きに使われる代表的なソフトウェアにも以下に示したさまざまなものがあります。
MUAの名称 | 動作環境 |
---|---|
Windows Mail | Windows |
Microsoft Outlook | Windows |
Apple Mail | OSX |
QUALCOMM Eudora | Windows + OSX |
Mozilla Thunderbird | Windows + OSX + Linux |
Becky! | Windows |
一方で、送信されたメッセージをインターネット上で配送し、配信されたメッセージを貯蔵するためのさまざまなサーバソフトウェアがあります。ある意味、ユーザが直接に触れるいわゆるメールソフトも、配送や配信に関わってメールサーバで実行するソフトウェアもメールソフトウェアと解釈できます。狭義のメールソフトはユーザが直接扱うもの、広義のメールソフトにはさらに配送や配信用のサーバ上で動作するソフトウェアを含めるようです。解釈次第では、いろいろな意味に取られかねないメールソフトという言葉の多義性を排除するために、メールシステム全体に関わる議論の場ではよりきちんとした言葉の使いわけをします。以下では、ネットワークシステムのひとつの実例としてメールシステムがどのように構成されているかについて学んでいきましょう。
電子メールの配送の仕組みと郵便配達の仕組みがよく似ていることが分りますね。この図のなかでM?A
という風に略記されているものが電子メールシステムを支えるソフトウェアの種類を表しています。1MUA (Message User Agent) が一般のユーザがメールシステムを利用するのに用いるソフトウェアで、これを使ってメッセージの編集や送受信を行います。メールシステムですので、送信したメッセージを配達して、相手に届ける働きを担うのが、MSA, MTA, MDA, MRAと呼ばれるソフトウェア群です。
ソフトウェア | 働き | 郵便システムでの例え |
---|---|---|
MUA (Message user agent) | いわゆるメールソフト | 一般人 |
MSA (Message submission agent) | 送信用メールサーバ | 郵便ポスト |
MTA (Message transfer agent) | メッセージの中継 | 郵便局 |
MDA (Message delivery agent) | メッセージの仕分け | 私書箱 |
MRA (Message retrieval agent) | メッセージの保存 | 私書箱 |
MUA (Message User Agent)はいわゆるメールソフトです。MUAは電子メールシステムを使うユーザが接するソフトウェアで、メッセージの作成、編集、送受信などの機能を提供します。MUAは、ユーザの利便性を向上し、多くの人と大量にやりとりされるメッセージを分りやすく効率的に提示するためのさまざまな工夫がなされています。従来は、パソコン内のアプリケーションとして提供されるのが一般的でした。最近、広く使われるようになったウェブメールはウェブ上でメールの送受信をするためのサービスです。ウェブメールは、さまざまな場所や環境でまったく同じ操作性を提供するために人気が出ているようです。一方、専用のメールソフトアプリケーションはメールを整理したり、検索するための機能や応答性に優れているために電子メールの利用が不可欠な職場では今後も使われていくことでしょう。
MSA (Message Submission Agent)がいわゆる送信用メールサーバです。ユーザがMUAを用いて送信したメッセージをメッセージの配送システムに載せ、メッセージの配送を開始するためのソフトウェアです。郵便システムになぞらえれば、郵便ポストにあたるソフトウェアです。
MTA (Message Transfer Agent)は、電子メールのメッセージを中継しつつ、宛先に配達するためのソフトウェアで、電子メールシステムの基幹部にあたります。MUAで発送されたメッセージはMSAによって手近なMTAに送られ、電子メールの配信ネットワークに処理がまかされます。MTAは、郵便の配送システムになぞらえれば、郵便局にあたります。郵便ポスト(MSA)に投函された郵便物は、まず地域の郵便局に回収されます。それがさらに本局の大きな郵便局に回収されます。そして、本局では郵便番号に応じて郵便物を仕分けして、宛先の地区の本局に転送します。最終的に、メッセージは宛先に最寄りの郵便局に配送します。MTAがメッセージのやりとりをするネットワークプロトコルをSMTP (Simple Mail Transfer Protocol)といいます。
MDA (Message Delivery Agent)は、MTAによって配送されたメッセージを個別のユーザごとに仕分けするソフトウェアです。MDAは、各ユーザごとにフォルダを用意し、MDAに届けられるメッセージの宛先を見ては該当するフォルダにメッセージを整理すると考えてよいでしょう。郵便局の私書箱に整理するようなイメージです。私書箱をよく知らない人は、郵便屋さんがマンションの集合ポストに郵便物を仕分けするようなイメージを思い描いて下さい。
電子メールシステムの場合、MDAはさらにいろいろな機能を持つ場合があります。たとえば、プロバイダによっては、ウィルスが添付されていないか検査をするウィルスチェッカ、迷惑メッセージにマークをつけるスパムフィルタ機能、メーリングリストの機能、届いたメールを自動的に処理する機能、長期不在の場合に自動的に不在である旨を答える機能などを付加できます。
MRA (Message Retrieval Agent)がいわゆる受信用メールサーバです。MDAが仕分けしたメールフォルダ内のメッセージを保持しておきます。MUAを用いてMRAに接続すると保存されたメッセージに関する情報やメッセージを送ります。また、古くなったメッセージを消去する機能があります。MRAとしてはPOP3 (Post Office Protocol)とIMAP (Internet Message Access Protocol)があります。POP3は届いたメッセージを単一のフォルダに保存し、IMAPは複数のフォルダに管理します。両者は使い方についても大きく異なります。POP3を使う場合には、MRAにたまったメッセージはパソコンにまとめてダウンロードしてから眺めることになります。一方、IMAPを使う場合には、メッセージは基本的にIMAPサーバの方で整理・保存されます。ユーザはMUAを用いてサーバに接続してそこに整理されたメッセージを眺めます。POP3では、職場と自宅のように、複数の環境から同じMRAにアクセスする場合には、ある環境で一旦、整理されたメッセージを別の環境で再び整理し直さなくてはならない煩わしさがありました。IMAPを利用すればメールフォルダはインターネット上で共有されるのでこの面倒を避けることができます。
Agent(エージェント)という語は、人工知能の分野で「(人間と同程度に)賢いソフトウェア」という意味で用いられます。MUA の場合、大量に交わされるメッセージを貯蔵し、整理するという意味で、脳に貯蔵される知識の外部記憶化とも見做すことができます。しかし、現状では一般に人工知能の研究が目指しているほどの賢さを備えているようには思えません。ここで用いられているagentは単にソフトウェアという意味だと思ってください。将来は、これらのエージェントがもっと賢くなって、メールシステムの不便さを解決してくれるといいのですね。↩