性能測試從零開始——LoadRunner入門(八)[2] 性能測試工具
S:220 cesoo.com
C:HELO
S:250 Hello Mike,pleased to meet you
C:MAIL FROM: Mike@cesoo.com
S:250 Mike@cesoo.com ... Sender OK
C:RCPT TO: rose@cesoo.com
S:250 rose@cesoo.com...Recipient OK
C:DATA
S:354 Enter mail,end with "." on a line by its self
C: I love you, Rose
C: .
S:250 Message aclearcase/" target="_blank" >ccepted for delivery
C:QUIT
S:221 cesoo.com closing connection
覺得難以置信么?這不是在寫言情小說,而確確實實是客戶端和郵件服務器通過SMTP協議在網絡上交互的內容,網絡協議就這么簡單??蛻艨偣舶l出了5個命令,分別為:HELO、MAIL FROM、RCPT TO、DATA和QUIT。這些命令又叫做原語,可理解為應用協議層上最原始最小的命令顆粒。服務器給每個客戶端的命令發回應答,其中每個響應都由返回碼和一些英語解釋構成。這里需要指出的是,SMTP使用持久連接,也就是說,如果客戶端有多個郵件消息需發送到同一個郵件服務器,那么所有這些消息可以在同一個TCP連接中發送。對于其中的每一個消息,客戶端以一個新的“HELO”命令開始整個消息發送過程,但是QUIT命令要等到所有消息都發送完之后才發出。
8.1.3 POP3協議介紹
大家一聽這個POP,讀起來有點像中文中的泡泡,其實這是一個英文術語的縮寫。POP的全稱是 Post Office Protocol,即郵局協議,用于電子郵件的接收,它使用TCP的110端口?,F在常用的是第三版,所以簡稱為 POP3。POP3仍采用Client/Server工作模式,Client被稱為客戶端,一般我們日常使用電腦都是作為客戶端,而Server(服務器)則是POP3的郵件服務器。舉個形象的例子:Server(服務器)是許多小信箱的集合,就像我們所居住樓房的信箱結構,而客戶端就好比是一個人拿著鑰匙去信箱開鎖取信,一樣的道理。
POP3和上面的SMTP協議一樣,其實現也是一個客戶端與服務器的對話過程。 軟件測試
當我們單擊了電子郵件軟件中的收取按鈕后,電子郵件軟件首先會調用DNS協議對POP服務器進行解析IP地址,當IP地址被解析出來后,郵件程序便開始使用TCP協議連接郵件服務器的110端口,因為POP服務器是比較忙的,所以在這個過程中我們相對要等比較長的時間。當郵件程序成功地連上POP服務器后,其先會使用USER命令將郵箱的賬號傳給POP服務器,然后再使用PASS命令將郵箱的賬號傳給服務器。當完成這一認證過程后,郵件程序使用STAT命令請求服務器返回郵箱的統計資料,比如郵件總數和郵件大小等,然后LIST命令便會列出服務器里郵件數量。接下來郵件程序就會使用RETR命令接收郵件,接收一封后便使用DELE命令將郵件服務器中的郵件置為刪除狀態。當使用QUIT命令時,郵件服務器便會將置為刪除標志的郵件給刪了。通俗地講,郵件程序從服務器接收郵件,其實就是一個對話過程,POP協議就是用在電子郵件中的一門語言。
8.1.4 IMAP協議介紹
用戶使用POP3把郵件消息下載到本地機之后,就可以把它們移動到本地創建的文件夾中。用戶然后可以刪除郵件,移動郵件,按發信人名字或消息主題搜索郵件等。然而,所有這些郵件操作都是在本機上完成的。這對于游動的用戶卻構成了問題,游動用戶更愿意在遠程郵件服務器主機上維護郵件夾,這樣從任何主機都可以訪問它,使用POP3是不可能做到這一點的。
這時IMAP協議就應運而生了,同樣也是郵件接收協議,但是IMAP卻比POP3復雜得多,因為IMAP提供的特性比POP3多出不少。IMAP被設計成允許用戶像對待本地郵箱那樣操縱遠程郵箱。具體地說,IMAP使得收信人能夠在自己的郵件服務器主機中創建并維護多個存放郵件的文件夾。他們可以把郵件存入文件夾,也可以將郵件從一個文件夾轉移到另一個文件夾,還可以在這些遠程郵件夾中搜索匹配特定準則的郵件消息。IMAP的實現比POP3的實現復雜得多,原因之一就是IMAP服務器必須為每個用戶維護一個文件夾層次結構。某個用戶使用不同的客戶端相繼訪問自己的IMAP服務器時,這個IMAP服務器為該用戶維護并同步相應的狀態。POP3服務器則相反,一旦用戶退出當前的POP3會話,它們就不再為用戶維護狀態信息了。
原文轉自:http://www.anti-gravitydesign.com