




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、計算機網絡計算機網絡第 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.3 遠程終端協議 TELNET 6.4 萬維網 WWW 6.4.1 概述 6.4.2 統一資源定位符 URL 6.4.3 超文本傳送協議 HTTP 6.4.4 萬維網的文檔 6.4.5 萬維網的信息檢索系統章節安排:章節安排:計算機網絡主
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 動態主機配置協議 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、常用的系統調用章節安排:章節安排:計算機網絡主講:南京信息工程大學劉生本章重點:本章重點:1.DNS原理及域名結構2.FTP協議3.WWW與HTTP4.電子郵件系統原理5.DHCP6.SNMP*(選講)計算機網絡主講:南京信息工程大學劉生應用層協議的特點應用層協議的特點 l應用層的具體內容就是規定應用進程在通信時所遵循的協議。l應用層的許多協議都是基于客戶服務器方式。計算機網絡主講:南京信息工程大學劉生6.1 域名系統域名系統 DNS6.1.1 域名系統概述域名系統概述l許多應用層軟件經常直接使用域名系統 DNS (Domain Name System),但計算機的用戶只是間接而不是直接使用域
4、名系統。 l因特網采用層次結構的命名樹作為主機的域名,并使用分布式的域名系統 DNS。l域名到 IP 地址的解析是由若干個域名服務器程序完成的。域名服務器程序在專設的結點上運行,運行該程序的機器稱為域名服務器。 計算機網絡主講:南京信息工程大學劉生6.1.2 因特網的域名結構因特網的域名結構l因特網采用了層次樹狀結構的命名方法。l任何一個連接在因特網上的主機或路由器,都有一個唯一的層次結構的名字,即域名。l域名的結構由標號序列組成,各標號之間用點隔開: . 三級域名 . 二級域名 . 頂級域名l各標號分別代表不同級別的域名。 計算機網絡主講:南京信息工程大學劉生域名只是個邏輯概念域名只是個邏輯
5、概念l域名只是個邏輯概念,并不代表計算機所在的物理地點。l變長的域名和使用有助記憶的字符串,是為了便于人來使用。而 IP 地址是定長的 32 位二進制數字則非常便于機器進行處理。l域名中的“點”和點分十進制 IP 地址中的“點”并無一一對應的關系。點分十進制 IP 地址中一定是包含三個“點”,但每一個域名中“點”的數目則不一定正好是三個。 計算機網絡主講:南京信息工程大學劉生頂級域名頂級域名 TLD(Top Level Domain)(1) 國家頂級域名 nTLD:如: .cn 表示中國,.us 表示美國,.uk 表示英國,等等。(2) 通用頂級域名 gTLD:最早的頂級域名是: .com (
6、公司和企業) .net (網絡服務機構) .org (非贏利性組織) .edu (美國專用的教育機構() .gov (美國專用的政府部門) .mil (美國專用的軍事部門) .int (國際組織)計算機網絡主講:南京信息工程大學劉生頂級域名頂級域名 TLD (續)(續)(3) 基礎結構域名(infrastructure domain):這種頂級域名只有一個,即 arpa,用于反向域名解析,因此又稱為反向域名。 計算機網絡主講:南京信息工程大學劉生新增加了下列的通用頂級域名新增加了下列的通用頂級域名 (航空運輸企業) (公司和企業)l.cat (加泰隆人的語言和文化團體)
7、 (合作團體) (各種情況) (人力資源管理者)l.mobi (移動產品與服務的用戶和提供者) (博物館) (個人) (有證書的專業人員) (旅游業) 計算機網絡主講:南京信息工程大學劉生因特網的域名空間因特網的域名空間 根四級域名mailwwwbjeducomcctvibmhp二級域名pkutsinghua三級域名mailwwwcomnetorgedugovaerocnuk頂級域名計算機網絡主講:南京信息工程大學劉生6.1.3 域名服務器域名服務器 l一個服務器所負責管轄的(或有權限的)范圍叫做區(zo
8、ne)。l每一個區設置相應的權限(授權)域名服務器,用來保存該區中的所有主機的域名到IP地址的映射。lDNS 服務器的管轄范圍不是以“域”為單位,而是以“區”為單位。 計算機網絡主講:南京信息工程大學劉生區的不同劃分方法舉例區的不同劃分方法舉例 域 區abcxuvwty(a) 區 = 域(b) 區 域域 區區abcxuvwtycomeduorg根comeduorg根計算機網絡主講:南京信息工程大學劉生樹狀結構的樹狀結構的 DNS 域名服務器域名服務器 根域名服務器org 域名服務器com 域名服務器edu 域名服務器域名服務器abc 公司有兩個權限域名服務器權限域名服務器根域名服務器頂級域名服
9、務器域名服務器計算機網絡主講:南京信息工程大學劉生域名服務器有以下四種類型域名服務器有以下四種類型 l根域名服務器 l頂級域名服務器 l權限域名服務器 l本地域名服務器 計算機網絡主講:南京信息工程大學劉生根域名服務器根域名服務器 最高層次的域名服務器最高層次的域名服務器l根域名服務器是最重要的域名服務器。所有的根域名服務器都知道所有的頂級域名服務器的域名和 IP 地址。l不管是哪一個本地域名服務器,若要對因特網上任何一個域名進行解析,只要自己無法解析,就首先求助于根域名服務器。l在因特網上共有13 個不同 IP 地址的根域名服務器,它們的名字是用一個英文字母命名,從a 一直到 m(前13 個
10、字母)。計算機網絡主講:南京信息工程大學劉生根域名服務器共有根域名服務器共有 13 套裝置套裝置(不是(不是 13 個機器)個機器)l這些根域名服務器相應的域名分別是 l到 2006 年底全世界已經安裝了一百多個根域名服務器機器,分布在世界各地。l這樣做的目的是為了方便用戶,使世界上大部分 DNS 域名服務器都能就近找到一個根域名服務器。 計算機網絡主講:南京信息工程大學劉生舉例:根域名服務器舉例:根域名服務器 f 的地點分布圖的地點分布圖 根域名服務器并不直接把域名直接轉換成 IP 地址。 在使用迭代查詢時,根域名服務器把下一步應當找 的頂級域名服務器的 IP 地址告訴本地域名服務器。共 4
11、0 個機器計算機網絡主講:南京信息工程大學劉生頂級域名服務器頂級域名服務器(即(即 TLD 服務器)服務器) l這些域名服務器負責管理在該頂級域名服務器注冊的所有二級域名。l當收到 DNS 查詢請求時,就給出相應的回答(可能是最后的結果,也可能是下一步應當找的域名服務器的 IP 地址)。 計算機網絡主講:南京信息工程大學劉生權限域名服務器權限域名服務器 l這就是前面已經講過的負責一個區的域名服務器。l當一個權限域名服務器還不能給出最后的查詢回答時,就會告訴發出查詢請求的 DNS 客戶,下一步應當找哪一個權限域名服務器。 計算機網絡主講:南京信息工程大學劉生本地域名服務器本地域名服務器 l本地域
12、名服務器對域名系統非常重要。l當一個主機發出 DNS 查詢請求時,這個查詢請求報文就發送給本地域名服務器。l每一個因特網服務提供者 ISP,或一個大學,甚至一個大學里的系,都可以擁有一個本地域名服務器,l這種域名服務器有時也稱為默認域名服務器。 計算機網絡主講:南京信息工程大學劉生提高域名服務器的可靠性提高域名服務器的可靠性lDNS 域名服務器都把數據復制到幾個域名服務器來保存,其中的一個是主域名服務器,其他的是輔助域名服務器。l當主域名服務器出故障時,輔助域名服務器可以保證 DNS 的查詢工作不會中斷。l主域名服務器定期把數據復制到輔助域名服務器中,而更改數據只能在主域名服務器中進行。這樣就
13、保證了數據的一致性。 計算機網絡主講:南京信息工程大學劉生域名的解析過程域名的解析過程 l主機向本地域名服務器的查詢一般都是采用遞歸查詢。如果本地域名服務器不知道主機所詢問的域名的 IP 地址,那么本地域名服務器就以 DNS 客戶的身份,向其他根域名服務器繼續發出查詢請求報文。l本地域名服務器向根域名服務器的查詢通常是采用迭代查詢。當根域名服務器收到本地域名服務器的迭代查詢請求報文時,要么給出所要查詢的 IP 地址,要么告訴本地域名服務器:“你下一步應當向哪一個域名服務器進行查詢”。然后讓本地域名服務器進行后續的查詢。計算機網絡主講:南京信息工程大學劉生本地域名服務器采用迭代查詢本地域名服務器
14、采用迭代查詢 頂級域名服務器權限域名服務本地域名服務器根域名服務器迭代查詢 的 IP 地址 遞歸查詢需要查找 的 IP 地址計算機網絡主講:南京信息工程大學劉生本地域名服務器采用遞歸查詢本地域名服務器采用遞歸查詢(比較少用)(比較少用) 頂級域名服務器權限域名服務本地域名服務器 根域名服務器遞歸查詢遞歸查詢 的 IP 地址 需要查找 的 IP 地址計算機網絡主講:南京信息工程大學劉生名字的高速緩存名字的高速緩存 l每個域名服務器都維護一個高速緩存,存放最近用過的名字以及從何處獲得名字映射信息的記錄。l可大大減輕根域名服務器的負荷,使因特網上的 DNS 查詢請求和回答報文的數量大為減少。 l為保
15、持高速緩存中的內容正確,域名服務器應為每項內容設置計時器,并處理超過合理時間的項(例如,每個項目只存放兩天)。l當權限域名服務器回答一個查詢請求時,在響應中都指明綁定有效存在的時間值。增加此時間值可減少網絡開銷,而減少此時間值可提高域名轉換的準確性。 計算機網絡主講:南京信息工程大學劉生6.2 文件傳送協議文件傳送協議 6.2.1 FTP概述概述l文件傳送協議 FTP (File Transfer Protocol) 是因特網上使用得最廣泛的文件傳送協議。lFTP 提供交互式的訪問,允許客戶指明文件的類型與格式,并允許文件具有存取權限。lFTP 屏蔽了各計算機系統的細節,因而適合于在異構網絡中
16、任意計算機之間傳送文件。lRFC 959 很早就成為了因特網的正式標準。 計算機網絡主講:南京信息工程大學劉生文件傳送并非很簡單的問題文件傳送并非很簡單的問題l網絡環境中的一項基本應用就是將文件從一臺計算機中復制到另一臺可能相距很遠的計算機中。l初看起來,在兩個主機之間傳送文件是很簡單的事情。l其實這往往非常困難。原因是眾多的計算機廠商研制出的文件系統多達數百種,且差別很大。 計算機網絡主講:南京信息工程大學劉生6.2.2 FTP 的基本工作原理的基本工作原理 網絡環境下復制文件的復雜性:(1) 計算機存儲數據的格式不同。(2) 文件的目錄結構和文件命名的規定不同。(3) 對于相同的文件存取功
17、能,操作系統使用的命令不同。(4) 訪問控制方法不同。 計算機網絡主講:南京信息工程大學劉生FTP 特點特點l文件傳送協議 FTP 只提供文件傳送的一些基本的服務,它使用 TCP 可靠的運輸服務。lFTP 的主要功能是減少或消除在不同操作系統下處理文件的不兼容性。lFTP 使用客戶服務器方式。一個 FTP 服務器進程可同時為多個客戶進程提供服務。FTP 的服務器進程由兩大部分組成:一個主進程,負責接受新的請求;另外有若干個從屬進程,負責處理單個請求。計算機網絡主講:南京信息工程大學劉生主進程的工作步驟如下主進程的工作步驟如下l打開熟知端口(端口號為 21),使客戶進程能夠連接上。l等待客戶進程
18、發出連接請求。l啟動從屬進程來處理客戶進程發來的請求。從屬進程對客戶進程的請求處理完畢后即終止,但從屬進程在運行期間根據需要還可能創建其他一些子進程。l回到等待狀態,繼續接受其他客戶進程發來的請求。主進程與從屬進程的處理是并發地進行。 計算機網絡主講:南京信息工程大學劉生兩個連接兩個連接l控制連接在整個會話期間一直保持打開,FTP 客戶發出的傳送請求通過控制連接發送給服務器端的控制進程,但控制連接不用來傳送文件。l實際用于傳輸文件的是“數據連接”。服務器端的控制進程在接收到 FTP 客戶發送來的文件傳輸請求后就創建“數據傳送進程”和“數據連接”,用來連接客戶端和服務器端的數據傳送進程。l數據傳
19、送進程實際完成文件的傳送,在傳送完畢后關閉“數據傳送連接”并結束運行。 計算機網絡主講:南京信息工程大學劉生FTP 使用的兩個使用的兩個 TCP 連接連接 控制進程FTP 客戶端FTP 服務器端因特網TCP 控制連接TCP 數據連接用戶界面控制進程數據傳送進程數據傳送進程計算機網絡主講:南京信息工程大學劉生l 當客戶進程向服務器進程發出建立連接請求時,要尋找連接服務器進程的熟知端口(21),同時還要告訴服務器進程自己的另一個端口號碼,用于建立數據傳送連接。l接著,服務器進程用自己傳送數據的熟知端口(20)與客戶進程所提供的端口號碼建立數據傳送連接。l由于 FTP 使用了兩個不同的端口號,所以數
20、據連接與控制連接不會發生混亂。 兩個不同的端口號兩個不同的端口號 計算機網絡主講:南京信息工程大學劉生l使協議更加簡單和更容易實現。l在傳輸文件時還可以利用控制連接(例如,客戶發送請求終止傳輸)。 使用兩個不同端口號的好處使用兩個不同端口號的好處 計算機網絡主講:南京信息工程大學劉生6.2.3 簡單文件傳送協議簡單文件傳送協議 TFTP(Trivial File Transfer Protocol) lTFTP 是一個很小且易于實現的文件傳送協議。lTFTP 使用客戶服務器方式和使用 UDP 數據報,因此 TFTP 需要有自己的差錯改正措施。lTFTP 只支持文件傳輸而不支持交互。lTFTP
21、沒有一個龐大的命令集,沒有列目錄的功能,也不能對用戶進行身份鑒別。 計算機網絡主講:南京信息工程大學劉生TFTP 的主要特點是的主要特點是 (1) 每次傳送的數據 PDU 中有 512 字節的數據,但最后一次可不足 512 字節。 (2) 數據 PDU 也稱為文件塊(block),每個塊按序編號,從 1 開始。 (3) 支持 ASCII 碼或二進制傳送。 (4) 可對文件進行讀或寫。 (5) 使用很簡單的首部。 計算機網絡主講:南京信息工程大學劉生TFTP 的工作很像停止等待協議的工作很像停止等待協議l發送完一個文件塊后就等待對方的確認,確認時應指明所確認的塊編號。l發完數據后在規定時間內收不
22、到確認就要重發數據 PDU。l發送確認 PDU 的一方若在規定時間內收不到下一個文件塊,也要重發確認 PDU。這樣就可保證文件的傳送不致因某一個數據報的丟失而告失敗。 計算機網絡主講:南京信息工程大學劉生TFTP 的工作很像停止等待協議的工作很像停止等待協議l在一開始工作時。TFTP 客戶進程發送一個讀請求 PDU 或寫請求 PDU 給 TFTP 服務器進程,其熟知端口號碼為 69。lTFTP 服務器進程要選擇一個新的端口和 TFTP 客戶進程進行通信。l若文件長度恰好為 512 字節的整數倍,則在文件傳送完畢后,還必須在最后發送一個只含首部而無數據的數據 PDU。l若文件長度不是 512 字
23、節的整數倍,則最后傳送數據 PDU 的數據字段一定不滿512字節,這正好可作為文件結束的標志。計算機網絡主講:南京信息工程大學劉生6.3 按遠程終端協議按遠程終端協議 TELNETlTELNET 是一個簡單的遠程終端協議,也是因特網的正式標準。l用戶用 TELNET 就可在其所在地通過 TCP 連接注冊(即登錄)到遠地的另一個主機上(使用主機名或 IP 地址)。lTELNET 能將用戶的擊鍵傳到遠地主機,同時也能將遠地主機的輸出通過 TCP 連接返回到用戶屏幕。這種服務是透明的,因為用戶感覺到好像鍵盤和顯示器是直接連在遠地主機上。 計算機網絡主講:南京信息工程大學劉生客戶服務器方式客戶服務器方
24、式l現在由于 PC 機的功能越來越強,用戶已較少使用 TELNET 了。lTELNET 也使用客戶服務器方式。在本地系統運行 TELNET 客戶進程,而在遠地主機則運行 TELNET 服務器進程。l和 FTP 的情況相似,服務器中的主進程等待新的請求,并產生從屬進程來處理每一個連接。 計算機網絡主講:南京信息工程大學劉生TELNET 使用使用網絡虛擬終端網絡虛擬終端 NVT 格式格式 因特網TCP 連接 客戶端 服務器端 使用客戶端的格式 使用服務器端的格式 使用 NVT 格式客戶服務器計算機網絡主講:南京信息工程大學劉生網絡虛擬終端網絡虛擬終端 NVT 格式格式 l客戶軟件把用戶的擊鍵和命令
25、轉換成 NVT 格式,并送交服務器。l服務器軟件把收到的數據和命令,從 NVT 格式轉換成遠地系統所需的格式。l向用戶返回數據時,服務器把遠地系統的格式轉換為 NVT 格式,本地客戶再從 NVT 格式轉換到本地系統所需的格式。 計算機網絡主講:南京信息工程大學劉生6.4 萬維網萬維網 WWW6.4.1 萬維網概述萬維網概述l萬維網 WWW (World Wide Web)并非某種特殊的計算機網絡。l萬維網是一個大規模的、聯機式的信息儲藏所。l萬維網用鏈接的方法能非常方便地從因特網上的一個站點訪問另一個站點,從而主動地按需獲取豐富的信息。l這種訪問方式稱為“鏈接”。計算機網絡主講:南京信息工程大
26、學劉生萬維網提供分布式服務萬維網提供分布式服務 萬維網站點 A萬維網站點 C萬維網站點 E萬維網站點 D萬維網站點 B鏈接到鏈接到鏈接到鏈接到鏈接到鏈接到計算機網絡主講:南京信息工程大學劉生超媒體與超文本超媒體與超文本l萬維網是分布式超媒體(hypermedia)系統,它是超文本(hypertext)系統的擴充。l一個超文本由多個信息源鏈接成。利用一個鏈接可使用戶找到另一個文檔。這些文檔可以位于世界上任何一個接在因特網上的超文本系統中。超文本是萬維網的基礎。l超媒體與超文本的區別是文檔內容不同。超文本文檔僅包含文本信息,而超媒體文檔還包含其他表示方式的信息,如圖形、圖像、聲音、動畫,甚至活動視
27、頻圖像。計算機網絡主講:南京信息工程大學劉生 萬維網的工作方式萬維網的工作方式 l萬維網以客戶服務器方式工作。l瀏覽器就是在用戶計算機上的萬維網客戶程序。萬維網文檔所駐留的計算機則運行服務器程序,因此這個計算機也稱為萬維網服務器。l客戶程序向服務器程序發出請求,服務器程序向客戶程序送回客戶所要的萬維網文檔。l在一個客戶程序主窗口上顯示出的萬維網文檔稱為頁面(page)。計算機網絡主講:南京信息工程大學劉生萬維網必須解決的問題萬維網必須解決的問題 (1) 怎樣標志分布在整個因特網上的萬維網文檔? l使用統一資源定位符 URL (Uniform Resource Locator)來標志萬維網上的各
28、種文檔。l使每一個文檔在整個因特網的范圍內具有唯一的標識符 URL。 計算機網絡主講:南京信息工程大學劉生萬維網必須解決的問題萬維網必須解決的問題 (2) 用何協議實現萬維網上各種超鏈的鏈接? l在萬維網客戶程序與萬維網服務器程序之間進行交互所使用的協議,是超文本傳送協議 HTTP (HyperText Transfer Protocol)。lHTTP 是一個應用層協議,它使用 TCP 連接進行可靠的傳送。 計算機網絡主講:南京信息工程大學劉生萬維網必須解決的問題萬維網必須解決的問題 (3) 怎樣使各種萬維網文檔都能在因特網上的各種計算機上顯示出來,同時使用戶清楚地知道在什么地方存在著超鏈?
29、l超文本標記語言 HTML (HyperText Markup Language)使得萬維網頁面的設計者可以很方便地用一個超鏈從本頁面的某處鏈接到因特網上的任何一個萬維網頁面,并且能夠在自己的計算機屏幕上將這些頁面顯示出來。 計算機網絡主講:南京信息工程大學劉生萬維網必須解決的問題萬維網必須解決的問題 (4) 怎樣使用戶能夠很方便地找到所需的信息? l為了在萬維網上方便地查找信息,用戶可使用各種的搜索工具(即搜索引擎)。 計算機網絡主講:南京信息工程大學劉生6.4.2 統一資源定位符統一資源定位符 URL1. URL的格式的格式l統一資源定位符 URL 是對可以從因特網上得到的資源的位置和訪問
30、方法的一種簡潔的表示。lURL 給資源的位置提供一種抽象的識別方法,并用這種方法給資源定位。l只要能夠對資源定位,系統就可以對資源進行各種操作,如存取、更新、替換和查找其屬性。lURL 相當于一個文件名在網絡范圍的擴展。因此 URL 是與因特網相連的機器上的任何可訪問對象的一個指針。 計算機網絡主講:南京信息工程大學劉生URL 的一般形式的一般形式 l由以冒號隔開的兩大部分組成,并且在 URL 中的字符對大寫或小寫沒有要求。lURL 的一般形式是::/:/ ftp 文件傳送協議 FTPhttp 超文本傳送協議 HTTPNews USENET 新聞計算機網絡主講:南京信息工程大學劉生URL 的一
31、般形式(續)的一般形式(續) l由以冒號隔開的兩大部分組成,并且在 URL 中的字符對大寫或小寫沒有要求。lURL 的一般形式是::/:/ 是存放資源的主機在因特網中的域名計算機網絡主講:南京信息工程大學劉生URL 的一般形式(續)的一般形式(續) l由以冒號隔開的兩大部分組成,并且在 URL 中的字符對大寫或小寫沒有要求。lURL 的一般形式是::/:/有時可省略計算機網絡主講:南京信息工程大學劉生使用使用 HTTP 的的 URLl使用 HTTP 的 URL 的一般形式 http:/:/ 這表示使用 HTTP 協議計算機網絡主講:南京信息工程大學劉生使用使用 HTTP 的的 URLl使用 H
32、TTP 的 URL 的一般形式 http:/:/ 冒號和兩個斜線是規定的格式計算機網絡主講:南京信息工程大學劉生使用使用 HTTP 的的 URLl使用 HTTP 的 URL 的一般形式 http:/:/ 這里寫主機的域名計算機網絡主講:南京信息工程大學劉生使用使用 HTTP 的的 URLl使用 HTTP 的 URL 的一般形式 http:/:/ HTTP 的默認端口號是 80,通常可省略計算機網絡主講:南京信息工程大學劉生使用使用 HTTP 的的 URLl使用 HTTP 的 URL 的一般形式 http:/:/ 若再省略文件的項,則 URL 就指到因特網上的某個主頁(home page)。 計
33、算機網絡主講:南京信息工程大學劉生6.4.3 超文本傳送協議超文本傳送協議 HTTP1. HTTP 的操作過程的操作過程 l為了使超文本的鏈接能夠高效率地完成,需要用 HTTP 協議來傳送一切必須的信息。l從層次的角度看,HTTP 是面向事務的(transaction-oriented)應用層協議,它是萬維網上能夠可靠地交換文件(包括文本、聲音、圖像等各種多媒體文件)的重要基礎。 計算機網絡主講:南京信息工程大學劉生萬維網的工作過程萬維網的工作過程 因特網服務器鏈接到URL的超鏈HTTP 使用此 TCP 連接瀏覽器 程序服務器 程序HTTP客戶清華大學院系設置建立 TCP 連接釋放 TCP 連
34、接HTTP 響應報文 響應文檔HTTP 請求報文 請求文檔計算機網絡主講:南京信息工程大學劉生用戶點擊鼠標后所發生的事件用戶點擊鼠標后所發生的事件 (1) 瀏覽器分析超鏈指向頁面的 URL。(2) 瀏覽器向 DNS 請求解析 的 IP 地址。(3) 域名系統 DNS 解析出清華大學服務器的 IP 地址。(4) 瀏覽器與服務器建立 TCP 連接(5) 瀏覽器發出取文件命令: GET /chn/yxsz/index.htm。(6) 服務器給出響應,把文件 index.htm 發給瀏覽器。(7) TCP 連接釋放。(8) 瀏覽器顯示“清華大學院系設置”文件 index.htm 中的所有文本。計算機網
35、絡主講:南京信息工程大學劉生HTTP 的主要特點的主要特點 lHTTP 是面向事務的客戶服務器協議。lHTTP 1.0 協議是無狀態的(stateless)。lHTTP 協議本身也是無連接的,雖然它使用了面向連接的 TCP 向上提供的服務。計算機網絡主講:南京信息工程大學劉生RTTRTT請求一個萬維網文檔所需的時間請求一個萬維網文檔所需的時間 萬維網服務器萬維網客戶發起 TCP 連接HTTP 請求報文傳輸文檔的時間整個文檔收到時間時間HTTP 響應報文計算機網絡主講:南京信息工程大學劉生持續連接持續連接(persistent connection)lHTTP/1.1 協議使用持續連接。l萬維網
36、服務器在發送響應后仍然在一段時間內保持這條連接,使同一個客戶(瀏覽器)和該服務器可以繼續在這條連接上傳送后續的 HTTP 請求報文和響應報文。l這并不局限于傳送同一個頁面上鏈接的文檔,而是只要這些文檔都在同一個服務器上就行。l目前一些流行的瀏覽器(例如,IE 6.0)的默認設置就是使用 HTTP/1.1。計算機網絡主講:南京信息工程大學劉生持續連接的兩種工作方式持續連接的兩種工作方式l非流水線方式:客戶在收到前一個響應后才能發出下一個請求。這比非持續連接的兩倍 RTT 的開銷節省了建立 TCP 連接所需的一個 RTT 時間。但服務器在發送完一個對象后,其 TCP 連接就處于空閑狀態,浪費了服務
37、器資源。l流水線方式:客戶在收到 HTTP 的響應報文之前就能夠接著發送新的請求報文。一個接一個的請求報文到達服務器后,服務器就可連續發回響應報文。使用流水線方式時,客戶訪問所有的對象只需花費一個 RTT時間,使 TCP 連接中的空閑時間減少,提高了下載文檔效率。 計算機網絡主講:南京信息工程大學劉生代理服務器代理服務器(proxy server) l代理服務器(proxy server)又稱為萬維網高速緩存(Web cache),它代表瀏覽器發出 HTTP 請求。l萬維網高速緩存把最近的一些請求和響應暫存在本地磁盤中。l當與暫時存放的請求相同的新請求到達時,萬維網高速緩存就把暫存的響應發送出
38、去,而不需要按 URL 的地址再去因特網訪問該資源。 計算機網絡主講:南京信息工程大學劉生使用高速緩存可減少使用高速緩存可減少訪問因特網服務器的時延訪問因特網服務器的時延 校園網源點服務器2 Mb/s因特網瀏覽器R1R2這條鏈路上的時延很大沒有使用高速緩存的情況所有萬維網通信量都經過這條鏈路計算機網絡主講:南京信息工程大學劉生使用高速緩存的情況使用高速緩存的情況校園網校園網的高速緩存(代理服務器)源點服務器2 Mb/s因特網瀏覽器R1R2(1) 瀏覽器訪問因特網的服務器時,要先與校園網的高速緩存建立 TCP 連接,并向高速緩存發出 HTTP 請求報文 計算機網絡主講:南京信息工程大學劉生使用高
39、速緩存的情況使用高速緩存的情況校園網校園網的高速緩存(代理服務器)源點服務器2 Mb/s因特網瀏覽器R1R2(2) 若高速緩存已經存放了所請求的對象,則將此對象放入 HTTP 響應報文中返回給瀏覽器。計算機網絡主講:南京信息工程大學劉生使用高速緩存的情況使用高速緩存的情況校園網校園網的高速緩存(代理服務器)源點服務器2 Mb/s因特網瀏覽器R1R2(3) 否則,高速緩存就代表發出請求的用戶瀏覽器,與因特網上的源點服務器建立 TCP 連接,并發送 HTTP 請求報文。計算機網絡主講:南京信息工程大學劉生使用高速緩存的情況使用高速緩存的情況校園網校園網的高速緩存(代理服務器)源點服務器2 Mb/s
40、因特網瀏覽器R1R2(4) 源點服務器將所請求的對象放在 HTTP 響應報文中返回給校園網的高速緩存。計算機網絡主講:南京信息工程大學劉生使用高速緩存的情況使用高速緩存的情況校園網校園網的高速緩存(代理服務器)源點服務器2 Mb/s因特網瀏覽器R1R2(5) 高速緩存收到此對象后,先復制在其本地存儲器中(為今后使用),然后再將該對象放在 HTTP 響應報文中,通過已建立的 TCP 連接,返回給請求該對象的瀏覽器。計算機網絡主講:南京信息工程大學劉生3. HTTP 的報文結構的報文結構 HTTP 有兩類報文:l請求報文從客戶向服務器發送請求報文。l響應報文從服務器到客戶的回答。l由于 HTTP
41、是面向正文的(text-oriented),因此在報文中的每一個字段都是一些 ASCII 碼串,因而每個字段的長度都是不確定的。計算機網絡主講:南京信息工程大學劉生HTTP 的報文結構(請求報文)的報文結構(請求報文) 方 法URL版 本首部字段名首部行:值首部字段名值:實體主體(通常不用)請求行空格回車換行:CRLFCRLFCRLFCRLF報文由三個部分組成,即開始行、首部行和實體主體。在請求報文中,開始行就是請求行。開始行計算機網絡主講:南京信息工程大學劉生HTTP 的報文結構(請求報文)的報文結構(請求報文) 方 法URL版 本首部字段名首部行:值首部字段名值:實體主體(通常不用)請求行
42、空格回車換行:CRLFCRLFCRLFCRLF“方法”是面向對象技術中使用的專門名詞。所謂“方法”就是對所請求的對象進行的操作,因此這些方法實際上也就是一些命令。因此,請求報文的類型是由它所采用的方法決定的。 計算機網絡主講:南京信息工程大學劉生HTTP 請求報文的一些方法請求報文的一些方法 方法(操作) 意義OPTION 請求一些選項的信息GET 請求讀取由 URL所標志的信息HEAD 請求讀取由 URL所標志的信息的首部POST 給服務器添加信息(例如,注釋)PUT 在指明的 URL下存儲一個文檔DELETE 刪除指明的 URL所標志的資源TRACE 用來進行環回測試的請求報文CONNEC
43、T 用于代理服務器計算機網絡主講:南京信息工程大學劉生HTTP 的報文結構(請求報文)的報文結構(請求報文) 方 法URL版 本首部字段名首部行:值首部字段名值:實體主體(通常不用)請求行空格回車換行:CRLFCRLFCRLFCRLF“URL”是所請求的資源的 URL。計算機網絡主講:南京信息工程大學劉生HTTP 的報文結構(請求報文)的報文結構(請求報文) 方 法URL版 本首部字段名首部行:值首部字段名值:實體主體(通常不用)請求行空格回車換行:CRLFCRLFCRLFCRLF“版本”是 HTTP 的版本。計算機網絡主講:南京信息工程大學劉生HTTP 的報文結構(響應報文)的報文結構(響應
44、報文) 版 本狀態碼短 語首部字段名首部行:值首部字段名值:實體主體(有些響應報文不用)狀態行空格回車換行:CRLFCRLFCRLFCRLF響應報文的開始行是狀態行。狀態行包括三項內容,即 HTTP 的版本,狀態碼,以及解釋狀態碼的簡單短語。 開始行計算機網絡主講:南京信息工程大學劉生狀態碼都是三位數字狀態碼都是三位數字 l1xx 表示通知信息的,如請求收到了或正在進行處理。l2xx 表示成功,如接受或知道了。l3xx 表示重定向,表示要完成請求還必須采取進一步的行動。l4xx 表示客戶的差錯,如請求中有錯誤的語法或不能完成。l5xx 表示服務器的差錯,如服務器失效無法完成請求。計算機網絡主講
45、:南京信息工程大學劉生4. 在服務器上存放用戶的信息在服務器上存放用戶的信息l萬維網站點使用 Cookie 來跟蹤用戶。lCookie 表示在 HTTP 服務器和客戶之間傳遞的狀態信息。l使用 Cookie 的網站服務器為用戶產生一個唯一的識別碼。利用此識別碼,網站就能夠跟蹤該用戶在該網站的活動。 計算機網絡主講:南京信息工程大學劉生6.4.4 萬維網的文檔萬維網的文檔1. 超文本標記語言超文本標記語言 HTMLl超文本標記語言 HTML 中的 Markup 的意思就是“設置標記”。lHTML 定義了許多用于排版的命令(即標簽)。lHTML 把各種標簽嵌入到萬維網的頁面中。這樣就構成了所謂的
46、HTML 文檔。HTML 文檔是一種可以用任何文本編輯器創建的 ASCII 碼文件。 計算機網絡主講:南京信息工程大學劉生HTML 文檔文檔 l僅當 HTML 文檔是以.html 或 .htm 為后綴時,瀏覽器才對此 文檔的各種標簽進行解釋。l如 HTML 文檔改換以 .txt 為其后綴,則 HTML 解釋程序就不對標簽進行解釋,而瀏覽器只能看見原來的文本文件。l當瀏覽器從服務器讀取 HTML 文檔后,就按照 HTML 文檔中的各種標簽,根據瀏覽器所使用的顯示器的尺寸和分辨率大小,重新進行排版并恢復出所讀取的頁面。計算機網絡主講:南京信息工程大學劉生HTML 文檔中標簽的用法文檔中標簽的用法
47、一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。HTML 文檔開始計算機網絡主講:南京信息工程大學劉生HTML 文檔中標簽的用法文檔中標簽的用法 一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。首部開始計算機網絡主講:南京信息工程大學劉生HTML 文檔中標簽的用法文檔中標簽的用法 一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。標題計算機網絡主講:南京信息工程大學劉生HTML 文檔中標簽的用法文檔中標簽的用法
48、一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。首部結束計算機網絡主講:南京信息工程大學劉生HTML 文檔中標簽的用法文檔中標簽的用法 一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。主體開始計算機網絡主講:南京信息工程大學劉生HTML 文檔中標簽的用法文檔中標簽的用法 一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。1 級標題計算機網絡主講:南京信息工程大學劉生 一個 HTML 的例子 HTML 很容易掌握
49、這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。HTML 文檔中標簽的用法文檔中標簽的用法 第一個段落計算機網絡主講:南京信息工程大學劉生 一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。HTML 文檔中標簽的用法文檔中標簽的用法 第二個段落計算機網絡主講:南京信息工程大學劉生HTML 文檔中標簽的用法文檔中標簽的用法 一個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。主體結束計算機網絡主講:南京信息工程大學劉生HTML 文檔中標簽的用法文檔中標簽的用法 一
50、個 HTML 的例子 HTML 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。HTML 文檔結束計算機網絡主講:南京信息工程大學劉生兩種不同的鏈接兩種不同的鏈接l遠程鏈接:超鏈的終點是其他網點上的頁面。l本地鏈接:超鏈指向本計算機中的某個文件。計算機網絡主講:南京信息工程大學劉生2. 動態萬維網文檔動態萬維網文檔 l靜態文檔是指該文檔創作完畢后就存放在萬維網服務器中,在被用戶瀏覽的過程中,內容不會改變。 l動態文檔是指文檔的內容是在瀏覽器訪問萬維網服務器時才由應用程序動態創建。l動態文檔和靜態文檔之間的主要差別體現在服務器一端。這主要是文檔內容的生成方法不同。而從
51、瀏覽器的角度看,這兩種文檔并沒有區別。 計算機網絡主講:南京信息工程大學劉生萬維網服務器功能的擴充萬維網服務器功能的擴充 (1) 應增加另一個應用程序,用來處理瀏覽器發來的數據,并創建動態文檔。(2) 應增加一個機制,用來使萬維網服務器把瀏覽器發來的數據傳送給這個應用程序,然后萬維網服務器能夠解釋這個應用程序的輸出,并向瀏覽器返回 HTML 文檔。計算機網絡主講:南京信息工程大學劉生CGI 響應動態文檔HTTP 響應報文擴充了功能的萬維網服務器擴充了功能的萬維網服務器 萬維網服務器瀏覽器 程序萬維網客戶服務器 程序HTTP數據庫HTTP 請求報文 請求文檔 CGI 程序創建動態文檔計算機網絡主
52、講:南京信息工程大學劉生通用網關接口通用網關接口 CGI(Common Gateway Interface) lCGI 是一種標準,它定義了動態文檔應如何創建,輸入數據應如何提供給應用程序,以及輸出結果應如何使用。l萬維網服務器與 CGI 的通信遵循 CGI 標準。l“通用”:CGI 標準所定義的規則對其他任何語言都是通用的。l“網關”:CGI 程序的作用像網關。l“接口”:有一些已定義好的變量和調用等可供其他 CGI 程序使用。 計算機網絡主講:南京信息工程大學劉生CGI 程序程序lCGI 程序的正式名字是 CGI 腳本(script)。l“腳本”指的是一個程序,它被另一個程序(解釋程序)而
53、不是計算機的處理機來解釋或執行。l腳本運行起來要比一般的編譯程序要慢,因為它的每一條指令先要被另一個程序來處理(這就要一些附加的指令),而不是直接被指令處理器來處理。 計算機網絡主講:南京信息工程大學劉生3. 活動萬維網文檔活動萬維網文檔l活動文檔(active document)技術把所有的工作都轉移給瀏覽器端。l每當瀏覽器請求一個活動文檔時,服務器就返回一段程序副本在瀏覽器端運行。l活動文檔程序可與用戶直接交互,并可連續地改變屏幕的顯示。l由于活動文檔技術不需要服務器的連續更新傳送,對網絡帶寬的要求也不會太高。 計算機網絡主講:南京信息工程大學劉生 響應程序HTTP 響應報文程序活動文檔在
54、客戶端創建活動文檔在客戶端創建 萬維網服務器瀏覽器 程序萬維網客戶服務器 程序HTTPHTTP 請求報文 請求文檔程序事先被編譯成二進制代碼,存放為文件程序 此程序在客戶端創建出活動文檔文檔計算機網絡主講:南京信息工程大學劉生用用 Java 技術創建活動文檔技術創建活動文檔 l由美國 Sun 公司開發的 Java 語言是一項用于創建和運行活動文檔的技術。l在 Java 技術中使用 “小應用程序”(applet)來描述活動文檔程序。l用戶從萬維網服務器下載嵌入了 Java 小應用程序的 HTML 文檔后,可在瀏覽器的屏幕上點擊某個圖像,就可看到動畫效果,或在下拉式菜單中點擊某個項目,就可看到計算
55、結果。lJava 技術是活動文檔技術的一部分。 計算機網絡主講:南京信息工程大學劉生Java 技術裝三個主要組成部分技術裝三個主要組成部分 (1) 程序設計語言。Java 包含一個新的程序設計語言,用來編寫傳統的計算機程序和 Java 小應用程序。(2) 運行(runtime)環境。這是運行 Java 程序所必須的運行環境,其中包括 Java 虛擬機(簡稱為 JVM),該軟件定義了 Java 二進制代碼的執行模型。(3) 類庫(class library)。為了更容易編寫 Java 小應用程序,Java 提供了強大的類庫支持。 計算機網絡主講:南京信息工程大學劉生JavalJava 是一種面向
56、對象的高級語言,從 C+ 派生出來的,它省略了 C+ 很多復雜的、很少用的語言特點。lJava 的每一個數據項都有一個確定的類型。對數據的操作嚴格按照該數據的類型來進行。lJava 的編譯程序將源程序轉換成 Java 字節碼(bytecode),這是一種與機器無關的二進制代碼。計算機程序調用解釋程序讀取字節碼,并解釋執行。 計算機網絡主講:南京信息工程大學劉生計算機硬件無關計算機硬件無關lJava 語言、字節碼以及 Java 運行系統都被設計成與計算機硬件無關。一旦形成了字節碼,就可在任何計算機上運行并產生相同的輸出。lJava 小應用程序與機器無關可使在任何計算機上運行的瀏覽器程序能夠下載并
57、運行活動文檔。l可保證活動文檔在所有的瀏覽器上產生同樣的正確輸出。l可大大地降低活動文檔的創建和測試費用,因為不必為每一種計算機都制作一個副本。計算機網絡主講:南京信息工程大學劉生Java 解釋程序解釋程序 l運行 Java 的瀏覽器需要有 HTML 解釋程序和 Java 小應用程序解釋程序。l解釋程序的核心是一個模仿計算機的簡單循環。l解釋程序維持一個指令指針,在初始化時指在小應用程序的開始處。l在每一次循環操作時,解釋程序在指令指針指向的地址讀取字節碼。然后解釋程序對字節碼進行解碼,并完成指明的操作。 計算機網絡主講:南京信息工程大學劉生4. 瀏覽器的結構瀏覽器的結構與遠地服務器通信輸出至
58、顯示器從鼠標和鍵盤輸入網 絡 接 口可選客戶程序HTML解釋程序可選解釋程序控 制 程 序驅動程序HTTP 客戶程序緩 存計算機網絡主講:南京信息工程大學劉生瀏覽器的主要組成部分瀏覽器的主要組成部分 l瀏覽器有一組客戶、一組解釋程序,以及管理這些客戶和解釋程序的控制程序。l控制程序是其中的核心部件,它解釋鼠標的點擊和鍵盤的輸入,并調用有關的組件來執行用戶指定的操作。l例如,當用戶用鼠標點擊一個超鏈的起點時,控制程序就調用一個客戶從所需文檔所在的遠地服務器上取回該文檔,并調用解釋程序向用戶顯示該文檔。 計算機網絡主講:南京信息工程大學劉生解釋程序解釋程序 lHTML 解釋程序是必不可少的,而其他
59、的解釋程序則是可選的。 l解釋程序把 HTML 規格轉換為適合用戶顯示硬件的命令來處理版面的細節。 l許多瀏覽器還包含 FTP 客戶程序,用來獲取文件傳送服務。l一些瀏覽器也包含電子郵件客戶程序,使瀏覽器能夠發送和接收電子郵件。計算機網絡主講:南京信息工程大學劉生瀏覽器中的緩存瀏覽器中的緩存 l瀏覽器將它取回的每一個頁面副本都放入本地磁盤的緩存中。l當用戶用鼠標點擊某個選項時,瀏覽器首先檢查磁盤的緩存。若緩存中保存了該項,瀏覽器就直接從緩存中得到該項副本而不必從網絡獲取,這樣就明顯地改善瀏覽器的運行特性。 。l但緩存要占用磁盤大量的空間,而瀏覽器性能的改善只有在用戶再次查看緩存中的頁面時才有幫助。l許多瀏覽器允許用戶調整緩存策略。 計算機網絡主講:南京信息工程大學劉生6.4.5 萬維網的信息檢索系統萬維網的信息檢索系統1. 全文檢索搜索和分類目錄搜索全文檢索搜索和分類目錄搜索l在萬維網中用來進行搜索的程序叫做搜索引擎。l全文檢索搜索引擎是一種純技術型的檢索工具。它的工作原理是通過搜索軟件到因特網上的各網站收集信息,找到一個網站后可以從這個網站再鏈接到另一個網站。然后按照一定的規則建立一個很大的在線數據庫供用戶查詢。l用戶在查詢時只要輸入關鍵詞,就從已經建立的索引數據庫上進行查詢(并不是實時地在因特網上檢索到的信息)。 計算機網絡主講:南京信息工程大學劉生分類目錄搜
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025園林綠化設計合同范本
- 2025勞動合同協議書范本模板
- 2025企業合同終止的情形分析:合規解除勞動合同的途徑與條件
- 江蘇省鎮江市2024-2025學年高一上學期期中檢測生物試卷 含解析
- 腰椎疼痛康復護理
- 脊柱外科術后護理
- 靜脈留置消毒護理
- 心臟支架術后護理規范
- 【方案】2024咪咕全域營銷媒體手冊6928mb
- 三晉卓越聯盟·2024-2025學年高三5月質量檢測卷(25-X-635C)生物(B)
- 孔距尺寸的標注與孔的位置度公差的確定
- 小學一年級寫字教學(課堂PPT)
- 服裝工藝(各工序)單價表
- 鋼筋混凝土單向板肋形樓蓋課程設計
- 圖書入庫登記表
- 中國市場橄欖油與消費者健康及使用需求聯合調研報告(共46頁).docx
- BMH型半門式起重機說明書
- 土地估價報告市場比較法(工業)模板2016.09.26
- 中醫醫院科主任科室管理通用考核表
- 《2021國標暖通圖集資料》96K150-3 圓錐形風帽
- 第四節中間輸送裝置
評論
0/150
提交評論