成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

計算機(jī)網(wǎng)絡(luò)技術(shù) 第9章 應(yīng)用層

第9章 應(yīng)用層 223第九章 應(yīng)用層在前面幾章中,我們就應(yīng)用層下面的各層進(jìn)行了討論,并介紹了主流的局域網(wǎng)技術(shù)和廣域網(wǎng)技術(shù),本章我們將討論重點(diǎn)轉(zhuǎn)向應(yīng)用層。應(yīng)用層是OSI參考模型的最高層,它直接為用戶提供

第9章 應(yīng)用層 223

第九章 應(yīng)用層

在前面幾章中,我們就應(yīng)用層下面的各層進(jìn)行了討論,并介紹了主流的局域網(wǎng)技術(shù)和廣域網(wǎng)技術(shù),本章我們將討論重點(diǎn)轉(zhuǎn)向應(yīng)用層。應(yīng)用層是OSI參考模型的最高層,它直接為用戶提供服務(wù),如果沒有應(yīng)用層,下面各層的存在就失去了意義。Internet技術(shù)的發(fā)展已經(jīng)極大促進(jìn)了TCP/IP應(yīng)用層協(xié)議的發(fā)展。因此,本章我們以TCP/IP 應(yīng)用層為例,介紹常見的TCP/IP應(yīng)用服務(wù)與應(yīng)用支撐協(xié)議。本章建議教學(xué)時數(shù)為6- 7學(xué)時,本章學(xué)習(xí)導(dǎo)航參見表

9.1。

表9.1 第9章學(xué)習(xí)導(dǎo)航 驅(qū)動問題

在Internet 上,常用的應(yīng)用有哪些,這些應(yīng)用所

使用的相應(yīng)的支撐協(xié)議分別是什么? 涉及的知識點(diǎn) 常見的應(yīng)用層協(xié)議 學(xué)習(xí)要求 掌握

理解

掌握

掌握

理解 應(yīng)用層的協(xié)議如何使用傳輸層為其提供的服務(wù)應(yīng)用層協(xié)議與傳輸層協(xié)議之間的關(guān)系 DNS 的作用是什么?其工作原理是怎樣? 在Internet 網(wǎng)上,我們怎么才能找到相應(yīng)的信息資源。網(wǎng)頁是用什么語言寫的? 發(fā)送電子郵件時需要郵件接收的用戶必須同時

在線嗎?

可以用一個自己的本地計算機(jī)直接操縱遠(yuǎn)程計

算機(jī),并且像使用本地主機(jī)一樣使用遠(yuǎn)程主機(jī)的

資源嗎? 域、域名服務(wù)器、DNS 的工作原理 URL、HTML、HTTP e-mail 的工作原理 郵件地址及相應(yīng)的郵件協(xié)議 TELNET的工作原理 理解

9.1 TCP/IP的應(yīng)用層

應(yīng)用層是TCP/IP模型的最高層,其通過使用傳輸層所提供的服務(wù),直接向用戶提供服務(wù),是TCP/IP網(wǎng)絡(luò)與用戶之間的界面或接口。該層由若干面向用戶提供服務(wù)的應(yīng)用協(xié)議和支持這些應(yīng)用的支撐協(xié)議組成,基于這些協(xié)議,應(yīng)用層向用戶提供了眾多的網(wǎng)絡(luò)應(yīng)用。

TCP/IP應(yīng)用層上的典型應(yīng)用包括WEB 瀏覽、電子郵件、文件傳輸訪問和遠(yuǎn)程登錄等,與這些應(yīng)用相關(guān)的協(xié)議包括超文本傳輸協(xié)議(HTTP )、簡單郵件傳輸協(xié)議(SMTP )、文件

,

224《計算機(jī)網(wǎng)絡(luò)技術(shù)》

傳輸協(xié)議(FTP )、簡單文件傳輸協(xié)議(TFTP )和虛擬終端協(xié)議(Telnet )。

z HTTP :用來在瀏覽器和WWW 服務(wù)器之間傳送超文本的協(xié)議。 z SMTP :用于實現(xiàn)電子郵件傳輸?shù)膽?yīng)用協(xié)議。

z FTP :用于實現(xiàn)文件傳輸服務(wù)的協(xié)議。通過FTP 用戶可以方便地連接到遠(yuǎn)程服務(wù)

器上,可以進(jìn)行查看、刪除、移動、復(fù)制、更名遠(yuǎn)程服務(wù)器上的文件內(nèi)容的操作,并能進(jìn)行上傳文件和下載文件等操作。

z TFTP :用于提供小而簡單的文件傳輸服務(wù)。從某個意義上來說,TFTP 是對FTP

的一種補(bǔ)充,特別是在文件較小并且只有傳輸需求的時候該協(xié)議顯得更加有效率。 z Telnet :實現(xiàn)虛擬或仿真終端的服務(wù),允許用戶把自己的計算機(jī)當(dāng)作遠(yuǎn)程主機(jī)上的

一個終端連接到遠(yuǎn)程計算機(jī),并使用基于文本界面的命令控制和管理遠(yuǎn)程主機(jī)上的文件及其他資源。

為了使用戶更加可靠、高效地訪問網(wǎng)絡(luò)應(yīng)用服務(wù), TCP/IP模型的應(yīng)用層還提供了一些專門的應(yīng)用支撐協(xié)議,如域名服務(wù)系統(tǒng)(DNS )、簡單網(wǎng)絡(luò)管理協(xié)議(SNMP )等。

z DNS :用于實現(xiàn)域名和IP 地址之間的相互轉(zhuǎn)換。

z SNMP :由于因特網(wǎng)結(jié)構(gòu)復(fù)雜,擁有眾多的操作者,因此需要好的工具進(jìn)行網(wǎng)絡(luò)管

理,以確保網(wǎng)絡(luò)運(yùn)行的可靠性和可管理性。而SNMP 提供了一種監(jiān)控和管理計算機(jī)網(wǎng)絡(luò)的有效方法,它已成為計算機(jī)網(wǎng)絡(luò)管理的事實標(biāo)準(zhǔn)。

圖9.1給出了上述的應(yīng)用層協(xié)議與傳輸層TCP 、UDP 協(xié)議及其端口之間的關(guān)系。應(yīng)用層協(xié)議根據(jù)所使用的傳輸層服務(wù)的不同可以分為三類:一類是基于面向連接的TCP 協(xié)議,如HTTP 、FTP 、SMTP 和TELNET 等;另一類是基于無連接的UDP 協(xié)議,如SNMP 、TFTP 和 DHCP等;還有一類既可基于TCP 協(xié)議,也可基于UDP 協(xié)議,如DNS 。

圖9.1常見應(yīng)用層協(xié)議與TCP 、UDP 協(xié)議之間的關(guān)系

9.2 DNS服務(wù)

任何TCP/IP應(yīng)用在網(wǎng)絡(luò)層都是基于IP 協(xié)議實現(xiàn)的,需要用IP 地址來實現(xiàn)主機(jī)的邏輯尋址。但是32位二進(jìn)制長度的IP 地址非常難以記憶,即使采用點(diǎn)分十進(jìn)制表示,也不具備足夠的可記憶性。為了便于用戶使用網(wǎng)絡(luò)服務(wù),我們引入了更容易記憶的ASCII 串符號來替代IP 地址,這種特殊用途的ASCII 串被稱為域名。例如,人們很容易記住代表溫州大學(xué)網(wǎng)站的

,但是如果要求人們記得溫州大學(xué)網(wǎng)站的IP 地址“218.75.16.107”域名“www.wzu.edu.cn ”

,

第9章 應(yīng)用層 225

恐怕就很難了。但是,一旦引入了域名,就需要為應(yīng)用程序提供關(guān)于域名和IP 地址之間的映射服務(wù),否則應(yīng)用進(jìn)程就無法借助域名來實現(xiàn)主機(jī)的IP 尋址。

域名與IP 地址之間的映射在上個世紀(jì)70年代由網(wǎng)絡(luò)信息中心(NIC )負(fù)責(zé)完成。NIC 記錄所有的域名地址和IP 地址的映射關(guān)系,并負(fù)責(zé)將記錄的地址映射信息分發(fā)給接入因特網(wǎng)的所有最低級域名服務(wù)器(僅管轄域內(nèi)的主機(jī)和用戶)。每臺域名服務(wù)器上維護(hù)一個稱之為“hosts.txt ”的文件,記錄其它各域的域名服務(wù)器及其對應(yīng)的IP 地址。NIC 負(fù)責(zé)所有域名服務(wù)器上“hosts.txt ”文件的一致性。主機(jī)之間使用域名的通信通過查閱域名服務(wù)器上的hosts.txt 文件來獲得IP 地址。但是,隨著網(wǎng)絡(luò)規(guī)模的擴(kuò)大和接入網(wǎng)絡(luò)的主機(jī)數(shù)的增加,要求每臺域名服務(wù)器都能容納所有的域名地址信息就變得極不現(xiàn)實,同時對不斷增大的“hosts.txt ”文件一致性的維護(hù)也浪費(fèi)了大量的網(wǎng)絡(luò)系統(tǒng)資源。

為了解決這些問題,提出了域名系統(tǒng)(domain name system,簡稱DNS ),它通過分級的域名服務(wù)和管理功能提供了高效的域名解釋服務(wù)。DNS 包括域、域名、主機(jī)和域名服務(wù)器四大要素。

9.2.1域、域名和域名空間

域(Domain )指由地理位置或業(yè)務(wù)類型而聯(lián)系在一起的一組計算機(jī)構(gòu)成的一種集合,一個域內(nèi)可以容納多臺主機(jī)。在域中,所有主機(jī)用域名(Domain name)來標(biāo)識,域名由字符和(或)數(shù)字組成,用于替代主機(jī)的IP 地址。當(dāng)因特網(wǎng)的規(guī)模不斷增大時,域和域中所擁有的主機(jī)數(shù)目也隨之增大,管理一個大而經(jīng)常變化的域名集合是非常復(fù)雜的,為此提出了一種基于域的分級命名機(jī)制,并得到了分級結(jié)構(gòu)的域名空間。域名空間的分級結(jié)構(gòu)有點(diǎn)類似于郵政系統(tǒng)中的分級地址結(jié)構(gòu),如“中國 浙江省 溫州大學(xué) 城市學(xué)院 張三”。

圖9.2給出了關(guān)于域名空間分級結(jié)構(gòu)的示意,整個形狀如一棵倒立的樹。根結(jié)點(diǎn)不代表任何具體的域,被稱為根域(root);在根域之下,是幾百個頂級(top-level )域,每個頂級域除了可以包括許多主機(jī)外,還可以被進(jìn)一步劃分為子域;子域之下除了可以有主機(jī)外,也可以有更小的子域;圖中的葉子結(jié)點(diǎn)代表沒有子域的域,但這種葉子域可以包含若干臺主機(jī)。

頂級域由一般域和國家域組成。一般域最初只有六個,分別是COM (商業(yè)機(jī)構(gòu))、EDU (教育單位)、GOV (政府部門)、MIL (軍事單位)、NET (提供網(wǎng)絡(luò)服務(wù)的系統(tǒng))和ORG (非COM 類的組織),后來又增加了一個為國際組織所使用的INT ;國家級域是指代表不同國家或地區(qū)的頂級域,如CN 表示中國、UK 表示英國、FR 表示法國、JP 表示日本、HK 代表香港等等。幾乎所有美國組織都處于一般域中,而幾乎所有非美國的組織都列在其所在國的域下面。

采用分級結(jié)構(gòu)的域名空間后,每個節(jié)點(diǎn)就采用從該節(jié)點(diǎn)往上到根的路徑命名,稱之為域名。在域名的書寫中,路徑名的長度最多達(dá)63個字符,路徑名之間用圓點(diǎn)“. ”分隔,路徑全名則不能超過255個字符。例如,在圖9.2中關(guān)于溫州大學(xué)的域名就應(yīng)表達(dá)為“wzu.edu.cn ”。注意,域名對大小寫不敏感,所以“edu ”和“EDU ”的寫法是一樣的。

在分級結(jié)構(gòu)的域名系統(tǒng)中,每個域都對分配其下面的子域存在控制權(quán),并負(fù)責(zé)登記自己所有的子域。要創(chuàng)建一個新的子域,必須征得其所屬域的同意。例如,若溫州大學(xué)希望

,

226《計算機(jī)網(wǎng)絡(luò)技術(shù)》

自己的域名為“wzu.edu.cn ”,則需要向“edu.cn ”的域管理者提出申請并獲得批準(zhǔn)。采取這種方式,可以避免同一域中的名字沖突。一旦一個新的子域被創(chuàng)建和登記,那么這個子域就可以創(chuàng)建自己的子域而無須再征得它的上一級域的同意。例如,若溫州大學(xué)想在其域下創(chuàng)建一個名為“cs ”的子域,就不需要再征得“edu.cn ” 域管理者的同意了。

注意,域的命名遵循的是組織界限,而不是物理網(wǎng)絡(luò)。位于同一物理網(wǎng)絡(luò)內(nèi)的主機(jī)可以屬于不同的域,而位于同一域內(nèi)的主機(jī)也可屬于不同的物理網(wǎng)絡(luò)。 通用的robot

圖9.2 域名空間示意圖

9.2.2域名解析

在因特網(wǎng)中向主機(jī)提供域名解析服務(wù)的機(jī)器被稱為域名服務(wù)器或名字服務(wù)器。從理論上,一臺名字服務(wù)器就可以包括整個DNS 數(shù)據(jù)庫,并響應(yīng)所有的查詢。但實際上這樣DNS 服務(wù)器就會由于負(fù)載過重而不能運(yùn)行。于是,與分級結(jié)構(gòu)的域名空間相對應(yīng),用于域名解析的域名系統(tǒng)DNS 在實現(xiàn)上也采用了層次化模式,類似于分布式數(shù)據(jù)庫查詢系統(tǒng)。

域名解析使用可以使用UDP 協(xié)議,也可以使用TCP 協(xié)議,其端口號為53。提出DNS 解析請求的主機(jī)與域名服務(wù)器之間采用客戶機(jī)-服務(wù)器(C-S )模式工作。當(dāng)某個應(yīng)用程序需要將一個名字映射為一個IP 地址時,應(yīng)用程序調(diào)用一種名為域名解析器(resolver ,參數(shù)為要解析的域名地址)的函數(shù)庫,由解析器將包含DNS 請求的分組傳送給本地DNS 服務(wù)器上,由本地DNS 服務(wù)器負(fù)責(zé)查找名字并將IP 地址映射信息返回給解析器。解析器再把該信息返回給調(diào)用程序。本地DNS 服務(wù)器以數(shù)據(jù)庫查詢方式完成域名解析過程,并且采用了遞歸查詢。遞歸查詢的具體過程如下:

z 當(dāng)解析器查詢域名時,它首先把查詢傳遞給本地的一臺名字服務(wù)器。

z 該名字服務(wù)器在本地的內(nèi)存緩沖區(qū)中搜索最近時間里解析的名稱地址。如果本地

緩沖區(qū)中找到了要解析的名稱所對應(yīng)的IP 地址,則這臺名字服務(wù)器將相應(yīng)的信息

,

第9章 應(yīng)用層 227

返回給客戶機(jī)上的解析器進(jìn)程。

z 否則,該名字服務(wù)器在本地靜態(tài)表中搜尋,看是否在管理員錄入的DNS 表項中有

該主機(jī)名稱所對應(yīng)的IP 地址。如果要解析的名稱存在于靜態(tài)表中,名字服務(wù)器也

向客戶機(jī)發(fā)送相應(yīng)的IP 地址。

z 如果以上兩項都未解析出域名所對應(yīng)的IP 地址,則表示所要求解析的域名為一遠(yuǎn)

程域名,一直是這臺名字服務(wù)器會轉(zhuǎn)向根名字服務(wù)器查詢。

z 根名稱服務(wù)器向該域名中指定的頂層域名稱服務(wù)器搜尋,頂層域名服務(wù)器再向主

機(jī)名稱中指定的二層域名服務(wù)器搜尋,依次下去,一直到要解析的名稱全部解析

完畢。

z 能完全解析主機(jī)名稱的第一臺服務(wù)器將解析出的IP 地址報告給客戶機(jī)。下面我們以一個具體的實例來進(jìn)一步說明域名解析過程。假設(shè)因特網(wǎng)上的一臺主機(jī)H 通過URL 地址“http://www.wz.zj.cn”訪問“溫州熱線”的主頁,那么該主機(jī)的瀏覽器進(jìn)程將會調(diào)用本機(jī)上的解析器以來完成解析“www.wz.zj.cn ”主機(jī)IP 地址的工作。主機(jī)H 上的解析器將關(guān)于“www.wz.zj.cn ”的解析請求發(fā)給該主機(jī)所連接的ISP 的域名服務(wù)器,ISP 的域名服務(wù)器查找它的DNS 數(shù)據(jù)庫文件中是否有關(guān)于“www.wz.zj.cn ”的數(shù)據(jù),如果有,直接向主機(jī)H 返回相應(yīng)的記錄;如果沒有,則ISP 的域名服務(wù)器向根服務(wù)器發(fā)送請求“.cn 由誰來解析?”的請求,根服務(wù)器將“.cn ”頂級域名服務(wù)器的IP 地址返回給ISP 的域名服務(wù)器,ISP 的域名服務(wù)器再向“.cn ”頂級域名服務(wù)器發(fā)送請求“zj.cn 域由誰來解析?”的請求,“.cn ”頂級域名服務(wù)器根據(jù)子域“zj.cn ”所對應(yīng)的域名服務(wù)器記錄向ISP 的域名服務(wù)器傳回“zj.cn 域由dns.zj.cn (218.244.47.45)來解析”的應(yīng)答,ISP 的域名服務(wù)器再向域名服務(wù)器“dns.zj.cn ”發(fā)送請求“wz.zj.cn 域的由誰來解析?”的請求,域名服務(wù)器“dns.zj.cn ”根據(jù)“wz.zj.cn ”所對應(yīng)的域名服務(wù)器記錄向ISP 的域名服務(wù)器傳回“wz.zj.cn 域由wzdns1.wz.zj.cn (61.153.177.196)來解析”的應(yīng)答,ISP 的域名服務(wù)器根據(jù)傳回的域名服務(wù)器參數(shù)向域名服務(wù)器“wzdns1.wz.zj.cn ”發(fā)送請求“www.wz.zj.cn 的IP 地址是什么?”的請求,域名服務(wù)器“wzdns1.wz.zj.cn ”向ISP 的域名服務(wù)器傳www.wz.zj.cn 的IP 地址為“202.96.106.6”的應(yīng)答,ISP 的域名服務(wù)器將這個參數(shù)寫入本地的DNS 緩存(Cache)中,并向主機(jī)H 傳回此IP 地址。

