網(wǎng)絡(luò)架構(gòu)與網(wǎng)絡(luò)協(xié)議

網(wǎng)絡(luò)體系結(jié)構(gòu)的基本概念網(wǎng)絡(luò)體系結(jié)構(gòu)的基本概念l網(wǎng)絡(luò)協(xié)議網(wǎng)絡(luò)協(xié)議是是為網(wǎng)絡(luò)數(shù)據(jù)交換而制定的規(guī)則、約為網(wǎng)絡(luò)數(shù)據(jù)交換而制定的規(guī)則、約定與標準;定與標準;l網(wǎng)絡(luò)協(xié)議的三要素:語義、語法與時序;網(wǎng)絡(luò)協(xié)議的三要素:語義、語法與時序;l語義:用于解釋比特流的每一部分的意義;語義:用于解釋比特流的每一部分的意義;l語法:語法是用戶數(shù)據(jù)與控制信息的結(jié)構(gòu)與格語法:語法是用戶數(shù)據(jù)與控制信息的結(jié)構(gòu)與格 式,以及數(shù)據(jù)出現(xiàn)的順序的意義;式,以及數(shù)據(jù)出現(xiàn)的順序的意義;l時序:事件實現(xiàn)順序的詳細說明時序:事件實現(xiàn)順序的詳細說明網(wǎng)絡(luò)體系結(jié)構(gòu)網(wǎng)絡(luò)體系結(jié)構(gòu)l層次(層次(layer)l層次是人們對復雜問題處理的基本方法;層次是人們對復雜問題處理的基本方法;l將總體要實現(xiàn)的很多功能分配在不同層次中;將總體要實現(xiàn)的很多功能分配在不同層次中;l對每個層次要完成的服務(wù)及服務(wù)要求都有明確規(guī)定;對每個層次要完成的服務(wù)及服務(wù)要求都有明確規(guī)定;l不同的系統(tǒng)分成相同的層次;不同的系統(tǒng)分成相同的層次;l不同系統(tǒng)的最低層之間存在著不同系統(tǒng)的最低層之間存在著“物理物理”通信;通信;l不同系統(tǒng)的對等層次之間存在著不同系統(tǒng)的對等層次之間存在著“虛擬虛擬”通信;通信;l對不同系統(tǒng)的對等層之間的通信有明確的通信規(guī)定;對不同系統(tǒng)的對等層之間的通信有明確的通信規(guī)定;l高層使用低層提供的服務(wù)時,并不需要知道低層服務(wù)高層使用低層提供的服務(wù)時,并不需要知道低層服務(wù)的具體實現(xiàn)方法。
的具體實現(xiàn)方法網(wǎng)絡(luò)體系結(jié)構(gòu)網(wǎng)絡(luò)體系結(jié)構(gòu)l接口(接口(interface)l接口是同一結(jié)點內(nèi)相鄰層之間交換信息的連接接口是同一結(jié)點內(nèi)相鄰層之間交換信息的連接點點;l同一個結(jié)點的相鄰層之間存在著明確規(guī)定的接同一個結(jié)點的相鄰層之間存在著明確規(guī)定的接口,低層向高層通過接口提供服務(wù)口,低層向高層通過接口提供服務(wù);l只要接口條件不變、低層功能不變,低層功能只要接口條件不變、低層功能不變,低層功能的具體實現(xiàn)方法與技術(shù)的變化不會影響整個系的具體實現(xiàn)方法與技術(shù)的變化不會影響整個系統(tǒng)的工作統(tǒng)的工作網(wǎng)絡(luò)體系結(jié)構(gòu)網(wǎng)絡(luò)體系結(jié)構(gòu)l網(wǎng)絡(luò)體系結(jié)構(gòu)(網(wǎng)絡(luò)體系結(jié)構(gòu)(network architecture)l一個功能完備的計算機網(wǎng)絡(luò)需要制定一整套復雜的協(xié)一個功能完備的計算機網(wǎng)絡(luò)需要制定一整套復雜的協(xié)議集議集;l網(wǎng)絡(luò)協(xié)議是按層次結(jié)構(gòu)來組織的;網(wǎng)絡(luò)協(xié)議是按層次結(jié)構(gòu)來組織的;l網(wǎng)絡(luò)層次結(jié)構(gòu)模型與各層協(xié)議的集合稱為網(wǎng)絡(luò)體系結(jié)網(wǎng)絡(luò)層次結(jié)構(gòu)模型與各層協(xié)議的集合稱為網(wǎng)絡(luò)體系結(jié)構(gòu);構(gòu);l網(wǎng)絡(luò)體系結(jié)構(gòu)對計算機網(wǎng)絡(luò)應(yīng)該實現(xiàn)的功能進行了精網(wǎng)絡(luò)體系結(jié)構(gòu)對計算機網(wǎng)絡(luò)應(yīng)該實現(xiàn)的功能進行了精確的定義;確的定義;l體系結(jié)構(gòu)是抽象的,而實現(xiàn)是指能夠運行的一些硬件體系結(jié)構(gòu)是抽象的,而實現(xiàn)是指能夠運行的一些硬件和軟件。
和軟件ISO/OSI參考模型參考模型l在制定計算機網(wǎng)絡(luò)標準方面,起著很大作用的在制定計算機網(wǎng)絡(luò)標準方面,起著很大作用的兩大國際組織是:兩大國際組織是:國際電報與電話咨詢委員會(國際電報與電話咨詢委員會(CCITT)國際標準化組織(國際標準化組織(ISO)lCCITT與與ISO的工作領(lǐng)域不同:的工作領(lǐng)域不同:CCITT 主要主要是考慮通信標準的制定;是考慮通信標準的制定;ISO主要是考慮信息主要是考慮信息處理與網(wǎng)絡(luò)體系結(jié)構(gòu)處理與網(wǎng)絡(luò)體系結(jié)構(gòu)體系結(jié)構(gòu)體系結(jié)構(gòu)l開放系統(tǒng)的層次結(jié)構(gòu)、層次之間的相互關(guān)系及開放系統(tǒng)的層次結(jié)構(gòu)、層次之間的相互關(guān)系及各層所包括的可能的服務(wù);各層所包括的可能的服務(wù);l作為一個框架來協(xié)調(diào)和組織各層協(xié)議的制定;作為一個框架來協(xié)調(diào)和組織各層協(xié)議的制定;l對網(wǎng)絡(luò)內(nèi)部結(jié)構(gòu)最精煉地概括與描述對網(wǎng)絡(luò)內(nèi)部結(jié)構(gòu)最精煉地概括與描述服務(wù)定義服務(wù)定義l詳細地說明了各層所提供的服務(wù);詳細地說明了各層所提供的服務(wù);l某一層的服務(wù)就是該層及其以下各層的一種能某一層的服務(wù)就是該層及其以下各層的一種能力;力;l低層的服務(wù)是通過接口向上一層提供的低層的服務(wù)是通過接口向上一層提供的;l各層所提供的服務(wù)與這些服務(wù)是如何實現(xiàn)的無各層所提供的服務(wù)與這些服務(wù)是如何實現(xiàn)的無關(guān);關(guān);l定義了層與層之間的接口與各層使用的原語,定義了層與層之間的接口與各層使用的原語,但不涉及接口是具體實現(xiàn)的。
但不涉及接口是具體實現(xiàn)的ISO劃分七層結(jié)構(gòu)的基本原則劃分七層結(jié)構(gòu)的基本原則l網(wǎng)中各結(jié)點都具有相同的層次;網(wǎng)中各結(jié)點都具有相同的層次;l不同結(jié)點的同等層具有相同的功能;不同結(jié)點的同等層具有相同的功能;l同一結(jié)點內(nèi)相鄰層之間通過接口通信;同一結(jié)點內(nèi)相鄰層之間通過接口通信;l每每層層可可以以使使用用下下層層提提供供的的服服務(wù)務(wù),并并向向其其上上層層提提供服務(wù);供服務(wù);l不不同同結(jié)結(jié)點點的的同同等等層層通通過過協(xié)協(xié)議議來來實實現(xiàn)現(xiàn)對對等等層層之之間間的通信的通信l社會上存在的郵政系統(tǒng)lOSI參考模型的結(jié)構(gòu)物理層的主要功能物理層的主要功能l利利用用傳傳輸輸介介質(zhì)質(zhì)為為通通信信的的網(wǎng)網(wǎng)絡(luò)絡(luò)結(jié)結(jié)點點之之間間建建立立、管管理和釋放物理連接;理和釋放物理連接;l實實現(xiàn)現(xiàn)比比特特流流的的透透明明傳傳輸輸,為為數(shù)數(shù)據(jù)據(jù)鏈鏈路路層層提提供供數(shù)數(shù)據(jù)傳輸服務(wù);據(jù)傳輸服務(wù);l物理層的數(shù)據(jù)傳輸單元是比特物理層的數(shù)據(jù)傳輸單元是比特數(shù)據(jù)鏈路數(shù)據(jù)鏈路層層/網(wǎng)絡(luò)層網(wǎng)絡(luò)層的主要功能的主要功能數(shù)據(jù)鏈路層的主要功能數(shù)據(jù)鏈路層的主要功能:l在在物物理理層層提提供供的的服服務(wù)務(wù)基基礎(chǔ)礎(chǔ)上上,數(shù)數(shù)據(jù)據(jù)鏈鏈路路層層在在通通信信的的實實體間建立數(shù)據(jù)鏈路連接;體間建立數(shù)據(jù)鏈路連接;l傳輸以傳輸以“幀幀”為單位的數(shù)據(jù)包;為單位的數(shù)據(jù)包;l采采用用差差錯錯控控制制與與流流量量控控制制方方法法,使使有有差差錯錯的的物物理理線線路路變成無差錯的數(shù)據(jù)鏈路。
變成無差錯的數(shù)據(jù)鏈路網(wǎng)絡(luò)層的主要功能網(wǎng)絡(luò)層的主要功能:l通過路由選擇算法為分組通過通信子網(wǎng)選擇最適當?shù)耐ㄟ^路由選擇算法為分組通過通信子網(wǎng)選擇最適當?shù)穆窂?;路徑;l為數(shù)據(jù)在結(jié)點之間傳輸創(chuàng)建邏輯鏈路;為數(shù)據(jù)在結(jié)點之間傳輸創(chuàng)建邏輯鏈路;l實現(xiàn)擁塞控制、網(wǎng)絡(luò)互連等功能實現(xiàn)擁塞控制、網(wǎng)絡(luò)互連等功能傳輸傳輸層層/會話層會話層的主要功能的主要功能傳輸層的主要功能傳輸層的主要功能:l向用戶提供可靠端到端向用戶提供可靠端到端(end-to-end)服務(wù);服務(wù);l處理數(shù)據(jù)包錯誤、數(shù)據(jù)包次序,以及其他一些關(guān)鍵傳處理數(shù)據(jù)包錯誤、數(shù)據(jù)包次序,以及其他一些關(guān)鍵傳輸問題;輸問題;l傳輸層向高層屏蔽了下層數(shù)據(jù)通信的細節(jié),是計算機傳輸層向高層屏蔽了下層數(shù)據(jù)通信的細節(jié),是計算機通信體系結(jié)構(gòu)中關(guān)鍵的一層通信體系結(jié)構(gòu)中關(guān)鍵的一層會話層的主要功能會話層的主要功能:l負責維護兩個結(jié)點之間的傳輸鏈接,以便確保點負責維護兩個結(jié)點之間的傳輸鏈接,以便確保點-點點傳輸不中斷;傳輸不中斷;l管理數(shù)據(jù)交換管理數(shù)據(jù)交換表示層表示層/應(yīng)用層的主要功能應(yīng)用層的主要功能表示層的主要功能表示層的主要功能:l用于處理在兩個通信系統(tǒng)中交換信息的表示方式;用于處理在兩個通信系統(tǒng)中交換信息的表示方式;l數(shù)據(jù)格式變換;數(shù)據(jù)格式變換;l數(shù)據(jù)加密與解密;數(shù)據(jù)加密與解密;l數(shù)據(jù)壓縮與恢復。
數(shù)據(jù)壓縮與恢復應(yīng)用層的主要功能應(yīng)用層的主要功能:l為應(yīng)用程序提供了網(wǎng)絡(luò)服務(wù)為應(yīng)用程序提供了網(wǎng)絡(luò)服務(wù);l應(yīng)用層需要識別并保證通信對方的可用性,使得協(xié)同應(yīng)用層需要識別并保證通信對方的可用性,使得協(xié)同工作的應(yīng)用程序之間的同步工作的應(yīng)用程序之間的同步;l建立傳輸錯誤糾正與保證數(shù)據(jù)完整性的控制機制建立傳輸錯誤糾正與保證數(shù)據(jù)完整性的控制機制lOSI環(huán)境(環(huán)境(OSI environment)OSI環(huán)境中的數(shù)據(jù)流環(huán)境中的數(shù)據(jù)流 l1974年年Kahn定義了最早的定義了最早的TCP/IP參考模型;參考模型;l80年代年代Leiner、Clark等人對等人對TCP/IP參考模型參考模型進一步的研究;進一步的研究;lTCP/IP協(xié)議一共出現(xiàn)了協(xié)議一共出現(xiàn)了6個版本,后個版本,后3個版本個版本是版本是版本4、版本、版本5與版本與版本6;l目前我們使用的是版本目前我們使用的是版本4,一般被稱為,一般被稱為IPv4;lIPv6被稱為下一代的被稱為下一代的IP協(xié)議TCP/IP參考模型參考模型l開放的協(xié)議標準開放的協(xié)議標準;l獨立于特定的計算機硬件與操作系統(tǒng);獨立于特定的計算機硬件與操作系統(tǒng);l獨獨立立于于特特定定的的網(wǎng)網(wǎng)絡(luò)絡(luò)硬硬件件,可可以以運運行行在在局局域域網(wǎng)網(wǎng)、廣域網(wǎng),更適用于互連網(wǎng)中;廣域網(wǎng),更適用于互連網(wǎng)中;l 統(tǒng)統(tǒng)一一的的網(wǎng)網(wǎng)絡(luò)絡(luò)地地址址分分配配方方案案,使使得得整整個個TCP/IP設(shè)備在網(wǎng)中都具有唯一的地址;設(shè)備在網(wǎng)中都具有唯一的地址;l標標準準化化的的高高層層協(xié)協(xié)議議,可可以以提提供供多多種種可可靠靠的的用用戶戶服務(wù)。
服務(wù)TCP/IP協(xié)議的特點協(xié)議的特點l應(yīng)用層(應(yīng)用層(application layer)l傳輸層(傳輸層(transport layer)l互連層(互連層(internet layer)l主機主機-網(wǎng)絡(luò)層(網(wǎng)絡(luò)層(host-to-network layer)TCP/IP參考模型各層的功能參考模型各層的功能lTCP/IP 參考模型與 OSI 參考模型的對應(yīng)關(guān)系lTCP/IP參參考考模模型型的的最最低低層層,負負責責通通過過網(wǎng)網(wǎng)絡(luò)絡(luò)發(fā)發(fā)送送和接收和接收IP數(shù)據(jù)報數(shù)據(jù)報;l允允許許主主機機連連入入網(wǎng)網(wǎng)絡(luò)絡(luò)時時使使用用多多種種現(xiàn)現(xiàn)成成的的與與流流行行的的協(xié)協(xié)議議,例例如如局局域域網(wǎng)網(wǎng)的的Ethernet、令令牌牌網(wǎng)網(wǎng)、分分組組交換網(wǎng)的交換網(wǎng)的X.25、幀中繼、幀中繼、ATM協(xié)議等協(xié)議等;l當當一一種種物物理理網(wǎng)網(wǎng)被被用用作作傳傳送送IP數(shù)數(shù)據(jù)據(jù)包包的的通通道道時時,就可以認為是這一層的內(nèi)容就可以認為是這一層的內(nèi)容;l充充分分體體現(xiàn)現(xiàn)出出TCP/IP協(xié)協(xié)議議的的兼兼容容性性與與適適應(yīng)應(yīng)性性,它它也為也為TCP/IP的成功奠定了基礎(chǔ)的成功奠定了基礎(chǔ)主機主機-網(wǎng)絡(luò)層網(wǎng)絡(luò)層l相當相當OSI參考模型網(wǎng)絡(luò)層無連接網(wǎng)絡(luò)服務(wù);參考模型網(wǎng)絡(luò)層無連接網(wǎng)絡(luò)服務(wù);l處理互連的路由選擇、流控與擁塞問題;處理互連的路由選擇、流控與擁塞問題;lIP協(xié)協(xié)議議是是一一種種無無連連接接的的、提提供供“盡盡力力而而為為”服服務(wù)的網(wǎng)絡(luò)層協(xié)議。
務(wù)的網(wǎng)絡(luò)層協(xié)議互連層互連層l主主要要功功能能是是在在互互連連網(wǎng)網(wǎng)中中源源主主機機與與目目的的主主機機的的對對等等實體間建立用于會話的端實體間建立用于會話的端-端連接;端連接;l傳輸控制協(xié)議傳輸控制協(xié)議TCP是一種可靠的面向連接協(xié)議;是一種可靠的面向連接協(xié)議;l用戶數(shù)據(jù)報協(xié)議用戶數(shù)據(jù)報協(xié)議UDP是一種不可靠的無連接協(xié)議是一種不可靠的無連接協(xié)議傳輸層傳輸層l網(wǎng)絡(luò)終端協(xié)議網(wǎng)絡(luò)終端協(xié)議Telnetl文件傳輸協(xié)議文件傳輸協(xié)議FTPl簡單郵件傳輸協(xié)議簡單郵件傳輸協(xié)議SMTPl域名系統(tǒng)域名系統(tǒng)DNSl簡單網(wǎng)絡(luò)管理協(xié)議簡單網(wǎng)絡(luò)管理協(xié)議SNMPl超文本傳輸協(xié)議超文本傳輸協(xié)議HTTP應(yīng)用層應(yīng)用層TCP/IP協(xié)議棧協(xié)議棧對對OSIOSI參考模型的評價參考模型的評價l層次數(shù)量與內(nèi)容選擇不是很好,會話層很少用到,表示層次數(shù)量與內(nèi)容選擇不是很好,會話層很少用到,表示層幾乎是空的,數(shù)據(jù)鏈路層與網(wǎng)絡(luò)層有很多的子層插入;層幾乎是空的,數(shù)據(jù)鏈路層與網(wǎng)絡(luò)層有很多的子層插入;lOSI 參參考考模模型型將將“服服務(wù)務(wù)”與與“協(xié)協(xié)議議”的的定定義義結(jié)結(jié)合合起起來來,使得參考模型變得格外復雜,實現(xiàn)困難;使得參考模型變得格外復雜,實現(xiàn)困難;l尋尋址址、流流控控與與差差錯錯控控制制在在每每一一層層里里都都重重復復出出現(xiàn)現(xiàn),降降低低系系統(tǒng)效率;統(tǒng)效率;l數(shù)數(shù)據(jù)據(jù)安安全全性性、加加密密與與網(wǎng)網(wǎng)絡(luò)絡(luò)管管理理在在參參考考模模型型的的設(shè)設(shè)計計初初期期被被忽略了;忽略了;l參參考考模模型型的的設(shè)設(shè)計計更更多多是是被被通通信信的的思思想想所所支支配配,不不適適合合于于計算機與軟件的工作方式;計算機與軟件的工作方式;l嚴格按照層次模型編程的軟件效率很低。
嚴格按照層次模型編程的軟件效率很低對對TCP/IPTCP/IP參考模型評價參考模型評價l在在服服務(wù)務(wù)、接接口口與與協(xié)協(xié)議議的的區(qū)區(qū)別別上上不不很很清清楚楚,一一個個好好的的軟軟件件工工程程應(yīng)應(yīng)該該將將功功能能與與實實現(xiàn)現(xiàn)方方法法區(qū)區(qū)分分開開,參考模型不適合于其它非參考模型不適合于其它非TCP/IP協(xié)議族;協(xié)議族;lTCP/IP參考模型的主機參考模型的主機-網(wǎng)絡(luò)層本身并不是實網(wǎng)絡(luò)層本身并不是實際的一層;際的一層;l物理層與數(shù)據(jù)鏈路層的劃分是必要和合理的,物理層與數(shù)據(jù)鏈路層的劃分是必要和合理的,但是但是TCP/IP參考模型卻沒有做到這點參考模型卻沒有做到這點一種建議的參考模型一種建議的參考模型應(yīng)用層的基本協(xié)議應(yīng)用層的基本協(xié)議l萬維網(wǎng)協(xié)議萬維網(wǎng)協(xié)議 WWWWWWl超文本傳輸協(xié)議超文本傳輸協(xié)議HTTPHTTPl文件傳送協(xié)議文件傳送協(xié)議FTPFTPl遠程登錄協(xié)議遠程登錄協(xié)議TELNETTELNETl電子郵件協(xié)議電子郵件協(xié)議SMTPSMTP(發(fā)送)(發(fā)送)l電子郵件協(xié)議電子郵件協(xié)議POP3POP3(接收)(接收)l域名服務(wù)域名服務(wù)DNSDNS域名空間域名空間lDNSDNS在概念上將因特網(wǎng)分成了在概念上將因特網(wǎng)分成了200200多個頂級域,每個頂級域多個頂級域,每個頂級域被進一步劃分成若干個二級子域,每個二級子域還可以再被進一步劃分成若干個二級子域,每個二級子域還可以再分子域,依次類推。
分子域,依次類推l一個指定的域是指樹中一個特定的節(jié)點以及該節(jié)點以下所一個指定的域是指樹中一個特定的節(jié)點以及該節(jié)點以下所有的節(jié)點有的節(jié)點l某個域的域名用從該域開始向上直到樹根(為空)的標號某個域的域名用從該域開始向上直到樹根(為空)的標號序列表示,標號之間用句點隔開,如序列表示,標號之間用句點隔開,如l域名的任一后綴也是一個域域名的任一后綴也是一個域l頂級域分為通用域和國家域兩類頂級域分為通用域和國家域兩類域名機構(gòu)的類型域名機構(gòu)的類型.GOV.GOV政府機構(gòu)政府機構(gòu).EDU.EDU教育機構(gòu)教育機構(gòu).INT.INT國際組織(如北大西洋公約組織國際組織(如北大西洋公約組織NATONATO).MIL.MIL軍事部門軍事部門.COM.COM商業(yè)機構(gòu)商業(yè)機構(gòu).NET.NET網(wǎng)絡(luò)中心網(wǎng)絡(luò)中心.ORG.ORG社會組織、專業(yè)協(xié)會社會組織、專業(yè)協(xié)會普及地理類頂級域名普及地理類頂級域名 l域名域名國家或地區(qū)國家或地區(qū)l.am.am亞美尼亞亞美尼亞.aq.aq南極洲南極洲 .ar.ar阿根廷阿根廷 .au.au澳澳大利亞大利亞.bb.bb巴巴多斯巴巴多斯.be.be比利時比利時 .bg.bg保加利亞保加利亞.ca.ca加加拿大拿大.ch.ch瑞士瑞士 .cl.cl智利智利 中國中國 .cr.cr哥哥斯達黎加斯達黎加.cy.cy塞浦路斯塞浦路斯.de.de德國德國 .dk.dk丹麥丹麥 .ec.ec埃埃及及.eg.eg薩爾瓦多薩爾瓦多.es.es西班牙西班牙 .fi.fi芬蘭芬蘭 .gb.gb英英國國 .gr.gr希臘希臘 .hk.hk香港香港 .hu.hu匈牙利匈牙利 .ie.ie愛愛爾蘭爾蘭.il.il以色列以色列 .in.in印度印度 .ir.ir伊朗伊朗 .it.it意意大利大利.jm.jm牙買加牙買加 .jp.jp日本日本 .kr.kr韓國韓國 .lt.lt立立陶宛陶宛.lu.lu盧森保盧森保 .mo.mo澳門澳門 .mx.mx墨西哥墨西哥 .ni.ni尼尼加拉瓜加拉瓜.nl.nl荷蘭荷蘭 .no.no挪威挪威 .nz.nz新西蘭新西蘭 .pe.pe貝貝盧盧.ph.ph菲律賓菲律賓 .pl.pl波蘭波蘭 .pt.pt葡萄牙葡萄牙 .ru.ru俄俄國國.se.se瑞典瑞典 .sg.sg新加坡新加坡 .si.si斯洛文尼亞斯洛文尼亞.th.th泰國泰國.tn.tn突尼斯突尼斯 .tr.tr土耳其土耳其 .tw.tw臺灣臺灣 .us.us美美國國.uk.uk英國英國 .ve.ve委內(nèi)瑞拉委內(nèi)瑞拉.vn.vn越南越南 .zm.zm贊贊比亞比亞域名結(jié)構(gòu)圖域名結(jié)構(gòu)圖萬維網(wǎng)萬維網(wǎng)WWWl l萬維網(wǎng)萬維網(wǎng)萬維網(wǎng)萬維網(wǎng)WWW(World Wide Web)WWW(World Wide Web)并非某種特殊的計算機網(wǎng)絡(luò)。
并非某種特殊的計算機網(wǎng)絡(luò)萬維網(wǎng)是一個大規(guī)模的、聯(lián)機式的信息儲藏所,英文簡稱萬維網(wǎng)是一個大規(guī)模的、聯(lián)機式的信息儲藏所,英文簡稱為為WebWebl萬維網(wǎng)是一個分布式的萬維網(wǎng)是一個分布式的超媒體超媒體超媒體超媒體(hypermedia)(hypermedia)系統(tǒng),它是系統(tǒng),它是超超超超文本文本文本文本(hypertext)(hypertext)系統(tǒng)的擴充系統(tǒng)的擴充l萬萬維維網(wǎng)網(wǎng)以以客客戶戶服服務(wù)務(wù)器器方方式式工工作作客客客客戶戶戶戶程程程程序序序序向向向向服服服服務(wù)務(wù)務(wù)務(wù)器器器器程程程程序序序序發(fā)發(fā)發(fā)發(fā)出出出出請請請請求求求求,服服服服務(wù)務(wù)務(wù)務(wù)器器器器程程程程序序序序向向向向客客客客戶戶戶戶程程程程序序序序返返返返回回回回客客客客戶戶戶戶所所所所要要要要的的的的萬萬萬萬維維維維網(wǎng)網(wǎng)網(wǎng)網(wǎng)文文文文檔檔檔檔在在一一個個客客戶戶程程序序主主窗窗口口上上顯顯示示出出的的萬萬維維網(wǎng)網(wǎng)文文檔檔稱稱為為頁頁頁頁面面面面(page)(page)網(wǎng)頁獲取網(wǎng)頁獲取lWebWeb采用客戶采用客戶/服務(wù)器模式工作,客戶為瀏覽器軟件,服務(wù)服務(wù)器模式工作,客戶為瀏覽器軟件,服務(wù)器是運行在器是運行在WebWeb服務(wù)器上的一個軟件程序;服務(wù)器上的一個軟件程序;l服務(wù)器平時總在端口服務(wù)器平時總在端口8080上監(jiān)聽客戶的連接請求,當用戶點上監(jiān)聽客戶的連接請求,當用戶點擊了一個超級鏈接后:擊了一個超級鏈接后:l瀏覽器找到該鏈接所指的網(wǎng)頁的名字瀏覽器找到該鏈接所指的網(wǎng)頁的名字l與網(wǎng)頁所在的服務(wù)器建立一個與網(wǎng)頁所在的服務(wù)器建立一個TCPTCP連接連接l向服務(wù)器發(fā)送取網(wǎng)頁的請求向服務(wù)器發(fā)送取網(wǎng)頁的請求l服務(wù)器將請求的網(wǎng)頁發(fā)送給瀏覽器服務(wù)器將請求的網(wǎng)頁發(fā)送給瀏覽器l釋放釋放TCPTCP連接連接l兩個問題需要解決:兩個問題需要解決:l如何命名一個網(wǎng)頁如何命名一個網(wǎng)頁l定義客戶和服務(wù)器之間的傳輸協(xié)議定義客戶和服務(wù)器之間的傳輸協(xié)議Web工作模型工作模型統(tǒng)一資源定位符統(tǒng)一資源定位符URLlUniform Resource LocatorUniform Resource Locator(URLURL)的一般)的一般格式為格式為 schemename:/host/pathschemename:/host/pathlSchemenameSchemename:方法名,指出訪問網(wǎng)頁的協(xié)方法名,指出訪問網(wǎng)頁的協(xié)議名稱,常見的方法有議名稱,常見的方法有httphttp、ftpftp、telnettelnet等;等;lHostHost:網(wǎng)頁所在宿主機的域名網(wǎng)頁所在宿主機的域名lPathPath:網(wǎng)頁在宿主機上的全路徑名網(wǎng)頁在宿主機上的全路徑名Web的客戶方(的客戶方(1)l當用戶點擊了某個超級鏈接當用戶點擊了某個超級鏈接http:/www.itu.org/home/index.htmlhttp:/www.itu.org/home/index.html后,瀏覽器按以下步驟后,瀏覽器按以下步驟工作:工作:l瀏覽器確定瀏覽器確定URLURL(從頁及點擊位置獲?。?;(從頁及點擊位置獲?。籰請求請求DNSDNS解析域名解析域名www.itu.orgwww.itu.org,DNSDNS返回返回IPIP地址地址156.106.192.32156.106.192.32;l瀏覽器與瀏覽器與156.106.192.32156.106.192.32的端口的端口8080建立一個建立一個TCPTCP連接;連接;l瀏覽器發(fā)送一個請求,要求取文件瀏覽器發(fā)送一個請求,要求取文件/home/index.html/home/index.html;lwww.itu.orgwww.itu.org服務(wù)器發(fā)送文件服務(wù)器發(fā)送文件/home/index.html/home/index.html,釋放,釋放TCPTCP連連接;接;l瀏覽器顯示文件瀏覽器顯示文件/home/index.html/home/index.html的所有文本內(nèi)容;的所有文本內(nèi)容;l瀏覽器取回該文件中的所有圖像并顯示(一次取一個圖像顯瀏覽器取回該文件中的所有圖像并顯示(一次取一個圖像顯示)。
示)Web的客戶方(的客戶方(2)l為了使瀏覽器能夠正確解釋和顯示每一個為了使瀏覽器能夠正確解釋和顯示每一個WebWeb頁,頁,WebWeb頁應(yīng)當頁應(yīng)當使用稱為使用稱為HTMLHTML(超文本標記語言)的標準語言書寫;(超文本標記語言)的標準語言書寫;l如果一個頁不是如果一個頁不是HTMLHTML格式的,怎么顯示?格式的,怎么顯示?l當服務(wù)器返回一個頁的時候,同時要返回關(guān)于這個頁的一當服務(wù)器返回一個頁的時候,同時要返回關(guān)于這個頁的一些額外信息,特別是頁的些額外信息,特別是頁的MIMEMIME類型;類型;l當頁的當頁的MIMEMIME類型是類型是text/htmltext/html(瀏覽器的內(nèi)置類型瀏覽器的內(nèi)置類型)時,)時,瀏覽器直接顯示;瀏覽器直接顯示;l當頁的當頁的MIMEMIME類型不是瀏覽器本身所支持的,瀏覽器查找類型不是瀏覽器本身所支持的,瀏覽器查找MIMEMIME類型表,該表將每個類型表,該表將每個MIMEMIME類型關(guān)聯(lián)到一個閱讀器上,類型關(guān)聯(lián)到一個閱讀器上,瀏覽器調(diào)用相應(yīng)的閱讀器進行顯示;瀏覽器調(diào)用相應(yīng)的閱讀器進行顯示;l閱讀器可以是和瀏覽器運行在同一個程序空間的插件程序,閱讀器可以是和瀏覽器運行在同一個程序空間的插件程序,也可以是一個獨立的助手程序;也可以是一個獨立的助手程序;l對于本地文件,瀏覽器通過文件的擴展名得知文件類型。
對于本地文件,瀏覽器通過文件的擴展名得知文件類型域名解析服務(wù)域名解析服務(wù)DNSlDNS DNS 是是域名系統(tǒng)域名系統(tǒng) (Domain Name System)(Domain Name System)的縮的縮寫,該系統(tǒng)用于命名組織到域?qū)哟谓Y(jié)構(gòu)中的寫,該系統(tǒng)用于命名組織到域?qū)哟谓Y(jié)構(gòu)中的計計算機算機和網(wǎng)絡(luò)服務(wù)在和網(wǎng)絡(luò)服務(wù)在InternetInternet上域名與上域名與IPIP地址地址之間是一對一(或者一對多)的,域名雖然便之間是一對一(或者一對多)的,域名雖然便于人們記憶,但機器之間只能互相認識于人們記憶,但機器之間只能互相認識IPIP地址,地址,它們之間的轉(zhuǎn)換工作稱為域名解析,域名解析它們之間的轉(zhuǎn)換工作稱為域名解析,域名解析需要由專門的域名解析服務(wù)器來完成,需要由專門的域名解析服務(wù)器來完成,DNSDNS就就是進行域名解析的服務(wù)器是進行域名解析的服務(wù)器DNS DNS 命名用于命名用于 Internet Internet 等等 TCP/IP TCP/IP 網(wǎng)絡(luò)中,通過用戶友好網(wǎng)絡(luò)中,通過用戶友好的名稱查找計算機和服務(wù)的名稱查找計算機和服務(wù)DNS解析過程解析過程狀態(tài)信息和狀態(tài)信息和cookielWebWeb本質(zhì)上是無狀態(tài)的,當服務(wù)器將瀏覽器請求的文件發(fā)回后,本質(zhì)上是無狀態(tài)的,當服務(wù)器將瀏覽器請求的文件發(fā)回后,服務(wù)器上不保留有關(guān)用戶的任何信息;服務(wù)器上不保留有關(guān)用戶的任何信息;l在兩次調(diào)用之間程序保存的信息稱為狀態(tài)信息,狀態(tài)信息可以保在兩次調(diào)用之間程序保存的信息稱為狀態(tài)信息,狀態(tài)信息可以保存在瀏覽器或服務(wù)器上。
存在瀏覽器或服務(wù)器上l服務(wù)器傳遞給瀏覽器保存的狀態(tài)信息稱為服務(wù)器傳遞給瀏覽器保存的狀態(tài)信息稱為cookiecookie:l服務(wù)器完成服務(wù)請求時將需要保存的信息存于本地,同時將少服務(wù)器完成服務(wù)請求時將需要保存的信息存于本地,同時將少量信息(量信息(cookiecookie)返回給瀏覽器,返回給瀏覽器,cookiecookie通常被作為這些信息通常被作為這些信息的索引;的索引;lCookieCookie是一個小文件,通常保存在是一個小文件,通常保存在瀏覽器瀏覽器的的cookiecookie目錄下;目錄下;l當瀏覽器要向某個服務(wù)器發(fā)送請求時,先檢查當瀏覽器要向某個服務(wù)器發(fā)送請求時,先檢查cookiecookie目錄,看目錄,看是否有從那個服務(wù)器發(fā)來的是否有從那個服務(wù)器發(fā)來的cookiecookie,如果有就把所有的,如果有就把所有的cookiecookie都包含在請求消息中,發(fā)送給服務(wù)器都包含在請求消息中,發(fā)送給服務(wù)器Web文檔文檔l靜態(tài)文檔:靜態(tài)文檔以文件方式保存在靜態(tài)文檔:靜態(tài)文檔以文件方式保存在WebWeb服務(wù)器上,服務(wù)器上,由文檔的作者決定文檔的內(nèi)容,對靜態(tài)文檔的每次請求由文檔的作者決定文檔的內(nèi)容,對靜態(tài)文檔的每次請求均產(chǎn)生相同的響應(yīng)。
均產(chǎn)生相同的響應(yīng)l動態(tài)文檔:動態(tài)文檔是由動態(tài)文檔:動態(tài)文檔是由WebWeb服務(wù)器動態(tài)創(chuàng)建的當請服務(wù)器動態(tài)創(chuàng)建的當請求到達時,求到達時,WebWeb服務(wù)器運行一個應(yīng)用程序創(chuàng)建動態(tài)文檔,服務(wù)器運行一個應(yīng)用程序創(chuàng)建動態(tài)文檔,并返回給瀏覽器,因此每次請求產(chǎn)生的動態(tài)文檔是不同并返回給瀏覽器,因此每次請求產(chǎn)生的動態(tài)文檔是不同的l主動(主動(activeactive)文檔:主動文檔由一個計算機程序組成,)文檔:主動文檔由一個計算機程序組成,當游覽器請求一個主動文檔時,服務(wù)器返回一個必須在當游覽器請求一個主動文檔時,服務(wù)器返回一個必須在瀏覽器本地運行的程序的拷貝,程序運行時可以與用戶瀏覽器本地運行的程序的拷貝,程序運行時可以與用戶進行交互,并不斷訪問服務(wù)器取回新的信息,因此主動進行交互,并不斷訪問服務(wù)器取回新的信息,因此主動文檔的內(nèi)容是在不斷更新的文檔的內(nèi)容是在不斷更新的Web服務(wù)器方工作過程服務(wù)器方工作過程l服服務(wù)務(wù)器器在在端端口口8080監(jiān)監(jiān)聽聽,與與請請求求的的客客戶戶建建立立TCPTCP連連接接,接接收收服務(wù)請求;服務(wù)請求;l確定請求的確定請求的WebWeb頁(名字擴展);頁(名字擴展);l(若若需需要要)認認證證客客戶戶;對對客客戶戶進進行行訪訪問問控控制制;對對請請求求的的頁頁進行訪問控制;進行訪問控制;l檢查請求的頁是否在高速緩存中,有直接讀取;檢查請求的頁是否在高速緩存中,有直接讀??;l若不在高速緩存中,從本地磁盤讀取文件;若不在高速緩存中,從本地磁盤讀取文件;l確定要包含在響應(yīng)中的確定要包含在響應(yīng)中的MIMEMIME類型;類型;l將文件返回給客戶,進行日志記錄,釋放連接。
將文件返回給客戶,進行日志記錄,釋放連接l服服務(wù)務(wù)器器設(shè)設(shè)計計的的關(guān)關(guān)鍵鍵是是要要提提高高服服務(wù)務(wù)的的響響應(yīng)應(yīng)速速度度,服服務(wù)務(wù)于于更更多多的的客客戶戶常常用用的的技技術(shù)術(shù)包包括括:將將經(jīng)經(jīng)常常訪訪問問的的文文件件保保存存在在高高速速緩緩存存中中,服服務(wù)務(wù)器器設(shè)設(shè)計計為為多多線線程程的的且且使使用用多多個個磁磁盤盤,建建立立server server farmfarm等HTML、XML和和XHTML(1)lHTMLHTML(超文本標記語言)是一種標記語言,用于描述文檔的顯示格式;(超文本標記語言)是一種標記語言,用于描述文檔的顯示格式;lHTMLHTML中的中的格式命令格式命令稱為稱為標簽標簽,標簽成對出現(xiàn),包含在一對標簽中的文,標簽成對出現(xiàn),包含在一對標簽中的文檔內(nèi)容,其顯示格式就由該標簽指定;檔內(nèi)容,其顯示格式就由該標簽指定;lHTMLHTML使用使用標簽在標簽在WebWeb頁中嵌入圖像,如:頁中嵌入圖像,如:IMG SRC=ALIGN=middle ALT=AWI Logo;lHTMLHTML使用使用標標簽在簽在WebWeb頁中加入超級鏈接,如:頁中加入超級鏈接,如:NASAs home page NASAs home page;l也可以為圖像設(shè)置超級鏈接,如:也可以為圖像設(shè)置超級鏈接,如:HTML、XML和和XHTML(2)lHTMLHTML使用使用表單表單收集用戶的輸入信息,表單中包含需要用戶收集用戶的輸入信息,表單中包含需要用戶提供信息的條目,每個條目都有一個唯一的名字,當用戶提供信息的條目,每個條目都有一個唯一的名字,當用戶點擊提交按鈕時,瀏覽器將所有條目及條目的值匯總,發(fā)點擊提交按鈕時,瀏覽器將所有條目及條目的值匯總,發(fā)送給服務(wù)器。
送給服務(wù)器lHTMLHTML的缺點:的缺點:將文檔的內(nèi)容與格式綁在一起,使得從文檔將文檔的內(nèi)容與格式綁在一起,使得從文檔中抽取信息或者改變信息的輸出格式非常困難中抽取信息或者改變信息的輸出格式非常困難l擴展的標記語言擴展的標記語言XMLXML和擴展的樣式語言和擴展的樣式語言XSLXSL將內(nèi)容與格式分將內(nèi)容與格式分離,使得離,使得數(shù)據(jù)的收集、處理與輸出非常靈活方便數(shù)據(jù)的收集、處理與輸出非常靈活方便lXMLXML以結(jié)構(gòu)化的方式描述內(nèi)容;以結(jié)構(gòu)化的方式描述內(nèi)容;lXSLXSL描述獨立于內(nèi)容的顯示格式描述獨立于內(nèi)容的顯示格式l可擴展的超文本標記語言可擴展的超文本標記語言XHTMLXHTML是一種更規(guī)范的語言,可是一種更規(guī)范的語言,可簡化瀏覽器的處理,從而可以在內(nèi)存及處理能力均有限的簡化瀏覽器的處理,從而可以在內(nèi)存及處理能力均有限的手持設(shè)備上運行瀏覽器程序手持設(shè)備上運行瀏覽器程序表單表單CGI和服務(wù)器端腳本技術(shù)(和服務(wù)器端腳本技術(shù)(1)lHTMLHTML表單的處理過程;表單的處理過程;l處理動態(tài)文檔的傳統(tǒng)方法是公共網(wǎng)關(guān)接口處理動態(tài)文檔的傳統(tǒng)方法是公共網(wǎng)關(guān)接口CGICGI:lCGICGI是一個標準接口,它允許是一個標準接口,它允許WebWeb服務(wù)器與一個能夠處理動服務(wù)器與一個能夠處理動態(tài)文檔的后臺程序或腳本進行交互;態(tài)文檔的后臺程序或腳本進行交互;lCGICGI只只規(guī)定了服務(wù)器與后臺程序交互的通用規(guī)則,而允許程規(guī)定了服務(wù)器與后臺程序交互的通用規(guī)則,而允許程序員選擇大多數(shù)的實現(xiàn)細節(jié),如編程語言的選擇;序員選擇大多數(shù)的實現(xiàn)細節(jié),如編程語言的選擇;l每個每個CGICGI程序被賦予一個程序被賦予一個URLURL,位于,位于cgi-bincgi-bin目錄下,表單的目錄下,表單的ACTIONACTION參數(shù)指出了處理表單數(shù)據(jù)的參數(shù)指出了處理表單數(shù)據(jù)的CGICGI程序的程序的URLURL,當表單,當表單數(shù)據(jù)被提交后,數(shù)據(jù)被提交后,WebWeb服務(wù)器調(diào)用相應(yīng)的服務(wù)器調(diào)用相應(yīng)的CGICGI程序進行處理,程序進行處理,并接收并接收CGICGI程序的輸出;程序的輸出;lCGICGI程序通過輸出的頭部與服務(wù)器進行通信,比如指出生成程序通過輸出的頭部與服務(wù)器進行通信,比如指出生成的文檔類型,也可以指出文檔放在另一個不同的的文檔類型,也可以指出文檔放在另一個不同的URLURL處;處;l服務(wù)器取得服務(wù)器取得CGICGI生成的文檔,返回給瀏覽器。
生成的文檔,返回給瀏覽器表單的處理表單的處理CGI和服務(wù)器端腳本技術(shù)(和服務(wù)器端腳本技術(shù)(2)lCGICGI的缺點:的缺點:每次請求每次請求CGICGI程序,均會產(chǎn)生一個完整的程序,均會產(chǎn)生一個完整的HTMLHTML頁,即頁,即使每次產(chǎn)生的使每次產(chǎn)生的HTMLHTML文件內(nèi)容只有幾行不同文件內(nèi)容只有幾行不同l當網(wǎng)頁只有一小部分需要改變時,可以使用服務(wù)器端腳本技術(shù):當網(wǎng)頁只有一小部分需要改變時,可以使用服務(wù)器端腳本技術(shù):l在服務(wù)器中存儲網(wǎng)頁的模板,它包含傳統(tǒng)的在服務(wù)器中存儲網(wǎng)頁的模板,它包含傳統(tǒng)的HTMLHTML和腳本信息;和腳本信息;l服務(wù)器中內(nèi)置解釋器,對于服務(wù)器中內(nèi)置解釋器,對于HTMLHTML信息解釋器不做任何改變,對信息解釋器不做任何改變,對于腳本信息解釋器用解釋腳本的結(jié)果代替于腳本信息解釋器用解釋腳本的結(jié)果代替l幾種主要的服務(wù)器端腳本技術(shù):幾種主要的服務(wù)器端腳本技術(shù):lASPASP(微軟):腳本信息用(微軟):腳本信息用VBVB編寫,腳本解釋器與微軟的編寫,腳本解釋器與微軟的InternetInternet信息服務(wù)器(信息服務(wù)器(Internet Informaton ServerInternet Informaton Server,IISIIS)緊密集成。
緊密集成lJSPJSP:網(wǎng)頁中嵌入的腳本代碼用:網(wǎng)頁中嵌入的腳本代碼用JavaJava語言編寫,因而獨立于平語言編寫,因而獨立于平臺lPHPPHP:使使用用PerlPerl語言,速度比語言,速度比ASPASP和和JSPJSP快,但嵌入的代碼難以快,但嵌入的代碼難以閱讀lColdFusionColdFusion:網(wǎng)頁中嵌入:網(wǎng)頁中嵌入SQLSQL數(shù)據(jù)庫查詢語句,解釋器向數(shù)據(jù)數(shù)據(jù)庫查詢語句,解釋器向數(shù)據(jù)庫系統(tǒng)發(fā)送庫系統(tǒng)發(fā)送SQLSQL查詢,并將結(jié)果置于查詢語句的位置查詢,并將結(jié)果置于查詢語句的位置Java、JavaScript和和ActiveX controlslJavaJavalJava AppletJava Applet必須先被編譯成字節(jié)碼并存儲在必須先被編譯成字節(jié)碼并存儲在WebWeb服務(wù)器服務(wù)器上;上;l游覽器需要運行游覽器需要運行HTMLHTML解釋器和解釋器和JavaJava解釋器;解釋器;l當用戶向瀏覽器提供一個當用戶向瀏覽器提供一個AppletApplet的的URLURL,或當瀏覽器在,或當瀏覽器在HTMLHTML文檔中遇到一個指向文檔中遇到一個指向AppletApplet的標記的標記時,瀏時,瀏覽器與服務(wù)器聯(lián)系獲得該覽器與服務(wù)器聯(lián)系獲得該AppletApplet的一個拷貝,下載到本的一個拷貝,下載到本地執(zhí)行;地執(zhí)行;lAppletApplet使用瀏覽器的使用瀏覽器的HTTPHTTP客戶檢索文檔,使用瀏覽器的客戶檢索文檔,使用瀏覽器的HTMLHTML解釋器顯示網(wǎng)頁信息。
解釋器顯示網(wǎng)頁信息lJavaScriptJavaScriptlJavaScriptJavaScript是一種腳本語言,提供有與用戶交互的是一種腳本語言,提供有與用戶交互的JavaScriptJavaScript函數(shù),腳本直接嵌入函數(shù),腳本直接嵌入HTMLHTML頁中,由瀏覽器解頁中,由瀏覽器解釋執(zhí)行l(wèi)ActiveX controlsActiveX controlslActiveX controlsActiveX controls被編譯成機器語言,在硬件上執(zhí)行,被編譯成機器語言,在硬件上執(zhí)行,與微軟的與微軟的IEIE瀏覽器結(jié)合在一起瀏覽器結(jié)合在一起超文本傳輸協(xié)議超文本傳輸協(xié)議HTTPlHTTPHTTP協(xié)議:協(xié)議:瀏覽器與瀏覽器與WebWeb服務(wù)器之間通信使用的協(xié)議,規(guī)服務(wù)器之間通信使用的協(xié)議,規(guī)定了客戶方與服務(wù)器方通信所使用的命令及響應(yīng)定了客戶方與服務(wù)器方通信所使用的命令及響應(yīng)lHTTPHTTP通常運行在通常運行在TCPTCP連接之上,使用端口連接之上,使用端口8080l基本工作模式:基本工作模式:瀏覽器向服務(wù)器發(fā)送瀏覽器向服務(wù)器發(fā)送HTTPHTTP請求,服務(wù)器返請求,服務(wù)器返回響應(yīng),然后釋放連接。
服務(wù)器不保留以前的請求或會話回響應(yīng),然后釋放連接服務(wù)器不保留以前的請求或會話的歷史記錄的歷史記錄l持久連接:持久連接:從從HTTP/1.1HTTP/1.1開始使用持久連接方式,一旦客戶開始使用持久連接方式,一旦客戶建立了和特定服務(wù)器的建立了和特定服務(wù)器的TCPTCP連接,該連接就在多個請求和連接,該連接就在多個請求和響應(yīng)過程中一直存在,直到某一方關(guān)閉連接響應(yīng)過程中一直存在,直到某一方關(guān)閉連接HTTP/1.1HTTP/1.1的的默認方式為使用持久連接默認方式為使用持久連接l非流水線方式:客戶只能在收到前一個請求的響應(yīng)后才非流水線方式:客戶只能在收到前一個請求的響應(yīng)后才能發(fā)送下一個請求;能發(fā)送下一個請求;l流水線方式:客戶可以連續(xù)發(fā)送多個請求而不需要等待流水線方式:客戶可以連續(xù)發(fā)送多個請求而不需要等待響應(yīng),服務(wù)器也可以進行連續(xù)響應(yīng)響應(yīng),服務(wù)器也可以進行連續(xù)響應(yīng)l使用持久連接的缺點是要標識發(fā)送的每一個數(shù)據(jù)項的開頭使用持久連接的缺點是要標識發(fā)送的每一個數(shù)據(jù)項的開頭和結(jié)尾HTTPHTTP通常使用的方法是先發(fā)送數(shù)據(jù)項的長度,然通常使用的方法是先發(fā)送數(shù)據(jù)項的長度,然后再發(fā)送數(shù)據(jù)項后再發(fā)送數(shù)據(jù)項超文本傳輸協(xié)議超文本傳輸協(xié)議HTTP(2)l內(nèi)置的內(nèi)置的HTTPHTTP操作操作lHTTPHTTP允許瀏覽器和服務(wù)器通過允許瀏覽器和服務(wù)器通過消息頭部消息頭部交換元交換元信息和協(xié)商各種能力;信息和協(xié)商各種能力;l條件請求:條件請求:HTTPHTTP允許發(fā)送方有條件地請求,瀏允許發(fā)送方有條件地請求,瀏覽器可以在頭部說明在哪種條件下應(yīng)該響應(yīng)請覽器可以在頭部說明在哪種條件下應(yīng)該響應(yīng)請求,如果不符合條件,服務(wù)器不返回請求的數(shù)求,如果不符合條件,服務(wù)器不返回請求的數(shù)據(jù)項據(jù)項。
Web優(yōu)化(優(yōu)化(1)lWebWeb緩存緩存lWebWeb緩存是將請求到的頁放到緩存中,以備將來使用緩存是將請求到的頁放到緩存中,以備將來使用l使用一個代理程序來維護緩存,瀏覽器被配置為向代理使用一個代理程序來維護緩存,瀏覽器被配置為向代理請求網(wǎng)頁,當緩存中有所請求的頁時,代理將頁返回,請求網(wǎng)頁,當緩存中有所請求的頁時,代理將頁返回,否則先從服務(wù)器取回,添加到緩存中,然后返回給請求否則先從服務(wù)器取回,添加到緩存中,然后返回給請求頁的客戶頁的客戶l分級緩存方案:本地分級緩存方案:本地PCPC、局域網(wǎng)及、局域網(wǎng)及ISPISP均運行代理,協(xié)均運行代理,協(xié)同工作l確定頁的緩存時間:確定頁的緩存時間:l啟發(fā)式方法:根據(jù)網(wǎng)頁的啟發(fā)式方法:根據(jù)網(wǎng)頁的Last-ModifiedLast-Modified頭來確定保頭來確定保存時間;存時間;l條件請求:使用條件請求:使用If-Modified-SinceIf-Modified-Since請求頭;請求頭;l由服務(wù)器指示如何進行緩存由服務(wù)器指示如何進行緩存l積極緩存積極緩存Web分級緩存方案分級緩存方案Web優(yōu)化(優(yōu)化(2)l服務(wù)器鏡像服務(wù)器鏡像l服務(wù)器在多個相距較遠的位置上復制它們的內(nèi)容;l鏡像站點的靜態(tài)創(chuàng)建和動態(tài)創(chuàng)建。
Web優(yōu)化(優(yōu)化(3)l內(nèi)容投遞網(wǎng)絡(luò)內(nèi)容投遞網(wǎng)絡(luò)CDNCDNl內(nèi)容投遞商通過在各個內(nèi)容投遞商通過在各個ISPISP網(wǎng)絡(luò)上放置自已的內(nèi)容服務(wù)網(wǎng)絡(luò)上放置自已的內(nèi)容服務(wù)器,為內(nèi)容提供商提供內(nèi)容投遞服務(wù)器,為內(nèi)容提供商提供內(nèi)容投遞服務(wù)l如何將用戶的請求重定位到最近的內(nèi)容服務(wù)器上?如何將用戶的請求重定位到最近的內(nèi)容服務(wù)器上?lCDNCDN對內(nèi)容提供商服務(wù)器上的每一個網(wǎng)頁進行預(yù)處理,對內(nèi)容提供商服務(wù)器上的每一個網(wǎng)頁進行預(yù)處理,將網(wǎng)頁中的所有將網(wǎng)頁中的所有URLURL替換為指向替換為指向CDNCDN服務(wù)器的服務(wù)器的URLURL;lCDNCDN服務(wù)器是一個偽服務(wù)器是一個偽HTTPHTTP服務(wù)器,它通過檢查文件名服務(wù)器,它通過檢查文件名和服務(wù)器名,確定請求的是哪個內(nèi)容提供商的哪個網(wǎng)和服務(wù)器名,確定請求的是哪個內(nèi)容提供商的哪個網(wǎng)頁;通過檢查輸入請求的頁;通過檢查輸入請求的IPIP地址并查找數(shù)據(jù)庫,確定地址并查找數(shù)據(jù)庫,確定用戶大概在什么位置;然后確定一個最合適的用戶大概在什么位置;然后確定一個最合適的CDNCDN內(nèi)內(nèi)容服務(wù)器,向客戶返回一個帶有容服務(wù)器,向客戶返回一個帶有LocationLocation頭的響應(yīng)消頭的響應(yīng)消息,給出該內(nèi)容服務(wù)器上所請求文件的息,給出該內(nèi)容服務(wù)器上所請求文件的URLURL。
l通常偽通常偽HTTPHTTP服務(wù)器會將客戶的請求重定向到距客戶最服務(wù)器會將客戶的請求重定向到距客戶最近的近的CDNCDN代理,代理,CDNCDN代理擁有一個很大的緩存,里面預(yù)代理擁有一個很大的緩存,里面預(yù)先下載了最重要的內(nèi)容先下載了最重要的內(nèi)容在在CDN中查找中查找URLl1 1、ISOISO七層協(xié)議是什么?七層協(xié)議是什么?TCP/IPTCP/IP四層協(xié)議是什么?四層協(xié)議是什么?l2 2、ISOISO模型是如何進行傳輸?shù)哪P褪侨绾芜M行傳輸?shù)膌3 3、ISOISO七層協(xié)議各有什么作用?七層協(xié)議各有什么作用?l4 4、簡述、簡述ISOISO模型與模型與TCP/IPTCP/IP模型的特點模型的特點l5 5、簡述、簡述ISOISO模型與模型與TCP/IPTCP/IP模型的關(guān)系與區(qū)別模型的關(guān)系與區(qū)別l6 6、TCP/IPTCP/IP四層協(xié)議各有什么作用?四層協(xié)議各有什么作用?l7 7、TCP/IPTCP/IP應(yīng)用層服務(wù)有哪些?應(yīng)用層服務(wù)有哪些?l8 8、簡要說明、簡要說明WWWWWW服務(wù)的執(zhí)行過程服務(wù)的執(zhí)行過程l9 9、當用戶點擊了某個超級鏈接、當用戶點擊了某個超級鏈接http:/www.itu.org/home/index.htmlhttp:/www.itu.org/home/index.html后,后,WebWeb客戶端與客戶端與服務(wù)器端各進行哪些工作?服務(wù)器端各進行哪些工作?l1010、WebWeb的優(yōu)化方案有哪些?如何運作的?的優(yōu)化方案有哪些?如何運作的?本章思考題本章思考題。