計算機網(wǎng)絡第7版課件-第6章-應用層_第1頁
計算機網(wǎng)絡第7版課件-第6章-應用層_第2頁
計算機網(wǎng)絡第7版課件-第6章-應用層_第3頁
計算機網(wǎng)絡第7版課件-第6章-應用層_第4頁
計算機網(wǎng)絡第7版課件-第6章-應用層_第5頁
已閱讀5頁,還剩300頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

謝希仁編著計算機網(wǎng)絡(第7版)應

層第6章6.1

域名系統(tǒng)DNS6.2

文件傳送協(xié)議6.3

遠程終端協(xié)議TELNET6.4

萬維網(wǎng)WWW6.5

電子郵件6.6

動態(tài)主機配置協(xié)議DHCP6.7

簡單網(wǎng)絡管理協(xié)議SNMP6.8

應用進程跨越網(wǎng)絡的通信6.9P2P應用應用層協(xié)議的特點每個應用層協(xié)議都是為了解決某一類應用問題,而問題的解決又往往是通過位于不同主機中的多個應用進程之間的通信和協(xié)同工作來完成的。應用層的具體內(nèi)容就是規(guī)定應用進程在通信時所遵循的協(xié)議。應用層的許多協(xié)議都是基于客戶服務器方式??蛻?client)和服務器(server)都是指通信中所涉及的兩個應用進程??蛻舴掌鞣绞剿枋龅氖沁M程之間服務和被服務的關系??蛻羰欠照埱蠓?,服務器是服務提供方。6.1.1

域名系統(tǒng)概述6.1.2

互聯(lián)網(wǎng)的域名結(jié)構(gòu)6.1.3

