計算機(jī)網(wǎng)絡(luò)六章應(yīng)用層_第1頁
計算機(jī)網(wǎng)絡(luò)六章應(yīng)用層_第2頁
計算機(jī)網(wǎng)絡(luò)六章應(yīng)用層_第3頁
計算機(jī)網(wǎng)絡(luò)六章應(yīng)用層_第4頁
計算機(jī)網(wǎng)絡(luò)六章應(yīng)用層_第5頁
已閱讀5頁,還剩174頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

計算機(jī)網(wǎng)絡(luò)(第6版)第6章應(yīng)用層第6章應(yīng)用層6.1域名系統(tǒng)DNS 6.1.1域名系統(tǒng)概述

6.1.2因特網(wǎng)的域名結(jié)構(gòu)

6.1.3域名服務(wù)器6.2文件傳送協(xié)議

6.2.1FTP概述

6.2.2FTP的基本工作原理

6.2.3簡單文件傳送協(xié)議TFTP

第6章應(yīng)用層(續(xù))6.3遠(yuǎn)程終端協(xié)議TELNET6.4萬維網(wǎng)WWW 6.4.1概述

6.4.2統(tǒng)一資源定位符URL 6.4.3超文本傳送協(xié)議HTTP 6.4.4萬維網(wǎng)的文檔

6.4.5萬維網(wǎng)的信息檢索系統(tǒng)

6.4.6博客、微博和輕博

第6章應(yīng)用層(續(xù))

6.5電子郵件

6.5.1電子郵件概述

6.5.2簡單郵件傳送協(xié)議SMTP 6.5.3電子郵件的信息格式

6.5.4郵件讀取協(xié)議POP3 6.5.5基于萬維網(wǎng)的電子郵件6.5.6通用因特網(wǎng)郵件擴(kuò)充MIME6.6動態(tài)主機(jī)配置協(xié)議DHCP6.7簡單網(wǎng)絡(luò)管理協(xié)議SNMP應(yīng)用層協(xié)議的特點每個應(yīng)用層協(xié)議都是為了解決某一類應(yīng)用問題,而問題的解決又往往是通過位于不同主機(jī)中的多個應(yīng)用進(jìn)程之間的通信和協(xié)同工作來完成的。應(yīng)用層的具體內(nèi)容就是規(guī)定應(yīng)用進(jìn)程在通信時所遵循的協(xié)議。應(yīng)用層的許多協(xié)議都是基于客戶服務(wù)器方式??蛻?client)和服務(wù)器(server)都是指通信中所涉及的兩個應(yīng)用進(jìn)程??蛻舴?wù)器方式所描述的是進(jìn)程之間服務(wù)和被服務(wù)的關(guān)系??蛻羰欠?wù)請求方,服務(wù)器是服務(wù)提供方。

6.1域名系統(tǒng)DNS

6.1.1域名系統(tǒng)概述許多應(yīng)用層軟件經(jīng)常直接使用域名系統(tǒng)

DNS(DomainNameSystem),用來把便于人們使用的機(jī)器名字轉(zhuǎn)換為IP地址。但計算機(jī)的用戶只是間接而不是直接使用域名系統(tǒng)。(用戶角度與計算機(jī)角度)因特網(wǎng)采用層次結(jié)構(gòu)的命名樹作為主機(jī)的名字,并使用分布式的域名系統(tǒng)DNS。名字到IP地址的解析是由若干個域名服務(wù)器程序完成的。域名服務(wù)器程序在專設(shè)的結(jié)點上運行,運行該程序的機(jī)器稱為域名服務(wù)器。

6.1.2因特網(wǎng)的域名結(jié)構(gòu)因特網(wǎng)采用了層次樹狀結(jié)構(gòu)的命名方法。任何一個連接在因特網(wǎng)上的主機(jī)或路由器,都有一個唯一的層次結(jié)構(gòu)的名字,即域名。域名的結(jié)構(gòu)由標(biāo)號序列組成,各標(biāo)號之間用點隔開:

….

三級域名.

二級域名.

頂級域名各標(biāo)號分別代表不同級別的域名。域名只是個邏輯概念域名只是個邏輯概念,并不代表計算機(jī)所在的物理地點。變長的域名和使用有助記憶的字符串,是為了便于人來使用。而IP地址是定長的32位二進(jìn)制數(shù)字則非常便于機(jī)器進(jìn)行處理。域名中的“點”和點分十進(jìn)制IP地址中的“點”并無一一對應(yīng)的關(guān)系。點分十進(jìn)制IP地址中一定是包含三個“點”,但每一個域名中“點”的數(shù)目則不一定正好是三個。頂級域名TLD

(TopLevelDomain)(1)國家頂級域名nTLD:如:.cn表示中國,.us表示美國,.uk表示英國,等等。(2)通用頂級域名gTLD:最早的頂級域名是:(公司和企業(yè))

.net(網(wǎng)絡(luò)服務(wù)機(jī)構(gòu))

.org(非贏利性組織)