除了將域名解析為IP 地址外,系統(tǒng)有時候還需要將IP 地址解析為域名。例如,當(dāng)一臺遠(yuǎn)程主機(jī)以IP 地址方式連接到本地主機(jī)時,本地主機(jī)為了確認(rèn)對方的合法性(如防止對方假冒),就可以通過域名反查的方式來判斷對方主機(jī)的真實性,這種由IP 地址解析為域名的過程被稱為逆向解析。這時就需要名為in-addr.arpa 的逆向域(reverse domains),該域內(nèi)的條目是按IP 地址組織的,用于IP 到域名的反向解析。

域名和IP 地址的映射關(guān)系在DNS 服務(wù)器中以DNS 數(shù)據(jù)庫的形式存在,該數(shù)據(jù)庫又被稱為DNS 的資源記錄(resource record)。圖9.3給出了一個DNS 數(shù)據(jù)庫的示例。DNS 庫中的每一條資源記錄共有5個字段,其數(shù)據(jù)格式形如“Domain_name Time_to_live Type Class Value”,其中:

z Domain_name(域名):指出這條記錄所指向的域。通常,每個域有許多記錄。 z Time_to_live(生存時間):指出記錄的穩(wěn)定性。高度穩(wěn)定的信息被賦予一個很大的

值,變化很大的信息被賦予一個較小的值。

,

228《計算機(jī)網(wǎng)絡(luò)技術(shù)》

z Type (類型):指出記錄的類型。表9.2列出了一些重要的資源記錄類型。

z Class (類別):對于Internet 信息,它總是IN 。對于非Internet 信息,則使用其他

代碼。

z Value (值):這個字段可以是數(shù)字、域名或ASCII 串,其語義基于記錄類型。

表9.2 DNS資源記錄類型 類型

SOA 意義

認(rèn)證開始記錄。提供了關(guān)于名字服務(wù)器區(qū)域(Zone )

的主要信息資源的名字。定義了DNS 區(qū)域的一般參數(shù),

包括哪個服務(wù)器是該區(qū)域的認(rèn)證服務(wù)器

主機(jī)記錄或地址記錄,用于把一個主機(jī)名與該主機(jī)的

IP 地址靜態(tài)的關(guān)聯(lián)起來

名字服務(wù)器記錄,給出一個域的名稱服務(wù)器,使得其

他名稱服務(wù)器可以查找這個域中的名稱。

別名記錄,其使得用戶可以使用指向單個主機(jī)地址的

多個名稱

郵件交換記錄,用以告訴用戶哪個服務(wù)器可以接受傳

入這個域的郵件。

指針記錄。其使得“反向解析”得以實現(xiàn),即DNS 服

務(wù)器可以給出與一個特定IP 地址關(guān)聯(lián)的“完全限定域

名”

文本 值 該區(qū)域的參數(shù) A NS CNAME MX PTR 32比特整數(shù) 本域的服務(wù)器名 域名 優(yōu)先權(quán)和接收電子郵件的域名 IP 地址的域名 TXT 未解釋的ASCII 文本

圖9.3 DNS數(shù)據(jù)庫的示例

,

第9章 應(yīng)用層 229

9.3 Web服務(wù)

萬維網(wǎng)WWW(World Wide Web)是因特網(wǎng)上發(fā)展最快同時又使用最多的一項服務(wù),它可以提供包括文本、圖形、聲音和視頻等在內(nèi)的多媒體信息的瀏覽。

