RFC1047 日本語訳
1047 Duplicate messages and SMTP. C. Partridge. February 1988. (Format: TXT=5888 bytes) (Status: UNKNOWN)
RFC一覧
英語原文
Network Working Group Craig Partridge Request for Comments: 1047 CIC at BBN Labs February 1988 DUPLICATE MESSAGES AND SMTP 複製メッセージとSMTP このメモの位置づけ 単純メール転送プロトコル(SMTP)における同期の問題の調査があった。こ の同期の問題はメッセージが複数回配達されることを引き起こす。この問 題を回避するための方法が提案された。SMTPの仕様、RFC-821、について の知識を了解していることが要求される。このメモの配布は無制限です。 はじめに(INTRODUCTION) 過去何年間か、CSNET Cooordination and Infomation Center (CIC)のス タッフはしばしばなぜ単一のメールメッセージが複数回それの受取人へ配 達されるかを測定する手助けをするよう請われた。重複した配達の問題を トレースする過程において、私たちは多くの複製メッセージがSMTPにおけ る同期の問題の結果であることを明らかにした。受信メーラはそれがメッ セージを受理したことを分かりしかし送信メーラはメッセージが確実に配 達されていることを確信しないところにメッセージを配達する過程にポイ ントがある。もしSMTPの対話がこのポイントで壊れたならば、たとえメッ セージが既に受け取られまた受信メーラによって配達されたとしても、送 信メーラはメッセージを再配達しようとするでしょう。 問題の記述(DESCRIPTION OF THE PROBLEM) 同期の問題はメッセージを配達する終わりで起こる。送信メーラがメッ セージのテキストを送り終えたときに、単一のドットあるいはピリオドを 含むラインを送ることが要求される。受信メーラがこの最後のドットを受 け取ったとき、それの最後のメッセージの処理を行いまた(250返答ととも に)メッセージの受け取りを確認するあるいはいくつかのエラーコードの 中の一つとともにメッセージを拒絶するのいずれか一方を行うことが予期 される。 ここに潜在的な同期ギャップが在ることを気付きなさい。受信メーラがそ れがメッセージを受理することを決定してから、送信メーラが 250返答を ゲットするまでの期間、メッセージは送信および受信メーラの両方におい てアクティブです。送信メーラは250返答をゲットするまで、それはメッ セージが配達されていないと仮定しなければならない。受信メーラはメッ セージを受理することを決めた後、それはメッセージがそれへ配達されて いると仮定しなければならない。もしこの同期ギャップの間に通信リンク が壊れたならば、メッセージは複製される。両方のメーラはそれらが配達 しようとするメッセージのアクティブのコピーを持つ。 この問題が多くの複製メッセージの原因であるとは信じ難いかもしれない。 直感的に、最後のドットとそれが250返答を受理する間の状態において費 やされる時間は極めて短いと思われるかもしれない。しかしながら、実際 には、この期間はしばしば極めて長い; 送信メーラ(あるいはもしかする とネットワークの故障)による十分に長いそのタイムアウトは極めて普通 です。著者による観察は、この同期の問題が(メールループに次ぐ)イン ターネットにおける複製メッセージの第二の要因であることを示唆する。 多くのメーラがメッセージを配達できることを確認しようして、それらは 洗練されたメッセージの処理を行うために、それらは最後のドットへの応 答を遅延する。例えば、最後のドットの受け取りを確認する前に、メーラ はそれがローカルユーザのメールボックスへメッセージを物理的に置くか もしれないあるいは全てのアドレスへ届くことができることを確認するた めにメーリングリスト全体を展開するかもしれない。それらの実施は不合 理ではない。しかしそれらはしばしば同期ギャプが数分間続くことを引き 起こし、また250返答を受理したことを送る前に、送信メーラがタイムア ウトするあるいはネットワークが故障する公算が増大する。 同期の問題の回避(AVOIDING SYNCHRONIZATION PROBLEMS) 同期の問題を回避する最良の方法は同期ギャップの長さを最小にすること です。言い替えれば、受信メーラは可能な限りすぐに最後のドットを受け 取ったことを知らせるべきでありまたその後にメッセージのより複雑な処 理を行うべきです。 RFC-821(の22ページ)は、受信メーラがメッセージを全く処理できないの でなければ、それはメッセージを受理しまた個別のメッセージあるいは メッセージの差出人へ送り返されるメッセージで処理中のエラーを知らせ るべきだと述べている。結果として、受信メーラはメッセージがさらなる 処理のために不揮発性(例、ディスク)のキューに安全に置かれるとすぐに 最後のドットを受け取ったことを知らせることができるべきです。メッ セージの迅速な受理はRFC-821に違反しない。 いくつかのメーラは最後のドットの受け取り次第さらに処理を行うあるい は行わないことを設定されることかできる。このような状況において、 メーラは常にさらなる処理を行わないように設定されるべきです。 最後に、いくつかのメーラはタイムアウトしリトライする前にリモートの メーラに一、二分だけ最後のドットを受け取ったことを知らせることを許 可する。インターネット上のラウンドトリップ時間の増加と最後のドット の後ある処理が必要とされることを考慮すると、最後のドットへの返答に 対するタイムアウトは多分少なくとも5分であるべきであり10分のタイム アウトは不合理ではないでしょう。
一覧
スポンサーリンク