.edu(美國專用的教育機(jī)構(gòu)()

.gov(美國專用的政府部門)

.mil(美國專用的軍事部門)

.int(國際組織)頂級域名TLD(續(xù))(3)基礎(chǔ)結(jié)構(gòu)域名(infrastructuredomain):這種頂級域名只有一個,即arpa,用于反向域名解析,因此又稱為反向域名。新增加了下列的通用頂級域名.aero(航空運輸企業(yè)).biz(公司和企業(yè)).cat(加泰隆人的語言和文化團(tuán)體).coop(合作團(tuán)體).info(各種情況).jobs(人力資源管理者).mobi(移動產(chǎn)品與服務(wù)的用戶和提供者).museum(博物館).name(個人).pro(有證書的專業(yè)人員).travel(旅游業(yè))根四級域名mail…www…bjeducom…cctvibmhp二級域名pkutsinghua…三級域名mailwww…comnetorgedugovaerocnuk…頂級域名……因特網(wǎng)的域名空間6.1.3域名服務(wù)器一個服務(wù)器所負(fù)責(zé)管轄的(或有權(quán)限的)范圍叫做區(qū)(zone)。各單位根據(jù)具體情況來劃分自己管轄范圍的區(qū)。但在一個區(qū)中的所有節(jié)點必須是能夠連通的。每一個區(qū)設(shè)置相應(yīng)的權(quán)限域名服務(wù)器,用來保存該區(qū)中的所有主機(jī)的域名到IP地址的映射。DNS服務(wù)器的管轄范圍不是以“域”為單位,而是以“區(qū)”為單位。區(qū)是DNS服務(wù)器實際管轄的范圍。區(qū)小于等于域。區(qū)的不同劃分方法舉例域區(qū)

abcxuvwty(a)區(qū)=域(b)區(qū)<域域區(qū)

區(qū)

abcxuvwtycomeduorg根comeduorg根樹狀結(jié)構(gòu)的DNS域名服務(wù)器根域名服務(wù)器org域名服務(wù)器com域名服務(wù)器edu域名服務(wù)器…

域名服務(wù)器abc公司有兩個權(quán)限域名服務(wù)器權(quán)限域名服務(wù)器根域名服務(wù)器頂級域名服務(wù)器

域名服務(wù)器域名服務(wù)器有以下四種類型根域名服務(wù)器頂級域名服務(wù)器權(quán)限域名服務(wù)器本地域名服務(wù)器根域名服務(wù)器

——最高層次的域名服務(wù)器——根域名服務(wù)器是最高層最重要的域名服務(wù)器。所有的根域名服務(wù)器都知道所有的頂級域名服務(wù)器的域名和IP地址。不管是哪一個本地域名服務(wù)器,若要對因特網(wǎng)上任何一個域名進(jìn)行解析,只要自己無法解析,就首先求助于根域名服務(wù)器。在因特網(wǎng)上共有13個不同IP地址的根域名服務(wù)器,它們的名字是用一個英文字母命名,從a一直到m(前13個字母)。根域名服務(wù)器共有13套裝置

(不是13個機(jī)器)這些根域名服務(wù)器相應(yīng)的域名分別是

實際上,到2006年底全世界已經(jīng)安裝了一百多個根域名服務(wù)器機(jī)器,分布在世界各地。這樣做的目的是為了方便用戶,使世界上大部分DNS域名服務(wù)器都能就近找到一個根域名服務(wù)器。舉例:根域名服務(wù)器f的地點分布圖

根域名服務(wù)器并不直接把域名直接轉(zhuǎn)換成IP地址。在使用迭代查詢時,根域名服務(wù)器把下一步應(yīng)當(dāng)找的頂級域名服務(wù)器的IP地址告訴本地域名服務(wù)器。共40個機(jī)器頂級域名服務(wù)器

(即TLD服務(wù)器)這些域名服務(wù)器負(fù)責(zé)管理在該頂級域名服務(wù)器注冊的所有二級域名。當(dāng)收到DNS查詢請求時,就給出相應(yīng)的回答(可能是最后的結(jié)果,也可能是下一步應(yīng)當(dāng)找的域名服務(wù)器的IP地址)。權(quán)限域名服務(wù)器這就是前面已經(jīng)講過的負(fù)責(zé)一個區(qū)的域名服務(wù)器。當(dāng)一個權(quán)限域名服務(wù)器還不能給出最后的查詢回答時,就會告訴發(fā)出查詢請求的DNS客戶,下一步應(yīng)當(dāng)找哪一個權(quán)限域名服務(wù)器。本地域名服務(wù)器本地域名服務(wù)器對域名系統(tǒng)非常重要。當(dāng)一個主機(jī)發(fā)出DNS查詢請求時,這個查詢請求報文就發(fā)送給本地域名服務(wù)器。每一個因特網(wǎng)服務(wù)提供者ISP,或一個大學(xué),甚至一個大學(xué)里的系,都可以擁有一個本地域名服務(wù)器,這種域名服務(wù)器有時也稱為默認(rèn)域名服務(wù)器。本地域名服務(wù)器離用戶較近,當(dāng)所要查詢的主機(jī)也屬于同一個本地ISP時,該本地域名服務(wù)器立即就能將所查詢的主機(jī)名轉(zhuǎn)換為它的IP地址。提高域名服務(wù)器的可靠性DNS域名服務(wù)器都把數(shù)據(jù)復(fù)制到幾個域名服務(wù)器來保存,其中的一個是主域名服務(wù)器,其他的是輔助域名服務(wù)器。當(dāng)主域名服務(wù)器出故障時,輔助域名服務(wù)器可以保證DNS的查詢工作不會中斷。主域名服務(wù)器定期把數(shù)據(jù)復(fù)制到輔助域名服務(wù)器中,而更改數(shù)據(jù)只能在主域名服務(wù)器中進(jìn)行。這樣就保證了數(shù)據(jù)的一致性。域名的解析過程主機(jī)向本地域名服務(wù)器的查詢一般都是采用遞歸查詢。如果主機(jī)所詢問的本地域名服務(wù)器不知道被查詢域名的IP地址,那么本地域名服務(wù)器就以DNS客戶的身份,向其他根域名服務(wù)器繼續(xù)發(fā)出查詢請求報文。本地域名服務(wù)器向根域名服務(wù)器的查詢通常是采用迭代查詢。當(dāng)根域名服務(wù)器收到本地域名服務(wù)器的迭代查詢請求報文時,要么給出所要查詢的IP地址,要么告訴本地域名服務(wù)器:“你下一步應(yīng)當(dāng)向哪一個域名服務(wù)器進(jìn)行查詢”。然后讓本地域名服務(wù)器進(jìn)行后續(xù)的查詢。本地域名服務(wù)器采用迭代查詢頂級域名服務(wù)器

權(quán)限域名服務(wù)本地域名服務(wù)器

根域名服務(wù)器

迭代查詢

的IP地址

遞歸查詢

需要查找的IP地址本地域名服務(wù)器采用遞歸查詢

(比較少用)頂級域名服務(wù)器

權(quán)限域名服務(wù)本地域名服務(wù)器

根域名服務(wù)器

遞歸查詢遞歸查詢

的IP地址

需要查找的IP地址名字的高速緩存每個域名服務(wù)器都維護(hù)一個高速緩存,存放最近用過的名字以及從何處獲得名字映射信息的記錄。可大大減輕根域名服務(wù)器的負(fù)荷,使因特網(wǎng)上的DNS查詢請求和回答報文的數(shù)量大為減少。為保持高速緩存中的內(nèi)容正確,域名服務(wù)器應(yīng)為每項內(nèi)容設(shè)置計時器,并處理超過合理時間的項(例如,每個項目只存放兩天)。當(dāng)權(quán)限域名服務(wù)器回答一個查詢請求時,在響應(yīng)中都指明綁定有效存在的時間值。增加此時間值可減少網(wǎng)絡(luò)開銷,而減少此時間值可提高域名轉(zhuǎn)換的準(zhǔn)確性。6.2文件傳送協(xié)議

6.2.1FTP概述文件傳送協(xié)議

FTP(FileTransferProtocol)是因特網(wǎng)上使用得最廣泛的文件傳送協(xié)議。FTP提供交互式的訪問,允許客戶指明文件的類型與格式,并允許文件具有存取權(quán)限。FTP屏蔽了各計算機(jī)系統(tǒng)的細(xì)節(jié),因而適合于在異構(gòu)網(wǎng)絡(luò)中任意計算機(jī)之間傳送文件。RFC959很早就成為了因特網(wǎng)的正式標(biāo)準(zhǔn)。文件傳送并非很簡單的問題網(wǎng)絡(luò)環(huán)境中的一項基本應(yīng)用就是將文件從一臺計算機(jī)中復(fù)制到另一臺可能相距很遠(yuǎn)的計算機(jī)中。初看起來,在兩個主機(jī)之間傳送文件是很簡單的事情。其實這往往非常困難。原因是眾多的計算機(jī)廠商研制出的文件系統(tǒng)多達(dá)數(shù)百種,且差別很大。6.2.2FTP的基本工作原理網(wǎng)絡(luò)環(huán)境下復(fù)制文件的復(fù)雜性:(1)計算機(jī)存儲數(shù)據(jù)的格式不同。(2)文件的目錄結(jié)構(gòu)和文件命名的規(guī)定不同。(3)對于相同的文件存取功能,操作系統(tǒng)使用的命令不同。(4)訪問控制方法不同。FTP特點文件傳送協(xié)議FTP只提供文件傳送的一些基本的服務(wù),它使用TCP可靠的運輸服務(wù)。FTP的主要功能是減少或消除在不同操作系統(tǒng)下處理文件的不兼容性。FTP使用客戶服務(wù)器方式。一個FTP服務(wù)器進(jìn)程可同時為多個客戶進(jìn)程提供服務(wù)。FTP的服務(wù)器進(jìn)程由兩大部分組成:一個主進(jìn)程,負(fù)責(zé)接受新的請求;另外有若干個從屬進(jìn)程,負(fù)責(zé)處理單個請求。主進(jìn)程的工作步驟如下打開熟知端口(端口號為21),使客戶進(jìn)程能夠連接上。等待客戶進(jìn)程發(fā)出連接請求。啟動從屬進(jìn)程來處理客戶進(jìn)程發(fā)來的請求。從屬進(jìn)程對客戶進(jìn)程的請求處理完畢后即終止,但從屬進(jìn)程在運行期間根據(jù)需要還可能創(chuàng)建其他一些子進(jìn)程?;氐降却隣顟B(tài),繼續(xù)接受其他客戶進(jìn)程發(fā)來的請求。主進(jìn)程與從屬進(jìn)程的處理是并發(fā)地進(jìn)行。兩個連接控制連接和數(shù)據(jù)連接控制連接在整個會話期間一直保持打開,F(xiàn)TP客戶發(fā)出的傳送請求通過控制連接發(fā)送給服務(wù)器端的控制進(jìn)程,但控制連接不用來傳送文件。實際用于傳輸文件的是“數(shù)據(jù)連接”。服務(wù)器端的控制進(jìn)程在接收到FTP客戶發(fā)送來的文件傳輸請求后就創(chuàng)建“數(shù)據(jù)傳送進(jìn)程”和“數(shù)據(jù)連接”,用來連接客戶端和服務(wù)器端的數(shù)據(jù)傳送進(jìn)程。數(shù)據(jù)傳送進(jìn)程實際完成文件的傳送,在傳送完畢后關(guān)閉“數(shù)據(jù)傳送連接”并結(jié)束運行。FTP使用的兩個TCP連接控制進(jìn)程FTP客戶端FTP服務(wù)器端因特網(wǎng)TCP控制連接TCP數(shù)據(jù)連接用戶界面控制進(jìn)程數(shù)據(jù)傳送進(jìn)程數(shù)據(jù)傳送進(jìn)程

當(dāng)客戶進(jìn)程向服務(wù)器進(jìn)程發(fā)出建立連接請求時,要尋找連接服務(wù)器進(jìn)程的熟知端口(21),同時還要告訴服務(wù)器進(jìn)程自己的另一個端口號碼,用于建立數(shù)據(jù)傳送連接。接著,服務(wù)器進(jìn)程用自己傳送數(shù)據(jù)的熟知端口(20)與客戶進(jìn)程所提供的端口號碼建立數(shù)據(jù)傳送連接。由于

FTP

使用了兩個不同的端口號,所以數(shù)據(jù)連接與控制連接不會發(fā)生混亂。

兩個不同的端口號使協(xié)議更加簡單和更容易實現(xiàn)。在傳輸文件時還可以利用控制連接(例如,客戶發(fā)送請求終止傳輸)。

使用兩個不同端口號的好處6.3按遠(yuǎn)程終端協(xié)議TELNETTELNET是一個簡單的遠(yuǎn)程終端協(xié)議,也是因特網(wǎng)的正式標(biāo)準(zhǔn)。用戶用TELNET就可在其所在地通過TCP連接注冊(即登錄)到遠(yuǎn)地的另一個主機(jī)上(使用主機(jī)名或IP地址)。TELNET能將用戶的擊鍵傳到遠(yuǎn)地主機(jī),同時也能將遠(yuǎn)地主機(jī)的輸出通過TCP連接返回到用戶屏幕。這種服務(wù)是透明的,因為用戶感覺到好像鍵盤和顯示器是直接連在遠(yuǎn)地主機(jī)上??蛻舴?wù)器方式現(xiàn)在由于PC機(jī)的功能越來越強,用戶已較少使用TELNET了。TELNET也使用客戶服務(wù)器方式。在本地系統(tǒng)運行TELNET客戶進(jìn)程,而在遠(yuǎn)地主機(jī)則運行TELNET服務(wù)器進(jìn)程。和FTP的情況相似,服務(wù)器中的主進(jìn)程等待新的請求,并產(chǎn)生從屬進(jìn)程來處理每一個連接。TELNET使用