域名服務器6.1域名系統(tǒng)DNS6.1.1域名系統(tǒng)概述許多應用層軟件經(jīng)常直接使用域名系統(tǒng)DNS(DomainNameSystem),但計算機的用戶只是間接而不是直接使用域名系統(tǒng)?;ヂ?lián)網(wǎng)采用層次結(jié)構(gòu)的命名樹作為主機的名字,并使用分布式的域名系統(tǒng)DNS。名字到IP地址的解析是由若干個域名服務器程序完成的。域名服務器程序在專設的結(jié)點上運行,運行該程序的機器稱為域名服務器。6.1.2互聯(lián)網(wǎng)的域名結(jié)構(gòu)互聯(lián)網(wǎng)采用了層次樹狀結(jié)構(gòu)的命名方法。任何一個連接在互聯(lián)網(wǎng)上的主機或路由器,都有一個唯一的層次結(jié)構(gòu)的名字,即域名。域名的結(jié)構(gòu)由標號序列組成,各標號之間用點隔開:….三級域名.二級域名.頂級域名各標號分別代表不同級別的域名。域名只是個邏輯概念域名只是個邏輯概念,并不代表計算機所在的物理地點。變長的域名和使用有助記憶的字符串,是為了便于人來使用。而IP地址是定長的32位二進制數(shù)字則非常便于機器進行處理。域名中的“點”和點分十進制IP地址中的“點”并無一一對應的關系。點分十進制IP地址中一定是包含三個“點”,但每一個域名中“點”的數(shù)目則不一定正好是三個。頂級域名TLD(TopLevelDomain)國家頂級域名nTLD,例如:.cn表示中國,.us表示美國,.uk表示英國,等等。頂級域名TLD(TopLevelDomain)通用頂級域名gTLD最早的頂級域名是:.com(公司和企業(yè)).net(網(wǎng)絡服務機構(gòu).org(非贏利性組織).edu(美國專用的教育機構(gòu)).gov(美國專用的政府部門).mil(美國專用的軍事部門).int(國際組織)頂級域名TLD(續(xù))基礎結(jié)構(gòu)域名(infrastructuredomain)這種頂級域名只有一個,即arpa,用于反向域名解析,因此又稱為反向域名。新增加了下列的通用頂級域名.aero(航空運輸企業(yè)).biz (公司和企業(yè)).cat (加泰隆人的語言和文化團體).coop(合作團體).info (各種情況).jobs (人力資源管理者).mobi(移動產(chǎn)品與服務的用戶和提供者).museum(博物館).name(個人).pro (有證書的專業(yè)人員).travel(旅游業(yè))互聯(lián)網(wǎng)的域名空間根四級域名mail…www…bjeducom…cctvibmhp二級域名pkutsinghua…三級域名mailwww…comnetorgedugovaerocnuk…頂級域名……6.1.3域名服務器一個服務器所負責管轄的(或有權(quán)限的)范圍叫做區(qū)

(zone)。各單位根據(jù)具體情況來劃分自己管轄范圍的區(qū)。但在一個區(qū)中的所有節(jié)點必須是能夠連通的。每一個區(qū)設置相應的權(quán)限域名服務器,用來保存該區(qū)中的所有主機的域名到IP地址的映射。DNS服務器的管轄范圍不是以“域”為單位,而是以“區(qū)”為單位。(b)區(qū)<域域區(qū)區(qū)abcxuvwtycomeduorg根區(qū)的不同劃分方法舉例域區(qū)abcxuvwty(a)區(qū)=域comeduorg根樹狀結(jié)構(gòu)的DNS域名服務器根域名服務器org域名服務器com域名服務器edu域名服務器…域名服務器abc公司有兩個權(quán)限域名服務器權(quán)限域名服務器根域名服務器頂級域名服務器域名服務器域名服務器有以下四種類型根域名服務器頂級域名服務器權(quán)限域名服務器本地域名服務器根域名服務器根域名服務器是最高層次的域名服務器,也是最重要的域名服務器。所有的根域名服務器都知道所有的頂級域名服務器的域名和IP地址。不管是哪一個本地域名服務器,若要對互聯(lián)網(wǎng)上任何一個域名進行解析,只要自己無法解析,就首先求助于根域名服務器。在互聯(lián)網(wǎng)上共有13個不同IP地址的根域名服務器,它們的名字是用一個英文字母命名,從a一直到m(前13個字母)。根域名服務器共有13套裝置根域名服務器共有13套裝置,不是13個機器。這些根域名服務器相應的域名分別是:

到2016年2月,全世界已經(jīng)在588個地點安裝了根域名服務器,使世界上大部分DNS域名服務器都能就近找到一個根域名服務器。舉例:根域名服務器L的地點分布圖根域名服務器并不直接把域名直接轉(zhuǎn)換成IP地址。

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

迭代查詢

的IP地址

遞歸查詢

需要查找

的IP地址本地域名服務器采用遞歸查詢(比較少用)頂級域名服務器權(quán)限域名服務本地域名服務器根域名服務器

迭代查詢

的IP地址

遞歸查詢

需要查找

的IP地址

名字的高速緩存每個域名服務器都維護一個高速緩存,存放最近用過的名字以及從何處獲得名字映射信息的記錄??纱蟠鬁p輕根域名服務器的負荷,使互聯(lián)網(wǎng)上的DNS查詢請求和回答報文的數(shù)量大為減少。為保持高速緩存中的內(nèi)容正確,域名服務器應為每項內(nèi)容設置計時器,并處理超過合理時間的項(例如,每個項目只存放兩天)。當權(quán)限域名服務器回答一個查詢請求時,在響應中都指明綁定有效存在的時間值。增加此時間值可減少網(wǎng)絡開銷,而減少此時間值可提高域名轉(zhuǎn)換的準確性。6.2.1FTP概述6.2.2

FTP的基本工作原理6.2.3

簡單文件傳送協(xié)議TFTP6.2文件傳送協(xié)議6.2.1FTP概述文件傳送協(xié)議

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

(21),同時還要告訴服務器進程自己的另一個端口號碼,用于建立數(shù)據(jù)傳送連接。接著,服務器進程用自己傳送數(shù)據(jù)的熟知端口(20)與客戶進程所提供的端口號碼建立數(shù)據(jù)傳送連接。由于FTP使用了兩個不同的端口號,所以數(shù)據(jù)連接與控制連接不會發(fā)生混亂。使用兩個不同端口號的好處使協(xié)議更加簡單和更容易實現(xiàn)。在傳輸文件時還可以利用控制連接(例如,客戶發(fā)送請求終止傳輸)。NFS采用另一種思路NFS允許應用進程打開一個遠地文件,并能在該文件的某一個特定的位置上開始讀寫數(shù)據(jù)。NFS可使用戶只復制一個大文件中的一個很小的片段,而不需要復制整個大文件。例如,計算機A的NFS客戶軟件,把要添加的數(shù)據(jù)和在文件后面寫數(shù)據(jù)的請求一起發(fā)送到遠地的計算機B的NFS服務器。NFS服務器更新文件后返回應答信息。NFS在網(wǎng)絡上傳送的只是少量的修改數(shù)據(jù)。6.2.3簡單文件傳送協(xié)議TFTPTFTP(TrivialFileTransferProtocol)是一個很小且易于實現(xiàn)的文件傳送協(xié)議。TFTP使用客戶服務器方式和使用UDP數(shù)據(jù)報,因此TFTP需要有自己的差錯改正措施。TFTP只支持文件傳輸而不支持交互。TFTP沒有一個龐大的命令集,沒有列目錄的功能,也不能對用戶進行身份鑒別。TFTP的主要特點每次傳送的數(shù)據(jù)PDU中有512字節(jié)的數(shù)據(jù),但最后一次可不足512字節(jié)。數(shù)據(jù)PDU也稱為文件塊

(block),每個塊按序編號,從1開始。支持ASCII碼或二進制傳送??蓪ξ募M行讀或?qū)?。使用很簡單的首部。TFTP的工作很像停止等待協(xié)議發(fā)送完一個文件塊后就等待對方的確認,確認時應指明所確認的塊編號。發(fā)完數(shù)據(jù)后在規(guī)定時間內(nèi)收不到確認就要重發(fā)數(shù)據(jù)PDU。發(fā)送確認PDU的一方若在規(guī)定時間內(nèi)收不到下一個文件塊,也要重發(fā)確認PDU。這樣就可保證文件的傳送不致因某一個數(shù)據(jù)報的丟失而告失敗。TFTP的工作很像停止等待協(xié)議開始工作時,TFTP客戶進程發(fā)送一個讀請求PDU或?qū)懻埱驪DU給TFTP服務器進程,其熟知端口號碼為69。TFTP服務器進程要選擇一個新的端口和TFTP客戶進程進行通信。若文件長度恰好為512字節(jié)的整數(shù)倍,則在文件傳送完畢后,還必須在最后發(fā)送一個只含首部而無數(shù)據(jù)的數(shù)據(jù)PDU。若文件長度不是512字節(jié)的整數(shù)倍,則最后傳送數(shù)據(jù)PDU的數(shù)據(jù)字段一定不滿512字節(jié),這正好可作為文件結(jié)束的標志。TELNET是一個簡單的遠程終端協(xié)議,也是互聯(lián)網(wǎng)的正式標準。用戶用TELNET就可在其所在地通過TCP連接注冊(即登錄)到遠地的另一個主機上(使用主機名或IP地址)。TELNET能將用戶的擊鍵傳到遠地主機,同時也能將遠地主機的輸出通過TCP連接返回到用戶屏幕。這種服務是透明的,因為用戶感覺到好像鍵盤和顯示器是直接連在遠地主機上。6.3遠程終端協(xié)議TELNET客戶-服務器方式現(xiàn)在由于PC的功能越來越強,用戶已較少使用TELNET了。TELNET也使用客戶服務器方式。在本地系統(tǒng)運行TELNET客戶進程,而在遠地主機則運行TELNET服務器進程。和FTP的情況相似,服務器中的主進程等待新的請求,并產(chǎn)生從屬進程來處理每一個連接。TELNET使用網(wǎng)絡虛擬終端NVT格式互聯(lián)網(wǎng)TCP連接

客戶端

服務器端

使用服務器端的格式

使用NVT格式客戶服務器

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

萬維網(wǎng)概述6.4.2

統(tǒng)一資源定位符URL6.4.3

超文本傳送協(xié)議HTTP6.4.4

萬維網(wǎng)的文檔6.4.5

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

博客和微博6.4.7

社交網(wǎng)絡6.4.1萬維網(wǎng)概述萬維網(wǎng)

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

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

超媒體與超文本萬維網(wǎng)是分布式超媒體(hypermedia)系統(tǒng),它是超文本

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

萬維網(wǎng)的工作方式萬維網(wǎng)以客戶-服務器方式工作。瀏覽器就是在用戶計算機上的萬維網(wǎng)客戶程序。萬維網(wǎng)文檔所駐留的計算機則運行服務器程序,因此這個計算機也稱為萬維網(wǎng)服務器。客戶程序向服務器程序發(fā)出請求,服務器程序向客戶程序送回客戶所要的萬維網(wǎng)文檔。在一個客戶程序主窗口上顯示出的萬維網(wǎng)文檔稱為頁面

