




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第五部分應(yīng)用層協(xié)議第1頁,共142頁,2023年,2月20日,星期一應(yīng)用的體系結(jié)構(gòu)客戶/服務(wù)器體系結(jié)構(gòu)有一個(gè)總是打開的服務(wù)器,在固定的眾所周知的地址上為客戶機(jī)提供服務(wù),客戶機(jī)之間不直接通信,如:電子郵件、文件傳輸、WWW…P2P體系結(jié)構(gòu):沒有一個(gè)總是打開的服務(wù)器,任意一對(duì)主機(jī)(對(duì)等方)之間直接通信,如P2P文件共享;混合體系結(jié)構(gòu)同時(shí)使用客戶/服務(wù)器結(jié)構(gòu)和P2P結(jié)構(gòu),如具有聯(lián)系人列表的即時(shí)訊息。第2頁,共142頁,2023年,2月20日,星期一應(yīng)用層協(xié)議應(yīng)用層協(xié)議定義了運(yùn)行在不同端系統(tǒng)上的應(yīng)用程序如何進(jìn)行通信,包括:相互交換的報(bào)文類型、各種報(bào)文類型的語法、各個(gè)字段的語義、各種報(bào)文的處理等。應(yīng)用層協(xié)議只是網(wǎng)絡(luò)應(yīng)用的一部分,如Web應(yīng)用包括:文檔格式標(biāo)準(zhǔn)Web瀏覽、Web服務(wù)器應(yīng)用層協(xié)議HTTP第3頁,共142頁,2023年,2月20日,星期一客戶-服務(wù)器模型建立互聯(lián)網(wǎng)的目的是向用戶提供服務(wù),Internet主要采用客戶-服務(wù)器模式向用戶提供服務(wù):一臺(tái)計(jì)算機(jī)運(yùn)行一個(gè)提供服務(wù)的程序(稱服務(wù)器),另一臺(tái)計(jì)算機(jī)運(yùn)行一個(gè)請(qǐng)求服務(wù)的程序(稱客戶)??蛻粝蚍?wù)器請(qǐng)求服務(wù),而服務(wù)器完成所請(qǐng)求的服務(wù)。因而一個(gè)應(yīng)用程序總是成對(duì)出現(xiàn)。一個(gè)服務(wù)器可以向任何客戶提供服務(wù)。第4頁,共142頁,2023年,2月20日,星期一客戶和服務(wù)器客戶:運(yùn)行在本地計(jì)算機(jī)上向服務(wù)器請(qǐng)求服務(wù)的程序??蛻舫绦蚴怯邢薜?,它由用戶或另一個(gè)應(yīng)用程序啟動(dòng),服務(wù)完成時(shí)終止??蛻羰褂眠h(yuǎn)程計(jì)算機(jī)的IP地址以及在該遠(yuǎn)程計(jì)算機(jī)上提供該服務(wù)的端口號(hào)建立通信通道(稱主動(dòng)打開),發(fā)送請(qǐng)求和接收響應(yīng),服務(wù)結(jié)束后主動(dòng)關(guān)閉通信通道。服務(wù)器:運(yùn)行在遠(yuǎn)程計(jì)算機(jī)上向客戶提供服務(wù)的程序。服務(wù)器程序是無限的,啟動(dòng)后就一直運(yùn)行,除非出問題或被關(guān)閉。服務(wù)器一直在指定的端口上等待服務(wù)請(qǐng)求,當(dāng)服務(wù)請(qǐng)求到來時(shí)建立通信通道(被動(dòng)打開),處理請(qǐng)求并發(fā)回響應(yīng)。第5頁,共142頁,2023年,2月20日,星期一第17章BOOTP和DHCP連接到TCP/IP網(wǎng)絡(luò)的每一臺(tái)計(jì)算機(jī)需要知道以下配置信息:自己的IP地址,自己的子網(wǎng)掩碼,路由器的IP地址,名字服務(wù)器的IP地址。配置信息的獲?。号渲眯畔⑼ǔ4鎯?chǔ)在一個(gè)配置文件中,計(jì)算機(jī)在引導(dǎo)過程中讀取該文件。對(duì)于無盤工作站或第一次啟動(dòng)的計(jì)算機(jī),需要使用配置協(xié)議獲取配置信息。兩個(gè)這樣的協(xié)議:BOOTP和DHCP第6頁,共142頁,2023年,2月20日,星期一17.1引導(dǎo)協(xié)議BOOTPBOOTP協(xié)議用于將上述四種信息提供給無盤計(jì)算機(jī)或第一次啟動(dòng)的計(jì)算機(jī)。BOOTP使用客戶-服務(wù)器模式,客戶請(qǐng)求配置信息,服務(wù)器響應(yīng)配置信息。BOOTP是一種靜態(tài)配置協(xié)議,客戶信息必須預(yù)先保存在配置信息表中。BOOTP包括了RARP的功能第7頁,共142頁,2023年,2月20日,星期一BOOTP的分組格式第8頁,共142頁,2023年,2月20日,星期一選項(xiàng)格式選項(xiàng)只在回答報(bào)文中出現(xiàn),用于攜帶附加信息或某些特定廠商的信息。第9頁,共142頁,2023年,2月20日,星期一BOOTP的選項(xiàng)第10頁,共142頁,2023年,2月20日,星期一BOOTP的操作BOOTP使用UDP協(xié)議,服務(wù)器和客戶分別使用熟知端口號(hào)67和68??蛻舭l(fā)送BOOTP請(qǐng)求報(bào)文,報(bào)文先被封裝成UDP用戶數(shù)據(jù)報(bào),然后再封裝成IP數(shù)據(jù)報(bào)(源地址為全0,目的地址為全1),IP數(shù)據(jù)報(bào)再封裝在廣播幀中發(fā)送。服務(wù)器查找相應(yīng)的配置信息,構(gòu)造BOOTP響應(yīng)報(bào)文。封裝響應(yīng)報(bào)文的IP數(shù)據(jù)報(bào)的目的地址仍為全1地址,但可使用廣播幀或單播幀發(fā)送。使用單播幀發(fā)送時(shí),目的地址為服務(wù)器從攜帶BOOTP請(qǐng)求報(bào)文的幀中獲取的源MAC地址。若客戶需要引導(dǎo)程序,服務(wù)器在BOOTP響應(yīng)報(bào)文中只是給出了文件的路徑名??蛻粜枰褂肨FTP協(xié)議從相應(yīng)的文件服務(wù)器獲取所需要的引導(dǎo)程序。第11頁,共142頁,2023年,2月20日,星期一BOOTP報(bào)文的封裝第12頁,共142頁,2023年,2月20日,星期一中繼代理若使用一個(gè)BOOTP服務(wù)器為好幾個(gè)局域網(wǎng)提供服務(wù),則必須在每個(gè)局域網(wǎng)中安裝一個(gè)中繼代理。中繼代理是一個(gè)路由器,負(fù)責(zé)在本地計(jì)算機(jī)和遠(yuǎn)程服務(wù)器之間轉(zhuǎn)發(fā)請(qǐng)求和響應(yīng)。收到客戶請(qǐng)求的中繼代理在網(wǎng)關(guān)IP地址字段中填入自己的地址,用單播方式發(fā)送給BOOTP服務(wù)器;BOOTP服務(wù)器將響應(yīng)報(bào)文發(fā)送給中繼代理;中繼代理再轉(zhuǎn)發(fā)給請(qǐng)求計(jì)算機(jī)。第13頁,共142頁,2023年,2月20日,星期一差錯(cuò)控制BOOTP使用以下差錯(cuò)控制策略:BOOTP要求UDP使用檢驗(yàn)和BOOTP使用超時(shí)重傳機(jī)制進(jìn)行差錯(cuò)恢復(fù)。第14頁,共142頁,2023年,2月20日,星期一17.2動(dòng)態(tài)主機(jī)配置協(xié)議DHCPDHCP擴(kuò)充了BOOTP協(xié)議,支持動(dòng)態(tài)配置,特別是可提供臨時(shí)IP地址。永久地址和臨時(shí)地址:永久地址一般分配給服務(wù)器。臨時(shí)(租用)地址一般分配給普通客戶。當(dāng)臨時(shí)地址將到期時(shí),客戶必須與DHCP服務(wù)器協(xié)商延長租期,否則不能再使用該IP地址。DHCP服務(wù)器使用兩個(gè)數(shù)據(jù)庫:靜態(tài)配置數(shù)據(jù)庫:類似于BOOTP服務(wù)器中的配置數(shù)據(jù)庫。動(dòng)態(tài)配置數(shù)據(jù)庫:擁有一個(gè)可用IP地址池。當(dāng)收到客戶請(qǐng)求時(shí),DHCP服務(wù)器先查找靜態(tài)數(shù)據(jù)庫;若存在請(qǐng)求的表項(xiàng),返回這個(gè)客戶的永久IP地址;否則,從可用IP地址池中選擇一個(gè)分配給客戶,并添加表項(xiàng)到動(dòng)態(tài)數(shù)據(jù)庫中。第15頁,共142頁,2023年,2月20日,星期一DHCP分組格式第16頁,共142頁,2023年,2月20日,星期一DHCP新增的選項(xiàng)這些新增的選項(xiàng)用來定義在客戶和服務(wù)器之間交互的類型。第17頁,共142頁,2023年,2月20日,星期一DHCP的操作DHCP客戶啟動(dòng)時(shí)發(fā)送DHCPDISCOVER報(bào)文。提供DHCP服務(wù)的服務(wù)器發(fā)送DHCPOFFER報(bào)文,向客戶提供一個(gè)臨時(shí)IP地址,并鎖定該IP地址。DHCP客戶從收到的響應(yīng)中選擇一個(gè)IP地址,向提供該IP地址的服務(wù)器發(fā)送DHCPREQUEST報(bào)文。DHCP服務(wù)器發(fā)送DHCPACK報(bào)文進(jìn)行響應(yīng),并綁定客戶的物理地址與IP地址。在租期經(jīng)過一半后,客戶發(fā)送一個(gè)DHCPREQUEST報(bào)文請(qǐng)求更新。若收到DHCPACK,續(xù)約完成;若收到DHCPNACK或租期超過,重新申請(qǐng)一個(gè)IP地址。第18頁,共142頁,2023年,2月20日,星期一第19頁,共142頁,2023年,2月20日,星期一DHCP狀態(tài)轉(zhuǎn)換圖第20頁,共142頁,2023年,2月20日,星期一練習(xí)28,29,30第21頁,共142頁,2023年,2月20日,星期一第18章域名系統(tǒng)DNS網(wǎng)絡(luò)內(nèi)部使用IP地址來引用資源,而人們往往傾向于使用便于記憶的ASCII名字,這就需要在資源的ASCII名字和它的IP地址之間建立起一種映射關(guān)系。早期的Internet使用主機(jī)文件來實(shí)現(xiàn)映射:名字沖突更新慢域名系統(tǒng)是一種分級(jí)結(jié)構(gòu)的基于域的命名方案和實(shí)現(xiàn)這種命名方案的分布式數(shù)據(jù)庫:層次命名解決了大規(guī)模網(wǎng)絡(luò)中名字沖突的問題;分布式數(shù)據(jù)庫解決了表的維護(hù)與傳播問題。第22頁,共142頁,2023年,2月20日,星期一命名空間DNS在概念上將因特網(wǎng)分成了200多個(gè)頂級(jí)域,每個(gè)頂級(jí)域被進(jìn)一步劃分成若干個(gè)二級(jí)子域,每個(gè)二級(jí)子域還可以再分子域,依次類推。第23頁,共142頁,2023年,2月20日,星期一域名和標(biāo)號(hào)一個(gè)指定的域是指樹中一個(gè)特定的節(jié)點(diǎn)以及該節(jié)點(diǎn)以下所有的節(jié)點(diǎn)。樹上每一個(gè)節(jié)點(diǎn)都有一個(gè)標(biāo)號(hào)(最多63個(gè)字符),根標(biāo)號(hào)是空字符串。某個(gè)域的域名用從該域開始向上直到樹根(為空)的標(biāo)號(hào)序列表示,標(biāo)號(hào)之間用句點(diǎn)隔開。域名的任一后綴也是一個(gè)域。第24頁,共142頁,2023年,2月20日,星期一頂級(jí)域頂級(jí)域分為組織域、國家域和反向域三種。組織域:由美國國內(nèi)機(jī)構(gòu)及一些國際組織使用。國家域:使用二字符的國家代碼,每個(gè)國家對(duì)應(yīng)一個(gè)。反向域:域名為arpa,用來把一個(gè)地址映射為名字。第25頁,共142頁,2023年,2月20日,星期一組織域第26頁,共142頁,2023年,2月20日,星期一國家域第27頁,共142頁,2023年,2月20日,星期一反向域第28頁,共142頁,2023年,2月20日,星期一DNS解析過程DNS的一般工作過程:應(yīng)用程序調(diào)用一個(gè)稱為解析器的庫例程,將名字作為參數(shù)傳遞進(jìn)去。解析器的內(nèi)部配置了本地DNS服務(wù)器的地址。解析器將需要查詢的信息封裝成一個(gè)DNS請(qǐng)求報(bào)文,發(fā)送給本地域名服務(wù)器。若本地?cái)?shù)據(jù)庫中有所需的信息,本地域名服務(wù)器將查到的信息封裝成DNS響應(yīng)報(bào)文,發(fā)回給解析器。解析器從DNS響應(yīng)報(bào)文取出查詢結(jié)果,返回給調(diào)用者。第29頁,共142頁,2023年,2月20日,星期一DNS服務(wù)器的組織方式三種類型的DNS服務(wù)器:根服務(wù)器:知道所有頂級(jí)域服務(wù)器的IP地址,因特網(wǎng)上共有13個(gè)根服務(wù)器。頂級(jí)域(TLD)服務(wù)器:每個(gè)頂級(jí)域至少有一個(gè)頂級(jí)域服務(wù)器,每個(gè)TLD服務(wù)器知道本域下所有二級(jí)子域的權(quán)威DNS服務(wù)器的IP地址。權(quán)威DNS服務(wù)器:存放各組織機(jī)構(gòu)公共可訪問DNS記錄的服務(wù)器。第30頁,共142頁,2023年,2月20日,星期一本地?cái)?shù)據(jù)庫中沒有找到所需的信息遞歸解析:由域名服務(wù)器逐層向上查詢,并將最終解答返回給解析程序。迭代解析:域名服務(wù)器將需要進(jìn)一步查詢的域名服務(wù)器的IP地址返回給解析器,由解析器向推薦的服務(wù)器發(fā)送查詢請(qǐng)求。使用DNS緩存:當(dāng)服務(wù)器收到不在它域中的名字-IP地址映射關(guān)系時(shí),將收到的映射關(guān)系保存在其高速緩存中,以備下一個(gè)客戶查詢。第31頁,共142頁,2023年,2月20日,星期一遞歸解析示意第32頁,共142頁,2023年,2月20日,星期一迭代解析示意第33頁,共142頁,2023年,2月20日,星期一域名服務(wù)器的概念層次第34頁,共142頁,2023年,2月20日,星期一物理服務(wù)器的層次一個(gè)物理服務(wù)器保存的信息可能涉及域名空間的若干層,它也可以把它的域劃分成若干子域,把其中的一些子域委托給其它服務(wù)器。因此,實(shí)際的物理服務(wù)器的層次與域名空間的邏輯層次不同。第35頁,共142頁,2023年,2月20日,星期一資源記錄DNS數(shù)據(jù)庫的每一個(gè)表項(xiàng)稱為一個(gè)資源記錄。每個(gè)域都有一組與之相關(guān)聯(lián)的資源記錄,解析器從DNS得到的其實(shí)是和域名相關(guān)聯(lián)的資源記錄。因此可以說,DNS的主要功能是將域名映射到資源記錄上。一條資源記錄是一個(gè)六元組,包括:域名:該資源記錄適用的域;生存期:表示資源記錄的穩(wěn)定性;信息類型:對(duì)于因特網(wǎng)信息,該字段總為1;資源記錄類型:共有20多種資源記錄資源數(shù)據(jù)長度資源數(shù)據(jù)第36頁,共142頁,2023年,2月20日,星期一資源記錄格式第37頁,共142頁,2023年,2月20日,星期一重要的資源記錄類型第38頁,共142頁,2023年,2月20日,星期一DNS數(shù)據(jù)庫內(nèi)容示例第39頁,共142頁,2023年,2月20日,星期一DNS報(bào)文的封裝DNS可以使用UDP,也可以使用TCP,服務(wù)器的熟知端口都是53。當(dāng)響應(yīng)報(bào)文的長度小于512字節(jié)時(shí),使用UDP。當(dāng)響應(yīng)報(bào)文的長度超過512字節(jié)時(shí),使用TCP。當(dāng)解析程序事先不知道響應(yīng)報(bào)文的長度時(shí),先使用UDP;若響應(yīng)報(bào)文的長度超過512字節(jié),服務(wù)器截?cái)噙@個(gè)報(bào)文,置DNS報(bào)文首部的TC標(biāo)志為1;解析程序打開TCP連接,并重復(fù)這個(gè)請(qǐng)求,以便得到完整的響應(yīng)。第40頁,共142頁,2023年,2月20日,星期一第19章Telnet我們需要一種通用的客戶-服務(wù)器程序,允許用戶注冊(cè)到遠(yuǎn)程計(jì)算機(jī)上,然后使用遠(yuǎn)程計(jì)算機(jī)提供的服務(wù),并把結(jié)果返回到本地計(jì)算機(jī)上。Telnet是提供虛擬終端服務(wù)的TCP/IP協(xié)議,使用戶能夠建立一條到遠(yuǎn)程系統(tǒng)的連接,好像本地終端就連接在遠(yuǎn)程系統(tǒng)上一樣。第41頁,共142頁,2023年,2月20日,星期一19.1注冊(cè)在分時(shí)環(huán)境中,大型計(jì)算機(jī)支持許多個(gè)用戶,用戶通過終端與計(jì)算機(jī)交互。當(dāng)用戶在鍵盤上輸入字符時(shí),字符被發(fā)送到計(jì)算機(jī),同時(shí)回送到顯示器上,讓用戶有使用專用計(jì)算機(jī)的感覺。用戶可以運(yùn)行程序,使用系統(tǒng)資源。在分時(shí)環(huán)境中,用戶是系統(tǒng)的一部分,并具有使用資源的某些權(quán)利。每一個(gè)授權(quán)用戶都有一個(gè)標(biāo)識(shí)和一個(gè)口令,當(dāng)用戶需要使用計(jì)算機(jī)時(shí)必須注冊(cè),提供用戶標(biāo)識(shí)和口令,供計(jì)算機(jī)進(jìn)行鑒權(quán)。第42頁,共142頁,2023年,2月20日,星期一本地注冊(cè)用戶注冊(cè)到本地分時(shí)系統(tǒng)時(shí),稱為本地注冊(cè)。用戶在終端上的擊鍵被終端驅(qū)動(dòng)程序接受,操作系統(tǒng)解釋字符的組合,并調(diào)用所需的程序。第43頁,共142頁,2023年,2月20日,星期一遠(yuǎn)程注冊(cè)用戶注冊(cè)到遠(yuǎn)程計(jì)算機(jī)上,稱為遠(yuǎn)程注冊(cè)。用戶的擊鍵輸入不在本地解釋,而是通過Internet發(fā)送到遠(yuǎn)程計(jì)算機(jī)上,由遠(yuǎn)程操作系統(tǒng)交付給應(yīng)用程序。用戶輸入的字符被送到telnet客戶,telnet客戶將字符轉(zhuǎn)換成網(wǎng)絡(luò)虛擬終端(NVT)字符,經(jīng)因特網(wǎng)傳輸?shù)竭h(yuǎn)程機(jī)器,telnet服務(wù)器將NVT字符轉(zhuǎn)換成本機(jī)可理解的字符,再通過偽終端驅(qū)動(dòng)程序交給適當(dāng)?shù)膽?yīng)用程序。第44頁,共142頁,2023年,2月20日,星期一19.2網(wǎng)絡(luò)虛擬終端NVT每一個(gè)計(jì)算機(jī)及其操作系統(tǒng)接受特殊的字符組合作為一些記號(hào)。NVT是Telnet為異構(gòu)系統(tǒng)之間通信而定義的通用接口。Telnet客戶將來自本地終端的字符轉(zhuǎn)換成NVT形式,交付給網(wǎng)絡(luò);Telnet服務(wù)器把來自NVT形式的字符轉(zhuǎn)換成遠(yuǎn)程計(jì)算機(jī)可接受的形式。VNT使用兩個(gè)字符集,每一個(gè)字符都為8位:數(shù)據(jù)字符:最高位為0,低7位與USASCII相同。遠(yuǎn)程控制字符:最高位為1。第45頁,共142頁,2023年,2月20日,星期一19.3Telnet傳輸Telnet僅使用一個(gè)TCP連接,服務(wù)器使用熟知端口23。NVT的遠(yuǎn)程控制字符嵌入在數(shù)據(jù)流中一起傳輸,控制字符前加上IAC以區(qū)別于數(shù)據(jù)。第46頁,共142頁,2023年,2月20日,星期一19.4選項(xiàng)協(xié)商Telnet允許客戶與服務(wù)器之間協(xié)商選項(xiàng),如終端類型、終端速率、回顯、行模式等。Telnet使用四種控制字符進(jìn)行選項(xiàng)協(xié)商。第47頁,共142頁,2023年,2月20日,星期一選項(xiàng)協(xié)商示例客戶希望服務(wù)器把發(fā)送給服務(wù)器的每一個(gè)字符回顯。回顯選項(xiàng)僅能被服務(wù)器啟動(dòng),因而客戶使用DO來請(qǐng)求啟動(dòng)這個(gè)選項(xiàng),服務(wù)器用WILL表示接受這個(gè)請(qǐng)求。第48頁,共142頁,2023年,2月20日,星期一19.5對(duì)服務(wù)器進(jìn)行控制需要一些控制字符來控制在遠(yuǎn)程計(jì)算機(jī)上運(yùn)行的程序。第49頁,共142頁,2023年,2月20日,星期一帶外信令為使控制字符在特殊情況下有效,Telnet使用帶外方式將控制字符發(fā)送給遠(yuǎn)程操作系統(tǒng),方法是使用TCP的緊急報(bào)文段。在控制字符序列后面插入特殊字符DM(數(shù)據(jù)標(biāo)記),TCP報(bào)文段緊急指針指向DM。接收端TCP根據(jù)DM找到控制字符,交給上層,丟棄DM之前的數(shù)據(jù),從DM開始的數(shù)據(jù)按正常數(shù)據(jù)處理。第50頁,共142頁,2023年,2月20日,星期一19.6Telnet的操作模式默認(rèn)模式:字符回顯由客戶完成,整個(gè)一行輸完后再發(fā)送給服務(wù)器,但必須收到來自服務(wù)器的GA命令后才能接受用戶的下一行輸入(半雙工方式)。這種模式已很少使用。字符模式:每一個(gè)鍵入的字符都發(fā)送給服務(wù)器,并被回顯到客戶的屏幕上。這種方式開銷很大。行模式:行編輯由客戶完成,然后把整行發(fā)送給服務(wù)器。行模式是全雙工模式,客戶可以一行接著一行地發(fā)送,不需要等待服務(wù)器的GA命令。第51頁,共142頁,2023年,2月20日,星期一Telnet交互示例(默認(rèn)方式)第52頁,共142頁,2023年,2月20日,星期一切換到字符模式第53頁,共142頁,2023年,2月20日,星期一19.7用戶接口用戶不使用以上Telnet命令,通常操作系統(tǒng)會(huì)定義一個(gè)用戶友好的命令接口,用于將用戶友好的命令轉(zhuǎn)換為Telnet命令。第54頁,共142頁,2023年,2月20日,星期一第20章文件傳送協(xié)議FTPFTP是TCP/IP提供的標(biāo)準(zhǔn)機(jī)制,用來從一個(gè)主機(jī)把文件復(fù)制到另一個(gè)主機(jī)。FTP使用兩個(gè)TCP連接,一條連接用于傳送數(shù)據(jù),另一條連接用于傳送控制信息(命令和響應(yīng))。控制連接在整個(gè)FTP會(huì)話期間一直保持,數(shù)據(jù)連接在每一次文件傳送時(shí)打開,在一個(gè)文件傳送結(jié)束后關(guān)閉。FTP使用關(guān)閉連接來表示一個(gè)文件傳送結(jié)束。若傳送多個(gè)文件,則數(shù)據(jù)連接打開和關(guān)閉多次。第55頁,共142頁,2023年,2月20日,星期一FTP模型兩端的控制進(jìn)程間建立控制連接,數(shù)據(jù)傳送進(jìn)程間建立數(shù)據(jù)連接。第56頁,共142頁,2023年,2月20日,星期一建立控制連接服務(wù)器在熟知端口21等待客戶,客戶使用臨時(shí)端口號(hào)建立連接。第57頁,共142頁,2023年,2月20日,星期一建立數(shù)據(jù)連接客戶選擇一個(gè)臨時(shí)端口號(hào),在該端口上等待服務(wù)器的連接請(qǐng)求??蛻粼诳刂七B接上用PORT命令將臨時(shí)端口號(hào)發(fā)送給服務(wù)器。服務(wù)器使用端口20與客戶機(jī)給出的端口建立連接。第58頁,共142頁,2023年,2月20日,星期一將控制連接和數(shù)據(jù)連接分開的優(yōu)點(diǎn):簡化協(xié)議的設(shè)計(jì)和實(shí)現(xiàn)控制連接在文件傳輸過程中一直可用使用數(shù)據(jù)連接的關(guān)閉通知文件傳輸結(jié)束,允許動(dòng)態(tài)創(chuàng)建文件。第59頁,共142頁,2023年,2月20日,星期一解決異構(gòu)系統(tǒng)之間的通信問題控制連接上的通信:使用NVTASCII編碼的FTP命令和響應(yīng)在控制連接上定義要傳送的文件類型、數(shù)據(jù)結(jié)構(gòu)及傳輸模式。數(shù)據(jù)連接上的通信:按照在控制連接上定義的文件類型、數(shù)據(jù)結(jié)構(gòu)及傳輸模式進(jìn)行數(shù)據(jù)轉(zhuǎn)換、傳輸及交付。第60頁,共142頁,2023年,2月20日,星期一文件類型ASCII文件:傳送文本文件的默認(rèn)格式,每一個(gè)字符使用NVTASCII進(jìn)行編碼。EBCDIC文件:若連接的一端或兩端使用EBCDIC編碼,則可使用EBCDIC編碼傳送文件。圖像文件:傳送二進(jìn)制文件的默認(rèn)格式,文件作為連續(xù)的位流而沒有任何解釋或編碼。第61頁,共142頁,2023年,2月20日,星期一數(shù)據(jù)結(jié)構(gòu)文件結(jié)構(gòu)(默認(rèn)):這種文件沒有結(jié)構(gòu),是連續(xù)的字節(jié)流。記錄結(jié)構(gòu):文件被劃分為一些記錄,只能用于文本文件。頁面結(jié)構(gòu):文件被劃分為一些頁面,每一個(gè)頁面有頁號(hào)和頁首部,頁面可以被隨機(jī)或順序存取。第62頁,共142頁,2023年,2月20日,星期一傳輸模式流模式:默認(rèn)模式。數(shù)據(jù)作為連續(xù)的字節(jié)流從FTP交付給TCP,TCP將數(shù)據(jù)劃分成適當(dāng)大小的報(bào)文段。塊模式:數(shù)據(jù)可以按塊從FTP交付給TCP。每一個(gè)塊有3個(gè)字節(jié)的首部,包括一個(gè)字節(jié)的塊描述符、和兩個(gè)字節(jié)定義的塊長度。壓縮模式:當(dāng)文件很大時(shí),可對(duì)數(shù)據(jù)進(jìn)行壓縮,通常使用的壓縮方法是游程長編碼。第63頁,共142頁,2023年,2月20日,星期一FTP命令FTP命令包括六類命令:接入命令:使用戶能夠接入遠(yuǎn)程系統(tǒng),如要求用戶標(biāo)識(shí)、口令、注銷等。文件管理命令:使用戶接入到遠(yuǎn)程計(jì)算機(jī)的文件系統(tǒng),包括對(duì)目錄及文件的操作。數(shù)據(jù)格式化命令:讓用戶定義數(shù)據(jù)結(jié)構(gòu)、文件類型及傳輸模式。端口定義命令:定義客戶端數(shù)據(jù)連接使用的端口號(hào)。文件傳送命令:讓用戶傳送文件。雜項(xiàng)命令:用于將信息交付給客戶端的FTP用戶。第64頁,共142頁,2023年,2月20日,星期一FTP響應(yīng)每一個(gè)FTP命令產(chǎn)生至少一個(gè)響應(yīng)。響應(yīng)包括兩部分:一個(gè)3比特的數(shù)字:定義代碼正文:定義所需的參數(shù)或額外的解釋第65頁,共142頁,2023年,2月20日,星期一FTP交互第66頁,共142頁,2023年,2月20日,星期一用戶接口大多數(shù)操作系統(tǒng)提供用戶友好接口來接入FTP服務(wù)。接口提示用戶作適當(dāng)?shù)妮斎?,將其轉(zhuǎn)換為相應(yīng)的FTP命令。第67頁,共142頁,2023年,2月20日,星期一第21章簡單文件傳送協(xié)議TFTPTFTP協(xié)議為僅需要復(fù)制一個(gè)文件的應(yīng)用而設(shè)計(jì),如無盤工作站在被引導(dǎo)時(shí)下載引導(dǎo)和配置文件。TFTP使用UDP協(xié)議,以使軟件包可被放入無盤工作站的ROM中。UDP不提供連接建立/終止、差錯(cuò)控制和流量控制的功能,這些功能需要TFTP來提供。第68頁,共142頁,2023年,2月20日,星期一TFTP的傳輸控制機(jī)制TFTP將文件劃分成若干數(shù)據(jù)塊并編號(hào),除最后一塊外,每塊為512字節(jié),最后一塊必須在0~511字節(jié)之間。TFTP用發(fā)送小于512字節(jié)的塊表示發(fā)送結(jié)束。TFTP采用停-等協(xié)議傳送數(shù)據(jù),發(fā)送端每次發(fā)送一個(gè)塊,收到接收方的確認(rèn)后再發(fā)送下一個(gè)塊。TFTP依靠UDP檢測數(shù)據(jù)錯(cuò)誤并丟棄出錯(cuò)的包,發(fā)送端使用超時(shí)重傳機(jī)制解決分組丟失問題。第69頁,共142頁,2023年,2月20日,星期一TFTP報(bào)文讀請(qǐng)求RRQ:客戶向服務(wù)器請(qǐng)求讀一個(gè)文件,報(bào)文中包含文件名和文件模式(netascii或octet)。寫請(qǐng)求WRQ:客戶請(qǐng)求向服務(wù)器寫一個(gè)文件,報(bào)文中包含文件名和文件模式。第70頁,共142頁,2023年,2月20日,星期一TFTP報(bào)文(續(xù))數(shù)據(jù)DATA:客戶或服務(wù)器用來傳送數(shù)據(jù)塊,報(bào)文中包含塊號(hào)和數(shù)據(jù)塊。確認(rèn)ACK:客戶或服務(wù)器用來確認(rèn)收到數(shù)據(jù)塊,報(bào)文中包含收到的數(shù)據(jù)塊的塊號(hào)。第71頁,共142頁,2023年,2月20日,星期一TFTP報(bào)文(續(xù))差錯(cuò)報(bào)告ERROR:由客戶或服務(wù)器用來報(bào)告出現(xiàn)差錯(cuò),報(bào)文中包含差錯(cuò)類型及差錯(cuò)信息。第72頁,共142頁,2023年,2月20日,星期一建立連接TFTP使用RRQ、WRQ、ACK和ERROR報(bào)文來建立連接,并使用小于512字節(jié)的數(shù)據(jù)塊來終止連接。第73頁,共142頁,2023年,2月20日,星期一UDP端口TFTP使用UDP熟知端口69。為使TFTP服務(wù)器能夠服務(wù)于多個(gè)客戶,TFTP只使用端口69建立讀文件或?qū)懳募某跏歼B接,此后使用短暫端口進(jìn)行數(shù)據(jù)傳輸。服務(wù)器在端口69上等待客戶請(qǐng)求。客戶在選擇的臨時(shí)端口上向服務(wù)器端口69發(fā)送RRQ或WRQ報(bào)文。服務(wù)器選擇一個(gè)臨時(shí)端口作為源端口,向客戶端口發(fā)送ACK或ERROR報(bào)文,自己仍回到端口69上等待。服務(wù)器中的UDP模塊根據(jù)目的端口號(hào)區(qū)分不同的客戶??蛻羰褂米约旱呐R時(shí)端口與服務(wù)器的臨時(shí)端口進(jìn)行通信。第74頁,共142頁,2023年,2月20日,星期一第75頁,共142頁,2023年,2月20日,星期一TFTP交互舉例第76頁,共142頁,2023年,2月20日,星期一TFTP與BOOTP一起使用第77頁,共142頁,2023年,2月20日,星期一TFTP的安全性TFTP不提供安全性,沒有用戶標(biāo)識(shí)或口令。為防止黑客利用TFTP進(jìn)行非法文件存取,管理員一般限定TFTP只能訪問某個(gè)存放引導(dǎo)和配置文件的文件夾。第78頁,共142頁,2023年,2月20日,星期一練習(xí)18,20,21,23第79頁,共142頁,2023年,2月20日,星期一第22章電子郵件系統(tǒng)電子郵件系統(tǒng)支持:把郵件發(fā)送給一個(gè)或多個(gè)收信人發(fā)送包括文本、圖形、聲音、視頻等媒體形式的報(bào)文兩個(gè)概念:電子郵箱:由計(jì)算機(jī)上的一個(gè)存儲(chǔ)區(qū)域(如磁盤上的一個(gè)文件)組成,每個(gè)郵箱均被分配了唯一的電子郵件地址。電子郵件地址:由兩個(gè)部分組成,形如:mailbox@computer,前者為用戶郵箱的字符串,后者為郵箱所在的計(jì)算機(jī)的名字。第80頁,共142頁,2023年,2月20日,星期一22.1因特網(wǎng)電子郵件系統(tǒng)的組成用戶代理UA:一個(gè)本地程序(或稱郵件閱讀器),為用戶提供讀郵件、編輯郵件、發(fā)送郵件及管理信箱等功能。消息傳輸代理MTA:運(yùn)行在郵件服務(wù)器后臺(tái)的一個(gè)系統(tǒng)守護(hù)程序(daemon),負(fù)責(zé)傳遞郵件及將收到的郵件放入用戶郵箱。簡單郵件傳輸協(xié)議SMTP(由RFC821定義):定義在兩個(gè)計(jì)算機(jī)之間傳遞郵件的過程。郵件訪問協(xié)議:訪問郵箱中的郵件。第81頁,共142頁,2023年,2月20日,星期一電子郵件系統(tǒng)的結(jié)構(gòu)(1)情形一:發(fā)信人和收信人在同一個(gè)系統(tǒng)上只需要兩個(gè)用戶代理(UA)第82頁,共142頁,2023年,2月20日,星期一電子郵件系統(tǒng)的結(jié)構(gòu)(2)情形二:發(fā)信人和收信人在不同的系統(tǒng)上需要兩個(gè)用戶代理(UA)和一對(duì)消息傳輸代理(MTA)第83頁,共142頁,2023年,2月20日,星期一電子郵件系統(tǒng)的結(jié)構(gòu)(3)情形三:發(fā)信人通過一個(gè)網(wǎng)絡(luò)連接到郵件服務(wù)器上,而收信人仍然直接連接到郵件服務(wù)器需要兩個(gè)UA和兩對(duì)MTA第84頁,共142頁,2023年,2月20日,星期一電子郵件系統(tǒng)的結(jié)構(gòu)(4)情形四:發(fā)信人和收信人均通過網(wǎng)絡(luò)連接到郵件服務(wù)器需要兩個(gè)UA、兩對(duì)MTA和一對(duì)MAA(郵件訪問代理)這是目前最常見的情形。第85頁,共142頁,2023年,2月20日,星期一推和拉SMTP是一種消息推送(push)協(xié)議訪問郵件需要一種“拉”(pull)協(xié)議第86頁,共142頁,2023年,2月20日,星期一延遲交付發(fā)送端可以延遲發(fā)送報(bào)文。UA創(chuàng)建報(bào)文后,先將報(bào)文交付到發(fā)送端的臨時(shí)存儲(chǔ)系統(tǒng)。MTA客戶定期檢查臨時(shí)存儲(chǔ)系統(tǒng)是否有郵件要發(fā)送,當(dāng)能夠與郵件服務(wù)器建立連接時(shí)發(fā)送郵件,否則郵件繼續(xù)留在臨時(shí)存儲(chǔ)系統(tǒng)中,直到超時(shí)。接收端收到郵件后,先放到收信人的信箱中,收信人在適當(dāng)?shù)臅r(shí)候從信箱中取信件。中間MTA也可以在它的郵箱和臨時(shí)存儲(chǔ)系統(tǒng)中保存郵件,并在適當(dāng)?shù)臅r(shí)候發(fā)送。第87頁,共142頁,2023年,2月20日,星期一22.2用戶代理用戶代理提供編輯、閱讀、回復(fù)、轉(zhuǎn)發(fā)郵件的功能,以及管理郵箱的功能。郵件格式(由RFC822定義):信封:包含與信件傳輸有關(guān)的信息,僅供消息傳輸代理使用。信頭:包括發(fā)信人地址及信體格式說明,供用戶代理使用。信體:收信人真正感興趣的部分。第88頁,共142頁,2023年,2月20日,星期一電子郵件的格式第89頁,共142頁,2023年,2月20日,星期一多用途因特網(wǎng)郵件擴(kuò)展MIMESMTP只支持純文本(NVTASCII)格式的報(bào)文傳輸,不支持其它語言及二進(jìn)制文件傳輸。MIME是對(duì)RFC822的擴(kuò)展,它允許信體具有一定的數(shù)據(jù)結(jié)構(gòu),并規(guī)定了非ASCII文本信息在傳輸時(shí)的統(tǒng)一編碼形式。MIME在信頭中增加了5個(gè)域(現(xiàn)在可能有擴(kuò)展)。第90頁,共142頁,2023年,2月20日,星期一MIME頭MIME版本內(nèi)容類型:定義信體使用的數(shù)據(jù)類型,共定義了七大類及若干子類(有擴(kuò)展)。內(nèi)容傳輸編碼:定義信體使用的傳輸編碼格式,共定義了基本ASCII編碼集、擴(kuò)展ASCII編碼集、二進(jìn)制編碼、基64編碼、引用可打印編碼五種傳輸編碼形式。內(nèi)容標(biāo)識(shí):消息ID。內(nèi)容描述:對(duì)于非文本信體的文字描述。第91頁,共142頁,2023年,2月20日,星期一MIME中的內(nèi)容類型與子類型Multipart:信體包含多個(gè)獨(dú)立的部分,多部分首部中應(yīng)定義每一個(gè)部分的邊界。Multipart/mixed:信體是不同數(shù)據(jù)類型的組合,如包含文本、聲音、附件等內(nèi)容,必須按順序呈現(xiàn)。Multipart/parallel:信體是不同數(shù)據(jù)類型的組合,各部分之間的順序不重要。Multipart/digest:類似于mixed,但缺省的type/subtype是message/RFC822。Multipart/alternative:信體包含同一個(gè)消息的不同版本,如有text和html兩種格式的文本。第92頁,共142頁,2023年,2月20日,星期一MIME中的內(nèi)容類型與子類型第93頁,共142頁,2023年,2月20日,星期一傳輸編碼類型Shortlines:行的長度不能超過1000字符。Unlimited-lengthlines:不限制行的長度不推薦使用擴(kuò)展ASCII字符集和二進(jìn)制編碼進(jìn)行傳輸。MIME定義了Base64和Quoted-printable兩種編碼形式。第94頁,共142頁,2023年,2月20日,星期一Base64編碼每24比特?cái)?shù)據(jù)被分成4個(gè)6比特的單元,每個(gè)單元編碼成一個(gè)合法的ASCII字符,其對(duì)應(yīng)關(guān)系為:0~25編碼成‘A’~‘Z’,26~51編碼成‘a(chǎn)’~‘z’,52~61編碼成‘0’~‘9’,62和63分別編碼成‘+’和‘/’,‘==’和‘=’分別表示最后一組只有8比特和16比特,回車和換行忽略。第95頁,共142頁,2023年,2月20日,星期一引用可打印編碼若數(shù)據(jù)的絕大部分為ASCII字符,只有一小部分是非ASCII碼字符,則只對(duì)非ASCII字符進(jìn)行轉(zhuǎn)換。將該字符的十六進(jìn)制表示用兩個(gè)ASCII字符標(biāo)記,前面冠以特殊字符“=”。(更正:圖中“5”應(yīng)為“=”)第96頁,共142頁,2023年,2月20日,星期一22.3SMTP郵件的真正傳送由MTA完成,SMTP定義了MTA客戶和MTA服務(wù)器之間的交互方式。SMTP使用命令和響應(yīng)在MTA客戶和MTA服務(wù)器之間傳送報(bào)文。SMTP定義了14種命令,有5個(gè)是每一種實(shí)現(xiàn)都必須支持的,有3種是高度推薦的,還有6種很少使用。第97頁,共142頁,2023年,2月20日,星期一SMTP命令Helo:客戶用來標(biāo)識(shí)自己Mailfrom:客戶用來標(biāo)識(shí)發(fā)信人Rcptto:客戶用來標(biāo)識(shí)收信人Data:用來發(fā)送真正的報(bào)文Quit:結(jié)束報(bào)文。第98頁,共142頁,2023年,2月20日,星期一郵件傳送階段建立連接MTA客戶與MTA服務(wù)器在熟知端口25建立TCP連接。服務(wù)器發(fā)送服務(wù)就緒報(bào)文客戶發(fā)送HELO報(bào)文,用域名標(biāo)識(shí)自己服務(wù)器響應(yīng)第99頁,共142頁,2023年,2月20日,星期一報(bào)文傳送客戶發(fā)送MIALFROM報(bào)文,通報(bào)信件的發(fā)送方,服務(wù)器響應(yīng)??蛻舭l(fā)送RCPT報(bào)文,通報(bào)收信人的郵件地址。若接收人信箱在服務(wù)器上,服務(wù)器通知客戶繼續(xù)??蛻舭l(fā)送DATA報(bào)文,服務(wù)器響應(yīng)??蛻粲眠B續(xù)的行發(fā)送報(bào)文內(nèi)容。服務(wù)器將信件放入相應(yīng)的信箱后進(jìn)行響應(yīng)。重復(fù)以上過程,將信件全部發(fā)完。第100頁,共142頁,2023年,2月20日,星期一第101頁,共142頁,2023年,2月20日,星期一連接終止客戶發(fā)送QUIT報(bào)文服務(wù)器響應(yīng)。釋放TCP連接。第102頁,共142頁,2023年,2月20日,星期一22.4郵件交付第一階段:電子郵件從用戶代理傳送到本地服務(wù)器,用戶使用SMTP客戶軟件,本地服務(wù)器使用SMTP服務(wù)器軟件。第二階段:本地服務(wù)器將電子郵件轉(zhuǎn)發(fā)給收信人的郵件服務(wù)器,本地服務(wù)器使用SMTP客戶軟件,遠(yuǎn)程服務(wù)器使用SMTP服務(wù)器軟件。遠(yuǎn)程服務(wù)器將收到的郵件放入收信人的郵箱。第三階段:遠(yuǎn)程用戶代理使用郵件訪問協(xié)議,訪問郵箱并獲取郵件。第103頁,共142頁,2023年,2月20日,星期一郵件交付示意第104頁,共142頁,2023年,2月20日,星期一22.5郵局協(xié)議POP3郵局協(xié)議POP3:POP3客戶軟件安裝在收信人的計(jì)算機(jī)上,POP3服務(wù)器軟件安裝在收信人的郵件服務(wù)器上。用戶激活一個(gè)POP3客戶,該客戶與郵件服務(wù)器的端口110建立一個(gè)TCP連接。用戶發(fā)送用戶名和口令進(jìn)行身份鑒別。若身份鑒別成功,用戶發(fā)送POP3命令,將郵件接收到本地??蛻舭l(fā)出退出命令,服務(wù)器進(jìn)行響應(yīng)。釋放TCP連接。POP3的模式:刪除模式:每次讀取郵件后就把郵箱中的這個(gè)郵件刪除。保存模式:郵件讀取后仍然保留在郵箱中。第105頁,共142頁,2023年,2月20日,星期一使用POP3讀取郵件第106頁,共142頁,2023年,2月20日,星期一22.6Internet郵件訪問協(xié)議IMAPIMAP允許用戶動(dòng)態(tài)地在服務(wù)器上創(chuàng)建、刪除和管理多個(gè)信箱,可以在文件夾中創(chuàng)建分層次的信箱。IMAP允許用戶在服務(wù)器上整理郵件,將閱讀過的信件放到相應(yīng)的信箱中保存。允許用戶在下載郵件之前可以檢查郵件的頭部,用特定的字符串搜索郵件內(nèi)容,部分地下載電子郵件。IMAP除了為用戶接收郵件外,還可以為用戶發(fā)送郵件。IMAP服務(wù)器在端口143上監(jiān)聽。第107頁,共142頁,2023年,2月20日,星期一Webmail一些網(wǎng)站(如Hotmail、Yahoo等)向訪問網(wǎng)站的用戶提供電子郵件服務(wù)。用戶代理為普通瀏覽器,瀏覽器和遠(yuǎn)程郵箱之間的通信使用HTTP協(xié)議,但郵件服務(wù)器之間仍是SMTP協(xié)議。和IMAP一樣,用戶可以在遠(yuǎn)程服務(wù)器上用文件夾來組織他們的信件。第108頁,共142頁,2023年,2月20日,星期一練習(xí)36,37,38,45,47,48第109頁,共142頁,2023年,2月20日,星期一第23章簡單網(wǎng)絡(luò)管理協(xié)議SNMP不作要求第110頁,共142頁,2023年,2月20日,星期一第25章萬維網(wǎng)從用戶的角度來看,Web是由數(shù)量巨大且遍布全球的文檔組成,這些文檔稱為Web頁。每個(gè)頁除了含有基本的信息之外,還包含格式命令和指向其它頁的鏈接:格式命令:用于指示如何顯示文檔中的數(shù)據(jù)鏈接:用于指示如何獲取另一個(gè)文件包含鏈接信息的文本串或圖形稱為超級(jí)鏈接,當(dāng)用戶點(diǎn)擊一個(gè)超級(jí)鏈接時(shí),該超級(jí)鏈接指向的頁會(huì)被取回,并顯示在用戶屏幕上。包含超級(jí)鏈接的頁稱為超文本頁或超媒體頁,它們的區(qū)別在于文檔內(nèi)容。第111頁,共142頁,2023年,2月20日,星期一瀏覽器頁需要用稱為瀏覽器的程序閱讀,瀏覽器負(fù)責(zé)取回指定的頁,并按照指定的格式顯示在屏幕上。瀏覽器由三個(gè)部分組成:控制程序:接收來自鍵盤或鼠標(biāo)的輸入,調(diào)用某個(gè)客戶程序訪問文檔;獲取文件檔后,使用某個(gè)解釋程序?qū)⑽臋n顯示在屏幕上。客戶程序:可以是HTTP、FTP、Telnet等的一種。解釋程序:取決于文檔的類型。第112頁,共142頁,2023年,2月20日,星期一25.1網(wǎng)頁獲取Web采用客戶-服務(wù)器模式工作,客戶為瀏覽器軟件,服務(wù)器是運(yùn)行在Web服務(wù)器上的一個(gè)軟件程序。服務(wù)器平時(shí)總在端口80上監(jiān)聽客戶的連接請(qǐng)求,當(dāng)用戶點(diǎn)擊了一個(gè)超級(jí)鏈接后:瀏覽器找到該鏈接所指的網(wǎng)頁的名字與網(wǎng)頁所在的服務(wù)器建立一個(gè)TCP連接向服務(wù)器發(fā)送取網(wǎng)頁的請(qǐng)求服務(wù)器將請(qǐng)求的網(wǎng)頁發(fā)送給瀏覽器釋放TCP連接兩個(gè)問題需要解決:如何命名一個(gè)網(wǎng)頁定義客戶和服務(wù)器之間的傳輸協(xié)議第113頁,共142頁,2023年,2月20日,星期一統(tǒng)一資源定位符URL為在全網(wǎng)范圍內(nèi)確定一個(gè)頁,頁名必須包括:頁的存放地址,頁在宿主機(jī)中的全路徑名,頁的訪問方法。符合這三個(gè)條件的名字稱為URL。UniformResourceLocator(URL)的一般格式為method://host/pathmethod:方法名,指出訪問網(wǎng)頁的協(xié)議名稱,常見的方法有http、ftp、telnet、Gopher和news。Host:網(wǎng)頁所在宿主機(jī)的域名Path:網(wǎng)頁在宿主機(jī)上的全路徑名可選地,URL可以包含服務(wù)器的端口號(hào),如:
method://host:port/path第114頁,共142頁,2023年,2月20日,星期一Web的客戶方(1)當(dāng)用戶點(diǎn)擊了超級(jí)鏈接/home/index.html后,瀏覽器按以下步驟工作:瀏覽器確定URL(從頁及點(diǎn)擊位置獲?。┱?qǐng)求DNS解析域名,DNS返回IP地址2瀏覽器與2的端口80建立一個(gè)TCP連接瀏覽器發(fā)送一個(gè)請(qǐng)求,要求取文件/home/index.html服務(wù)器發(fā)送文件/home/index.html,釋放TCP連接瀏覽器顯示文件/home/index.html的所有文本內(nèi)容瀏覽器取回該文件中的所有圖像并顯示(一次取一個(gè)圖像顯示)第115頁,共142頁,2023年,2月20日,星期一Web的客戶方(2)為使瀏覽器能夠正確解釋和顯示每一個(gè)Web頁,Web頁應(yīng)當(dāng)使用稱為HTML(超文本標(biāo)記語言)的標(biāo)準(zhǔn)語言書寫。如果一個(gè)頁不是HTML格式的,怎么顯示?當(dāng)服務(wù)器返回一個(gè)頁的時(shí)候,同時(shí)要返回關(guān)于這個(gè)頁的一些額外信息,特別是頁的MIME類型。當(dāng)頁的MIME類型是text/html(瀏覽器的內(nèi)置類型)時(shí),瀏覽器直接顯示。當(dāng)頁的MIME類型不是瀏覽器本身所支持的,瀏覽器查找MIME類型表,該表將每個(gè)MIME類型關(guān)聯(lián)到一個(gè)閱讀器上,瀏覽器調(diào)用相應(yīng)的閱讀器進(jìn)行顯示。閱讀器可以是和瀏覽器運(yùn)行在同一個(gè)程序空間的插件程序,也可以是一個(gè)獨(dú)立的助手程序。對(duì)于本地文件,瀏覽器通過文件的擴(kuò)展名得知文件類型。第116頁,共142頁,2023年,2月20日,星期一Web的服務(wù)器方Web服務(wù)器的典型工作過程:服務(wù)器在端口80監(jiān)聽,與請(qǐng)求的客戶建立TCP連接,接收服務(wù)請(qǐng)求。確定請(qǐng)求的Web頁(名字?jǐn)U展)。(若需要)認(rèn)證客戶;對(duì)客戶進(jìn)行訪問控制;對(duì)請(qǐng)求的頁進(jìn)行訪問控制。檢查請(qǐng)求的頁是否在高速緩存中,有則直接讀取,否則從本地磁盤讀取文件。確定要包含在響應(yīng)中的MIME類型。其它處理。將文件返回給客戶,進(jìn)行日志記錄,釋放連接。第117頁,共142頁,2023年,2月20日,星期一25.2Web文檔Web文檔類型:靜態(tài)文檔:靜態(tài)文檔以文件方式保存在Web服務(wù)器上,由文檔的作者決定文檔的內(nèi)容,對(duì)靜態(tài)文檔的每次請(qǐng)求均產(chǎn)生相同的響應(yīng)。動(dòng)態(tài)文檔:動(dòng)態(tài)文檔由Web服務(wù)器動(dòng)態(tài)創(chuàng)建。當(dāng)請(qǐng)求到達(dá)時(shí),Web服務(wù)器運(yùn)行一個(gè)應(yīng)用程序創(chuàng)建動(dòng)態(tài)文檔,并返回給瀏覽器,因此每次請(qǐng)求產(chǎn)生的動(dòng)態(tài)文檔是不同的。主動(dòng)(active)文檔:主動(dòng)文檔由一個(gè)計(jì)算機(jī)程序組成,當(dāng)游覽器請(qǐng)求一個(gè)主動(dòng)文檔時(shí),服務(wù)器返回一個(gè)必須在瀏覽器本地運(yùn)行的程序的拷貝,程序運(yùn)行時(shí)可以與用戶進(jìn)行交互,并不斷訪問服務(wù)器取回新的信息,因此主動(dòng)文檔的內(nèi)容是不斷更新的。第118頁,共142頁,2023年,2月20日,星期一靜態(tài)文檔和超文本標(biāo)記語言HTMLHTML是一種標(biāo)記語言,用于描述文檔的顯示格式。使用ASCII字符表示的格式命令可被任何瀏覽器識(shí)別和理解。HTML中的格式命令稱為標(biāo)簽。標(biāo)簽一般成對(duì)出現(xiàn),包含在一對(duì)標(biāo)簽中的文檔內(nèi)容,顯示格式由該標(biāo)簽指定。有些標(biāo)簽可以有屬性,如:<IMG>標(biāo)簽在Web頁中嵌入圖像:
<IMGSRC=“/images/logo.gif”ALIGN=middle><A>標(biāo)簽在Web頁中加入超級(jí)鏈接:<AHREF="">NASA'shomepage</A>也可以為圖像設(shè)置超級(jí)鏈接:<AHREF=""><IMGSRC="shuttle.gif"ALT="NASA"></A>第119頁,共142頁,2023年,2月20日,星期一標(biāo)簽的使用示例第120頁,共142頁,2023年,2月20日,星期一表單HTML使用表單收集用戶的輸入信息,表單中包含需要用戶提供信息的條目,每個(gè)條目都有一個(gè)唯一的名字。當(dāng)用戶點(diǎn)擊提交按鈕時(shí),瀏覽器將所有條目及條目的值匯總,發(fā)送給服務(wù)器。第121頁,共142頁,2023年,2月20日,星期一表單的處理第122頁,共142頁,2023年,2月20日,星期一動(dòng)態(tài)文檔和公共網(wǎng)關(guān)接口CGI處理動(dòng)態(tài)文檔的傳統(tǒng)方法是公共網(wǎng)關(guān)接口CGI:CGI是一個(gè)標(biāo)準(zhǔn)接口,它允許Web服務(wù)器與一個(gè)能夠處理動(dòng)態(tài)文檔的后臺(tái)程序或腳本進(jìn)行交互。CGI只規(guī)定了服務(wù)器與后臺(tái)程序交互的通用規(guī)則,而允許程序員選擇大多數(shù)的實(shí)現(xiàn)細(xì)節(jié),如編程語言的選擇。每個(gè)CGI程序被賦予一個(gè)URL,位于cgi-bin目錄下,表單的ACTION參數(shù)指出了處理表單數(shù)據(jù)的CGI程序的URL。當(dāng)表單數(shù)據(jù)被提交后,Web服務(wù)器調(diào)用相應(yīng)的CGI程序,表單中的數(shù)據(jù)作為輸入。CGI程序通過輸出的頭部與服務(wù)器進(jìn)行通信,指出輸出數(shù)據(jù)的長度、類型、有效時(shí)間等,也可以指出文檔放在另一個(gè)URL(重定向)。服務(wù)器取得CGI生成的文檔,返回給瀏覽器。第123頁,共142頁,2023年,2月20日,星期一主動(dòng)文檔和Java大多數(shù)情況下,Java用來創(chuàng)建小應(yīng)用程序applet。Javaapplet必須先被編譯成字節(jié)碼并存儲(chǔ)在Web服務(wù)器上。游覽器需要運(yùn)行HTML解釋器和Java解釋器。當(dāng)用戶向?yàn)g覽器提供一個(gè)Applet的URL,或?yàn)g覽器在HTML文檔中遇到一個(gè)指向Applet的標(biāo)記<applet>時(shí),瀏覽器與服務(wù)器聯(lián)系獲得該Applet的一個(gè)拷貝,下載到本地執(zhí)行。Applet使用瀏覽器的HTTP客戶檢索文檔,使用瀏覽器的HTML解釋器顯示網(wǎng)頁信息。第124頁,共142頁,2023年,2月20日,星期一第24章超文本傳輸協(xié)議HTTPHTTP是瀏覽器與Web服務(wù)器之間通信使用的協(xié)議,規(guī)定了客戶與服務(wù)器通信所使用的命令及響應(yīng)。HTTP通常運(yùn)行在TCP連接之上,使用端口80。第1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年消防設(shè)施操作員之消防設(shè)備高級(jí)技能考前沖刺試卷B卷含答案
- 腦出血疼痛的護(hù)理課件
- 2025年步進(jìn)電動(dòng)機(jī)及控制系統(tǒng)合作協(xié)議書
- 品牌項(xiàng)目策劃合同范本
- 腦出血病人的護(hù)理課件
- 會(huì)員充值協(xié)議合同范本
- 別墅改造施工合同范本
- 吊車租賃出租合同范例
- 高效課堂 課題申報(bào)書
- 內(nèi)衣招商合同范本
- 《新能源汽車概論》課件-3 純電動(dòng)汽車構(gòu)造
- 售后電池服務(wù)方案
- 遼寧省沈陽市名校2024年中考物理模擬試題含解析
- 2024年反詐騙知識(shí)競賽題庫與答案
- 初中英語不規(guī)則動(dòng)詞表(譯林版-中英)
- 車輛維修、保養(yǎng)審批單
- 【A酒店員工敬業(yè)度提升對(duì)策探究10000字(論文)】
- 科普版六年級(jí)下冊(cè)英語全冊(cè)教學(xué)課件
- 版NCCN直腸癌指南解讀
- 電力系統(tǒng)的微電網(wǎng)區(qū)域規(guī)劃管理
- 智能割草機(jī)器人的概述外文翻譯
評(píng)論
0/150
提交評(píng)論