網(wǎng)絡(luò)虛擬終端NVT格式因特網(wǎng)TCP連接

客戶端

服務(wù)器端

使用客戶端的格式

使用服務(wù)器端的格式

使用NVT格式客戶服務(wù)器網(wǎng)絡(luò)虛擬終端NVT格式客戶軟件把用戶的擊鍵和命令轉(zhuǎn)換成NVT格式,并送交服務(wù)器。服務(wù)器軟件把收到的數(shù)據(jù)和命令,從NVT格式轉(zhuǎn)換成遠(yuǎn)地系統(tǒng)所需的格式。向用戶返回數(shù)據(jù)時,服務(wù)器把遠(yuǎn)地系統(tǒng)的格式轉(zhuǎn)換為NVT格式,本地客戶再從NVT格式轉(zhuǎn)換到本地系統(tǒng)所需的格式。6.4萬維網(wǎng)WWW

6.4.1萬維網(wǎng)概述萬維網(wǎng)

WWW(WorldWideWeb)并非某種特殊的計算機(jī)網(wǎng)絡(luò)。萬維網(wǎng)是一個大規(guī)模的、聯(lián)機(jī)式的信息儲藏所。萬維網(wǎng)用鏈接的方法能非常方便地從因特網(wǎng)上的一個站點訪問另一個站點,從而主動地按需獲取豐富的信息。這種訪問方式稱為“鏈接”。萬維網(wǎng)提供分布式服務(wù)

萬維網(wǎng)站點A萬維網(wǎng)站點C萬維網(wǎng)站點E萬維網(wǎng)站點D萬維網(wǎng)站點B鏈接到鏈接到鏈接到鏈接到鏈接到鏈接到

超媒體與超文本萬維網(wǎng)是分布式超媒體(hypermedia)系統(tǒng),它是超文本(hypertext)系統(tǒng)的擴(kuò)充。一個超文本由多個信息源鏈接成。利用一個鏈接可使用戶找到另一個文檔。這些文檔可以位于世界上任何一個接在因特網(wǎng)上的超文本系統(tǒng)中。超文本是萬維網(wǎng)的基礎(chǔ)。超媒體與超文本的區(qū)別是文檔內(nèi)容不同。超文本文檔僅包含文本信息,而超媒體文檔還包含其他表示方式的信息,如圖形、圖像、聲音、動畫,甚至活動視頻圖像。

萬維網(wǎng)的工作方式萬維網(wǎng)以客戶服務(wù)器方式工作。瀏覽器就是在用戶計算機(jī)上的萬維網(wǎng)客戶程序。萬維網(wǎng)文檔所駐留的計算機(jī)則運行服務(wù)器程序,因此這個計算機(jī)也稱為萬維網(wǎng)服務(wù)器。客戶程序向服務(wù)器程序發(fā)出請求,服務(wù)器程序向客戶程序送回客戶所要的萬維網(wǎng)文檔。在一個客戶程序主窗口上顯示出的萬維網(wǎng)文檔稱為頁面(page)。萬維網(wǎng)必須解決的問題(1)怎樣標(biāo)志分布在整個因特網(wǎng)上的萬維網(wǎng)文檔?使用統(tǒng)一資源定位符

URL(UniformResourceLocator)來標(biāo)志萬維網(wǎng)上的各種文檔。使每一個文檔在整個因特網(wǎng)的范圍內(nèi)具有唯一的標(biāo)識符URL。萬維網(wǎng)必須解決的問題(2)用何協(xié)議實現(xiàn)萬維網(wǎng)上各種超鏈的鏈接?在萬維網(wǎng)客戶程序與萬維網(wǎng)服務(wù)器程序之間進(jìn)行交互所使用的協(xié)議,是超文本傳送協(xié)議

HTTP(HyperTextTransferProtocol)。HTTP是一個應(yīng)用層協(xié)議,它使用TCP連接進(jìn)行可靠的傳送。萬維網(wǎng)必須解決的問題(3)怎樣使各種萬維網(wǎng)文檔都能在因特網(wǎng)上的各種計算機(jī)上顯示出來,同時使用戶清楚地知道在什么地方存在著超鏈?超文本標(biāo)記語言

HTML(HyperTextMarkupLanguage)使得萬維網(wǎng)頁面的設(shè)計者可以很方便地用一個超鏈從本頁面的某處鏈接到因特網(wǎng)上的任何一個萬維網(wǎng)頁面,并且能夠在自己的計算機(jī)屏幕上將這些頁面顯示出來。萬維網(wǎng)必須解決的問題(4)怎樣使用戶能夠很方便地找到所需的信息?為了在萬維網(wǎng)上方便地查找信息,用戶可使用各種的搜索工具(即搜索引擎)。6.4.2統(tǒng)一資源定位符URL

1.URL的格式統(tǒng)一資源定位符URL是對可以從因特網(wǎng)上得到的資源的位置和訪問方法的一種簡潔的表示。URL給資源的位置提供一種抽象的識別方法,并用這種方法給資源定位。只要能夠?qū)Y源定位,系統(tǒng)就可以對資源進(jìn)行各種操作,如存取、更新、替換和查找其屬性。URL相當(dāng)于一個文件名在網(wǎng)絡(luò)范圍的擴(kuò)展。因此URL是與因特網(wǎng)相連的機(jī)器上的任何可訪問對象的一個指針。URL的一般形式由以冒號隔開的兩大部分組成,并且在URL中的字符對大寫或小寫沒有要求。URL的一般形式是:<協(xié)議>://<主機(jī)>:<端口>/<路徑>ftp——文件傳送協(xié)議FTPhttp——超文本傳送協(xié)議HTTPNews——USENET新聞URL的一般形式(續(xù))由以冒號隔開的兩大部分組成,并且在URL中的字符對大寫或小寫沒有要求。URL的一般形式是:<協(xié)議>://<主機(jī)>:<端口>/<路徑><主機(jī)>是存放資源的主機(jī)在因特網(wǎng)中的域名URL的一般形式(續(xù))由以冒號隔開的兩大部分組成,并且在URL中的字符對大寫或小寫沒有要求。URL的一般形式是:<協(xié)議>://<主機(jī)>:<端口>/<路徑>有時可省略使用HTTP的URL使用HTTP的URL的一般形式

http://<主機(jī)>:<端口>/<路徑>這表示使用HTTP協(xié)議使用HTTP的URL使用HTTP的URL的一般形式

http://<主機(jī)>:<端口>/<路徑>冒號和兩個斜線是規(guī)定的格式使用HTTP的URL使用HTTP的URL的一般形式

http://<主機(jī)>:<端口>/<路徑>這里寫主機(jī)的域名使用HTTP的URL使用HTTP的URL的一般形式

http://<主機(jī)>:<端口>/<路徑>HTTP的默認(rèn)端口號是80,通常可省略使用HTTP的URL使用HTTP的URL的一般形式

http://<主機(jī)>:<端口>/<路徑>若再省略文件的<路徑>項,則URL就指到因特網(wǎng)上的某個主頁(homepage)。6.4.3超文本傳送協(xié)議HTTP

1.HTTP的操作過程為了使超文本的鏈接能夠高效率地完成,需要用HTTP協(xié)議來傳送一切必須的信息。從層次的角度看,HTTP是面向事務(wù)的(transaction-oriented)應(yīng)用層協(xié)議,它是萬維網(wǎng)上能夠可靠地交換文件(包括文本、聲音、圖像等各種多媒體文件)的重要基礎(chǔ)。萬維網(wǎng)的工作過程因特網(wǎng)服務(wù)器

鏈接到URL的超鏈HTTP使用此TCP連接瀏覽器程序服務(wù)器程序HTTP客戶清華大學(xué)院系設(shè)置建立TCP連接釋放TCP連接

HTTP響應(yīng)報文

響應(yīng)文檔

HTTP請求報文

請求文檔用戶點擊鼠標(biāo)后所發(fā)生的事件(1)瀏覽器分析超鏈指向頁面的URL。(2)瀏覽器向DNS請求解析的IP地址。(3)域名系統(tǒng)DNS解析出清華大學(xué)服務(wù)器的IP地址。(4)瀏覽器與服務(wù)器建立TCP連接(5)瀏覽器發(fā)出取文件命令:

GET/chn/yxsz/index.htm。(6)服務(wù)器給出響應(yīng),把文件index.htm發(fā)給瀏覽器。(7)TCP連接釋放。(8)瀏覽器顯示“清華大學(xué)院系設(shè)置”文件index.htm中的所有文本。HTTP的主要特點HTTP是面向事務(wù)的客戶服務(wù)器協(xié)議。HTTP1.0協(xié)議是無狀態(tài)的(stateless)。HTTP使用了面向連接的TCP作為傳輸層協(xié)議,保證數(shù)據(jù)的可靠傳輸。HTTP不必考慮數(shù)據(jù)在傳輸過程中被丟棄后又怎樣被重傳。協(xié)議本身也是無連接的。RTTRTT請求一個萬維網(wǎng)文檔所需的時間萬維網(wǎng)服務(wù)器萬維網(wǎng)客戶發(fā)起TCP連接HTTP請求報文傳輸文檔的時間整個文檔收到時間時間HTTP響應(yīng)報文持續(xù)連接

(persistentconnection)HTTP/1.1協(xié)議使用持續(xù)連接。萬維網(wǎng)服務(wù)器在發(fā)送響應(yīng)后仍然在一段時間內(nèi)保持這條連接,使同一個客戶(瀏覽器)和該服務(wù)器可以繼續(xù)在這條連接上傳送后續(xù)的HTTP請求報文和響應(yīng)報文。這并不局限于傳送同一個頁面上鏈接的文檔,而是只要這些文檔都在同一個服務(wù)器上就行。目前一些流行的瀏覽器(例如,IE6.0)的默認(rèn)設(shè)置就是使用HTTP/1.1。持續(xù)連接的兩種工作方式非流水線方式:客戶在收到前一個響應(yīng)后才能發(fā)出下一個請求。這比非持續(xù)連接的兩倍RTT的開銷節(jié)省了建立TCP連接所需的一個RTT時間。但服務(wù)器在發(fā)送完一個對象后,其TCP連接就處于空閑狀態(tài),浪費了服務(wù)器資源。流水線方式:客戶在收到HTTP的響應(yīng)報文之前就能夠接著發(fā)送新的請求報文。一個接一個的請求報文到達(dá)服務(wù)器后,服務(wù)器就可連續(xù)發(fā)回響應(yīng)報文。使用流水線方式時,客戶訪問所有的對象只需花費一個RTT時間,使TCP連接中的空閑時間減少,提高了下載文檔效率。代理服務(wù)器

(proxyserver)代理服務(wù)器(proxyserver)又稱為萬維網(wǎng)高速緩存(Webcache),它代表瀏覽器發(fā)出HTTP請求。萬維網(wǎng)高速緩存把最近的一些請求和響應(yīng)暫存在本地磁盤中。當(dāng)與暫時存放的請求相同的新請求到達(dá)時,萬維網(wǎng)高速緩存就把暫存的響應(yīng)發(fā)送出去,而不需要按URL的地址再去因特網(wǎng)訪問該資源。

使用高速緩存可減少

訪問因特網(wǎng)服務(wù)器的時延校園網(wǎng)源點服務(wù)器2Mb/s因特網(wǎng)瀏覽器R1R2這條鏈路上的時延很大沒有使用高速緩存的情況所有萬維網(wǎng)通信量都經(jīng)過這條鏈路使用高速緩存的情況校園網(wǎng)校園網(wǎng)的高速緩存(代理服務(wù)器)源點服務(wù)器2Mb/s因特網(wǎng)瀏覽器R1R2(1)瀏覽器訪問因特網(wǎng)的服務(wù)器時,要先與校園網(wǎng)的高速緩存建立TCP連接,并向高速緩存發(fā)出HTTP請求報文使用高速緩存的情況校園網(wǎng)校園網(wǎng)的高速緩存(代理服務(wù)器)源點服務(wù)器2Mb/s因特網(wǎng)瀏覽器R1R2(2)若高速緩存已經(jīng)存放了所請求的對象,則將此對象放入HTTP響應(yīng)報文中返回給瀏覽器。使用高速緩存的情況校園網(wǎng)校園網(wǎng)的高速緩存(代理服務(wù)器)源點服務(wù)器2Mb/s因特網(wǎng)瀏覽器R1R2(3)否則,高速緩存就代表發(fā)出請求的用戶瀏覽器,與因特網(wǎng)上的源點服務(wù)器建立TCP連接,并發(fā)送HTTP請求報文。使用高速緩存的情況校園網(wǎng)校園網(wǎng)的高速緩存(代理服務(wù)器)源點服務(wù)器2Mb/s因特網(wǎng)瀏覽器R1R2(4)源點服務(wù)器將所請求的對象放在HTTP響應(yīng)報文中返回給校園網(wǎng)的高速緩存。使用高速緩存的情況校園網(wǎng)校園網(wǎng)的高速緩存(代理服務(wù)器)源點服務(wù)器2Mb/s因特網(wǎng)瀏覽器R1R2(5)高速緩存收到此對象后,先復(fù)制在其本地存儲器中(為今后使用),然后再將該對象放在HTTP響應(yīng)報文中,通過已建立的TCP連接,返回給請求該對象的瀏覽器。3.HTTP的報文結(jié)構(gòu)HTTP有兩類報文:請求報文——從客戶向服務(wù)器發(fā)送請求報文。響應(yīng)報文——從服務(wù)器到客戶的回答。由于HTTP是面向正文的(text-oriented),因此在報文中的每一個字段都是一些ASCII碼串,因而每個字段的長度都是不確定的。HTTP的報文結(jié)構(gòu)(請求報文)方法URL版本首部字段名首部行:值首部字段名值:…實體主體(通常不用)請求行空格回車換行:CRLFCRLFCRLFCRLF報文由三個部分組成,即開始行、首部行和實體主體。在請求報文中,開始行就是請求行。首部行用來說明瀏覽器、服務(wù)器或報文主體的一些信息。開始行HTTP的報文結(jié)構(gòu)(請求報文)方法URL版本首部字段名首部行:值首部字段名值:…實體主體(通常不用)請求行空格回車換行:CRLFCRLFCRLFCRLF“方法”是面向?qū)ο蠹夹g(shù)中使用的專門名詞。所謂“方法”就是對所請求的對象進(jìn)行的操作,因此這些方法實際上也就是一些命令。因此,請求報文的類型是由它所采用的方法決定的。HTTP請求報文的一些方法方法(操作)意義OPTION 請求一些選項的信息GET 請求讀取由URL所標(biāo)志的信息HEAD請求讀取由URL所標(biāo)志的信息的首部POST 給服務(wù)器添加信息(例如,注釋)PUT 在指明的URL下存儲一個文檔DELETE 刪除指明的URL所標(biāo)志的資源TRACE 用來進(jìn)行環(huán)回測試的請求報文CONNECT 用于代理服務(wù)器HTTP的報文結(jié)構(gòu)(請求報文)方法URL版本首部字段名首部行:值首部字段名值:…實體主體(通常不用)請求行空格回車換行:CRLFCRLFCRLFCRLF“URL”是所請求的資源的

URL。HTTP的報文結(jié)構(gòu)(請求報文)方法URL版本首部字段名首部行:值首部字段名值:…實體主體(通常不用)請求行空格回車換行:CRLFCRLFCRLFCRLF“版本”是

HTTP的版本。HTTP的報文結(jié)構(gòu)(響應(yīng)報文)版本狀態(tài)碼短語首部字段名首部行:值首部字段名值:…實體主體(有些響應(yīng)報文不用)狀態(tài)行空格回車換行:CRLFCRLFCRLFCRLF響應(yīng)報文的開始行是狀態(tài)行。狀態(tài)行包括三項內(nèi)容,即HTTP的版本,狀態(tài)碼,以及解釋狀態(tài)碼的簡單短語。

開始行狀態(tài)碼都是三位數(shù)字1xx表示通知信息的,如請求收到了或正在進(jìn)行處理。2xx表示成功,如接受或知道了。3xx表示重定向,表示要完成請求還必須采取進(jìn)一步的行動。4xx表示客戶的差錯,如請求中有錯誤的語法或不能完成。5xx表示服務(wù)器的差錯,如服務(wù)器失效無法完成請求。4.在服務(wù)器上存放用戶的信息萬維網(wǎng)站點使用Cookie來跟蹤用戶。Cookie表示在HTTP服務(wù)器和客戶之間傳遞的狀態(tài)信息。使用Cookie的網(wǎng)站服務(wù)器為用戶產(chǎn)生一個唯一的識別碼。利用此識別碼,網(wǎng)站就能夠跟蹤該用戶在該網(wǎng)站的活動。6.4.4萬維網(wǎng)的文檔