萬維網(wǎng)起源于1989年歐洲粒子物理研究室CERN 。其目的是收集時刻變化的報告、藍(lán)圖、繪制圖、照片和其他文獻(xiàn)。鏈接文檔的萬維網(wǎng)Web 的最初計劃是由CERN 的物理學(xué)家Tim Berners-Lee于1989年3月提出的,第一個原型(基于文本的)于18個月后運(yùn)行。1991年12月在德克薩斯州的San Antonio 91超文本會議上進(jìn)行了一次公開演示,次年繼續(xù)發(fā)展,并于1993年2月,在第一個圖形界面Mosaic 的發(fā)布時達(dá)到了其發(fā)展的高峰,現(xiàn)在WWW 已經(jīng)成為因特網(wǎng)上不可缺少的主流應(yīng)用。

9.3.1Web 的基本概念

WWW 由遍布在因特網(wǎng)中的被稱為WWW 服務(wù)器(又稱為Web 服務(wù)器)的計算機(jī)組成,是一個容納各種類型信息的集合。從用戶的角度看,Web 由龐大的、世界范圍的文檔集合而成,簡稱為頁面(page )。頁面具有嚴(yán)格的格式,頁面是用超文本標(biāo)識語言HTML (Hyper Text Markup Language)寫成的,存放在Web 服務(wù)器上。每一頁面可以包含到世界上任何地方的其他相關(guān)頁面的超鏈接(Hyperlink ),這種能夠指向其他頁面的頁被稱為超文本(Hypertext )。

用戶使用瀏覽器總是從訪問某個主頁(Homepage )開始的。由于頁面中可能包含了超鏈接,所以用戶可以跟隨超鏈接到它所指向的其他頁面,并且這一過程可以被無限制的重復(fù)。通過這種方法用戶可瀏覽到大量的相互鏈接的信息。下面我們來介紹一下WWW 中常用的一些術(shù)語。

1) 超文本標(biāo)記語言(HTML )

HTML 是ISO 標(biāo)準(zhǔn)8879-標(biāo)準(zhǔn)通用標(biāo)識語言SGML (Standard Generalized Markup Language )在萬維網(wǎng)上的應(yīng)用。所謂標(biāo)識語言就是格式化的語言,存在于WWW 服務(wù)上的頁,就是由HTML 描述的。它使用一些約定的標(biāo)記對WWW上各種信息(包括文字、聲音、圖形、圖像、視頻等)、格式以及超級鏈接進(jìn)行描述。當(dāng)用戶瀏覽WWW上的信息時,瀏覽器會自動解釋這些標(biāo)記的含義,并將其顯示為用戶在屏幕上所看到的網(wǎng)頁。

一個HTML 文本包括文件頭(Head)、文件(Body)主體兩部分。其結(jié)構(gòu)如下所示:

,

230《計算機(jī)網(wǎng)絡(luò)技術(shù)》

其中,表示頁的開始,表示頁結(jié)束;它們是成對使用的。表示頭開始,表示頭結(jié)束;表示主體開始,表示主體結(jié)束,它們之間的內(nèi)容才會在瀏覽器的正文中顯示出來。HMTL 的標(biāo)識符有很多,有興趣的同學(xué)可以查看有關(guān)網(wǎng)頁制作方法的書籍。

2) 超文本傳輸協(xié)議(HTTP )

超文本傳輸協(xié)議HTTP (Hypertext Transfer protocol)是用來在瀏覽器和WWW 服務(wù)器之間傳送超文本的協(xié)議。HTTP 協(xié)議是一種面向?qū)ο蟮膮f(xié)議,它由兩部分組成:從瀏覽器到服務(wù)器的請求集和從服務(wù)器到瀏覽器的應(yīng)答集。為了保證WWW 客戶機(jī)與WWW 服務(wù)器之間通信不會產(chǎn)生二義性,HTTP 精確定義了請求報文和響應(yīng)報文的格式。HTTP 會話過程包括連接、請求、應(yīng)答和關(guān)閉四個步驟,如圖9.4所示。

服務(wù)器客戶端

圖9.4 HTTP會話過程

3) 統(tǒng)一資源定位器URL

我們已經(jīng)知道WWW 是以頁面的形式來組織信息的。那么怎樣來識別不同的頁面,怎樣才能知道頁面在哪個位置,以及如何訪問頁面呢?為了解決這個問題,WWW 采用了統(tǒng)一資源定位器URL (Uniform Resource Locator)的方法。

URL 是在因特網(wǎng)上唯一確定資源位置的方法,其基本格式為:

協(xié)議://主機(jī)域名/資源文件名

