このページの本文へ

電子メールプロトコル再入門 第9回

サーバにメールを置いたまま参照できるプロトコルを知ろう

いろいろな場所で同じメールを読めるIMAPの仕組みとは?

2011年03月31日 06時00分更新

文● 遠藤哲

  • この記事をはてなブックマークに追加
  • 本文印刷

 IMAPはサーバからメールを読むための、もう1つの手段である。POPと異なり、サーバにメールを置くのを前提として、読みたいメールをその都度取り出す方式を採る。そのため、仕組みはPOPよりかなり複雑になっている。


IMAPのメールの管理

 電子メールを受信するプロトコルには、前回紹介したPOPだけでなく、もう1つ「IMAP(RFC3501:Internet Message Access Protocol version 4 rev1)」がある。

 POPとIMAPの2つの電子メール受信プロトコルのもっとも大きな違いは、メールの管理方法にある。POPではメールをクライアント側のPCにダウンロードし、クライアント側でメールを管理していた。Outlook Expressなどのメーラの受信トレイを見れば、そのホストに用意されたメールの記憶領域がローカルフォルダという名前で用意されているのがわかる。POPでサーバにアクセスすると、メールをこのローカルフォルダに保存し、サーバ側のメールを削除するので、メールはつねに手元のホストにあるわけだ。

 一方、IMAPはサーバ上にメールを保存し、必要に応じメーラ上に表示する。図1はIMAPの概要を表わしたものだ。メーラの受信トレイ部分を見ると、そこにはローカルフォルダとIMAPというフォルダが見える。IMAPフォルダはアカウントの表示名を「IMAP」としたので、そのように表示されている。

図1●IMAPの概要

 ローカルフォルダはそのホストのディスク上にメールが保存されているが、IMAPと表示されているフォルダの実体はサーバ側にある。メーラの受信トレイの表示では、POPとIMAPで違いがわからないように見せているが、メールを保存している場所は異なる。IMAPの利用環境下では、メーラはIMAPのユーザーインターフェイスだけを提供している格好となる。

 IMAPでは、検索やフォルダの作成、移動などの操作もすべてサーバに行なわせる。そのため、ユーザーが職場以外に外出先のノートPCや自宅のPCなど、複数のクライアントを持っていても、すべて同じメール環境として利用することが可能だ。メールボックス内にフォルダを作ることもでき、メールの管理も柔軟になっている。Webメールのような遠隔環境の背後で利用されているケースも珍しくない。

 逆に、ユーザーがメールをサーバに溜め込んで、さまざまな操作をすることになるため、サーバには充分なディスク容量と処理能力が要求される。多くのユーザーを抱えている場合には、採用しにくいプロトコルともいえる。また、サーバの機能に多くを依存するため、特殊な検索方法などローカル保管前提で使えていたメーラの機能が使えないケースも出てくる。

IMAPの仕組み

 さて、メールがPCにあれば、フォルダ間の移動や削除などの作業はオフラインでも可能だ。しかし、それがサーバ側にある場合には、そうした作業はオンライン環境下の遠隔操作となる。IMAPはサーバ側にメールを置く仕組みなので、プロトコルの中にメールを管理する機能が必要になる。この点、POPに比べるとIMAPが複雑でわかりにくく感じられる部分である。

 まずはIMAPの全体像を把握するため、IMAPセッションの状態遷移について解説しよう。図2はIMAPセッションの状態遷移を表わしたものである。