1.超文本標(biāo)記語言HTML要使任何一臺計算機(jī)都能顯示出任何一個萬維網(wǎng)服務(wù)器上的頁面,就必須解決頁面制作的標(biāo)準(zhǔn)化問題超文本標(biāo)記語言HTML就是一種制作萬維網(wǎng)頁面的標(biāo)準(zhǔn)語言。HTML把各種標(biāo)簽嵌入到萬維網(wǎng)的頁面中。這樣就構(gòu)成了所謂的HTML文檔。HTML文檔是一種可以用任何文本編輯器創(chuàng)建的ASCII碼文件。HTML文檔僅當(dāng)HTML文檔是以.html或.htm為后綴時,瀏覽器才對此文檔的各種標(biāo)簽進(jìn)行解釋。如HTML文檔改換以.txt為其后綴,則HTML解釋程序就不對標(biāo)簽進(jìn)行解釋,而瀏覽器只能看見原來的文本文件。當(dāng)瀏覽器從服務(wù)器讀取HTML文檔后,就按照HTML文檔中的各種標(biāo)簽,根據(jù)瀏覽器所使用的顯示器的尺寸和分辨率大小,重新進(jìn)行排版并恢復(fù)出所讀取的頁面。HTML文檔中標(biāo)簽的用法<HTML><HEAD>

<TITLE>一個HTML的例子</TITLE></HEAD><BODY><H1>HTML很容易掌握</H1><P>這是第一個段落。雖然很短,但它仍是一個段落。</P><P>這是第二個段落。</P></BODY></HTML>HTML文檔開始HTML文檔中標(biāo)簽的用法<HTML><HEAD>

<TITLE>一個HTML的例子</TITLE></HEAD><BODY><H1>HTML很容易掌握</H1><P>這是第一個段落。雖然很短,但它仍是一個段落。</P><P>這是第二個段落。</P></BODY></HTML>首部開始HTML文檔中標(biāo)簽的用法<HTML><HEAD>

<TITLE>一個HTML的例子</TITLE></HEAD><BODY><H1>HTML很容易掌握</H1><P>這是第一個段落。雖然很短,但它仍是一個段落。</P><P>這是第二個段落。</P></BODY></HTML>標(biāo)題HTML文檔中標(biāo)簽的用法<HTML><HEAD>

<TITLE>一個HTML的例子</TITLE></HEAD><BODY><H1>HTML很容易掌握</H1><P>這是第一個段落。雖然很短,但它仍是一個段落。</P><P>這是第二個段落。</P></BODY></HTML>首部結(jié)束HTML文檔中標(biāo)簽的用法<HTML><HEAD>

<TITLE>一個HTML的例子</TITLE></HEAD><BODY><H1>HTML很容易掌握</H1><P>這是第一個段落。雖然很短,但它仍是一個段落。</P><P>這是第二個段落。</P></BODY></HTML>主體開始HTML文檔中標(biāo)簽的用法<HTML><HEAD>

<TITLE>一個HTML的例子</TITLE></HEAD><BODY><H1>HTML很容易掌握</H1><P>這是第一個段落。雖然很短,但它仍是一個段落。</P><P>這是第二個段落。</P></BODY></HTML>1

級標(biāo)題<HTML><HEAD>

<TITLE>一個HTML的例子</TITLE></HEAD><BODY><H1>HTML很容易掌握</H1><P>這是第一個段落。雖然很短,但它仍是一個段落。</P><P>這是第二個段落。</P></BODY></HTML>HTML文檔中標(biāo)簽的用法第一個段落<HTML><HEAD>

<TITLE>一個HTML的例子</TITLE></HEAD><BODY><H1>HTML很容易掌握</H1><P>這是第一個段落。雖然很短,但它仍是一個段落。</P><P>這是第二個段落。</P></BODY></HTML>HTML文檔中標(biāo)簽的用法第二個段落HTML文檔中標(biāo)簽的用法<HTML><HEAD>

<TITLE>一個HTML的例子</TITLE></HEAD><BODY><H1>HTML很容易掌握</H1><P>這是第一個段落。雖然很短,但它仍是一個段落。</P><P>這是第二個段落。</P></BODY></HTML>主體結(jié)束HTML文檔中標(biāo)簽的用法<HTML><HEAD>

<TITLE>一個HTML的例子</TITLE></HEAD><BODY><H1>HTML很容易掌握</H1><P>這是第一個段落。雖然很短,但它仍是一個段落。</P><P>這是第二個段落。</P></BODY></HTML>HTML文檔結(jié)束兩種不同的鏈接遠(yuǎn)程鏈接:超鏈的終點是其他網(wǎng)點上的頁面。本地鏈接:超鏈指向本計算機(jī)中的某個文件。2.動態(tài)萬維網(wǎng)文檔靜態(tài)文檔是指該文檔創(chuàng)作完畢后就存放在萬維網(wǎng)服務(wù)器中,在被用戶瀏覽的過程中,內(nèi)容不會改變。動態(tài)文檔是指文檔的內(nèi)容是在瀏覽器訪問萬維網(wǎng)服務(wù)器時才由應(yīng)用程序動態(tài)創(chuàng)建。動態(tài)文檔和靜態(tài)文檔之間的主要差別體現(xiàn)在服務(wù)器一端。這主要是文檔內(nèi)容的生成方法不同。而從瀏覽器的角度看,這兩種文檔并沒有區(qū)別。萬維網(wǎng)服務(wù)器功能的擴(kuò)充(1)應(yīng)增加另一個應(yīng)用程序,用來處理瀏覽器發(fā)來的數(shù)據(jù),并創(chuàng)建動態(tài)文檔。(2)應(yīng)增加一個機(jī)制,用來使萬維網(wǎng)服務(wù)器把瀏覽器發(fā)來的數(shù)據(jù)傳送給這個應(yīng)用程序,然后萬維網(wǎng)服務(wù)器能夠解釋這個應(yīng)用程序的輸出,并向瀏覽器返回HTML文檔。CGI

響應(yīng)動態(tài)文檔HTTP響應(yīng)報文擴(kuò)充了功能的萬維網(wǎng)服務(wù)器萬維網(wǎng)服務(wù)器瀏覽器程序萬維網(wǎng)客戶服務(wù)器程序HTTP數(shù)據(jù)庫HTTP請求報文

請求文檔

CGI程序創(chuàng)建動態(tài)文檔

通用網(wǎng)關(guān)接口CGI

(CommonGatewayInterface)

CGI是一種標(biāo)準(zhǔn),它定義了動態(tài)文檔應(yīng)如何創(chuàng)建,輸入數(shù)據(jù)應(yīng)如何提供給應(yīng)用程序,以及輸出結(jié)果應(yīng)如何使用。萬維網(wǎng)服務(wù)器與CGI的通信遵循CGI標(biāo)準(zhǔn)。“通用”:CGI標(biāo)準(zhǔn)所定義的規(guī)則對其他任何語言都是通用的?!熬W(wǎng)關(guān)”:CGI程序的作用像網(wǎng)關(guān)?!敖涌凇保河幸恍┮讯x好的變量和調(diào)用等可供其他CGI程序使用。CGI程序CGI程序的正式名字是CGI

腳本(script)。“腳本”指的是一個程序,它被另一個程序(解釋程序)而不是計算機(jī)的處理機(jī)來解釋或執(zhí)行。腳本運行起來要比一般的編譯程序要慢,因為它的每一條指令先要被另一個程序來處理(這就要一些附加的指令),而不是直接被指令處理器來處理。3.活動萬維網(wǎng)文檔活動文檔(activedocument)技術(shù)把所有的工作都轉(zhuǎn)移給瀏覽器端。每當(dāng)瀏覽器請求一個活動文檔時,服務(wù)器就返回一段程序副本在瀏覽器端運行。活動文檔程序可與用戶直接交互,并可連續(xù)地改變屏幕的顯示。由于活動文檔技術(shù)不需要服務(wù)器的連續(xù)更新傳送,對網(wǎng)絡(luò)帶寬的要求也不會太高。

響應(yīng)程序HTTP響應(yīng)報文

程序活動文檔在客戶端創(chuàng)建萬維網(wǎng)服務(wù)器瀏覽器程序萬維網(wǎng)客戶服務(wù)器程序HTTPHTTP請求報文

請求文檔程序事先被編譯成二進(jìn)制代碼,存放為文件

程序

此程序在客戶端創(chuàng)建出活動文檔

文檔用Java技術(shù)創(chuàng)建活動文檔由美國Sun公司開發(fā)的Java

語言是一項用于創(chuàng)建和運行活動文檔的技術(shù)。在Java技術(shù)中使用“小應(yīng)用程序”(applet)來描述活動文檔程序。用戶從萬維網(wǎng)服務(wù)器下載嵌入了Java小應(yīng)用程序的HTML文檔后,可在瀏覽器的屏幕上點擊某個圖像,就可看到動畫效果,或在下拉式菜單中點擊某個項目,就可看到計算結(jié)果。Java技術(shù)是活動文檔技術(shù)的一部分。Java技術(shù)裝三個主要組成部分(1)程序設(shè)計語言。Java包含一個新的程序設(shè)計語言,用來編寫傳統(tǒng)的計算機(jī)程序和Java小應(yīng)用程序。(2)運行(runtime)環(huán)境。這是運行Java程序所必須的運行環(huán)境,其中包括Java虛擬機(jī)(簡稱為JVM),該軟件定義了Java二進(jìn)制代碼的執(zhí)行模型。(3)類庫(classlibrary)。為了更容易編寫Java小應(yīng)用程序,Java提供了強大的類庫支持。JavaJava是一種面向?qū)ο蟮母呒壵Z言,從C++派生出來的,它省略了C++很多復(fù)雜的、很少用的語言特點。Java的每一個數(shù)據(jù)項都有一個確定的類型。對數(shù)據(jù)的操作嚴(yán)格按照該數(shù)據(jù)的類型來進(jìn)行。Java的編譯程序?qū)⒃闯绦蜣D(zhuǎn)換成Java字節(jié)碼(bytecode),這是一種與機(jī)器無關(guān)的二進(jìn)制代碼。計算機(jī)程序調(diào)用解釋程序讀取字節(jié)碼,并解釋執(zhí)行。計算機(jī)硬件無關(guān)Java語言、字節(jié)碼以及Java運行系統(tǒng)都被設(shè)計成與計算機(jī)硬件無關(guān)。一旦形成了字節(jié)碼,就可在任何計算機(jī)上運行并產(chǎn)生相同的輸出。Java小應(yīng)用程序與機(jī)器無關(guān)可使在任何計算機(jī)上運行的瀏覽器程序能夠下載并運行活動文檔??杀WC活動文檔在所有的瀏覽器上產(chǎn)生同樣的正確輸出??纱蟠蟮亟档突顒游臋n的創(chuàng)建和測試費用,因為不必為每一種計算機(jī)都制作一個副本。Java解釋程序運行Java的瀏覽器需要有HTML解釋程序和Java小應(yīng)用程序解釋程序。解釋程序的核心是一個模仿計算機(jī)的簡單循環(huán)。解釋程序維持一個指令指針,在初始化時指在小應(yīng)用程序的開始處。在每一次循環(huán)操作時,解釋程序在指令指針指向的地址讀取字節(jié)碼。然后解釋程序?qū)ψ止?jié)碼進(jìn)行解碼,并完成指明的操作。4.瀏覽器的結(jié)構(gòu)與遠(yuǎn)地服務(wù)器通信輸出至顯示器從鼠標(biāo)和鍵盤輸入網(wǎng)絡(luò)接口可選客戶程序HTML解釋程序可選解釋程序控制程序驅(qū)動程序……HTTP客戶程序緩存瀏覽器的主要組成部分瀏覽器有一組客戶、一組解釋程序,以及管理這些客戶和解釋程序的控制程序??刂瞥绦蚴瞧渲械暮诵牟考忉屖髽?biāo)的點擊和鍵盤的輸入,并調(diào)用有關(guān)的組件來執(zhí)行用戶指定的操作。例如,當(dāng)用戶用鼠標(biāo)點擊一個超鏈的起點時,控制程序就調(diào)用一個客戶從所需文檔所在的遠(yuǎn)地服務(wù)器上取回該文檔,并調(diào)用解釋程序向用戶顯示該文檔。解釋程序HTML解釋程序是必不可少的,而其他的解釋程序則是可選的。HTML解釋程序的輸入就是符合HTML語法的文檔。解釋程序把HTML規(guī)格轉(zhuǎn)換為適合用戶顯示硬件的命令來處理版面的細(xì)節(jié)。許多瀏覽器還包含F(xiàn)TP客戶程序,用來獲取文件傳送服務(wù)。一些瀏覽器也包含電子郵件客戶程序,使瀏覽器能夠發(fā)送和接收電子郵件。瀏覽器中的緩存瀏覽器將它取回的每一個頁面副本都放入本地磁盤的緩存中。當(dāng)用戶用鼠標(biāo)點擊某個選項時,瀏覽器首先檢查磁盤的緩存。若緩存中保存了該項,瀏覽器就直接從緩存中得到該項副本而不必從網(wǎng)絡(luò)獲取,這樣就明顯地改善瀏覽器的運行特性。。但緩存要占用磁盤大量的空間,而瀏覽器性能的改善只有在用戶再次查看緩存中的頁面時才有幫助。許多瀏覽器允許用戶調(diào)整緩存策略。

6.4.5萬維網(wǎng)的信息檢索系統(tǒng)

全文檢索搜索和分類目錄搜索在萬維網(wǎng)中用來進(jìn)行搜索的程序叫做搜索引擎。全文檢索搜索引擎是一種純技術(shù)型的檢索工具。它的工作原理是通過搜索軟件到因特網(wǎng)上的各網(wǎng)站收集信息,找到一個網(wǎng)站后可以從這個網(wǎng)站再鏈接到另一個網(wǎng)站。然后按照一定的規(guī)則建立一個很大的在線數(shù)據(jù)庫供用戶查詢。用戶在查詢時只要輸入關(guān)鍵詞,就從已經(jīng)建立的索引數(shù)據(jù)庫上進(jìn)行查詢(并不是實時地在因特網(wǎng)上檢索到的信息)。分類目錄搜索分類目錄搜索引擎并不采集網(wǎng)站的任何信息,而是利用各網(wǎng)站向搜索引擎提交的網(wǎng)站信息時填寫的關(guān)鍵詞和網(wǎng)站描述等信息,經(jīng)過人工審核編輯后,如果認(rèn)為符合網(wǎng)站登錄的條件,則輸入到分類目錄的數(shù)據(jù)庫中,供網(wǎng)上用戶查詢。分類目錄搜索也叫做分類網(wǎng)站搜索。一些著名的搜索引擎最著名的全文檢索搜索引擎:Google(谷歌)()百度()最著名的分類目錄搜索引擎:雅虎()雅虎中國()新浪()搜狐()網(wǎng)易()垂直搜索引擎

(VerticalSearchEngine)

針對某一特定領(lǐng)域、特定人群或某一特定需求提供搜索服務(wù)。垂直搜索也是提供關(guān)鍵字來進(jìn)行搜索的,但被放到了一個行業(yè)知識的上下文中,返回的結(jié)果更傾向于信息、消息、條目等。6.4.6博客、微博和輕博

1.博客博客是萬維網(wǎng)日志(weblog)的簡稱。也有人把blog進(jìn)行音譯,譯為“部落格”,或“部落閣”。還有人用“博文”來表示“博客文章”。Weblog這個新詞是JornBarger于1997年創(chuàng)造的。簡寫的blog(這是今天最常用的術(shù)語)則是PeterMerholz于1999年創(chuàng)造的。有人把blog既當(dāng)作名詞,也當(dāng)作動詞,表示編輯博客或?qū)懖┛汀?.博客(續(xù))博客已經(jīng)極大地擴(kuò)充了因特網(wǎng)的應(yīng)用和影響。在博客出現(xiàn)以前,網(wǎng)民是因特網(wǎng)上內(nèi)容的消費者。但博客改變了這種情況,網(wǎng)民不僅是因特網(wǎng)上內(nèi)容的消費者,而且還是因特網(wǎng)上內(nèi)容的生產(chǎn)者。2.微博微博就是微型博客(microblog),又稱為微博客。微博不同于一般的博客。微博只記錄片段、碎語,三言兩語,現(xiàn)場記錄,發(fā)發(fā)感慨,曬曬心情,永遠(yuǎn)只針對一個問題進(jìn)行回答。用戶可以通過網(wǎng)頁、WAP網(wǎng)、手機(jī)短信彩信、手機(jī)客戶端等多種方式更新自己的微博。每條微博字?jǐn)?shù)限制為140字,提供插入單張圖片、視頻地址、音樂功能。3.輕博輕博就是輕博客(light

blogging)。輕博客是一種介于博客和微博之間的網(wǎng)絡(luò)服務(wù),同樣為用戶提供生成內(nèi)容表達(dá)自己的平臺。輕博可以發(fā)送博文,沒有字?jǐn)?shù)限制。輕博發(fā)表后,其界面會好看些。在輕博中,推薦與發(fā)現(xiàn)的內(nèi)容比較豐富。6.5電子郵件

6.5.1概述電子郵件(e-mail)是因特網(wǎng)上使用得最多的和最受用戶歡迎的一種應(yīng)用。電子郵件把郵件發(fā)送到收件人使用的郵件服務(wù)器,并放在其中的收件人郵箱中,收件人可隨時上網(wǎng)到自己使用的郵件服務(wù)器進(jìn)行讀取。電子郵件不僅使用方便,而且還具有傳遞迅速和費用低廉的優(yōu)點。現(xiàn)在電子郵件不僅可傳送文字信息,而且還可附上聲音和圖像。電子郵件的一些標(biāo)準(zhǔn)發(fā)送郵件的協(xié)議:SMTP讀取郵件的協(xié)議:POP3和IMAPMIME在其郵件首部中說明了郵件的數(shù)據(jù)類型(如文本、聲音、圖像、視像等),使用MIME可在郵件中同時傳送多種類型的數(shù)據(jù)。

