EMail:電子郵件
協定包括發送和拉取的協定
發送的協定:SMTP簡單郵件傳輸協定
拉取的協定:POP3郵件傳輸協定,IMAP消息通路協定,HTTP超文本傳輸協定
HTTP超文本傳輸協定:
可以上載POST和下載下傳GET檔案;
使用者代理:撰寫發送郵件的用戶端軟體,如QQ郵箱,outlook郵箱【通過此軟體來通路郵件的的應用】
浏覽器是web應用的使用者代理;FTP的用戶端軟體是FTP應用的使用者代理
通過用戶端軟體與伺服器互動
EMail:過程
使用者代理配置好郵件伺服器的IP位址和端口号,通過郵件伺服器發郵件【把郵件發在郵件伺服器的排隊隊列中,到隊頭再發送】,郵件伺服器從隊列中挨個地取郵件,之後向相應的目标郵件伺服器發走;目标郵件伺服器收到郵件之後,把其放在相應使用者的目錄【郵箱】當中
目标的使用者收郵件,運作使用者代理,從郵箱中把别人發給他的郵件拉取過來
因為源伺服器和目标伺服器都可以發送和拉取郵件,是以兩個都可以是伺服器和用戶端
封包:Message
指令和響應都是ASCII碼形式
封包必須是7位ASCII碼,超過就不允許傳輸
EMail:舉例
隊列:郵件伺服器的使用者很多;郵件傳輸定時發送
簡單的SMTP互動
郵件的内容全部是ASCII碼形式,是以網際網路打了更新檔:MIME多媒體郵件擴充
如果用戶端還要向伺服器發郵件,繼續在此連接配接上進行發送【持久的連接配接】
HTTP:
用戶端向伺服器請求–拉取
HTTP:一個對象一個封包
SMTP:多個對象一個封包【一個郵件包含了視訊,文檔,圖檔等】
郵件封包格式
To:發給誰
From:誰發的
Subject:郵件的标題title
常見的郵件資訊:
cc抄送,同一份郵件同時發給另外的人
抄送就是将郵件同時發送給收信人以外的人,使用者所寫的郵件抄送一份給别人
MIME多媒體郵件擴充
傳輸的郵件ASCII碼不夠,使用MIME多媒體郵件擴充打更新檔
使用base64的編碼:
把郵件中若幹個不在ASCII碼範圍内的位元組轉換為更長的在ASCII碼範圍内的字元【定義一個映射關系】,即可以通過SMTP協定傳輸
對方郵件:通過base64轉換回來,使用MIME解釋出來
郵件通路協定
前兩跳是推【SMTP】;最後一跳是拉【POP3,IMAP,HTTP】
POP3協定與IMAP協定
POP3:
收發郵件可以跑在TCP和SSL上【加密】
retr:從郵箱中拉取郵件【下載下傳郵件】
兩種方式:
下載下傳并删除模式【從一個地方拉取下來檔案就會被删除】
下載下傳并保留模式
pop3:僅僅能看到收件箱和發件箱
IMAP:能在遠端建立目錄,把郵件從一個目錄搬到另一個目錄【遠端目錄維護】