第二部分应用层ApplicationLayer

上传人:M****1 文档编号:570184028 上传时间:2024-08-02 格式:PPT 页数:80 大小:677KB
返回 下载 相关 举报
第二部分应用层ApplicationLayer_第1页
第1页 / 共80页
第二部分应用层ApplicationLayer_第2页
第2页 / 共80页
第二部分应用层ApplicationLayer_第3页
第3页 / 共80页
第二部分应用层ApplicationLayer_第4页
第4页 / 共80页
第二部分应用层ApplicationLayer_第5页
第5页 / 共80页
点击查看更多>>
资源描述

《第二部分应用层ApplicationLayer》由会员分享,可在线阅读,更多相关《第二部分应用层ApplicationLayer(80页珍藏版)》请在金锄头文库上搜索。

1、疙浚海竣住祁俏媳期简组措卧退替争珍哥絮艾耗吁撩耘峦凤啪九素恒圾脊第二部分应用层ApplicationLayer第二部分应用层ApplicationLayer第二章應用層 (Application Layer)核桥蹭忍齐酬淘狰买响奄陪迁仿挟光啊纳瘫壤丘侮徘鼻瞎略铭吝则旋藕缮第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer1(C) All rights reserved by Professor Wen-Tsuen Chen應用層-簡介n本章主要介紹在應用層所常用的協定qHTTP(section2.2)qFTP

2、(section2.3)qE-mail(section2.4)qDNS(section2.5)n並介紹用戶端(client)和伺服器端(server)的關係qServicemodelqSocketprogramming(section2.6)竞慕啃宰拐搐缨灾局诅棍魁则纱培隆铭浊函存障四纵超均城捣笔佑啃忆闭第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer2(C) All rights reserved by Professor Wen-Tsuen Chen用戶端(client)和伺服器端(server)n用戶

3、端和伺服器端是一種互相依持的關係q(一個用戶端,一個伺服器端)或q(一個用戶端,數個伺服器端)或q(數個用戶端,一個伺服器端)或q(數個用戶端,數個伺服器端)n在執行一般的網路應用程式情況下,一台機器是用戶端亦是伺服器端欧豢荒采嵌毕该废歹抢弊校钝杠筋战瞳端骸钡屋凌应映德掉讹砾粮哆渡宠第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer3(C) All rights reserved by Professor Wen-Tsuen Chen用戶端(client)和伺服器端(server(cont.)n用戶端q通常為

4、送出要求(request)的一方或q最初建立連線(connection)要求的一方q向伺服器端要求提供服務(service)的一方q例如:使用者端的瀏覽器(browser)n伺服器端q通常為送出回應(reply)的一方q提供服務的一方q例如:網頁伺服器(webserver)绘潍稿公幽桥顶氮汀谬衰掉舜阿衙笨凄庐婚啄丹半氦吓揣瞻摘掣若俐檀貉第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer4(C) All rights reserved by Professor Wen-Tsuen Chen型镊瘁抒碾胁叼遇褪林脊

5、宏剥洽请相铰挡诞卷攒犯扰饯享言记抵镐垣窜淬第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer5(C) All rights reserved by Professor Wen-Tsuen Chen用戶端(client)和伺服器端(server(cont.)嚣积负互约荫度憎携鸽继趋啡矾流早帝勃幂瓦逃丛媒挂棠仿诛览灸须超绳第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer6(C) All rights reserved by P

6、rofessor Wen-Tsuen Chen應用層(Application Layer)n應用層是位於OSI七層中的最上層n為什麼我們需要應用層呢?q因為應用層提供了一個平台,可以讓許多的網路應用程式在應用層執行q這一些應用程式都是在對等的應用層做溝通糙域海距浅蓉沾狡陕椎奴累筋捕删牙槽佯忙瓷囱估剃挛柜谗炸帖泛氖脂被第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer7(C) All rights reserved by Professor Wen-Tsuen Chen應用程式(applications)n這裡

7、泛指網路應用程式(Network Application)n應用程式分別於使用者的機器上執行n兩個或兩個(multicast application)以上應用程式透過網路溝通n由於上述的交換動作,所以應用層得以存在n例如:q電子郵件(E-mail)q檔案交換(FTP)q網頁瀏覽(Web browsing)唱砒澄即路溢耿暗弦屹钎腋杂其乌拥卢惑弹彬沈拄炕格疟汤沂芝辜罢召吗第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer8(C) All rights reserved by Professor Wen-Tsuen

8、 Chen應用層協定(Application-layer Protocol)n屬於應用程式的一部份n協定(protocol)中定義q使用此應用程式所需要的流程q所交換的訊息格式q訊息所表示的意義q與下層協定溝通的方法qn例如:q我們瀏覽網頁需要HTTP協定铲箭镰傻齐渺绦碰荒黎光仍跺骡钝则软杏整屑廷授刊酬亭脯袖下肩袖所产第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer9(C) All rights reserved by Professor Wen-Tsuen Chen應用層協定(Application-la

9、yer Protocol)(cont.)nQ:網路應用程式跟應用層的協定有什麼關係?q應用層的協定只是網路應用程式的一部份而已q例如:HTTP和網頁應用程式的關係据华铜耻摸咒滁臆解纷釉劲斗绅低眨阔佩转雌畅疡赂展聊狗莉朱换招梅茫第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer10(C) All rights reserved by Professor Wen-Tsuen Chen應用層協定(Application-layer Protocol)(cont.)n應用程式介面(API,ApplicationPro

10、grammersInterface)qAPI就像是進出應用程式的一扇門q應用程式透過API與下層協定溝通q在這裡網路程式所指的API就是常見的SocketqSocket在後面有專節介紹n定址(Addressing)qIP(ch.4)或是主機名稱(需搭配DNS)q指定應用程式(Socketport)qSocketport就像是門的鑰匙于铬恕志骗倍薄丁蛇脂筷斌笔赋但入帚涕粘冲初漆嗽骄琼尝左篇瓶夜祥端第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer11(C) All rights reserved by Prof

11、essor Wen-Tsuen Chen應用程式所需要的條件n資料流失(dataloss)q在資料傳輸的過程難免會有資料流失,我們要注意應用程式所能夠接受的範圍,並加以改善n網路頻寬(NetworkBandwidth)q我們需要考慮每一個應用程式所需要的頻寬需求n時間的影響(Timedelay)q我們需要考慮時間對於應用程式的影響q例如:播放影片或是聲音,就不允許資料延遲過久楷桃绢怜猎碴兢馏忿隶驮暇镐瞳养秦垣睹氢遏栅涨诬捉狰巧俗侯狡驾部枷第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer12(C) All r

12、ights reserved by Professor Wen-Tsuen Chen應用程式所需要的條件(cont.)ApplicationData lossBandwidthTime SensitiveFiletransferNolosselasticNoE-mailNolosselasticNoWebdocumentsLoss-tolerantelasticNoReal-timeaudio/videoLoss-tolerantAudio:5kb-1MbVideo:10kb-5MbYes,100smsecStoredaudio/videoLoss-tolerantSameasaboveYes

13、,fewsecsInteractivegamesLoss-tolerantFewKbpsupYes,100smsecFinancialappsNolosselasticYesandno治曳姚幌谜粹扰曝蜕鄂蒋岳依辈垦汹淌梁五留湿宅轮根唁暂肚额怯坑癌待第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer13(C) All rights reserved by Professor Wen-Tsuen Chen網路傳輸層(Transport layer) - overviewn傳輸層屬於OSI第四層n在應用層的下層傳輸

14、層(ch.3)提供了兩種不同的服務協定qTCP(TransmissionControlProtocol)qUDP(UserDatagramProtocol)n在應用層所執行的網路應用程式都是透過這兩種協定來與網路溝通拖直只孝缀憾龟一氮竭缺戮悔硕仅艺佐葵牵滓郁鼠而请诗厉褪恐鞭粤琴狮第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer14(C) All rights reserved by Professor Wen-Tsuen Chen網路傳輸層(Transport layer) overview(cont.)n

15、TCPserviceq連結導向(connection-oriented)n要透過TCP溝通需要先建立連線(threewayhandshake)q提供可靠的傳輸(reliabletransport)q提供流量控制(flowcontrol)q提供壅塞控制(congestioncontrol)nUDPserviceq非連結導向(connectionless)n要透過UDP溝通不需要先建立連線q提供盡力的傳送(bestefforttransport)棱够栗霜搓武闹读磅品鸣姓祈赠递纸肛绿司块谰宣兽餐恼姐鄙峭余特足痔第二部分应用层ApplicationLayer第二部分应用层ApplicationLaye

16、rCh.2 Application-Layer15(C) All rights reserved by Professor Wen-Tsuen ChenTCPThree way handshake窥豆赊出哑琼袖濒司淬者栏掘师釜私呵唯枉憎耽挠垒溃拳赔兹蜂捧蚤祝随第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer16(C) All rights reserved by Professor Wen-Tsuen Chen常見的網路應用程式所使用的service應用程式應用層協定傳輸層協定電子郵件SmtpRFC821T

17、CP遠端裝置存取telnetRFC854TCP網頁httpRFC2068TCP檔案傳輸ftpRFC959TCP多媒體串流(stream)ProprietaryTCPorUDP遠端檔案伺服器NSFTCPorUDP網路電話ProprietaryTypicallyUDP爱验蹄乌糙梳并钝视龟址绝钢灼构毯奈雇胖涧狈裸吞某苹轮坷舞霄骗汤卷第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer17(C) All rights reserved by Professor Wen-Tsuen ChenWorld Wide Web

18、(WWW) ElementsnURL:UniformresourcelocatornHTTP:HypertextTransferProtocolnHTML:HypertextMarkupLanguagenJavaLanguage音挤舆计镰齐桌椿苔冀匈躯吐吵志衷湿剥渐傍厚茅哀轿暇逛餐凸悸挠乾连第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer18(C) All rights reserved by Professor Wen-Tsuen ChenURL: Uniform Resource LocatornRFC

19、編號:1738,1808.nAURLiscompactrepresentationofthelocationandaccessmethodforaresourceavailableviatheInternet.n一個resource是一個可以透過網路存取的任何物件,包括檔案目錄、檔案、文件聲音和影像等nURL的一般表示法 :盯掉将辙蹦柄次洲辟枯掣貌胯她磐警烂政帐滇咀枢陵额鲤狞剃宾涅淖聋粗第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer19(C) All rights reserved by Professo

20、r Wen-Tsuen ChenRFC 1738為了下列存取機制所定義之URL formatsn nftpFileTransferProtocolftpFileTransferProtocoln nhttpHypertextTransferProtocolhttpHypertextTransferProtocoln ngopherTheGopherProtocolgopherTheGopherProtocoln nmailtoElectronicmailaddressmailtoElectronicmailaddressn nnewsUSNETnewsnewsUSNETnewsn nnntpU

21、SNETnewsusingNNTPaccessnntpUSNETnewsusingNNTPaccessn ntelnetReferencetointeractivesessionstelnetReferencetointeractivesessionsn nwaisWide-AreaInformationServerswaisWide-AreaInformationServersn nfileHost-specificfilenamesfileHost-specificfilenamesn nprosperoProsperoDirectoryServiceprosperoProsperoDir

22、ectoryService斌溺弃特落恍琼钨锐氢帜凛舰谩罩呵芦烧呵凰跌摹囊姐扶种厩绒留烙娩属第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer20(C) All rights reserved by Professor Wen-Tsuen Chen买碧冻境黔皮疑奠碎孝轻宝宁疵足秩痕跑抿毗崎锥抑息挖雁虞婚妖职除革第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer21(C) All rights reserved by Profe

23、ssor Wen-Tsuen ChenURI: Universal Resource Identifier (URI)nRFC編號1630.n是一種將用在網際網路中的物件的名稱和位址的表示一致的語法nURL是URI的一種。nDecoupleresource的名稱從它所在的位置或是從它所存取的方法懂味有柬诡骂穗根釜饶庸嫩介闲悦宰漂层现捣护猫诽菠希铸撅睁僧营填择第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer22(C) All rights reserved by Professor Wen-Tsuen Che

24、nHTTPnHTTP:HyperTextTransferProtocolnWeb的應用層協定n採用用戶端和伺服器端的服務架構q用戶端:要求、接收並顯示所接收的webpagesq伺服器端:接受要求並回應所要求的webpages焦盐恰宣癌肄崩赊儡蚤馏克谴牌峻索涡隆妇溪蝴叼荷负虹迁幌乘夷幽氯龋第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer23(C) All rights reserved by Professor Wen-Tsuen ChenHTTPnWebpage所包含的原件有qObjectsnHTMLfil

25、e,jpegimage,javaappletqBaseHTMLfilenHTML是用來描述webpage的一種語言qURL:是用來表示一個page或是objectnwww.nthu.edu.tw/index-c.html(hostname+pathname)n目前HTTP有兩種標準qhttp1.0(RFC1945)qhttp1.1(RFC2068)目前所使用耘吨吾敞赴豌屋锋碴寅袭硬臀塑俺姐肄新圾馏放镜钎桩添铲虑拌凝鸦八并第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer24(C) All rights res

26、erved by Professor Wen-Tsuen ChenHTML: Hypertext Markup Languagen使一種用來描述網頁的文件要如何定義的語言nEmbeddingmarkupcommandswitheachHTMLfilessothatabrowsercanreformatthefiles.nHTML的標準化由WWW組織所制訂qex:W3C贼涸拖弟帜瞅鲜硫惕挑励稿赴侈剩盘篡都芬蓟永褒通床蹋历常曼试秸牢著第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer25(C) All right

27、s reserved by Professor Wen-Tsuen ChenHTTPnHTTP下層協定使用TCP傳送服務q由用戶端初始化連線(setupTCPconnection),使用socketport80與伺服器端溝通q伺服器端回應後,兩端開始交換訊息直到結束(TCPconnectionclose)nHTTP是一個stateless的協定qStateless意指伺服器端不需要保有任何有關過去用戶端的要求訊息(requestmessage)q通常協定要保有過去的state,就會變的很複雜校勋扬镰浸吻限青靡圆登顾丧丫朝益剂乐阁俭绝俏售逐堪贤朋忧吓秒赚背第二部分应用层ApplicationLa

28、yer第二部分应用层ApplicationLayerCh.2 Application-Layer26(C) All rights reserved by Professor Wen-Tsuen ChenNon-persistent和persistent連線的不同Non-persistentnHTTP/1.0n每一個TCP連線都會在server送完物件後結束n所以每一個連線都只會有一個request和一個respondnRespondtime=2RTTs+Ttransn每一個所傳送的物件,都會受到slowstart影響PersistentnDefaultforHTTP/1.1n在同一個用戶端會一

29、直使用同一個TCP連線,直到timeout才關掉n有較少的RTT和slowstartn有分成pipeline和non-pipeline储呈孩论袱谐戌孝病憎九干漫项恳臃悠拒乓桥睡盒测扦翘听腑彦修赘罐贯第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer27(C) All rights reserved by Professor Wen-Tsuen ChenHTTP的訊息格式- requestn訊息是使用ASCIItext所寫(易於閱讀)nHttp的要求訊息格式GET /somedir/page.html HTTP

30、/1.0 User-agent: Mozilla/4.0 Accept: text/html, image/gif,image/jpeg Accept-language:fr (extracarriagereturn,linefeed) request line(GET, POST, HEAD commands)header linesCarriage return, line feed indicates end of message底既堪糜酪复碘捐跨锅絮扮欺羊爬顶罩疚坎汕直轻咱全欢椅兰臃普议桔拽第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh

31、.2 Application-Layer28(C) All rights reserved by Professor Wen-Tsuen ChenHTTP的要求訊息格式- 一般式颈徽紧看搭周祭样颁蔷锣绍爽灶津猜沸兼渐掀艳咀椒远眺蛙编肉泡业衷痈第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer29(C) All rights reserved by Professor Wen-Tsuen ChenHTTP的訊息格式- responsestatus line(protocolstatus codestatus p

32、hrase)HTTP/1.0 200 OK Date: Thu, 06 Aug 1998 12:00:15 GMT Server: Apache/1.3.0 (Unix) Last-Modified: Mon, 22 Jun 1998 . Content-Length: 6821 Content-Type: text/html data data data data data . data, e.g., requestedhtml fileheader lines乌马蔼驱詹蚂讥凰封辞词枷于枫分良犀绣溪港介笋疙肯角肮镣悼畸涨郁厦第二部分应用层ApplicationLayer第二部分应用层Appl

33、icationLayerCh.2 Application-Layer30(C) All rights reserved by Professor Wen-Tsuen Chen常見的回應訊息200 OKq要求成功, 所要求的物件會夾帶在接下來的訊息301 Moved Permanentlyq所要求的物件已經一到別處,新的位置將會出現在下一個訊息中(Location:)400 Bad Requestq所要求的訊息,伺服器無法判讀404 Not Foundq所要求的物件並不存在伺服器裡505 HTTP Version Not Supportedq所要求使用的協定,伺服器端並不支援捅辈怪拴猛陈吞花搞娟

34、票呀淄另冯褪挚搐系洪枉吸块秋笋凡牛凶藉峰雕糟第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer31(C) All rights reserved by Professor Wen-Tsuen ChenJava Language (爪窪語言)n在1995年,由昇揚公司(SunMicrosystemsInc.)所制訂nForwaitinginteractivewebpages.nAsmallJavaprogram,calledanapplet,isassociatedwithawebpageanddownload

35、edtotheclientmachinetointerpretthewebpage.眼桶函时潦哀苑赚滨蛰勺惊冻绒风移京但晋栽径霓芭彩拼难啪脊狠哀泞邹第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer32(C) All rights reserved by Professor Wen-Tsuen ChenJava Language (cont.)瀑祟打溪啄黄充碴当楚孤姚向意振袄鬼橙朔结廊女滨酚贫月政碌蛙倍蔼冬第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 A

36、pplication-Layer33(C) All rights reserved by Professor Wen-Tsuen Chen認證(Authentication)n目的:為了要控制存取伺服器資料的權力n因為是stateless所以用戶端每一次request都要認證一次n認證通常使用name和passwordn為避免需要重覆輸入認證資料,瀏覽器會自行讀取catch的資料n認證步驟如右serverusual http request msg401: authorization req.WWW authenticate:usual http request msg+ Authorizat

37、ion:lineusual http response msgusual http request msg+ Authorization:lineusual http response msgtimeclient洼咳靖弧磷避荔缘再悼怯赠囊苔庇沈唉哥堪蒙撇旺妆短宣杏特创褪燥哦昨第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer34(C) All rights reserved by Professor Wen-Tsuen Chencookiesn設定cookie是為了方便在下一次存取網站時,可以不需要再輸入一些

38、重複性的資料nCookie是由伺服器端要求用戶端建立,並且存在用戶端的機器上nCookie大多用來q認證q使用者的訊息n建立步驟如右clientserverusual http request msgusual http response +Set-cookie: #usual http request msgcookie: #usual http response msgusual http request msgcookie: #usual http response msgcookie-spectificactioncookie-spectificaction毡闪砂宴点吻宣志靖功酞等症苞

39、狠恿割办骑修掸愧砚篱沦媒主凤贝寇厄梦第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer35(C) All rights reserved by Professor Wen-Tsuen ChenWeb快取(proxy伺服器)n目的:為了可以使用戶端送出的request不用直接到原來的伺服器,如此一來便可以加速網頁的取得及瀏覽n所以大部分的用戶端都會透過proxyserver來存取網路資源,而proxyserver會保有一些web的快取資料,以利存取q如果現在的網頁資料不是最新的,則proxy會去原始的網站去更新

40、目前保有的資料clientProxyserverclienthttp requesthttp requesthttp responsehttp responsehttp requesthttp responsehttp requesthttp responseorigin serverorigin server讶伏直窝临暂谁枪确棉吨炯砂温帘煤气非蒙屑饮夷滓吊痊宾筐脊馋诫榔补第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer36(C) All rights reserved by Professor Wen-T

41、suen Chen為什麼使用web catchingn因為proxy一般會離用戶端較近,會使的存取的速度較快n可以減少一些較長距離的trafficn同一筆資料可以統一由proxy來維持更新n右圖為示意圖q1.5Mbpsaccesslink是一個bottleneckoriginserverspublic Internetinstitutionalnetwork10 Mbps LAN1.5 Mbps access link侈查詹伪莱铣烃花彬涂敦渝洒矩常铀于涣妹稚抉贸爆痞群斡淑囱瘟叮驯称第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Applic

42、ation-Layer37(C) All rights reserved by Professor Wen-Tsuen ChenFTP: File Transfer ProtocolnFTP是現在較普遍也較常用的一個檔案傳輸的協定n採用用戶端與伺服器端模式溝通nRFC編號:959n所使用的port:21file transferFTPserverFTPuserinterfaceFTPclientlocal filesystemremote filesystemuser at host盔右臆芦秧耐驮钒追蒂累珊立殿郎娠粳量裴儡纪雇字炭蜂康箕汝慧绸密饲第二部分应用层ApplicationLayer第

43、二部分应用层ApplicationLayerCh.2 Application-Layer38(C) All rights reserved by Professor Wen-Tsuen ChenFTP: File Transfer Protocol (cont.)nFTP使用TCP作為傳輸層所使用的協定n在FTP的連結中有分為兩種qControl:在client和server之間交換commands和response,屬於”outofbandcontrol”qData:在client和server之間的data交換nFTP和HTTP不同,他會maintainstateq目前所在目錄q登錄所做的

44、認證FTPclientFTPserverTCP control connectionport 21TCP data connectionport 20剂吉铁寝约纸斥宋炯组郝席描黔给瘸惟鱼兴竭湿让享括枢视饭爹漂曲就笼第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer39(C) All rights reserved by Professor Wen-Tsuen ChenFTP: File Transfer Protocol (cont.)CommandsnOpen:連接FTPservernUser:使用者帳號n

45、Pass:密碼nRETRfilename:取得檔案nSTORfilename:上傳檔案nBye:結束連線回應訊息n331 帳號 OK,需要密碼n125 data connection 已經開啟; 傳送開始n425 無法開啟 data connectionn452 檔案寫入錯誤如何連結上如何連結上FTP server?ftp xxx.xxx.xxx.xxx portget file.xxx (取得檔案取得檔案)put file.xxx (上傳檔案上傳檔案)髓拧悬琐站动腿踞叫掠户靶争缔移怀瘦耍磺会租求待腑霄闰镑疼韦柴癣苍第二部分应用层ApplicationLayer第二部分应用层Applicati

46、onLayerCh.2 Application-Layer40(C) All rights reserved by Professor Wen-Tsuen ChenElectronic-mail (E-mail, 電子郵件)n包含三個部分q使用者代理人(useragent)q郵件伺服器(mailserver)qSMTP協定mailserveruseragentuseragentuseragentmailserveruseragentuseragentmailserveruseragentSMTPSMTPSMTPuser mailboxoutgoing message queue丰促丑山已践刊活

47、混摄鼻泼倪摈怯掂巷患默咕敞捐肃喇交柒坐娟靛成毅叹第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer41(C) All rights reserved by Professor Wen-Tsuen ChenE-mail user agentn有時亦稱為郵件讀取者(mailreader)n它可以讓user讀取、回復、轉發、儲存和建構訊息(message,mail)n使用者需要讀取信息時,useragent會去跟郵件伺服器溝通,取回信息,或是送出信息nUseragent常見的有:qMicrosoftOutlooko

48、rOutlookExpressqNetscapeMessenger苞茅土砾归庞铆葵汀淫仙锋咋悍饺尹衰野矛克眠啥堪弟瑟搭东呜舞夺嘲庆第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer42(C) All rights reserved by Professor Wen-Tsuen ChenE-mail Mail servern每一個user都會有一個信箱(mailbox)來存放尚未讀取的信件n尚未傳送出去的信件會暫時存在messagequeuenSMTP扮演了兩種角色qClient:當作傳送信件的serverqS

49、erver:當作接收信件的serverqClient和server這兩種服務都會執行在每一台郵件伺服器上哉疑旱泌惹连宵鹃攒歉护兄还厘咒究诧碱汇旧刃告受嘘磕嗡屏捏图耽戌甚第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer43(C) All rights reserved by Professor Wen-Tsuen ChenE-mail SMTPnSMTP:SimpleMailTransferProtocolqRFC編號:821n使用TCP作為下層溝通的協定qPort:25n傳送三部曲qHandshakingq

50、Transferofmessagesqclosuren所有信息資訊必須是7-bitASCII鲍产视么喊入雪愚萝截征武忌场屏润揖嗽岂雕哉非弯陛肯票捆脂纠傻峦渗第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer44(C) All rights reserved by Professor Wen-Tsuen ChenSMTP和HTTP的比較n相同處q使用TCP為傳輸層協定qClientandservermodelq使用persistentconnectionsn不同處qhttp是pullprotocol而SMTP是

51、pushprotocolqSMTP的message限定在7bitASCIIq文件組成方式不同掣滦芒旭氛熟斡离覆员才评虫踢舅又迁噎瞅目裹呀章芥堂赛沾赔谁犁画缅第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer45(C) All rights reserved by Professor Wen-Tsuen ChenSMTP溝通範例 S: 220 cs.nthu.edu.tw C: HELO oz.nthu.edu.tw S: 250 Hello oz.nthu.edu.tw, pleased to meet yo

52、u C: MAIL FROM: S: 250 aliceoz.nthu.edu.tw. Sender ok C: RCPT TO: S: 250 bobcs.nthu.edu.tw . Recipient ok C: DATA S: 354 Enter mail, end with . on a line by itself C: Do you like ketchup? C: How about pickles? C: . S: 250 Message accepted for delivery C: QUIT S: 221 cs.nthu.edu.tw closing connection

53、奇昭苛迟奈伺土字渴颧问蚂咀贩个郎苑引弦亥傈束恐尽饯癣易东涵俄讹抠第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer46(C) All rights reserved by Professor Wen-Tsuen Chen信息格式nRFC822為textmessageexchange標準nHeaderlinesqTo:qFrom:qSubject:nBodyqThemessage,ASCIIcharacteronlyheaderbodyblankline狮羔思肆首摘藕厘奎帧痒赡暖聋凌豹锚绅缔踩使悸荷登提究废隅溜

54、狄焰怎第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer47(C) All rights reserved by Professor Wen-Tsuen Chen信息格式 (cont.)遇胁犯仿盯盛帛吧例尚颤瘪搁咯伺菏掷赋龋拇悦芒雹拒嘉淌械脉御稚要疏第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer48(C) All rights reserved by Professor Wen-Tsuen Chen信息格式 (cont.

55、)偷卞诊心氯倾谩写跨纬暑社咏歼勃巾虽侯州讼世酌社莉电爆酵橱羌衍漠济第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer49(C) All rights reserved by Professor Wen-Tsuen ChenMIME extension for Non-ASCII datanMIME:multimediamailextensionqRFC2045,2056q目的:為了要能夠支援非ASCII的dataq在標頭檔定義MIME的格式From: alicecrepes.fr To: bobhamburg

56、er.edu Subject: Picture of yummy crepe. MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Type: image/jpeg base64 encoded data . . .base64 encoded data 多媒體資料的種類及副檔名(type, subtype)壓縮資料的方法(encode data)MIME version(版本)壓縮的資料(encoded data)硼仁芍孺杂截群惮挨圭棱轧阁兰囊区厩星秀委弛垒督蛋挞撵茂灭哲搁督钙第二部分应用层ApplicationLayer第

57、二部分应用层ApplicationLayerCh.2 Application-Layer50(C) All rights reserved by Professor Wen-Tsuen ChenMIME (cont.)nRFC822MIME所增加的標頭檔(headers)HeaderMeaningMIME-version定義MIME的版本Content-Description描述信息內容Content-ID唯一的識別碼Content-Transfer-Encoding在傳送所壓縮的方法Content-Type信息的種類袒破助甸来砌扼雁螺篓讫柬袱硼碍宅借协场厕祖婚蛹凄泊祭勤峰宙拂兰魏第二部分应用

58、层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer51(C) All rights reserved by Professor Wen-Tsuen Chen抽伴妄硅不爬逊串邮啪泊玫陕灌啸忠臂捡娃诞暮菠砧沉封围叁或浑的驼铡第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer52(C) All rights reserved by Professor Wen-Tsuen Chen肌级展蓝寂想邓或货毛祸预际蛆蔫窥鸡网埋厉灰味废惋幕仇拆糖春韵颂淘

59、第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer53(C) All rights reserved by Professor Wen-Tsuen ChenMIME 的種類(types)Content-Type: 種類種類/副檔名副檔名; 參數參數 (type/subtype; parameters)文字(Text)n例如:副檔名為plain, html圖片(Image)n例如:副檔名為jpeg, gif聲音(Audio)n例如:副檔名為basic(8-bitmu-lawencoded),32kadpcm (

60、32 kbps coding)影像(Video)n例如:副檔名為mpeg, quicktime應用程式(Application)notherdatathatmustbeprocessedbyreaderbefore“viewable”n例如:副檔名為 msword, octet-stream 智钩落冀憨孰还痒投窍瓣链喳虏谩祖俊绥产烃檀牌免七辖兵体堪郑幌弓泻第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer54(C) All rights reserved by Professor Wen-Tsuen Chen

61、郵件存取協定(mail access protocol)nSMTP負責接收端server的傳送及儲存信息nMailaccessprotocol:從server取回信件qPOP:PostOfficeProtocolnRFC1939n提供認證及下載服務qIMAPnRFC2060n可以遠端操作信件,不需下載信件至機器上qHTTP(webmail)nHotmail,mail2000,yahoo呆兰屁殃咆想氦檀漓勘枝策纫膝蚀巫抗毁还淬鹿拉肇曾绩呈洼讥戌胜混纯第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer55(C)

62、All rights reserved by Professor Wen-Tsuen ChenPOP3協定authorizationphasenclientcommands:quser:declareusernameqpass:passwordnserverresponsesq+OKq-ERRtransactionphase,client:nlist:listmessagenumbersnretr:retrievemessagebynumberndele:deletenquit C: list S: 1 498 S: 2 912 S: . C: retr 1 S: S: . C: dele 1

63、 C: retr 2 S: S: . C: dele 2 C: quit S: +OK POP3 server signing offS: +OK POP3 server ready C: user alice S: +OK C: pass hungry S: +OK user successfully logged on汛俐同辕锑题树蹋锐椭淳焰指卧千擂胆煎扶繁而艇遮旷拜朗苍秆具毕侥戚第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer56(C) All rights reserved by Professor

64、 Wen-Tsuen ChenEmail Security (電子郵件的安全性)nPGP:PrettyGoodPrivacy,byPhilZimmermaunin1995.qSupporttextcompression,secrecyanddigitalsignatures.纂篓搪郎米虚滇杨替炼试游娇巡主诡写孤陛疮余疚谤喝哩嚣毕邮筑团牡谜第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer57(C) All rights reserved by Professor Wen-Tsuen ChenPGP messa

65、ge format(訊息格式)峻柱廖惜群君非虑睬误祷暇检坤藻蛇缝担捉佐汇艰钓涸趴极沦困份容宠鄂第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer58(C) All rights reserved by Professor Wen-Tsuen ChenPEM: Privacy Enhanced MailnAnofficialInternetstandarddescribedinRFC1421-1424.nSupportprivacyandauthenticationforRFC822basedemailsyst

66、ems.nThemessagetogetherwithitsmessagedigestisencryptedusingDESwithaone-timekeythatisenclosedalongwiththemessage.nThekeycanbeprotectedwithRSAandcertifiedbycertificationauthorities.舍夏蝗羚另鞘证非篷秘姥纲咖牙死已迫词大韩又塑褒窗碌炊褐矛贸壮签暴第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer59(C) All rights rese

67、rved by Professor Wen-Tsuen ChenPGP和PEM的比較吱佑藻贿桥孙阎乔粥椅管过政主应撵呢索持规允婶愚祸茸瑚怪铱氧萨文弦第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer60(C) All rights reserved by Professor Wen-Tsuen ChenDNS (Domain Name System)- Overviewn名稱我們可以拿來做什麼?q確認、識別一個物件(object)q幫助我們放置(allocate)一個物件q定義在一個團體中的關係q明確定義一個

68、角色(role)q傳送一個機密訊息nNamespace(名稱空間)q定義一組可用的名稱 q由一組名稱與數值的配對所組成 窝鹰支芽疙永读顽弹怔蹿脉遍订摊退俏咳着混篆乳擒称桌傲沽庐昌按渔颧第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer61(C) All rights reserved by Professor Wen-Tsuen ChenDNS (Domain Name System) (cont.)n為什麼我們要使用DNS?q可以幫助我們對應IP位址和主機名字(hostname)q無須記憶IP位址,只需記憶

69、名字nDNS是一個分散式的資料庫q將許多nameservers變成階層式架構nDNS是屬於應用層的協定qHost,routers,nameserver透過溝通來達成解析名稱的目的(address/nametranslation)寇对摇及强赛搽损呼蔷稚穗滦堕彪屡茎喀鸟嚎智催酒屠哺尔雌晋致裁言店第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer62(C) All rights reserved by Professor Wen-Tsuen ChenDNS (Domain Name System) (cont.)n

70、HierarchynNamechinstrap.cs.princeton.edu彩吾湛湾耶铸扳计碎疵镀付备劲咯愿庞睡悠罗群锚客得售怒确脏挂殊皱介第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer63(C) All rights reserved by Professor Wen-Tsuen ChenDNS (Domain Name System)- ExamplenHostscheltenham.cs.princeton.edu 192.12.69.17192.12.69.17 80:23:A8:33:5B:

71、9FnFiles/usr/llp/tmp/foo (server, fileid)nUsersLarryPetersonllpcs.princeton.edu广撂桩暮继误垣言逮借脐山娶粤顽梭珍裔编狙锤携盲维双躯孔杆箔腰拱耪第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer64(C) All rights reserved by Professor Wen-Tsuen ChenDNS (Domain Name System)- Example (cont.)nMailboxesNameserverMailpro

72、gramUserTCPIP2cs.princeton.edu192.12.69.53usercs.princeton.edu1192.12.69.54192.12.69.55误粘汞纳娠式治凶红受跺妹那弱雅基谈口凑矣钳皆怎秘几躺啮郡孔孙炮欠第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer65(C) All rights reserved by Professor Wen-Tsuen ChenDNS name servern為什麼我們不採取集中式DNS?q如果單一DNSserver壞了,會影響很大qTraffi

73、cvolume(一台server不可能處理全部的位址解析)qServer所放置的位置過遠q維護不易nDNSserver可分為q當地名稱伺服器(Localnameserver)q根名稱伺服器(Rootnameserver)q認證名稱伺服器(Authoritativenameserver)骇谱叁雁收啦情欣羊涅牲琴谊狙裔央京序差唬秀涡担肇毅赏役缀铭田删妖第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer66(C) All rights reserved by Professor Wen-Tsuen ChenDNS

74、name servernLocalnameserverq負責當地(local)名稱解析,如解析不成,往上詢問rootservernRootnameserverq負責解析當地DNS無法解析之namenAuthoritativenameserverqHost都會來此主機註冊q當rootserver亦無法解析名稱時,就會詢問authoritativenameserver叶取累角群菊饥括项剃认狐躺疮硝们豪袭襄陨澡金标声政洽崖赌周箕谋蠕第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer67(C) All rights

75、reserved by Professor Wen-Tsuen ChenFQDN (Fully Qualify Domain Name) n一個將名稱與位址對應的機制q為的避免名稱重複q做流量控制n一個DNSname=一個FQDNn一個FQDN名稱可以對應到多個IPn名稱解析的流程:InteractiveQueryn以下為範例:qS摧采践膳垫腿仑亥隆裙卵巡雅询脖痉嚏桂踪舱官迢昭冤侠籽禽素畜区惩键第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer68(C) All rights reserved by Prof

76、essor Wen-Tsuen Chen名稱解析範例挖形柱唬窍跌俯吗验石甭甄匆开此肯谊我杆洒累勇忙才民最枢漳师克撇原第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer69(C) All rights reserved by Professor Wen-Tsuen Chen名稱解析範例(cont.)nStep1:web.nthu.nStep2:nthu.Root(所以Root需要很多台)(Q:com.的IP)(com.DNS的IP)nStep3:.(Q:.的IP)(.DNS的IP)nStep4:nthu.mic

77、rosoft.(Q:.的IP)(.DNS的IP)取得名稱解析的IP,此IP會存放在nthu的catch中,存放TTL的時間nStep5:nthu.web.肯蹄缴岔榨瘪削估妈炬奉失策爆箔络荤攀写吐槐扔阮象筛驴醋险演舌盔雾第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer70(C) All rights reserved by Professor Wen-Tsuen ChenZONEnZONE:是一個特殊單位。一個ZONE一定要有一個DNS來管,但是一個DNS可以管理許多的ZONE,而每一個ZONE都有一個ZON

78、EFilenZONEFile1.SOA(Start-of-Authority)qVersionNumber(判斷新舊,但clock要相同)qRefreshtimer(一個ZONE有兩個DNSServer,SecondaryServer每隔一段時間去跟MasterServer複製)qEntrytimerqExpiretimeqTTL(問到機器的IP後可存放在catch中的時間。ifTTL=0,多用於Proxy,DHCP)处粱侄划耐修荆仗屉块刺兆偶沼澡挫汾豁章脉虚罢饿焦雅辈痞无打袜肩哥第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Applic

79、ation-Layer71(C) All rights reserved by Professor Wen-Tsuen ChenZONE (cont.)qAdministratormailqDomainname2.NS(NameServer)3.MX(MailExchangeServer)4.A(Host):ZONE有多少台機器,需要Dynamicupdate5.CN(alias):多IP對應一台主機6.PTR(Pointer):q有IP查名稱(逆向查詢)q正向查詢:-.ZONEq逆向查詢:97.25.163.in-addr.arpa劲络铜牧轿至僚儡者桃跳宫眼泰褥圈乒矾霖拟意药城镐芦誊扁鄙狭袁

80、辽鸵第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer72(C) All rights reserved by Professor Wen-Tsuen ChenRecursive Queryn我們為了Loadbalance還有一種RecursiveQuery,使用Forward方式進行(以DNS為單位,對象不一定為上游)n執行順序:qInteractiveQueryqRecursiveQuerynIf要直接則使用Forwardq如下圖為RecursiveQuery動作流程q在圖中的CatchDNS為Slave

81、only,它不用經過流程1.(詢問Root)直接問CatchDNSForward的DNS,如果DNS也不知道的話,就會使用InteractiveQuery查詢。苹匹快殴阿痢脯粮爷庙十摄正券屁致离挚烘妙坛缉惦戒放蟹龙瞪神城纺所第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer73(C) All rights reserved by Professor Wen-Tsuen ChenRecursive Query (cont.)博巧冬赚蔬惩言钳婶植轰运捎伺嫂衫拿堡个屁苦情亦仟基谓佬世翻羡临弥第二部分应用层Appli

82、cationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer74(C) All rights reserved by Professor Wen-Tsuen ChenDNS的種類nInteractiveQuery和RecursiveQuery的分別:qInteractiveQuery:已經找到全部的名稱qRecursiveQuery:為了Loadbalance的目的nDNS的種類區分qPrimaryDNS:自己ZONEqSecondaryDNS:有從別人那一邊copy的ZONE(只要有就算)qMasterDNS:自己的ZONE被別人Copyq

83、CatchDNS:每一台DNSServer都算是辫痔挠宙襟腺诞屈兆粹嚼轧题咬跌申发桐态擎注钟抬筏澎蜀藐光尹雾唆绕第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer75(C) All rights reserved by Professor Wen-Tsuen ChenDNS的種類 (cont.)耿垃啃侯懊叹久卉念趴宏黄桅规鹃博乐烩失桑硼椰谗轿谁捡净堤汀纠阂露第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer76(C) All

84、 rights reserved by Professor Wen-Tsuen ChenDNS的紀錄檔DNS:distributeddbstoringresourcerecords(RR)nType=NSqnameisdomain()qvalueisIPaddressofauthoritativenameserverforthisdomainRR format: (name, value, type,ttl)nType=AqnameishostnameqvalueisIPaddressnType=CNAMEqnameisanaliasnameforsome“cannonical”(therea

85、l)nameqvalueiscannonicalnamenType=MXqvalueishostnameofmailserverassociatedwithname价噪池稚沸锨瞻金顽捕麓同溜洲叹巍扣惺坝扩遏黍缅胖市纫枚溪与靖煽舔第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer77(C) All rights reserved by Professor Wen-Tsuen ChenDNS的紀錄檔 (cont.)沏卿炒免斋薄窥临寓秦蜀另伊挂窑坐篇壮缄莫微闷遗缮旦砸炳柒婚益做阳第二部分应用层Application

86、Layer第二部分应用层ApplicationLayerCh.2 Application-Layer78(C) All rights reserved by Professor Wen-Tsuen ChenDNS協定的訊息格式nDNS的query和reply訊息格式是一樣的n訊息標頭欄位qIdentification:一個16bit的代號,query和reply都使用同一個代號qFlags:nquery或replynRecursiondesirednRecursionavailablenReplyisauthoritative碗苯紧殉禁仓膨摄黄状潭寞唁诺钒嘛鹅粹硕戈嗜芬洞皮遁斩较堆后论桔安第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer79(C) All rights reserved by Professor Wen-Tsuen ChenDNS協定的訊息格式(cont.)梅挎网哀冻苹病踪堆币付绵少令呜沥傀摈蓄环审伯蒸潞禹嘛窍止弯串牟甲第二部分应用层ApplicationLayer第二部分应用层ApplicationLayerCh.2 Application-Layer80(C) All rights reserved by Professor Wen-Tsuen Chen

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号