(计算机应用技术专业论文)应用层多播技术实现与性能分析.pdf_第1页
(计算机应用技术专业论文)应用层多播技术实现与性能分析.pdf_第2页
(计算机应用技术专业论文)应用层多播技术实现与性能分析.pdf_第3页
(计算机应用技术专业论文)应用层多播技术实现与性能分析.pdf_第4页
(计算机应用技术专业论文)应用层多播技术实现与性能分析.pdf_第5页
已阅读5页,还剩71页未读 继续免费阅读

(计算机应用技术专业论文)应用层多播技术实现与性能分析.pdf.pdf 免费下载

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

文档简介

硕士论文应用层多播技术实现与性能分析 摘要 传统的口多播方案是为一对多,多对多的通信模型而设计的。然而由于多 播方案的技术性问题和i p 多播方案所带来的市场问题,使得m 播方案在提出1 0 年 以后仍然没有在i n t e r n e t 上成功的部署起来。在i p 多播无法满足新出现应用的需求情 况下,研究者开始考虑利用i n t e r n e t 边缘用户的资源,在应用层实现多播服务。应用 层多播服务的基本思想是:在不改变网络基础设施,不依赖网络层提供多播服务的情 况下,在应用层实现多播服务功能,供用户使用。 本文概括了i p 多播和应用层多播的概况,描述了性能分析的概念,以及性能分 析的方法。通过对应用层多播模型中节点主机的性能的分析,从而引向应用层多播模 型的优化分析和多播模型系统稳定性的分析。最后本文还设计了简单的应用层多播测 试程序与实现程序。利用测试程序分别测试了单播和应用层多播的数据吞吐量与延 时,并比较两者的测试数据。利用应用层多播的实现程序实现了一个简单的应用层多 播发送数据与接收数据的实例。 应用层多播的潜在优势在于它是应用层的方案,不是部署在路由器上,而是部署 在i n t e m e t 的边缘一应用层上。所以应用层多播的拓扑结构是动态的,本文提出了在 稳定状态下,根据多播组的成员主机的性能,构造一个平衡状态的应用层多播的网络 拓扑。这对于以后多播的发展中,解决网络负载和服务器负载的问题还是具有重大意 义的。 关键词:应用层,多播,性能分析,动态拓扑 硕士论文 应用层多播技术实现与性能分折 a b s t r a c t t h et r a d i t i o n a li pm u l t i c a s ta r c h i t e c t u r ew a sp r o p o s e df o rt h e s ec o m m u n i c a t i o n m o d e l s h o w e v e r , m o r et h a nad e c a d ea f t e ri t si n i t i a lp r o p o s a l 。d e p l o y m e n to f i pm u i t i c a s t h a sb e e nl i m i t e dd u et oav a r i e t yo ft e c h n i c a la n dm a r k e tr e a s o n s u n d e rt h i sc o n d i t i o n , i p m u l t i e a s ta r c h i t e c t u r ec a l l ts a t i s f yc u s t o m e r sa n dt h e i ra p p l i c a t i o n r e s e a r c h e r si nt h e r e c e n tp a s th a v e p r o p o s e da p p l i c a t i o nl a y e rm u l d c a s ta sa na l t e r n a t et e c h n i q u ef o rp r o v i d e m u l t i e a s ts c d 1 c e s t h eb a s i ci d e ao fa p p l i c a t i o nl a y e rm u l t l c a s ti st oi m p l e m e n tt h e m u l t i c a s t l n gf u n c t i o n a l i t y a tt h ea p p l i c a t i o nl a y e ri n d e p e n d e n to ft h es u p p o r to f m u l d c a s t i n gf u n c t i o n a l i t yi nn e t w o r kl a y e r t h a tm e a u s ,a p p l i c a t i o nl a y e rm u l t i c a s tt a k e s a d v a n t a g e so fn e t w o r kr e s o u r sa v a i l a b l ea lt h ee d g eo fi n t e r n e ti n s t e a do ft h ec o r eo f i n t e m e t t h e p a p e ri n t r o d u c e ss o m et h i n g sa b o u t i pm u l t i c a s ta n da p p l i c a t i o nl a y e rm u l t l c a s t i ta l s os a y ss o m e t h i n ga b o u tt h ep e r f o r m a n c ea n a l y s i sa n dt h em e t h o d s f i r s t l y , w e a n a l y z e dt h ec u r r e n td e v e l o p m e n to f a p p l i c a t i o nl a y e rm u l t i c a s t t h ea d v a n t a g eo ft h ea p p l i c a t i o nm u l t i c a s ti sn o td e p l o y e do nt h er o u t e rb u ta l s oo n t h ee d g eo fl a t e m e t - - a p p l i c a t i o nl a y e r s ot h et o p o l o g yo fa p p l i c a t i o nl a y e rm u l t l c a s ti s d y n a m i c t h ep a p e ra d v a n c 髓o nt h es t a b i l es t a t u st oc a ) n s t t l l c ta n e t w o r kt o p o l o g yb yt h e p e r f o r m a n c eo fa p p l i c a t i o nl a y e r i th a st h ei m p o r t a n ts i g n i f i c a n c et o s e t t l et h en e t w o r k l o a da n ds e r v e r1 0 a do nt h ed e v e l o p m e n to f m u l l i c a s t , k e y w o r d s :a p p l i c a t i o nl a y e r ,m u l t i c a s t ,。p e r f o r m a n c ea n a l y s i s , d y n a m i ct o p o l o g y 声明 本学位论文是我在导师的指导下取得的研究成果,尽我所知,在 本学位论文中,除了加以标注和致谢的部分外,不包含其他人已经发 表或公布过的研究成果,也不包含我为获得任何教育机构的学位或学 历而使用过的材料。与我一同工作的同事对本学位论文做出的贡献均 已在论文中作了明确的说明。 研究生签名: j ”占年7 月e 1 ;日 , 学位论文使用授权声明 南京理工大学有权保存本学位论文的电子和纸质文档,可以借阅 或上网公布本学位论文的全部或部分内容,可以向有关部门或机构送 交并授权其保存、借阅或上网公布本学位论文的全部或部分内容。对 于保密论文,按保密的有关规定和程序处理。 研究生签名:j d 耳皿j 一6 年7 月j ;日 硕士论文应用层多播技术实现与性能分析 1 绪论 随着i n t e r n e t 与计算机技术的发展,计算机网络用户的应用表现出了新的特点: 端用户即个人计算机能力的不断增强和与之对应的应用需求的不断变化,同时出现了 视频点播、电视会议、远程学习、计算机协同工作等新业务【7 0 1 传统的点对点通信方 式,不仅浪费大量的网络带宽而且效率很低。这类应用通常具有一对多,多对多的通 信特点,同时要求网络提供服务质量保证。 1 1 多播产生的背景 网络的作用从简单的信息传送发展到远程教学、视频会议、数据分发和网络游戏 等。用户的数据要从一个终端发送到另一个终端,首先要确定传输路由,不同的通信 方式,其确定路由的方式也不同。如今网络的通信方式主要有以下几种【8 u : 单播( u n i c a s t :p o i n t t o p o m t ) ,点到点的通信方式( 如图1 1 1 ) 多播( m u l t i c a s t :p o i n t t o m u l t i p o i n t ) ,点到多点的通信方式( 如图1 1 2 ) 广播( b r o a d c a s t :p o i n t t oa l lp o i n t ) ,点到所以节点的通信方式 1 6 8 1 8 6 1 6 8 1 7 6 1 6 8 1 7 1 图 图1 1 2 组通信的多播示意图 硕士论文应用层多播技术实现与性能分析 图1 1 3 组通信的应用层多播示意图 当只有两个终端参与同一进程时,一般采用单播方式。广播是网络中常用的通信 方式,其涉及一个节点向网络中所有节点发送信息,广播通信方式在局域网中应用很 广。而多播是一源节点向多个目的节点发送信息( 但不是所有节点) 的通信方式,涉及 多播技术的应用很多。 1 2 多播通信的方式 多播是一端节点将同一信息传送到多个目的端节点,参与多播的多个目的端点组 成了一个多播组,每个端节点称为多播组成员。 实现多播通信可以通过三种方式【8 l 】: 第一种方式是让端节点简单地发送一个单独的分组到每一个目的端,这种方法不 仅浪费带宽,而且还要求源端拥有全部目的端的完整清单。 第二种是每个分组含有目的节点的清单,当分组到达路由器时,路由器检查所有 目的节点,以确定将要用到的输出线路集合( 如果某线路是到达至少一个目的节点的 最好路由,则需要该线路) 。路由器为所使用的每一条输出线路复制一个新的分组, 每个分组中仅含有用此线路的那些目的节点。实际上,目的节点集合是划分在各条输 出线路上的,经过足够多数量的站点后,每个分组将仅带有一个目的节点。这种路由 方式就像各自分组寻址一样,只是若干分组必须经过同一路由时,其中一个分组负担 全部费用,而其它的分组则不必承担费用【8 2 1 。由于过去网络应用很少涉及到多个用户, 而且多数应用带宽要求较小,因而上述简单的点到点通信方式足以使网络满足多点业 务的带宽要求。然而许多像多媒体流等实时应用业务的出现,使得多播组的规模、业 务的特征和要求发生了很大变化,为了满足这种需求,有必要寻求网络层对多播通信 的支持,使多播技术满足多媒体实时应用的要求。 第三种实现多播的方式,即建立多播树( m u l t i c a s t i n gt r e e ) 6 7 。多播树是包括所有 多播组成员的一棵生成树,多播树有以下两个优点: 1 ) 信息以并行的方式沿着树枝发送到不同的组成员,降低了信息传递的时延; 2 ) n 络中需要传送的复制信息最少,而且信息的复制只在树权处进行,这样能够 节省网络带宽资源,提高每次多播通信时的资源利用率,并能减少拥塞,降低网络负 2 硕士论文 应用层多播技术实现与性能分析 载。 1 3 多播的优点【s 1 1 带宽问题: 运用多播技术分发信息常常能从本质上减少整个网络带宽的需求。与单播技术相 比,即点到点通信方式相比,当多个用户要求同一服务器提供同样信息时,使用单播 技术,带宽将随用户的增多而带宽需求增大,而对于多播,由于在共用链路上传递信 息的一份拷贝,因此带宽的需求不会随用户数量的增加而增加。 服务器的负载问题: 对此举例说明,一家公司正在使用一种音频服务器传送一个无线节日,在互连网 上实时连接用户。如果此公司使用单播传送机制,它将需要不断增加它的实时音频服 务器的能力和数量以满足连接用户的增长。服务器必须为每一个收听节目的用户发出 各自的信息流。当连接的用户数目增加时,服务器负载也增加。当服务器负载增加到 一定程度,服务器就不能再发出信息流。另一方面,如果使用多播来发布节目,只有 单个实时数据流要成为连接所有用户的节目源头。用这种方式,公司不需要购买越来 越多高性能实时音频服务器以满足用户数目的增长。很明显多播提供的主要优势在于 降低了所需服务器性能。 网络负载 当将相同的内容传送给多个用户时,多播能明显地减少带宽要求,带宽消耗的降 低等同于路由器上的负载降低。通常本假定是真实的,但在一些情况下,在某些特定 点路由器的工作负载可能会加大。参考一下上一个的例子,知道第一跳路由器( 直接 与服务器相连的路由器) 从服务器接受一个数据流然而要注意的是,第一跳路由器把 单个数据流复制成两个输出数据流以便将该数据送交给下游用户这个复制过程成为 附加在路由器上的工作负载,它需要在整个网络设计中加以考虑。如果一种路由器没 有一个有效的复制机制,则当输出接口数很大时该路由器负载将明显增加。 1 4 问题的提出 一种有效利用现有带宽的技术就是多播技术。多播( m u l t i c a s t ) 又称为组播,是一 种点到多点( 或多点到多点) 的通信方式,即多个接收者同时接受一个源发送的相同 信息。多播是目前研究最多,应用最广的连接方式,传统的多播方案都是基于网络层 的m 多播,然而由于i p 多播方案的技术性问题和其所产生的市场问题,使得i p 多 播在发展的这些年来在网络上仍然没有成功的运用,为此需要寻找新的突破口。 各种具有一到多、多到多通信特点的应用出现,而m 多播没有实现广泛的部署, 硕士论文应用层多播技术实现与性能分析 不能满足应用需求;同时i n t e m e t 的端用户的计算机能力不断增强,而端用户的计算 资源常常处于闲置状态。研究者开始考虑利用i n t e r a c t 边缘用户的资源,在应用层实 现多播服务。应用层多播服务的基本思想是:在不改变网络基础设施,不依赖网络层 提供多播服务的情况下,在应用层实现多播服务功能,供用户使用【加l 。 在i p 多播方案中,多播服务功能实现部署在网络的中心一核心路由器上;在应 用层多播方案中,多播服务功能实现从核心路由器上迁移到网络的边缘主机上。应用 层多播方案利用了网络的边缘一端用户的处理资源和网络资源来实现多播服务功能。 为了实现多播服务,需要在主机上部署组管理,组成员管理,应用层多播路由协议等 功能模块。 1 5 本文的工作 本文讨论和分析了应用层多播拓扑模型。首先是对简单的树状拓扑进行性能分 析,然后对扩展的简单的树状拓扑进行了分析。最后,将结果推广到多点到多点的多 播拓扑模型。 模型分析的结论是:当主机只的处理数据的速率 以= 肋丝x 以i = l ,2 ,m ) 时,就选择只作为多播组中的分支节点,让其分担 多播源的复制和转发的任务。 本文对多点到多点的多播模型系统的稳定性进行了分析,本文建立如下线性方 程: j ,( 胛+ 1 ) = y 。( ) + 一r ( n + t ;一t o ) 通过对线性方程的分析得到:要保持系统稳定状态的条件是对于系统特征方程, 利用s c h u r - c o h n 判据推导出系统稳定性判别必要条件是:通过选择控制参数c 、d 。的 取值,使得特征方程的根在单位圆内,系统即可以稳定。 本文还设计与实现了一个多播测试程序与应用层多播实现程序。利用测试程序的 测试数据来比较单播和应用层多播的性能,通过多播实现程序来实现应用层多播的一 个实例。 4 硕士论文 应用层多播技术实现与性能分析 2 应用层多播的概述 多播是网络研究中的一个重要课题。i p 多播模型是对i n t e r n e t 基本的“单播、 尽力发送”模型的一个重要扩充,它把多播的主要功能都放在路由器上实现。多播算 法的基本出发点是:在存在多个接收者的时,通过合并重复信息的传输来达到减少带 宽浪费和降低服务器处理负担的目的m 1 。 2 1 i p 多播的介绍 回顾网络多播技术的发展历史,一开始诞生的是p 多播结构,这就是在1 9 8 8 年 由d c c d n g “町提出了将多播的功能机制增加到数据网i p 层的多播实现体系结构。i e t f r f c l l l 2 对口多播的业务提供的方式和形式进行了描述和定义,被看成是口多播的 标准业务模型的定义。 1 9 9 2 年i p 多播实验网- h 仙o n e 嘲建立,从1 9 9 2 1 9 9 7 年,m 多播的协议标 准和部署方法在m b o n e 中进行研究实验。1 9 9 7 年以后,分层结构网络域闻多播路由 的标准化成为i p 多播研究的主要领域,域间路由协议体系的部署实验开始在i n t e r a c t 2 的两个骨干网v b n s 、a b i l c n e 中进行,从1 9 9 9 年中开始采用m b g p m s d p 嘲和 p i m s m 嘲协议体系实现域间多播路由。随着对i p 网络多播研究的深入,业界普遍认 识到仅仅依靠标准多播业务模型无法很好地支持所有的多播应用,而大量的、可以预 见的多播应用是源节点确定的应用,由此提出了采用单源多播业务模型支持单源多播 应用的思想,i e t f 提出的s s m ( s o u r c es p e c i f i e d m u l t i c a s t ) 圆体系结构是基于单源多 播思想的,s s m 采用了严格的- n 多业务模型。s s m 业务模型提出后,迅速得到了 学术界、工业界的重视和支持,实现s s m 业务的协议体系研究进入了一个快速发展时 期。 2 1 1i p 多播的发送 诤多播的主要思想是在原有i n t c m c t 单播的框架上进行扩展,多播的功能主要是 通过路由器来实现的。多播传输模型适用于那些在时间上具有集中性、而在空间上具 有分布性的应用。只有在这种情况下,多播才可能达到减少带宽浪费和降低服务器处 理负担的目的。 在m 多播中,多播组有一个d 号,称作多播组d 号,它指定发送报文的目的 组,实际上是d 类p 地址。主机若要接收发到一个特定组的多播报文,就要监听发 往该特定组的所有报文。为了解决因特网上多播报文的选路,主机须通过通知其子网 上的多播路由器来加入一个组,多播中采用因特网组管理协议( i g m p ) 来达到此目的。 硕士论文应用层多播技术实现与性能分析 i p 多播的服务模型没有提供组的管理。口多播数据报文与所有的口数据报一样,提 供尽力而为服务,没有可靠性保证。口多播传送功能是通过在妒网络设备上运行相 应的多播路由协议来实现的。 实现口多播传输,则多播源和接收者以及两者之间的下层网络都必须支持多播。 这包括以下几方面1 : 1 )主机的t c p i p 实现支持发送和接收m 多播。 2 )主机的网络接口支持多播。 3 )所有介于多播源和接收者之间的路由器、集线器、交换机、t c p i p 栈、防 火墙均需支持多播。 4 )有一套口地址分配策略,并能将第三层口多播地址映射到第二层m a c 地 址。 5 )有一套用于加入、离开、查询的组管理协议,即i g m p 。 6 )支持i p 多播的应用协议软件。 2 1 2i p 多播协议 口多播路由协议通常指域内多播路由协议,这些协议可以分为两类:一类是用 于稠密模式的多播路由协议,另一类是用于稀疏模式的多播路由协议。 稠密模式假定多播组成员密集的分布在网络中,几乎所有的子网都有组成员。稀 疏模式假定多播组成员稀疏的分布在网络中。由于稠密模式假定几乎所有的子网都有 组成员,因此通常允许协议消耗较多的带宽和控制开销,包括路由器状态开销和处理 器开销,通常采用广播技术将多播数据推向网络中所有路由器。稀疏模式则考虑尽可 能减小不必要的带宽消耗和其它的控制开销,通常依赖于某种路由选择技术来建立维 护多播树,而不是使用广播技术。稠密模式的i p 多播协议通常构造基于源的多播树, 稀疏模式的多播通常构造共享多播树。基于源的多播树,对于多播组中的每个源, 都要构造一棵多播树;共享多播树是整个多播组共享一棵树,组内所有的源都使用这 棵树。采用构造基于源的多播树的口多播路由协议有d v m r p ”,m o s p f t 6 j ,p “一 d m 嘲;采用构造共享多播树的多播路由协议有c b t ”1 ,p i m - - s m ”。 2 1 2 1 多播开放式最短路径优先协议( m o s p fm u l t i c a s to p e ns h o r t e s tp a t hf i r s t ) c 】 m o s p f 是利用点到点的链路状态数据库,以o s p f v 2 为基础的多播路由协议, 由于o s p f 应用d i j k s t r a 算法进行路由选择,因此每个节点都要保存全网的拓扑信息, 所有节点对网络的看法一致,它不需要发送任何分组,节点就可根据全网链路状态表 6 硕士论文应用层多播技术实现与性能分析 计算组中每个信源的多播树,而且各节点对此树的看法一致。为了减少计算,m o s p f 可以按需执行算法,即只有当一个节点收到一个信源关于某个多播组的第一个分组 时,才执行算法。这种做法的缺点是对第一个分组带来较大延时m o s p f 的最大优点 是享有o s p f 对网络拓扑的变动快速反应能力然而这个能力是以对路由器c p u 资源 的巨大消耗为基础的。而且随着网络中组数t 的增加,这种消耗也在迅速增加。 2 1 2 2 距离向量多播路由协议回v m r pd i s t a n c ev e c t o rm u l t i c a s tr o u t i n g p r o t o c 0 1 ) 嘲 d v m r p 是m b o n e 上广泛运用的多播路由协议,它采用距离向量算法在 b o n e 上采用隧道技术,使多播通信得以在支持多播的子网之间实现。由于m b o n e 的飞速 发展,由d v m r p 而导致的大量路由控制分组定期在网络中的扩散开销限制了网络规 模的发展为此提出了分层d v m r p ,按照区域分割的方式对m b o n e 进行多层管理, 区域内多播可以按照任何协议进行,而区域之间的多播由边界路由器在d v m r p 协议 下进行由于采用多播协议的层次盈加,减少了路由控制信息开销。 2 1 2 3 独立点到点协议( p i mp r o t o c o li n d e p e n d e n tm u l t i c a s 0 p i m 设计的出发点在于在广域网范围内同时支持共享树与有源树,并能完成两 者之间的灵活转换,因而集中了两者的优点同时避免它们的缺点,在组员密集时以广 播形式传送数据,然后从树上删除不存在接收节点的分支:而组员分布稀疏时,构造 共享树传送,避免分组的广播开销。相应p i m 有两种模式:稀疏模式( s m :s p a r s e m o d e 和密集模式( d m :d e n s em o d e ) i s 。 p i m - d m 是指多播组所覆盖的区域内,具有该组用户的子网数量在子网总数中占 很高的比例。p i m d m 基本上与d v m r p 相同,属于数据驱动型协议,路由算法构成 多播树,但协议只是直接使用点到点路由算法给出的路由表转发数据,因而独立于点 到点协议。 p i m s m 含义是:首先拥有组成员的子网数量远远小于i n t e m e t 中网络数量,其次 是组所搜盖的网络资源不足。在这种模式中,分组接收节点通过向指定点 冲:r e n d e z v o u sp o i n t ) 发送明确的加入消息加入组中,数据发送节点通过r p 公布自 身的存在。然后数据在以r p 为根的共享树中流动。 总的来说,d v m r p ,p i m 和c b t 适用于i n t e r n e t 上数据报的应用环境,在一个 通信会话过程中m c 分组的路由可能发生变化,此时算法的简洁性比树的费用更重 要。 7 硕士论文应用层多播技术实现与性能分析 2 1 2 4 基于核的树的多播路由协议( c o n b a s e dt r e e s :c b t ) 7 1 i c b t 共享树由一个核心路由器生成,它为一个多播组的所有源和成员建一棵数。 这个多播组的所有流量都经过该多播树传输。当发送者希望成为某个多播组的成员 时,它就向该组的核心路由器发送加入请求。所有中间路由器处理该请求,检查请求 传入的接口,然后生成到请求节点的c b t 共享树。 c b t 的基本目标是减少网络中路由器多播状态,以提供多播的可扩展性。为此, c b t 被设计成稀疏模式( 与p i m - s m 相似) 。c b t 中的核c o r e 对应于多播树中的一个 路由器,其作用类似于p i m - s m 中的r p 路由器。c b t 多播树的生成过程与p m i _ s m 也非常相似。在双向共享树中,路由器中所有与多播转发状态相关联的链路端口都能 同时收发多播包。这样一来,一个路由器节点在确定多播状态时,通常并不是必须计 算到某一个核的最短路径,因为这么做并不能保证其反向路径也是最短的。所以生成 c b t 多播树并不一定采用r p f 的技术。路由器节点的多播状态可以由路由表计算, 也可以由某种策略指定。 c b t 不同于p i m - s m 协议还有很重要的一点就是核和r p 在各自协议的不同阶段 的地位和所起的作用不同。在p d “s m 协议中,r p 无论是在多播树的生成阶段还是 多播数据包传送阶段都是中心和关键点。而c b t 树则不同,只有在双向共享树的生 成阶段所有的d r 节点才向核发送加入请求,一旦多播树建立起来,在多播数据包的 传送阶段,核就与其它多播树上的节点没有什么不同,多播包只往就近的树上节点发 送。 2 1 3 口多播的问题 m 多播适用于实时、不可靠的应用,这些应用对延迟敏感但是对报文丢失不很 敏感,对带宽要求比较多,但是带宽要求存在上界。在研究中,发现m 多播存在以 下问题: ( 1 ) 路由器必须为每个多播组单独保存状态,这造成i p 多播的扩展性很差。 ( 2 ) 要求所有参加多播的端系统之间的路由器都必须支持多播功能,这给i p 多 播的推广使用带来很大的困难。 ( 3 ) 试图用一种统一的多播模型来适应所有的应用,而现实中不同的应用对多播 的要求差别很大,这给多播算法的设计造成很大的困难。 ( 4 ) 多播组的管理方法存在缺陷,在多播组的加入、退出和管理等方面开销大, 多播组的加入和退出的延迟也很大。当存在大量规模很小的多播组,或者多播成员在 空间上的分布很稀疏时,多播组管理上的开销将超过多播在带宽方面上的优势。 ( 5 ) 口多播( 这里主要针对i p v 4 ) 的地址空间太小,在多播地址的分配上存在困 3 硕士论文应用层多播技术实现与性能分析 难。 ( 6 ) 在经济方面,多播打破了传统的根据通过进入流量计费的机制。除了以上这 些问题以外,i p 多播在安全、拥塞控制等方面也存在很多问题。 2 1 4i p 多播的小结 m 多播路由主要是通过服务器来完成的,为此会给网络带来负担和占用带宽。 为了保证核心路由器的高效,就会减少路由器状态数目和处理器开销,所以m 多播 路由协议算法不考虑服务质量。口多播是一种尽力而为服务,然而由于i p 多播方案 的技术性问题和其所产生的市场问题,使得碑多播在发展的这些年来在网络上仍然 没有成功的运用,为此需要寻找新的突破口。 2 2 应用层多播的研究 在多播中,组的概念十分重要。由多播定义可知,多播报文是从一个源发送到一 组目的节点。口还提供一种发送和接收p 多播流量的机制。口多播流量发送到单个 目标口地址,但是由多个i p 主机接收和处理,而不管这些主机在疋互联网络上所 处的位置。一个主机侦听一个特定的多播地址,并接收发送到该i p 地址的所有数 据包。在m 多播中,多播组有一个d 号,它指定发送报文的目的组,实际上是d 类p 地址。口多播是无连接和不可靠的( 不像t c p i p 是面向连接和可靠的) 。虽然 它使用口数据报:但是不像单播职数据报那样是从一台主机发送到另一台主机,多 播数据报可以同时发往多台主机。主机若要接受发到一个特定组的多播报文,就 要监听发往该特定组的所有报文。为了解决因特网上多播报文的选路,主机须通过通 知其子网上的多播路由器来加入一个组,多播中采用因特网组管理协议( i g m p ) 来 达到此目的。多播可以分别在o s i 第二层和第三层上实现。如果应用范围局限于单个 l a n ,使用第二层多播技术已足够。但是,许多应用正是因为不局限于单个l a n 才 显出其价值。对于有多个网络的较大型园区网,或者多点应用需要扩展到包括不同介 质( 如以太网,令牌环,f d d i ,a t m ,帧中继) 的i n t e r a c t 时,多播最好在第三层实 现。 2 2 1 应用层多播的现状 虽然多播技术已经得到了迅速的发展,但是它并没有达到预期的效果。p 多 播技术在可扩展性、开发开销等方面的限制,抑制了它的发展。因此,人们又开始了 对应用层多播技术的研究。 9 硕士论文应用层多播技术实现与性能分析 2 2 1 1 研究的意义 由于口多播技术的发展弊端,人们开始转向了对应用层多播技术的探索。研究 者们从i p 多播体系结构本身问题出发,提出了将多播功能放在端系统实现的新思想。 也就是端系统多播的出现。端系统实现多播业务的思想是将多播作为一种叠加的业 务,实现为应用层的服务,因此,端系统多播又称为应用层多播。应用层多播服务的 基本思想是:在不改变网络基础设施,不依赖网络层提供多播服务的情况下,在应用 层实现多播服务功能,供用户使用“4 应用层多播思想提出后的短短几年内,多个研 究机构开展了应用层多播体系结构的研究项目,如:e s m ( e n ds y s t e m m u l t i c a s t ) 、y b i d 、 s e a t t e r c a s t 、o v e r c a s t 、札m i 、蹦( h o s tm u l t i c a s t ) 等。 在i n t e r n e t 上实现应用层多播业务,很明显的优点是:一是应用层多播的状态在 主机系统中维护,不需要路由器保持组的状态,解决了网络的扩展性问题,网络可以 支持大量的多播组。二是多播应用可以随时部署,不需要网络设备的升级和功能扩展。 三是可以简化多播的控制、可靠等功能的实现,建立在网络连接之上的应用层多播可 以使用t c p 、u d p 服务,如可以利用t c p 的可靠和拥塞控制简化多播的可靠和拥塞 控制。和口多播技术一样,应用层多播技术也存在着一定的限制:一是端系统对i p 网络的了解有限,端系统本身的性能,以及节点参与组网时,只能通过探测获得一些 网络性能参数,选取的逻辑链路难以优化;二是主机不了解口网络的拓扑结构,只 能通过带宽和时延等外在的特性参数,以启发式的方式建立叠加网,逻辑链路不能较 好地利用质量较好的底层网络资源,叠加网的多条链路可能经过同一条物理链路。为 此,本论文将在对多播的逻辑拓扑的基础上,对多播中的端系统进行性能分析,力求 寻找逻辑链路的优化方式。 2 2 1 2 发展现状和前景 从现在的发展状况来看,应用层多播的研究还处于不成熟的阶段。目前的各种应 用层多播体系结构还只是针对某种特殊应用的解决方案,这些体系结构支持的应用不 同,组网协议的性能侧重点不同,并没有形成一种标准的体系结构。如果针对多种不 同特点的多播应用,在网络中部署多种不同的应用层多播协议,那么将来的主机中需 要实现多种应用层多播协议。因此,建立一个可以复用、可灵活配置的支持多种业务 的应用层多播服务层将是一个主要的发展方向,而且其兼容性也是一个难点。 应用层多播的研究,作为覆盖网络研究的一个方向,是国际上刚刚兴起的研究热 点。很多大学和研究院都在进行这方面的研究。从2 0 0 0 年6 月,卡耐基梅隆大学的 y hc h u 在a c ms i g m e t r i c s 上发表了一篇端系统多播的论文开始,标志着应用层 多播开始进入了热点研究。2 0 0 1 年,y h c h u 又在a c ms i g c o m m 上发表了在 1 0 硕士论文应用层多檑技术实现与性能分析 i n t e r a c t 上实现应用层多播的论文。同年,r a t n a s a m y 在a c ms i g c o m m 上发表了基 于p e e r - t o p e e r 网络的应用层多播论文c a nm u l t i c a s t p l l s q z h a n g 也在n o s s d a v 上发表了基于p e e r - t o - p e e r 网络的应用层多播的论文b a y e n x s t l 。2 0 0 2 年,应用层多 播的研究进入了更辉煌的一年。s u m a nb a n e r j e e 在a c ms i g c o m m 上发表了基于 n i c e 应用层多播的论文“”。b z h a n g 在i e e ei n f o c o m 上发表了h o s tm u l t i c a “】的 论文,m c a s t r o 在j s a c 上发表了s c r i b e 1 s l ,j l i e b e h e r r 在j s a c 上发表了论文,s y s h i 也在i n f o c o m 上发表了论文。 在2 0 0 3 年,a e l s a y e d 在i e e en e t w o r k 上发表了一篇关于目前应用层多播方 案的综述文章。s u m a nb a n e r j e e 也在i n f o c o m 上发表了新的论文。在这些论文中,研 究学者都提出了自己的应用层多播实现思路,对应用层多播路由协议中多播树计算算 法进行了研究。这些应用层多播方案具有不同的特点,适用的范围也不相同。其中对 于p e e r - t o - p e e r 覆盖网络上的应用层多播研究还处于探索阶段,目前的p e e r - t o p e e r 覆盖网络上的应用层多播方案只是利用了p e e r - t o p e e r 网络的动态哈希路由实现了多 播转发路径。对于应用层多播的模型、性能分析、性能优化都没有进行研究。而对于 在流媒体技术上的应用,到是出现了许多的性能分析,以及在安全多播中的更新机制 的性能优化分析。目前应用层多播的研究主要集中于视频会议系统、媒体流的分发系 统( 如视频广播) 和订阅分发系统( p u b l i s h s u b s c r i b es y s t e m ) 等。 本文将针对应用层多播在逻辑链路拓扑上,对端系统主机的性能以及多播模型的 系统稳定性进行分析,根据所分析的测量参数,能够优化多播的逻辑拓扑,从而达到 多播网络的优化与稳定。 2 2 2 应用层多播的优缺点 应用层多播的基本思想是在不改变网络设施,不依赖于网络层是否提供多播服务 支持的情况下,利用网络边缘的端用户或是专门架设的服务器处理资源和网络资源, 在应用层实现多播服务。目前实现应用层多播的基本技术是将多播组的所有端用户组 成一个应用层的逻辑o v e r l a y n e t w o r k ( 覆盖网络) ,利用覆盖网络实现多播组管理、 多播管理、多播数据分发等一系列多播相关的功能。 和疋多播增加网络机制的方法不同,应用层多播的基本思想是保持i n t e r n e t 原有 的简单、不可靠、单播的转发模型,由端系统来实现多播转发的功能。这也是著名的 “e n d - t o e n da r g u m e n t 所倡导的思想。在应用层多播算法的设计中,有以下一些假设: ( 1 ) 网络中的带宽和转发资源是相对丰富的,而服务器的能力是一个主要瓶颈。 使用应用层多播会比m 多播消耗更多的带宽,但是和单播方案相比,它还是可以有 效的降低服务器的负载和减少带宽的使用。 ( 2 ) 大多数参与多播的端系统可以贡献出一部分资源用于多播的转发。这个假设 1 1 硕士论文应用层多播技术实现与性能分析 并不是针对所有的应用层多播算法,但是不少的应用层多播算法都有这个假设。 ( 3 ) 上层应用对性能的要求并不很苛刻,可以容忍报文的丢失和较大的延迟。 i n t e m e t 的可靠性本来就无法完全保证,参与多播的主机性能也无法保证。所以,应 用层多播并不针对所有的应用,而主要针对那些对可靠性和性能要求较低的应用。应 用层多播的主要优势有2 点。首先,应用层多播便于实现和推广。它只需要改变端系 统,而不需要对路由器进行任何修改。其次,应用层多播便于针对特定应用进行优化, 可以针对不同的应用使用不同的实现方案,而不必像m 多播那样必须统一到一个模 型中。在上文关于应用层多播假设的叙述中,已经涉及了它的缺点。应用层多播的主 要缺点归纳如下p 副: ( 1 1 一般会比口多播使用更多的网络资源。 ( 2 ) 由于参与转发的端系统可能不稳定,导致多播转发的可靠性受到影响。 ( 3 ) 由于参与转发的端系统的性能无法保证,可能导致延迟、转发速率等性能的 下降。基于这些特点,目前应用层多播的研究主要集中于视频会议系统、媒体流的分 发系统( 如视频广播) 和订阅分发系统( p u b l i s h s u b s c r i b es y s t e m ) 等。应用层多播 的主要应用是实时的多媒体传输。一方面这利用了多媒体信息的性质,即在传输链路 质量下降的情况下,用户仍然可以利用收到的低速率的或者不完整的信息,这适用于 同一多播组中的多个用户可能接收能力不同的情况。而文件传输等可靠传输则没有这 样的性质。另一方面也发挥了多播“时间上集中、空间上分布”的特点。 2 2 3 应用层多播的路由协议 应用层多播路由协议与口多播路由协议的功能类似,用来计算多播分发树。应 用层多播路由算法利用端用户之间的m 单播路径,因此可以实现多播路径质量控制, 并且可以根据不同的应用需求设计具有不同特性的多播路由算法,而无须下层路由器 支持,非常灵活。应用层多播路由协议大致可以分为两个部分,也就是多播通信具有 两个层面的重要特征:控制层面和数据层面。其中,“控制层面”( c o n t r o l p l a n e ) 定义 了组成员的组织方式;而“数据层面”( d a t a p l a n e ) 决定了在不同的成员之间数据如何 传送。这两个方面的特征既可以是“有根的”( r o o t e d ) ,也可以是“无根 的”( n o m o o t e d ) 。也就是说,关于多播的拓扑,构造的多播树可以是有源树,也可以 是共享树。 据构建转发树的策略,可以将它们分成集中式和分布式两类。集中式协议,假设 有一个服务器知道成员之间的关系,即成员之间的拓扑,然后这个服务器运行最小延 迟、最大带宽、最小代价之类的算法来计算转发树,随后将转发树中节点之间的关系 发布给相应的节点。显然这种方法虽然简单,但是扩展性不好,同时存在服务器这样 一个关键节点,容易出现单点故障。 1 2 硕士论文 应用层多播技术实现与性能分析 分布式协议,由每个组成员运行应用层多播协议,分布地构造转发树。为适应系 统的动态性,保证多播传输的有效性,分布式协议还引入了控制和数据两种拓扑。控 制拓扑( m e s h ) q ,节点对之间存在多条路经,主要负责监视节点变化、维护网络的连通 性。数据拓扑f r r c e ) 就是指转发树。因此分布式协议可以分成m e s h 优先和t r e e 优先 两类。先构造m e s h ,然后再在m e s h 的基础上构建树的协议叫做m e s h 优先;先构建 树,再在树的基础上引入额外的边形成m e s h 的协议叫做t r e e 优先。二者在性能方面 表现不同。 厂集中:a 圳,瑚m ,如 应用层多播协议- i 广t r e e 彤魄:n i c e ,o r c a 幽y o i d ,d 口。h t c a 砒,e t c l 分布。t 黼髋一。,n 锄血,啦 图2 2 3 1 应用层多播协议分类 下面举例一些应用层多播的协议的实现 2 2 3 1m e s h 优先 在此类方案中,组的成员首先自己组织成一个网状的拓扑,即控制拓扑,每两个 成员之间有多条路径。在这个网状拓扑中,每一个成员都会保存这个组中其他的所有 成员的状态信息,而这个信息将会得到周期性的刷新。 ( 1 ) n a r a d a 8 8 】 目前较成熟的此类协议有n a r a d a ,是由c m u 多播通信组开发的最早的应用层多 播协议之一。c m u ( 卡耐基梅隆大学) 开展的一个端系统多播研究项目,是目前为止 最成功的一个项目。2 0 0 0 年,c m u 的研究表明,在端系统中实现多播功能的体系结 构是可行的,可以支持组成员在几百范围内、分布稀疏的、较小规模的多方通信。 n a r a d a 是c m u 的组网协议。n a r a d a 协议首先在多播成员之间建立一个网状的叠加网, 然后在叠加网上运行多播路由协议,建立一棵多播转发树。通过动态探测网络状态, n a r a d a 动态地对叠加网进行维护和改良。 1 1 加入新成员时多播树的建立 当有新成员加入时,n a r a d a 假定该成员能够知道组成员的列表,组成员列表中 至少应该包含一个组成员。n a r a d a 没有给出新成员获得组成员列表的具体方法。新 成员从列表中随机选择几个组成员并向它们发送加入消息。当任意一个组成员响应了 加入消息,本次加入过程就成功执行。新加入的成员开始与网状拓扑中的邻居节点交 换组成员信息,最终每个节点都知道新的成员信息。 成功加入后,此新成员开始和它的所有邻接点交换状态信息。n a

温馨提示

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

评论

0/150

提交评论