第2章华科-应用层_第1页
第2章华科-应用层_第2页
第2章华科-应用层_第3页
第2章华科-应用层_第4页
第2章华科-应用层_第5页
已阅读5页,还剩90页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机网络第2章应用层2023年2月1日2目录应用层协议原理WEB应用和HTTP协议文件传输协议:FTP因特网中的电子邮件DNS:因特网的目录服务P2P文件共享TCP套接字编程UDP套接字编程构造一个简单的Web服务器2023年2月1日32.1应用层协议原理常见的网络应用上网浏览新闻——IE、Maxthon、FireFox……处理电子邮件——OutlookExpress、FoxMail、Outlook……和熟悉的或者陌生的朋友聊天——ICQ、QQ、MSNMessenger、UC……网络电话——SkyPe、QQ、Net2Phone……网络游戏对战——CS、魔兽世界、联众……资源共享——FTP、BT、电骡……在线视频——VOD、ppLive……搜索引擎——Google、百度、MSNSearch……2023年2月1日42.1应用层协议原理

看了这么多成功的应用,可能你跃跃欲试,很想编写一个类似于Google这样的超级网络应用……

那么现在的你应该做些什么呢?2023年2月1日52.1应用层协议原理知道什么是网络应用程序可以向网络发送数据可以从网络接收数据可以对数据进行处理也许还能够将数据展现在界面上,以非常友好的方式让你知道它在做什么,免得你说它怠工时不时的弹出一个小窗口,提示你不要太辛勤工作了,以表示对你无微不至的关怀

……2023年2月1日62.1应用层协议原理决定你的杀手级网络应用所采用的体系结构客户机/服务器体系结构(C/S)P2P体系结构混合体系结构2023年2月1日72.1应用层协议原理客户机/服务器体系结构的特征是怎样的?存在一个能够向客户机提供服务的服务器,e.g.,WEB服务器存在一个或者多个主动连接服务器,试图从服务器那里获取所需服务的客户机,e.g.,IE浏览器特别注意1:客户机之间不能互相通信特别注意2:为提高服务器的处理能力,通常采用服务器群集(ServerFarm)applicationtransportnetworkdatalinkphysicalapplicationtransportnetworkdatalinkphysicalrequestreplyapplicationtransportnetworkdatalinkphysicalapplicationtransportnetworkdatalinkphysicalrequestrequestreplyreply2023年2月1日82.1应用层协议原理那P2P体系结构又以什么方式来体现呢?任何一方既提供服务又享受服务结点之间可以直接通信结点的地址以及他们之间的连接可能随时发生变化例如:Gnutella特别注意:P2P体系结构非常容易扩展,但也特别难以管理2023年2月1日92.1应用层协议原理混合体系结构那混合体系结构自然而然就是C/S体系结构和P2P体系结构的混合体请大家回想一下第一个P2P应用Napster和及时通信(IM),一切就都明白了!2023年2月1日102.1应用层协议原理网络应用涉及各个组成部分的交互同一台主机上的进程之间通信的规则,由操作系统制定,和计算机网络无关,本课程就不讨论了。不同主机上的进程之间通信的规则,当然就和网络相关了,这套规则在计算机网络中,称之为“应用层协议”,也是本章重点讨论的内容2023年2月1日112.1应用层协议原理当你的网络应用程序Run起来后,就变成了网络应用进程。产生了如下问题:当你的网络应用和其它人开发的网络应用共同运行在一台主机上时,如何把你的网络应用区分开来?通信子网只负责把数据交付到主机,并不负责把数据交付到应用,主机如何知道数据该交付到哪个网络应用?2023年2月1日122.1应用层协议原理一个例子假设你追求一个人现在你要发一封信给她(他)(非电子的阿)不知道名字?写上名字?如何交给邮局现在她(他)回一封信给你怎么回信?邮局如何交寄给你下续2023年2月1日132.1应用层协议原理类比到因特网,提供了类似的解决方法,那就是“套接字(Socket)”每个网络应用进程都有一个属于自己的套接字,该套接字在整个因特网上独一无二主机地址:标识该网络应用进程运行在因特网上哪一台主机上,通常使用32位的IP地址进行标识端口地址:在该主机上标示该网络应用进程,通常使用16位的端口号进行标识e.g.,WEBServer:80;MailServer:25;所以套接字的长度为48位2023年2月1日142.1应用层协议原理进程通过套接字来接收和发送报文套接字相当于一个通道发送进程将报文交给套接字套接字将这些报文传输到接收进程的套接字processTCPwithbuffers,variablessockethostorserverprocessTCPwithbuffers,variablessockethostorserverInternetcontrolledbyappdeveloper2023年2月1日152.1应用层协议原理因特网会给网络应用提供很多不同类型的服务,你的网络应用需要哪些服务呢?数据的可靠传输:你的网络应用是否需要?带宽的自动控制:你的网络应用是否带宽敏感?传输和反馈的实时性2023年2月1日162.1应用层协议原理常见应用程序对传输服务的要求应用程序文件传输e-mailWeb网页实时音频/视频存储音频/视频交互式游戏金融应用数据丢失不丢失不丢失不丢失允许丢失允许丢失允许丢失允许丢失不丢失带宽弹性弹性弹性音频:5Kb-1Mb视频:10Kb-5Mb同上几Kb/s以上弹性实时性无无无100’smsecfewsecs100’smsecyesandno2023年2月1日172.1应用层协议原理因特网将所提供的服务整合成两类传输服务,你的网络应用使用哪一类传输服务,你该做出决定了!TCP面向连接:

在客户端和服务器进程之间需要建立连接可靠传输

:

在发送和接受进程之间流量控制:

发送数据的速度决不超过接收的速度拥塞控制:

当网络超负荷时,束紧发送端口,减缓发送速度不提供:

实时性,最小带宽承诺2023年2月1日182.1应用层协议原理UDP在客户端和服务器进程之间实现“不可靠的”数据传输不提供:连接建立,可靠性保证,流量控制,拥塞控制,实时性,最小带宽承诺2023年2月1日192.1应用层协议原理因特网常见应用采用的传输协议应用e-mail远程终端访问Web文件传输流媒体远程文件服务器IP电话应用协议smtp[RFC821]telnet[RFC854]http[RFC2068]ftp[RFC959]专有协议(e.g.RealNetworks)NFS专有协议(e.g.,Vocaltec)所依赖的传输协议TCPTCPTCPTCPTCPorUDPTCPorUDPtypicallyUDP2023年2月1日202.1应用层协议原理目前获得了构造属于你自己的网络应用所需要的最基本最基本的知识!但是这还远远不够,你还需要继续学习协议到底怎样工作套接字如何工作传输层的服务是如何提供的IP地址是怎么回事网卡和网线起了什么样的作用如何保证网络应用的安全性和性能

……2023年2月1日212.2WEB应用和HTTP协议历史的回顾19世纪70年代,电话的发明,扩展了人类通信的范围,增强了人类通信的实效性20世纪20年代,广播收音机和电视的发明,极大的丰富了人类可获取信息20世纪90年代,WEB的发明,极大的提高了人类主动获取信息的能力广播收音机/电视和WEB的异同点都是广播和按需操作你不能发布电视节目,但可以发布WEB内容2023年2月1日222.2WEB应用和HTTP协议WEB的构成WEB服务器:IIS、Apache、TomCat……浏览器:IE、Maxthon、Firefox协议信息表达的协议——HTML信息传输的协议——HTTP特别说明:WEB属于C/S模式2023年2月1日232.2WEB应用和HTTP协议WEB内容的表达Web页面由一些对象组成。对象可以是HTML文件,JPEG图片,音频文件,JavaApplet……HTML文件是Web页面的基础,它可以包括各种各样的对象,是一个容器对象任何一个对象都可以用URL来定位URL的例子:/cs/pic.gif主机名路径名2023年2月1日242.2WEB应用和HTTP协议WEB内容的传输——HTTP协议客户端/服务器模式客户端:

浏览器请求、接收、展示Web对象(objects)服务器:Web服务器发送对象对请求进行响应http1.0:RFC1945http1.1:RFC2068运行IE浏览器的PC运行IIS的服务器运行FireFox浏览器的PChttprequesthttprequesthttpresponsehttpresponse2023年2月1日252.2WEB应用和HTTP协议http:TCP传输服务:客户端启动TCP连接(创建套接字)到服务器,端口80服务器接受来自客户端的TCP连接http报文(应用层协议报文)在浏览器(httpclient)和Web服务器(httpserver)之间进行交换关闭TCP连接http是“无状态(stateless)”的服务器不保留任何访问过的请求信息小评论保留状态的协议很复杂哟!过去的历史(状态)需要保留一旦浏览器/服务器崩溃,它们各自的状态视图就会发生分歧,还需重新核对2023年2月1日262.2WEB应用和HTTP协议HTTP1.0的传输模式——非持久性连接假设用户键入了一个URLwww./cs/home.index1a.http客户端启动TCP连接到上的http服务器(进程).Port80是http服务器的默认端口.2.http客户端发送http请求报文

(包括URL)进入TCP连接插口(socket)1b.

上的http服务器在port80等待TCP的连接请求.“接受”连接并通知客户端3.http服务器接收到请求报文,形成响应报文(包含了所请求的对象,cs/home.index),将报文送入插口(socket)time(该网页包含文本并引用了10jpeg图片)下续2023年2月1日272.2WEB应用和HTTP协议5.http客户端接收到了包含html文件的响应报文。分析html文件,发现10个引用的jpeg对象6.

对10jpegobjects逐个重复1-5步4.

http服务器关闭TCP连接.time2023年2月1日282.2WEB应用和HTTP协议非持久性连接工作机制分析取对象需要2RTTsTCP连接对象请求/传送许多浏览器同时打开多个并行的连接来改善性能请考虑:如果有1万台客户机访问WEB服务器的某个页面,该页面有100个对象,那就意味着需要100万个连接,1个服务器能够扛得住么?2023年2月1日292.2WEB应用和HTTP协议HTTP1.1引入的新传输模式——持久连接服务器在发送响应后,不再断开TCP连接,而是保持该连接,用于后续对象的传送,直至该连接“休息”了一个较长的时间后,方断开该连接减少了对服务器端连接数的需要,从而减少了对服务器端套接字资源的占用,提高了服务器的负载能力持久连接又可以分为非流水线方式:一个对象传输完成方能传输下一个流水线方式:可以一次性发送所有请求,慢慢接收2023年2月1日302.2WEB应用和HTTP协议HTTP报文类型HTTP请求报文HTTP响应报文2023年2月1日312.2WEB应用和HTTP协议HTTP请求报文一段典型的HTTP请求报文GET/somedir/page.htmlHTTP/1.0User-agent:Mozilla/4.0Accept:text/html,image/gif,image/jpegAccept-language:fr(额外的carriagereturn,linefeed)

请求行(GET,POST,HEAD命令)首部诸行回车、换行表示报文结束2023年2月1日322.2WEB应用和HTTP协议HTTP请求报文的一般格式2023年2月1日332.2WEB应用和HTTP协议请求行支持的方法HTTP1.0定义的方法GET向服务器请求指定URL的对象POST用于向服务器提交表单数据也可以同时请求一个WEB页面特别注意:可以不使用POST方法,而使用GET方法发送表单数据以获取新的WEB页面。e.g.搜索引擎HEAD请求服务器返回一个响应报文,但是该报文中并不包含请求的对象。该方法常常用来进行故障跟踪。下续2023年2月1日342.2WEB应用和HTTP协议HTTP1.1新定义的方法PUT上传的文件放在实体主体字段中,目标路径由URL字段标明DELETE删除URL字段中指定的文件2023年2月1日352.2WEB应用和HTTP协议HTTP响应报文一段典型的HTTP响应报文HTTP/1.0200OKDate:Thu,06Aug199812:00:15GMTServer:Apache/1.3.0(Unix)Last-Modified:Mon,22Jun1998…...Content-Length:6821Content-Type:text/html

datadatadatadatadata...状态行(协议状态码状态短语)首部诸行数据,e.g.,被请求的html文件2023年2月1日362.2WEB应用和HTTP协议HTTP响应报文的一般格式2023年2月1日372.2WEB应用和HTTP协议常见的HTTP响应状态码和短语200OK请求成功,被请求的对象在报文中301MovedPermanently被请求的对象被移动过,新的位置在报文中有说明(Location:)400BadRequest服务器不懂请求报文404NotFound服务器上找不到请求的对象505HTTPVersionNotSupported服务器不支持请求报文使用的HTTP协议版本2023年2月1日382.2WEB应用和HTTP协议了解HTTP报文格式的最好方法就是自行测试1.用Telnet连接测试用的服务器:打开TCP连接到port80(默认的http服务器端口)位于后续键入的内容将发送到的

80号端口$telnet802.键入一条http请求报文:GET/content/content_11786.html将该指令键入后(按两次回车键),就将此最短之(但是完整的)GET请求发到了http服务器3.请注意观察http服务器发回的响应报文!2023年2月1日392.2WEB应用和HTTP协议用户-服务器交互:CookieWEB站点使用Cookie的目的限制用户的访问把内容和用户身份关联起来Cookie技术的组成部分:在HTTP响应报文中有一个Cookie首部行在HTTP请求报文中也有一个Cookie首部行在用户的端系统中保留了一个Cookie文件,由用户浏览器负责管理在Web站点有一个后端数据库2023年2月1日402.2WEB应用和HTTP协议Cookie工作流程客户端服务器http请求报文http响应报文+Set-cookie:1678http请求报文cookie:1678http响应报文http请求报文cookie:1678http响应报文Cookie标明的动作Cookie标明的动作服务器为用户创建ID:1678后端数据库的记录访问访问Cookiefileamazon:1678ebay:8734Cookiefileebay:8734Cookiefileamazon:1678ebay:8734一周以后:2023年2月1日412.2WEB应用和HTTP协议Cookies能为我们带来什么好处呢?认证“购物车”“推荐”用户会话状态

(Webe-mail)Cookies和私密性:Cookies允许网站获得相当多的用户的信息你可能会向网站提供你的姓名和E_Mail地址搜索引擎也可以使用cookie和重定向技术获得很多的信息广告公司也可以通过用户访问过的网站来获得用户的相关信息2023年2月1日422.2WEB应用和HTTP协议WEB缓存目的加速客户端访问WEB页面的速度,减少时延减少局域网与外部因特网交换的数据量,从而在达到同等服务质量的同时,可以使用较小的网络带宽,节约费用客户端WEB缓存客户端httprequesthttprequesthttpresponsehttpresponsehttprequesthttpresponse原始服务器2023年2月1日432.2WEB应用和HTTP协议缓存举例假设平均对象的大小=100,000bits浏览器对这些对象的平均访问速率为15个/秒从因特网一侧的路由器转发HTTP请求到它收到响应报文的平均时间为2秒原始服务器因特网机构网络10Mbps局域网1.5Mbps访问链路2023年2月1日442.2WEB应用和HTTP协议结果总延迟=Internet延迟+访问延迟+局域网延迟局域网的流量强度=0.15接入链路的流量强度=1当流量强度为1时,时延可能非常大,从而导致总时延可能得以分钟计了原始服务器因特网机构网络10Mbps局域网1.5Mbps访问链路流量强度=La/R=15个请求/秒x100kb/请求/R2023年2月1日452.2WEB应用和HTTP协议改进方案1——增加出口带宽假设增加到10Mbps结果局域网的流量强度=0.15接入链路的流量强度=0.15总延迟=Internet延迟+访问延迟+局域网延迟≈2sec请注意:增加出口带宽的费用是非常昂贵的在武汉,1.5Mbps的ADSL,费用大约为130元/月左右

2Mbps的DDN数字链路,费用大约为6000-12000元/月左右2023年2月1日462.2WEB应用和HTTP协议改进方案2——架设WEB缓存假设命中率为0.4结果40%的请求几乎可以马上得到响应60%的请求必须从服务器上获得响应接入链路的流量强度减少到0.6,其导致的延迟可以忽略(例如10msec)。总的平均延迟=Internet延迟+访问延迟+局域网延迟

0.6x(2.01)秒+0.4x(0.01s)

略大于1.2secs,好于方案1原始服务器因特网机构网络10MbpsLAN1.5Mbps访问链路WEB缓存代价:一台普通PC+一套免费的WEB缓存软件2023年2月1日472.2WEB应用和HTTP协议条件GET方法的使用目的:更新WEB缓存中的WEB对象副本举例WEB缓存向WEB服务器发送请求报文GET/fruit/kiwi.gifHTTP/1.1Host:2023年2月1日482.2WEB应用和HTTP协议WEB服务器向该WEB缓存发送响应报文HTTP/1.1200OKDate:Mon,7Jul200315:39:29Server:Apache/1.3.0(Unix)Last-Modified:Wed,2Jul200309:23:24Content–Type:image/gif(datadatadatadatadatadata)2023年2月1日492.2WEB应用和HTTP协议一周后,一个客户端请求该对象,为判断WEB缓存中的该对象副本是否最新的,该WEB缓存向原始服务器发出一个条件GET方法,执行更新检查GET/fruit/kiwi.gifHTTP/1.1Host:If-Modified-Since:Wed,2Jul200309:23:242023年2月1日502.2WEB应用和HTTP协议如果该对象没有被修改过,WEB缓存上的仍然是最新版本,则WEB服务器发送如下响应报文HTTP/1.1304NotModifiedDate:Mon,14Jul200315:39:29Server:Apache/1.3.0(Unix)(实体主体为空)2023年2月1日512.2WEB应用和HTTP协议如果该对象在此之后被修改过,WEB服务器上有最新版本,则WEB服务器发送新版本的对象给WEB缓存HTTP/1.1200OKDate:Mon,14Jul20315:39:29Server:Apache/1.3.0(Unix)Last-Modified:Sat,12Jul200309:23:24Content–Type:image/gif(datadatadatadatadatadata)2023年2月1日522.3文件传送协议:FTPFTP简况使用TCP协议传输数据C/S模式端口:21/20文件传输FTP服务器FTP用户接口FTP客户机本地文件系统远程文件系统用户2023年2月1日532.3文件传送协议:FTPFTP与HTTP传输文件的共同点均使用TCP协议FTP与HTTP传输文件的不同点FTP的控制信息是带外传送的,而HTTP的控制信息则是带内传送的FTP存在两个并行的连接控制连接数据连接FTP客户机FTP服务器TCP控制连接端口21TCP数据连接端口202023年2月1日542.3文件传送协议:FTPFTP连接是有状态的,而HTTP连接则是无状态的FTP服务器会在整个会话期间维护用户的状态信息把用户帐户和控制连接联系起来追踪用户在远程目录树上的位置对活动着的用户会话的状态进行追踪,以限制FTP会话总数2023年2月1日552.3文件传送协议:FTP常见的FTP命令USERusername(登录)PASSpassword(登录)LIST

(返回当前目录中的文件列表)RETRfilename

(取(gets)文件)STORfilename

(存(puts)文件到远程主机)2023年2月1日562.3文件传送协议:FTP常见的FTP应答331UsernameOK,passwordrequired125dataconnectionalreadyopen;transferstarting425Can’topendataconnection452Errorwritingfile

特别注意:FTP的应答和HTTP的应答是否很类似?

2023年2月1日572.4因特网中的电子邮件电子邮件系统的构成用户代理邮件服务器简单邮件传输协议:SMTP用户邮箱外发报文队列mailserveruseragentuseragentuseragentmailserveruseragentuseragentmailserveruseragentSMTPSMTPSMTP2023年2月1日582.4因特网中的电子邮件用户代理写作,编辑,阅读邮件报文e.g.OE、FoxMail邮件服务器邮箱包含了收到的用户邮件(尚未被阅读)报文队列包含了外发的邮件报文SMTP协议用在邮件服务器之间发送邮件客户端:将邮件发送到邮件服务器“服务器”:接收和转发邮件用户邮箱外发报文队列mailserveruseragentuseragentuseragentmailserveruseragentuseragentmailserveruseragentSMTPSMTPSMTP2023年2月1日592.4因特网中的电子邮件SMTP协议使用TCP可靠的传送邮件报文,端口25直接传输:发送服务器到接收服务器传输的三个阶段握手(打招呼)报文传输结束命令/响应交互命令:ASCII文本响应:

状态码和短语邮件报文必须使用7-bitASCII表示2023年2月1日602.4因特网中的电子邮件一次邮件传送过程Alice使用用户代理发送消息给:bob@Alice的用户代理发送消息给她的邮件服务器;消息被保存在消息队列中

SMTP的客户端向Bob的邮件服务器建立一个TCP连接SMTP的客户端通过这个TCP连接发送Alice的消息到Bob的邮件服务器Bob的邮件服务器将这个消息存储到Bob的邮箱中Bob使用他的用户代理阅读这个消息用户代理邮件服务器邮件服务器用户代理1234562023年2月1日612.4因特网中的电子邮件S:220C:HELOcrepes.frS:250Hellocrepes.fr,pleasedtomeetyouC:MAILFROM:<alice@crepes.fr>S:250alice@crepes.fr...SenderokC:RCPTTO:<bob@>S:250bob@...RecipientokC:DATAS:354Entermail,endwith"."onalinebyitselfC:Doyoulikeketchup?C:Howaboutpickles?C:.S:250MessageacceptedfordeliveryC:QUITS:221closingconnection2023年2月1日622.4因特网中的电子邮件SMTP评述SMTP使用持续连接SMTP要求报文(首部&信体)全部使用7-bitASCII码某些代码组合不允许出现在报文中(e.g.,CRLF.CRLF).此类数据必须进行编码(通常使用base-64或quotedprintable)SMTP服务器用CRLF.CRLF

表示邮件报文的结束SMTPvsHTTP都使用ASCII命令/响应交互,状态码HTTP:pull(拉)andSMTP:push(推)HTTP:每个对象分装在各自的响应报文中

SMTP:多个对象在一个多分部的报文中传送2023年2月1日632.4因特网中的电子邮件邮件报文格式首部诸行,e.g.,To:From:Subject:不同

于smtp命令!信体即“报文”,ASCIIcharactersonlyheaderbody空行2023年2月1日642.4因特网中的电子邮件非ASCII码数据的MIME扩展From:alice@crepes.frTo:bob@Subject:Pictureofyummycrepe.MIME-Version:1.0Content-Transfer-Encoding:base64Content-Type:image/jpegbase64encodeddata

base64encodeddata

多媒体类型,子类型,参数声明数据编码方法MIME版本编码后的数据2023年2月1日652.4因特网中的电子邮件从客户机获取邮件的方法POP3协议IMAP协议HTTP2023年2月1日662.4因特网中的电子邮件POP3协议的认证阶段客户端命令:user:

用户名pass:

口令服务器响应+OK-ERRS:+OKPOP3serverreadyC:useraliceS:+OKC:passhungryS:+OKusersuccessfullyloggedon2023年2月1日672.4因特网中的电子邮件POP3协议的交互命令list:

列出报文号码retr:

用报文号码取信dele:

用报文号码删信quitC:listS:1498S:2912S:.C:retr1S:<message1contents>S:.C:dele1C:retr2S:<message1contents>S:.C:dele2C:quitS:+OKPOP3serversigningoff2023年2月1日682.4因特网中的电子邮件POP3评述“下载-删除”:用户如果更换客户机无法再次阅读原来的邮件“下载-保存”:在不同的客户机上保存邮件的副本POP3会话是没有状态的用户使用POP3协议无法在邮件服务器上对自己的邮件进行重组织,只能将邮件下载到本地计算机进行重组织IMAP协议将所有的邮件都保存在服务器上允许用户在服务器上组织自己的邮件目录IMAP维护了IMAP会话的用户信息:目录名以及报文ID与目录名之间的映射关系2023年2月1日692.5DNS:因特网的目录服务人类社会对人的识别姓名身份证号护照号

