《計算機網路》之應用層

2021-06-12 07:17:39 字數 2717 閱讀 4192

應用層作為和使用者互動的最高層,其任務是直接為使用者的應用程序提供服務。應用層的具體內容就是規定應用程序在通訊時所遵循的協議。網際網路的應用層協議有很多,如最為熟知的http(埠號80)和ftp(埠號21)、支援電子郵件的smtp(埠號25)、網域名稱系統dns(埠號53)等。下面我們來簡單介紹網域名稱系統dns、全球資訊網www (http)和電子郵件 (smtp/pop3)。

網域名稱系統dns(domain name system)用來把便於人們使用的機器名字轉換為ip位址。

乙個網域名稱,以小數點為分隔符,從右往左依次是頂級網域名稱、二級網域名稱、**網域名稱……頂級網域名稱tld (toplevel domain)有265個(2006.12統計),如國家頂級網域名稱cn/us/uk/jp等和通用頂級網域名稱com/net/org/edu/gov等。注意,www.abc.cn中的」abc」比www.abc.com.cn中的」abc」級別要高。

下面介紹一下網域名稱伺服器(name server)。

網域名稱伺服器分為四種:根/頂級/許可權/本地網域名稱伺服器。前三種構成網域名稱伺服器的層次結構:根網域名稱伺服器最重要,處於最頂層,儲存著所有頂級網域名稱伺服器的網域名稱和ip位址;頂級網域名稱伺服器負責管理自己的所有二級網域名稱;再往下就都是許可權網域名稱伺服器的工作了,它管理自己負責的區。請注意,乙個域可以分成乙個或多個區,每個區由乙個許可權網域名稱伺服器管轄,如:域abc.com可分為區abc.com和區x.abc.com,這時域abc.com比區abc.com大,區abc.com管理域abc.com中除了區x.abc.com的其他內容。不過,當有對x.abc.com的請求時,會先訪問區abc.com的許可權網域名稱伺服器,然後此伺服器再引導至區x.abc.com的許可權網域名稱伺服器,並非直接訪問區x.abc.com的許可權網域名稱伺服器(因為會按順序先解析到域abc.com)。

而本地網域名稱伺服器是幹什麼的呢?它是專門為乙個isp/大學/組織等的主機服務的。主機的dns查詢請求會統一傳送到它的本地網域名稱伺服器受理,然後由這個本地網域名稱伺服器給予響應(遞迴查詢 recursive query——全權委託此伺服器)。「遞迴」體現在什麼地方呢?當本地網域名稱伺服器不知道答案時,它會自己去向根網域名稱伺服器(一定是根)傳送查詢請求,反正事情都自己辦了,最後給出主機乙個結果,「辦事還是挺認真負責的」。這與下面的不同。本地網域名稱伺服器向根網域名稱伺服器的查詢是迭代查詢(iterativequery)——為了避免負載過大,根網域名稱伺服器只會告訴本地網域名稱伺服器下一步該向哪個頂級網域名稱伺服器查詢,而不會自己包攬剩下的活。本地網域名稱伺服器根據它的「指路」,自己再發起下一步查詢。後面的也都是迭代的。

其實根網域名稱伺服器並不是只能接受迭代查詢——當本地網域名稱伺服器很「懶」時,就會向根網域名稱伺服器傳送遞迴查詢,根還是會接受而全權**的。只是一般情況下都採用迭代查詢罷了。

全球資訊網www(world wide web)是乙個大規模的、聯機式的資訊儲藏所,簡稱web。它的靈魂就是「鏈結」,使得網際網路上的資源相互連繫了起來。

全球資訊網使用統一資源定位符url(uniform resource locator)來標識www上的各種文件,使用超文字傳送協議http(hypertext transfer protocol)實現鏈結(使用tcp協議),使用超文字標記語言html(hypertext markup language)統一顯示不同的文件。

url:《協議》://《主機》:《埠》/《路徑》

http:面向事務的無連線、無狀態的協議,但使用tcp協議實現可靠傳輸。http/1.0的特點是每請求乙個文件都要重新建立tcp鏈結和釋放tcp鏈結,而http/1.1作出了改進,使用了持續連線——為tcp連線保留一段時間。

最重要的是簡單郵件傳送協議smtp(****** mail transfer protocol)和郵局協議pop3(post office protocol version 3) ,都使用tcp連線。前者用於傳送方使用者**ua(user agent)向傳送方郵件伺服器傳送郵件和傳送方郵件伺服器向接收方郵件伺服器傳送郵件;後者用於接收方郵件伺服器給收件人ua傳送郵件。其實就是下面這張圖,理解了就結束了。

最後再補充一點內容。由於smtp只能傳送可列印的7位ascii碼,因此提出通用網際網路郵件擴充mime(multipurpose internet mailextensions),可以傳送包括多**在內的多種資料。它並沒有取代smtp,而是在中間套了一層,如下圖。

pop3也有缺點,就是它設定為只要收件方ua讀取了郵件,就把郵件刪除。因此提出了網際報文訪問協議imap(internet messageaccess protocol),不僅不主動刪除,還提供各種管理功能。可以發現,現在的郵箱都是imap的。

好了,至此,整本《計算機網路》的學過的知識就總結完畢了,對你有沒有一點幫助呢?如果你真的要把這門學科學精、學通,靠這六篇文章是遠遠不夠的,必要的參考書還是不可缺少的。這個系列是我寫的第一套技術日誌,希望你和我都不要考完期末就把知識忘得一乾二淨,而是學進去,扎牢固。路漫漫其修遠兮,學習的道路還很漫長,但保持積累,總會成為一方之才!

計算機網路之應用層

dns完成了網域名稱到ip位址之間相互轉換的服務,由若干個網域名稱伺服器程式完成,每個伺服器只保留一部分資料,是乙個分布式資料庫。網際網路採用了層次樹狀結構的命名方法,任何乙個連線在網際網路上的主機或路由器,都有乙個唯一的層次結構的名字,即網域名稱。從上到下依次為 根網域名稱 頂級網域名稱 二級網域...

計算機網路之應用層

一.一些概念 1.程序通訊 程序之間進行訊息的傳遞 2.套接字 位於程序之間,程序從套接字中接收訊息,並可以傳送訊息給套接字 3.應用層協議 定義了程序何時,如何傳送何種資訊 4.程序定址 主機由ip位址標識,目的主機中指定接收程序的識別符號為目的地埠號,程序通過主機和目的主機的識別符號進行程序定址...

計算機網路之應用層

應用軟體通常在網路邊緣的端系統中執行,而不是在網路核心的交換機和路由器上執行,這種模式促進了大量應用的開發和部署。網路核心的交換機和路由器只專注於資料報 分組 的 1 網路應用程式體系結構 應用程式都有乙個體繫結構。網路應用程式所使用的兩種體系結構包括 客戶機 伺服器 c s 體系結構或對等 p2p...