CH6-5ed應用層_第1頁
CH6-5ed應用層_第2頁
CH6-5ed應用層_第3頁
CH6-5ed應用層_第4頁
CH6-5ed應用層_第5頁
已閱讀5頁,還剩164頁未讀, 繼續免費閱讀

下載本文檔

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

文檔簡介

1、課件制作人:謝希仁計算機網絡(第 5 版)第 6 章 應用層課件制作人:謝希仁第 6 章 應用層6.1 域名系統 DNS 6.1.1 域名系統概述 6.1.2 因特網的域名結構 6.1.3 域名服務器6.2 文件傳送協議 6.2.1 FTP 概述 6.2.2 FTP 的基本工作原理 6.2.3 簡單文件傳送協議 TFTP 課件制作人:謝希仁第 6 章 應用層(續)6.3 遠程終端協議 TELNET 6.4 萬維網 WWW 6.4.1 概述 6.4.2 統一資源定位符 URL 6.4.3 超文本傳送協議 HTTP 6.4.4 萬維網的文檔 6.4.5 萬維網的信息檢索系統課件制作人:謝希仁第 6

2、 章 應用層(續) 6.5 電子郵件6.5.1 電子郵件概述6.5.2 簡單郵件傳送協議 SMTP6.5.3 電子郵件的信息格式6.5.4 郵件讀取協議 POP3 和 IMAP6.5.5 基于萬維網的電子郵件 6.5.6 通用因特網郵件擴充 MIME課件制作人:謝希仁第 6 章 應用層(續)6.6 動態主機配置協議 DHCP 6.7 簡單網絡管理協議 SNMP6.7.1 網絡管理的基本概念6.7.2 管理信息結構 SMI 6.7.3 管理信息庫 MIB 6.7.4 SNMP 的協議數據單元和報文6.8 應用進程跨越網絡的通信6.8.1 系統調用和應用編程接口6.8.2 幾種常用的系統調用課件制

3、作人:謝希仁應用層協議的特點 n每個應用層協議都是為了解決某一類應用問題,而問題的解決又往往是通過位于不同主機中的多個應用進程之間的通信和協同工作來完成的。應用層的具體內容就是規定應用進程在通信時所遵循的協議。n應用層的許多協議都是基于客戶服務器方式。客戶(client)和服務器(server)都是指通信中所涉及的兩個應用進程??蛻舴掌鞣绞剿枋龅氖沁M程之間服務和被服務的關系。客戶是服務請求方,服務器是服務提供方。 課件制作人:謝希仁6.1 域名系統 DNS6.1.1 域名系統概述n許多應用層軟件經常直接使用域名系統 DNS (Domain Name System),但計算機的用戶只是間接而

4、不是直接使用域名系統。 n因特網采用層次結構的命名樹作為主機的名字,并使用分布式的域名系統 DNS。n名字到 IP 地址的解析是由若干個域名服務器程序完成的。域名服務器程序在專設的結點上運行,運行該程序的機器稱為域名服務器。 課件制作人:謝希仁6.1.2 因特網的域名結構n因特網采用了層次樹狀結構的命名方法。n任何一個連接在因特網上的主機或路由器,都有一個唯一的層次結構的名字,即域名。n域名的結構由標號序列組成,各標號之間用點隔開: . 三級域名 . 二級域名 . 頂級域名n各標號分別代表不同級別的域名。 課件制作人:謝希仁域名只是個邏輯概念n域名只是個邏輯概念,并不代表計算機所在的物理地點。

5、n變長的域名和使用有助記憶的字符串,是為了便于人來使用。而 IP 地址是定長的 32 位二進制數字則非常便于機器進行處理。n域名中的“點”和點分十進制 IP 地址中的“點”并無一一對應的關系。點分十進制 IP 地址中一定是包含三個“點”,但每一個域名中“點”的數目則不一定正好是三個。 課件制作人:謝希仁頂級域名 TLD (Top Level Domain)(1) 國家頂級域名 nTLD:如: .cn 表示中國,.us 表示美國,.uk 表示英國,等等。(2) 通用頂級域名 gTLD:最早的頂級域名是: .com (公司和企業) .net (網絡服務機構) .org (非贏利性組織) .edu