(page)。萬維網(wǎng)必須解決的問題(1)怎樣標志分布在整個互聯(lián)網(wǎng)上的萬維網(wǎng)文檔?使用統(tǒng)一資源定位符URL(UniformResourceLocator)來標志萬維網(wǎng)上的各種文檔。使每一個文檔在整個互聯(lián)網(wǎng)的范圍內(nèi)具有唯一的標識符URL。萬維網(wǎng)必須解決的問題(2)用何協(xié)議實現(xiàn)萬維網(wǎng)上各種超鏈的鏈接?在萬維網(wǎng)客戶程序與萬維網(wǎng)服務器程序之間進行交互所使用的協(xié)議,是超文本傳送協(xié)議HTTP(HyperTextTransferProtocol)。HTTP是一個應用層協(xié)議,它使用TCP連接進行可靠的傳送。萬維網(wǎng)必須解決的問題(3)怎樣使各種萬維網(wǎng)文檔都能在互聯(lián)網(wǎng)上的各種計算機上顯示出來,同時使用戶清楚地知道在什么地方存在著超鏈?超文本標記語言HTML(HyperTextMarkupLanguage)使得萬維網(wǎng)頁面的設計者可以很方便地用一個超鏈從本頁面的某處鏈接到互聯(lián)網(wǎng)上的任何一個萬維網(wǎng)頁面,并且能夠在自己的計算機屏幕上將這些頁面顯示出來。萬維網(wǎng)必須解決的問題(4)怎樣使用戶能夠很方便地找到所需的信息?為了在萬維網(wǎng)上方便地查找信息,用戶可使用各種的搜索工具(即搜索引擎)。6.4.2統(tǒng)一資源定位符URL1.URL的格式資源定位符URL是對可以從互聯(lián)網(wǎng)上得到的資源的位置和訪問方法的一種簡潔表示。URL給資源的位置提供一種抽象的識別方法,并用這種方法給資源定位。只要能夠?qū)Y源定位,系統(tǒng)就可以對資源進行各種操作,如存取、更新、替換和查找其屬性。URL相當于一個文件名在網(wǎng)絡范圍的擴展。因此URL是與互聯(lián)網(wǎng)相連的機器上的任何可訪問對象的一個指針。URL的一般形式由以冒號隔開的兩大部分組成,并且在URL中的字符對大寫或小寫沒有要求。URL的一般形式是:<協(xié)議>://<主機>:<端口>/<路徑>ftp——文件傳送協(xié)議FTPhttp——超文本傳送協(xié)議HTTPNews——USENET新聞URL的一般形式由以冒號隔開的兩大部分組成,并且在URL中的字符對大寫或小寫沒有要求。URL的一般形式是:<協(xié)議>://<主機>:<端口>/<路徑>規(guī)定的格式URL的一般形式(續(xù))由以冒號隔開的兩大部分組成,并且在URL中的字符對大寫或小寫沒有要求。URL的一般形式是:<協(xié)議>://<主機>:<端口>/<路徑><主機>是存放資源的主機在互聯(lián)網(wǎng)中的域名URL的一般形式(續(xù))由以冒號隔開的兩大部分組成,并且在URL中的字符對大寫或小寫沒有要求。URL的一般形式是:<協(xié)議>://<主機>:<端口>/<路徑>有時可省略URL的一般形式(續(xù))現(xiàn)在有些瀏覽器為了方便用戶,在輸入URL時,可以把最前面的“http://”甚至把主機名最前面的“www”省略,然后瀏覽器替用戶把省略的字符添上。例如,用戶只要鍵入,瀏覽器就自動把未鍵入的字符補齊,變成。2.使用HTTP的URL使用HTTP的URL的一般形式http://<主機>:<端口>/<路徑>這表示使用HTTP協(xié)議。2.使用HTTP的URL使用HTTP的URL的一般形式http://<主機>:<端口>/<路徑>冒號和兩個斜線是規(guī)定的格式。2.使用HTTP的URL使用HTTP的URL的一般形式http://<主機>:<端口>/<路徑>這里寫主機的域名。2.使用HTTP的URL使用HTTP的URL的一般形式http://<主機>:<端口>/<路徑>HTTP的默認端口號是80,通??墒÷?。2.使用HTTP的URL使用HTTP的URL的一般形式http://<主機>:<端口>/<路徑>若再省略文件的<路徑>項,則URL就指到互聯(lián)網(wǎng)上的某個主頁(homepage)。更復雜一些的路徑是指向?qū)哟谓Y(jié)構(gòu)的從屬頁面。例如:/publish/newthu/newthu_cnt/faculties/index.html主機域名路徑名6.4.3超文本傳送協(xié)議HTTP1.HTTP的操作過程為了使超文本的鏈接能夠高效率地完成,需要用HTTP協(xié)議來傳送一切必須的信息。從層次的角度看,HTTP是面向事務的(transaction-oriented)應用層協(xié)議,它是萬維網(wǎng)上能夠可靠地交換文件(包括文本、聲音、圖像等各種多媒體文件)的重要基礎。

互聯(lián)網(wǎng)服務器鏈接到URL的超鏈HTTP使用此TCP連接瀏覽器程序服務器程序HTTP客戶清華大學院系設置建立TCP連接HTTP請求報文瀏覽器發(fā)出請求釋放TCP連接服務器返回響應