其中,“協(xié)議(protocol )”用來指明資源類型,除了WWW 用的HTTP 協(xié)議之外,還可以是FTP 、TELNET 等協(xié)議;“主機(jī)域名”表示資源所在機(jī)器的DNS 名字;“資源文件名”用以提出資源在所在機(jī)器上的位置,包含路徑和文件名,通常形為“目錄名/子目錄名/文件名”, 也可以不含有路徑。例如,溫州大學(xué)的WWW 主頁的URL 就表示為“http ://www.wzu.edu.cn/index.php”。

在輸入URL 時,協(xié)議和主機(jī)域名不分字母的大小寫,但目錄和文件名則可能區(qū)分字母的大小寫。這是因為大多數(shù)服務(wù)器安裝了UNIX 操作系統(tǒng),而UNIX 的文件系統(tǒng)是區(qū)分文件名的大小寫的。

,

第9章 應(yīng)用層 231

9.3.2WWW 服務(wù)的實現(xiàn)過程

WWW以客戶機(jī)/服務(wù)器(Client/server)的模式進(jìn)行工作。運(yùn)行WWW 服務(wù)器程序并提供WWW 服務(wù)的機(jī)器被稱為WWW 服務(wù)器;在客戶端,用戶通過一個被稱為瀏覽器(browser )的交互式程序來獲得WWW 服務(wù)。常用到的瀏覽器有Mosaic 、Netscape 和Internet explorer 等。

在服務(wù)器端,對于每個WWW 服務(wù)器站點(diǎn),都有一個關(guān)于TCP 的80端口的監(jiān)聽(注:80為HTTP 缺省的TCP 端口) ,看是否有從客戶端(通常是瀏覽器)過來的連接。在客戶端,當(dāng)瀏覽器在其地址欄里輸入一個URL 或者單擊WEB 頁上的一個超鏈接時,WEB 瀏覽器就要通過解析器對域名進(jìn)行解析以獲得相應(yīng)的IP 地址。然后,以該IP 地址為目標(biāo)地址,以HTTP 所對應(yīng)的TCP 端口為源端口與服務(wù)器建立一個TCP 連接。連接建立之后,客戶端的瀏覽器使用HTTP 協(xié)議中的“GET ”功能向WWW 服務(wù)器發(fā)出指定的WWW 頁面請求,服務(wù)器收到該請求后將根據(jù)客戶端所要求的路徑和文件名使用HTTP 協(xié)議中的“PUT ”功能將相應(yīng)HTML 文檔回送到客戶端,如果客戶端沒有指明相應(yīng)的文件名,則由服務(wù)器返回一個缺省的HTML 頁面。頁面?zhèn)魉屯戤吅?,中止相?yīng)的TCP 連接。

下面我們以一個具體的例子來Web 服務(wù)的實現(xiàn)過程。假設(shè)有用戶要訪問溫州大學(xué)主頁 http://www.wzu.edu.cn/index.php,則瀏覽器與服務(wù)器的信息交互過程如下:

1) 瀏覽器確定URL 。

2) 瀏覽器向DNS 獲取web 服務(wù)器www.wzu.edu.cn 的IP 地址。

3) DNS 服務(wù)器以相應(yīng)的IP 地址218.75.16.107應(yīng)答。

4) 瀏覽器和IP 地址為218.75.16.107的主機(jī)的80端口建立一條TCP 連接。;

5) 瀏覽器執(zhí)行HTTP 協(xié)議,發(fā)送GET “/index.php”命令,請求讀取該文件。

6) www.wzu.edu.cn 服務(wù)器返回“/index.php”文件到客戶端。

7) 釋放TCP 連接。

8) 瀏覽器顯示“/index.php”中的所有正文和圖像。

自WWW 服務(wù)問世以來,其已取代電子郵件服務(wù)成為因特網(wǎng)上最為廣泛的服務(wù)。除了普通的頁面瀏覽外,WWW 服務(wù)中的瀏覽器/服務(wù)器(brower/server,簡稱B/S)模式還取代了傳統(tǒng)的C/S模式,被廣泛用于網(wǎng)絡(luò)數(shù)據(jù)庫應(yīng)用開發(fā)中。

9.4 E-mail服務(wù)

電子郵件(Electronic Mail,簡稱E-mail )是因特網(wǎng)上最受歡迎也最為廣泛的應(yīng)用之一。電子郵件服務(wù)Email 是一種通過計算機(jī)網(wǎng)絡(luò)與其它用戶進(jìn)行聯(lián)系的快速、簡便、高效、廉價的現(xiàn)代化通信手段。電子郵件之所以受到廣大用戶的喜愛,是因為與傳統(tǒng)通信方式相比,其具有以下明顯的優(yōu)點(diǎn):

