應用層(SMTP和POP3協議)


SMTP(簡單郵件傳輸協議 Simple Mail Transfer Protocol)是建立在FTP文件傳輸服務上的一種郵件服務,主要用於傳輸系統之間的郵件信息並提供與來信有關的通知,所對應RFC文檔為RFC821。SMTP目前已是事實上的在Internet傳輸E-Mail的標准,是一個相對簡單的基於文本的協議,目標是向用戶提供高效、可靠地郵件傳輸。它的一個重要特點是它能夠在傳送中接力傳送郵件。

郵件是一種消息的格式,由信封、首部和正文組成。信封上最重要的是收信人的地址。郵件服務器用這個地址將郵件發送到收信人所在的郵件服務器上。首部是由用戶代理或郵件服務器添加的一些信息。包括Received、Message-ID、From、Data、Reply-To、X-Phone、X-Mailer、To和Subject等字段。正文是發送用戶發給接收用戶報文的內容。RFC 822規定正文為NVT ASCII文字行。

一個具體的SMTP通信(如發送端郵件服務器:即客戶端;與接收端服務器:即服務器端的通信)的過程是:

1、客戶端與服務器端建立TCP連接;

2、客戶端向服務器端發送HELO命令以標識發件人自己的身份,然后客戶端發送MAIL命令,服務器端以OK響應,表明准備接收;

3、客戶端發送RCPT命令,以標識該電子郵件的計划接收人,服務器端則表示是否願意接收郵件;

4、協商結束,發送郵件,用命令DATA發送;

5、以“.”標識結束輸入內容一起發送出去沒結束此次發送,用QUIT命令退出。

再輸入每條命令后,都需要加上<CRLF>命令,即換行命令。

SMTP協議原來只能傳送7位的ASCII碼,不能傳送二進制文件,這成了它的一大缺陷。在之后的發展中,標准化組織在兼容SMTP的前提下,提出了傳送非7位ASCII碼的方法,對應的RFC文檔有兩個:郵件首部擴充對應於RFC1522,郵件正文的擴充對應與RFC1521(即MIME)。

對於正文的擴充主要是使正文不僅可以傳輸NVT ASCII字符,而且可以傳輸任意字符,即MIME(多用途互聯網郵件擴展 Multiple Internet Mail Extensions)。它通過新增一些郵件首部字段、郵件內容格式和傳送編碼,使得其成為一種很廣泛的可以傳輸多媒體的電子郵件規范。

對於郵件,我們不僅要會發送,還需要接收,此時就要用到POP3協議(郵局協議第三版 Post Office Protocol version3),由RFC1939定義。它也是TCP/IP協議族中的一員,主要用於支持使用客戶端遠程管理在服務器上的電子郵件。

POP 協議支持“離線”郵件處理。其具體過程是:郵件發送到服務器上,電子郵件客戶端調用郵件客戶機程序以連接服務器,並下載所有未閱讀的電子郵件。這種離線訪問模式是一種存儲轉發服務,將郵件從郵件服務器端送到個人終端機器上,一般是 PC機或 MAC。一旦郵件發送到 PC機或 MAC上,郵件服務器上的郵件將會被刪除。但目前的POP3郵件服務器大都可以“只下載郵件,服務器端並不刪除”,也就是改進的POP3協議。

POP3協議有三種狀態:認正狀態、處理狀態和更新狀態。客戶機與服務器剛與服務器建立連接時,它的狀態為認證狀態;一旦客戶機提供了自己身份並被成功地確認,即由認可狀態轉入處理狀態; 在完成相應的操作后客戶機發出QUIT命令,則進入更新狀態,更新之后又重返認可狀態;當然在認可狀態下執行QUIT命令,可釋放連接。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM