组播协议和组播路由

2008-02-22 12:36:44来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

一、什么是组播
1. 什么是组播?
组播是一种数据包传输方式,当有多台主机同时成为一个数据包的接受者时,出于对带宽和CPU负担的考虑,组播成为了一种最佳选择。

2. 组播如何进行工作?
组播通过把224.0.0.0-239.255.255.255的D类地址作为目的地址,有一台源主机发出目的地址是以上范围组播地址的报文,在网络中,如果有其他主机对于这个组的报文有兴趣的,可以申请加入这个组,并可以接受这个组,而其他不是这个组的成员是无法接受到这个组的报文的。

3. 组播和单播的区别?
为了让网络中的多个主机可以同时接受到相同的报文,如果采用单播的方式,那么源主机必须不停的产生多个相同的报文来进行发送,对于一些对时延很敏感的数据,在源主机要产生多个相同的数据报文后,在产生第二个数据报文,这通常是无法容忍的。而且对于一台主机来说,同时不停的产生一个报文来说也是一个很大的负担。如果采用组播的方式,源主机可以只需要发送一个报文就可以到达每个需要接受的主机上,这中间还要取决于路由器对组员和组关系的维护和选择。

4. 组播和广播的区别?
如同上个例子,当有多台主机想要接收相同的报文,广播采用的方式是把报文传送到局域网内每个主机上,不管这个主机是否对报文感兴趣。这样做就会造成了带宽的浪费和主机的资源浪费。而组播有一套对组员和组之间关系维护的机制,可以明确的知道在某个子网中,是否有主机对这类组播报文感兴趣,如果没有就不会把报文进行转发,并会通知上游路由器不要再转发这类报文到下游路由器上。


二、组播协议的要素
通过和广播,单播的数据传输方式的比较,我们可以发现组播中最关键的两个部分:
1. 组的管理和维护
在组播这套协议中,在网络设备和所连接的子网需要有一套协议或机制来保证网络设备知道所连接的子网中,有多少台主机属于一个特定的组。

2. 组播报文的路由
要组播路由协议有什么用?
(1)是发现上游接口,离源最近的接口。因为组播路由协议只关心到源的最短路径。
(2)通过(S,G)对来决定真正的下游接口,当所有的路由器都知道了他们的上下游接口,那么一颗多播树就已经建立完成。根是源主机直连的路由器,而树枝是通过IGMP发现有组员的子网直连的路由器
(3)管理多播树
单播路由只需要知道下一跳的地址,就可以进行报文得转发。而组播,是把从一个由源产生得报文发送给一组目的。在一个特定的路由器上,一个包得多个备份可能从多个接口上发出。如果有环路得存在,那么一个或多个包会返回到其输入的接口,而且这个包也会经复制发到其他的端口上。这一结果可能导致多播风暴,这个包不断在路由器与交换机间复制,直到TTL减为0。由于这是个复制过程,它的危害会比单播环路严重的多,所以所有的多播路由器必须知道多播包的源,并且需要保证多播包不能从源接口发出。所以他必须知道哪些是上游接口和下游接口,可以分辨出数据包的流向。如果在不是在源的上游接口收到数据包,就会把它丢弃掉。而多播路由协议必须关心到源的最短路径,或者说它关心到源的上游接口。同时,除了关心上游接口,但是在转发的时候,不能把数据包从除了上游接口的其他接口发送出去。所以,另外,他还要关心(S,G)下游接口。当关于一个(S,G)的上下游接口都被判断出来了,那么一颗多播树就形成了。

稀疏和密集模式的比较?
什么是稀疏模式?它是指在一个整体网络中,参与组播的主机相对来少的一种拓扑,主要出现在WAN中。
什么是密集模式?和以上相反,主要出现在交换式LAN或校园网中

隐式加入和显示加入的比较?
组员可以在多播会话存活的时候,加入或退出一个组,而其相连的路由器必须动态的根据直连子网内组员的存在或退出来决定要加入或剪除多播树的树枝。这就是通过显式或隐式加入两种方式来完成。隐式加入试用于密集模式,它是采用广播/剪除模式来去除多播树上的没有组播成员的树枝,也就是说,它是通过先把网际网络上的所有路由器都加入到多播树上,然后由每个路由器通过IGMP来查询是否有组员在直连的子网上,如果没有,就发出一条剪除消息,来剪除多余的树枝。
而显示加入适用于稀疏模式,它是由每个路由器先查询子网内有无组员,然后才看是否要发加入信息给上游路由器。

基于源的树和共享树的比较?
基于源的树是针对一个源就会有一颗多播树构成,也就说,如果网络中有多个可以产生组播报文的源主机,那么就会有多少颗组播树组成,在组播表里,会有组数×每组的成员数的项目条数。这种拓扑主要适用于密集模式。

共享树是在整个网络中选一个RP,或叫集中点,所有的组播报文都需要从这个点来进行传送,所以它没有(S,G)项,只有(*,G)项,表明所有有多个源。RP是预先设定的一个路由器,承担转发所有的多播报文的责任。所有要发送组播报文的源主机在发送组播报文前,都需要到RP上进行注册,然后通过直连的路由器来确定到RP的最短路径,通过RP路由器来确定到目的地的最短路径。RP成为了多播树的根结点。

相对于基于源的树,共享树的多播表项更为精简,适合在稀疏模式下使用。但是也有一些缺点。共享树在RP上的选择,会导致从源主机到各个组地址的路由并非最优路径。
如果在整个局域网里同时有多条耗带宽的组播链路,会导致RP成为整个网络的瓶颈。并且在共享树中,采用选取RP来转发组播报文,会增加产生单点故障的可能

三、如何来维护组成员
现在有IGMP和CGMP(Cisco专有的)两种协议,可以进行主机和网络设备之间的组员关系的维护。
IGMP是路由器和内部子网之间通信的方式,也就是说它是三层设备对直连子网的组关系的维护机制。它可以分成两个部分,主机部分和路由器部分,每个部分可以完成不同的工作。但是它有一个限制,就是IGMP报文只能在本地子网内传送,使三层设备不能前转到其他的设备上,它的TTL总是1。

IGMPv2主机部分的功能:
运行IGMPv2的主机会产生以下3种信息:
* Member Report消息
用来指示一台主机想要加入一个组播组,这个消息在一个主机第一次加入组的时候会发出,也可以用来响应三层设备发出Membership Query消息。由于Membership Query消息的目的地址是组地址,除了路由器,网内其他的组员主机都会收到这个报文,一旦其他主机收到报文,他们将会抑制自己的Membership Query报文,避免了内部局域网充斥了Membership Query报文。它只需要让路由器知道网内还有一个组员。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:WAP(Wireless Application Protocol)-无线应用协议

下一篇:802.11n:解决带宽、漫游、移动问题