本篇文章主要介紹應用層餘下的一些內容,包括咱們最熟悉的「E-Mail」。
電子郵件的一些標準(接下來咱們要介紹的內容)緩存
由上圖能夠看出,郵件服務器(mail server)按照 客戶-服務器方式工做,負責發送和接受郵件,須要使用發送和接受兩種協議。一個郵件服務器 既能夠做爲客戶,也能夠做爲服務器。
例如在發件人用戶代理向發送方服務器發送郵件時,發送方服務器就做爲SMTP服務器端;而當發送方服務器要向接收方服務器發送郵件時,發送方服務器就做爲SMTP客戶端了。
相應的,PC端有 用戶代理(user agent),是用戶與電子郵件系統的接口。
發送和接受電子郵件的幾個重要步驟
① 發件人調用PC中用戶代理撰寫和編輯要發送的郵件。
② 發件人的用戶代理把郵件用SMTP協議發給發送方郵件服務器。
③ SMTP服務器把郵件臨時存放在郵件緩存隊列中,等待發送。
④ 發送方郵件服務器的SMTP客戶與接收方郵件服務器的SMTP服務器創建TCP鏈接,而後就把郵件緩存隊列中的郵件依次發送出去。
⑤ 運行在接收方郵件服務器中的SMTP服務器進 程收到郵件後,把郵件放入收件人的用戶郵箱中,等待收件人進行讀取。
⑥ 收件人在打算收信時,就運行PC機中的用戶代理,使用 POP3(或 IMAP)協議讀取發送給本身的郵件。服務器
注意,POP3 服務器和 POP3 客戶之間的通訊是由 POP3 客戶發起的。
SMTP所規定的就是在兩個相互通訊的SMTP進程之間應如何交換信息。
因爲SMTP使用客戶 - 服務器方式,所以負責發送郵件的SMTP進程就是SMTP客戶,而負責接收郵件的SMTP進程就是SMTP服務器。網絡
POP是一個很是簡單、但功能有限的郵件讀取協議,如今使用的是它的第三個版本POP3。
POP也使用客戶 - 服務器的工做方式。
在接收郵件的用戶PC機中必須運行POP客戶程序,而在用戶所鏈接的ISP的郵件服務器中則運行POP服務器程序。編碼
IMAP (Internet Message Access Protocol) 也是按客戶服務器方式工做,如今較新的是版本 4,即 IMAP4。
用戶在本身的PC機上就能夠操縱ISP的郵件服務器的郵箱,就像在本地操縱同樣。
所以IMAP是一個聯機協議。當用戶 PC 機上的 IMAP 客戶程序打開 IMAP 服務器的郵箱時,用戶就可看到郵件的首部。若用戶須要打開某個郵件,則該郵件才傳到用戶的計算機上。
IMAP最大的好處就是用戶能夠在不一樣的地方使用不一樣的計算機隨時上網閱讀和處理本身的郵件。
IMAP 還容許收件人只讀取郵件中的某一個部分。例如,收到了一個帶有視像附件(此文件可能很大)的郵件。爲了節省時間,能夠先下載郵件的正文部分,待之後有時間再讀取或下載這個很長的附件。
IMAP的缺點是若是用戶沒有將郵件複製到本身的PC上,則郵件一直是存放在IMAP服務器上。所以用戶須要常常與IMAP服務器創建鏈接。spa
通用互聯網郵件擴充MIME並無改動SMTP或取代它。
MIME 的意圖是繼續使用目前的 [RFC 822] 格式,但增長了郵件主體的結構,並定義了傳送非ASCII碼的編碼規則。計算機網絡
在概述中就提到過,互聯網目前有兩種工做方式 -- 「客戶-服務器」方式和「P2P」方式。
目前提到的各類應用,都是經過「客戶-服務器」方式實現的。接下來就要介紹一下大有前景的「P2P」工做方式。代理
在P2P工做方式下,全部的音頻/視頻文件都是在普通的互聯網用戶之間傳輸。至關於有不少分散在各地的媒體服務器向其餘用戶提供所要下載的音頻/視頻文件。
P2P解決了集中式媒體服務器可能出現的瓶頸問題,所以受到廣大網民的歡迎。rest
Napster是最先出現的P2P技術,可提供免費下載MP3音樂。
用戶要及時向 Napster 的目錄服務器報告本身存有的音樂文件。
當用戶想下載某個 MP3 文件時,就向目錄服務器發出詢問。目錄服務器檢索出結果後向用戶返回存放此文件的 PC 機的 IP 地址。Napster 的文件傳輸是分散的,但文件的定位則是集中的。視頻
電騾 eMule 使用分散定位和分散傳輸技術,把每個文件劃分爲許多小文件塊,並使用多源文件傳輸協議 MFTP 進行傳送。所以用戶能夠同時從不少地方下載一個文件中的不一樣文件塊。因爲每個文件塊都很小,而且是並行下載,因此下載能夠比較快地完成。server
eMule用戶在下載文件的同時,也在上傳文件,所以,互聯網上成千上萬的 eMule 用戶在同時下載和上傳一個個小的文件塊。
eMule鼓勵用戶向其餘用戶上傳文件。用戶上傳文件越多,其下載文件的優先級就越高(於是下載就越快)。
早些年尚未百度網盤的時候,BT這兩個字母可就是閃閃發光的資源的象徵啊(暴露年齡)
BitTorrent也是使用P2P工做方式的,其全部對等方集合稱爲一個洪流 (torrent),下載文件的數據單元爲長度固定的文件塊 (chunk)。基礎設施結點,叫作追蹤器 (tracker)。
BT協議:
在上圖中,七個P2P對等方下方的彩條塊表明被共享的文件,每種顏色表明每一個對等方擁有的文件的「一個塊」。在從種子源(seed)獲取各自的「塊」以後,資源就在對等方之間分享傳遞了。
由此,種子源只須要發出 一份文件,就能讓P2P網絡中的每一個主機都擁有一份文件。
當一個新的對等方A加入洪流時,追蹤器就隨機地從參與的對等方集合中選擇若干個(例如,30 個),並把這些對等方的IP地址告訴A。因而A就和這些對等方創建了TCP鏈接。全部與 A 創建了TCP鏈接的對等方爲「相鄰對等方」(neighboring peers)。
A使用最稀有的優先(rarest first) 的技術,首先向其相鄰對等方請求對應的文件塊。
凡當前以最高數據率向A傳送文件塊的某相鄰對等方,A就優先把所請求的文件塊傳送給該相鄰對等方。