……网络社会对机器的识别MAC地址(48bit)IP地址(32bit)域名(不定长)IP地址和域名之间如何映射(转换)?为此人类设计了DNS系统,用于IP地址和域名之间的转换2023年2月1日702.5DNS:因特网的目录服务DNS简况DNS是一个分布式数据库,由很多台DNS服务器按照层次结构组织起来DNS运行在端到端系统上,且使用UDP协议(53号端口)进行报文传输,因此DNS是应用层协议DNS以C/S的模式工作DNS不直接和用户打交道,而是因特网的核心功能2023年2月1日712.5DNS:因特网的目录服务一次最简单的DNS解析过程假设Alice通过IE浏览器访问/index.htmlAlice的主机上存在DNS客户机结果IE浏览器从URL中抽取出域名,将其传送给DNS客户机DNS客户机向DNS服务器发出一个包含域名的查询请求报文DNS服务器向DNS客户机送回一个包含对应IP地址的响应报文DNS客户机将该IP地址传送给IE浏览器IE浏览器向该IP地址所在WEB服务器发起TCP连接2023年2月1日722.5DNS:因特网的目录服务DNS的实现最简单的方法——单台DNS服务器单点故障的问题:一旦崩溃,因特网何以堪数据的流通量:使得DNS服务器不堪重负远程的集中式数据库:带来严重的延时维护量巨大:DNS服务器不得不拼命的更新以适应因特网上主机的增加与减少显然,这种方法是世界上最笨的方法!!!2023年2月1日732.5DNS:因特网的目录服务真正的DNS实现根DNS服务器.comDNS服务器.eduDNS服务器.cnDNS服务器DNS服务器DNS服务器DNS服务器DNS服务器DNS服务器DNS服务器根DNS服务器顶级域(TLD)服务器权威DNS服务器2023年2月1日742.5DNS:因特网的目录服务根域名服务器(13个)bUSC-ISIMarinadelRey,CAlICANNMarinadelRey,CAeNASAMtView,CAfInternetSoftwareC.PaloAlto,CAiNORDUnetStockholmkRIPELondonmWIDETokyoaNSIHerndon,VAcPSInetHerndon,VAdUMarylandCollegePark,MDgDISAVienna,VAhARLAberdeen,MDjNSI(TBD)Herndon,VA2023年2月1日752.5DNS:因特网的目录服务顶级域DNS服务器:负责顶级域名和所有国家的顶级域名解析工作,例如:com,org,net,gov,uk,cn,jp等NetworkSolution公司负责维护com顶级域DNS服务器Educause公司负责维护edu顶级域DNS服务器权威DNS服务器:

属于某个组织的DNS服务器,为组织的服务器提供一个权威的域名到IP地址的映射服务(例如:Web和mail)这些DNS服务器一般有所属组织或者服务提供商负责维护2023年2月1日762.5DNS:因特网的目录服务本地DNS服务器严格的讲,本地DNS服务器其并不属于DNS层次结构中的一层每一个网络服务提供商都会提供一个本地DNS服务器有时候,我们将其称为“默认DNS服务器”当一台主机需要做一个域名查询的时候,查询请求首先被发送到本地域名服务器本地域名服务器的行为就像一个代理,它会向域名的层次体系中进行进一步的域名查询。2023年2月1日772.5DNS:因特网的目录服务一次完整的DNS解析过程发起请求使用递归查询后续解析为迭代查询发起请求的主机根DNS服务器本地DNS服务器123456权威DNS服务器78TLDDNS服务器2023年2月1日782.5DNS:因特网的目录服务另外一种DNS解析流程纯递归查询发起请求的主机根DNS服务器本地DNS服务器12456权威DNS服务器78TLDDNS服务器32023年2月1日792.5DNS:因特网的目录服务DNS缓存一旦(任何)域名服务器得知了某个映射,就将其缓存在一定的时间间隔后缓存的条目将会过期(自动消除)顶级域DNS服务器通常被缓存在本地DNS服务器中

·这样可以减少根DNS的负载2023年2月1日802.5DNS:因特网的目录服务DNS可提供的服务域名到IP地址的转换主机/邮件服务器别名为不好记的规范主机/邮件服务器名提供一个易记的别名e.g.->负载均衡一个域名对应多个IPDNS服务器在多个IP中进行轮转2023年2月1日812.5DNS:因特网的目录服务DNS记录的格式Type=NSname=域(如)value=该域权威域名服务器的主机名RR格式:(name,value,type,ttl)Type=Aname=主机名value=IP地址Type=CNAMEName=别名

value=真名

Type=MXvalue=与name相关的邮件服务器域名2023年2月1日822.5DNS:因特网的目录服务DNS记录的维护目前基本上都是手工维护RFC2136定义了DNS动态更新2023年2月1日832.5DNS:因特网的目录服务DNS报文查询和回答报文的格式是一致的2023年2月1日842.6P2P文件共享一次传输的场景Alice在她的笔记本电脑上

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论