z 成本低。與傳統(tǒng)的郵件系統(tǒng)相比,電子郵件費(fèi)用很低。傳統(tǒng)的國內(nèi)特快遞需20元

人民幣,國際快遞則更貴,而通過電子郵件將信件發(fā)送外國外,可能只需付幾分

錢的上網(wǎng)費(fèi)。

,

232《計算機(jī)網(wǎng)絡(luò)技術(shù)》

z 速度快。電子郵件一般只需幾秒鐘就可以到達(dá)目的地,遠(yuǎn)比人工郵件傳遞速度要

迅速。而且比較可靠;

z 安全與可靠性高。使用電子郵件不必?fù)?dān)心損壞,傳統(tǒng)的郵件在投遞過程中,有可

能信件被損壞,而使用電子郵件則不必?fù)?dān)心這一點(diǎn);

z 可達(dá)到范圍廣。電子郵件可以到達(dá)因特網(wǎng)可達(dá)的任何地方;并且可以實現(xiàn)一對多

的郵件傳送,即可以一次同時向多人發(fā)出多個內(nèi)容相同的郵件。

z 內(nèi)容表達(dá)形式多樣。電子郵件可以將文字,圖像,語音等多種類型的信息集成在

一個郵件中傳送,因此它成為多媒體信息傳送的重要手段。

那么電子郵件是如何通過網(wǎng)絡(luò)被發(fā)送和接收出去的呢?首先電子郵件要有自己規(guī)范的格式,就好比我們使用普通的郵政系統(tǒng)要遵循標(biāo)準(zhǔn)的郵件格式一樣。

電子郵件的格式由信封和內(nèi)容兩大部分,即郵件頭(header )和郵件主體(body )兩部分。郵件頭包括收信人的E-mail 地址、發(fā)信人的E-mail 地址、發(fā)送日期、標(biāo)題和發(fā)送優(yōu)先級等,其中,前兩項是必選的。郵件主體才是發(fā)件人和收件人要處理的內(nèi)容,早期的電子郵件系統(tǒng)只能傳遞文本信息,而通過使用多用途因特網(wǎng)郵件擴(kuò)展協(xié)議MIME (Multipurpose Internet Mail Extensions),現(xiàn)在還可以發(fā)送語音,圖像和視頻等信息。對于E-mail 主體不存在格式上的統(tǒng)一要求,但對信封即郵件頭有嚴(yán)格的格式要求,尤其是E-mail 地址。

E-mail 地址的標(biāo)準(zhǔn)格式為:<用戶名>@主機(jī)域名。其中,用戶名指用戶在某個郵件服務(wù)器上注冊的用戶標(biāo)識,相當(dāng)于是他的一個私人郵箱,用戶名通常由用戶自行選定,但在同一個郵件服務(wù)器上必須是惟一的;@為分隔符,我們一般把它讀為英文的“at ”;主機(jī)域名是指信箱所在的郵件服務(wù)器的域名。例如zcr@mail.wzu.edu.cn,表示在溫州大學(xué)的郵件服務(wù)器上的用戶名為ZCR 的用戶信箱。

有了標(biāo)準(zhǔn)的電子郵件格式外,電子郵件的發(fā)送與接收還要依托由用戶代理、郵件服務(wù)器和郵件協(xié)議組成的電子郵件系統(tǒng)。圖9.5給出了電子郵件系統(tǒng)的簡單示意圖。

SMTP

圖9.5 電子郵件系統(tǒng)的組成

其中,用戶代理運(yùn)行在客戶機(jī)上的一個本地程序,它提供命令行方式、菜單方式或圖形方式的界面來與電子郵件系統(tǒng)交互,允許人們讀取和發(fā)送電子郵件,如outlook express或hotmail 等。郵件服務(wù)器包括郵件發(fā)送服務(wù)器和郵件接收服務(wù)器。顧名思義,所謂郵件發(fā)送服務(wù)器是指為用戶提供郵件發(fā)送功能的郵件服務(wù)器,如圖中的SMTP 服務(wù)器;而郵件接收服務(wù)器是指為用戶提供郵件接收功能的郵件服務(wù)器,如圖中的POP3服務(wù)器。用戶在發(fā)送郵件時,要使用郵件發(fā)送協(xié)議,常見的郵件發(fā)送協(xié)議有簡單郵件傳輸協(xié)議SMTP (simple mail transter protocol)和MIME 協(xié)議,前者只能傳輸文本信息,后者則可以傳輸包括文本、聲音、圖象等在內(nèi)的多媒體信息。當(dāng)用戶代理向電子郵件發(fā)送服務(wù)器發(fā)送電子郵件時或郵件發(fā)送

標(biāo)簽: