電子郵件協(xié)議之SMTP與IMAP的區(qū)別
作者 | 李佳斌,單位:中國移動智慧家庭運(yùn)營中心
?Labs 導(dǎo)讀
隨著移動辦公越來越普及,我國的各個(gè)產(chǎn)業(yè)逐步進(jìn)入數(shù)字化轉(zhuǎn)型階段。電子郵件逐漸成為移動辦公體系中發(fā)布重要信息,落實(shí)各類紀(jì)要,記錄重要環(huán)節(jié)的最主要的手段。那電子郵件是如何進(jìn)行交互傳輸?shù)??什么是電子郵件協(xié)議?作為電子郵件協(xié)議中最常用的SMTP和IMAP兩種協(xié)議,它們有什么區(qū)別?本文將會對這些問題做一個(gè)深入淺出的介紹。
數(shù)字化轉(zhuǎn)型時(shí)代
移動辦公體系越來越普及
交流成本越來越低~
在信息流通和分享過程中
大量企業(yè)都選擇了??
......
作為重要信息交互的載體
那電子郵件是怎么交互傳輸?shù)模?/p>
不同的電子郵件協(xié)議又有什么區(qū)別?
本期Labs帶大家認(rèn)識下
電子郵件協(xié)議的那些事兒??
Part 01 什么是電子郵件協(xié)議
在介紹電子郵件協(xié)議前,先簡單介紹一下什么是通信協(xié)議。通信協(xié)議簡單來說就是電子設(shè)備交互是所使用的一套標(biāo)準(zhǔn)化的規(guī)則。各方按照這個(gè)規(guī)則進(jìn)行數(shù)據(jù)封裝和解析。最常見的通信協(xié)議包括TCP/IP、HTTP超文本傳輸協(xié)議、UDP用戶數(shù)據(jù)報(bào)協(xié)議、FTP文本傳輸協(xié)議等。電子郵件協(xié)議,顧名思義就是電子郵件交互過程中使用到的標(biāo)準(zhǔn)規(guī)則。
- 分類
電子郵件通信過程中使用到協(xié)議,目前主要分為以下三類:
- SMTP:簡單郵件傳輸協(xié)議。
- IMAP:互聯(lián)網(wǎng)消息訪問協(xié)議。
- POP:郵局協(xié)議。
下圖展示了電子郵件交互的一個(gè)基本過程。
Part 02 什么是SMTP
- 介紹
SMTP(SimpleMailTransferProtocol)是一種簡單郵件傳輸協(xié)議,是電子郵件協(xié)議中的行業(yè)標(biāo)準(zhǔn)協(xié)議。主要用于從源地址到目的地址傳輸郵件的規(guī)范,控制郵件的中轉(zhuǎn)方式。在起草電子郵件并發(fā)起發(fā)送命令或者中轉(zhuǎn)郵件的時(shí)候,就會使用此協(xié)議。SMTP電子郵件服務(wù)器分為兩種:中繼器和接收器。SMTP中繼器處理來自其他服務(wù)器的郵件,然后將它按照正確的方向傳遞給其他SMTP服務(wù)器。接收器接收從中繼服務(wù)器中發(fā)送過來的郵件,然后遞送給收件人郵箱所在的郵件服務(wù)器。SMTP參與的階段圖如下。
- 通信三階段
SMTP協(xié)議通信的交流模型可以簡單概括,當(dāng)用戶需要發(fā)送郵件時(shí)郵件發(fā)送者與郵件接受者建立一個(gè)通信通道,通道建立后發(fā)送者通過各種命令進(jìn)行郵件數(shù)據(jù)的發(fā)送,郵件發(fā)送完成后,終止通信通道。接下來具體講講每個(gè)步驟。
SMTP握手
SMTP客戶端和服務(wù)器需要先建立連接,客戶端通過25端口號申請與服務(wù)器建立TCP連接,服務(wù)器應(yīng)答220并返回服務(wù)器域名;客戶端收到應(yīng)答碼后發(fā)送HELLO命令和客戶端標(biāo)識信息,啟動SMTP會話通道;服務(wù)端回應(yīng)250應(yīng)答碼,會話通道正式建立。
電子郵件傳輸
客戶端發(fā)送MAIL命令報(bào)告發(fā)送人的郵箱和域名,如果接受者接收這個(gè)郵件,就回復(fù)應(yīng)答碼250,接著客戶端發(fā)送RCPT命令來指定收件人的郵箱和域名,如果被接收同樣回復(fù)應(yīng)答碼250,如果不接受則拒絕(不會終止整個(gè)通話)。接收者郵箱確定后,客戶端用DATA命令指示要發(fā)送數(shù)據(jù),服務(wù)器響應(yīng)354應(yīng)答碼,客戶端開始傳輸報(bào)文并用一個(gè)” . “結(jié)束發(fā)送。如果數(shù)據(jù)被接收,會收到250應(yīng)答碼。
關(guān)閉通道
客戶端發(fā)送QUIT命令關(guān)閉通道,服務(wù)端響應(yīng)221應(yīng)答碼關(guān)閉成功。
- 特點(diǎn)
- SMTP支持“郵件中繼”,為郵件轉(zhuǎn)發(fā)提供條件。
- SMTP支持多種通信方法。
- SMTP的錯(cuò)誤處理能力很特殊,通過必要的措施成功響應(yīng)錯(cuò)誤的請求。
- SMTP可以配置為郵件網(wǎng)關(guān)。
Part 03 什么是IMAP
- 介紹
IMAP(InternetMessageAccessProtocol)是一個(gè)應(yīng)用層的協(xié)議,是一種臨時(shí)郵件訪問協(xié)議,也被稱為交互式郵件訪問協(xié)議和Internet郵件訪問協(xié)議。IMAP不會用于發(fā)送郵件,主要用于管理郵件以及從服務(wù)器上檢索電子郵件,獲取郵件的信息,下載郵件等,它是檢索郵件中最常用的協(xié)議。另外一個(gè)常用的檢索郵件的協(xié)議是POP3。相比于POP3,IMAP可以通過客戶端直接對服務(wù)器郵件進(jìn)行操作,無需把郵件全部下載到本地再去管理。IMAP通過143端口進(jìn)行拉取,如下圖所示。
- 通信流程
- 收件人的電子郵件客戶端與電子郵件服務(wù)器進(jìn)行連接;
- 收件人查看服務(wù)器上的郵件標(biāo)題;
- 當(dāng)SMTP傳輸響應(yīng)成功時(shí),收件人的電子郵件客戶端會通過IMAP獲取消息并保存到接收方的收件箱中;
- 開始閱讀郵件是,IMAP就會開始下載它。
- 特點(diǎn)
- IMAP保證了用戶可以再多個(gè)設(shè)備上接收郵件。
- IMAP采用延遲下載的方式,如果沒有打開郵件,IMAP就不會進(jìn)行下載。這種機(jī)制也確保了下載多媒體文件會比較容易。
- IMAP提供了標(biāo)記用來跟蹤正在查看的郵件信息。
- IMAP也存在一個(gè)缺點(diǎn),當(dāng)網(wǎng)絡(luò)不好時(shí),用戶可能無法正確閱讀郵件。
Part 04 SMTP與IMAP的區(qū)別與互補(bǔ)
現(xiàn)在我們可以總結(jié)下SMTP與IMAP的主要區(qū)別 。
- SMTP代表簡單郵件傳輸協(xié)議,而IMAP代表Internet訪問消息協(xié)議。
- SMTP僅用于發(fā)送消息,而IMAP不能用于發(fā)送消息,可用于管理和檢索消息。
- SMTP可用于在客戶端和服務(wù)器之間以及在兩臺服務(wù)器之間傳輸消息。但I(xiàn)MAP只支持將消息從服務(wù)器傳輸?shù)娇蛻舳恕?/li>
- SMTP允許您在客戶端存儲上組織電子郵件,而IMAP用戶可以靈活地在服務(wù)器上組織和管理郵件。
- SMTP工作在端口25(用于郵件傳輸?shù)臉?biāo)準(zhǔn)端口)、587(TLS加密)、465(發(fā)送安全消息時(shí)可以使用)、2525(非加密電子郵件時(shí)可以使用)。另一方面,IMAP工作在端口993(安全TLS/SSL端口,也稱為IMAPS)、端口143(默認(rèn)端口)。
- IMAP為用戶提供了很大的靈活性并通過多個(gè)設(shè)備進(jìn)行訪問,而SMTP允許在成功發(fā)送電子郵件后更改電子郵件。
當(dāng)然,實(shí)際運(yùn)用過程中,如下圖展示,我們是將SMTP與IMAP結(jié)合互補(bǔ)進(jìn)行使用。