電子郵件的最主要的組成構(gòu)件發(fā)送方郵件緩存

接收端郵件服務(wù)器用戶代理SMTPSMTPPOP3

發(fā)送端郵件服務(wù)器用戶代理用戶郵箱接收方(發(fā)送郵件)(發(fā)送郵件)(讀取郵件)因特網(wǎng)SMTPPOP3發(fā)送郵件發(fā)送郵件SMTP讀取郵件TCP連接TCP連接發(fā)送方郵件服務(wù)器SMTP客戶POP3客戶發(fā)件人用戶代理接收方郵件服務(wù)器SMTP服務(wù)器POP3服務(wù)器SMTP服務(wù)器SMTP客戶收件人用戶代理TCP連接用戶代理UA(UserAgent)用戶代理UA就是用戶與電子郵件系統(tǒng)的接口,是電子郵件客戶端軟件。用戶代理的功能:撰寫、顯示、處理和通信。郵件服務(wù)器的功能是發(fā)送和接收郵件,同時還要向發(fā)信人報告郵件傳送的情況(已交付、被拒絕、丟失等)。郵件服務(wù)器按照客戶

服務(wù)器方式工作。郵件服務(wù)器需要使用發(fā)送和讀取兩個不同的協(xié)議。應(yīng)當(dāng)注意一個郵件服務(wù)器既可以作為客戶,也可以作為服務(wù)器。例如,當(dāng)郵件服務(wù)器A向另一個郵件服務(wù)器B發(fā)送郵件時,郵件服務(wù)器A就作為SMTP

客戶,而B是SMTP

服務(wù)器。當(dāng)郵件服務(wù)器A從另一個郵件服務(wù)器B接收郵件時,郵件服務(wù)器A就作為SMTP

服務(wù)器,而B是SMTP

客戶。發(fā)送和接收電子郵件的

幾個重要步驟

發(fā)件人調(diào)用PC中的用戶代理撰寫和編輯要發(fā)送的郵件。

發(fā)件人的用戶代理把郵件用SMTP協(xié)議發(fā)給發(fā)送方郵件服務(wù)器,

SMTP服務(wù)器把郵件臨時存放在郵件緩存隊列中,等待發(fā)送。

發(fā)送方郵件服務(wù)器的SMTP客戶與接收方郵件服務(wù)器的SMTP服務(wù)器建立TCP連接,然后就把郵件緩存隊列中的郵件依次發(fā)送出去。發(fā)送和接收電子郵件的

幾個重要步驟(續(xù))

運行在接收方郵件服務(wù)器中的SMTP服務(wù)器進(jìn)程收到郵件后,把郵件放入收件人的用戶郵箱中,等待收件人進(jìn)行讀取。

收件人在打算收信時,就運行PC機(jī)中的用戶代理,使用POP3(或IMAP)協(xié)議讀取發(fā)送給自己的郵件。請注意,POP3服務(wù)器和POP3客戶之間的通信是由POP3客戶發(fā)起的。兩種通信方式推SMTP客戶把郵件推給SMTP服務(wù)器拉POP3客戶把郵件從POP3服務(wù)器拉過來如果把郵件服務(wù)器程序就在發(fā)送方和接收方的PC機(jī)中運行,那么豈不是可以直接把郵件發(fā)送到收件人的PC機(jī)中?答案為“不行”電子郵件的組成電子郵件由信封(envelope)和內(nèi)容(content)兩部分組成。電子郵件的傳輸程序根據(jù)郵件信封上的信息來傳送郵件。用戶在從自己的郵箱中讀取郵件時才能見到郵件的內(nèi)容。在郵件的信封上,最重要的就是收件人的地址。電子郵件地址的格式TCP/IP體系的電子郵件系統(tǒng)規(guī)定電子郵件地址的格式如下:收件人郵箱名@郵箱所在主機(jī)的域名(6-1)符號“@”讀作“at”,表示“在”的意思。例如,電子郵件地址郵箱所在的主機(jī)的域名在全世界必須是唯一的這個用戶名在該域名的范圍內(nèi)是唯一的。6.5.2簡單郵件傳送協(xié)議SMTPSMTP所規(guī)定的就是在兩個相互通信的SMTP進(jìn)程之間應(yīng)如何交換信息。由于SMTP使用客戶服務(wù)器方式,因此負(fù)責(zé)發(fā)送郵件的SMTP進(jìn)程就是SMTP客戶,而負(fù)責(zé)接收郵件的SMTP進(jìn)程就是SMTP服務(wù)器。SMTP規(guī)定了14條命令和21種應(yīng)答信息。每條命令用4個字母組成,而每一種應(yīng)答信息一般只有一行信息,由一個3位數(shù)字的代碼開始,后面附上(也可不附上)很簡單的文字說明。SMTP通信的三個階段1.連接建立:連接是在發(fā)送主機(jī)的SMTP客戶和接收主機(jī)的SMTP服務(wù)器之間建立的。SMTP不使用中間的郵件服務(wù)器。

2.郵件傳送3.連接釋放:郵件發(fā)送完畢后,SMTP應(yīng)釋放TCP連接。連接建立TCP連接建立后一、接收方SMTP服務(wù)器發(fā)出:220Serviceready服務(wù)器就緒二、發(fā)送方SMTP客戶發(fā)出:HELO命令,附上發(fā)送方的主機(jī)名三、接收方SMTP服務(wù)器發(fā)出:250ok或421Servicenotavailable服務(wù)器不可用郵件傳送一、MAIL命令后面加發(fā)件人地址MAILFROM:<>250OK451(處理時出錯)452(存儲空間不夠)500(命令無法識別)二、PCPT命令格式為PCPTTO<收件人地址>250OK550Nosuchuserhere三、DATE354Startmailinput;endwith<CRLF>.<CRLF>421服務(wù)器不可用500命令無法識別連接釋放SMTP客戶:QUITSMTP服務(wù)器返回:221服務(wù)關(guān)閉6.5.3電子郵件的信息格式一個電子郵件分為信封和內(nèi)容兩大部分。RFC822只規(guī)定了郵件內(nèi)容中的首部(header)格式,而對郵件的主體(body)部分則讓用戶自由撰寫。用戶寫好首部后,郵件系統(tǒng)將自動地將信封所需的信息提取出來并寫在信封上。所以用戶不需要填寫電子郵件信封上的信息。郵件內(nèi)容首部包括一些關(guān)鍵字,后面加上冒號。最重要的關(guān)鍵字是:To和Subject。郵件內(nèi)容的首部“To:”后面填入一個或多個收件人的電子郵件地址。用戶只需打開地址簿,點擊收件人名字,收件人的電子郵件地址就會自動地填入到合適的位置上?!癝ubject:”是郵件的主題。它反映了郵件的主要內(nèi)容,便于用戶查找郵件。抄送“Cc:”表示應(yīng)給某某人發(fā)送一個郵件副本?!癋rom”和“Date”表示發(fā)信人的電子郵件地址和發(fā)信日期。郵件系統(tǒng)自動填入“Reply-To”是對方回信所用的地址。

6.5.4郵件讀取協(xié)議

POP3和IMAP郵局協(xié)議POP是一個非常簡單、但功能有限的郵件讀取協(xié)議,現(xiàn)在使用的是它的第三個版本POP3。POP也使用客戶服務(wù)器的工作方式。在接收郵件的用戶PC機(jī)中必須運行POP客戶程序,而在用戶所連接的ISP的郵件服務(wù)器中則運行POP服務(wù)器程序。POP服務(wù)器只有在用戶輸入鑒別信息(用戶名和口令)后,才允許對郵箱進(jìn)行讀取POP協(xié)議的一個特點是只要用戶從POP服務(wù)器讀取了郵件,POP服務(wù)器就把該郵件刪除。課件制作人:謝希仁IMAP協(xié)議

(InternetMessageAccessProtocol)

IMAP也是按客戶服務(wù)器方式工作,現(xiàn)在較新的是版本4,即IMAP4。用戶在自己的PC機(jī)上就可以操縱ISP的郵件服務(wù)器的郵箱,就像在本地操縱一樣。因此IMAP是一個聯(lián)機(jī)協(xié)議。當(dāng)用戶PC機(jī)上的IMAP客戶程序打開IMAP服務(wù)器的郵箱時,用戶就可看到郵件的首部。若用戶需要打開某個郵件,則該郵件才傳到用戶的計算機(jī)上。課件制作人:謝希仁IMAP的特點IMAP最大的好處就是用戶可以在不同的地方使用不同的計算機(jī)隨時上網(wǎng)閱讀和處理自己的郵件。IMAP還允許收件人只讀取郵件中的某一個部分。例如,收到了一個帶有視像附件(此文件可能很大)的郵件。為了節(jié)省時間,可以先下載郵件的正文部分,待以后有時間再讀取或下載這個很長的附件。IMAP的缺點是如果用戶沒有將郵件復(fù)制到自己的PC機(jī)上,則郵件一直是存放在IMAP服務(wù)器上。因此用戶需要經(jīng)常與IMAP服務(wù)器建立連接。課件制作人:謝希仁必須注意不要將郵件讀取協(xié)議POP或IMAP與郵件傳送協(xié)議SMTP弄混。發(fā)信人的用戶代理向源郵件服務(wù)器發(fā)送郵件,以及源郵件服務(wù)器向目的郵件服務(wù)器發(fā)送郵件,都是使用SMTP協(xié)議。而POP協(xié)議或IMAP協(xié)議則是用戶從目的郵件服務(wù)器上讀取郵件所使用的協(xié)議。HTTPHTTP6.5.5基于萬維網(wǎng)的電子郵件電子郵件從A發(fā)送到網(wǎng)易郵件服務(wù)器是使用HTTP協(xié)議。兩個郵件服務(wù)器之間的傳送使用SMTP。郵件從新浪郵件服務(wù)器傳送到B是使用HTTP協(xié)議。ABSMTP網(wǎng)易郵件服務(wù)器