HTTP響應報文萬維網(wǎng)的工作過程每個萬維網(wǎng)網(wǎng)點都有一個服務器進程,它不斷地監(jiān)聽TCP的端口80,以便發(fā)現(xiàn)是否有瀏覽器向它發(fā)出連接建立請求。一旦監(jiān)聽到連接建立請求并建立了TCP連接之后,瀏覽器就向萬維網(wǎng)服務器發(fā)出瀏覽某個頁面的請求,服務器接著就返回所請求的頁面作為響應。最后,TCP連接就被釋放了。萬維網(wǎng)的工作過程(續(xù))在瀏覽器和服務器之間的請求和響應的交互,必須按照規(guī)定的格式和遵循一定的規(guī)則。這些格式和規(guī)則就是超文本傳送協(xié)議HTTP。HTTP規(guī)定在HTTP客戶與HTTP服務器之間的每次交互,都由一個ASCII碼串構(gòu)成的請求和一個類似的通用互聯(lián)網(wǎng)擴充,即“類MIME(MIME-like)”的響應組成。HTTP報文通常都使用TCP連接傳送。萬維網(wǎng)的工作過程(續(xù))1,在瀏覽器的地址窗口中鍵入所要找的頁面的URL。2,在某一個頁面中用鼠標點擊一個可選部分,這時瀏覽器會自動在互聯(lián)網(wǎng)上找到所要鏈接的頁面。用戶瀏覽頁面的兩種方法HTTP使用了面向連接的TCP作為運輸層協(xié)議,保證了數(shù)據(jù)的可靠傳輸。HTTP協(xié)議本身也是無連接的,雖然它使用了面向連接的TCP向上提供的服務。HTTP是面向事務的客戶服務器協(xié)議。HTTP1.0協(xié)議是無狀態(tài)的(stateless)。HTTP的主要特點RTTRTT萬維網(wǎng)服務器萬維網(wǎng)客戶發(fā)起TCP連接HTTP請求報文傳輸文檔的時間整個文檔收到時間時間HTTP響應報文請求一個萬維網(wǎng)文檔所需的時間HTTP/1.1協(xié)議使用持續(xù)連接(persistentconnection)。萬維網(wǎng)服務器在發(fā)送響應后仍然在一段時間內(nèi)保持這條連接,使同一個客戶(瀏覽器)和該服務器可以繼續(xù)在這條連接上傳送后續(xù)的HTTP請求報文和響應報文。這并不局限于傳送同一個頁面上鏈接的文檔,而是只要這些文檔都在同一個服務器上就行。目前一些流行的瀏覽器(例如,IE6.0)的默認設置就是使用HTTP/1.1。持續(xù)連接非流水線方式:客戶在收到前一個響應后才能發(fā)出下一個請求。這比非持續(xù)連接的兩倍RTT的開銷節(jié)省了建立TCP連接所需的一個RTT時間。但服務器在發(fā)送完一個對象后,其TCP連接就處于空閑狀態(tài),浪費了服務器資源。流水線方式:客戶在收到HTTP的響應報文之前就能夠接著發(fā)送新的請求報文。一個接一個的請求報文到達服務器后,服務器就可連續(xù)發(fā)回響應報文。使用流水線方式時,客戶訪問所有的對象只需花費一個RTT時間,使TCP連接中的空閑時間減少,提高了下載文檔效率。持續(xù)連接的兩種工作方式2.代理服務器代理服務器(proxyserver)又稱為萬維網(wǎng)高速緩存(Webcache),它代表瀏覽器發(fā)出HTTP請求。萬維網(wǎng)高速緩存把最近的一些請求和響應暫存在本地磁盤中。當與暫時存放的請求相同的新請求到達時,萬維網(wǎng)高速緩存就把暫存的響應發(fā)送出去,而不需要按URL的地址再去互聯(lián)網(wǎng)訪問該資源。使用高速緩存可減少訪問互聯(lián)網(wǎng)服務器的時延校園網(wǎng)源點服務器2Mbit/s互聯(lián)網(wǎng)瀏覽器R1R2這條鏈路上的時延很大沒有使用高速緩存的情況所有萬維網(wǎng)通信量都經(jīng)過這條鏈路使用高速緩存的情況校園網(wǎng)源點服務器2Mbit/s互聯(lián)網(wǎng)瀏覽器R1R2(1)瀏覽器訪問互聯(lián)網(wǎng)的服務器時,要先與校園網(wǎng)的高速緩存建立TCP連接,并向高速緩存發(fā)出HTTP請求報文。校園網(wǎng)的高速緩存(代理服務器)使用高速緩存的情況校園網(wǎng)源點服務器2Mbit/s互聯(lián)網(wǎng)瀏覽器R1R2(2)若高速緩存已經(jīng)存放了所請求的對象,則將此對象放入HTTP響應報文中返回給瀏覽器。校園網(wǎng)的高速緩存(代理服務器)使用高速緩存的情況源點服務器2Mbit/s互聯(lián)網(wǎng)R1R2(3)否則,高速緩存就代表發(fā)出請求的用戶瀏覽器,與互聯(lián)網(wǎng)上的源點服務器建立TCP連接,并發(fā)送HTTP請求報文。校園網(wǎng)的高速緩存(代理服務器)校園網(wǎng)瀏覽器使用高速緩存的情況源點服務器2Mbit/s互聯(lián)網(wǎng)R1R2(4)源點服務器將所請求的對象放在HTTP響應報文中返回給校園網(wǎng)的高速緩存。校園網(wǎng)的高速緩存(代理服務器)校園網(wǎng)瀏覽器使用高速緩存的情況源點服務器2Mbit/s互聯(lián)網(wǎng)R1R2(5)高速緩存收到此對象后,先復制在其本地存儲器中(為今后使用),然后再將該對象放在HTTP響應報文中,通過已建立的TCP連接,返回給請求該對象的瀏覽器。校園網(wǎng)的高速緩存(代理服務器)校園網(wǎng)瀏覽器3.HTTP的報文結(jié)構(gòu)HTTP有兩類報文:請求報文——從客戶向服務器發(fā)送請求報文。響應報文——從服務器到客戶的回答。由于HTTP是面向正文的(text-oriented),因此在報文中的每一個字段都是一些ASCII碼串,因而每個字段的長度都是不確定的。HTTP的報文結(jié)構(gòu)(請求報文)方法URL版本首部字段名首部行:值首部字段名值:…實體主體(通常不用)請求行空格回車換行:CRLFCRLF開始行CRLFCRLF報文由三個部分組成,即開始行、首部行和實體主體。在請求報文中,開始行就是請求行。HTTP的報文結(jié)構(gòu)(請求報文)方法URL版本首部字段名首部行:值首部字段名值:…實體主體(通常不用)請求行空格回車換行:CRLFCRLFCRLFCRLF“方法”是面向?qū)ο蠹夹g中使用的專門名詞。所謂“方法”就是對所請求的對象進行的操作,因此這些方法實際上也就是一些命令。因此,請求報文的類型是由它所采用的方法決定的。HTTP請求報文的一些方法

方法(操作)

