PIM的原理与配置

1.PIM-DM的协议报文

1.hello:用于建立和维护PIM邻居关系,在DM和SM中都有hello报文,无法根据hello报文来区分是DM还是SM

2.prune:剪枝报文则用于修剪组播分发树

3.graft:用于将设备所在的分支嫁接到组播分发树

4.graft-ACK:嫁接确认

5.Assert:用于解决重复组播流量

2.邻居发送

运行了PIM协议的路由器,会周期性(30s)发送hello报文,如果在hold time(105s)后,没有收到邻居发过来的hello报文,那么就认为邻居失效了,hello报文目的地址是224.0.0.13

3.扩散机制

上游接口:接收组播数据的接口

下游接口:发送组播数据的接口

扩散机制:距离组播源最近的路由器收到组播流量,首先进行RPF检查,通过之后查找组播路由表,往下游接口发送组播流量,只有生成(S,G)才会转发组播流量,组播路由器如果在210s还是没有组播流量转发,那么就删除        

4.断言机制

当多台路由器在同一个网段,那么路由器可能会接收到重复的组播流量,那么为了避免这个问题,可以使用断言机制 

5.断言选举规则

 选举规则:1.单播路由协议优先级较高者获胜

                   2.如果优先级相同,则到组播源的开销较小者获胜

                   3.如果以上都相同,则下游接口IP地址最大者获胜

只有断言获胜者才会发送组播流量,断言失败者会把下游接口从(S,G)表删除

6.剪枝机制

如果路由器下面没有组播接收者,或者组播接收者已经全部离开组,那么路由器就没有必要在接收组播数据

路由器下已经没有接收者或者接收者全部已经离开了这个组,那么路由器会向上游发送prune报文,不希望接收组播数据,上游路由器收到prune报文,就把从接口收到prune报文下游接口删除

如果上游路由器收到了prune报文,删除相关的下游接口,并且会启动一个剪枝计时器,计时器超时后会转发组播流量

7.状态刷新机制

因为剪枝计时器的原因,一旦超时就会发送组播流量。需要通过状态刷新机制,来刷新计时器如果路由器收到了状态刷新报文,那么就会重置计时器。除非这个时候有组成员希望加组

路由器默认是60s发送一次 

8.嫁接机制

因为在剪枝计时器超时前,是不会发送组播流量。如果接收者希望快速的收到组播流量,那么这个时候在计时器没有超时,都是接收不到组播流量。就可以使用graft

原理:

当接收者通过IGMP加组,路由器会发送graft报文通知上游路由器,请求恢复组播流量的转发,上游路由器接收到那个graft的接口会重新生成下游接口,然后就可以转发组播数据

9.PIM-SM报文

Hello:用于PIM邻居发现,协议参数协商,PIM邻居关系维护等

Register(注册):用于事先源的注册过程。这是一种单播报文,在源的注册过程中,组播数据被第一跳路由器封装在单播注册报文中发往RP

Register-Stop(注册停止):RP使用该报文通知第一跳路由器停止通过注册报文发送组播流量

Join/Prune(加入/剪枝):加入报文用于加入组播分发树,剪枝则用于修剪组播分发树

Assert(断言):用于断言机制

Bootstrap(自举):用于BSR选举。另外BSR也使用该报文向网络中扩散C-RPCandidate-RP,候选RP)的汇总信息

Candidate-RP-Advertisement(候选RP通告):C-RP使用该报文向BSR发送通告,报文中包含该C-RPIP地址及优先级等信息

10.RP的选举

 静态选举:每一台路由需要指定RP的位置

11.树

RPT:组成员路由器到RP的路径

SPT:源端路由器到RP的路径

12.RPT的构建

RPT的构建:组成员通过IGMP消息加组,IGMP查询器会使用join报文单播向RP,沿途生成一个RPT 

13.STP的构建

组播源发送的组播数据,会封装到Register报文,单播发送给RP,RP沿途反向生成SPT

组播源发送的组播流量都是通过register单播发送给RP,这样子,因为是单播,所以可能会加重源端DR的负担

RP构建SPT树之后,会向源端DR发送register-stop报文,告诉源DR,不要在发注册报文过来

14.DR的选举

源端网络或者成员网络,如果多个路由在同一个网段,就会接收到重复的组播流量,那么在SM模型里面是通过DR的选举来避免的

选举机制: 比较DR优先级,IP地址大的直接成为DR

15.RPT的次优路径

1.RP的位置对于成员端DR来说,可能是次优路径。那么路由器走次优路径去获取组播流量

2.过大的组播流量可能会对RP造成负担

3.存在次优路径

16.SPT切换工作

1.成员端DR发送join报文到RP建立RPT路径树,RP返回join消息回来。

2.成员端DR会向组播源建立一个SPT的最优路径

3.标准的PIM协议,RP有一个阈值,当负载超过这个阈值,就开始建立SPT切换。但是在华为的PIM协议里面,这个阈值默认是0,RP收到的第一个组播流量,就会开始建立SPT切换

16.SPT的维护

成员端DR周期性发送join报文

在一定时间(210s)还没有组播流量,那么这个最优的SPT路径会消失,就会恢复成原来的到达RP的一个路径树

17.PIM-SM(SSM)

1.因为SSM模型可以指定只希望接收部分组播源的组播流量,所以成员端DR是可以直接和组播源建立单播建立SPT树

2.不需要RP

3.也不会存在次优路径问题

  • 0
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值