GrapeCity Secure Mail for .NET 4.0J
基本的なメッセージ構造

概要

ここまではメッセージ配信の過程を説明したので、次に、何が実際に送信されるのかを見ていきます。E メールメッセージは、「エンベロープ」と「コンテンツ」の2つのエンティティを持つとみなされます。エンベロープはメッセージ配信を実現するために必要なデータであり、コンテンツは受信者に配信されるべきオブジェクトです。この標準が提案された当初は、コンテンツとしてはテキストが想定されていました。当然ながら、マルチメディアの登場に伴い、ASCII 以外のファイルを送信する機能が必要になります。これは、後に MIME(Multipurpose Internet Mail Extensions)の使用によって実装されることになります。この概要トピックでは、例を挙げながら、ASCII テキストのみのメッセージ送信を規定した RFC 822 の仕様に沿ったメッセージ構造を確認します。

E メールメッセージ構造は、「メモ」の枠組みを使用するように定義されています。つまり、メッセージには指定の方法で構成されたデータを先頭に配置し、構造上の特定の決まりのないデータを後に続ける必要があります。この、メッセージにおいて厳格に定義された部分がエンベロープであり、定義が緩やかな部分がコンテンツです。

ヘッダ

メッセージのヘッダには、メッセージのコンテンツに関するデータが含まれます。ヘッダは ASCII テキスト行の集合で、ヘッダフィールド、コロン、およびヘッダフィールド値で構成されます。ヘッダフィールドには、構造化(structured)、非構造化(unstructured)の2つの型があります。構造化ヘッダフィールドは、「From:」や「Date:」のように、必要に応じてデータを解析できるように特定の書式に従うべきフィールドです。非構造化ヘッダフィールドは、「Subject:」や「Comments:」のように、書式の決まりに従う必要がないフィールドであり、単なる文字列とみなされます。各ヘッダフィールドには、特に決められた順序はありません。しかし、いずれもメッセージコンテンツの前に配置する必要があります。

次に、一般に使用される E メールヘッダフィールドの一部を示します。

ヘッダフィールド 説明
Cc: カーボンコピー(追加の受信者を指定する場所)
Comments: 一部の E メールクライアントによって使用され、送信者の詳細情報を指定する標準外ヘッダ
Content-Description:* メッセージコンテンツに関する、人間が読むことのできる文字列
Content-Id:* 一意の MIME 識別子(「Message-ID:」と同様の機能)
Content-Transfer-Encoding:* 使用された MIME エンコードの種類
Content-Type:* MIME 対応のメールプログラムに対し、メッセージ内のデータの種類を通知
Date: メールの送信日時
Errors-To: メールによって生じたエラーに関するフィールド
From: ユーザー定義のメール送信者名
Message-ID: メッセージに割り当てられた一意の識別子
MIME-Version:* 送信者の使用した MIME バージョン
Organization: 任意形式のヘッダ(通常は組織名)
Priority: メッセージの優先度を割り当て
Received: メッセージ履歴のログ(このフィールドは、メッセージを中継するすべてのメール転送エージェントによって追加される)
Reply-To: 返信先アドレス
Return-Path: ユーザーのコンピュータから見た最後の転送システムによって追加され、メール送信者のアドレスに関する情報を保持
Sender: メッセージを送信したエージェントの認証済み識別名
Subject: ユーザー定義のメールの件名
To: E メールの受信者

* = MIME トピックで詳細に解説するヘッダ

以上のフィールドの他、RFC 822 では、ユーザー定義フィールドを作成できることを規定しています。これは、拡張フィールドまたは X ヘッダと呼ばれます。これらは、送信側クライアントによって作成され、値を設定されます。ただし、受信側クライアントが X ヘッダの処理手段を備えている場合しか使用できません。

メッセージ本文

本文は、送信者が受信者に受信してもらおうとする E メール部分そのものです。これは積荷部分に過ぎず、TCP/IP メールプロトコルにおいてはそれ以外の用途はありません。通常、本文は実際のメールテキスト、または何らかの添付データ(またはその両方)によって構成されます。

一般的に、単純なテキストメールメッセージでは本文とヘッダはいずれも7ビットデータであり、すべてのメールサーバー間で互換性があります。1行の長さは 1000 文字未満となります。

基本的なテキスト E メール

例として、基本的なテキストメールの構造を検証します。この例では、送信者は単純にメールクライアントを起動し、受信者と件名を指定し、簡単なメモを記します。

To: test@email.com
Subject: email test
Message:

This is a test message to see the message form.

次に、このメールを送信します。送信されたメッセージは次のようになります。

Return-Path: <test@email.com>

Received: from YOURCOMPUTER ([192.168.0.0]) by yourserver.com

(Post.Office MTA v3.5 release 215 ID# 0-

54045U100L2S100V35)

with ESMTP id com for <me@test.com>;

Thu, 1 Feb 2001 16:46:38 -0500

To: test@email.com

From: me@test.com

Subject: email test

Message-ID: <0000c93a04003b07d1@[192.168.0.0]>

Date: Thu, 01 Feb 2001 16:47:39 -0500

This is a test message to see the message form.

最初の 11 行がメールヘッダです。この例では、ユーザー定義のヘッダは「From:」と「Subject:」のみです。その他のフィールドは、メッセージ配信の過程において、メールクライアントとメールサーバーによって追加されたものです。このメッセージには MIME ヘッダが含まれていないため、コンテンツは ASCII テキストだと予測されます。これは、先のメッセージの最後で確認できるとおりです。では、メールに添付データを付けて送信するとどうなるでしょうか?ここで、MIME が使用されることになります。MIME(Multipurpose Internet Mail Extensions)は、ASCII 以外のメッセージをフォーマットする方法を指定します。  

 

 


© 2003, GrapeCity inc. All rights reserved.