意義 OPTION 請求一些選項的信息 GET 請求讀取由URL所標志的信息 HEAD 請求讀取由URL所標志的信息的首部 POST 給服務器添加信息(例如,注釋) PUT 在指明的URL下存儲一個文檔 DELETE 刪除指明的URL所標志的資源 TRACE 用來進行環(huán)回測試的請求報文 CONNECT 用于代理服務器HTTP的報文結(jié)構(gòu)(請求報文)方法URL版本首部字段名首部行:值首部字段名值:…實體主體(通常不用)請求行空格回車換行:CRLFCRLFCRLFCRLF“URL”是所請求的資源的URL。HTTP的報文結(jié)構(gòu)(請求報文)方法URL版本首部字段名首部行:值首部字段名值:…實體主體(通常不用)請求行空格回車換行:CRLFCRLFCRLFCRLF“版本”是HTTP的版本。HTTP的報文結(jié)構(gòu)(響應報文)版本狀態(tài)碼短語首部字段名首部行:值首部字段名值:…實體主體(有些響應報文不用)狀態(tài)行空格回車換行:CRLFCRLF開始行CRLFCRLF響應報文的開始行是狀態(tài)行。狀態(tài)行包括三項內(nèi)容,即HTTP的版本,狀態(tài)碼,以及解釋狀態(tài)碼的簡單短語。1xx表示通知信息的,如請求收到了或正在進行處理。2xx表示成功,如接受或知道了。3xx表示重定向,表示要完成請求還必須采取進一步的行動。4xx表示客戶的差錯,如請求中有錯誤的語法或不能完成。5xx表示服務器的差錯,如服務器失效無法完成請求。狀態(tài)碼都是三位數(shù)字4.在服務器上存放用戶的信息萬維網(wǎng)站點可以使用Cookie來跟蹤用戶。Cookie表示在HTTP服務器和客戶之間傳遞的狀態(tài)信息。使用Cookie的網(wǎng)站服務器為用戶產(chǎn)生一個唯一的識別碼。利用此識別碼,網(wǎng)站就能夠跟蹤該用戶在該網(wǎng)站的活動。6.4.4萬維網(wǎng)的文檔1.超文本標記語言HTML超文本標記語言HTML中的Markup的意思就是“設置標記”。HTML定義了許多用于排版的命令(即標簽)。HTML把各種標簽嵌入到萬維網(wǎng)的頁面中。這樣就構(gòu)成了所謂的HTML文檔。HTML文檔是一種可以用任何文本編輯器創(chuàng)建的ASCII碼文件。僅當HTML文檔是以.html或.htm為后綴時,瀏覽器才對此文檔的各種標簽進行解釋。如HTML文檔改換以.txt為其后綴,則HTML解釋程序就不對標簽進行解釋,而瀏覽器只能看見原來的文本文件。當瀏覽器從服務器讀取HTML文檔后,就按照HTML文檔中的各種標簽,根據(jù)瀏覽器所使用的顯示器的尺寸和分辨率大小,重新進行排版并恢復出所讀取的頁面。HTML文檔HTML文檔中標簽的用法<HTML><HEAD>

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

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

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

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

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

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

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

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

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

<TITLE>一個HTML的例子</TITLE></HEAD><BODY><H1>HTML很容易掌握</H1><P>這是第一個段落。雖然很短,但它仍是一個段落。</P><P>這是第二個段落。</P></BODY></HTML>HTML文檔結(jié)束HTML還規(guī)定了鏈接的設置方法。每個鏈接都有一個起點和終點。遠程鏈接:超鏈的終點是其他網(wǎng)點上的頁面。本地鏈接:超鏈指向本計算機中的某個文件。兩種不同的鏈接XML(ExtensibleMarkupLanguage)是可擴展標記語言,它和HTML很相似。但XML的設計宗旨是傳輸數(shù)據(jù),而不是顯示數(shù)據(jù)(HTML是為了在瀏覽器上顯示數(shù)據(jù))。XML不是要替換HTML,而是對HTML的補充。XMLXHTML(ExtensibleHTML)是可擴展超文本標記語言,它與HTML4.01幾乎是相同的。但XHTML是更嚴格的HTML版本,也是一個W3C標準(2000年1月),是作為一種XML應用被重新定義的HTML,并將逐漸取代HTML。新的瀏覽器都支持XHTML。XHTMLCSS(CascadingStyleSheets)是層疊樣式表,它是一種樣式表語言,用于為HTML文檔定義布局。CSS與HTML的區(qū)別就是:HTML用于結(jié)構(gòu)化內(nèi)容,而CSS則用于格式化結(jié)構(gòu)化的內(nèi)容。CSS2.動態(tài)萬維網(wǎng)文檔靜態(tài)文檔是指該文檔創(chuàng)作完畢后就存放在萬維網(wǎng)服務器中,在被用戶瀏覽的過程中,內(nèi)容不會改變。動態(tài)文檔是指文檔的內(nèi)容是在瀏覽器訪問萬維網(wǎng)服務器時才由應用程序動態(tài)創(chuàng)建。動態(tài)文檔和靜態(tài)文檔之間的主要差別體現(xiàn)在服務器一端。這主要是文檔內(nèi)容的生成方法不同。而從瀏覽器的角度看,這兩種文檔并沒有區(qū)別。(1)應增加另一個應用程序,用來處理瀏覽器發(fā)來的數(shù)據(jù),并創(chuàng)建動態(tài)文檔。(2)應增加一個機制,用來使萬維網(wǎng)服務器把瀏覽器發(fā)來的數(shù)據(jù)傳送給這個應用程序,然后萬維網(wǎng)服務器能夠解釋這個應用程序的輸出,并向瀏覽器返回HTML文檔。萬維網(wǎng)服務器功能的擴充擴充了功能的萬維網(wǎng)服務器CGI

響應動態(tài)文檔HTTP響應報文萬維網(wǎng)服務器瀏覽器程序萬維網(wǎng)客戶服務器程序HTTP數(shù)據(jù)庫HTTP請求報文

請求文檔

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

CGI(CommonGatewayInterface)是一種標準,它定義了動態(tài)文檔應如何創(chuàng)建,輸入數(shù)據(jù)應如何提供給應用程序,以及輸出結(jié)果應如何使用。萬維網(wǎng)服務器與CGI的通信遵循CGI標準。“通用”:CGI標準所定義的規(guī)則對其他任何語言都是通用的?!熬W(wǎng)關”:CGI程序的作用像網(wǎng)關。“接口”:有一些已定義好的變量和調(diào)用等可供其他CGI程序使用。通用網(wǎng)關接口CGICGI程序的正式名字是CGI腳本

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

活動文檔在客戶端創(chuàng)建

響應程序HTTP響應報文萬維網(wǎng)服務器瀏覽器程序萬維網(wǎng)客戶服務器程序HTTPHTTP請求報文

請求文檔

此程序在客戶端創(chuàng)建出活動文檔程序事先被編譯成二進制代碼,存放為文件程序由美國Sun公司開發(fā)的

