(计算机应用技术专业论文)简单多播文件传输协议.pdf_第1页
(计算机应用技术专业论文)简单多播文件传输协议.pdf_第2页
(计算机应用技术专业论文)简单多播文件传输协议.pdf_第3页
(计算机应用技术专业论文)简单多播文件传输协议.pdf_第4页
(计算机应用技术专业论文)简单多播文件传输协议.pdf_第5页
已阅读5页,还剩54页未读 继续免费阅读

(计算机应用技术专业论文)简单多播文件传输协议.pdf.pdf 免费下载

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

文档简介

摘要 i p 多播是开放式的、尽力而为的模型。它没有为上层提供任何服务质量和投递保证。 为了提高多播传输的可靠性,人们提出了大量的可靠多播协议。但是,由于不同应用的需 求差异很大,人们还没有能够设计出一种能满足所有应用的通用的可靠多播协议。到目 前为止,任何一种可靠多播协议都是针对某类应用而设计的,也没有一个可靠多播协议 成为标准。 本文分析了目前主流的可靠多播传输协议,这些协议主要是面向大规模通信应用设 计的。它们为了增强自身的可扩展性,都采用了一些比较复杂的技术。由于遥科学网络 中的文件传输应用的参与节点不多,同时考虑到现有的可靠多播协议不适合遥科学网络 中的文件传输应用的需求,本文针对遥科学地基网络拓扑结构和空间实验数据分发的特 点,在应用层设计了一个可靠多播文件传输协议简单多播文件传输协议( s 肛t p ) 。 为了降低协议对网络延时的敏感度和避免网络拥塞,s m f t p 采用分块、分趟的传输 方式。出于文件传输安全性的考虑,s m f t p 采用封闭式的组成员管理机制,这也为协议 未来在安全方面的扩充打下基础。s 舾t p 采用基于发送者和基于接收者相结合的错误恢 复机制,使用基于接收者的错误恢复机制报告错误,使用基于发送者的错误恢复机制通 知发送者可以释放哪些数据包的内存。 本文使用数学分析的方法对s m f t p 的吞吐量进行了分析,并将本协议的最大吞吐量 与其他类型协议的最大吞吐量进行了比较。一般地,可靠多播协议的性能瓶颈都在发送 端,我们发现在接收节点不多的情况下,s m f t p 的发送端的性能与其他协议有比较大的提 高而且由于采用聚合b l a c k 方法,在发送端附近的网络不易出现n a c k 风暴现象。 关键词:s m f t p ,可靠多播协议,文件传输,差错控制 s i m p l e m u l t i c a s tf i l em r a n s f e rp r o t o c o l s h i j u n ( c o m p u t e ra p p l i c a t i o nt e c h n o l o g y ) d i r e c t e db yl us h i w e n i p - m u l t i c a s ti sb a s e do na no p e n ,b e s t - e f f o r ts e r v i c em o d e l i td o e sn o tp r o v i d eq o so r d e l i v e r yg u a r a n t e e i no r d e rt oe n s u r et h er e l i a b i l i t yo ft r a n s f e r s ,al o to fr e l i a b i l i t ym u l t i c a s t p r o t o c o l sh a v e b e e n p m p o s e d h o w e v e r , n o n e o f t h e mi sa b l et os a t i s f ya l la p p l i c a t i o n s u pt o n o w , e a c hr e l i a b i l i t ym u l t i c a s tp r o t o c o li sd e s i g n e do n l yt os a r i s f ys o m et y p eo fa p p l i c a t i o n s , a n dn oo n eb e c o m e sas t a n d a r dp r o t o c 0 1 t h i sd i s s e r t a t i o na n a l y z e ss o m e p o p u l a rr e l i a b i l i t ym u l t i c a s tp r o t o c o l s ,w h i c ha r ed e s i g n e d f o rt h ea p p l i c a t i o n st h a tm a yh a v em i l l i o n so f n o d e s i no r d e rt oi m p r o v et h e i rs c a l a b i l i t y , t h e s e p r o t o c o l su s u a l l yu s es o m ec o m p l e xt e c h n o l o g i e s , a n d c a nn o t v a l i d l ys u p p o r tt h ef i l et r a n s f e r a p p l i c a t i o n sw i t hm u l t i p l er e c i p i e n t s i nat e l e s e i e n c en e t w o r k i nt h i sc o n t e x t , ar e l i a b i l i t y m u l t i c a s tf i l et r a n s f e rp r o t o c o lo f a p p l i c a t i o nl a y e r , s i m p l em u l t i c a s tf i l et r a n s f e rp r o t o c o l ,i s d e s i g n e dt os u i tt h eg r o u n dn e t w o r ka r c h i t e c t u r ea n dt h ec h a r a c t e r i s t i c so fs p a c ee x p e r i m e n t d a t ad i s t r i b u t i o ni nat e l e s c i e n c es y s t e m i no r d e rt or e d u c et h es e n s i t i v i t yo fn e t w o r kd e l a ya n da v o i dt h en e t w o r kc o n g e s t i o n , s m f t p e m p l o y s t h et r a n s f e rm o d e lt h a td i v i d e saf i l ei n t oo n eo rm o l eb l o c k sa n dt r a n s m i t si t s d a t ai n p a s s e s o u to ft h es e c u r i t yc o n c e r n , s m f t pt a k e st h ec l o s eg r o u pm e m b e r s h i p m a n a g e m e n ts o l u t i o n , w h i c hc a nf a c i l i t a t et h ee x t e n s i o no fs m f t p i nt h ef u t u r e s m f t p a d o p t sam i x e dm e c h a n i s mc o m b i n i n gs e n d e r - r e l i a b l ea n dr e o e i v e r - r e l i a b l ee r r o rr e c o v e r y m e a n s t h er e o e i v e r - r e l i a b l ee r r o rr e c o v e r ya p p r o a c hi su s e dt or e p o r tt r a n s f e re r r o r s ,a n dt h e s e n d - r e l i a b l ee r r o rr e c o v e r ya p p r o a c hi su s e dt oi n f o r mt h es e n d e rw h i c hb u f f e rs p a c ec a nb e f r e e d f i n a l l y , t h ea p p r o a c h o fa n a l y t i c a le v a l u a t i o ni su s e dt od e t e r m i n et h em a x i m b m t h r o u g h p u t so fs m f t p , a n d i ti sc o m p a r e dw i t ht h eo t h e rt y p ep r o t o c o l s i ng e n e r a l ,s e n d e ri s t h et h r o u g h p u t sb o t t l e n e c ko fr e l i a b i l i t ym u l t i c a s tp r o t o c o l s ,a n dt h ec o n c l u s i o ni st h a t w h e nt h en u m b e ro f r e c e i v e r si sn o tv e r yl a r g e ,s a ys e v e r a lh u n d r e d s ,t h et h r o u g h p u t so f s e n d e r s i d eo fs m f t pa r eh i g h e rt h a no t h e rp r o t o c o l s , a n dt h ep o s s i b i l i t yo f n a c k i m p l o s i o no n t h e n e t w o r kn e a rs e n d e rs i d ei sr e l a t i v e l yl e s s k e y w o r d s :s m f t p , r e l i a b i l i t y m u l t i c a s tp r o t o c o l ,f i l e 缸a n s f e r , e r r o rc o n t r o l l 声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得 的研究成果。就我所知,除了文中特别加以标注和致谢的地方外,论文中 不包含其他人已经发表或撰写过的研究成果。与我一同工作的同志对本研 究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。 作者签名:多军 日期:铲5 t 铲 关于论文使用授权的说明 论文被查阅和借阅;并可以公布论文的全部或部分内容,可以采用影印、 作者签名:多珲导师签名参文日期:劲午工修 第一章引言 1 1 研究背景 第一章引言 如图1 1 所示,遥科学 1 网络系统分为天基网和地基网两个部分。遥科学地基网络 2 在逻辑上是一个以地面遥科学管理中心为主节点的星状结构。通常情况下,地面遥科 学管理中心工作站接收来自空间试验室返回的试验数据,然后再通过遥科学地基网络发 送给在i n t e r n e t 上的各个研究机构。 目前,遥科学地基网使用t c p i p 进行可靠数据传输。如果遥科学工作站要向n 个不 同用户传输数据,它必须与每个用户单独建立一个t c p 连接。并且要为每个用户单独蝤 发送一次数据单元。遥科学工作站在传输数据的同时还有维持n 个不同的连接,每个数 据单元也要发送n 次,因此随着接收节点数量的增加,遥科学工作站主机和它附近网络 的负担也会随之增加。如果不改变数据传输方式,当接收节点增加到一定的数目,遥科 学工作站主机和它附近网络承受不了这么大的负担。 图1 1 遥科学网络拓扑结构 多播技术传输数据可以很好地解决上面所提到的问题。i p 多播技术 3 是s t e v e d e e r i n g 于1 9 8 8 年在他的博士论文中提出的,它是实现单点到多点或多点到多点的网络 通信技术,是对传统的单播方式和广播方式的一种改进。多播技术可以同时将一个数据 包发送给需要这个数据包的接收者而且仅发送给需要这个数据包的接收者,并且保证任 中国科学院硕士学位论文简单多插文件传输协议 何数据单元在任何一条链路上仅出现一个备份。与单播和广播相比,多播技术的优势是: 即使用户数量成倍增加,主干网络带宽不需要随之增加,而且服务器的开销也不会增加。 因此如果遥科学工作站采用多播方式向各接收节点传输数据,遥科学工作站和它附近网 络的负担不会随着接收节点的增加而增大。 遥科学网络中的试验数据传输一定要求安全、可靠。而i p 多播模型是一种开放式的、 只提供尽力而为服务的模型 4 ,它不向上层提供任何服务质量和安全保证。这种模型的 主要特点是:1 ) 发送方不需要了解组成员关系和接收节点的信息,只要知道多播地址就 可以向这个组发送数据;2 ) 接收节点可以随时加入或离开某个组,而无需任何权威主体 同意:3 ) i p 多播与i p 单播一样只提供尽力而为的服务,并且多播应用使用的传输层协 议是u d p 。显然,i p 多播保证不了遥科学地基网络中的文件传输的安全性和可靠性。因 此,本文针对遥科学地基网络中文件传输应用的特点,在应用层上设计一个可靠多播文 件传输协议。我们称之为简单多播文件传输协议( s m f r p ,s i m p l em u l t i c a s t f i l e t r a n s f e rp r o t o c 0 1 ) 。 1 2 研究目标 i n t e r n e t 上出现许多应用,如;分布式计算,文件传输,数据分发和软件升级等等, 这些既需要多播技术又要求数据传输可靠,因此自从i p 多播提出开始,人们在可靠多播 协议方面进行了大量的研究,如:x t p 、r m p 、r m t p 、s p , m 、l b r m 等等。但是还没有一 个可靠多播协议成为标准,其原因是:不同的应用对可靠多播的需求差异很大,研究者 很难找到一种适合所有应用的通用的可靠多播协议 5 。目前出现的可靠多播协议都是针 对大规模通信应用而设计的,而遥科学网络中的文件传输应用的参与节点不是很多,如 果使用这些协议传输文件,开销太多。本文根据遥科学网络中的文件传输应用的特点, 提出了简单多播文件传输协议。下面简单介绍我们的主要设计目标。 1 单点对多点的传输方式 多播应用的传输方式一般分为:单点对多点的方式、多点对单点的方式和多点对多 点的方式。由于这三种多播传输方式差别比较大,一般的协议都只针对一个传输方式。 在遥科学网络中,文件通常是从一个服务器传输到多个客户端。根据这个特点,简单多 播文件协议只考虑单点对多点的传输方式。 2 绝对可靠性保证 s m f t p 提供绝对可靠服务,也就是说,如果s m f t p 传输数据出错或丢失时,接收者能 发现,而发送者也能确定接收者已经在规定的时间范围内正确接收了所有的数据。但是, 它不保证数据包的有序性,只为应用程序提供数据包的序列号,以便让应用程序能根据 序列号将数据包插入文件的正确位置,这是为了提供协议的传输效率。如果协议保证数 据包的有序性,接收端有时为了等待一个数据包而缓存已经收到的其他数据包。以便将 所收到的数据包按照顺序传输给应用程序。在协议等待这个数据包的时候,应用程序是 第一章引言 空闲的,而当接收端收到这个数据包后,协议会将所有收到的有序数据包都传送给应用 程序处理,这时又会给应用程序造成压力。相反地,如果协议不保证数据包的有序性, 协议每收到个数据包就传输给应用程序,与前种情况相比,应用程序任何时候收到的 数据包都差不多,不会出现突发式的处理压力 6 。 3 安全性保证 由于在遥科学网络中传输的试验数据一般都需要保密。但是如前面所述,i p 多播是 开放式的协议,没有严格的组成员控制机制,无法保证数据不被非法节点接收。因此, s m f t p 采用封闭式的组成员管理机制以便保证数据不被非法节点接收。 4 接收端自动配置 为了简化接收端的设置,s m f t p 在会话阶段将各种参数传输给接收节点。接收节点只 要设置周知多播地址和周知端口,通过周知多播地址侦听发送节点是否正在传输文件。 5 高容错性 与f t p 类似,, s m f t p 也支持断点续传。当发送端或接收端因某种原因出错而重启后, s m f t p 不需要重传以前已经传输成功的数据包。s m f t p 还支持后加入,也就是当传输过程 已经开始,但还有接收节点要加入这次会话,发送节点可以视情况决定是否让这个接收 节点加入这次会话。 6 简单 s m f t p 是针对遥科学网络中的文件传输应用而设计的,这种应用的参与节点规模比较 小,因此,s m f t p 没有着重考虑协议的可扩展性。这样我们可以尽量优化协议,让协议 尽可能地易于实现。 1 3 本文结构 本论文分为六章,全文结构安排如下: 第一章是全文的绪论部分,简单介绍了本课题的研究背景、研究意义及研究目标。 第二章介绍了多播技术的产生原因、发展前景和发展中遇到的问题,同时也对多播 技术的一些基础知识进行了简要的介绍。 第三章分类介绍了目前出现的可靠多播协议,以及他们的优缺点;并分析了影响可 靠多播协议设计的因素和设计可靠多播协议所要考虑的关键技术。 第四章介绍了我们根据遥科学地基网络拓扑结构和试验数据分发的特点而设计了一 个可靠多播文件传输协议简单多播文件传输协议。s m f r p 不仅适用于遥科学地基网 络中的应用,它同样适合于其他小规模的、单点对多点的文件传输应用。 第五章我们对$ m f t p 的性能进行了数学分析,并将它的吞吐量与其他的几种可靠多 播协议的吞吐量进行了比较。 第六章总结了全文,并列出了下一步的研究工作。 第二章多播技术概述 2 i 多播技术的产生原因 第二章多播技术概述 随着信息技术的飞速发展,i n t e r n e t 上出现了许多新的应用,如:视频会议、数据 分发、大规模协作计算、网络游戏等等。这些应用的共同特点都依赖于从一个主机向多 个主机或者从多个主机向多个主机发送同一信息的能力,而且这些应用的参与节点可能 达到数十万个。这些应用如果采用单播方式实现,i p 包的重复发送会浪费掉大量带宽, 也增加了服务器的负载。而采用广播方式实现时,不仅会将信息发送给不需要的主机而 浪费带宽,也可能由于路由回环引起严重的广播风暴。所以传统的单播和广播通信方式 不能有效地解决这些应用所面临的问题,因而一种新型的传输方式一i p 多播技术被提 出。 在单播方式下,发送者每次只将它的数据包发送给一个接收节点。如果有另外多个 节点希望同时获得这个数据包的拷贝是不可能的,发送者必须向每个希望接收此数据包 的节点发送一份单独的数据包备份( 如图2 1 所示) 。这种巨大的冗余会带来很大的代价。 首先,会给发送源带来沉重的负担,因为它必须为每个接收节点发送一次数据包备份, 这会使得负担过重的主机的响应会大大延长;其次,数据包的重复发送还会白白浪费掉 大量带宽,并对路由器和交换机的性能也提出了更高的要求。 广播可以让发送者同时将相同的数据包发送给所有的接收者( 如图2 i 所示) 。接收 者可以选择自己需要的数据包,丢弃不感兴趣的数据包。从发送者角度来看,广播可以 一次将相同的数据包发送给所有接收者,节省了发送者的处理时间( 发送次数减少了) , 但是广播方式将数据包发送到网络所有的链路上,极大的浪费了网络带宽,同时也浪费 了那些不需要这个数据包的节点的处理时间。因此广播只用于特殊用途,如:一些网络 协议用它广告状态信息,并且除非特别配置,路由器一般不会转发i p 广播信息包。 从上面对传统的数据传输方式的分析,我们可以得出结论,理想的数据传输方式是: 可以同时将一个数据包发送给需要此数据包的接收者而且仅发送给需要此数据包的接收 者( 如图2 1 所示) 。多播就是这样的数据传输方式。在多播方式中,所有接收相同数据 包的节点被划分为同一组,并分配一个组地址;发送者将数据发送给这个组地址,所有 的组成员就可以收到数据包,而其他非成员的节点不会收到此数据包。可见,多播传输 方式是既可以节省网络带宽又可以节省发送者处理时间的理想的通信方式。 中国科学院硕士学位论文简单多播文件传输协议 2 2 多播技术的市场前景 组成8 掣貂式 图2 1 三种不同的传输方式比较 i p 多播技术有效地解决了单点到送多点和多点到多点之间的通信问题,实现了i p 网络中点到多点的高效数据传送,能够大量节约网络带宽、降低网络负载。作为一种与 单播和广播并列的通信方式,多播的意义不仅在于此。更重要的是,可以利用网络的多 播特性方便地提供一些新的增值业务。 2 2 1 视频点播和网络电视 从目前的网络发展来看,传统的音频和视频服务将会慢慢地集成到网络服务中,这 些服务需要更大的带宽和新的传输方式。传统的电视和无线播音服务都是通过广播的方 式到达接收者。如果要将这些服务集成到网络中,显然是不能用广播方式来传输数据, 但是使用单播方式也要求服务器具有很强的处理能力,并且网络负载会随着接收节点数 量的增加而增大。多播技术是比较合适的数据传输方式,使用多播技术可以很容易地限 制数据仅发送给那些需要数据的接收节点。 2 2 2 多媒体会议 目前,音频、视频会议是一种十分重要的服务,尤其对跨国公司来说更重要。远程 会议可以节约大量的费用并提高员工之间的合作效率。在现实中,i n t e r n e t 已经将给各 公司连接在一起,因此在网络中提供音频和视频会议服务是比较合理和经济的,但是以 前这种网络服务由于缺少多播技术的支持而发展比较缓慢。自从多播技术被提出以来, 人们已经开发了许多出色的i p 多播多媒体应用程序,允许通过i p 多播实现多点对多点 的音频或音频视频会议,如:r a t ,v i c 等等。 2 2 3 数据分发 数据分发是i p 多播应用的另一个领域。通过使用i p 多播,公司可以采用“推”的 模式进行文件和数据库更新。这项技术允许公司每天夜里向他们的远程办公室发布新的 信息,如:价格和产品信息。企业可使用软件通过卫星链路向所属分公司分发软件升级 和数据更新消息,一次性向所有的分公司传送一种数据,而不是依次向每个分公司重发, 6 第二章多播技术概述 节省了时间和通信费用。 2 2 4 实时数据传输 实时数据传输是使多播深受欢迎的又一应用领域。一个好的例子是将股票信息发送 到交易大厅的工作站。以前只有时间紧迫的信息才被传输到交易大厅的交易员。现在越 来越多的金融和投资公司试着使用i p 多播将信息送交给他们的客户,以及另一些带来效 益的金融和交易机构。通过指定不同的财务分类( 债券、运输、药品等等) 给不同的多 播组,交易员使用他们的工作站来接收他们感兴趣的实时金融数据。i p 多播目前在该领 域已获得一定范围的应用,美国波士顿银行已在其企业网上使用多播向2 5 0 个贸易商行 和其他部门分发市场数据 7 。 2 2 5 网络游戏和仿真 i p 多播非常适合于网络游戏或者仿真应用。目前虽然很多的游戏和仿真支持连线方 式,事实上这些应用都使用单播方式进行通信。这种通信方式对参与者的数量有比较大 的限制。如果参与者采用多播方式通信,参与节点只需进入i p 多播组就可以开始发送和 接收游戏或仿真数据,把仿真数据分成多个信息流,然后通过分隔的”多播组进行通信 能进一步扩展这种概念。 2 3 1 多播协议体系结构 根据协议的作用范围,多播协议分为主机一路由器之间的协议( 组成员管理协议) , 以及路由器一路由器之间协议( 多播路由协议) 。组成员管理协议包括互联网组管理协议 i g m p 8 9 i o 和多播监听发现协议岫 1 1 ,其中1 6 m p 用于i p v 4 中的多播组成员管 理,b i l l ) 用于i p v 6 中的多播组成员管理。多播路由协议又分为域内多播路由协议和域间 多播路由协议两类。域内多播路由协议包括距离矢量多播路由挤议( d v 瓶p ) 1 2 、最短 路径优先多播( i i o s p f ) 1 3 、密集模式协议无关多播( p l u - d 9 1 4 、稀琉模式协议无关 多播( p i m - s 吣 1 5 等协议,域间多捶路由协议包括m b g p 1 6 、胚d p 1 7 】等协议。 通过i c , m p 或m l d ,路由器可以建立起本地网的组成员关系信息,具体地说,就是路 由器通过组成员管理协议了解与它直接相连的链路接口下有哪些多播组的成员。域内多 播路由协议根据i c , g p 或肌d 维护的这些多播组成员关系信息,运用一定的多播路由算法 构造多播分发树,在路由器中建立多播路由状态,路由器根据这些状态信息转发多播数 据包。域间多播路由协议根据网络中配置的域间多播路由策略,在各自治系统间发布具 有多播能力的路由信息以及多播源信息使多播数据能够在域间转发。 中国科学院硕士学位论文简单多插文件传输协议 2 3 2 组成员管理协议 2 3 2 1 互联网组管理协议 i g m p 是i p v 4 网络中的组成员管理协议,运行于主机和与主机直接相连的多播路由 器之间。i g m p 实现的功能:1 ) 主机通过i g 忡通知本地路由器它希望加入并接收某个特 定多播组的信息;2 ) 路由器通过i g m p 周期性地查询本地局域网内某个已知组的成员是 否处于活动状态( 即该网段是否存在属于某个多播组的成员) ,实现本地局域网的组成员 关系的收集与维护。在i g 船中,路由器记录的信息是某个多播组在本地是否有组成员, 而不是多播组与主机之间的对应关系。 到目前为止,i g m p 有三个版本。i g 肝v l 8 中定义了基本的组成员查询和报告过程; 目前通用的是i g 即v 2 9 ,在i g 御v l 的基础上添加了组成员快速离开的机制; i g m p v 3 1 0 中增加的主要功能是成员可以指定接收或指定不接收某些多播源的报文。以 下着重介绍i g m p v 2 协议的原理。i g m p v 2 的原理如图2 。l 所示。 当同一个网段内有多个多播路由器时,i v 2 通过查询器选举机制从中选举出唯一 的查询器。查询器周期性地发送通用组查询消息进行成员关系查询,主机发送报告消息 来响应查询。主机发送报告消息的时间具有随机性,当检测到同一网段内有其它成员发 送同样的消息时,就抑制自己的响应。如果有新的主机要加入多播组不必等待查询器 的查询消息,而是主动发送报告消息。当要离开多播组时,主机发送离开组消息:查询 器收到离开组消息后,发送特定组查询消息来确定是否所有组成员都己离开。+ 对于作为 组成员的路由器而言,其行为和普通韵主杌一样,响应其它路由器的查询j 通过上述机制,在多播路由器里建立起一张表,+ 记录路由器的每个接口所对应的子 网上都有哪些组的成员。当路由器接收到某个组的数据包后,只向那些有该组成员的接 第二章多播技术概述 口上转发数据包。至于数据包在路由器之间如何转发,则由路由协议决定。 2 3 2 2 多播监听者发现协议 m l d 是从i g 肝v 2 协议中派生出来,专门用于i p v 6 多播的组成员管理。其主要功能 为:i p v 6 路由器利用m l d 协议发现直接相连的链路上是否有多播组成员以及相邻的路由 器正在监听哪些多播地址。i p v 6 路由器上运行的多播路由协议根据这些信息,保证多播 包能被传送到正确的接收者。虽说m l d 协议的前身是i g w p v 2 ,但是m l d 协议没有使用i g m p 报文格式,而是使用全新的i v 6 的报文格式,m l d 协议就是i c m p v 6 协议的一个子集。 2 3 3 多播路由技术 与单播路由协议相比,多播路由协议复杂得多。为了避免数据重复,多播路由协议 要在数据传输前构造一个多播分发树,然后在数据传输过程中动态地维护多播分发树。 各种路由协议的区别主要在于构建和维护多播分发树的机制不同。下面将讨论各种典型 的多播路由协议。 2 3 3 1 域内多播路由协议 与单播路由一样,多播路由也分为域内和域间两大类。目前域内多播路由相对于域 间多播路由来说已比较成熟,在众多的域内路由协议中,d v v i r p 、m o s p f 、p i m - d m 和p i m - s m 是目前应用得最多的多播协议。 1 距离矢量多播路由协议 距离矢量多播路由协议( d v m r p ,d 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 gp r o t o c 0 1 ) 是第一个在m b o n e 上得到普遍使用的多播路由协议,它在r i p 协议的基础上扩充了支 持多播的功能。与r i p 协议不同的是:r i p 是计算路由器到目的地的最佳下跳;而d v 豫p 是根据路由器到源方向的上一跳的信息来构建分发树的。d v l 4 r p 协议首先通过发送探测 消息来发现邻居,然后通过路由交换来进行路由选择和确定上下游依赖关系。 早期的啪采用t r p b 算法进行多播转发,现在的姗采用逆向路径多播( r p m ) 算法进行多播转发 1 8 。当多播源第一次发送多播包时,使用t r p b 算法沿着发送源的多 播分发树向下转发多播包。当叶子路由器下的本地网络没有组成员时,它向其上游路由 器发送剪枝消息,对多播分发树进行剪技。上游路由器收到剪枝消息后将收到此消息的 接口设置为剪枝状态,并向此接口停止转发数据。每个接口的剪枝状态都有一个超时定 时器,当定时器超时后,剪枝状态又重新变为转发状态,路由器再次这些分支转发多播 数据包。另外,当剪枝区域内出现了多播组成员时,下游也不必等待上游剪枝状态超时, 可咀主动向上游发送嫁接消息,以使剪枝状态变为转发状态。可见,d v m r p 使用“扩散 与剪枝”机制来维护分发树,转发特点可以概括为“被动接受,主动退出”。 在多路访问网络中,当有两个或多个的多播路由器时,网络上可能会重复转发包。 为了防止这种情况出现,在多路访问网络上,d v 4 r p 为每个发送源选择了一个唯一的转 发器。 9 中国科学院硕士学位论文简单多播文件传输协议 尽管d v m r p 已经被推广应用到m b o n e 和其他的域内多播网络,但由于它的可扩展性 比较差,d v 脉p 很难被用到大范围的多播环境中。d v m r p 可扩展性差主要表现为 1 9 ;1 ) d v e i p 使用跳数作为计量的尺度,而且其上限为3 2 跳;2 ) d v 腿p 具有距离向量协议的所 有限制,如:缓慢收敛和定期路由更新机制等。 2 组播开放最短路径优先协议 组播开放最短路径优先协议( m o s p f ,m u l t i c a s t0 p e ns h o r t e s tp a t hf i r s t ) 是o s p f 协议的一个扩展。并通过o s p f 路由表的信息获得网络拓扑的变化。m o s p f 路由器除了进 行多播路由选择外还要进行正常的o s p f 单播路由选择。与o s p f 一样,m o s p f 也是使用 层次路由:区内多播路由,区间多播路由,自治系统问多播路由。 当发送源和组成员都在同一区域,可以使用m o s p f 区内多播路由选择。在区内多播 路由选择中,m o s p f 路由器利用组成员关系l s a 的信息和d i j k s t r a 算法来为任何( s ,g ) 对构造s p t 。m o s p f 使用一种按需计算方案,即除非g 组收到来自网络s 的源的第一个多 播信息包,否则m o s p f 路由其不进行( s ,g ) s p t 的计算,丽是用原来缓存的信息。 当有一个或多个接收节点与多播源不在同一个区域时,这就需要利用区间m o s p f 多 播路由选择。m o s p f 协议中的区间多播转发器( i a l 4 f ) 与o s p f 协议中的边界路由器( a 职) 类似,它的主要任务是:1 ) 汇总组成员关系:2 ) 在区域之间转发多播包。为了让主干 路由器知道哪些i a m f 连接的区域有活动的组成员,i a 腼必需将那些非主干区域的组成 员关系汇总起来,并通过组成员关系链路状态通告向主干区域扩散这些信息。与0 s p f 链路状态通告不同的是组成员关系是单向扩散。 m o s p f 自治系统间多播路由与m o s p f 区间多播路由类似,也定义了自治系统间多播 转发器( 也被设为通配多播转发器) ,它负责把多播信息在m o s p f 域内外来回转发。 关于路由器d i j k s t r a 计算带来的可扩展性问题值得注意 1 9 :m o s p f 的最大优点是 与o s p f 一样对网络拓扑的变动快速响应能力。然而,这个能力是以对路由器c p u 资源的 巨大消耗为基础的,而且随着网络中( s 。g ) 对数量的增加,这种消耗也在迅速增加。 3 协议无关组播协议一密集模式 在协议无关组播协议一密集模式( p i m - i 瑚,p r o t o c o li n d e p e n d e n t m u l t i e a s td e n s e m o d e ) 域中,运行p i m - d w 协议的路由器周期性地发送h e li o 消息,用以发现与之相邻 的p i m 路由器,并且在多路访问网络中选举指定路由器( d r ) ,然后根据单播路由表的 信息来确定上下游依赖关系。 p i md m 与d v m r p 十分类似,当多播源第一次发送多播报文时,使用t r p b 算法沿着 发送源的多播分发树向下转发多播数据包。p i m _ _ d m 也使用“扩散与剪枝”机制来建立和 维护分发树。它与d v i 哑r p 主要的不同是: 1 ) p i m d m 独立于任何单播路由协议,而d v m p , p 依赖具体的单播路由协议。 2 ) p i m - d m 在传送多播数据包时向所有下游接口广播,而d v m r p 向传输树的孩子节 点转发多播包。显然,p i m - d m 需要处理重复包而消除了对路由协议的依赖和避免了因计 算每个路由器的孩子接口所需要的开销。 第二章多播技术概述 3 ) p i m - d m 和d v m r p 的剪枝机制不同。p i m - d m 采用“剪枝否决”机制,p i m 路由器 接收到剪枝消息时,它首先随机延时一段时问等待其他路由器发送嫁接消息来否定此剪 枝消息。如果定时器超时后,这个剪枝消息还没有被否决,则剪枝生效;而d v m r p 只有 等所要下游路由器都提出剪枝请求后,才发送剪枝消息给他的上游路由器。 p i m - d m 与d v m r p 同属于密集型多播路由协议,但p i m _ d m 的扩展性能比d v m r p 的扩 展性能好得多,因为p i m - d m 路由器利用基本的单播路由表的信息来执行r p f 功能。p i md m 适合于那些组成员比较多,带宽消耗不成问题高速网络。 4 协议无关组播协议一稀疏模式 在协议无关组播协议一稀疏模式( p i m - s m ,p r o t o c o li n d e p e n d e n tm u l t i c a s ts p a r s e m o d e ) 域中,运行p i m - s m 协议的路由器周期性地发送h e l l o 消息,用以发现邻接的p i m 路由器,并且负责在多路访问网络中进行d r 的选举。d r 负责为与其直连的组成员向多 播树根节点的方向发送“加入剪枝”消息,或为与其直连的多播源向多播分发树发送数 据。 p i m - s m 与已存在的密集模式协议( d v m r p 。m o s p f 和p i m _ d m ) 有两个关键的区别: 1 ) 在p i m - s m 协议中,路由器需要明确地宣布他们想要接收某个多播组的数据的意 愿,而密集模式协议假定所有路由器都需要接收多播数据包,除非他们明确地发送剪枝 消息。 2 ) 在p i m - s m 中有核心点( i i p ) 的概念。在稀疏模式域中,有一些路由器充当r p , 而且每组在给定时间内有一个唯一的r p 。每个想要接收多播数据包的路由器必须向此组 的r p 发一个加入消息。另外,多播源都先将多播数据包发送给i i p ,然后由r p 向组内各 成员发送多播数据包。p i n - s m 支持从以即为根的共享树到有源树的转换。在p i m - - s h 中, 每个接收者都必须先通过显式方式的加入共享树,但是可以根据多播数据包的传输速率 决定从共享树转向有源树。 p i m - s m 还涉及到r p 的选择机制。在p i m - s m 域内配置了一个或多个候选自举路由器 ( c a n d i d a t e - b s r ) ,使用一定的规则从中选出自举路由器( b s r ) 。p i m - s m 域还配置有候 选r p 路由器( c a n d i d a t e - r p ) ,这些候选i l p 将含有它们地址及可以服务的多播组等信息 包以单播方式发送给b s r ,再由b s r 定期生成包括一系列候选r p 以及相应的组地址的 “自举”消息,“自举”消息在整个域中逐跳地发送,路由器接收并保存这些“自举” 消息。若d r 从直连主机收到了i o i p 加入报文后,如果它没有这个组的路由信息,将使 用h a s h 算法将组地址映射到一个候选r p ,然后朝r p 方向逐跳地多播“加入剪枝”消 息;若d r 从直连主机收到多播数据包,如果它没有这个组的路由信息,也将使用h a s h 算法将组地址映射到一个候选r p ,然后将多播数据封装在注册消息中单播发送到r p 。 在多路访问网络中,p i m - s m 还引入了以下机制:使用断言机制选举唯一的转发者, 用以防止向同一网段重复转发多播数据包:使用加入剪枝抑制机制减少冗余的加入剪 枝消息;使用剪枝否决机制否决不应有的剪枝行为。 中国科学院硕士学位论文简单多播文件传输协议 2 3 3 2 域问多播路由协议 域问多播路由协议仍然处于研究和试验阶段,域间多播路由有两种解决方案,一种 是使用“p i m _ s m m b g p m s d p ”两层协议结构,这只是一个短期的过渡解决方案。其中, m b g p ( 多播边界网关协议) 用于在自治域之间交换多播路由信息,m s d p ( 多播信源发现 协议) 用于在i s p ( 互联网内容提供商) 之间交换多播源的信息,p i m - s m 用作域内的多 播路由协议。另一种是设计新的全互联网范围的多播协议来降低协议的复杂性。 b g 卿( b o r d e rg a t e w a ym u l t i c a s tp r o t o c 0 1 ) 就是第一个作为全互联网范围长远解决方案 而被提议的多播协议。它作为域问或外部协议而存在,每个域内可以运行任意的多播协 议( 例如,c b t 或p i ms m ) ,还可以建立不同的多播源和建立最新的分配支路,并在必要 时建立共享的多播树。 1 “p i m _ s i 岫g p m s d p ”两层协议结构 p i m - s m 在前面已经作了介绍,这里重点介绍她g p 和m s d p ,以及p i m - s m i 麟p m s d p 组合方案的工作过程。 i ) 多播边缘网关协议( 鹏g p m u l t i c a s tb o r d e rg a t e w a yp r o t o c 0 1 ) 域问路由的首要问题是路由信息如何在自治系统之间传递,由于不同的a s 可能属 于不同的运营商,因此除了距离信息外,域间路由信息必须包含运营商的策略,这是与 域内路由信息的不同之处。 目前使用最多的域间单播路由协议是b g p - 4 。为了实现域间多播路由信息的传递, 必须对b g p 进行改动,因为多播的网络拓扑和单播拓扑有可能不同,这里既有物理方面 的原因,也有策略方面的原因。网络中的一些路由器可能只支持单播不支持多播,也可 能按照策略配置不转发多播报文。为了构造域问多播路由树,除了要知道单播路由信息 外,还要知道网络中哪些部分是支持多播的,即多播的网络拓扑情况。 b g 卜4 2 0 】已经被证明是一个有效的、稳定的单播域问路由协议。在r f c 2 8 鸫 1 6 中 规定了对b g p 进行多协议扩展的方法扩展后的b g p 协议( m b g p ,也写作b g p _ 4 + ) 不 仅能携带i p v 4 单播路由信息,也能携带其它网络层协议( 如多播、i p v 6 等) 的路由信 息,携带多播路由信息只是其中一个扩展功能。 有了m b g p 之后,单播和多播路由信息可以通过同一个进程交换,但是存放在不同 的路由表里。由于m b g p 是b g p - 4 协议的一个增强版,因此b g p - 4 所支持的常见的策略和 配置方法都可以用到多播里。 2 ) 多播信源发现协议( 惦d p ,m u l t i c a s ts o u r c ed i s c o v e r yp r o t o c 0 1 ) 对于i s p 来说,不希望依靠竞争对手的即转发多播流董,但同时又要求无论信源 的r p 在哪里,都能从信源获取信息发给自己内部的成员。m s d p 就是为了解决这个问题 而提出的。在m s d p 里使用的是域间信源树而不是公共树,而且要求域内多播路由协议必 须是p i m - s m 。 在m s d p 中。某个域内的r p 使用t c p 连接与其它域内的r p 建立m s d p 对等关系,用 第二章多播技术概述 这些对等关系交换信源信息。如果本地的接收者要接收其它域的信源发出的报文,则使 用与p i m - s m 中同样的方法构造信源树。 p i m - s

温馨提示

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

评论

0/150

提交评论