6、(美國專用的教育機構() .gov (美國專用的政府部門) .mil (美國專用的軍事部門) .int (國際組織)課件制作人:謝希仁頂級域名 TLD (續)(3) 基礎結構域名(infrastructure domain):這種頂級域名只有一個,即 arpa,用于反向域名解析,因此又稱為反向域名。 課件制作人:謝希仁新增加了下列的通用頂級域名 (航空運輸企業) (公司和企業)n.cat (加泰隆人的語言和文化團體) (合作團體) (各種情況) (人力資源管理者)n.mobi (移動產品與服務的用戶和提供者) (博物館

7、) (個人) (有證書的專業人員) (旅游業) 因特網的域名空間 根四級域名mailwwwbjeducomcctvibmhp二級域名pkutsinghua三級域名mailwwwcomnetorgedugovaerocnuk頂級域名課件制作人:謝希仁6.1.3 域名服務器 n一個服務器所負責管轄的(或有權限的)范圍叫做區(zone)。n各單位根據具體情況來劃分自己管轄范圍的區。但在一個區中的所有節點必須是能夠連通的。n每一個區設置相應的權限域名服務器,用來保存該區中的所有主機的域名到IP地址的映射。nDNS 服務器的管轄范圍不是以“域”為單位,而是以“區”為

8、單位。 區的不同劃分方法舉例 域 區abcxuvwty(a) 區 = 域(b) 區 域域 區區abcxuvwtycomeduorg根comeduorg根課件制作人:謝希仁樹狀結構的 DNS 域名服務器 根域名服務器org 域名服務器com 域名服務器edu 域名服務器域名服務器abc 公司有兩個權限域名服務器權限域名服務器根域名服務器頂級域名服務器域名服務器課件制作人:謝希仁域名服務器有以下四種類型 n根域名服務器 n頂級域名服務器 n權限域名服務器 n本地域名服務器 課件制作人:謝希仁根域名服務器 最高層次的域名服務器n根域名服務器是最重要的域名服務器。所有的根域名服務器都知道所有的頂級域名

9、服務器的域名和 IP 地址。n不管是哪一個本地域名服務器,若要對因特網上任何一個域名進行解析,只要自己無法解析,就首先求助于根域名服務器。n在因特網上共有13 個不同 IP 地址的根域名服務器,它們的名字是用一個英文字母命名,從a 一直到 m(前13 個字母)。課件制作人:謝希仁根域名服務器共有 13 套裝置(不是 13 個機器)n這些根域名服務器相應的域名分別是 n到 2006 年底全世界已經安裝了一百多個根域名服務器機器,分布在世界各地。n這樣做的目的是為了方便用戶,使世界上大部分 DNS 域名服務器都能就近找到一個根域名服務器。 舉例:根域名服務器 f 的地點分布圖 根域名服務器并不直接

10、把域名直接轉換成 IP 地址。 在使用迭代查詢時,根域名服務器把下一步應當找 的頂級域名服務器的 IP 地址告訴本地域名服務器。共 40 個機器課件制作人:謝希仁頂級域名服務器(即 TLD 服務器) n這些域名服務器負責管理在該頂級域名服務器注冊的所有二級域名。n當收到 DNS 查詢請求時,就給出相應的回答(可能是最后的結果,也可能是下一步應當找的域名服務器的 IP 地址)。 課件制作人:謝希仁權限域名服務器 n這就是前面已經講過的負責一個區的域名服務器。n當一個權限域名服務器還不能給出最后的查詢回答時,就會告訴發出查詢請求的 DNS 客戶,下一步應當找哪一個權限域名服務器。 課件制作人:謝希

11、仁本地域名服務器 n本地域名服務器對域名系統非常重要。n當一個主機發出 DNS 查詢請求時,這個查詢請求報文就發送給本地域名服務器。n每一個因特網服務提供者 ISP,或一個大學,甚至一個大學里的系,都可以擁有一個本地域名服務器,n這種域名服務器有時也稱為默認域名服務器。 課件制作人:謝希仁提高域名服務器的可靠性nDNS 域名服務器都把數據復制到幾個域名服務器來保存,其中的一個是主域名服務器,其他的是輔助域名服務器。n當主域名服務器出故障時,輔助域名服務器可以保證 DNS 的查詢工作不會中斷。n主域名服務器定期把數據復制到輔助域名服務器中,而更改數據只能在主域名服務器中進行。這樣就保證了數據的一

12、致性。 課件制作人:謝希仁域名的解析過程 n主機向本地域名服務器的查詢一般都是采用遞歸查詢。如果主機所詢問的本地域名服務器不知道被查詢域名的 IP 地址,那么本地域名服務器就以 DNS 客戶的身份,向其他根域名服務器繼續發出查詢請求報文。n本地域名服務器向根域名服務器的查詢通常是采用迭代查詢。當根域名服務器收到本地域名服務器的迭代查詢請求報文時,要么給出所要查詢的 IP 地址,要么告訴本地域名服務器:“你下一步應當向哪一個域名服務器進行查詢”。然后讓本地域名服務器進行后續的查詢。課件制作人:謝希仁本地域名服務器采用迭代查詢 頂級域名服務器權限域名服務本地域名服務器根域名服務器迭代查詢 的 IP

13、 地址 遞歸查詢需要查找 的 IP 地址課件制作人:謝希仁本地域名服務器采用遞歸查詢(比較少用) 頂級域名服務器權限域名服務本地域名服務器 根域名服務器遞歸查詢遞歸查詢 的 IP 地址 需要查找 的 IP 地址課件制作人:謝希仁名字的高速緩存 n每個域名服務器都維護一個高速緩存,存放最近用過的名字以及從何處獲得名字映射信息的記錄。n可大大減輕根域名服務器的負荷,使因特網上的 DNS 查詢請求和回答報文的數量大為減少。 n為保持高速緩存中的內容正確,域名服務器應為每項內容設置計時器,并處理超過合理時間的項(例如,每個項目只存放兩天)。n當權限域名服務器回答一個查詢請求時,在響應中都指明綁定有效存

14、在的時間值。增加此時間值可減少網絡開銷,而減少此時間值可提高域名轉換的準確性。 課件制作人:謝希仁6.2 文件傳送協議 6.2.1 FTP概述n文件傳送協議 FTP (File Transfer Protocol) 是因特網上使用得最廣泛的文件傳送協議。nFTP 提供交互式的訪問,允許客戶指明文件的類型與格式,并允許文件具有存取權限。nFTP 屏蔽了各計算機系統的細節,因而適合于在異構網絡中任意計算機之間傳送文件。nRFC 959 很早就成為了因特網的正式標準。 課件制作人:謝希仁文件傳送并非很簡單的問題n網絡環境中的一項基本應用就是將文件從一臺計算機中復制到另一臺可能相距很遠的計算機中。n初

15、看起來,在兩個主機之間傳送文件是很簡單的事情。n其實這往往非常困難。原因是眾多的計算機廠商研制出的文件系統多達數百種,且差別很大。 課件制作人:謝希仁6.2.2 FTP 的基本工作原理 網絡環境下復制文件的復雜性:(1) 計算機存儲數據的格式不同。(2) 文件的目錄結構和文件命名的規定不同。(3) 對于相同的文件存取功能,操作系統使用的命令不同。(4) 訪問控制方法不同。 課件制作人:謝希仁FTP 特點n文件傳送協議 FTP 只提供文件傳送的一些基本的服務,它使用 TCP 可靠的運輸服務。nFTP 的主要功能是減少或消除在不同操作系統下處理文件的不兼容性。nFTP 使用客戶服務器方式。一個 F

16、TP 服務器進程可同時為多個客戶進程提供服務。FTP 的服務器進程由兩大部分組成:一個主進程,負責接受新的請求;另外有若干個從屬進程,負責處理單個請求。課件制作人:謝希仁主進程的工作步驟如下n打開熟知端口(端口號為 21),使客戶進程能夠連接上。n等待客戶進程發出連接請求。n啟動從屬進程來處理客戶進程發來的請求。從屬進程對客戶進程的請求處理完畢后即終止,但從屬進程在運行期間根據需要還可能創建其他一些子進程。n回到等待狀態,繼續接受其他客戶進程發來的請求。主進程與從屬進程的處理是并發地進行。 課件制作人:謝希仁兩個連接n控制連接在整個會話期間一直保持打開,FTP 客戶發出的傳送請求通過控制連接發

17、送給服務器端的控制進程,但控制連接不用來傳送文件。n實際用于傳輸文件的是“數據連接”。服務器端的控制進程在接收到 FTP 客戶發送來的文件傳輸請求后就創建“數據傳送進程”和“數據連接”,用來連接客戶端和服務器端的數據傳送進程。n數據傳送進程實際完成文件的傳送,在傳送完畢后關閉“數據傳送連接”并結束運行。 課件制作人:謝希仁FTP 使用的兩個 TCP 連接 控制進程FTP 客戶端FTP 服務器端因特網TCP 控制連接TCP 數據連接用戶界面控制進程數據傳送進程數據傳送進程課件制作人:謝希仁n 當客戶進程向服務器進程發出建立連接請求時,要尋找連接服務器進程的熟知端口(21),同時還要告訴服務器進程

18、自己的另一個端口號碼,用于建立數據傳送連接。n接著,服務器進程用自己傳送數據的熟知端口(20)與客戶進程所提供的端口號碼建立數據傳送連接。n由于 FTP 使用了兩個不同的端口號,所以數據連接與控制連接不會發生混亂。 兩個不同的端口號 課件制作人:謝希仁n使協議更加簡單和更容易實現。n在傳輸文件時還可以利用控制連接(例如,客戶發送請求終止傳輸)。 使用兩個不同端口號的好處 課件制作人:謝希仁NFS 采用另一種思路nNFS 允許應用進程打開一個遠地文件,并能在該文件的某一個特定的位置上開始讀寫數據。nNFS 可使用戶只復制一個大文件中的一個很小的片段,而不需要復制整個大文件。n對于上述例子,計算機

19、 A 的 NFS 客戶軟件,把要添加的數據和在文件后面寫數據的請求一起發送到遠地的計算機 B 的 NFS 服務器。NFS 服務器更新文件后返回應答信息。n在網絡上傳送的只是少量的修改數據。 課件制作人:謝希仁6.2.3 簡單文件傳送協議 TFTP(Trivial File Transfer Protocol) nTFTP 是一個很小且易于實現的文件傳送協議。nTFTP 使用客戶服務器方式和使用 UDP 數據報,因此 TFTP 需要有自己的差錯改正措施。nTFTP 只支持文件傳輸而不支持交互。nTFTP 沒有一個龐大的命令集,沒有列目錄的功能,也不能對用戶進行身份鑒別。 課件制作人:謝希仁TFT

20、P 的主要特點是 (1) 每次傳送的數據 PDU 中有 512 字節的數據,但最后一次可不足 512 字節。 (2) 數據 PDU 也稱為文件塊(block),每個塊按序編號,從 1 開始。 (3) 支持 ASCII 碼或二進制傳送。 (4) 可對文件進行讀或寫。 (5) 使用很簡單的首部。 課件制作人:謝希仁TFTP 的工作很像停止等待協議n發送完一個文件塊后就等待對方的確認,確認時應指明所確認的塊編號。n發完數據后在規定時間內收不到確認就要重發數據 PDU。n發送確認 PDU 的一方若在規定時間內收不到下一個文件塊,也要重發確認 PDU。這樣就可保證文件的傳送不致因某一個數據報的丟失而告失

21、敗。 課件制作人:謝希仁TFTP 的工作很像停止等待協議n在一開始工作時。TFTP 客戶進程發送一個讀請求 PDU 或寫請求 PDU 給 TFTP 服務器進程,其熟知端口號碼為 69。nTFTP 服務器進程要選擇一個新的端口和 TFTP 客戶進程進行通信。n若文件長度恰好為 512 字節的整數倍,則在文件傳送完畢后,還必須在最后發送一個只含首部而無數據的數據 PDU。n若文件長度不是 512 字節的整數倍,則最后傳送數據 PDU 的數據字段一定不滿512字節,這正好可作為文件結束的標志。課件制作人:謝希仁6.3 按遠程終端協議 TELNETnTELNET 是一個簡單的遠程終端協議,也是因特網的

22、正式標準。n用戶用 TELNET 就可在其所在地通過 TCP 連接注冊(即登錄)到遠地的另一個主機上(使用主機名或 IP 地址)。nTELNET 能將用戶的擊鍵傳到遠地主機,同時也能將遠地主機的輸出通過 TCP 連接返回到用戶屏幕。這種服務是透明的,因為用戶感覺到好像鍵盤和顯示器是直接連在遠地主機上。 課件制作人:謝希仁客戶服務器方式n現在由于 PC 機的功能越來越強,用戶已較少使用 TELNET 了。nTELNET 也使用客戶服務器方式。在本地系統運行 TELNET 客戶進程,而在遠地主機則運行 TELNET 服務器進程。n和 FTP 的情況相似,服務器中的主進程等待新的請求,并產生從屬進程

23、來處理每一個連接。 課件制作人:謝希仁TELNET 使用網絡虛擬終端 NVT 格式 因特網TCP 連接 客戶端 服務器端 使用客戶端的格式 使用服務器端的格式 使用 NVT 格式客戶服務器課件制作人:謝希仁網絡虛擬終端 NVT 格式 n客戶軟件把用戶的擊鍵和命令轉換成 NVT 格式,并送交服務器。n服務器軟件把收到的數據和命令,從 NVT 格式轉換成遠地系統所需的格式。n向用戶返回數據時,服務器把遠地系統的格式轉換為 NVT 格式,本地客戶再從 NVT 格式轉換到本地系統所需的格式。 課件制作人:謝希仁6.4 萬維網 WWW6.4.1 萬維網概述n萬維網 WWW (World Wide Web

24、)并非某種特殊的計算機網絡。n萬維網是一個大規模的、聯機式的信息儲藏所。n萬維網用鏈接的方法能非常方便地從因特網上的一個站點訪問另一個站點,從而主動地按需獲取豐富的信息。n這種訪問方式稱為“鏈接”。課件制作人:謝希仁萬維網提供分布式服務 萬維網站點 A萬維網站點 C萬維網站點 E萬維網站點 D萬維網站點 B鏈接到鏈接到鏈接到鏈接到鏈接到鏈接到課件制作人:謝希仁超媒體與超文本n萬維網是分布式超媒體(hypermedia)系統,它是超文本(hypertext)系統的擴充。n一個超文本由多個信息源鏈接成。利用一個鏈接可使用戶找到另一個文檔。這些文檔可以位于世界上任何一個接在因特網上的超文本系統中。超

25、文本是萬維網的基礎。n超媒體與超文本的區別是文檔內容不同。超文本文檔僅包含文本信息,而超媒體文檔還包含其他表示方式的信息,如圖形、圖像、聲音、動畫,甚至活動視頻圖像。課件制作人:謝希仁 萬維網的工作方式 n萬維網以客戶服務器方式工作。n瀏覽器就是在用戶計算機上的萬維網客戶程序。萬維網文檔所駐留的計算機則運行服務器程序,因此這個計算機也稱為萬維網服務器。n客戶程序向服務器程序發出請求,服務器程序向客戶程序送回客戶所要的萬維網文檔。n在一個客戶程序主窗口上顯示出的萬維網文檔稱為頁面(page)。課件制作人:謝希仁萬維網必須解決的問題 (1) 怎樣標志分布在整個因特網上的萬維網文檔? n使用統一資源

26、定位符 URL (Uniform Resource Locator)來標志萬維網上的各種文檔。n使每一個文檔在整個因特網的范圍內具有唯一的標識符 URL。 課件制作人:謝希仁萬維網必須解決的問題 (2) 用何協議實現萬維網上各種超鏈的鏈接? n在萬維網客戶程序與萬維網服務器程序之間進行交互所使用的協議,是超文本傳送協議 HTTP (HyperText Transfer Protocol)。nHTTP 是一個應用層協議,它使用 TCP 連接進行可靠的傳送。 課件制作人:謝希仁萬維網必須解決的問題 (3) 怎樣使各種萬維網文檔都能在因特網上的各種計算機上顯示出來,同時使用戶清楚地知道在什么地方存在

27、著超鏈? n超文本標記語言 HTML (HyperText Markup Language)使得萬維網頁面的設計者可以很方便地用一個超鏈從本頁面的某處鏈接到因特網上的任何一個萬維網頁面,并且能夠在自己的計算機屏幕上將這些頁面顯示出來。 課件制作人:謝希仁萬維網必須解決的問題 (4) 怎樣使用戶能夠很方便地找到所需的信息? n為了在萬維網上方便地查找信息,用戶可使用各種的搜索工具(即搜索引擎)。 課件制作人:謝希仁6.4.2 統一資源定位符 URL1. URL的格式n統一資源定位符 URL 是對可以從因特網上得到的資源的位置和訪問方法的一種簡潔的表示。nURL 給資源的位置提供一種抽象的識別方法

28、,并用這種方法給資源定位。n只要能夠對資源定位,系統就可以對資源進行各種操作,如存取、更新、替換和查找其屬性。nURL 相當于一個文件名在網絡范圍的擴展。因此 URL 是與因特網相連的機器上的任何可訪問對象的一個指針。 課件制作人:謝希仁URL 的一般形式 n由以冒號隔開的兩大部分組成,并且在 URL 中的字符對大寫或小寫沒有要求。nURL 的一般形式是::/:/ ftp 文件傳送協議 FTPhttp 超文本傳送協議 HTTPNews USENET 新聞課件制作人:謝希仁URL 的一般形式(續) n由以冒號隔開的兩大部分組成,并且在 URL 中的字符對大寫或小寫沒有要求。nURL 的一般形式是

29、::/:/ 是存放資源的主機在因特網中的域名課件制作人:謝希仁URL 的一般形式(續) n由以冒號隔開的兩大部分組成,并且在 URL 中的字符對大寫或小寫沒有要求。nURL 的一般形式是::/:/有時可省略課件制作人:謝希仁使用 HTTP 的 URLn使用 HTTP 的 URL 的一般形式 http:/:/ 這表示使用 HTTP 協議課件制作人:謝希仁使用 HTTP 的 URLn使用 HTTP 的 URL 的一般形式 http:/:/ 冒號和兩個斜線是規定的格式課件制作人:謝希仁使用 HTTP 的 URLn使用 HTTP 的 URL 的一般形式 http:/:/ 這里寫主機的域名課件制作人:謝

30、希仁使用 HTTP 的 URLn使用 HTTP 的 URL 的一般形式 http:/:/ HTTP 的默認端口號是 80,通??墒÷哉n件制作人:謝希仁使用 HTTP 的 URLn使用 HTTP 的 URL 的一般形式 http:/:/ 若再省略文件的項,則 URL 就指到因特網上的某個主頁(home page)。 課件制作人:謝希仁6.4.3 超文本傳送協議 HTTP1. HTTP 的操作過程 n為了使超文本的鏈接能夠高效率地完成,需要用 HTTP 協議來傳送一切必須的信息。n從層次的角度看,HTTP 是面向事務的(transaction-oriented)應用層協議,它是萬維網上能夠可靠地交

31、換文件(包括文本、聲音、圖像等各種多媒體文件)的重要基礎。 萬維網的工作過程 因特網服務器鏈接到URL的超鏈HTTP 使用此 TCP 連接瀏覽器 程序服務器 程序HTTP客戶清華大學院系設置建立 TCP 連接釋放 TCP 連接HTTP 響應報文 響應文檔HTTP 請求報文 請求文檔用戶點擊鼠標后所發生的事件 (1) 瀏覽器分析超鏈指向頁面的 URL。(2) 瀏覽器向 DNS 請求解析 的 IP 地址。(3) 域名系統 DNS 解析出清華大學服務器的 IP 地址。(4) 瀏覽器與服務器建立 TCP 連接(5) 瀏覽器發出取文件命令: GET /chn/yxsz/index.htm。(6) 服務器

32、給出響應,把文件 index.htm 發給瀏覽器。(7) TCP 連接釋放。(8) 瀏覽器顯示“清華大學院系設置”文件 index.htm 中的所有文本。課件制作人:謝希仁HTTP 的主要特點 nHTTP 是面向事務的客戶服務器協議。nHTTP 1.0 協議是無狀態的(stateless)。nHTTP 協議本身也是無連接的,雖然它使用了面向連接的 TCP 向上提供的服務。課件制作人:謝希仁RTTRTT請求一個萬維網文檔所需的時間 萬維網服務器萬維網客戶發起 TCP 連接HTTP 請求報文傳輸文檔的時間整個文檔收到時間時間HTTP 響應報文課件制作人:謝希仁持續連接(persistent con

33、nection)nHTTP/1.1 協議使用持續連接。n萬維網服務器在發送響應后仍然在一段時間內保持這條連接,使同一個客戶(瀏覽器)和該服務器可以繼續在這條連接上傳送后續的 HTTP 請求報文和響應報文。n這并不局限于傳送同一個頁面上鏈接的文檔,而是只要這些文檔都在同一個服務器上就行。n目前一些流行的瀏覽器(例如,IE 6.0)的默認設置就是使用 HTTP/1.1。課件制作人:謝希仁持續連接的兩種工作方式n非流水線方式:客戶在收到前一個響應后才能發出下一個請求。這比非持續連接的兩倍 RTT 的開銷節省了建立 TCP 連接所需的一個 RTT 時間。但服務器在發送完一個對象后,其 TCP 連接就處

34、于空閑狀態,浪費了服務器資源。n流水線方式:客戶在收到 HTTP 的響應報文之前就能夠接著發送新的請求報文。一個接一個的請求報文到達服務器后,服務器就可連續發回響應報文。使用流水線方式時,客戶訪問所有的對象只需花費一個 RTT時間,使 TCP 連接中的空閑時間減少,提高了下載文檔效率。 課件制作人:謝希仁代理服務器(proxy server) n代理服務器(proxy server)又稱為萬維網高速緩存(Web cache),它代表瀏覽器發出 HTTP 請求。n萬維網高速緩存把最近的一些請求和響應暫存在本地磁盤中。n當與暫時存放的請求相同的新請求到達時,萬維網高速緩存就把暫存的響應發送出去,而

35、不需要按 URL 的地址再去因特網訪問該資源。 課件制作人:謝希仁使用高速緩存可減少訪問因特網服務器的時延 校園網源點服務器2 Mb/s因特網瀏覽器R1R2這條鏈路上的時延很大沒有使用高速緩存的情況所有萬維網通信量都經過這條鏈路使用高速緩存的情況校園網校園網的高速緩存(代理服務器)源點服務器2 Mb/s因特網瀏覽器R1R2(1) 瀏覽器訪問因特網的服務器時,要先與校園網的高速緩存建立 TCP 連接,并向高速緩存發出 HTTP 請求報文 使用高速緩存的情況校園網校園網的高速緩存(代理服務器)源點服務器2 Mb/s因特網瀏覽器R1R2(2) 若高速緩存已經存放了所請求的對象,則將此對象放入 HTT

36、P 響應報文中返回給瀏覽器。使用高速緩存的情況校園網校園網的高速緩存(代理服務器)源點服務器2 Mb/s因特網瀏覽器R1R2(3) 否則,高速緩存就代表發出請求的用戶瀏覽器,與因特網上的源點服務器建立 TCP 連接,并發送 HTTP 請求報文。使用高速緩存的情況校園網校園網的高速緩存(代理服務器)源點服務器2 Mb/s因特網瀏覽器R1R2(4) 源點服務器將所請求的對象放在 HTTP 響應報文中返回給校園網的高速緩存。使用高速緩存的情況校園網校園網的高速緩存(代理服務器)源點服務器2 Mb/s因特網瀏覽器R1R2(5) 高速緩存收到此對象后,先復制在其本地存儲器中(為今后使用),然后再將該對象

37、放在 HTTP 響應報文中,通過已建立的 TCP 連接,返回給請求該對象的瀏覽器。課件制作人:謝希仁3. HTTP 的報文結構 HTTP 有兩類報文:n請求報文從客戶向服務器發送請求報文。n響應報文從服務器到客戶的回答。n由于 HTTP 是面向正文的(text-oriented),因此在報文中的每一個字段都是一些 ASCII 碼串,因而每個字段的長度都是不確定的。HTTP 的報文結構(請求報文) 方 法URL版 本首部字段名首部行:值首部字段名值:實體主體(通常不用)請求行空格回車換行:CRLFCRLFCRLFCRLF報文由三個部分組成,即開始行、首部行和實體主體。在請求報文中,開始行就是請求

38、行。開始行HTTP 的報文結構(請求報文) 方 法URL版 本首部字段名首部行:值首部字段名值:實體主體(通常不用)請求行空格回車換行:CRLFCRLFCRLFCRLF“方法”是面向對象技術中使用的專門名詞。所謂“方法”就是對所請求的對象進行的操作,因此這些方法實際上也就是一些命令。因此,請求報文的類型是由它所采用的方法決定的。 課件制作人:謝希仁HTTP 請求報文的一些方法 方法(操作) 意義OPTION 請求一些選項的信息GET 請求讀取由 URL所標志的信息HEAD 請求讀取由 URL所標志的信息的首部POST 給服務器添加信息(例如,注釋)PUT 在指明的 URL下存儲一個文檔DELE

39、TE 刪除指明的 URL所標志的資源TRACE 用來進行環回測試的請求報文CONNECT 用于代理服務器HTTP 的報文結構(請求報文) 方 法URL版 本首部字段名首部行:值首部字段名值:實體主體(通常不用)請求行空格回車換行:CRLFCRLFCRLFCRLF“URL”是所請求的資源的 URL。HTTP 的報文結構(請求報文) 方 法URL版 本首部字段名首部行:值首部字段名值:實體主體(通常不用)請求行空格回車換行:CRLFCRLFCRLFCRLF“版本”是 HTTP 的版本。HTTP 的報文結構(響應報文) 版 本狀態碼短 語首部字段名首部行:值首部字段名值:實體主體(有些響應報文不用)

40、狀態行空格回車換行:CRLFCRLFCRLFCRLF響應報文的開始行是狀態行。狀態行包括三項內容,即 HTTP 的版本,狀態碼,以及解釋狀態碼的簡單短語。 開始行課件制作人:謝希仁狀態碼都是三位數字 n1xx 表示通知信息的,如請求收到了或正在進行處理。n2xx 表示成功,如接受或知道了。n3xx 表示重定向,表示要完成請求還必須采取進一步的行動。n4xx 表示客戶的差錯,如請求中有錯誤的語法或不能完成。n5xx 表示服務器的差錯,如服務器失效無法完成請求。課件制作人:謝希仁4. 在服務器上存放用戶的信息n萬維網站點使用 Cookie 來跟蹤用戶。nCookie 表示在 HTTP 服務器和客戶

41、之間傳遞的狀態信息。n使用 Cookie 的網站服務器為用戶產生一個唯一的識別碼。利用此識別碼,網站就能夠跟蹤該用戶在該網站的活動。 課件制作人:謝希仁6.4.4 萬維網的文檔1. 超文本標記語言 HTMLn超文本標記語言 HTML 中的 Markup 的意思就是“設置標記”。nHTML 定義了許多用于排版的命令(即標簽)。nHTML 把各種標簽嵌入到萬維網的頁面中。這樣就構成了所謂的 HTML 文檔。HTML 文檔是一種可以用任何文本編輯器創建的 ASCII 碼文件。 課件制作人:謝希仁HTML 文檔 n僅當 HTML 文檔是以.html 或 .htm 為后綴時,瀏覽器才對此 文檔的各種標簽

42、進行解釋。n如 HTML 文檔改換以 .txt 為其后綴,則 HTML 解釋程序就不對標簽進行解釋,而瀏覽器只能看見原來的文本文件。n當瀏覽器從服務器讀取 HTML 文檔后,就按照 HTML 文檔中的各種標簽,根據瀏覽器所使用的顯示器的尺寸和分辨率大小,重新進行排版并恢復出所讀取的頁面。HTML 文檔中標簽的用法 一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。HTML 文檔開始HTML 文檔中標簽的用法 一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。首部開始HTML

43、文檔中標簽的用法 一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。標題HTML 文檔中標簽的用法 一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。首部結束HTML 文檔中標簽的用法 一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。主體開始HTML 文檔中標簽的用法 一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。1 級標題 一個 HTML 的例子 H

44、TML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。HTML 文檔中標簽的用法 第一個段落 一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。HTML 文檔中標簽的用法 第二個段落HTML 文檔中標簽的用法 一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。主體結束HTML 文檔中標簽的用法 一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。HTML 文檔結束課件制作人:謝希仁兩種不同

45、的鏈接n遠程鏈接:超鏈的終點是其他網點上的頁面。n本地鏈接:超鏈指向本計算機中的某個文件。課件制作人:謝希仁2. 動態萬維網文檔 n靜態文檔是指該文檔創作完畢后就存放在萬維網服務器中,在被用戶瀏覽的過程中,內容不會改變。 n動態文檔是指文檔的內容是在瀏覽器訪問萬維網服務器時才由應用程序動態創建。n動態文檔和靜態文檔之間的主要差別體現在服務器一端。這主要是文檔內容的生成方法不同。而從瀏覽器的角度看,這兩種文檔并沒有區別。 課件制作人:謝希仁萬維網服務器功能的擴充 (1) 應增加另一個應用程序,用來處理瀏覽器發來的數據,并創建動態文檔。(2) 應增加一個機制,用來使萬維網服務器把瀏覽器發來的數據傳

46、送給這個應用程序,然后萬維網服務器能夠解釋這個應用程序的輸出,并向瀏覽器返回 HTML 文檔。課件制作人:謝希仁CGI 響應動態文檔HTTP 響應報文擴充了功能的萬維網服務器 萬維網服務器瀏覽器 程序萬維網客戶服務器 程序HTTP數據庫HTTP 請求報文 請求文檔 CGI 程序創建動態文檔課件制作人:謝希仁通用網關接口 CGI(Common Gateway Interface) nCGI 是一種標準,它定義了動態文檔應如何創建,輸入數據應如何提供給應用程序,以及輸出結果應如何使用。n萬維網服務器與 CGI 的通信遵循 CGI 標準。n“通用”:CGI 標準所定義的規則對其他任何語言都是通用的。

47、n“網關”:CGI 程序的作用像網關。n“接口”:有一些已定義好的變量和調用等可供其他 CGI 程序使用。 課件制作人:謝希仁CGI 程序nCGI 程序的正式名字是 CGI 腳本(script)。n“腳本”指的是一個程序,它被另一個程序(解釋程序)而不是計算機的處理機來解釋或執行。n腳本運行起來要比一般的編譯程序要慢,因為它的每一條指令先要被另一個程序來處理(這就要一些附加的指令),而不是直接被指令處理器來處理。 課件制作人:謝希仁3. 活動萬維網文檔n活動文檔(active document)技術把所有的工作都轉移給瀏覽器端。n每當瀏覽器請求一個活動文檔時,服務器就返回一段程序副本在瀏覽器端

48、運行。n活動文檔程序可與用戶直接交互,并可連續地改變屏幕的顯示。n由于活動文檔技術不需要服務器的連續更新傳送,對網絡帶寬的要求也不會太高。 課件制作人:謝希仁 響應程序HTTP 響應報文程序活動文檔在客戶端創建 萬維網服務器瀏覽器 程序萬維網客戶服務器 程序HTTPHTTP 請求報文 請求文檔程序事先被編譯成二進制代碼,存放為文件程序 此程序在客戶端創建出活動文檔文檔課件制作人:謝希仁用 Java 技術創建活動文檔 n由美國 Sun 公司開發的 Java 語言是一項用于創建和運行活動文檔的技術。n在 Java 技術中使用 “小應用程序”(applet)來描述活動文檔程序。n用戶從萬維網服務器下

49、載嵌入了 Java 小應用程序的 HTML 文檔后,可在瀏覽器的屏幕上點擊某個圖像,就可看到動畫效果,或在下拉式菜單中點擊某個項目,就可看到計算結果。nJava 技術是活動文檔技術的一部分。 課件制作人:謝希仁Java 技術裝三個主要組成部分 (1) 程序設計語言。Java 包含一個新的程序設計語言,用來編寫傳統的計算機程序和 Java 小應用程序。(2) 運行(runtime)環境。這是運行 Java 程序所必須的運行環境,其中包括 Java 虛擬機(簡稱為 JVM),該軟件定義了 Java 二進制代碼的執行模型。(3) 類庫(class library)。為了更容易編寫 Java 小應用程

50、序,Java 提供了強大的類庫支持。 課件制作人:謝希仁JavanJava 是一種面向對象的高級語言,從 C+ 派生出來的,它省略了 C+ 很多復雜的、很少用的語言特點。nJava 的每一個數據項都有一個確定的類型。對數據的操作嚴格按照該數據的類型來進行。nJava 的編譯程序將源程序轉換成 Java 字節碼(bytecode),這是一種與機器無關的二進制代碼。計算機程序調用解釋程序讀取字節碼,并解釋執行。 課件制作人:謝希仁計算機硬件無關nJava 語言、字節碼以及 Java 運行系統都被設計成與計算機硬件無關。一旦形成了字節碼,就可在任何計算機上運行并產生相同的輸出。nJava 小應用程序

51、與機器無關可使在任何計算機上運行的瀏覽器程序能夠下載并運行活動文檔。n可保證活動文檔在所有的瀏覽器上產生同樣的正確輸出。n可大大地降低活動文檔的創建和測試費用,因為不必為每一種計算機都制作一個副本。課件制作人:謝希仁Java 解釋程序 n運行 Java 的瀏覽器需要有 HTML 解釋程序和 Java 小應用程序解釋程序。n解釋程序的核心是一個模仿計算機的簡單循環。n解釋程序維持一個指令指針,在初始化時指在小應用程序的開始處。n在每一次循環操作時,解釋程序在指令指針指向的地址讀取字節碼。然后解釋程序對字節碼進行解碼,并完成指明的操作。 4. 瀏覽器的結構與遠地服務器通信輸出至顯示器從鼠標和鍵盤輸

52、入網 絡 接 口可選客戶程序HTML解釋程序可選解釋程序控 制 程 序驅動程序HTTP 客戶程序緩 存課件制作人:謝希仁瀏覽器的主要組成部分 n瀏覽器有一組客戶、一組解釋程序,以及管理這些客戶和解釋程序的控制程序。n控制程序是其中的核心部件,它解釋鼠標的點擊和鍵盤的輸入,并調用有關的組件來執行用戶指定的操作。n例如,當用戶用鼠標點擊一個超鏈的起點時,控制程序就調用一個客戶從所需文檔所在的遠地服務器上取回該文檔,并調用解釋程序向用戶顯示該文檔。 課件制作人:謝希仁解釋程序 nHTML 解釋程序是必不可少的,而其他的解釋程序則是可選的。 n解釋程序把 HTML 規格轉換為適合用戶顯示硬件的命令來處

53、理版面的細節。 n許多瀏覽器還包含 FTP 客戶程序,用來獲取文件傳送服務。n一些瀏覽器也包含電子郵件客戶程序,使瀏覽器能夠發送和接收電子郵件。課件制作人:謝希仁瀏覽器中的緩存 n瀏覽器將它取回的每一個頁面副本都放入本地磁盤的緩存中。n當用戶用鼠標點擊某個選項時,瀏覽器首先檢查磁盤的緩存。若緩存中保存了該項,瀏覽器就直接從緩存中得到該項副本而不必從網絡獲取,這樣就明顯地改善瀏覽器的運行特性。 。n但緩存要占用磁盤大量的空間,而瀏覽器性能的改善只有在用戶再次查看緩存中的頁面時才有幫助。n許多瀏覽器允許用戶調整緩存策略。 課件制作人:謝希仁6.4.5 萬維網的信息檢索系統1. 全文檢索搜索和分類目

54、錄搜索n在萬維網中用來進行搜索的程序叫做搜索引擎。n全文檢索搜索引擎是一種純技術型的檢索工具。它的工作原理是通過搜索軟件到因特網上的各網站收集信息,找到一個網站后可以從這個網站再鏈接到另一個網站。然后按照一定的規則建立一個很大的在線數據庫供用戶查詢。n用戶在查詢時只要輸入關鍵詞,就從已經建立的索引數據庫上進行查詢(并不是實時地在因特網上檢索到的信息)。 課件制作人:謝希仁分類目錄搜索 n分類目錄搜索引擎并不采集網站的任何信息,而是利用各網站向搜索引擎提交的網站信息時填寫的關鍵詞和網站描述等信息,經過人工審核編輯后,如果認為符合網站登錄的條件,則輸入到分類目錄的數據庫中,供網上用戶查詢。n分類目

55、錄搜索也叫做分類網站搜索。 課件制作人:謝希仁一些著名的搜索引擎 n最著名的全文檢索搜索引擎:nGoogle(谷歌)() n百度 () n最著名的分類目錄搜索引擎:n雅虎 ()n雅虎中國 ()n新浪 ()n搜狐 ()n網易 () 課件制作人:謝希仁垂直搜索引擎(Vertical Search Engine) n針對某一特定領域、特定人群或某一特定需求提供搜索服務。垂直搜索也是提供關鍵字來進行搜索的,但被放到了一個行業知識的上下文中,返回的結果更傾向于信息、消息、條目等。 課件制作人:謝希仁6.5 電子郵件6.5.1 概述n電子郵件(e-mail)是因特網上使用得最多的和最受用戶歡迎的一種應用。

56、n電子郵件把郵件發送到收件人使用的郵件服務器,并放在其中的收件人郵箱中,收件人可隨時上網到自己使用的郵件服務器進行讀取。n電子郵件不僅使用方便,而且還具有傳遞迅速和費用低廉的優點。n現在電子郵件不僅可傳送文字信息,而且還可附上聲音和圖像。課件制作人:謝希仁電子郵件的一些標準n發送郵件的協議:SMTPn讀取郵件的協議:POP3 和 IMAPnMIME 在其郵件首部中說明了郵件的數據類型(如文本、聲音、圖像、視像等),使用 MIME 可在郵件中同時傳送多種類型的數據。 電子郵件的最主要的組成構件 發送方郵件緩存 接收端郵件服務器用戶代理SMTPSMTPPOP3 發送端郵件服務器用戶代理用戶郵箱接收

57、方(發送郵件)(發送郵件)(讀取郵件)因特網SMTPPOP3發送郵件發送郵件 SMTP讀取郵件TCP連接TCP連接發送方郵件服務器SMTP客戶POP3客戶發件人用戶代理接收方郵件服務器SMTP服務器POP3服務器SMTP服務器SMTP客戶收件人用戶代理TCP 連接課件制作人:謝希仁用戶代理 UA (User Agent)n用戶代理 UA 就是用戶與電子郵件系統的接口,是電子郵件客戶端軟件。n用戶代理的功能:撰寫、顯示、處理和通信。n郵件服務器的功能是發送和接收郵件,同時還要向發信人報告郵件傳送的情況(已交付、被拒絕、丟失等)。n郵件服務器按照客戶服務器方式工作。郵件服務器需要使用發送和讀取兩個

58、不同的協議。課件制作人:謝希仁應當注意n一個郵件服務器既可以作為客戶,也可以作為服務器。n例如,當郵件服務器 A 向另一個郵件服務器 B 發送郵件時,郵件服務器 A 就作為 SMTP 客戶,而 B 是 SMTP 服務器。n當郵件服務器 A 從另一個郵件服務器 B 接收郵件時,郵件服務器 A 就作為 SMTP 服務器,而 B 是 SMTP 客戶。課件制作人:謝希仁發送和接收電子郵件的幾個重要步驟 發件人調用 PC 機中的用戶代理撰寫和編輯要發送的郵件。 發件人的用戶代理把郵件用 SMTP 協議發給發送方郵件服務器, SMTP 服務器把郵件臨時存放在郵件緩存隊列中,等待發送。 發送方郵件服務器的

59、SMTP 客戶與接收方郵件服務器的 SMTP 服務器建立 TCP 連接,然后就把郵件緩存隊列中的郵件依次發送出去。 課件制作人:謝希仁發送和接收電子郵件的幾個重要步驟(續) 運行在接收方郵件服務器中的SMTP服務器進 程收到郵件后,把郵件放入收件人的用戶郵箱中,等待收件人進行讀取。 收件人在打算收信時,就運行 PC 機中的用戶代理,使用 POP3(或 IMAP)協議讀取發送給自己的郵件。n請注意,POP3 服務器和 POP3 客戶之間的通信是由 POP3 客戶發起的。 課件制作人:謝希仁電子郵件的組成n電子郵件由信封(envelope)和內容(content)兩部分組成。n電子郵件的傳輸程序根據郵件信封上的信息來傳送郵件。用戶在從自己的郵箱中讀取郵件時才能見到郵件的內容。n在郵件的信封上,最重要的就是收件人的地址。 課件制作人:謝希仁電子郵件地址的格式nTCP/IP 體系的電子郵件系統規定電子郵件地址的格式如下: 收件人郵箱名郵箱所在主機的域名 (6-1)n符號“”讀作“at”,表示“在”的意思。 n 例如,電子郵件地址 郵箱所在的主機的域名在全世界必須是唯一的 這個用戶名在該域名的范圍內是唯一的。 課件制作人:謝希仁6.5.2 簡單郵件傳送協議 SMTP nSMTP 所規定的就是在兩個相互通信的 SMTP 進程之間應如何交換信息。n由于 SMTP 使用客戶服務器

溫馨提示

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

評論

0/150

提交評論