RFC918 郵局協議

組織:中國互動出版網(http://www.china-pub.com/)
RFC文檔中文翻譯計劃(http://www.china-pub.com/compters/emook/aboutemook.htm)
E-mail:[email protected]
譯者:胡維龍(along_2000 [email protected])
譯文發佈時間:2001-3-19
版權:本中文翻譯文檔版權歸中國互動出版網所有。可以用於非商業用途自由轉載,但必須保留本文檔的翻譯及版權信息。



Network Working Group                                               J. K. Reynolds
Request for Comments: 918                                                      ISI
                                                                    October 1984


郵局協議
(RFC-918——POST OFFICE PROTOCOL)
本文檔的狀態:
	本文檔提出了一個實現工作站從郵件服務器動態收取郵件的簡單協議。本文檔提出了一個用於ARPA(Advanced Research Projects Agency (美國國防部)高級研究計劃)的Internet社區的協議。它需要進一步進行討論和建議,以進行進一步的改進。
1. 介紹:
	Post Office Protocol (POP)的目的是允許工作站用戶從郵件服務器中收取郵件。而工作站發送郵件到郵件服務器預期經由Simple Mail Transfer Protocol(SMTP)協議實現。瞭解更進一步的信息,請參閱RFC-821,RFC-822。
本文檔處於測試階段,並且本協議是基於TCP實現的。
2. 協議:
	本協議爲:郵件服務器開始偵聽連接。當連接被打開時,服務器發送一個問候信息並且等待命令。當命令接收到時,服務器執行並且返回一個迴應。
	客戶端打開一個連接。等待問候信息。然後發送USER 和 PASS 命令以確認到達郵箱的權限。客戶端發送RDEL命令(從郵箱中閱讀並且刪除所有的消息)或者RETR 命令(僅僅簡單地從郵箱中閱讀消息)開始一個郵件閱讀處理。服務器打開郵箱,加鎖。然後向客戶端返回郵箱中所有消息的字符數。客戶端發送RCEV命令來請求郵件數據。服務器返回相應的郵件數據。當所有的郵件全部接收到時,客戶端發送RCVD命令。如果處理開始是客戶端發送的事RDEL命令,那麼服務器將在此時刪除所有的郵件。不論在那種情況,服務器將關閉郵箱並且解鎖。客戶端發送QUIT命令來終止會話。







一般情況:
		客戶端										服務器
		----------										------------
												偵聽連接
打開連接		-->
* +OK
等待命令
	USER Fred		-->
* +OK
等待命令
	PASS password	-->
* +OK
等待命令
(打開並且對郵箱加鎖)
	RDEL mailbox	-->
* #xxx
等待命令
	RCEV			-->
* 發送一個郵件的拷貝
等待命令
	RCVD			-->					(從郵箱中刪除郵件,解鎖並關閉郵箱)
* +OK
等待命令
	QUIT			-->
* +OK
關閉連接		-->					<--		關閉連接
											偵聽新的連接(回到開始)
命令和迴應的對應
	命令和回覆摘要

	命令										迴應
-----------------									-------------------
USER name									+OK
PASS password								-Error
RETR mailbox								#xxx
RCEV
RCVD
QUIT
NOOP
RSET

	USER name
		該命令用於向服務器標誌身份。他後面必須跟有PASS命令
可能的迴應:   "+OK" 或者 "-ERR"
	PASS password
		PASS 命令用於發送用戶的驗證口令。USER和PASS命令用於服務器控制訪問郵箱的權限。
可能的迴應:   "+OK" 或者 "-ERR"
	RETR mailbox
	該命令將開始一個閱讀郵件處理。RETR命令用於閱讀郵箱中的郵件而不刪除它們。他後面必須跟有RCEV命令
		可能的迴應:   "+xxx" 或者 "-ERR"
	RDEL mailbox
該命令將開始一個閱讀郵件處理。RETR命令用於閱讀郵箱中的郵件並且刪除它們。他後面必須跟有RCEV命令
可能的迴應:   "+xxx" 或者 "-ERR"
RCEV
該命令用於確認客戶端已經準備好接受郵件數據,他後面必須跟有RCVD命令。
	可能的迴應:   "+OK" 或者 連接中斷
RCVD
該命令用於確認客戶端已經接收到並且接受了郵件數據。RCVD命令終止郵件閱讀處理,如果是一個RDEL處理,有可能郵件並不是必須刪除。這將由發送一個錯誤回覆來指示。
	可能的迴應:   "+OK" 或者 "-ERR"
QUIT
該命令指示客戶端已經完成了這個會話,服務器將發送一個“+OK"回覆然後關閉連接
	可能的迴應:   "+OK" 然後關閉連接
NOOP
這是一個不完成任何操作的命令,除了服務器發送一個OK 回覆外,它不會在服務器上引發任何操作 。
	可能的迴應:   "+OK"
RSET
該命令將引發服務器中斷當前的處理並且返回等待命令(RDEL,RETR,QUIT,NOOP或者RSET其中的一個) 當中斷一個處理時,服務器必須注意正確的關閉郵箱和對郵箱解鎖。
	可能的迴應:   "+OK"
3. 致謝
   I would like to acknowledge the contributions of Jon Postel, Joel   Goldberger, Dale Chase, and Michael Butler in the development of the Post Office Protocol.
4. 參考:
   [1]  Postel, J., "Simple Mail Transfer Protocol", RFC-821, USC/Information Sciences Institute, August 1982.
   [2]  Crocker, D., "Standard for the Format of ARPA-Internet Text Messages", RFC-822, University of Delaware, August 1982.



圖示:
         +---+      +---+       +---+       +---+       +---+      
   Open  |   | +OK  |   |       |   | +OK   |   |       |   | +OK  
   ----->| S |--+-->| C |------>| S |------>| C |------>| S |---->+
         |   |  ^   |   | USER  |   |       |   | PASS  |   |     |
         +---+  |   +---+       +---+       +---+       +---+     |
                |                 | -ERR                  | -ERR  |
                |                 V                       V       |
   +<-----------+<----------------+<----------------------+       |
   |                                                              |
   V      +---+       +---+                                       |
   +----->|   | QUIT  |   | +OK                                   |
          | C |------>| S |----->Close                            |
   +----->|   |       |   |                                       |
   ^      +---+       +---+                                       |
   |                                                              V
   +<-------------------------------------------------------------+
   |                                                              ^
   |  +---+     +---+      +---+     +---+     +---+     +---+    |
   |  |   |RETR |   | #xxx |   |RECV |   |DATA |   |RCVD |   |+OK |
   +->| C |---->| S |----->| C |---->| S |---->| C |---->| S |--->+
   |  |   | Or  |   |      |   |     |   |     |   |     |   |    ^
   |  +---+ RDEL+---+      +---+     +---+     +---+     +---+    |
   |              | -ERR     |         |         |         | -ERR |
   |              V          |         V         |         |      |
   +<-------------+          |       Abort       |         |      |
   |                         V                   V         V      |
   |        +<---------------+-------------------+         +----->+
   |        V                                                      
   |      +---+       +---+                                        
   |      |   | RSET  |   | +OK                                    
   +----->| C |------>| S |----->+                                 
   |      |   |       |   |      |                                 
   |      +---+       +---+      |                                 
   |                             V                                 
   +<----------------------------+                                 
   |                             ^                                 
   |      +---+       +---+      |                                 
   |      |   | NOOP  |   | +OK  |                                 
   +----->| C |------>| S |----->+                                 
          |   |       |   |                                        
          +---+       +---+                                        
RFC-918 Post Office Protocol                                                           郵局協議




4
RFC文檔中文翻譯計劃

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章