不同的系统和协议中,优先级的计算方式可能不同。例如,在R&S中有各种不同的优先级,像ospf router priority,是值越大越优先;像BGP中的MED,是值越小越优先。
hello报文
》选DR,
》发现建立维护邻居关系,30s周期发送,105s超时
- 扩散机制会周期性(默认180s)全网扩散组播数据,周期性扩散的主要目的是探测是否有新成员加组,但是由于全网扩散组播数据会浪费大量带宽,所以现在的组播网络一般使用“状态刷新机制”加上“嫁接机制”来实现周期性全网扩散感知新成员加组的目的。
DR:为了避免收到重复的数据流量
剪枝消息(Prunne)是组播发送,所有设备都会接收到
PIM--DM 扩散剪枝原理将组播流量扩散到整个组播网络中,通过RPF检查机制在所有组播路由器中创建组播路由表(S,G),建立组播分发树(SPT)
SPT:组播源为根,组播组成员为叶子的组播分发树
周期性扩散剪枝会对影响其他业务的进行,对网络造成冲击(180s)
组成员分布散且稀疏时,建立SPT树效率很低
PIM--SM
建立两种树
1》SPT,以组播源为根,RP为叶子的分发树
2》建立RPT树,以RP为根,组成员为叶子的分发树,共享树
RP作用:1》RP向组播源发起建立SPT
2>最后一条路由器向RP发起建立RPT
RP应该为全网组播路由器可知且路由可达,一般用环回口,更稳定
RP产生:静态指定;动态自举
BSR:自举路由器 C-BSR:候选自举路由器
网络中可以存在一台或者多台C-BSR,每台C-BSR认为自身为BSR,并且向网络中所有设备发送自举报文
其他C-BSR设备收到BSR发出来的自举报文,会触及选举选出BSR
选举规则;优先级值大;IP地址越大越优先
网络中选择设备作为C-RP(可多台)
所有C-RP设备单播向BSR发送C-RP通告报文,携带自身带的RP信息,这样BSR就可以收集到所有C-RP信息
将信息汇总为RP-SET(集合),封装在自举报文中,将集合信息发送给每一台PIM路由器
PIM路由器从C-RP按照规则中选出RP
所有PIM路由器为组播组选出唯一的一个RP,并将RP和组播组映射记录出来
DR选举:可选,Hello报文
选举规则:1:优先级 2 :IP地址
源侧DR:负责向RP发送注册消息
成员侧DR:负责向组成员转发数据流量;在IGMPv1作为查询器
组播源发送组播流量
组播流量被源侧DR接收后,源侧DR将流量封装在注册报文内,单播发给RP
RP收到注册报文,解封装获取信息,查找路由向上游发送Join 消息,反向建立SPT树
源侧DR收到JOIN消息,代表SPT建立成功,后面按照(S,G)表项转发组播流量
RP收到组播流量后,向源DR发送注册停止消息
建立RPT树
组成员通过IGMP协议报告报文声明希望加入的组播组
成员侧RP收到,建立IGMP路由表
向RP发送Join消息,来建立(*,G),所有设备都要建立*.G表项
RP收到后把收到消息的接口设置为(S,G)的下游接口列表去,并从该接口转发组播流量
------------------------------------------------------------------------------------------------------
SPT切换
RPT存在的问题:
1》 所有流量都要经过RP,对RP负担过重
2》SPT+RPT转发方式对于组成员可能存在次优路径
成员侧向组播源发送Join消息,反向建立(s,g)路由表
---------------------------------------------------------------------------------------------
维护组播分发树
成员端DR会周期性(60S)发送join/剪枝报文,给源侧发Join/给次优发剪枝消息
应为路由表存在老化时间210s
标签:组播,RP,PIM,--,SPT,BSR,DR,路由器 From: https://blog.51cto.com/u_15735404/8879397