POP簡介
在Internet上使用電子郵件的早期,用戶如果要讀取郵件,必須先登錄到郵件服務(wù)器上,不但速度慢,而且這些郵件服務(wù)器基于文本,沒有友好的界面,使用不便。于是出現(xiàn)了一些郵件協(xié)議,可以使郵件消息直接發(fā)送到用戶自己的計算機上。在這些協(xié)議中使用廣泛的就是POP(Post Office Protocol,郵局協(xié)議)和IMAP(Internet Mail Access Protocol,互聯(lián)網(wǎng)郵件控制協(xié)議)。
POP是TCP/IP協(xié)議族中的一員,POP允許本地計算機上的用戶代理程序連接到郵件服務(wù)器,將用戶的郵件取回到本地,這樣用戶就能在本地閱讀郵件了。本協(xié)議主要用于支持使用客戶端遠(yuǎn)程管理在服務(wù)器上的電子郵件。
創(chuàng)建一個分布式電子郵件系統(tǒng)有多種不同的技術(shù)支持和途徑:POP(郵局協(xié)議)、DMSP(分層式電子郵件系統(tǒng)協(xié)議)和 IMAP(因特網(wǎng)信息訪問協(xié)議)。其中,POP 協(xié)議創(chuàng)建因此也人們了解;DMSP 具有較好的支持“無連接”操作的性能,但其很大程度上于單個應(yīng)用程序(PCMAIL);IMAP 提供了 POP 和 DMSP 的擴(kuò)展集并提供對遠(yuǎn)程郵件訪問的三種支持方式:離線、在線和無連接。
POP 協(xié)議支持“離線”郵件處理。其具體過程是:郵件發(fā)送到服務(wù)器上,電子郵件客戶端調(diào)用郵件客戶機程序以連接服務(wù)器,并下載所有未閱讀的電子郵件。這種離線訪問模式是一種存儲轉(zhuǎn)發(fā)服務(wù),將郵件從郵件服務(wù)器端送到個人終端機器上,一般是 PC 機或 MAC。一旦郵件發(fā)送到 PC 機或 MAC 上,郵件服務(wù)器上的郵件將會被刪除。
POP誕生于1984年,POP 協(xié)議允許工作站動態(tài)訪問服務(wù)器上的郵件,目前已發(fā)展到第三版,稱為POP3(Post Office ProtocolVersion 3,郵局協(xié)議第3版),由RFC 1939 定義[1] 。
POP3 傳輸?shù)氖菙?shù)據(jù)消息,這些消息可以是指令,也可以是應(yīng)答。POP3 使用 TCP 作為傳輸協(xié)議,使用TCP的110號端口工作,它規(guī)定怎樣將個人計算機連接到Internet的郵件服務(wù)器和下載電子郵件的電子協(xié)議。POP3允許用戶從服務(wù)器上把郵件存儲到本地主機(即自己的計算機)上,同時刪除保存在郵件服務(wù)器上的郵件,而POP3服務(wù)器則是遵循POP3協(xié)議的接收郵件服務(wù)器,用來接收電子郵件的。
POP3 并不支持對服務(wù)器上郵件進(jìn)行擴(kuò)展操作,此過程由更高級的 IMAP4 完成。
POP協(xié)議特性
POP3協(xié)議定義位置:RFC 1939
POP3協(xié)議默認(rèn)端口:110
POP3協(xié)議默認(rèn)傳輸協(xié)議:TCP
POP3協(xié)議適用的構(gòu)架結(jié)構(gòu):C/S
POP3協(xié)議的訪問模式:離線訪問
POP工作原理
POPPOP協(xié)議
協(xié)議支持離線郵件處理,當(dāng)郵件發(fā)送到服務(wù)器后,電子郵件客戶端會調(diào)用郵件客戶端程序,下載所有未閱讀的電子郵件(這種離線訪問模式是一種存儲轉(zhuǎn)發(fā)服務(wù))。當(dāng)郵件從郵件服務(wù)器發(fā)送到個人計算機上,同時郵件服務(wù)器會刪除該郵件(但是目前很多POP3服務(wù)器都支持“下載郵件,服務(wù)器并不刪除郵件”,也就是說在POP3中改進(jìn)了POP協(xié)議)。
POPPOP3命令響應(yīng)
POP3客戶向POP3服務(wù)器發(fā)送命令并等待響應(yīng),POP3命令采用命令行形式,用ASCII碼表示。服務(wù)器響應(yīng)是由一個單獨的命令行組成或多個命令行組成,響應(yīng)行以ASCII文本+OK或-ERR(OK指成功,-ERR指失敗)指出相應(yīng)的操作狀態(tài)是成功還是失敗。
POPPOP3三種狀態(tài)
認(rèn)證狀態(tài),處理狀態(tài)和更新狀態(tài)。當(dāng)客戶機與服務(wù)器建立連接時,客戶機向服務(wù)器發(fā)送自己身份(這里指的是賬戶和密碼)并由服務(wù)器成功確認(rèn),即客戶端由認(rèn)可狀態(tài)轉(zhuǎn)入處理狀態(tài),在完成列出未讀郵件等相應(yīng)的操作后客戶端發(fā)出quit命令,退出處理狀態(tài)進(jìn)入更新狀態(tài),開始下載未閱讀過的郵件到計算機本地之后最后重返認(rèn)證狀態(tài)確認(rèn)身份后斷開與服務(wù)器的連接。
POP常用命令
命令 | 參數(shù) | 狀態(tài) | 描述 |
|---|
user | username | 認(rèn)可 | 此命令與下面的pass命令若成功,將導(dǎo)致狀態(tài)轉(zhuǎn)換 |
pass | password | 認(rèn)可 | |
apop | name,digest | 認(rèn)可 | 一種安全傳輸口令的辦法,執(zhí)行成功導(dǎo)致狀態(tài)轉(zhuǎn)換。 |
stat | none | 處理 | 請求服務(wù)器發(fā)回關(guān)于郵箱的統(tǒng)計資料,如郵件總數(shù)和總字節(jié)數(shù) |
uidl | [msg#] | 處理 | 返回郵件的標(biāo)識符,pop3會話的每個標(biāo)識符都將是的 |
list | [msg#] | 處理 | 返回郵件數(shù)量和每個郵件的大小 |
retr | [msg#] | 處理 | 返回由參數(shù)標(biāo)識的郵件的全部文本 |
dele | [msg#] | 處理 | 服務(wù)器將由參數(shù)標(biāo)識的郵件標(biāo)記為刪除,由quit命令執(zhí)行 |
rset | none | 處理 | 服務(wù)器將重置所有標(biāo)記為刪除的郵件,用于撤消dele命令 |
top | [msg#],n | 處理 | 服務(wù)器將返回由參數(shù)標(biāo)識的郵件前n行內(nèi)容,n必須是正整數(shù) |
noop | none | 處理 | 服務(wù)器返回一個肯定的響應(yīng),不做任何操作。 |
quit | none | 更新 | 退出 |