« Back
in 思科 read.

IP组播基础(4)

PIM-DM Protocol Independent Multicast Dense-Mode(协议无关多播密模式)

首先要说的是PIM分为两种模式,密模式和疏模式,我们先来介绍密模式。

它最大的特点当然是它的协议无关性,可以与静态路由及各种动态路由协议很好的共存。

它使用RPF(Reverse Path Forwarding反向路径转发)技术构建转发树,密模式的PIM最开始采用Flooding的方式向全网传送多播信息,然后再修剪掉不必要的和冗余的流量。这种Flood & Prune的行为每3分钟进行一次。

适用于小型网络和实验性网络。

 

Assert Mechanism(确定机制),看下面的图,两条路径都将通过RPF检验,为了防止多播信息复制,必须加以处理。

IMP

这种情况下两台路由器会发出Assert值(Distance+Metric)进行比较,有最好的到达源的路由的路由器胜出,相同的情况下比较IP地址,最大者胜出。败者Prune掉相应接口。

 

Assert机制可能导致多播路由的环路,看下面两幅图,第一幅图是经Assert比较做出修剪之后的稳定网络,当右边的路由器上端口断掉连接时,多播网络需要重新收敛,如果左边的路由器收敛快,就可能出现图中所示的多播路由环路。

assert

下图中显示的是由于Assert机制引起的另一问题,中间的两台路由器进行Assert比较的结果是下面一台路由器胜出,当它的左侧接口断掉时,最左边的接收者将暂时收不到来自下面多播源的信息,直到上面的Loser左侧接口的Prune超时。

assert1

 

Evaluation to PIM-DM(对PIM-DM的评估),在小型实验性网络中效果很好;优点是容易配置(只需两条命令)洪泛和修剪的机制简单;缺点是洪泛和修剪行为影响较大(3分钟一次),Assert机制复杂。

 

PIM-SM(Protocol Independent Multicast Sparse-Mode) 

采用RP(rendezvous point)作为中继节点,组播源通过到达RP的最短路径向RP发送组播数据,RP再通过到达每个接收者的最短路径向接收者转发多播数据。

从RP到接收者的转发路径信息与组播源的位置和数量无关。

适用于企业级大型网络环境,接收者稀疏或密集的情况均适用。

最优路径的选择与网络尺寸和成员密度无关。

 

组播接收者需知道RP的存在,通过向RP及途经路由器发送(*,G)的消息加入组播组。该消息一跳一跳传至RP后,形成了一条从RP到接收者的ST(Shared Tree)。

组播发送者同样需知道RP的存在。组播源将多播数据封装成专用的PIM SM注册消息包,并以单播的形式向RP发送注册消息,RP收到注册消息后,解封装这个注册包,将多播消息发往接收者。同时也向通往组播源的各个路由器发送(S,G)的消息,构建从组播源到RP的SPT(Shortest Path Tree)。

当RP检测到从组播源发出的多播数据包经由SPT到达时,(表明SPT稳定,沿途各路由器均已有正确转发条目)RP向组播发送“Register Stop(注册停止)”消息,至此,从组播源到接收者的转发路径形成。下图显示全部处理过程节束后的多播转发路径。由组播源到RP的源树和RP到接收者的共享树两部分构成。

pim-sm

 

SPT Switchover

当last-hop路由器(即离接收者最近的路由器)收到经由(*,G)共享树由RP转发来的组播消息时,它就向SPT路径中的上游路由器发送(S,G)加入消息(延迟由SPT-Threshold值决定,这个值缺省等于0,表示立刻切换成经SPT的转发),这个加入过程一跳一跳的进行直至first-hop路由器(即离组播源最近的路由器),从而形成另一条从源直接到达接收者的SPT转发路径。

最后,向RP发送修剪消息,通知它停止通过共享树向接收者转发特定源组(S,G)的消息,在这一步完成之前,接收者可能收到重复组播数据。

另外,如果RP在所有属于共享树的接口上(注意:本例中只有一条共享树)均收到了关于(S,G)的修剪消息,它也会向组播源发送(S,G)修剪消息,取消(S,G)源组向它的不必要转发。

通过这种机制,PIM SM实现也与PIM DM一样的转发路径,因为没有最初的Flood过程,对无关网络及设备影响较小。

下图是最终形成的从源到接收者的SPT。

pim-sm1

 

Evaluation to PIM-SM(对PIM-SM的评价),对于稀疏和或密集的接收者分布同样有效;优点:流量只会沿必要的分支路径转发,可动态切换到最优路径,与单播路由协议无关;可与DVMRP互操作;缺点:需要配置稳定的RP路由器。

 

CBT Overview(CBT Core-Based Tree预览)

结构单一,与源无关,所有接收者共享相同的分布树。与PIM不同,这棵共享树是双向的。

first-hop路由器如果存在于共享树之上,它可以直接将多播消息发至每个接收者所在网络分支,如果不在共享树之上,则以单播封装形式发送组播消息到核心,再由核心转发到接收者。

减少了多播状态信息存储对路由器资源的占用。

CBT至今没有商业实现。

Evaluation to CBT(对CBT的评价),适用于域内或域间多播路由;没有切换到SPT的能力;核心路由器处理能力不足则会形成转发瓶颈。