図2●IMAPセッションの状態遷移

 クライアントからIMAPサーバ(ポート143)に接続し、TCPコネクションが確立すると、サーバからOK応答が返る。この時点では認証はまだ行なっていないのでIMAPセッションは「認証前」の状態だ。この状態で受け付けられるコマンドは3つあるが、LOGINまたはAUTHENTICATEのどちらかのコマンドでユーザー認証を行ない、認証が成功するとIMAPセッションは「認証」状態に移る。

 認証の状態に移ると多くのコマンドを使えるようになるが、操作の対象はメールボックスとなる。ここで誤解のないように説明しておかなければならない。IMAPのメールボックスとは、メーラの受信トレイに表示される受信フォルダ、送信済みフォルダ、下書きフォルダのことである。IMAPのアカウントの場合はそのフォルダの実体はサーバ側にあり、サーバではそれらを「メールボックス」と呼ぶのである。

 メーラで受信フォルダをクリックする操作はIMAPのコマンドではメールボックスを選択する「SELECT」が使われる。IMAPではリードオンリーのアクセス用に「EXAMINE」もあり、どちらかのコマンドでメールボックスを指定することで「選択」状態に移る。

 「選択」はメールボックスを選択した状態という意味なので、コマンドの操作対象はメールボックス内のメッセージ群となる。ここでメッセージを識別するために重要な情報となるのが「UID」(Unique Identifier)である。これはPOPでも使われていた、メッセージを一意に識別する情報である。IMAPでも、メッセージを扱うコマンド及び応答の中で頻繁に登場する。メッセージの情報を表示する際に使うFETCHコマンドでもUIDを指定するのでぜひ覚えておいてほしい。

 IMAPの状態遷移図を見ると選択状態でメールボックス内のメッセージを処理してセッション終了とはならない。ここがPOPと異なる部分である。POPのメールボックスはメールを入れるだけの器だったので、メールボックスの処理が終わると、そのままPOPのセッションを終了するように直線的な動作であった。しかしIMAPのメールボックスは、先ほど触れたようにメーラのフォルダに相当する。したがってメールボックスの選択状態からCLOSEコマンドで処理を終了させると、IMAPセッションはまたメールボックスを選択できる「認証」に戻るのである。

 このように認証と選択の2つの状態を行き交い、メールボックス及びメールの処理を行なうのがIMAPの特徴的な動作だ。

IMAPのメールボックスの形式

 従来のメール保存形式には、すべてのメールを1つのファイルとして保存するmailbox(mbox)形式が使用されてきた。

 一方、IMAPではMaildir形式がよく使われる。Maildir形式ではユーザーごとに固有のフォルダを作り、そこに1メールを1ファイルとして保存する。そのため、サーバの処理負荷が軽くなり、ファイルが破損した場合の被害も小さくなる。何より、フォルダことにメールを管理できるので、とても使いやすいのだ。

 本記事は、ネットワークマガジン2007年12月号の特集1「電子メールプロトコル再入門」を再編集したものです。内容は原則として掲載当時のものであり、現在とは異なる場合もあります。

カテゴリートップへ

本記事はアフィリエイトプログラムによる収益を得ている場合があります

この連載の記事

アクセスランキング

  1. 1位

    TECH

    訓練だとわかっていても「緊張で脇汗をかいた」 LINEヤフー、初のランサムウェア訓練からの学び

  2. 2位

    ビジネス・開発

    最悪のシナリオは「フィジカルAI」による基幹産業の衰退 日本の勝ち筋は、“同期技術”と“ドメイン知識”

  3. 3位

    ITトピック

    若手が言わない“本音の退職理由”上位は/「データ停止は景気後退よりも企業の脅威」6割/クライアントに告げずAI活用するフリーランス、ほか

  4. 4位

    Team Leaders

    ファイル名が命名規則に合っているかの自動チェック、Power Automateのフローで実現しよう

  5. 5位

    データセンター

    液冷技術の最先端が集うイノベーションラボ「DRIL」、印西のデータセンターに現わる

  6. 6位

    TECH

    糖尿病超早期を採血なしで検出、予防へ! 代謝や臓器のつながりに着目した予防法開発

  7. 7位

    ビジネス

    廃校がAIの心臓部に!? 地方の遊休施設を「AIデータセンター」に生まれ変わらせるハイレゾの挑戦がアツいぞ

  8. 8位

    Team Leaders

    バックオフィス業務もAIに“丸投げ” マネーフォワードが「Cowork」機能を2026年7月に投入へ

  9. 9位

    TECH

    合成ゴムが及ばない天然ゴムの高性能のメカニズムを、現象発見から100年後に解明

  10. 10位

    TECH

    “GPUなし”ノートPCで動くLLMで、ローカルAIエージェントを自作する

集計期間:
2026年04月10日~2026年04月16日
  • 角川アスキー総合研究所