新浪郵件服務(wù)器

.cn6.5.6通用因特網(wǎng)郵件擴(kuò)充MIME

1.MIME概述

SMTP有以下缺點:SMTP不能傳送可執(zhí)行文件或其他的二進(jìn)制對象。SMTP限于傳送7位的ASCII碼。許多其他非英語國家的文字(如中文、俄文,甚至帶重音符號的法文或德文)就無法傳送。SMTP服務(wù)器會拒絕超過一定長度的郵件。某些SMTP的實現(xiàn)并沒有完全按照[RFC821]的SMTP標(biāo)準(zhǔn)。

MIME的特點MIME并沒有改動SMTP或取代它。MIME的意圖是繼續(xù)使用目前的[RFC822]格式,但增加了郵件主體的結(jié)構(gòu),并定義了傳送非ASCII碼的編碼規(guī)則。MIME和SMTP的關(guān)系非ASCII碼7位ASCII碼MIMESMTPMIMESMTP7位ASCII碼7位ASCII碼非ASCII碼用戶用戶MIME主要包括三個部分5

個新的郵件首部字段,它們可包含在[RFC822]首部中。這些字段提供了有關(guān)郵件主體的信息。定義了許多郵件內(nèi)容的格式,對多媒體電子郵件的表示方法進(jìn)行了標(biāo)準(zhǔn)化。定義了傳送編碼,可對任何內(nèi)容格式進(jìn)行轉(zhuǎn)換,而不會被郵件系統(tǒng)改變。MIME增加5個

新的郵件首部MIME-Version:標(biāo)志MIME的版本?,F(xiàn)在的版本號是1.0。若無此行,則為英文文本。Content-Description:這是可讀字符串,說明此郵件是什么。主要說明郵件主體是否是圖像、音頻或視頻。和郵件的主題差不多。Content-Id:郵件的唯一標(biāo)識符。Content-Transfer-Encoding:在傳送時郵件的主體是如何編碼的。Content-Type:說明郵件主題的數(shù)據(jù)類型和子類型。郵件的性質(zhì)。2.內(nèi)容傳送編碼

(Content-Transfer-Encoding)

最簡單的編碼就是7位ASCII碼,而每行不能超過1000個字符。MIME對這種由ASCII碼構(gòu)成的郵件主體不進(jìn)行任何轉(zhuǎn)換。另一種編碼稱為quoted-printable,這種編碼方法適用于當(dāng)所傳送的數(shù)據(jù)中只有少量的非ASCII碼。對于任意的二進(jìn)制文件,可用base64編碼。

內(nèi)容類型

(Content-Type)說明郵件主題的數(shù)據(jù)類型和子類型。MIME著標(biāo)準(zhǔn)規(guī)定Content-Type說明必須含有兩個標(biāo)識符,即內(nèi)容類型(type)和子類型(subtype),中間用“/”分開。

MIME標(biāo)準(zhǔn)定義了7個基本內(nèi)容類型和15種子類型。6.6動態(tài)主機(jī)配置協(xié)議DHCP為了將軟件協(xié)議做成通用的和便于移植,協(xié)議軟件的編寫者把協(xié)議軟件參數(shù)化。這就使得在很多臺計算機(jī)上使用同一個經(jīng)過編譯的二進(jìn)制代碼成為可能。一臺計算機(jī)和另一臺計算機(jī)的區(qū)別,都可通過一些不同的參數(shù)來體現(xiàn)。在軟件協(xié)議運行之前,必須給每一個參數(shù)賦值。協(xié)議配置在協(xié)議軟件中給這些參數(shù)賦值的動作叫做協(xié)議配置。一個軟件協(xié)議在使用之前必須是已正確配置的。具體的配置信息有哪些則取決于協(xié)議棧。協(xié)議配置(續(xù))需要配置的項目

(1)IP地址

(2)子網(wǎng)掩碼

(3)默認(rèn)路由器的IP地址

(4)域名服務(wù)器的IP地址這些信息通常存儲在一個配置文件中,計算機(jī)在引導(dǎo)過程中可以對這個文件進(jìn)行存取。動態(tài)主機(jī)配置協(xié)議DHCP

(DynamicHostConfigurationProtocol)

動態(tài)主機(jī)配置協(xié)議

DHCP提供了即插即用連網(wǎng)(plug-and-playnetworking)的機(jī)制。這種機(jī)制允許一臺計算機(jī)加入新的網(wǎng)絡(luò)和獲取IP地址而不用手工參與。DHCP使用客戶服務(wù)器方式。需要IP地址的主機(jī)在啟動時就向DHCP服務(wù)器廣播發(fā)送發(fā)現(xiàn)報文(DHCPDISCOVER),這時該主機(jī)就成為DHCP客戶。本地網(wǎng)絡(luò)上所有主機(jī)都能收到此廣播報文,但只有DHCP服務(wù)器才回答此廣播報文。DHCP服務(wù)器先在其數(shù)據(jù)庫中查找該計算機(jī)的配置信息。若找到,則返回找到的信息。若找不到,則從服務(wù)器的IP地址池(addresspool)中取一個地址分配給該計算機(jī)。DHCP服務(wù)器的回答報文叫做提供報文(DHCPOFFER)。

DHCP中繼代理(relayagent)并不是每個網(wǎng)絡(luò)上都有DHCP服務(wù)器,這樣會使DHCP服務(wù)器的數(shù)量太多?,F(xiàn)在是每一個網(wǎng)絡(luò)至少有一個DHCP中繼代理(通常是路由器或交換機(jī)),它配置了DHCP服務(wù)器的IP地址信息。當(dāng)DHCP中繼代理收到主機(jī)發(fā)送的發(fā)現(xiàn)報文后,就以單播方式向DHCP服務(wù)器轉(zhuǎn)發(fā)此報文,并等待其回答。收到DHCP服務(wù)器回答的提供報文后,DHCP中繼代理再將此提供報文發(fā)回給主機(jī)。DHCP中繼代理

以單播方式轉(zhuǎn)發(fā)發(fā)現(xiàn)報文主機(jī)DHCP服務(wù)器其他網(wǎng)絡(luò)DHCP中繼代理DHCPDISCOVER廣播DHCPDISCOVER單播注意:DHCP報文只是UDP用戶數(shù)據(jù)報中的數(shù)據(jù)。租用期(leaseperiod)DHCP服務(wù)器分配給DHCP客戶的IP地址的臨時的,因此DHCP客戶只能在一段有限的時間內(nèi)使用這個分配到的IP地址。DHCP協(xié)議稱這段時間為租用期。租用期的數(shù)值應(yīng)由DHCP服務(wù)器自己決定。DHCP客戶也可在自己發(fā)送的報文中(例如,發(fā)現(xiàn)報文)提出對租用期的要求。DHCP協(xié)議的工作過程客戶DHCPDISCOVER服務(wù)器6768UDPUDP客戶DHCPOFFER服務(wù)器6768UDPUDP客戶DHCPREQUEST服務(wù)器6768UDPUDP客戶DHCPACK服務(wù)器6768UDPUDP客戶DHCPREQUEST服務(wù)器6768UDPUDP客戶DHCPNACK服務(wù)器6768UDPUDP客戶DHCPACK服務(wù)器6768UDPUDP客戶DHCPRELEASE服務(wù)器6768UDPUDP服務(wù)器67UDP被動打開

:DHCP服務(wù)器被動打開UDP端口67,等待客戶端發(fā)來的報文。DHCP協(xié)議的工作過程客戶DHCPDISCOVER服務(wù)器6768UDPUDP客戶DHCPOFFER服務(wù)器6768UDPUDP客戶DHCPREQUEST服務(wù)器6768UDPUDP客戶DHCPACK服務(wù)器6768UDPUDP客戶DHCPREQUEST服務(wù)器6768UDPUDP客戶DHCPNACK服務(wù)器6768UDPUDP客戶DHCPACK服務(wù)器6768UDPUDP客戶DHCPRELEASE服務(wù)器6768UDPUDP服務(wù)器67UDP被動打開

:DHCP客戶從UDP端口68

發(fā)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論