应用层网络课件.ppt
《应用层网络课件.ppt》由会员分享,可在线阅读,更多相关《应用层网络课件.ppt(136页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、应用层网络,Application-layer Overlay Networks,覆盖网络(Overlay Network),网络:一群互连的、可以相互通信的计算机,定义了主机间通信所使用的编址、路由及服务模型。覆盖网络:建立在一个或多个已有网络之上的逻辑网络;改变底层网络的一个或几个特性,以实现底层网络所不能提供的某种网络服务。替代覆盖网络的方案:修改已有网络,因特网是一个覆盖网络,因特网是建立在众多物理网络及电信线路上的逻辑网络增加了一个在网间寻址及路由的IP层实现数据包跨物理网络的传输,覆盖网络的应用,路由(如路由覆盖网络)寻址(如对等网络)安全(如VPN)多播(如MBone)移动(如移
2、动IP),覆盖网络的优点和缺点,优点:一般不需要部署新的设备,不修改或很少修改已有的软件/协议(但需要在已有软件上部署新的软件)。不需要在每一个节点上都部署新软件。缺点:协议栈中增加了一个层次,增加了包头及包处理开销节点的负担加重了扩放性问题,应用层网络,应用层网络是在因特网上构建的一个完全位于应用层的网络系统。应用层网络由分布在因特网上的一组主机组成:为一个或多个应用程序提供下层基础设施(网络服务)采用与目前因特网不同的方法转发和处理应用程序的数据由第三方运营和管理,不是当前因特网体系结构的一部分。 应用层网络实际上是基于因特网的大规模分布式应用,因借助网络层的一些技术来进行成员之间的寻址和
3、路由而具有了网络层的某些特征。,典型的应用层网络系统,路由覆盖网络应用层组播内容分发网络P2P系统,1 路由覆盖网络,因特网路由策略仅反映ISP对开销和运行效率的考虑,端用户和应用程序无法参与。对于有些应用来说,因特网路由协议(OSPF/RIP、BGP)所选的路由不能满足其要求。路由覆盖网络的目的是为上层应用提供更好的路由服务,满足其特殊的应用需求。,1.1 弹性覆盖网络 Resilient Overlay Networks(RON),RON是为解决BGP路由失效恢复慢的问题而提出的,其设计目标为:快速检测和恢复路由失效20秒内检测到路由失效(停运或性能下降)并恢复紧密集成路由选择与应用允许应
4、用定义路由失效和对失效的响应 允许应用选择适合自己的路径度量来选择路径灵活的策略路由 允许针对单个用户或主机定义路由策略,RON概述,RON是建立在已有因特网路由结构上的一个应用层覆盖网络。RON节点监视在它们之间的因特网路径的质量,使用这些信息决定直接使用因特网的路由结构,还是将数据包路由到其它RON节点,以优化应用特定的路由度量。,RON体系结构模型,RON客户通过管道(conduit)与RON节点交互Probes负责探测虚链接状态Router实现路由协议Forwarder提供分组转发功能 性能数据库保存虚链接状态信息(延迟、分组丢失率、链路吞吐量 ),RON节点,RON节点是运行了RON
5、软件的主机,实现和路由器类似的功能。任意两个RON节点之间维护一条由下层因特网链路构成的路径(虚链接)。 每个节点及时探测到其余节点的虚链接状态,保存在本地的性能数据库中。RON的设计目标是为一组RON客户(使用RON转发数据的应用程序 )提供更可靠的IP路由机制。,RON工作过程,第一个RON节点(入节点)对分组进行分类,决定分组要使用的路径类型(低延迟或高吞吐率等),为其选择一条路由。若下一跳为一个RON节点,入节点为分组封装一个RON报头(包含一个流标签),发送到下一个RON节点。入节点对后续到达的属于同一个客户的分组标上相同的流标签,直接查找流缓存表转发。后续RON节点根据目的地址和流
6、标签决定下一跳(不再进行分类)。最后一个RON节点(出节点)将分组交给RON客户。,RON路由的特点,支持不同的路由策略:使用不同的链路度量参数维护多条路径根据RON客户程序的需要选择最合适的路径,RON路由的工作要点,路径评估:节点使用停运检测(outage detection)算法,主动探测到其它RON节点之间的虚链路是否工作。针对每一种路径度量(延迟、丢包率、吞吐率),给出表明路径有多“好”的数值。链路状态传播:节点周期性地从本地性能数据库中取出到其它节点的各种路径度量的汇总信息,通过RON本身的网络发送。,路由表构成,针对每一种路由策略计算一组路由表,每一个路由表针对一种路径度量计算得
7、到。路由表的层次结构:每个策略标签指向一个路由偏好表。每个路由偏好对应一种路径度量的路由表。,RON转发,转发器检查每个到来分组的RON报头,确定要发给本地客户还是一个远程节点:如果去往本地客户,利用RON报头中的packet type将数据包交给对应的RON客户。如果flow ID匹配流缓存表中的一个表项,使用表项中的路由信息。如果flow ID不匹配流缓存表中的任何表项,利用RON报头查找路由表。,RON报头结构,路由表查找过程,路由表查找分三步完成:基于策略类型查找基于路由偏好查找基于目的地址查找,1.2 服务覆盖网络 Service Overlay Networks(SON),每个IS
8、P只关心自己网络的性能,并只对自己的用户提供服务保证。BGP只能找到一条可达的路由,无法保证端-端应用性能。SON是为了在因特网上提供端-端服务质量(Quality of Service,QoS)而提出的,以方便创建和部署QoS敏感的增值业务。,SON的实现基础,SON服务商通过双边服务协议(Service Level Agreement,SLA)从各个ISP购买具有一定QoS保证的带宽,在已有因特网上构造一个逻辑的端-端服务投送网络。用户通过业务合同,直接向SON服务商付费来使用SON提供的增值服务。,SON体系结构,SON由服务网关连接而成两个服务网关之间的逻辑连接由底层ISP提供,带宽和
9、服务质量由双边SLA保证。,SON的优点,引入一个新的流量聚合层次(服务聚合):ISP按流量所属的SON进行流量聚合。解除了应用服务与网络服务的耦合:ISP根据SLA设置数据传输服务(粗粒度)。SON采用与服务相关的带宽管理、流量工程和QoS保证机制,确保服务的端-端服务质量(细粒度)。减小了管理和控制网络服务的复杂性允许灵活地创建和部署新的增值服务,1.3 面向服务的因特网 Service Oriented Internet(SOI),覆盖网络的缺点:由于完全不考虑网络层,一定程度的低效率是不可避免的。有些覆盖网络提供的服务需要底层网络的支持才能发挥作用。有些功能在多个覆盖网中重复实现。 服
10、务覆盖网下面需要一个底层基础架构,解决覆盖网的低效问题,并支持新的应用需求。,SOI概述,SOI在逻辑上分离数据传输网络和服务覆盖网络:数据传输网络:大致对应当前的自治系统,为服务覆盖网提供比特管道服务。服务覆盖网络:由服务提供商运营,向订户(服务订购者)提供特殊的增值服务。服务覆盖网络被抽象成服务云,在多个地方与数据传输网络接口。用户请求在数据网络上被路由到某个服务云的最近(或最合适)入口,由服务云中的某个主机服务。,SOI体系结构,SOI概述(续),数据网络与服务网络逻辑分离的好处:允许这两种网络独立进化,在支持已有服务的同时方便未来因特网服务的灵活部署。实现逻辑独立性的机制:彻底分离数据
11、网络与服务网络的编址、路由和转发机制每个服务云可以独立实现自己的编址、路由和转发机制,SOI的抽象,SOI是建立在已有IP网络之上、为灵活部署新的因特网服务而提供的一个公共平台。SOI架构基于三个重要的抽象:服务云面向服务的编址方案(服务云,云中的对象)服务层(服务网关,服务存在点),(1)服务云,服务云是一群部署在因特网上、相互协作向用户提供应用服务的服务实体(如服务器、代理、缓存、内容交换机等)。服务云是一个虚拟的服务覆盖网络,依靠下层网络域在因特网范围传输数据。 服务云和因特网的接口称为服务存在点,数据对象进出服务云只能通过服务存在点。,(2)面向服务的编址方案,SOI的编址方案提供服务
12、云及服务云中对象的位置无关标识:每个服务云被分配一个固定长度(32位)的ID(称sid),由一个中央权威机构管理。服务云中的对象用一个对象ID(称oid)标识,其语法和语义由各个服务云定义,只在服务云内部使用。,命名与名字解析,服务云的命名与解析:每个服务云大致对应了目前具有两层或三层域名的一个机构(如),机构的域名就作为服务名。可以重用DNS或建一个类似的名字解析系统,将服务名解析为sid。 对象的命名与解析:服务云根据自己的商业需要定义对象的命名和编址系统。服务云提供对象解析的功能。将两级地址的解析分开,增加了灵活性和安全性。,(3)服务层,SOI架构的基础是位于IP层之上的一个服务层,包
13、含两个网络单元:服务网关:可看成是下层网络域的扩展,通常部署在网络域边缘,负责穿过网络域的路由和服务交付。服务存在点:服务云与网络域接口的地方,逻辑上是服务云的一部分,负责在服务云内部交付对象。进出服务云的数据都要经过服务网关,服务网关提供服务区分、识别和跟踪服务云流量的功能。,服务层在协议栈中的位置,服务层协议数据单元(服务对象),服务对象头部分为sid部分和oid部分服务修正符由服务云定义,对服务对象的转发有影响。,服务网关(Service Gateway),数据面功能:根据目的sid(或目的sid + 源sid)及相关的服务修正符,将服务对象转发到去往目的服务云的下一跳(相邻的S-POP
14、或另一个SG)。控制面功能:运行服务网关路由协议,建立服务路由表。服务路由表包含目的sid(及相关的服务修正符)到下一跳SG/S-POP(用IP地址表示)的映射。,服务存在点(S-POP),服务存在点有两个主要功能:与服务网关合作,为它所代理的服务云路由和转发服务对象(发往服务云外部)。和服务云中的其它S-POP合作,在服务云内部路由和转发服务对象。(服务云内部机制)为实现第一个功能:控制面:参与服务网关路由协议,建立(部分的)服务路由表,表中包含从sid空间到相邻SG的映射。数据面:利用服务路由表,将服务对象转发到服务云外。,服务网关路由协议,服务网关路由协议主要负责建立服务路由表,包括两个
15、部分:S-POP注册和公告: S-POP向本地服务网关注册,通告其存在、所代表的服务云sid、能够处理的流量类型(一组服务修正符)。传播服务可达性:从邻居服务网关学习路径和向它们发布路径(类似BGP)。,参考文献,Resilient Overlay Networks. SOSP 2001.Service Overlay Networks: SLAs, QoS and Bandwidth Provisioning. ICNP02.Service Oriented Internet.,2 应用层组播,IP组播体系结构:路由器采用分布式算法构造一棵数据转发树;组播分组沿转发树转发时,在树的分支节点处
16、由路由器进行复制。IP组播协议:MOSPF、DVMRP等。IP多播骨干网:MBoneIP组播是实现组播转发的最有效方法,可使全网范围的分组复制数量最少。,IP组播的缺点,路由器必须为每个组播组单独保存状态,路由表和转发表也需要为每个组播组维护一个地址项(组播地址不能聚合),扩展性很差。要求所有路由器支持组播功能,给IP组播的推广使用带来很大困难。试图用一种统一的组播模型来适应所有的应用,给组播算法的设计造成很大困难。组播组的管理开销大。在IP组播中实现可靠性和拥塞控制非常困难。在经济方面,尚没有针对组播的流量计费机制。,应用层组播,在应用层上,依靠端系统之间的单播实现组播。优点:不需要改变现有
17、路由器,能够很快进入应用。单播技术较成熟,基于单播实现的应用层组播易于实现差错控制、流量控制、拥塞控制等。缺点:延迟较大:应用层组播不考虑网络本身的拓扑结构。效率不如IP组播:应用层组播会产生较多数据冗余。 应用层组播研究如何构造并维护高效率的覆盖网络。,应用层组播的例子:Overcast,Overcast网络用于单源组播,由以下几个部分组成:一个源服务器任意数目分布在因特网上的中间节点(有永久存储的PC机)分布在因特网上的标准HTTP客户(Web浏览器)分发树建立协议:将中间节点组织成一棵以源为根的分发树。,多播组的命名,Overcast借用HTTP URL表示多播组:hostname指出一
18、个Overcast网络的根,源相同的所有组共享一棵分发树。Path指示该网络中的一个多播组。标准的HTTP客户都可以加入这些多播组。 使用URL作为多播组的名字空间有以下好处:分层的名字空间解决了多播组地址空间缺乏的问题。基于HTTP的应用不加修改就能使用到多播。URL结构丰富,表达能力强。,Overcast的应用:视频分发系统,系统由一个studio和在一些合适位置放置的appliance组成,appliance和studio协作组织成一棵分发树。studio存储内容,并根据需要调度内容到appliance上。 内容发布者生成一个web页,发布内容的链接。用户点击内容的URL后,浏览器根据h
19、ostname将请求发送到studio。Studio根据path将请求发送到客户附近的appliance。,节点初始化,节点初始化(节点配置和注册):确定节点进行一般IP连接所需要的IP地址和网关地址(DHCP服务或手工配置)。向一个全局的、熟知的注册机构发送自己的序列号。注册机构提供给节点一个应当加入的Overcast网络列表、一个可选的永久IP配置、应当服务的网络区域、应当执行的访问控制。,建立分发树,Overcast建立转发树的原则是,最大化从根(源服务器)到所有中间结点的带宽:将节点放置在尽可能远离根的地方,同时不牺牲到根的带宽。得到一棵较深的分发树,节点在分发树上得到的带宽不低于其直
20、接从根获取内容得到的带宽。,分发树的建立过程,当有一个新节点向根注册时,启动分发树建立过程:设根为“当前节点”;新节点检测直接到“当前节点”的带宽,以及经过“当前节点”的各个孩子节点到达“当前节点”的带宽;如果经由某个孩子节点到“当前节点”的带宽和从它直接到达“当前节点”的带宽一样高,该孩子节点成为“当前节点”,继续探测。如果有多个孩子节点满足条件,距离新节点最近(跳数最少)的孩子节点成为“当前节点” 。如果没有一个孩子节点满足条件,“当前节点”成为父节点,搜索过程结束。,分发树的自适应调整,节点周期性地重新评估它在树中的位置:如果到某个兄弟节点的带宽不低于到父节点的带宽,将自己置于该兄弟节点
21、之下。如果直接到祖父节点的带宽大于到父节点的带宽,将自己置为当前父节点的兄弟节点。Overcast网络容忍非根节点的失效:当节点发现父节点不可达时,将自己连接到祖父节点下。如果祖父节点不可达,节点继续沿系谱往上移,直到找到一个当前活跃的节点。,网络维护,每个节点维护一张表,记录在树中低于自己的节点的信息,根节点的信息表包含树中所有节点的最新信息 。每个节点周期性地向父节点报告自己的存在:如果一个孩子节点在预定的时间间隔内没有报告,父节点在表中记录该孩子及其子孙节点“死了”。节点还会报告其观察到或被告知的信息,如错过报告时间的孩子和新增的孩子等。,加入多播组,web客户发送一个包含该多播组URL
22、的HTTP GET请求,URL的hostname指出分发树的根,path指出多播组。根节点使用path、用户位置以及当前状态数据库决定将用户从树的哪个位置接入。,用Overcast实现多播,数据在父节点和子节点之间通过TCP传输:内容可能会流水地通过树上的几代节点。一个大文件或一段长时间的实时流可能会同时在几十个不同的TCP流中传输。如果出现路径失效:重建分发树;节点检查日志,重新启动未完成的传输。,参考文献,Overcast: Reliable Multicasting with an Overlay Network. OSDI 2000.,3 内容分发网络 Content Delivery
23、 Networks(CDN),提高Web服务性能主要围绕网络传输和服务器两个方面:提高单台web服务器的性能:增加更多的内存和磁盘空间,使用更高速的处理器(或多处理器),使用缓存来减少读盘次数等。 性能提高有限,响应延迟受网络拥塞影响大。 建立服务器集群(server farm):多个web服务器分担对同一个web站点的访问请求。响应延迟受网络拥塞影响大。,提高Web服务性能的方法(续),建立分级的web缓存机制:将用户最近访问过的网页保留在高速缓存中,使用一个代理(proxy)来管理缓存。浏览器配置为向代理请求网页,若本地缓存没有,向上一级代理或源服务器请求。,提高Web服务性能的方法(续)
24、,建立内容分发网络:在因特网的不同地方设置镜像服务器,将用户请求重定向到最近的服务器。有助于减小网络传输和服务器负载对请求响应时间的影响。,CDN涉及的主体,内容提供商(customer):提供内容服务的机构或公司,其内容保存在源服务器(origin server)。CDN提供商:拥有CDN架构,为内容提供商提供快速可靠的内容递送服务。端用户(client):从内容提供商的网站上访问内容的实体。,内容分发环境,CDN的内容,CDN一般保存静态内容:如图像、视频、媒体剪辑、广告、动态网页中的嵌入式对象等。在CDN的上下文中,内容泛指任何数字形式的数据资源,主要包括两大部分:经过编码的媒体。元数据
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 应用 利用 运用 网络 课件
限制150内