Java語言是一項用于創(chuàng)建和運行活動文檔的技術。在Java技術中使用“小應用程序”(applet)來描述活動文檔程序。用戶從萬維網(wǎng)服務器下載嵌入了Java小應用程序的HTML文檔后,可在瀏覽器的屏幕上點擊某個圖像,就可看到動畫效果,或在下拉式菜單中點擊某個項目,就可看到計算結(jié)果。Java技術是活動文檔技術的一部分。用Java技術創(chuàng)建活動文檔程序設計語言。Java包含一個新的程序設計語言,用來編寫傳統(tǒng)的計算機程序和Java小應用程序。運行(runtime)環(huán)境。這是運行Java程序所必須的運行環(huán)境,其中包括Java虛擬機(簡稱為JVM),該軟件定義了Java二進制代碼的執(zhí)行模型。類庫(classlibrary)。為了更容易編寫Java小應用程序,Java提供了強大的類庫支持。Java技術有三個主要組成部分Java是一種面向?qū)ο蟮母呒壵Z言,從C++派生出來的,它省略了C++很多復雜的、很少用的語言特點。Java的每一個數(shù)據(jù)項都有一個確定的類型。對數(shù)據(jù)的操作嚴格按照該數(shù)據(jù)的類型來進行。Java的編譯程序?qū)⒃闯绦蜣D(zhuǎn)換成Java字節(jié)碼(bytecode),這是一種與機器無關的二進制代碼。計算機程序調(diào)用解釋程序讀取字節(jié)碼,并解釋執(zhí)行。JavaJava語言、字節(jié)碼以及Java運行系統(tǒng)都被設計成與計算機硬件無關。一旦形成了字節(jié)碼,就可在任何計算機上運行并產(chǎn)生相同的輸出。Java小應用程序與機器無關可使在任何計算機上運行的瀏覽器程序能夠下載并運行活動文檔??杀WC活動文檔在所有的瀏覽器上產(chǎn)生同樣的正確輸出??纱蟠蟮亟档突顒游臋n的創(chuàng)建和測試費用,因為不必為每一種計算機都制作一個副本。計算機硬件無關運行Java的瀏覽器需要有HTML解釋程序和Java小應用程序解釋程序。解釋程序的核心是一個模仿計算機的簡單循環(huán)。解釋程序維持一個指令指針,在初始化時指在小應用程序的開始處。在每一次循環(huán)操作時,解釋程序在指令指針指向的地址讀取字節(jié)碼。然后解釋程序?qū)ψ止?jié)碼進行解碼,并完成指明的操作。Java解釋程序6.4.5萬維網(wǎng)的信息檢索系統(tǒng)1.全文檢索搜索和分類目錄搜索在萬維網(wǎng)中用來進行搜索的程序叫做搜索引擎。全文檢索搜索引擎是一種純技術型的檢索工具。它的工作原理是通過搜索軟件到互聯(lián)網(wǎng)上的各網(wǎng)站收集信息,找到一個網(wǎng)站后可以從這個網(wǎng)站再鏈接到另一個網(wǎng)站。然后按照一定的規(guī)則建立一個很大的在線數(shù)據(jù)庫供用戶查詢。用戶在查詢時只要輸入關鍵詞,就從已經(jīng)建立的索引數(shù)據(jù)庫上進行查詢(并不是實時地在互聯(lián)網(wǎng)上檢索到的信息)。分類目錄搜索引擎并不采集網(wǎng)站的任何信息,而是利用各網(wǎng)站向搜索引擎提交的網(wǎng)站信息時填寫的關鍵詞和網(wǎng)站描述等信息,經(jīng)過人工審核編輯后,如果認為符合網(wǎng)站登錄的條件,則輸入到分類目錄的數(shù)據(jù)庫中,供網(wǎng)上用戶查詢。分類目錄搜索也叫做分類網(wǎng)站搜索。分類目錄搜索最著名的全文檢索搜索引擎:Google(谷歌)()百度()最著名的分類目錄搜索引擎:雅虎()雅虎中國()新浪()搜狐()網(wǎng)易()一些著名的搜索引擎垂直搜索引擎(VerticalSearchEngine)針對某一特定領域、特定人群或某一特定需求提供搜索服務。垂直搜索也是提供關鍵字來進行搜索的,但被放到了一個行業(yè)知識的上下文中,返回的結(jié)果更傾向于信息、消息、條目等。垂直搜索引擎6.4.6博客和微博1.博客博客是萬維網(wǎng)日志(weblog)的簡稱。也有人把blog進行音譯,譯為“部落格”,或“部落閣”。還有人用“博文”來表示“博客文章”。Weblog這個新詞是JornBarger于1997年創(chuàng)造的。簡寫的blog(這是今天最常用的術語)則是PeterMerholz于1999年創(chuàng)造的。有人把blog既當作名詞,也當作動詞,表示編輯博客或?qū)懖┛汀?.博客(續(xù))博客已經(jīng)極大地擴充了互聯(lián)網(wǎng)的應用和影響。在博客出現(xiàn)以前,網(wǎng)民是互聯(lián)網(wǎng)上內(nèi)容的消費者。但博客改變了這種情況,網(wǎng)民不僅是互聯(lián)網(wǎng)上內(nèi)容的消費者,而且還是互聯(lián)網(wǎng)上內(nèi)容的生產(chǎn)者。2.微博微博就是微型博客

