IP组播路由协议基本原理
组播分发树:遵循流量走势,构建出来的树。
有源数--最短路径树
共享树
 
根据树模型,得出两种组播路由协议--密集(有源树)与稀疏(共享树)
 
源树:只遵循最短路径原则,经过组播节点,创建表项(S,G)。在路径上每个所经过的路由器上创建表项。每一棵树只有一个源。
 
共享树:RP-汇聚点,源分得比较远、散。   ---最短路径树---RP---共享树---〉接收方。
        共享树其实是一半运行源树,一般运行共享树。在源到RP的路径,根据源树,找到最短路径。在RP到接收方,则使用共享树。
 
---注册---RP
接收方---〉加入以RP为首的共享树上。
 
IP组播网络设计开发第一卷》
TCP/IP路由技术第二卷》
 
 
共享树表项:源不如RP重要了。源可能有多个,不能再一个一个创建(S,G)表项了,麻烦。
所以用(*G)表示。。
 
---SPT---RP,这也延伸出一个问题,源是怎么知道RP是在哪的呢???----------通过手动指定RP,或者自动配置RP来知道。AUTO-RRSR
 
RPF:逆向路径转发。IP单播基于目标地址路由。不关心源地址-可以有IP欺骗。
IP组播是基于源地址路由,只关心从哪来,不关心往哪去。----天生可以防止IP欺骗。
单播和组播是否要同时存在??没有单播路由协议,组播路由协议能否运行。
执行RPF功能,需要依赖单播路由表。所以,二者不可或缺。
所以,配置组播路由协议之前,必须先配单播路由协议,让网络中单播路由表收敛,目的是做RPF校验,否则RPF校验无法执行。
 
RPF校验过程:当路由器,收到来自某个接口的组播包时,组播路由器假定现在这个数据包是要从这个接口出去,去往该网络的。也就是说,不认为这个包是从S0这个口进来的,而是要从S0口出去,要去往133这个网段了,然后把这个选项和单播路由表去匹配,在此例子中,匹配全部失败,则RPF校验失败,丢弃该数据包。因为RPF验证不匹配,说明这包可能会产生环路。该包就不会从S1S2转发出去。
 
 
组播路由协议:
PIM--与协议无关的组播
并不是说它不需要单播路由协议,而是说它不关心它的单播路由表是怎么构成的,是基于RIPOSPF,还是其他的,它并不关心。
 
PIM-DM:隐式加入
PUSH模式,好比电视台的节目。当PIM-DM开始运行时,源会把组播流量FLOOD推到网络上的每个地方,这样会浪费带宽,因为一些地方可能不需要这些流量。
这就需要进行剪枝。向源发送剪枝消息,下次源FLOOD流量时候,不会再把流量发向这里(已经被修剪掉了),但是(S,G)表项是依旧还存在于每个节点的。
 
源的FLOOD和剪枝,每三分钟进行一次。
 
 
PIM-SM:显示加入
源不确定,所以关注于RPRP-流量中介。
SM模式支持有源树和共享树,它可以同时运行有源树和共享树
 
---RP            基于有源树
RP--〉接收方      基于共享树
 
源通过第一跳路由器向RP进行注册,源是通过把组播报文封装在PIM Register报文里,发送RP接口,然后再由RP进行剥头,对其中的组播报文进行处理。
 
DR:与OSPF不同,无BDR,主要是用于SM模式,其次是DM模式。在MBA访问中,DR的作用才体现出来。多个设备同处于一个网段,进行DR选举。
DR选举:比较优先级,默认为1
          比较IP地址,IP地址大的为DR
 
SM----DR:代替接收方去向RP发送一个JOIN信息。
           代替源向RP发送注册信息。
DM----DR:充当IGMP查询者,向接收方定期发送查询。
 
 
 
RP的选择:1.手工指定--手工指定不灵活   2.自动选举--a.  auto-RP  b.  BSR
 
组播配置:PIMv2配置
DM模式,SM模式,DM-SM模式
 
基本配置:
1.ip multicast-routing 启用组播路由功能
2.进入接口,启用PIM,并配置它的模式
 
DM模式配置:无RP,配置起来很简单
先配置单播路由协议,来保障RPF校验功能
 
1.各路由器开启组播路由功能---ip multicast-routing
2.进入各个接口,启用PIM,并配置它的模式---IP pim dense-mode
  之后可看到邻居关系自动建立了。
3.验证组播路由表,查看配置情况:show ip mroute,,当前只有一个224.0.0.40这条目,用来监听RP消息。
   通过将一个回环口加入一个组播组来验证配置情况--ip igmp join group 224.X.X.X,,再切换至另外一台路由器上,来PING这个组播组地址。
  show ip mroute summary,可以查看组播路由表精简版。
看到RPIP 0.0.0.0 代表无RP----D代表DM
   show ip pim neighbor,查看PIM邻居信息
 
 
 
SM模式配置:
1.
2.ip pim sparse-mode,启用稀疏模式
3.clear ip mroute *,清除之前的DM配置的路由表缓存。
4.ping 之前的224.1.1.1ping不同,为什么呢?和RP有关,show ip pim ip mapping,查不出有组播组到RP的映射关系。即组播组没有RP的信息,那么就无法进行流量的转发。SM先把组播流发给RP,再由RP进行转发。
 
5.RP的配置.
SM-DM:当网络中,无法找到可用RP时,SM会转为DM进行操作。
 
RP的指定:静态指定与动态指定
静态指定:手工指定IP
动态指定:AUTO-RP ,BSR。二者功能差不多。
 
1.静态指定:ip pim rp-address x.x.x.x ,所有组播路由器都要配置为同一个RP地址。否则会提示RP地址无效。
 
通过show ip pim rp mapping查看组播组与RP的映射关系。
 
2.动态指定:选择一个RP,或者将多个地址做为RP的候选-备份
 
AUTO-RP
1.ip pim send-rp-announce interface f0/0,224.0.1.39发送消息说自己是某个组的候选RP,并指定一个TTL值,该值通常不会太大,1012等等,,为跳数。
group-list 1:表明自己是这个ACL所允许的IP的候选RP
此外,使用此命令的前提是,f0/0需要加入PIM-SM中。
2.ip pim send-rp-discover~~~AB配置成映射代理,监听发送到224.0.1.39的信息,并向224.0.1.40发送一条RP到组播组的映射消息,传播范围也是通过TTL值来指定。其他路由器监听此地址,来了解RP的是谁,位置在哪
pim send-rp-discover,在配置了.ip pim send-rp-an interface的路由器上进行配置,其他的路由器不用配置。-------自己总结的,好像不对
 
 
组播验证命令:
show ip pim interface
查看参与到PIM的接口的PIM模式,DM或者SM,以及邻居的数量和DR信息
 
show ip pim neighbor
查看pim的邻居关系,在组播PIM无法ping通的情况下用来查看PIM的邻接关系是否有正常建立
 
SHOW IP PIM RP
 
SHOW IP PIM RP MAPPING
 
SHOW IP IGMP INTERFACE,查看IGMP信息
 
SHOW IP IGMP GROUP GROUP-ADDRESS