(计算机软件与理论专业论文)协议无关组播稀疏模式pimsm的设计与实现.pdf_第1页
(计算机软件与理论专业论文)协议无关组播稀疏模式pimsm的设计与实现.pdf_第2页
(计算机软件与理论专业论文)协议无关组播稀疏模式pimsm的设计与实现.pdf_第3页
(计算机软件与理论专业论文)协议无关组播稀疏模式pimsm的设计与实现.pdf_第4页
(计算机软件与理论专业论文)协议无关组播稀疏模式pimsm的设计与实现.pdf_第5页
已阅读5页,还剩52页未读, 继续免费阅读

(计算机软件与理论专业论文)协议无关组播稀疏模式pimsm的设计与实现.pdf.pdf 免费下载

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

文档简介

北京邮电大学硕士研究生毕业论文 协议无关组播稀疏模式( p i m s m ) 的设计与实现 前言 通过网络进行的数据和信息传输已经成为现代商业社会重要而又不可缺少的组成部分和赖以生存的 基础。近年来,随着信息技术的迅猛发展,网络应用大量增加,使得原来已经存在的庞大的数据传输量 成倍地增长。 在已经被i n t e r n e t 普遍采用的工作方式中,数据传输一般通过单播和广播两种方式进行。其中,单 播方式是传统的点对点数据传输,在发送方和每一接收方需要单独的数据通道,从一台服务器送出的每 个数据包只能传送给一个客户机,现已为绝大部分数据传输业务所采用。广播方式则允许一个主机将同 样的信息发送到同一网络内的所有其他主机。 面对已经庞大而且还在不断增加的数据传输业务,这两种方式越来越凸显出自身的缺陷。在目前的 情况下,无论如何改善硬件基础条件,单播也无法完成将数据分发给分布在i n t e r n e t 上的数十万台计算 机的传输业务。由于自身独有的性质,单播难以满足现今灵活而多样的业务要求,企业网络规模的扩大 也使得单播方式应用的空间更为狭窄。 基于以上情况,人们一直在寻找一种更符合商业运作模式、更为灵活的数据传输方式。由于从一个 主机向多个主机或者从多个主机向多个主机发送同一信息的业务已经在现有的业务总量中占据了相当大 的比例,因此人们提出了组播的概念。 本论文着重于计算机网络环境中的组播技术研究,重点研究组播无关组播稀疏模式( p i 妒s m ) 的相 关技术,并在v l r t 系列路由器上设计实现p i m s m 。 第l 页 北京邮电大学硕士研究生毕业论文协议无关组播稀疏模式( p i m s m ) 的设计与实现 第1 章组播概述 1 1 组播介绍 1 1 1 单播通信模型 口通信领域的一头是口单播通信,在此源m 主机向指定的目标主机发送信息包。在这种情况下, i p 信息包中的目标地址就是i p 网络中唯一的主机地址。通过路由器将这些口信息包从源主机发送到目 标主机。在源主机和目标主机之间的路径上的每一个路由器使用单播路由信息库,并根据信息包中的口 目标地址作出单播传送决定。 对于以太网来说,如果一个主机a 希望将数据发给同一p 子网内的另一主机b ,它需要通过a r p ( 地 址解析协议) 将接收方主机的i p 地址映射成e t h e m e t 地址,从而将母包封装在e t h e m e t 帧内,并将帧传 给主机b 。 如果主机a 想把包传给另一个m 子网的主机,就必须将包必给路由器。主机a 会配置一个默认网 关,指向用于连接主机a 所在l a n 的那个路由器接口。由于目标p 位于不同的i p 子网上,所以主机a 能自动分辨应将帧发给路由器。路由器收到这个帧后,会提取出i p 包,将根据其中包含的目标i p 地址, 判断目标主机是否在一个同自己直接连接的网络内。若答案是的肯定,路由器就向那个网络送入一个 a r p ,解析出目标主机的e t h e m e t 地址。从目标主机收到a r p 回应后,路由器就可起一个e t h e m e t 帧, 将i p 包包括其中,然后将整个帧发给给目标主机。若答案是否定的,目标主机不在同自己直连的一个网 络内,路由器就必须查询自己的路由表,决定下一步应该将帧发给哪个路由器。 1 1 2 广播通信模型 在口通信领域的另一头是口广播,在这里,源主机向一个网络段中的所有口主机发送信息包。p 广播包的目标地址的主机部分被设置成全l ,网络部分设置成地址。在一些例子中,主机部分设置为全 零,但是这种形式的广播地址通常不再使用。 i p 主机( 包括路由器) 知道以i p 广播地址作为目标地址的转发这些信息包,子网中的所有口主机 也在查寻这些地址。除非特别配置,路由器一般不会转发p 广播信息包,因此,m 广播通信通常被限 制在本地的子网内。图1 1 清楚地说明了这一点。 第2 页 北京邮电大学颈研究生毕业论文 饵议无关组插稀疏模式( p i m _ s m ) 的t 计与实现 图表1 1 路由嚣锁定的p 广播 垃播 在单播模型中,一个主机可将m 包发给任何同络内的任何主机( 假定有通向目标主机的路由) 。而在 广播模型中,广播的范围只能是本地的这个子隔。如果目的是允许主机发送口信息包到非本地子同的其 它主机,那么m 广播没有能力实现这一日标。 1 1 3 组播通信模型 肝组播介于肝单播和口广播通信之间,并且能使主机发送m 信息包到任何一组主机上。为此,把 m 组播信息包中的目标地址安捧威特殊形式的球地址,称这为口组播组地址。i p 组播路由器必须转发 口组播信息包到所有通往口组擂组成员的接口m 组播组地址在信息包中i p 目标地址中指定域。 在组播通信模型中,我们需要两种新型地址:一个口组插地址和一个e t l l e m c t 组播地址。其中,i p 组播地址标志着一组接收者,它们要接收搜给整个组的数据。由于所有p 包都封装在e t 帧内,所 以还需要一个e t h c m c t 组播地址。为使组播模型能正常工作,主机必须能同时接收单播和组播数据,这 就意味着主机需要多个口和e t h e m e t 地址。 m 组插是对硬件组播的抽象是对标准口阿络层协议的扩展。它通过使用特定的疋组插地址,按 照最大投递的原则。将口数据报传输到一个组播群组的主机集合。它的基本方法是:当某一个人向一组 发送数据时,它不必将数据向每一个人都发送数据。只需将数据发送到一个特定的预约的组地址,所 有加入该组的人均可以收到这份数据,这样对发送者而言,散据只需发送一次就可以发送到所有接收者t 大大减轻了罔络的负载和发送者的负担。 1 2 i p 组播简史 2 0 世纪8 0 年代中期,斯坦福太学的博士生sed e e r i n g 发表h o s tg r o u p : m u l t i c a s te x t e n s i o n t ot h ei n t e r n e tp r o t o c o l ( r f c 0 9 6 6 ) 和h o s te x t e n s i o n sf o r i pm u l t i c a s t i n g ( r f c 0 9 8 8 ) 两篇论 文。他总结出:“o s p f 的链路状态机制完全眈被扩展用采支持组播,r i p 的基本机制能被用来作为 一种新的距离向量的组插路由协议的基础。”这些论断提出了i p 组播的可能性 1 9 8 8 年,dw a l t z m a n cp o r t r i d g e seo e e r i n g 发表题为距离向量组播路由协议) 的文章 ( r f c l 0 7 5 ) 它是组播路由协议的首次实践; 1 9 9 1 年1 2 月,sed e e r i n g 发表了他的博士论文数据报互连同络中的组播路由( r f c l l l 2 ) ,它 奠定了组播网络体系结构和路由协议的基础。该文也成为i n t e r n e t 组管理协议( i g m p ) 的原型; 1 9 9 4 年3 月,形成了对0 s p f 协议的扩展协议g o s p f ( r f c l 5 8 4 ) ; 1 9 9 6 年1 1 月,出现了对于基于u n l 30 31 的 硼组播网络支持协议( 9 f c 2 0 2 2 ) ; 1 9 9 7 年9 月,有核树( c b t v 9 ) 组播路由体系结构形成( 9 f c 2 1 8 9 ) ; 第3 页 i 兰磊 l 酉齑 北京邮电大学磺士研究生毕业论文协议无关组措特疏模式( p i m - s m ) 的设计与实现 1 9 9 7 年1 1 月,组管理协议i g o v 2 得到i e t f 的批准,成为标准( r f c 2 3 3 0 ) ; 1 9 9 8 年6 月,评估可靠组播传输协议p & f f p 的i e t f 标准出台( r p c 2 3 5 7 ) ; 1 9 9 8 年7 月在制定i p v 6 地址体系标准时,确定i p v o 组播地址分配方案( 1 t c 2 3 7 3 ) 这为组插 技术在下一代i n t e r n e t 上的应用做出了必要的准备; 1 9 9 9 年1 0 月,c i s c o 、a t & t ,m i c r o s o f t 制定组播地址动态客户分配协议l a i ) c a p ( r f c 2 7 3 0 ) : 2 0 0 0 年底2 0 0 1 年初, 们着手制定各种组播m i b 库这标志组播技术止向可管理、可控制方向发 展。 1 3 i p 组播的优点 与因特网一样,通常公司的内部网络由于连接的用户增多而扩大大量的用户经常要在大致相同的 时间里访问相同的信息。使用组播技术分发信息常常能从本质上减少整个网络带宽的需求,此方法的 一个成功例子是音频与视频网m 组播的优点体现在( 但并不局限于) 以下几个方面:带宽、服务器负 载和周络负载。 1 3 1 带宽 图1 - 2 中虚线表示用单播传输1 2 0 k b p s 的视频信息流所需要的带宽,实线表明用组插工作所需要的 带宽。很明显,随着用户数的不断增加采用组播技术将能极大地节省带宽。 图表1 - 2 单播视频与组播视频带宽 1 3 2 服务器负载 第4 北京邮电大学硕士研究生毕业论文 。 协议无关组播稀疏模式( p i m s m ) 的设计与实现 图1 3 给出了一个实时音频服务器将会话节目传送给三个客户时必须发出的信息流数目的例子。在 单播情况下( 如图1 3 顶部所示) ,服务器必须为每一个收听节目的客户发出各自的信息流。 图表1 3 服务器负载 主机 当连接客户数目增加时,服务器负载也增加。当服务器负载增加到一定程度,服务器就不能再发出 信息流。此时,如果继续增加该服务器的c p u 和网络接口带宽来适应越来越多的客户。最后,将不得不 提供多个实时音频服务器以满足需求。 另一方面,如果使用p 组播( 如图1 3 的底部所示) ,只有单个实时数据流要成为连接所有客户的 节目源头。用这种方式,不需要购买越来越多高性能服务器以满足客户数目的增长。很明显i p 组播提供 的主要优势在于降低了所需服务器性能。 1 3 3 网络负载 当将相同的内容传送给多个客户时,i p 组播能明显地减少带宽要求,带宽消耗的降低等同于网络中 路由器上的负载降低。通常本假定是真实的,但要注意的是,在一些情况下,在某些特定点路由器的工 作负载可能会加大。 再参考一下图1 - 3 中组播部分,我们知道第一跳路由器( 直接与服务器相连的路由器) 从服务器接 受一个数据流。然而要注意的是,第一跳路由器把单个数据流复制成两个输出数据流以便将该数据送交 给下游客户。这个过程成为附加在路由器上的工作负载,它需要在整个网络设计中加以考虑。如果一种 路由器没有一个有效的复制机制,则当输出接口数很大时该路由器负载将明显增加。 1 4i p 组播的缺点 尽管在网络里使用i p 组播有许多好的理由,但是,这项技术也有不尽人意的地方。这些相关联的缺 点主要包括不可靠的信息包传递、信息包复制以及网络阻塞。 第5 页 北京邮电大学硕士研究生毕业论文协议无关组播稀疏模式( p i m s m ) 的设计与实现 1 4 1 不可靠的信息包传送 和i p 单播一样,口组播是天生不可靠的。p 单播只有在通过使用第4 层的t c p ( 或者其它的更高 层协议) 后才被认为是可靠的。然而,由于一对多的通信方式,口组播不使用t c p 所固有的端到端的机 制。m 组播信息包典型地使用用户数据报协议( 切) p ) ,那是一种尽力而为的协议。因此,一个使用i p 组播的应用一定会遇到偶然的信息包丢失,并且应准备好要么接受丢失,要么在应用层或通过一种在 u d p 之上可靠的组播协议进行某种程度处理。 d e e r i n g 在他的博士论文中阐述道“在拓扑结构变化时路径也立刻随之改变,在此期间刚好在路途中 的组播信息包到达目标的概率比单播信息包要小。”d e e r i n g 接着解释,即使在拓扑结构期间,在网络中 一些路由器上存在错误的单播转发信息,网络最终仍可将信息包送达目的地。”这种现象发生的原因在于 网络拓扑结构变化的时候,单播转发机制仍企图继续运送信息包到指定的p 地址,只不过实际的路径有 点迂回。另一方面p 多点发送机制是以源p 地址为基础的,并且为防止回环,如果信息包不能达到原 i p 地址指定的接口,它将被丢弃。” 1 4 2 信息包复制 就像在u d p 单播世界一样,复制信息包已是生活中的现实。然而,单播和组播之间的关键差别是路 由器主动地发送组播信息包的拷贝到多个接口。这增加了多个拷贝的组播信息包到达某一种接收点的可 能性。口组播应用应该作好准备检测并处理随时到达的复制信息包。 1 4 3 网络阻塞 就t c p 单播来说,标准t c p 补偿和慢开启机制自动地调整数据传送的速度,因此在一定程序上避 免了网络阻塞。因为口组播不使用t c p ( 由于其无连接,一对多性质) ,所以没有内在的阻塞避免机制 防止组播流耗尽链路带宽或者其它关键的路由器资源。说到这点,重要的是要注意u d p 单播数据流存在 有相同的避免阻塞问题! 此外,新近的多媒体音频与视频应用的增长使得因特网和私人内部网的u d p 单播信息量增加。 图1 5 显示的两个有相同视频节目的i p 组播组服务器。一个服务器以5 0 0 k b p s 的速率播发节目,打 算用于本地网络环境,而另一服务器以1 2 8 k b p s 的速率播发数据,供该远程使用。 远程销售办公室 图表1 4 超过网络带宽的组播信息流 第6 页 北京邮电大学硕士研究生毕业论文协议无关组播稀疏模式( p i m s m ) 的设计与实现 如果一个在远程的用户由于出错而加入了5 0 0 k b p s 组播组,结果是到远程的2 5 6 k b p s 线路将由于通 过5 0 0 k b p s 影像的组播信息流而完全阻塞。 综上所述,p 组播决不劣于许多如今通用的音频,视频流应用技术。这些应用缺省使用单播u d p 而 不是t c p 作为他们的传送机制,即使用的传送机制同口组播应用技术是一模一样的,那他们也没有使 用任何形式的阻塞控制! 一些应用程序不缺省使用t c p ,原因在于通常用于t c p 的回放机制无多大价值,这是由于音频的实 时性决定的,当重播信息包到达的时候,因为太迟以至它对音频流已不起作用。相反地,应用设计人员 宁可丢弃该数据以达到网络的最快速度( 以可能出现的网络阻塞为代价) 也不人为地建立t c p 内在的阻 塞避免机制。在大多数情况下,使用心组播将减少整个网络阻塞,因为单个传输数据流能达到所有的接 收点。 1 5 组播应用 通常人们认为m 组播和视频会议几乎是相同的事。尽管第一个使用组播的是视频会议,但视频只是 许多口组播应用之一。实际上,在一些最初的i p 组播网上的视频会议试验之后,许多公司发现由于耗 费带宽,典型的音频视频会议里交谈只能使通信过程有很小的增值。 d 组播应用存在有提高生产力的潜能,它们包括多媒体会议,数据拷贝,实时数据组播,游戏仿真 应用。 1 5 1 多媒体会议 一些出色的p 组播,用于m b o n e 的多媒体会议工具在u n i x 环境下被开发出来。这些工具( 近来 已经将它们的大多数移植到w i n d o w s 和n t 平台) 允许通过p 组播实现多对多的音频视频会议。除音 频与视频工具之外,还有一种基于u n i x 的白板工具被开发出来,它是用户共享的公共电子白板。在口 组播网络上除了用于多媒体会议的m b o n e 自由软件外,另外一些公司正在开始以商业形式提供具有某些 增值特征的这类工具。 1 5 2 数据分发 数据拷贝是i p 组播应用的另一个领域,并且很快变得流行。通过使用i p 组播,i s 部门正在采用p u s h 模式进行文件传输和更新。有些应用比如m f t p 允许将文件和数据可靠地传送到各个网络节点组。 1 5 3 实时数据组播 对大主机组的实时数据传送是使m 组播深受欢迎的又一应用领域。一个好的例子是将股票信息发送 到交易大厅的工作站。原先,仅限于将时间紧迫的信息传送到交易大厅的交易员。越来越多的金融和投 资公司试着使用i p 组播将信息送交给他们的客户,以及另一些带来效益的金融和交易机构。 通过指定不同的财务分类( 债券、运输、药品等等) 给不同的组播组,交易员能使用他们的工作站 来接收他们感兴趣的实时金融数据。 第7 页 北京邮电大学硕士研究生毕业论文 协议无关组播稀疏模式( p i m s m ) 的设计与实现 1 5 4 游戏和仿真 m 组播非常适合于网络游戏或者仿真应用的使用。虽然很多的p c 机游戏和仿真允许网络玩家在模 拟或者其它幻想环境中混战,事实上所有这些应用使用单播,是点对点的连接。 典型的游戏或者仿真应用必须通过手动的配置或其它特别的通知机制了解游戏的其它参与者的情 况。当提示出现时,各个p c 机使用p 单播连接所有的游戏或仿真里的其它p c 机。显然,这是一个数 量级( n 2 ) 问题,即所有n 的p c 互相连络以2 计,而不是按所有参与者的数目计。以上对这种游戏 或仿真的限制很大程度上取决于各个p c 机的处理能力或者使用的工作站。 另一方法有时也被使用于这类网络环境,即所有的参与者必须通过口单播连接到中心的游戏或仿真 服务器。此方法把所有参与者实时的游戏或仿真数据加到服务器上。同样也由于依赖于服务器的处理能 力,这种解决方案也只能容纳1 0 0 个左右的参与者。 p 组播可用于有大量参与者的游戏和仿真。参与的p c 机或工作站只需进入口组播组就开始发送和 接受游戏及仿真数据。把仿真数据分成多个信息流,然后通过分隔的i p 组播沟通信息能进一步扩展这种 概念。数据分割允许p c 机或工作站对他们当前要参加的游戏或仿真所需要的收发( 即他们要加入的口 组播组的数量) 做出限制。 1 6 因特网的组播主干( m b o n e ) 因特网的组播主干( m b o n e ) 是一个互相连接且能转发m 组播信息的因特网路由器和主机的小子网。 说它是“小子网”,是指i p 组播信息不会流过因特网的每一点。p 组播的初学者常常错误地认为只要连 接到因特网外,他们就能收到p 组播信息,他们认为只要在因特网网关路由器上接通口组播路由或者 通过在p c 机上增加特殊的装置,就能通过他们的服务提供商收到m b o n e 多媒体会议。不幸的是事情并 非如此。 自从1 9 9 2 年3 月最初的较少的地点连接到d a r t n e t 组播核心开始( 通过d v m r p 隧道和s u n 运行 m r o u t e d 程序的s p a r c 工作站) ,m b o n e 一直稳步增长。 虽然m b o n e 的路由数取得了显着的增长,但是自从1 9 9 2 年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 既不是域间的组播路由协议也不能扩展到因特网范围路由协议。( 仅仅是 一种基于距离向量的路由协议,d v m r p 有一个跳数计数,其最大值是3 2 。因特网尺寸当然大于3 21 ) 显然,或者是一种新的协议,一种新的m b o n e 体系结构,或者两个方面都要进行更新,以便因特网组播 信息流佝因特网单播信息流一样无处不在。 目前,正在进行许多设计新协议和体系结构的工作,以便让p 组播能扩展到因特网上的所有点。将 开发出新的域间组播路由协议和转发算法,以便向因特网服务提供商( i s p ) 提供他们所需要的与组播等 同的与流量管理有关的控制,使得在他们能够提供可靠的组播服务的同时也不会过分影响现有的单播服 务。 除了新的域间组播路由协议之外。动态的组播地址分配对于支持新的组播体系结构和仔细管理有限 的i p 组播地址空间也是必要的。 不但域间组播路由的技术问题必须要解决,而且占当今因特网最大份额的i s p 也必须开发财务和记 账模块以便使i p 组播成为提供给客户的一种服务。当然,规定金融和商务模块是几乎与解决路由及其编 址一样复杂的过程。 第8 页 北京邮电大学硕士研究生毕业论文 协议无关组播稀疏模式( p i m s m ) 的设计与实现 第2 章组播技术基础 2 1 组播路由协议体系结构 i p 地址中d 类地址空间用于i p 组播,每个d 类地址用来表示一个组播组。互联网组管理协议( i g m p ) 在主机和组播路由器之间建立并且维护组播组成员关系信息。组播路由协议根据i g m p 维护的这些组播 组成员关系信息,运用一定的组播路由算法构造组播分发树,进行组播数据包转发。在各个组播路由协 议域间,通过应用r f c 2 7 1 5 的互操作模型,进行互通,彼此间合作构造出完整的组播分发树。图2 1 描 述了组播路由协议的体系结构。 图表2 - 1 组播路由协议体系结构 2 2 组播地址 不像单播i p 地址唯一地识别单个p 主机,组播口地址指定一任意的m 主机组,其口主机已经加 入组并且希望接收发往该组的信息。 2 2 1l pd 类地址 i a n a 已经把d 类地址空间分配给m 组播地址。该空间的地址用二进制表示并且第一个八位数的前 4 位用l l l 0 表示,如图2 2 所示。因此,m 组播地址的范围从2 2 4 0 0 0 到2 3 9 2 5 5 2 5 5 2 5 5 。 d 类地址 o c t e t1o c t e t2o c t e t3 o c t e t4 图表2 2 组播地址格式 第9 页 北京邮电大学硕士研究生毕业论文 协议无关组播稀疏模式( p i m s m ) 的设计与实现 2 2 2 组播地址分配 i a n a 控制着i p 组播地址的分配。当前,动态m 组播地址分配使用最广泛的方法是会话目录程序 ( s d r ) 。用s d r 技术可以避免i p 组播地址冲突,然而这项技术并不是为能因特网上活动的数以千计的 组播组设计的。目前,i e t f 正在做许多工作,既为了修改s d r 以使它能更好地扩展,也为了定义和实 现一些新形式的动态组播地址分配。 2 2 2 1 局部链接的组播地址 i a n a 已为使用局域网段的网络协议预留了从2 2 4 0 0 0 2 2 4 0 0 2 5 5 的地址段。具有该范围内地址的 信息包属于局部范畴,不会被m 路由器( 不论其生存时间多长) 转发,因此只能在局部网里传递。倘若 路由器偶尔超出本地子网范围转发这些组播信息,那也是由于网络管理员非常偏爱因而采取了中断路由 措施的结果。 表2 1 是直接取自i a n a 数据库的预留组播地址表的一部分。该表列举了预留局部链接地址,已被 指定地址的网络协议功能以及申请地址的个人或与协议有关的r p f 。 表格2 1 局部链接的组播地址 地址应用参考 2 2 4 0 0 1 所有主机 【r f c l l l 2 ,j b p 】 2 2 4 0 0 2 所有组播路由器【j b p 】 2 2 4 0 0 3 不分配 【j b p 】 2 2 4 0 0 4 d v m l 冲路由器 【r f c l 0 7 5 ,j b p 】 2 2 4 0 0 5o s p f 路由器 【r f c l 5 8 3 ,j x m i 】 2 2 4 0 0 6 o s o f 指定路由器【r f c l 5 8 3 ,j x m l 】 2 2 4 0 0 7 s t 路由器 【r f c l1 9 0 ,k s l 4 】 2 2 4 0 0 8s t 主机 【r f c l l 9 0 ,k s l 4 】 2 2 4 0 0 9 r j p 2 路由器【r f c l 7 2 3 ,s m l l 】 2 2 4 0 0 1 0 i g r p 路由器 【f a r i n a c c i 】 2 2 4 0 0 1 l 活动代理【b i l ls i m p s o n 】 2 2 4 0 0 1 2 d h c p 服务器中继代理【r f c l 8 8 4 】 2 2 4 0 0 1 3 所有p i m 路由器 【f a r i n a c c i 】 2 2 4 0 0 1 4 r s v p 封装 【b r a d e n 】 2 2 4 0 0 1 5所有c b t 路由器 【b a l l a r d i e 】 2 2 4 0 0 1 6 指定s b m【b a k e r 】 2 2 4 0 0 1 7 所有s b m s 【b a k e r 2 2 4 0 0 1 8v r r p 【h i n d e n 】 2 2 4 0 0 1 9t o不分配 【j b p 】 2 2 4 0 0 2 5 5 2 2 2 2 其他预留地址 i a n a 为超出2 2 4 0 1 x x x 地址范围的网络协议或网络应用分配单个组播地址。与在2 2 4 0 0 x x x 地址 范围内的组播地址不同,它们属于局部范畴,并且决不会被路由器转送。当然组播路由器将转送上述地 址。 第1 0 页 北京邮电大学硕士研究生毕业论文 协议无关组播稀疏模式( p i m s m ) 的设计与实现 2 2 3 管理权限的组播地址 除先前描述的组播地址范围之外,i a n a 保留了从2 3 9 0 0 0 到2 3 9 2 5 5 2 5 5 2 5 5 的地址段,作为用于 私人组播领域的管理权限地址。这些地址实际上和预留的i p 单播范围很相似,例如1 0 0 0 0 8 ,在砌1 9 1 8 里被定义并且不会被i a n a 分配到任何别的组或协议。因此,理论上,网络管理员在某个区域内可以自 由使用组播地址,而不用担心会和因特网上其他地方的地址发生冲突。因为管理权限地址能够在网络的 不同地区被重新使用,所以使用他们有助于节约有限的组播地址窨。实际上,为了确保某个地址范围内 的组播信息不会超出组播区域,网络管理员必须配置组播路由器。 2 3 组播m a c 地址 最初的以太网规范( 正在由i e e e 负责标准化) 提供广播或组播信息包的传输。如图2 3 所示,i e e e m a c 地址8 位一组的o c t e t0 的b i t0 指明了目标地址是广播组播地址,还是单播地址。 o c t e t0o c t e ti o c t e t2o c t e t3 o c t e t4 o c t e t5 lx x x x x x l i x x x x x x x xx x x x x x x xx x x x x x x xx x x x x x x x x x x x x x x x 图表2 3i e e e8 0 2 3m a c 地址格式 如果此位被置位,那么m a c 的帧既可以被定为任意的主机组,也可以被定义为网络的所有主机。 第2 层i p 组播利用此功能传送口组播信息包到局域网段的主机组。 2 3 1 以太网组播m a c 地址映射 就以太网而言,口组播帧都使用以( ) 】【0 1 0 0 0 5 e ) 【) 【x ) 【】【开始的m a c 层地址。很遗憾,只有这些m a c 地址的一半可以被m 组播使用。m a c 地址空间的2 3 位作为第3 层p 组播地址与第2 层m a c 地址的 映射使用。如图2 4 所示。 i p 组播地址 丢失5 位 圣至焦 2 8 位组播地址 2 3 9 2 5 5 o 1 ,h 。竺c 地址、广而石瓦吾丢丽订 ( 以太网 f d d i ) l 一二= 二二= = 二= 二i - j 沥帮十矿 图表2 _ 4i p 组播到以太网f d d im a c 地址映射 第l i 页 北京邮电大学硕士研究生毕业论文协议无关组播稀疏模式( p i m s m ) 的设计与实现 2 3 1 1m a c 地址映射的性能影响 因为第3 层口组播地址信息的全部2 8 位不能映射进入只有2 3 位可用的m a c 地址空间,所以在映 射过程中丢失了5 位地址信息。当第3 层口地址映射成第2 层i e e em a c 地址时导致3 2 的地址不明确。 这意味着每一个i e e ei f 组播m a c 地址能表示3 2 个p 组播地址,如图2 5 所示。 3 2i p 组播地址 2 2 4 1 1 1 2 2 4 1 2 8 1 1 2 2 5 i 1 1 2 2 5 1 2 8 1 1 2 3 8 1 1 1 2 3 8 1 2 8 1 1 2 3 9 1 1 1 2 3 9 1 2 8 1 1 图表2 5 不明确的m a c 地址 0 1 很明显,3 2 :1 地址不明确问题肯定会带来问题。相同的组播m a c 地址也被用于其他3 1 个口组播 组。如果其他3 1 个组里面的任意一个在本地局域网活动,则无论在什么时候接收到任何一个其他组播组 的帧,主机c p u 均将接收到一个中断。c p u 必须考察每一个收到帧的m 以确定是否是需要的组。如果 这种虚假的组流量足够大,就可能对主机c p u 的可用能力产生影响。 2 4 因特网组管理协议( i g m p ) 当组播主机希望加入指定的组播组并且开始接收组信息时,它们就发送i g m p 消息以通知本地的组 播路由器。主机也可以( 用i g m p v 2 定义的一些扩展) 通知本地的组播路由器,表示主机希望离开i p 组播 组,并因此对接收组播组信息不再感兴趣。 i g m p 由主机在网上使用,与直接连接的路由器打交道,通知它们主机希望加入或离开哪个组播组。 利用i g m p ,组播路由器可判断在与自己连接的任何一个网络上是否存在组播组的任何成员。 路由器通过i g m p 获得信息,并在每一个接口基础上维护组播组成员关系表。只要接口上有一个主 机通过i g m p 发出信号想要接收组播组信息,组播组成员之间的关系就发挥着作用。 i g m p 是主机可以使用的唯一机制,该机制允许主机向路由器发出通知表示它想收到指定组的组播 信息。主机既不注意也不关心哪一个路由选择协议被网络中的路由器使用。相反地,网络中的路由器负 责知道和理解使用的组播路由选择协议,并且负责确保组播信息通过网络传递给组成员。 2 5 组播分布树 在单播模型里,信息通过网络沿着单一路径从源主机向目标主机仁慈。但是,在组播模型里,源主 机向任一被组播组地址表示的主机组传递信息。为了向所有接收站点传递组播信息,组播分布树被用来 描述i p 组播在网络里经过的路径。组播分布树有两个基本类型:有源树和共享树 2 5 1 有源树 组播分布树最简单的形式是有源树,有源树的根是组播信息流的来源,有源树的分支形成了通过网 第1 2 页 北京邮电大学硕士研究生毕业论文 协议无关组播稀疏模式( p i m s m ) 的设计与实现 络到达接收站点的分布树。因为有源树以最短的路径贯穿网络,所以它也经常被称为最短路径树( s i t ) 。 图2 - 6 给出了s p t 的一个针对组2 2 4 1 1 1 的例子,根为源主机a ,连接两个接收站点,主机b 和c 。 图表2 - 8 主机a 的s p t 特殊的记号( s ,g ) 用来表示s p t ,s 是源口地址而g 是组播组地址。使用本记号,图2 - 6 中的 s p t 例子可以写成( 1 9 2 1 1 1 ,2 2 4 1 1 1 ) 。 2 5 2 共享树 和有源树使用根作为信息来源不同,共享树使用放在网络的某些可选择点的单独的公用根。根据组 播路由协议,这个根常被称为汇合点( 1 心) 或核心。因此,共享树就有了其他的通用名,r p 树( r p t ) 或有核树( c b t ) 。 图2 7 给出了组2 2 4 2 2 2 的共享树。路由器d 作为根。当使用共享树时,源主机为了使信息达到所 有的接收站点必须向根发送信息。 图表2 7 共享分布树 在本例中,组播组信息从源主机a 和d 发送到根( 路由器d ) ,然后沿着共享树到达两个接收站点: 主机b 和c 。由于所有的组播组源主机使用共用的共享树,因此,可以用一种通配符来表示共享树,记 为( ,g ) 。此时,表示所有的源主机,g 表示组播组。因此,图2 7 中共享树可写成( ,2 2 4 2 2 2 ) 。 第1 3 页 北京邮电大学硕士研究生毕业论文 协议无关组播稀疏模式( p i m s m ) 的设计与实现 2 6 组播转发 在单播模型中,路由器通过网络沿着单个路径从源主机向目标主机转发信息,目标主机的口地址出 现在m 信息包的指定地址字段。沿途各个路由器,使用信息包的m 目标地址做出单播转发决定,它查 找单播路由表中的目标地址并且通过与目标相连的指定接口向下一跳转送信息包。 在组播模型中,源主机向i p 信息包目标地址段内组播组地址所表示的任意主机组传送信息。和单播 模型相反,组播路由器不能把转发决定建立在信息包中目标地址基础上:这些路由器必须将组播信息包 转发到多个外部接口上以便送到所有接收站点。上述要求使得组播转发过程比单播转发过程更复杂。 2 6 1 逆向路径转发 实际上。所有的组播路由协议利用r p f 或输入接口检查的某些形式,作为决定是否转发或丢弃 输入的组播信息包的主要机制。当组播信息包到达路由器时,路由器对信息包进行i 冲f 检查。如果r p f 检查成功了,信息包被转发,否则,它被丢弃。 当信息通过有源树的时候,r p f 检查机制进行如下工作: 1 路由器检查到达的组播信息包源地址,以确定此信息包经过的是什么接口,这些接口是否在从 源到此的路径上。 2 如果信息包在可返回源站点的接口上到达,则i 冲f 检查成功,且信息包被转发。 3 如果r p f 检查失败,放弃信息包。 组播路由器如何确定哪些接口是在可返回到源站点的逆向路径上取决于所使用的路由协议。在一些 实例中,组播路由协议维持分隔的组播路由表,并使用这张表来进行r p f 检查。d v m r p 就是一个很好 的例子。在其他实例中,组播路由协议使用现有的单播路由表来确定源口地址指定的接口。组播协议的 例子是p i m 和c b t ,一般使用单播路由表进行r p f 检查。但是,p i m 和c b t 并不限于仅仅使用单播路 由表作为r p f 检查。它们也能使用来自d v m r p 路由表或m b g p 路由表的信息,另外,它们还能静态 地配置r p f 信息。 图2 8 举例说明了r p f 检查过程。本例使用分隔的组播路由表,但是如果使用单播路由表或其他的 表,概念也是一样的。 源1 5 1 1 0 3 2 1 r p f 检查失败 、 ( 一 组播路由器 震 弋j 1s o ! 。s 2 网络接口 。包到达错误接口5 1 彩 岸 1 5 1 1 0 0 0 1 6 il 3 工、 蓄 丢弃信息包e o 1 9 8 1 4 3 2 0 2 4 s o 2 0 4 1 1 6 0 2 4e 0 图表2 8r p f 检查失败 来自源1 5 1 1 0 3 2 l 的组播信息包在接口s o 上被收到。组播路由器表的检查显示指定的接口是s l 而 不是s o 。因此,r p f 检查失败,信息包被放弃。 第1 4 页 北京邮电大学硕士研究生毕业论文协议无关组播稀疏模式( p i m s m ) 的设计与实现 图2 - 9 是来自源1 5 1 1 0 3 2 1 的组播信息包到达路由器的另一个例子,这一次通过了接口s l 。 源1 5 1 1 0 3 2 l 组播路由器 雾 包送达正确接口 网络接口 1 5 1 1 0 0 0 1 6 3 上 、 誉 1 9 8 1 4 3 2 0 2 4s 0 2 0 4 1 1 6 0 2 4 e 0 图表2 9r p f 检查成功 本例中,r p f 检查成功因为接口s 1 在可返回到源地址的逆向路径上,因此信息包被转发到输出接 口表上的所有接口。 2 6 2 组播转发缓存 组播分布树被用于向网络里的所有接收站点转发信息。每一个s p t 或共享树在路由器内表示为组播 转发缓存项( 或组播路由表项) ,该项将一个输入接口同零个或多个输出接口进行关联。 对每一个输入组播信息包进行 f 检查会导致较大的路由器性能损失。因此,当组播转发缓存建立 的时候,通常由组播路由器确定r p f 接口。然后r p f 接口变成组播转发项的输入接口。如果r p f 检查 程序使用的路由表发生变化,那么,必须重新计算r p f 接口,并且要对组播转发缓存项进行更新。 2 7 组播路由协议分类 当前的组播协议细分为以下三个基本类: 密集模式协议( d l 冲和p i m d m ) 稀疏模式协议( p i m s m 和c b t ) 链路状态协议( m o s p f ) 一些协议,例如p i m ,根据路由器的设置既能在密集模式下工作也能在稀疏模式下工作。 2 7 1 密集模式协议 密集模式协议比如d v m r p 和p i m d m 利用p u s h 原理来发送( s ,g ) 组播信息。p u s h 原理假设网 络的每个子网至少有一个( s ,g ) 组播信息的接收站点,因此,信息被推或扩散到网络的所有点。 2 7 1 1 扩散和剪枝现象 第1 5 页 北京邮电大学硕士研究生毕业论文 协议无关组播稀疏模式( p i m s m ) 的设计与实现 将组播信息扩散到网络中的每一个点上伴随着相关的消耗( 带宽、路由器、c p u 等) 。为了避免网 络资源的无谓消耗,路由器发送返回到源树的剪枝消息以隔离不需要的组播信息。结果没有接受器的分 支被剪枝,只留下包含接收站点的分支。 图2 1 0 中,路由器b 正在使用剪枝信息对无用的组播信息作出反应。 图表2 10 密集模式流的剪枝 当路由器a 收到组播信息流从输出接口( 这里指e t h e m e t 0 ) 传出的剪枝信息时,路由器把该接口设 置成待剪枝状态并且停止转发( s ,g ) 信息到该接口之外。 剪枝有一个时间限制,即超过一定的时间后,路由器会使接口回到转发状态,并开始在该接口上将 组播信息流扩散出去。 用于剪枝的超时值以使用的组播路由器协议为依据,一般是2 3 分钟的范围。周期性的扩散和剪枝 现象是密集模式协议的特征,例如d v m r p 和p i m d m 。 2 7 1 2 嫁接 大多数密集模式协议能快速地把以前剪枝掉的分支嫁接回分布树。例如,当先前被剪枝的分支上的 一个新接收站点加入组播组的时候,路由器检测这一新接收站点并且立即向源分布树发送嫁接信息。当 上游路由器收到嫁接信号时。该路由器立即把接口设置成转发状态以便组播信息流向该接收站点。 图2 1 l 表示嫁接过程。在本例中,源主机e 沿着s p t 向接收站点主机a 、b 、c 传送组播信息。 图表2 1 1 密集模式嫁接 第1 6 页 北京邮电大学硕士研究生毕业论文协议无关组播稀疏模式( p i m s m ) 的设计与实现 路由器c 已经剪枝了与路由器e 的关系,因为它最初没有直接相连的接收站点。本例中,主机d 作为新接收站点加入组播组。此举促使路由器e 通过s p t 向路由器c 发出嫁接信息以便立即重新启动组 播信息流。通过使用嫁接,路由器e 不用等到先前的剪枝结束,从而减少了由主机d 加入时的潜在问题。 2 7 2 稀疏模式协议 稀疏模式协议利用拉的方式,而不是p u s h 方式,即组播信息被拉入网络中的接收站点。因此,拉方 式假定组播不被需要,除非用一个显式的加入机制来专门申请,否则组播信息不会被传送到接收站点。 2 7 2 1 共享树加入消息 在稀疏模式网络里,为了把组播信息拉入接收站点,必须构造一个从根节点( p i m s m 中的l i p 或 c b t 中的核心) 到接收站点的共享树分支。为了构造共享树分支,路由器向共享树的根部发送共享树加 入消息。加入消息经过一个个路由器后达到根部,它经过的路径就构成了共享树的分支。 图2 1 2 表示加入消息被发送到共享树根部。在本例中,路由器e 与接收站点相连,通过路由器c 朝根部发送加入消息( 用虚线箭头表示) 。消息逐步传递直到根部并构造共享树的分支( 用实线箭头表示) 。 图表2 1 2 共享树加入消息 在某一些情况下( 例如p i m s m ) ,s p t 加入消息也可以在源方向上发送,以便建立一个从各个组播 源到接收站点的s p t 。该s p t 允许直接与接收站点相连的路由器直穿过网络并旁路根节点,以便源组播 信息能够通过更直接的路径被收到。 图2 1 3 描述了通过向特定组播源主机发送加入消息后建立起的一个s p t 。在本例中,路由器e 通过 路由器c 向源主机发送s p t 加入消息( 虚线箭头表示) 。s p t 加入消息一步步传输直到抵达路由器a , 它经过的路径形成s p t ( 用实线箭头表示) 接收器 第1 7 页 北京邮电大学硕士研究生毕业论文 协议无关组播稀疏模式( p i m s m ) 的设计与实现 图表2 1 3 s p t 加入消息 如果分布树的分支在稀疏模式网络里( 不管是可共享树还是s p t ) 不被更新它们将暂停并被删除, 从而阻止信息向共享树的分支流动。为了避免这类问题,稀疏模式分布树的分支通过路由器沿着分支发 送的周期性加入更新机制的方式进行维护。一些协议( 例如p i m s m ) 通过周期性地向共享树重新发送 加入消息来更新分支以达到更新的目的。 2 7 2 2 剪枝消息 在稀疏模式下,当组播组信息不再被需要时,剪枝消息被发送到分布树上。此举允许通过加入消息 建立的共享树或s p t 分支在不再需要时被扯下。图2 1 4 显示了本过程的实际情况。

温馨提示

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

评论

0/150

提交评论