(microblog),又稱為微博客。微博不同于一般的博客。微博只記錄片段、碎語,三言兩語,現(xiàn)場記錄,發(fā)發(fā)感慨,曬曬心情,永遠只針對一個問題進行回答。用戶可以通過網(wǎng)頁、WAP網(wǎng)、手機短信彩信、手機客戶端等多種方式更新自己的微博。每條微博字數(shù)最初限制為140英文字符,但現(xiàn)在已增加了“長微博”的選項,可輸入更多的字符。微博還提供插入圖片、視頻、音樂等功能。3.輕博輕博就是輕博客(light

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

社交網(wǎng)站社交網(wǎng)站SNS(SocialNetworkingSite)是近年來發(fā)展非常迅速的一種網(wǎng)站,其作用是為一群擁有相同興趣與活動的人創(chuàng)建在線社區(qū)。2004年社交網(wǎng)站臉書(Facebook,又名面書、臉譜、臉譜網(wǎng))在美國誕生。國內(nèi)以人人網(wǎng)、開心網(wǎng)等為代表的社交網(wǎng)站也如雨后春筍般迅速崛起。6.4.7

社交網(wǎng)站(續(xù))目前世界上排名第一且分布最廣的社交網(wǎng)站是臉書(Facebook)。排名第二的社交網(wǎng)站是視頻分享網(wǎng)站優(yōu)兔YouTube(被谷歌收購)。國內(nèi)類似的視頻分享網(wǎng)站有優(yōu)酷()、土豆()、56網(wǎng)(56.com)等。6.4.7

社交網(wǎng)站(續(xù))另一種能夠提供微博服務的社交網(wǎng)絡現(xiàn)在也很流行。例如推特Twitter()網(wǎng)站可以讓用戶發(fā)表不超過140個字符的消息。這些消息也被稱為“推文”(Tweet)。我國的新浪微博()、騰訊微博()等就是這種性質(zhì)的社交網(wǎng)站。職業(yè)性社交網(wǎng)站領英LinkedIn也很受歡迎。目前在我國最為流行的社交網(wǎng)站就是微信,微信最初是專為手機用戶使用的聊天工具,現(xiàn)在微信的功能已遠遠超越了社交領域。6.5電子郵件6.5.1

電子郵件概述6.5.2

簡單郵件傳送協(xié)議SMTP6.5.3

電子郵件的信息格式6.5.4

郵件讀取協(xié)議POP3和IMAP6.5.5

基于萬維網(wǎng)的電子郵件6.5.6

通用互聯(lián)網(wǎng)郵件擴充MIME6.5.1電子郵件概述電子郵件

(e-mail):指使用電子設備交換的郵件及其方法。電子郵件是互聯(lián)網(wǎng)上使用得最多的和最受用戶歡迎的一種應用。優(yōu)點:使用方便,傳遞迅速,費用低廉,可以傳送多種類型的信息(包括:文字信息,聲音和圖像等)。電子郵件的重要標準簡單郵件發(fā)送協(xié)議:SMTP互聯(lián)網(wǎng)文本報文格式通用互聯(lián)網(wǎng)郵件擴充MIME郵件讀取協(xié)議:POP3和IMAP電子郵件的組成:三個主要構(gòu)件發(fā)送郵件TCP連接SMTP客戶SMTP服務器SMTP客戶用戶發(fā)件人讀取郵件TCP連接POP3客戶SMTP服務器POP3服務器SMTP發(fā)送方郵件服務器發(fā)件方用戶代理POP3接收方郵件服務器接收方用戶代理用戶收件人發(fā)送郵件SMTPTCP連接用戶代理,郵件服務器,以及郵件發(fā)送和讀取協(xié)議。用戶代理UA(UserAgent)用戶代理UA就是用戶與電子郵件系統(tǒng)的接口,是電子郵件客戶端軟件。用戶代理的功能:撰寫、顯示、處理和通信。郵件服務器的功能是發(fā)送和接收郵件,同時還要向發(fā)信人報告郵件傳送的情況(已交付、被拒絕、丟失等)。郵件服務器按照客戶-服務器方式工作。郵件服務器需要使用發(fā)送和讀取兩個不同的協(xié)議。用戶代理UA(UserAgent)SMTPPOP3發(fā)送郵件發(fā)送郵件SMTP讀取郵件TCP連接TCP連接發(fā)送方郵件服務器SMTP客戶POP3客戶發(fā)件方用戶代理接收方郵件服務器SMTP服務器POP3服務器SMTP服務器SMTP客戶接收方用戶代理TCP連接用戶發(fā)件人用戶收件人用戶與電子郵件系統(tǒng)的接口。又被稱為電子郵件客戶端軟件。基本功能:撰寫、顯示、處理和通信。用戶代理UA(UserAgent)SMTPPOP3發(fā)送郵件發(fā)送郵件SMTP讀取郵件TCP連接TCP連接發(fā)送方郵件服務器SMTP客戶POP3客戶發(fā)件方用戶代理接收方郵件服務器SMTP服務器POP3服務器SMTP服務器SMTP客戶接收方用戶代理TCP連接用戶發(fā)件人用戶收件人用戶與電子郵件系統(tǒng)的接口。又被稱為電子郵件客戶端軟件。基本功能:撰寫、顯示、處理和通信。郵件服務器(MailServer)SMTPPOP3發(fā)送郵件發(fā)送郵件SMTP讀取郵件TCP連接TCP連接發(fā)送方郵件服務器SMTP客戶POP3客戶發(fā)件方用戶代理接收方郵件服務器SMTP服務器POP3服務器SMTP服務器SMTP客戶接收方用戶代理TCP連接用戶發(fā)件人用戶收件人又被稱為郵件傳輸代理。功能:發(fā)送和接收郵件,同時還要向發(fā)信人報告郵件傳送的情況。按照客戶–

服務器方式工作。在發(fā)送和讀取郵件時使用兩個不同的協(xié)議:SMTP,POP3。郵件發(fā)送和讀取協(xié)議SMTP發(fā)送郵件發(fā)送郵件SMTPPOP3讀取郵件TCP連接TCP連接發(fā)送方郵件服務器SMTP客戶POP3客戶發(fā)件方用戶代理接收方郵件服務器SMTP服務器POP3服務器SMTP服務器SMTP客戶接收方用戶代理TCP連接用戶發(fā)件人用戶收件人郵件發(fā)送和讀取使用不同的協(xié)議協(xié)議。簡單郵件發(fā)送協(xié)議SMTP:用于在用戶代理向郵件服務器或郵件服務器之間發(fā)送郵件。郵局協(xié)議POP3:用于用戶代理從郵件服務器讀取郵件。應當注意一個郵件服務器既可以作為客戶,也可以作為服務器。例如,當郵件服務器A向另一個郵件服務器B發(fā)送郵件時,郵件服務器A就作為SMTP客戶,而B是SMTP服務器。當郵件服務器A從另一個郵件服務器B接收郵件時,郵件服務器A就作為SMTP服務器,而B是SMTP客戶。應當注意SMTP發(fā)送郵件發(fā)送郵件SMTPPOP3讀取郵件TCP連接TCP連接發(fā)送方郵件服務器SMTP客戶POP3客戶發(fā)件方用戶代理接收方郵件服務器SMTP服務器POP3服務器SMTP服務器SMTP客戶接收方用戶代理TCP連接用戶發(fā)件人用戶收件人郵件服務器必須能夠同時充當客戶和服務器。SMTP和POP3(或IMAP)都是使用TCP連接來傳送郵件的,目的是為了可靠地傳送郵件。電子郵件的最主要的組成構(gòu)件郵件緩存

接收方郵件服務器用戶代理SMTPSMTPPOP3

發(fā)送方郵件服務器發(fā)送方用戶代理用戶郵箱接收方(發(fā)送郵件)(發(fā)送郵件)(讀取郵件)互聯(lián)網(wǎng)SMTPPOP3發(fā)送郵件發(fā)送郵件SMTP讀取郵件TCP連接TCP連接發(fā)送方郵件服務器SMTP客戶POP3客戶發(fā)件方用戶代理接收方郵件服務器SMTP服務器POP3服務器SMTP服務器SMTP客戶接收方用戶代理TCP連接用戶發(fā)件人用戶收件人電子郵件的最主要的組成構(gòu)件發(fā)送方郵件緩存

接收方郵件服務器用戶代理SMTPSMTPPOP3

發(fā)送方郵件服務器用戶代理用戶郵箱接收方(發(fā)送郵件)(發(fā)送郵件)(讀取郵件)互聯(lián)網(wǎng)SMTPPOP3發(fā)送郵件發(fā)送郵件SMTP讀取郵件TCP連接TCP連接發(fā)送方郵件服務器SMTP客戶POP3客戶發(fā)件方用戶代理接收方郵件服務器SMTP服務器POP3服務器SMTP服務器SMTP客戶接收方用戶代理TCP連接用戶發(fā)件人用戶收件人電子郵件的最主要的組成構(gòu)件發(fā)送方郵件緩存

接收方郵件服務器用戶代理SMTPSMTPPOP3

發(fā)送方郵件服務器用戶代理用戶郵箱接收方(發(fā)送郵件)(發(fā)送郵件)(讀取郵件)互聯(lián)網(wǎng)SMTPPOP3發(fā)送郵件發(fā)送郵件SMTP讀取郵件TCP連接TCP連接發(fā)送方郵件服務器SMTP客戶POP3客戶發(fā)件方用戶代理接收方郵件服務器SMTP服務器POP3服務器SMTP服務器SMTP客戶接收方用戶代理TCP連接用戶發(fā)件人用戶收件人電子郵件的最主要的組成構(gòu)件發(fā)送方郵件緩存

接收方郵件服務器用戶代理SMTPSMTPPOP3

發(fā)送方郵件服務器用戶代理用戶郵箱接收方(發(fā)送郵件)(發(fā)送郵件)(讀取郵件)互聯(lián)網(wǎng)SMTPPOP3發(fā)送郵件發(fā)送郵件SMTP讀取郵件TCP連接TCP連接發(fā)送方郵件服務器SMTP客戶POP3客戶發(fā)件方用戶代理接收方郵件服務器SMTP服務器POP3服務器SMTP服務器SMTP客戶接收方用戶代理TCP連接用戶發(fā)件人用戶收件人注意:郵件不會在互聯(lián)網(wǎng)中的某個中間郵件服務器落地。電子郵件的最主要的組成構(gòu)件發(fā)送方郵件緩存

接收方郵件服務器用戶代理SMTPSMTPPOP3

發(fā)送方郵件服務器用戶代理用戶郵箱接收方(發(fā)送郵件)(發(fā)送郵件)(讀取郵件)互聯(lián)網(wǎng)SMTPPOP3發(fā)送郵件發(fā)送郵件SMTP讀取郵件TCP連接TCP連接發(fā)送方郵件服務器SMTP客戶POP3客戶發(fā)件方用戶代理接收方郵件服務器SMTP服務器POP3服務器SMTP服務器SMTP客戶接收方用戶代理TCP連接用戶發(fā)件人用戶收件人兩種不同的通信方式發(fā)送方郵件緩存

接收方郵件服務器用戶代理SMTPSMTPPOP3

發(fā)送方郵件服務器用戶代理用戶郵箱接收方(發(fā)送郵件)(發(fā)送郵件)(讀取郵件)互聯(lián)網(wǎng)SMTPPOP3發(fā)送郵件發(fā)送郵件SMTP讀取郵件TCP連接TCP連接發(fā)送方郵件服務器SMTP客戶POP3客戶發(fā)件方用戶代理接收方郵件服務器SMTP服務器POP3服務器SMTP服務器SMTP客戶接收方用戶代理TCP連接用戶發(fā)件人用戶收件人“推”(push)“拉”(pull)發(fā)送和接收電子郵件的幾個重要步驟發(fā)件人調(diào)用PC中的用戶代理撰寫和編輯要發(fā)送的郵件。發(fā)件人的用戶代理把郵件用SMTP協(xié)議發(fā)給發(fā)送方郵件服務器。SMTP服務器把郵件臨時存放在郵件緩存隊列中,等待發(fā)送。發(fā)送方郵件服務器的SMTP客戶與接收方郵件服務器的SMTP服務器建立TCP連接,然后就把郵件緩存隊列中的郵件依次發(fā)送出去。發(fā)送和接收電子郵件的幾個重要步驟運行在接收方郵件服務器中的SMTP服務器進程收到郵件后,把郵件放入收件人的用戶郵箱中,等待收件人進行讀取。收件人在打算收信時,就運行PC機中的用戶代理,使用POP3(或IMAP)協(xié)議讀取發(fā)送給自己的郵件。電子郵件的組成電子郵件由信封(envelope)和內(nèi)容(content)兩部分組成。電子郵件的傳輸程序根據(jù)郵件信封上的信息來傳送郵件。用戶在從自己的郵箱中讀取郵件時才能見到郵件的內(nèi)容。在郵件的信封上,最重要的就是收件人的地址。電子郵件地址的格式TCP/IP體系的電子郵件系統(tǒng)規(guī)定電子郵件地址的格式如下:收件人郵箱名@郵箱所在主機的域名(6-1)符號“@”讀作“at”,表示“在”的意思。例如電子郵件地址xiexiren@郵箱所在的主機的域名在全世界必須是唯一的這個用戶名在該域名的范圍內(nèi)是唯一的。6.5.2簡單郵件傳送協(xié)議SMTPSMTP客戶SMTP服務器SMTP客戶用戶發(fā)件人讀取郵件TCP連接POP3客戶SMTP服務器POP3服務器發(fā)送郵件TCP連接SMTP發(fā)送方郵件服務器發(fā)件方用戶代理POP3接收方郵件服務器接收方用戶代理用戶收件人發(fā)送郵件SMTPTCP連接SMTP規(guī)定了在兩個相互通信的SMTP進程交換信息的方法。SMTP使用客戶–服務器方式。SMTP基于TCP實現(xiàn)客戶與服務器的通信。6.5.2簡單郵件傳送協(xié)議SMTPSMTP是一個

溫馨提示

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

評論

0/150

提交評論