版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2020/8/2,1,第七章高层协议及分析,2020/8/2,2,广域网的高层协议 Internet应用层协议,2020/8/2,3,7.1 广域网的高层协议,广域网的高层是指会话层、表示层和应用层。由于广域网的高层在实现上有很大差别,现在很少有网络严格按照ISO/OSI/RM的高层建议实现。 会话层:又称会晤层,其任务是提供一种有效地方法,以组织并协商两个表示层进程之间的会话,并管理它们之间的数据交换。 表示层:解决用户信息的语法表示问题,向上为应用层提供服务。 应用层:直接面向用户以满足用户的不同需求,是惟一向应用程序提供服务的层。,2020/8/2,4,7.2 Internet应用层协议
2、,Internet体系结构的最高层是应用层,它与OSI七层体系结构的高层(会话层、表示层、应用层)相对应,其协议主要有域名系统DNS、超文本传输协议HTTP、简单邮件传输协议SMTP、文件传输协议FTP和远程登录TELNET等。,2020/8/2,5,7.2.1 域名系统DNS,Internet采用一种实现分层命名和地址解析任务的命名机制,使任何一个连接在Internet上的计算机都有一个惟一的层次结构的名字,即域名。将域名映射为IP地址的过程称为“名字解析”,负责完成名字解析任务的就是域名系统DNS。 DNS是一个分布式的数据库系统,由若干域名服务器程序组成,负责维护域名到IP地址的映射数据
3、库。,2020/8/2,6,DNS特点 DNS是一个分布式数据库,由很多台DNS服务器按照层次结构组织起来 DNS运行在端到端系统上,且使用UDP协议(53号端口)进行报文传输,因此DNS是应用层协议 DNS以C/S的模式工作 DNS不直接和用户进行交互,而是因特网的核心功能,2020/8/2,7,一次最简单的DNS解析过程 假设 Alice通过IE浏览器访问 Alice的主机上存在DNS客户机 结果 IE浏览器从URL中抽取出域名,将其传送给DNS客户机 DNS客户机向DNS服务器发出一个包含域名的查询请求报文 DNS服务器向DNS客户机返回一个包含对应IP地址的响应报文 DNS客户机将该I
4、P地址传送给IE浏览器 IE浏览器向该IP地址所在WEB服务器发起TCP连接,2020/8/2,8,DNS的域名结构 Internet的域名结构是一种分层次的名字空间。在名字空间中每一个可以被管理的划分称为“域”。,Internet域名空间,2020/8/2,9,最早的顶级域有六类: com表示商业组织 net表示网络相关组织 edu表示教育机构 org表示非盈利组织 mil表示军事团体 gov表示政府部门 Internet随后又增加了顶级域名的类型,如国家代码和地区代码也可作为顶级域名。例如cn表示中国 一个完整的域名:,2020/8/2,10,DNS的实现 最简单的方法单台DNS服务器 单
5、点故障的问题:一旦崩溃,因特网将无法维持 数据的流通量:使得DNS服务器不堪重负 远程的集中式数据库:带来严重的延时 维护量巨大:DNS服务器不得不持续的更新以适应因特网上主机的增加与减少,显然,这种方法是行不通的!,2020/8/2,11,真正的DNS实现,根DNS服务器,.com DNS服务器,.edu DNS服务器,.cn DNS服务器, DNS服务器, DNS服务器, DNS服务器, DNS服务器, DNS服务器, DNS服务器,根DNS服务器,顶级域(TLD) 服务器,权威DNS 服务器,2020/8/2,12,根域名服务器(13个),2020/8/2,13,顶级域
6、DNS服务器:负责顶级域名和所有国家的顶级域名解析工作,例如:com, org, net, gov, uk, cn, jp等 Network Solution公司负责维护com顶级域DNS服务器 Educause公司负责维护edu顶级域DNS服务器 权威DNS服务器: 属于某个组织的DNS服务器, 为组织的服务器提供一个权威的域名到IP地址的映射服务 (例如:Web 和 mail) 这些DNS服务器一般由所属组织或服务提供商负责维护,2020/8/2,14,本地DNS服务器 严格的讲,本地DNS服务器并不属于DNS层次结构中的一层 每一个ISP(住宅ISP、公司、大学)都会提供一个本地DNS服
7、务器 有时候,我们将其称为“默认DNS服务器” 当一台主机需要做一个域名查询的时候,查询请求首先被发送到本地域名服务器 本地域名服务器的行为就像一个代理,它会向域名的层次体系内进行进一步的域名查询。,2020/8/2,15,一次完整的DNS解析过程 发起请求使用递归查询 后续解析为迭代查询,发起请求的主机 ,,根DNS服务器,1,2,3,4,5,6,权威DNS服务器 ,7,8,TLD DNS 服务器,2020/8/2,16,另外一种DNS解析流程 纯递归查询,发起请求的主机 ,根D
8、NS服务器,1,2,4,5,6,权威DNS服务器 ,7,8,TLD DNS 服务器,3,2020/8/2,17,DNS缓存 一旦 (任何) 域名服务器得知了某个映射, 就将其 缓存 在一定的时间间隔后缓存的条目将会过期(自动消除) 顶级域DNS服务器IP地址通常被缓存在本地DNS服务器中 这样可以减少根DNS的负载,2020/8/2,18,DNS可提供的服务 域名到IP地址的转换 主机/邮件服务器别名 为不好记的规范主机/邮件服务器名提供一个易记的别名 e.g. relay1.west- 负载均衡 一个域名对应多个IP DNS服务器在多个IP中进行轮转,2020
9、/8/2,19,DNS记录的格式(RR:资源记录),Type=NS name = 域 (如) value =该域权威域名服务器的主机名,Type=A name = 主机名 value = IP 地址,Type=CNAME Name= 别名 如: value =规范名称 ,Type=MX value 是别名为name的邮件服务器的规范主机名,2020/8/2,20,DNS报文 查询和回答报文的格式是一致的,2020/8/2,21,在DNS数据库中插入记录 例如:要注册一个域名 “Network Utopia” 在DNS注册登记机构注册名字“” (如 Network Solutions) 提供权威
10、DNS服务器的名字和IP地址 (包括基本的和辅助的) 注册登记机构在com 顶级域名服务器中插入两条记录: (, , NS) (, , A) 在权威DNS服务器中为创建A记录,为创建MX记录,2020/8/2,22,DNS记录的维护 目前基本上都是手工维护 RFC2136和RFC3007定义了DNS动态更新,2020/8/2,23,7.2.2 超文本传输协议HTTP,HTTP是负责Web浏览器和Web服务器之间传输数据的通信协议,它定义了浏览器和服务器之间的通信交换机制、请求及响应信息的格式。 HTTP协议支持的服务不限于WWW,如FTP、Archie、SMTP、NN
11、TP等。 HTTP协议还可用于名字服务器和分布式对象管理。HTTP协议的版本包括HTTP1.0/1.1。,2020/8/2,24,1.HTTP的基本工作原理 HTTP客户机和服务器之间的具体会话过程包括以下四个部分: (1)客户机和服务器建立联系 客户机通过套接字(socket)与服务器建立连接。在打开套接字时需按URL来提供信息,URL格式为: HTTP:/端口号/路径 默认端口号为80。 (2)客户向服务器提出请求 (3)服务器对请求作出应答 (4)关闭客户和服务器之间的连接,2020/8/2,25,HTTP: 使用TCP 传输服务: 客户端启动TCP连接(创建套接字) 到服务器, 端口
12、80 服务器接受来自客户端的 TCP 连接 http 报文(应用层协议报文) 在浏览器 (http client) 和Web服务器(http server)之间进行交换 关闭TCP 连接,HTTP “无状态(stateless)” 服务器不保留任何访问过的请求信息,保留状态的协议很复杂! 过去的历史 (状态) 需保留 一旦浏览器/服务器崩溃, 它们各自的状态视图就会发生分歧,还需要重新进行核对。,2020/8/2,26,HTTP1.0的传输模式非持久连接,假设用户键入了一个 URL www. ,1a. http 客户端启动 TCP 连接到上的http 服务器 (进程). Port 80 是 h
13、ttp 服务器的默认端口.,2. http客户端发送 http 请求报文 (包括URL) 进入 TCP 连接插口(socket),1b. 在 上的http 服务器在 port 80 等待 TCP 的连接请求. “接受” 连接并通知客户端,3. http 服务器接收到请求报文, 形成 响应报文( 包含了所请求的对象 ,cs/index.htm), 将报文送入插口( socket),time,(该网页包含文本并引用了10 jpeg 图片),2020/8/2,27,5. http 客户端接收到了包含html文件的响应报文。分析 html 文件, 发现 10 个引用的 jpeg 对象,6. 对10 j
14、peg objects 逐个重复1-5 步,4. http 服务器关闭 TCP 连接.,time,2020/8/2,28,非持久连接工作机制分析 取对象需要2 RTTs(Round-Trip Time) TCP 连接 对象请求/传送 许多浏览器同时打开多个并行的连接来改善性能 考虑:如果有1万台客户机访问WEB服务器的某个页面,该页面有100个对象,那就意味着需要100万个连接,1个服务器能够支持吗?,2020/8/2,29,HTTP1.1引入的新传输模式持久连接 服务器在发送响应后,不再断开TCP连接,而是保持该连接,用于后续对象的传送,直至该连接“休息”了一个较长的时间后,才断开该连接 减
15、少了对服务器端连接数的需要,从而减少了对服务器端套接字资源的占用,提高了服务器的负载能力 持久连接又可以分为 非流水线方式:一个对象传输完成方能传输下一个 流水线方式:可以一次性发送所有请求,逐个接收,2020/8/2,30,HTTP报文类型 HTTP请求报文 HTTP响应报文,2020/8/2,31,HTTP请求报文 一段典型的HTTP请求报文,GET /somedir/page.html HTTP/1.0 Host: Connection: close User-agent: Mozilla/4.0 Accept-language:fr (额外的 ca
16、rriage return, line feed),回车、换行表示 报文结束,2020/8/2,32,HTTP请求报文的一般格式,2020/8/2,33,请求行支持的方法 HTTP1.0 定义的方法 GET 向服务器请求指定URL的对象 POST 用于向服务器提交表单数据 也可以同时请求一个WEB页面 注意:可以不使用POST方法,而使用GET方法发送表单数据以获取新的WEB页面。例如: ,2020/8/2,34,HEAD 请求服务器返回一个响应报文,但是仅仅只需要获得响应的协议头,该报文中并不包含请求的对象。该方法常常用来进行故障跟踪。 HTTP1.1新定义的方法 PUT 上传文件,文件名放
17、在实体主体字段中,目标路径由URL字段标明 DELETE 删除URL字段中指定的文件,2020/8/2,35,HTTP响应报文 一段典型的HTTP响应报文,HTTP/1.0 200 OK Connection close Date: Mon, 03 Aug 2009 12:00:15 GMT Server: Apache/1.3.0 (Unix) Last-Modified: Sun, 7 Jun 2009 . Content-Length: 6821 Content-Type: text/html data data data data data .,状态行 (协议状态码 状态短语),数据,
18、 e.g., 被请求的html文件,2020/8/2,36,HTTP响应报文的一般格式,2020/8/2,37,常见的HTTP响应状态码和短语 200 OK 请求成功, 被请求的对象在报文中 301 Moved Permanently 被请求的对象被移动,新位置在报文中有说明 (Location:) 400 Bad Request 服务器不能解释请求报文 404 Not Found 服务器上找不到请求的对象 505 HTTP Version Not Supported 服务器不支持请求报文使用的HTTP协议版本,2020/8/2,38,用户服务器交互:Cookie WEB站点使用Cookie的
19、目的 限制用户的访问 把内容和用户身份关联起来 Cookie技术的组成部分: 在HTTP响应报文中有一个Cookie首部行 在HTTP请求报文中也有一个Cookie首部行 在用户的端系统中保留了一个Cookie文件,由用户浏览器负责管理 在Web站点有一个后端数据库,2020/8/2,39,Cookie工作流程,客户端,服务器,http请求报文,http响应报文 + Set-cookie: 1678,Cookie 特定动作,Cookie 特定动作,服务器为 用户创建ID: 1678,后端数据库 的记录,访问,访问,一周以后:,2020/8/2,40,Cookies优点: 身份认证 “购物车”
20、“推荐” 用户会话状态 (Web、E-mail),Cookies和隐私性: Cookies允许网站获得相当多的用户的信息 你可能会向网站提供你的姓名和E-Mail地址 搜索引擎也可以使用cookie和重定向技术获得很多的信息 广告公司也可以通过用户访问过的网站来获得用户的相关信息,2020/8/2,41,WEB缓存 目的 加速客户端访问WEB页面的速度,减少时延 减少局域网与外部因特网交换的数据量,从而在达到同等服务质量的同时,可以使用较小的网络带宽,节约费用,客户端,WEB 缓存,客户端,http request,http request,http response,http respons
21、e,http request,http response,初始服务器,2020/8/2,42,WEB缓存 缓存同时充当客户和服务器 一般缓存由ISP来购买并安装 (大学、公司、居民区ISP),为什么要用到Web缓存? 减少客户请求的响应时间 减少一个机构因特网链接的通信量 因特网上存在大量的Web缓存以便内容提供商能更有效地分发内容,2020/8/2,43,缓存举例 假设 平均对象的大小 = 100,000 bits 浏览器对这些对象的平均访问速率为15个/秒 从因特网一侧的路由器转发HTTP请求到它收到响应报文的平均时间为 2秒,2020/8/2,44,结果 总延迟 = 因特网延迟 + 访问
22、链路延迟 + 局域网延迟 局域网的流量强度 =0. 15 接入链路的流量强度 =1 当流量强度为1时,时延可能非常大,从而导致总时延可能要以分钟来计算,流量强度=La/R=(15个请求/秒 x 100kb/请求)/R,2020/8/2,45,2020年8月2日,45,改进方案1增加出口带宽 假设 将访问链路带宽增加到10Mbps 结果 局域网的流量强度 =0. 15 接入链路的流量强度 =0.15 总延迟 = Internet延迟 + 访问延迟 + 局域网延迟 2 sec,请注意:增加出口带宽的费用是非常昂贵的,2020/8/2,46,改进方案2 架设WEB缓存 假设命中率为0.4 结果 40
23、% 的请求几乎可以马上得到响应 60% 的请求必须从服务器上获得响应 接入链路的流量强度减少到0.6, 其导致的延迟可以忽略(例如10msec) 。 总的平均延迟 = Internet 延迟 + 访问延迟 + 局域网延迟 0.6 x (2.01) 秒 + 0.4 x (0.01s) 略大于1.2 secs,好于方案1,代价:一台普通PC+一套免费的WEB缓存软件,2020/8/2,47,条件GET方法的使用 目的:更新WEB缓存中的WEB对象副本 举例 WEB缓存向WEB服务器发送请求报文,GET /fruit/kiwi.gif HTTP/1.1 Host: ,2020/8/2,48,WEB服
24、务器向该WEB缓存发送响应报文,HTTP/1.1 200 OK Date: Mon, 6 Jul 2009 15:39:29 Server: Apache/1.3.0(Unix) Last-Modified: Wed, 1 Jul 2009 09:23:24 Content Type: image/gif (data data data data data data),2020/8/2,49,一周后,一个客户端请求该对象,为判断WEB缓存中的该对象副本是否最新的,该WEB缓存向原始服务器发出一个条件GET方法,执行更新检查,GET /fruit/kiwi.gif HTTP/1.1 Host:
25、If-Modified-Since: Wed, 1 Jul 2009 09:23:24,2020/8/2,50,如果该对象没有被修改过,WEB缓存上的仍然是最新版本,则WEB服务器发送如下响应报文,HTTP/1.1 304 Not Modified Date: Mon, 13 Jul 2009 15:39:29 Server: Apache/1.3.0(Unix) (实体主体为空),2020/8/2,51,如果该对象在此之后被修改过,WEB服务器上有最新版本,则WEB服务器发送新版本的对象给WEB缓存,HTTP/1.1 200 OK Date: Mon, 13 Jul 2009 15:39:2
26、9 Server: Apache/1.3.0(Unix) Last-Modified: Sat, 11 Jul 2009 09:23:24 Content Type: image/gif (data data data data data data),2020/8/2,52,7.2.3 简单邮件传输协议SMTP,电子邮件服务是Internet最早也是最重要的一种信息服务。与电子邮件相关的协议分为两种: 在邮件服务器间转发邮件的协议,如SMTP、MIME等。 允许用户从邮件服务器收发、处理邮件的邮件客户机与邮件服务器之间的协议,如POP3和IMAP4。,2020/8/2,53,1.SMTP的邮件
27、发送过程 SMTP主要用于在Internet上各节点间邮件的存储转发,负责将电子邮件从一台邮件服务器传输到另一台邮件服务器。此外,SMTP还负责客户机向服务器的邮件发送。SMTP支持的功能较简单,只定义了电子邮件在邮件系统中如何通过TCP连接进行传送。,2020/8/2,54,用户和SMTP服务器之间建立连接和发送的过程: (1)建立TCP连接(端口号:25) (2)客户端发送HELLO命令以标识发件人自己的身份,然后发送MAIL命令启动发送邮件过程 (3)发送邮件。(使用MAIL、RCPT、DATA等命令,具体过程如下页的实例。) (4)结束此次发送,用QUIT命令退出。,2020/8/2,
28、55,SMTP的发送过程:,S: MAIL FROM: R: 250 OK S: RCPT TO: R: 250 OK S: RCPT TO: R: 550 No such user here S: RCPT TO: R: 250 OK S: DATA R: 354 Start mail input;end with . S: Blah blah blah S: S: . R: 250 OK,2020/8/2,56,2.SMTP的路由选择过程 SMTP在发送时还需完成路由功能。STMP服务器解析路由信息基于域名服务DNS,利用DNS中的MX(邮件交换记录)记录来路由电子邮件,MX记录了注册域名
29、和相关的SMTP中继主机,属于该域的电子邮件都应向该主机发送。,DNS记录的格式(RR:资源记录),Type=NS name = 域 (如) value =该域权威域名服务器的主机名,RR 格式: (name, value, type, ttl),Type=A name = 主机名 value = IP 地址,Type=CNAME Name= 别名 如: value =规范名称 ,Type=MX value 是别名为name的邮件服务器的规范主机名,2020/8/2,57,SMTP特点 SMTP使用持久连接 SMTP要求报文 (首部 transfer starting 425 Cant ope
30、n data connection 452 Error writing file 注意:FTP的应答和HTTP的应答是否很类似?,2020/8/2,72,FTP与HTTP的比较: FTP连接是有状态的,而HTTP连接则是无状态的 FTP服务器会在整个会话期间维护用户的状态信息 把用户帐户和控制连接联系起来 追踪用户在远程目录树上的位置 对活动的用户会话的状态进行追踪,以限制FTP会话总数,2020/8/2,73,FTP与HTTP传输文件的共同点 均使用TCP协议 FTP与HTTP传输文件的不同点 FTP的控制信息是带外传送的,而HTTP的控制信息则是带内传送的 FTP存在两个并行的连接 控制连
31、接 数据连接:非持久连接,针对会话的每一次文件传输都需要建立一个新的数据连接。,2020/8/2,74,7.2.5 远程登录协议TELNET,远程登录协议TELNET的目的是提供一种相对通用的、双向的、面向八位字节的通信方法,它的主要目标是允许接口终端设备的标准方法和面向终端的相互作用,常被用于终端到终端或进程到进程的通信。 TELNET最重要的思想是网络虚拟终端NVT的概念,它可以避免服务器和客户机要了解对方机器终端的特点,而使用终端直接处理通话。 TELNET建立在TCP连接上,使用23号端口。,2020/8/2,75,客户服务器方式,现在由于 PC 机的功能越来越强,用户已较少使用 TELNET 了。 TELNET 也使用客户服务器方式。在本地系统运行 TELNET 客户进程,而在远地主机则运行 TELNET 服务器进程。 和 FTP 的情况相似,服务器中的主进程等待新的请求,并产生从属进程来处理每一个连接。,2020/8/2,76,TELNET 使用网络虚拟终端 NVT 格式,2020/8/2,77,网络虚拟终端 NVT 格式,客户软件把用户的击键和命令转换成
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 土石方施工过程中的施工日志管理方案
- 2025年建筑行业绿色报告
- 校园防盗门禁系统调试方案
- 压路机作业安全管理方案
- 初中英语演讲中站姿高度变化对说服力影响的实证研究课题报告教学研究课题报告
- 跨学科教学团队协作中人工智能技术支持的协作学习策略研究教学研究课题报告
- 未来五年新形势下修脚刀批发行业顺势崛起战略制定与实施分析研究报告
- 未来五年新形势下大米细粉行业顺势崛起战略制定与实施分析研究报告
- 未来五年新形势下航空轮胎行业顺势崛起战略制定与实施分析研究报告
- 未来五年治风膏药行业市场营销创新战略制定与实施分析研究报告
- 家用小型心电监测系统
- 低压配电系统
- 培训供应链审核for baiyun施耐德电气供应商质量管理
- WTO海关估价协议中文版
- GB/T 17626.10-2017电磁兼容试验和测量技术阻尼振荡磁场抗扰度试验
- 煤矿顶板事故现场处置方案
- 体育教学“一体化”模式的探究课件
- 《中兽医学说》教学课件
- 各家针灸学说第一章针灸学派的学术渊源与理论基础课件
- 《跳呀快来跳舞》教案(市赛)
- 山水田园诗鉴赏-中考语文一轮复习
评论
0/150
提交评论