郵局協定
外觀
網際網路協定套組 |
---|
應用層 |
傳輸層 |
網路層 |
連結層 |
郵局協議(英語:Post Office Protocol,縮寫:POP)是TCP/IP協定族中的一員,由1996年5月發行之 RFC 1939 首次定義。此協定主要用於支援使用客戶端遠端管理在伺服器上的電子郵件。最新版本為POP3,全名「Post Office Protocol - Version 3」,而提供了SSL加密的POP3協定被稱為POP3S。
POP支援離線郵件處理。其具體過程是:郵件傳送到伺服器上,電子郵件客戶端呼叫郵件客戶機程式以連接伺服器,並下載所有未閱讀的電子郵件。這種離線訪問模式是一種儲存轉發服務,將郵件從郵件伺服器端送到個人終端機器上,一般是PC機或Mac。一旦郵件下載到PC機或Mac上,郵件伺服器上的郵件將會被刪除。但目前的POP3郵件伺服器大都可以「只下載郵件,伺服器端並不刪除」,也就是改進的POP3協定。
POP3通訊舉例
[編輯]在傳送方(客戶端)和接收方(伺服器)間建立連接之後,接下來是一個合法的POP3對談。在多數電腦系統上,可以在傳送的機器上使用telnet命令來建立連接,比如:
telnet www.example.com 110
它打開一個從傳送的機器到主機www.example.com的POP3連接。以下對幾個常用的pop3命令作一個簡單的介紹:
命令 | 參數 | 狀態 | 描述 |
---|---|---|---|
user | username | 認可 | 此命令與下面的pass命令若成功,將導致狀態轉換 |
pass | password | 認可 | |
apop | name,digest | 認可 | 一種安全傳輸口令的辦法,digest是md5訊息摘要,執行成功導致狀態轉換,請參見 RFC 1321 |
stat | none | 處理 | 請求伺服器發回關於電子信箱的統計資料,如郵件總數和總位元組數 |
uidl | [msg#] | 處理 | 返回郵件的唯一識別碼,pop3對談的每個識別碼都將是唯一的 |
list | [msg#] | 處理 | 返回郵件數量和每個郵件的大小 |
retr | [msg#] | 處理 | 返回由參數標識的郵件的全部文字 |
dele | [msg#] | 處理 | 伺服器將由參數標識的郵件標記為刪除,由quit命令執行 |
rset | none | 處理 | 伺服器將重設所有標記為刪除的郵件,用於復原dele命令 |
top | [msg#],n | 處理 | 伺服器將返回由參數標識的郵件前n行內容,n必須是正整數 |
noop | none | 處理 | 伺服器返回一個肯定的回應,不做任何操作。 |
quit | none | 更新 | 退出 |
- RFC 918 - "POST OFFICE PROTOCOL"(1984年10月)
- RFC 937 - "POST OFFICE PROTOCOL - VERSION 2"(1985年2月)
- RFC 1734 - "POP3 AUTHentication command"(1994年11月)
- RFC 1939 - "Post Office Protocol - Version 3"(1996年5月)
- RFC 2195 - "IMAP/POP AUTHorize Extension for Simple Challenge/Response"(1997年9月)
- RFC 2222 - "Simple Authentication and Security Layer (SASL)"(1997年10月)
- RFC 2449 - "POP3 Extension Mechanism"(1998年11月)
- RFC 2595 - "Using TLS with IMAP, POP3 and ACAP"(1999年6月)
- RFC 3206 - "The SYS and AUTH POP Response Codes"(2002年2月)