計算機(jī)網(wǎng)絡(luò)PPT課件-第六章 應(yīng)用層.ppt_第1頁
計算機(jī)網(wǎng)絡(luò)PPT課件-第六章 應(yīng)用層.ppt_第2頁
計算機(jī)網(wǎng)絡(luò)PPT課件-第六章 應(yīng)用層.ppt_第3頁
計算機(jī)網(wǎng)絡(luò)PPT課件-第六章 應(yīng)用層.ppt_第4頁
計算機(jī)網(wǎng)絡(luò)PPT課件-第六章 應(yīng)用層.ppt_第5頁
已閱讀5頁,還剩42頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第六章 應(yīng)用層,劉 軼 北京航空航天大學(xué) 計算機(jī)學(xué)院,本章內(nèi)容 6.1 套接字編程接口 6.2 域名系統(tǒng) dns 6.3 文件傳送協(xié)議 6.4 萬維網(wǎng)www 6.5 電子郵件,應(yīng)用層協(xié)議特點(diǎn),應(yīng)用層協(xié)議是為了解決某一類應(yīng)用問題 由于網(wǎng)絡(luò)應(yīng)用的多樣性,應(yīng)用層的協(xié)議也種類繁多 應(yīng)用層的許多協(xié)議都是基于客戶/服務(wù)器方式 客戶(client)和服務(wù)器(server)都是指通信中所涉及的兩個應(yīng)用進(jìn)程 客戶/服務(wù)器方式所描述的是進(jìn)程之間服務(wù)和被服務(wù)的關(guān)系 客戶是服務(wù)請求方,服務(wù)器是服務(wù)提供方,6.1 套接字編程接口,6.1 套接字編程接口,網(wǎng)絡(luò)子系統(tǒng)作為操作系統(tǒng)的一部分,以應(yīng)用編程接口(apiapplication programming interface)的形式向應(yīng)用程序提供調(diào)用接口 套接字(socket)是最常用的應(yīng)用層編程接口 名稱起源于berkeley unix操作系統(tǒng) 經(jīng)典的socket編程接口采用同步調(diào)用方式(又稱阻塞式) 例:調(diào)用recv()時,調(diào)用進(jìn)程將被阻塞,直到收到數(shù)據(jù)為止 windows這種基于事件驅(qū)動的系統(tǒng)中,程序的執(zhí)行由事件驅(qū)動,需要異步事件驅(qū)動方式的套接字編程接口 microsoft推出winsock編程接口,在阻塞式調(diào)用基礎(chǔ)上,增加了異步調(diào)用方式 在阻塞式調(diào)用模式下,winsock與經(jīng)典的socket兼容,6.1 套接字編程接口,應(yīng)用進(jìn)程通過套接字接入到網(wǎng)絡(luò),應(yīng)用進(jìn)程,tcp udp,由應(yīng)用程序 控制,因特網(wǎng),由操作系統(tǒng) 控制,客戶,服務(wù)器,套接字,tcp udp,應(yīng)用進(jìn)程,套接字,6.1 套接字編程接口,調(diào)用socket()創(chuàng)建套接字,套接字描述符表 (每一個進(jìn)程一個描述符),0: 1: 2: 3: 4:,操作系統(tǒng),套接字的數(shù)據(jù)結(jié)構(gòu),協(xié)議族:pf_inet,服務(wù):sock_stream,本地 ip 地址:,遠(yuǎn)地 ip 地址:,本地端口:,遠(yuǎn)地端口:,常用socket接口函數(shù),6.1 套接字編程接口,基于udp的系統(tǒng)調(diào)用流程,服務(wù)器端,socket,bind,recvfrom,sendto,close,客戶端,socket,recvfrom,sendto,close,bind,socket socket( int af, int type, int protocol );,6.1 套接字編程接口,基于tcp的系統(tǒng)調(diào)用流程,服務(wù)器端,socket,bind,listen,accept,recv,send,close,客戶端,socket,recv,send,close,connect,連接建立請求,6.2 域名系統(tǒng) dns,6.2 域名系統(tǒng) dns,一、域名系統(tǒng)概述 域名系統(tǒng)dns(domain name system)是internet使用的命名系統(tǒng) rfc 1034:domain names - concepts and facilities rfc 1035:domain names implementation and specification internet采用層次結(jié)構(gòu)的命名樹作為主機(jī)的名字,并使用分布式的域名系統(tǒng)dns 多個域名服務(wù)器上運(yùn)行專門的域名服務(wù)器程序,完成域名ip地址的解析(resolve) dns基于udp協(xié)議實(shí)現(xiàn) 應(yīng)用進(jìn)程需要進(jìn)行域名解析時,就調(diào)用域名解析程序(resolver),它成為dns的一個客戶 向本地域名服務(wù)器發(fā)送域名解析請求(udp報文),其中包含待解析的域名 本地域名服務(wù)器在查找域名后,返回應(yīng)答報文,其中包含對應(yīng)的ip地址,6.2 域名系統(tǒng) dns,二、internet的域名結(jié)構(gòu) internet采用層次樹狀結(jié)構(gòu)的命名方法 . 三級域名 . 二級域名 . 頂級域名 頂級域名tld(top level domain) 國家頂級域名:如: .cn 表示中國,.us 表示美國,.uk 表示英國,等等 通用頂級域名:最早的頂級域名是:,6.2 域名系統(tǒng) dns,新增的通用頂級域名,注意: 域名不區(qū)分大小寫 域名長度不超過255字符,6.2 域名系統(tǒng) dns,根,internet的域名空間,6.2 域名系統(tǒng) dns,三、域名服務(wù)器 域名服務(wù)器分為四類 根域名服務(wù)器 根域名服務(wù)器知道所有的頂級域名服務(wù)器的域名和ip地址 當(dāng)本地域名服務(wù)器無法解析域名時,就求助于根域名服務(wù)器 頂級域名服務(wù)器 負(fù)責(zé)管理在該頂級域名服務(wù)器注冊的所有二級域名 權(quán)限域名服務(wù)器 負(fù)責(zé)一個區(qū)(zone)的域名服務(wù)器 本地域名服務(wù)器 有時也稱為默認(rèn)域名服務(wù)器 域名服務(wù)器定期把數(shù)據(jù)復(fù)制到幾個域名服務(wù)器來保存,其中的一個是主域名服務(wù)器,其他的是輔助域名服務(wù)器,6.2 域名系統(tǒng) dns,三、域名服務(wù)器 樹狀結(jié)構(gòu)的 dns 域名服務(wù)器,根域名服務(wù)器,org 域名服務(wù)器,com 域名服務(wù)器,edu 域名服務(wù)器, 域名服務(wù)器,abc 公司有兩個 權(quán)限域名服務(wù)器,權(quán)限域名服務(wù)器,根域名服務(wù)器,頂級域名服務(wù)器, 域名服務(wù)器,6.2 域名系統(tǒng) dns,三、域名服務(wù)器 主機(jī)向本地域名服務(wù)器的查詢一般采用遞歸查詢 如果本地域名服務(wù)器不知道被查詢域名的ip地址,那么它就以dns客戶的身份,向根域名服務(wù)器繼續(xù)發(fā)出查詢請求報文 本地域名服務(wù)器向根域名服務(wù)器的查詢通常是采用迭代查詢 當(dāng)根域名服務(wù)器收到本地域名服務(wù)器的迭代查詢請求報文時 要么給出所要查詢的 ip 地址 要么告訴本地域名服務(wù)器下一步應(yīng)向哪一個域名服務(wù)器查詢 本地域名服務(wù)器進(jìn)行后續(xù)的查詢,6.2 域名系統(tǒng) dns,本地域名服務(wù)器采用迭代查詢,頂級域名服務(wù)器 ,權(quán)限域名服務(wù),本地域名服務(wù)器 ,根域名服務(wù)器,迭代查詢,遞歸 查詢,需要查找 的 ip 地址,域名服務(wù)端口號:53 為提高域名查詢效率,域名服務(wù)器上通常設(shè)置高速緩存,6.2 域名系統(tǒng) dns,本地域名服務(wù)器采用遞歸查詢(較少采用),頂級域名服務(wù)器 ,權(quán)限域名服務(wù),本地域名服務(wù)器 ,根域名服務(wù)器,遞歸查詢,遞歸 查詢,需要查找 的 ip 地址,6.3 文件傳送協(xié)議,6.3 文件傳送協(xié)議,rfc 959:file transfer protocol (ftp) ftp使用客戶/服務(wù)器方式 一個ftp服務(wù)器進(jìn)程可同時為多個客戶進(jìn)程提供服務(wù) ftp的服務(wù)器進(jìn)程由兩大部分組成 一個主進(jìn)程,負(fù)責(zé)接受新的請求 若干個從屬進(jìn)程,負(fù)責(zé)處理單個請求 主進(jìn)程的工作步驟 打開熟知端口(端口號為21),使客戶進(jìn)程能夠連接上 等待客戶進(jìn)程發(fā)出連接請求 啟動從屬進(jìn)程處理客戶進(jìn)程發(fā)來的請求 從屬進(jìn)程對客戶進(jìn)程的請求處理完畢后即終止 從屬進(jìn)程在運(yùn)行期間根據(jù)需要還可能創(chuàng)建其他一些子進(jìn)程 回到等待狀態(tài),繼續(xù)接受其他客戶進(jìn)程發(fā)來的請求 主進(jìn)程與從屬進(jìn)程的處理是并發(fā)地進(jìn)行,ftp使用2個tcp連接:控制連接和數(shù)據(jù)連接 控制連接 在整個會話期間一直保持打開 ftp客戶發(fā)出的傳送請求通過控制連接發(fā)送給服務(wù)器端的控制進(jìn)程,但控制連接不用來傳送文件 數(shù)據(jù)連接 收到ftp客戶發(fā)送來的文件傳輸請求后,服務(wù)器端的控制進(jìn)程創(chuàng)建“數(shù)據(jù)傳送進(jìn)程”和“數(shù)據(jù)連接” 數(shù)據(jù)傳送進(jìn)程實(shí)際完成文件的傳送,傳送完畢后關(guān)閉“數(shù)據(jù)傳送連接”并結(jié)束運(yùn)行,6.4 萬維網(wǎng)www,6.4 萬維網(wǎng)www,一、萬維網(wǎng)概述 www-world wide web 1989年,歐洲核子研究中心提出www 1993年,第一個瀏覽器mosaic 1995年,netscape navagitor上市 萬維網(wǎng)是分布式超媒體(hypermedia)系統(tǒng),它是超文本(hypertext)系統(tǒng)的擴(kuò)充 要解決的幾個問題 怎樣標(biāo)識分布在整個因特網(wǎng)上的萬維網(wǎng)文檔? -url 用什么協(xié)議實(shí)現(xiàn)萬維網(wǎng)上各種超鏈的鏈接?-http 如何存儲和表示萬維網(wǎng)文檔?-html,6.4 萬維網(wǎng)www,一、萬維網(wǎng)概述,萬維網(wǎng) 站點(diǎn) a,萬維網(wǎng) 站點(diǎn) c,萬維網(wǎng)站點(diǎn) e,萬維網(wǎng)站點(diǎn) d,萬維網(wǎng)站點(diǎn) b,搜索引擎即根據(jù)網(wǎng)頁中的鏈接在網(wǎng)絡(luò)中獲取信息,6.4 萬維網(wǎng)www,二、統(tǒng)一資源定位符url(uniform resource locator) url是對internet上資源位置和訪問方法的一種簡潔表示 url的一般形式:,:/:/,為存放資源的主機(jī)在internet中的域名 和有時可省略。使用http協(xié)議時,如省略,則使用熟知端口號80;如省略,則指主頁(home page) url不區(qū)分大小寫,6.4 萬維網(wǎng)www,三、超文本傳送協(xié)議http http-hypertext transfer protocol 基于tcp協(xié)議,是萬維網(wǎng)上可靠地交換文件的重要基礎(chǔ) http是面向事務(wù)的客戶/服務(wù)器協(xié)議 http是無狀態(tài)的(stateless) 服務(wù)器不記錄客戶端的訪問狀態(tài) 基本工作原理 web服務(wù)的熟知端口號是80,服務(wù)器通常在該端口上監(jiān)聽 客戶端需要請求某個頁面時,與服務(wù)器建立tcp鏈接,之后請求傳送文件,并進(jìn)行文件的傳送,傳送完畢后釋放tcp連接,萬維網(wǎng)的工作過程,internet,服務(wù)器 ,客戶,清華大學(xué) 院系設(shè)置,6.4 萬維網(wǎng)www,鼠標(biāo)點(diǎn)擊超鏈接后發(fā)生的事件 (1) 瀏覽器分析超鏈指向頁面的 url (2) 瀏覽器向dns請求解析 的 ip 地址 (3) 域名系統(tǒng)dns解析出清華大學(xué)web服務(wù)器的ip地址 (4) 瀏覽器與服務(wù)器建立tcp連接 (5) 瀏覽器發(fā)出取文件命令: get /chn/yxsz/index.htm (6) 服務(wù)器給出響應(yīng),把文件index.htm發(fā)給瀏覽器 (7) tcp 連接釋放 (8) 瀏覽器顯示“清華大學(xué)院系設(shè)置”文件index.htm中的所有文本,請求一個萬維網(wǎng)文檔所需的時間,萬維網(wǎng)服務(wù)器,萬維網(wǎng)客戶,http請求報文,時間,時間,首先建立tcp連接,需3次握手 在2次握手后, 第3次握手報文的數(shù)據(jù)部分可傳送http請求報文 請求文檔所需時間 文檔傳輸時間 + 2倍rtt時間 http/1.0的主要缺點(diǎn) 每請求一個文檔都需要建立一次tcp連接 一個web頁面常常包含數(shù)量眾多的文件,6.4 萬維網(wǎng)www,三、超文本傳送協(xié)議http http/1.1協(xié)議使用持續(xù)連接(persistent connection) 服務(wù)器發(fā)送響應(yīng)后,在一段時間內(nèi)保持連接,使客戶與服務(wù)器可以繼續(xù)傳送后續(xù)的http請求報文和響應(yīng)報文 這并不局限于傳送同一個頁面上鏈接的文檔,而是只要這些文檔都在同一個服務(wù)器上就行 目前主流的瀏覽器都默認(rèn)支持http/1.1 http的報文類型:兩類報文 請求報文從客戶向服務(wù)器發(fā)送請求報文 響應(yīng)報文從服務(wù)器到客戶的回答 http是面向正文的(text-oriented),報文中的字段都是 ascii 碼串,因而每個字段的長度都是不確定的,6.4 萬維網(wǎng)www,報文由三個部分組成,即開始行、首部行和實(shí)體主體 在請求報文中,開始行就是請求行,方法 是面向?qū)ο蠹夹g(shù)中使用的專門名詞 方法實(shí)際上就是一些命令 url:所請求的資源的url 版本:http的版本,6.4 萬維網(wǎng)www,http 請求報文的一些方法,6.4 萬維網(wǎng)www,http應(yīng)答報文的開始行是狀態(tài)行 狀態(tài)行包括三項(xiàng)內(nèi)容:http的版本、狀態(tài)碼、解釋狀態(tài)碼的簡單短語,狀態(tài)碼都是三位數(shù)字 1xx:表示通知信息的,如請求收到了或正在進(jìn)行處理 2xx:表示成功,如接受或知道了 3xx:表示重定向,表示要完成請求還必須采取進(jìn)一步的行動 4xx:表示客戶的差錯,如請求中有錯誤的語法或不能完成 5xx:表示服務(wù)器的差錯,如服務(wù)器失效無法完成請求,6.4 萬維網(wǎng)www,四、萬維網(wǎng)的文檔 html-hypertext markup language rfc 1866:hypertext markup language - 2.0 html定義了許多用于排版的命令,即標(biāo)簽(tag) 如:表示后面開始用斜體排版,表示斜體結(jié)束 html把各種標(biāo)簽嵌入到萬維網(wǎng)的頁面中,構(gòu)成html文檔 html文檔為文本格式 瀏覽器從服務(wù)器讀取 html文檔后,按照其中嵌入的各種標(biāo)簽,根據(jù)顯示器尺寸和分辨率顯示頁面 僅當(dāng) html 文檔是以.html 或 .htm 為后綴時,瀏覽器才對此文檔的各種標(biāo)簽進(jìn)行解釋, 一個 html 的例子 html 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。 ,html文檔中標(biāo)簽的用法, 一個 html 的例子 html 很容易掌握 這是第一個段落。雖然很 短,但它仍是一個段落。 這是第二個段落。 ,html文檔中標(biāo)簽的用法,6.5 電子郵件,6.5 電子郵件,一、概述 發(fā)送郵件的協(xié)議:smtp rfc 2821(rfc 821):simple mail transfer protocol rfc 2822(rfc 822):internet message format 早期郵件只支持7bit ascii編碼,1993年提出了mime標(biāo)準(zhǔn) rfc 2045 - 2049 在郵件首部中說明了數(shù)據(jù)類型(如文本、聲音、圖像、視像等),可在郵件中多種類型的數(shù)據(jù) 讀取郵件的協(xié)議:pop3和imap pop3-post office protocol imap-internet message access protocol,電子郵件的最主要的組成構(gòu)件,6.5 電子郵件,電子郵件系統(tǒng)的兩種實(shí)體 用戶代理ua(user agent) 是用戶與電子郵件系統(tǒng)的接口,即電子郵件客戶端軟件 用戶代理的功能:撰寫、顯示、處理和通信 郵件服務(wù)器 用于發(fā)送和接收郵件,并向發(fā)信人報告?zhèn)魉徒Y(jié)果(已交付、被拒絕、丟失等) 郵件服務(wù)器按照客戶/服務(wù)器方式工作 使用發(fā)送和讀取兩個不同的協(xié)議,即發(fā)送郵件的smtp協(xié)議和客戶端讀取郵件的pop3協(xié)議 一個郵件服務(wù)器既可以作為客戶,也可以作為服務(wù)器,6.5 電子郵件,發(fā)送電子郵件的主要步驟: 發(fā)件人運(yùn)行自己主機(jī)中的用戶代理,撰寫和編輯郵件 發(fā)件人使用用戶代理把郵件用smtp協(xié)議發(fā)給發(fā)送方郵件服務(wù)器 郵件服務(wù)器把郵件臨時存放在郵件緩存隊列中,等待發(fā)送 發(fā)送方郵件服務(wù)器處理緩存隊列中的郵件,由smtp客戶與接收方郵件服務(wù)器的smtp服務(wù)器建立tcp連接,并將郵件發(fā)送出去 運(yùn)行在接收方郵件服務(wù)器中的smtp服務(wù)器收到郵件后,把郵件放入收件人的用戶郵箱中,等待收件人讀取 收件人在收信時,運(yùn)行自己主機(jī)中的用戶代理,使用pop3(或imap)協(xié)議讀取郵件,6.5 電子郵件,二、簡單郵件傳送協(xié)議 smtp 簡介 smtp規(guī)定了兩個相互通信的smtp進(jìn)程之間應(yīng)如何交換信息 smtp使用客戶/服務(wù)器方式 負(fù)責(zé)發(fā)送郵件的smtp進(jìn)程就是smtp 客戶 負(fù)責(zé)接收郵件的smtp進(jìn)程就是smtp服務(wù)器 smtp定義了14條命令和21種應(yīng)答信息 每條命令用4個字母組成 每一種應(yīng)答信息一般只有一行信息,由一個3位數(shù)字的代碼開始,后面附上(也可不附上)簡單的文字說明 sm

溫馨提示

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

評論

0/150

提交評論