思科新版ccna认证网工一定要知道的PIM技术概述
PIM(Protocol Independent Multicast)称为协议无关组播。这里的协议无关指的是与单播路由协议无关,即PIM不需要维护专门的单播路由信息。作为组播路由解决方案,它直接利用单播路由表的路由信息,对组播报文执行RPF(Reverse Path Forwarding,逆向路径转发)检查,检查通过后创建组播路由表项,从而转发组播报文。
PIM(协议无关组播)表示它不依赖于某种具体的IP路由选择协议。它仅仅是利用单播路由表来实现RPF校验功能。因此,它能工作在任何可以产生单播路由表的IP路由协议上,包括静态路由。值得强调的是:协议无关并不是指不需要单播路由协议;相反,组播协议必须有单播路由协议的支撑,因为它无单播路由功能。PIM协议报文基于UDP协议,其端口号是103。PIM还有专门的组播地址224.0.0.13,表示所有的PIM路由器。
目前设备实际支持的PIM协议包括:PIM-DM(PIM-Dense Mode,协议无关组播—密集模式)、PIM-SM(PIM-Sparse Mode,协议无关组播—稀疏模式)。
PIM-DM基本工作原理:
PIM-DM使用“推(Push)模式”转发组播报文,一般应用于组播组成员规模相对较小、相对密集的网络。PIM-DM的关键工作机制包括邻居发现、扩散、剪枝、嫁接、断言。
1、邻居发现:路由器通过周期性地的向所有PIM路由器(224.0.0.13)以组播方式发送PIM Hello报文(以下简称Hello报文),以发现PIM邻居,维护各路由器之间的PIM邻居关系,从而构建和维护SPT。
2、扩散:当PIM-DM网络中出现活跃的组播源之后,组播源发送的组播报文将在全网内扩散。当PIM路由器接收到组播报文,根据单播路由表进行RPF检查通过后,就会在该路由器上创建(S,G)表项,并将该报文向网络中的所有下游节点转发。经过扩散,PIM-DM域内的每个路由器上都会创建(S,G)表项。
3、剪枝:当PIM路由器接收到组播报文后,RPF检查通过,但是下游网段没有组播报文需求。此时PIM路由器会向上游发送剪枝报文,通知上游路由器禁止相应下游接口的转发,将其从(S,G)表项的下游接口列表中删除。剪枝操作由叶子路由器发起,逐跳向上,最终组播转发路径上只存在与组成员相连的分支。
4、嫁接:PIM-DM通过嫁接机制,使有新组成员加入的网段快速得到组播报文。叶子路由器通过IGMP了解到与其相连的用户网段上,组播组G有新的组成员加入。随后叶子路由器会向上游发送Graft报文,请求上游路由器恢复相应出接口转发,将其添加在(S,G)表项下游接口列表中。嫁接过程从叶子路由器开始,到有组播报文到达的路由器结束。
5、断言:在一个网段内如果存在多台组播路由器,则相同的组播报文可能会被重复发送到该网段。为了避免出现这种情况,就需要通过断言(Assert)机制来选定唯一的组播数据转发者。
PIM-SM基本工作原理:
PIM-DM使用以“扩散—剪枝”方式构建的SPT来传送组播数据。尽管SPT的路径最短,但是其建立的过程效率较低,并不适合大中型网络。PIM-SM使用“拉(Pull)模式”转发组播报文,一般应用于组播组成员规模相对较大、相对稀疏的网络。
PIM-SM的关键机制包括邻居发现、DR选举、RP发现、RPT构建、组播源注册、SPT切换、断言;同时也可通过配置BSR(Bootstrap Router)管理域来实现单个PIM-SM域的精细化管理。
1、邻居发现:和PIM-DM机制类似;
2、DR选举:借助Hello报文还可以为共享网络(如Ethernet)选举DR,DR将作为该共享网络中组播数据的唯一转发者。无论是与组播源相连的网络,还是与接收者相连的网络,都需要选举DR。接收者侧的DR负责向RP发送加入报文;组播源侧的DR负责向RP发送注册报文。
3、RP发现:汇聚点RP为网络中一台重要的PIM路由器,用于处理源端DR注册信息及组成员加入请求,网络中的所有PIM路由器都必须知道RP的地址,类似于一个供求信息的汇聚中心。一个RP可以同时为多个组播组服务,但一个组播组只能对应一个RP。
4、RPT构建:RPT是一棵以RP为根,以存在组成员关系的PIM路由器为叶子的组播分发树。
5、组播源注册:在PIM-SM网络中,任何一个新出现的组播源都必须首先在RP处“注册”,继而才能将组播报文传输到组成员。
6、SPT切换:当接收者侧的DR发现从RP发往组播组G的组播数据速率超过了一定的阈值时,将由其发起从RPT向SPT的切换。
7、断言:同样和PIM-DM类似。