【IP组播】PIM-SM的RP、RPF校验

这篇具有很好参考价值的文章主要介绍了【IP组播】PIM-SM的RP、RPF校验。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一:PIM-SM的RP

原理概述

实验目的

实验内容

实验拓扑

1.基本配置

2.配置IGP

3.配置PIM-SM和静态RP

4.配置动态RP

5.配置Anycast RP

二: RPF校验

原理概述

实验目的

实验内容

实验拓扑

1.基本配置

2.配置IGP

3.配置PIM-DM

4.RPF校验过程

5.配置组播静态路由。

一:PIM-SM的RP

原理概述

       一个 PIM-SM 网络中可以存在一个或多个 RP 。一个 RP 可以对应若干个组播组,负责这些组播组的注册消息的处理、加入消息的处理以及组播数据的转发,但是同一个组播组只能对应一个 RP 。 RP 是 PIM-SM 网络的核心,网络中的路由器必须知道 RP 的地址。
       RP 有两种形式:静态 RP动态 RP 静态 RP 是由人工选定的, PIM 网络中的所有 PIM 路由器上都需要逐一进行配置;通过配置,每台路由器便知道了静态 RP 的地址。动态 RP的确定过程相对比较复杂一些:在 PIM 网络中人工选定并配置若干台 PIM 路由器,使得它们成为 C-RP ( Candidate-RP ), RP 将从 C-RP 中选举产生。如果 C-RP 只有一个,则 RP 就是这个 C-RP ;如果有多个 C-RP ,则优先级最高者优先级数值越小优先级越高,缺省值是0将会被选举为 RP ;如果通过优先级比较无法选举出 RP ,则依靠 Hash 算法算出的数值来决定 RP ,数值最大者将成为 RP ( Hash 算法参数:组地址、掩码长度、 C-RP 地址);如果通过 Hash 数值也无法确定出 RP ,则拥有最高 IP 地址的 C-RP 将成为 RP 。选定和配置 C-RP 时,还必须同时选定和配置 C- BSR ( Candidate-BootStrap Router ),并由 C-BSR 选举产生出一个 BSR 。如果有多个 C-BSR ,则拥有最高优先级的 C-BSR 将成为 BSR ;如果根据优先级无法确定出 BSR ,则拥有最高 IP 地址的 C-BSR 将成为 BSR 。 BSR 是 PIM-SM 网络的管理核心,它负责收集网络中 C-RP 发出的 Advertisement 宣告信息,并计算出与每个组播组对应的 RP ,然后将 RP 的信息发布到整个 PIM -SM 网络中。
       在传统的 PIM- SM 网络中,每个组播组只能映射到一个 RP ,当网络负载较大以及流量分布不合理时,可能导致 RP 拥塞或者网络资源严重浪费的情况。解决上述问题的一个方案便是配置 Anycast RP :在同一个 PIM-SM 网络中设置多个具有相同环回地址的 RP ,组播源和组播用户分别选择距离自己最近的 RP 进行 RPT 的创建,从而实现分担和优化组播流量的目的。

实验目的

理解RP的作用

掌握静态和动态RP的配置方法

理解Anycast RP的应用场景

掌握Anycast RP的配置方法

实验内容

实验拓扑如图所示,本实验网络包含了6台路由器、两台组播服务器和两台终端电脑。全网运行OSPF,并通过PIM-SM来实现组播服务。网络管理员需要配置静态RP、动态RP、Anycas RP,以便加深对PIM-SM网络行为的理解和认识。、

实验拓扑

【IP组播】PIM-SM的RP、RPF校验,智能路由器

1.基本配置

根据拓扑图进行相应的基本配置,并使用ping命令检测R1与R3之间的连通性。

【IP组播】PIM-SM的RP、RPF校验,智能路由器

其余直连网段的连通性测试过程在此省略。

配置组播服务器Source-1的组播IP地址为224.1.1.1,组播MAC地址为01-00-5E-01-01-01,如图所示。

【IP组播】PIM-SM的RP、RPF校验,智能路由器                                                                         配置Source-1

配置组播服务器Source-2的组播IP地址为225.1.1.1,组播MAC地址为01-00-5E-02-02-02,如图所示

【IP组播】PIM-SM的RP、RPF校验,智能路由器

                                                                                配置Source-2

2.配置IGP

在每台路由器上配置ODPF协议。

[r1]ospf 1
[r1-ospf-1]area 0
[r1-ospf-1-area-0.0.0.0]network 10.0.1.1 0.0.0.0
[r1-ospf-1-area-0.0.0.0]network 10.0.11.11 0.0.0.0
[r1-ospf-1-area-0.0.0.0]network 10.0.13.0 0.0.0.255
[r1-ospf-1-area-0.0.0.0]network 10.0.12.0 0.0.0.255
[r1-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255

[r2]ospf 1
[r2-ospf-1]area 0
[r2-ospf-1-area-0.0.0.0]network 10.0.24.0 0.0.0.255
[r2-ospf-1-area-0.0.0.0]network 10.0.12.0 0.0.0.255
[r3-LoopBack0]ip add 10.0.3.3 24

[r3]ospf 1
[r3-ospf-1]area 0
[r3-ospf-1-area-0.0.0.0]network 10.0.3.3 0.0.0.0
[r3-ospf-1-area-0.0.0.0]network 10.0.13.0 0.0.0.255
[r3-ospf-1-area-0.0.0.0]network 10.0.35.0 0.0.0.255
[r3-ospf-1-area-0.0.0.0]network 10.0.34.0 0.0.0.255

 

[r4]ospf 1
[r4-ospf-1]
[r4-ospf-1]area 0
[r4-ospf-1-area-0.0.0.0]network 10.0.4.4 0.0.0.0
[r4-ospf-1-area-0.0.0.0]network 10.0.34.0 0.0.0.255
[r4-ospf-1-area-0.0.0.0]network 10.0.24.0 0.0.0.255
[r4-ospf-1-area-0.0.0.0]network 10.0.46.0 0.0.0.255

[r5]ospf 1
[r5-ospf-1]
[r5-ospf-1]area 0
[r5-ospf-1-area-0.0.0.0]
[r5-ospf-1-area-0.0.0.0]network 10.0.35.0 0.0.0.255
[r5-ospf-1-area-0.0.0.0]
[r5-ospf-1-area-0.0.0.0]network 10.0.56.0 0.0.0.255
[r5-ospf-1-area-0.0.0.0]
[r5-ospf-1-area-0.0.0.0]network 172.16.4.0 0.0.0.255

 

[r6]ospf 1
[r6-ospf-1]area 0
[r6-ospf-1-area-0.0.0.0]network 10.0.1.1 0.0.0.0
[r6-ospf-1-area-0.0.0.0]network 10.0.6.6 0.0.0.0
[r6-ospf-1-area-0.0.0.0]network 10.0.46.0 0.0.0.255
[r6-ospf-1-area-0.0.0.0]network 10.0.56.0 0.0.0.255
[r6-ospf-1-area-0.0.0.0]network 172.16.2.0 0.0.0.255

 配置完成后,查看R1的路由器。

<r1>display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
         Destinations : 25       Routes : 25       

Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface

       10.0.1.1/32  Direct  0    0           D   127.0.0.1       LoopBack0
       10.0.3.3/32  OSPF    10   1           D   10.0.13.3       GigabitEthernet
0/0/1
       10.0.4.4/32  OSPF    10   2           D   10.0.12.2       GigabitEthernet
0/0/0
       10.0.6.6/32  OSPF    10   3           D   10.0.13.3       GigabitEthernet
0/0/1

     10.0.11.11/32  Direct  0    0           D   127.0.0.1       LoopBack1
      10.0.12.0/24  Direct  0    0           D   10.0.12.1       GigabitEthernet
0/0/0
      10.0.12.1/32  Direct  0    0           D   127.0.0.1       GigabitEthernet
0/0/0
    10.0.12.255/32  Direct  0    0           D   127.0.0.1       GigabitEthernet
0/0/0
      10.0.13.0/24  Direct  0    0           D   10.0.13.1       GigabitEthernet
0/0/1
      10.0.13.1/32  Direct  0    0           D   127.0.0.1       GigabitEthernet
0/0/1
    10.0.13.255/32  Direct  0    0           D   127.0.0.1       GigabitEthernet
0/0/1
      10.0.24.0/24  OSPF    10   2           D   10.0.12.2       GigabitEthernet
0/0/0
      10.0.34.0/24  OSPF    10   3           D   10.0.12.2       GigabitEthernet
0/0/0
      10.0.35.0/24  OSPF    10   2           D   10.0.13.3       GigabitEthernet
0/0/1
      10.0.46.0/24  OSPF    10   4           D   10.0.13.3       GigabitEthernet
0/0/1
      10.0.56.0/24  OSPF    10   3           D   10.0.13.3       GigabitEthernet
0/0/1

      127.0.0.0/8   Direct  0    0           D   127.0.0.1       InLoopBack0
      127.0.0.1/32  Direct  0    0           D   127.0.0.1       InLoopBack0
127.255.255.255/32  Direct  0    0           D   127.0.0.1       InLoopBack0
     172.16.1.0/24  Direct  0    0           D   172.16.1.254    GigabitEthernet
0/0/2
   172.16.1.254/32  Direct  0    0           D   127.0.0.1       GigabitEthernet
0/0/2
   172.16.1.255/32  Direct  0    0           D   127.0.0.1       GigabitEthernet
0/0/2
     172.16.2.0/24  OSPF    10   4           D   10.0.13.3       GigabitEthernet
0/0/1
     172.16.3.0/24  OSPF    10   2           D   10.0.12.2       GigabitEthernet
0/0/0

255.255.255.255/32  Direct  0    0           D   127.0.0.1       InLoopBack0

可与看到,R1已经获得了所有网段的路由信息。至此,网络已经通过OSPF实现了互通。

3.配置PIM-SM和静态RP

在所有路由器上开启组播功能,并在每台路由器的每个接口下配置命令pim-sm,除此之外,还需要在R1的G0/0/2和R6的G0/0/1接口下使能IGMP。

[r1]multicast routing-enable
[r1]int g0/0/0
[r1-GigabitEthernet0/0/0]pim sm
[r1-GigabitEthernet0/0/0]int g0/0/1
[r1-GigabitEthernet0/0/1]pim sm
[r1-GigabitEthernet0/0/1]int g0/0/2
[r1-GigabitEthernet0/0/2]pim sm
[r1-GigabitEthernet0/0/2]igmp enable

 

[r2]multicast routing-enable
[r2]int g0/0/0
[r2-GigabitEthernet0/0/0]pim sm
[r2-GigabitEthernet0/0/0]int g0/0/1
[r2-GigabitEthernet0/0/1]pim sm
[r2-GigabitEthernet0/0/1]int g0/0/2
[r2-GigabitEthernet0/0/2]pim sm

 

[r3]multicast routing-enable
[r3]int g0/0/0
[r3-GigabitEthernet0/0/0]pim sm
[r3-GigabitEthernet0/0/0]int g0/0/1
[r3-GigabitEthernet0/0/1]pim sm
[r3-GigabitEthernet0/0/1]int g0/0/2
[r3-GigabitEthernet0/0/2]pim sm

 

[r4]multicast routing-enable
[r4]int g0/0/0
[r4-GigabitEthernet0/0/0]pim sm
[r4-GigabitEthernet0/0/0]int g0/0/1
[r4-GigabitEthernet0/0/1]pim sm
[r4-GigabitEthernet0/0/1]int g0/0/2
[r4-GigabitEthernet0/0/2]pim sm

 

[r5]multicast routing-enable
[r5]int g0/0/0
[r5-GigabitEthernet0/0/0]pim sm
[r5-GigabitEthernet0/0/0]int g0/0/1
[r5-GigabitEthernet0/0/1]pim sm
[r5-GigabitEthernet0/0/1]int g0/0/2
[r5-GigabitEthernet0/0/2]pim sm

 

[r6]multicast routing-enable
[r6]int g0/0/0
[r6-GigabitEthernet0/0/0]pim sm
[r6-GigabitEthernet0/0/0]int g0/0/1
[r6-GigabitEthernet0/0/1]pim sm
[r6-GigabitEthernet0/0/1]igmp enable
[r6-GigabitEthernet0/0/1]int g0/0/2
[r6-GigabitEthernet0/0/2]pim sm

配置完成后,查看R1的PIM邻居信息。 

【IP组播】PIM-SM的RP、RPF校验,智能路由器 可以看到,R1与R2和R3都已成功建立了PIM邻居关系。接下来,在每台路由器上手工配置R1(10.0.11.11)为静态RP。

[r1]interface loopback 1
[r1-LoopBack1]pim sm
[r1-LoopBack1]pim
[r1-pim]static-rp 10.0.11.11

 

[r2]pim
[r2-pim]static-rp 10.0.11.11

 

[r3]pim
[r3-pim]static-rp 10.0.11.11

 

[r4]pim
[r4-pim]static-rp 10.0.11.11

 

[r5]pim 
[r5-pim]static-rp 10.0.11.11

 

[r6]pim
[r6-pim]static-rp 10.0.11.11

配置完成后,在R1和R2上查看RP信息。

【IP组播】PIM-SM的RP、RPF校验,智能路由器

【IP组播】PIM-SM的RP、RPF校验,智能路由器

可以看到,R1(10.0.11.11)已经成为了静态RP。

4.配置动态RP

选定并设置R1和R6为C-RP,R1使用loopback 0为RP接口,R6使用loopback 1为RP接口。同时,选定并配置R3和R4为C-BSR,R3和R4都使用LoopBack 0作为C-BRS接口。

[r1]int loopback 0
[r1-LoopBack0]pim sm
[r1-LoopBack0]pim
[r1-pim]c-rp loopback 0
 

[r6]int loopback 1
[r6-LoopBack1]pim sm
[r6-LoopBack1]pim
[r6-pim]c-rp loopback 1

[r3]int loopback 0
[r3-LoopBack0]pim sm
[r3-LoopBack0]pim
[r3-pim]c-bsr loopback 0

 

[r4]int loopback 0
[r4-LoopBack0]pim sm
[r4-LoopBack0]pim
[r4-pim]c-bsr loopback 0

配置完成后,在R1上查看RP信息和BSR信息。

[r1]display pim rp-info
 VPN-Instance: public net
 PIM-SM BSR RP Number:2
 Group/MaskLen: 224.0.0.0/4
     RP: 10.0.1.1 (local)
     Priority: 0
     Uptime: 00:01:57
     Expires: 00:01:53

Group/MaskLen: 224.0.0.0/4
     RP: 10.0.6.6 
     Priority: 0
     Uptime: 00:01:57
     Expires: 00:01:53
 PIM SM static RP Number:1
     Static RP: 10.0.11.11 (local)

[r1]display pim rp-info 224.1.1.1
 VPN-Instance: public net
 BSR RP Address is: 10.0.6.6
     Priority: 0
     Uptime: 00:04:53
     Expires: 00:01:57
 Static RP Address is: 10.0.11.11
 RP mapping for this group is: 10.0.6.6

[r1]display pim bsr-info
 VPN-Instance: public net
 Elected AdminScoped BSR Count: 0
 Elected BSR Address: 10.0.4.4
     Priority: 0
     Hash mask length: 30
     State: Accept Preferred
     Scope: Not scoped
     Uptime: 00:05:56
     Expires: 00:01:14
     C-RP Count: 2

可以看到,R1和R6的RP优先级的值在缺省情况下都为0。当静态RP和动态RP同时存在时,动态RP优先。在优先级和Hash值的掩码长度相同的情况下,IP地址较大的C-RP(R6)被选为了RP。另外,C-BSR优先级相同的情况下,IP地址较大的R4或为了BSR。

通过修改优先级,可以控制RP的选举。

[r6]pim
[r6-pim]c-rp priority 10

配置完成后,重新在R1上查看RP的信息。

<r1>display pim rp-info 224.1.1.1
 VPN-Instance: public net
 BSR RP Address is: 10.0.1.1
     Priority: 0
     Uptime: 00:21:01
     Expires: 00:01:49
 Static RP Address is: 10.0.11.11
 RP mapping for this group is: 10.0.1.1 (local host) 

可以看到,当R6的RP优先级的值调整为10(数值越小优先级越高)时,优先级较高的R1成为了RP。

5.配置Anycast RP

本网络中,若R1为RP,那么当Source-2发送组播数据,PC-2接收时,组播源端DR(R5)产生的注册消息和用户端DR(R6)产生的加入消息都要发送给远处的R1,另外,组播数据也要经历R5-R1-R6的绕行路径,浪费了链路带宽和路由器的CPU资源。在这种情况下,配置Anycast RP便是一个不错的解决方案。

在R1和R6上配置Anycast RP。

[r1]pim
[r1-pim]anycast-rp 10.0.1.1
[r1-pim-anycast-rp-10.0.1.1]local-address 10.0.11.11
[r1-pim-anycast-rp-10.0.1.1]peer 10.0.6.6

[r6]int loopback 0
[r6-LoopBack0]pim sm
[r6-LoopBack0]pim
[r6-pim]undo c-rp loopback 1
[r6-pim]undo c-rp priority
[r6-pim]c-rp loopback 0
[r6-pim]anycast-rp 10.0.1.1
[r6-pim-anycast-rp-10.0.1.1]local-address 10.0.6.6
[r6-pim-anycast-rp-10.0.1.1]peer 10.0.11.11

配置完成后,在R1和R6上查看RP信息。

<r1>display pim rp-info 224.1.1.1
 VPN-Instance: public net
 BSR RP Address is: 10.0.1.1
     Priority: 0
     Uptime: 00:38:20
     Expires: 00:01:30
 Static RP Address is: 10.0.11.11
 RP mapping for this group is: 10.0.1.1 (local host)

[r6]display pim rp-info  225.1.1.1
VPN-Instance: public net
 BSR RP Address is: 10.0.1.1

     Priority: 0
     Uptime: 00:40:29
     Expires: 00:02:25
 Static RP Address is: 10.0.11.11
  RP mapping for this group is: 10.0.1.1 (local host)

可以看到,RP为10.0.1.1,R1和R6都可充当RP。接下来将要验证,组播注册消息和加入消息会由就近的RP来处理。

在R1和R6上打开Debugging功能。

<r1>debugging pim register
<r1>debugging pim join-prune
<r1>terminal monitor
<r1>terminal debugging


<r6>debugging pim register
<r6>debugging pim join-prune

<r6>terminal monitor
<r6>terminal debugging

配置完成后,让Source-1发送224.1.1.1组播流量,PC-1接收,查看注册消息和加入消息的收发情况。

< RI >
Mar 30 202418:36:22.634.1-05:13 RI PIM /7/REG:( public net ): PIM ver 2 REG receiving 172.16.3.254>10.0.1.1 on GigabitEthernet0/0/0(S01758)
<R1>

Mar 30 2024 18:36:22.634.2-05:13R1 PIM /7/REG:( public net ): Border bit : false , Null bit : false (S01769)
< RI >
Mar 30 2024 18:36:22.634.3-05:13R1 PIM /7/REG:( public net ): Encapsulated ip src :172.16.3.1, dst :224.1.1.1, len :20 (S01787)

<R1>
Mar 30 202418:36:22.634.4-05:13R1 PIM /7/REG:( public net ): Receiving register message with source 172.16.3.1, group address 224.1.1.1(S213262)

< RI >
Mar 30 2024 18:36:22.634.5-05:13R1 PIM /7/REG:( public net ): Receiving register from 172.16.3.254, Store the Source DR address (S213467)
<R1>
Mar 30 2024 18:36:22.634.6-05:13 R1 PIM /7/REG:( public net ): PIM ver 2 RSP sending 10.0.1.1>172.16.3.254 on GigabitEthernet0/0/0(S01624)
...
<R1>
Mar 30 2024 18:36:42.134.3-05:13R1 PIM /7/JP:( public net ): Group :224.1.1.1/32--- I join 0 prune (P013107)
<R1>
 Mar 30 202418:36:42.134.4-05:13 RI PIM /7/JP:( public net ): Join :172.16.3.1/32 S (P013117)
......
<R6>
Mar 30 2024 18:36:25.175.1-05:13R6 PIM /7/REG:( public net ): PIM ver 2 REG receiving 10.0.11.11->10.0.6.6 on GigabitEthernet0/0/2 (S01758)

<R6>
Mar 30 202418:36:25.175.2-05:13R6 PIM /7/REG:( public net ): Border bit : false , Null bit : false (S01769)
<R6>
Mar 30 2024 18:36:25.175.3-05:13R6 PIM /7/REG:( public net ): Encapsulated ip src :172.16.3.1, dst :224.1.1.1, len :20
(S01787)

......

从上面的显示信息中可以看到源端DR(172.16.3.254)发送给R1的注册消息,以及用户端DR(R1)发送给R1的组播加入消息。另外还可以看到,R1将注册报文重新封装后发送给了Anycast RP的对等体R6,以便共享组播源信息。

当Source-2发送225.1.1.1组播数据,PC-2接收时,类似于上面的实验观察将表明,组播注册消息和加入消息都会就近发送给R6处理。 

二: RPF校验

原理概述

        所谓 RPF ( Reverse Path Forwarding )校验,就是指在基于 Source-Based Tree 的组播网络(例如 PIM-DM 网络)中路由器通过查找去往组播源的最优单播路由来判断所收到的组播数据是否来源于"正确的"上游接口。某一路由器去往某一组播源的最优单播路由所对应的出接口称为该路由器上关于该组播源的 RPF 接口。一台路由器从某一接口收到一个组播数据后,如果发现该接口不是相应组播源的 RPF 接口,就意味着 RPF 校验失败,所收到的组播数据将被丢弃;如果发现该接口正是相应组播源的 RPF 接口,就表明 RPF 校验通过,所收到的组播数据将被进行后续处理。
       正是因为有了 RPF 校验机制,基于 Source-Based Tree 的组播网络中所生成的组播树才能是一棵 SPT ( Shortest Path Tree ),同时, RPF 校验机制也防止了组播数据在转发过程中出现重复报文及流量环路的情况。另外, RPF 校验过程中所使用的单播路由可以来源于任何一种单播路由协议,并不依赖于某一特定的单播路由协议。
        当然,为了某些特殊的需要, RPF 接口也是可以被人为修改的。如果路由器上配置了组播静态路由,则 RPF 校验将首先依据组播静态路由而非单播路由。通过配置组播静态路由,可以在当前路由器上为特定的组播源人为指定一个 RPF 。组播静态路由只在所配置的路由器上才有效,不会以任何方式传递给其他路由器。

实验目的

理解 RPF 的原理和作用
掌握组播静态路由的配置方法

实验内容

实验拓扑如图所示。本实验网络包含了4台路由器、一台交换机、两台组播服务器和两台终端电脑,全网运行 OSPF ,并且部署了 PIM - DM 。组播服务器 Source -1存储的是学习视频,Source -2存储的是电影视频, PC-1需要从 Source-1接收学习视频, PC-2需要从 Source-2接收电影视频。网络管理员需要在R4上配置组播静态路由,以实现对组播流量分布的优化。

实验拓扑

【IP组播】PIM-SM的RP、RPF校验,智能路由器

1.基本配置

根据拓扑图进行相应的基本配置,并用ping命令检测R1与R2之间的连通性。

【IP组播】PIM-SM的RP、RPF校验,智能路由器

 其余网段的连通性测试过程在此省略。

配置组播服务器Source-1的组播IP地址为224.1.1.1,组播MAC地址为01-00-5E-01-01-01,如图所示。

【IP组播】PIM-SM的RP、RPF校验,智能路由器

 配置组播服务器Source-2的组播IP地址为225.1.1.1,组播MAC地址为01-00-5E-02-02-02,如图所示。

【IP组播】PIM-SM的RP、RPF校验,智能路由器

2.配置IGP

在每台路由器上配置OSPF协议。

[r1]ospf 1
[r1-ospf-1]area 0
[r1-ospf-1-area-0.0.0.0]network 10.0.12.0 0.0.0.255
[r1-ospf-1-area-0.0.0.0]network 10.0.13.0 0.0.0.255
[r1-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255

[r2]ospf 1
[r2-ospf-1]area 0
[r2-ospf-1-area-0.0.0.0]network 10.0.12.0 0.0.0.255
[r2-ospf-1-area-0.0.0.0]network 10.0.24.0 0.0.0.255

[r3]ospf 1
[r3-ospf-1]area 0
[r3-ospf-1-area-0.0.0.0]network 20.0.1.0 0.0.0.255
[r3-ospf-1-area-0.0.0.0]network 10.0.34.0 0.0.0.255
[r3-ospf-1-area-0.0.0.0]network 10.0.13.0 0.0.0.255

[r4]ospf 1
[r4-ospf-1]area 0
[r4-ospf-1-area-0.0.0.0]network 10.0.24.0 0.0.0.255

[r4-ospf-1-area-0.0.0.0]network 10.0.34.0 0.0.0.255
[r4-ospf-1-area-0.0.0.0]network 192.168.1.0 0.0.0.255

配置完成后,查看R1的路由表。

【IP组播】PIM-SM的RP、RPF校验,智能路由器

可以看到,R1已经获得了所有网段的路由信息。至此,网络已经通过了OSPF实现了互通。

3.配置PIM-DM

在所有路由器上开启组播功能,并在每台路由器的每个接口下配置命令pim dm,除此之外,还要在R4的G0/0/2接口下使能IGMP。

[r1]multicast routing-enable
[r1]int g0/0/0
[r1-GigabitEthernet0/0/0]pim dm
[r1-GigabitEthernet0/0/0]int g0/0/1
[r1-GigabitEthernet0/0/1]pim dm
[r1-GigabitEthernet0/0/1]int g0/0/2
[r1-GigabitEthernet0/0/2]pim dm

[r2]multicast routing-enable
[r2]int g0/0/0
[r2-GigabitEthernet0/0/0]pim dm
[r2-GigabitEthernet0/0/0]int g0/0/1
[r2-GigabitEthernet0/0/1]pim dm

 

[r3]multicast routing-enable
[r3]int g0/0/0
[r3-GigabitEthernet0/0/0]pim dm
[r3-GigabitEthernet0/0/0]int g0/0/1
[r3-GigabitEthernet0/0/1]pim dm
[r3-GigabitEthernet0/0/1]int g0/0/2
[r3-GigabitEthernet0/0/2]pim dm

 

[r4]multicast routing-enable
[r4]int g0/0/0
[r4-GigabitEthernet0/0/0]pim dm
[r4-GigabitEthernet0/0/0]int g0/0/1
[r4-GigabitEthernet0/0/1]pim dm
[r4-GigabitEthernet0/0/1]int g0/0/2
[r4-GigabitEthernet0/0/2]pim dm
[r4-GigabitEthernet0/0/2]igmp enable

配置完成后,查看R1的PIM邻居信息。

【IP组播】PIM-SM的RP、RPF校验,智能路由器 可以看到,R1与R2和R3都已成功建立了PIM邻居关系。

4.RPF校验过程

       由于网络部署了 PIM-DM ,所以R1在接收到 Source-1发送的组播数据后,会通过它的每个 PIM - DM 接口转发组播数据。类似地,R2和R3也会将接收到的组播数据通过每个 PIM-DM 接口继续转发,这样一来,R4就会接收到两份来自不同接口的相同的组播数据。
        在R4上打开 Debug 功能。

<r4>debugging pim join-prune
<r4>terminal monitor
<r4>terminal debugging

配置完成后,先让 PC-1加入组播组224.1.1.1,然后在 Source-1上发送组播地址为224.1.1.1的组播视频流。 

<r4>
Mar 30 2024 19:48:08.615.1-08:00 r4 PIM/7/JP:(public net): PIM ver 2 JP  sending
 10.0.34.4 -> 224.0.0.13 on GigabitEthernet0/0/0  (P013091)

<r4>
Mar 30 2024 19:48:08.615.2-08:00 r4 PIM/7/JP:(public net): Upstream 10.0.34.3, G
roups 1, Holdtime 0 (P013097)
<r4>
Mar 30 2024 19:48:08.615.3-08:00 r4 PIM/7/JP:(public net): Group: 224.1.1.1/32 -
-- 1 join 0 prune (P013107)
<r4>
Mar 30 2024 19:48:08.615.4-08:00 r4 PIM/7/JP:(public net): Join: 172.16.1.1/32  
(P013117)

<r4>
Mar 30 2024 19:49:09.215.1-08:00 r4 PIM/7/JP:(public net): PIM ver 2 JP  sending
 10.0.24.4 -> 224.0.0.13 on GigabitEthernet0/0/1  (P013091)

<r4>
Mar 30 2024 19:49:09.215.2-08:00 r4 PIM/7/JP:(public net): Upstream 10.0.24.2, G
roups 1, Holdtime 180 (P013097)
<r4>
Mar 30 2024 19:49:09.215.3-08:00 r4 PIM/7/JP:(public net): Group: 224.1.1.1/32 -
-- 1 join 0 prune (P013107)
<r4>
Mar 30 2024 19:49:09.215.4-08:00 r4 PIM/7/JP:(public net): Join: 172.16.1.1/32  
(P013117)

       可以看到,R4向R2发送了裁剪消息,使R2不再向R4转发该组播组的数据包。后来R4又收到了来自R2的裁剪消息,因为如果R4将来自R3的组播数据包又转发给R2,R2再转发给R1,这样就会形成组播环路,所以R2与R4之间互相发送裁剪消息,避免了重复包与组播环路的问题。
       路由器之所以会发送裁剪消息避免重复包和环路问题,是由于 PIM-DM 具有 RPF 校验功能。路由器如果从非 RPF 接口收到了组播数据包,就会立即从该接口发送裁剪消息。在R4上可以观察到关于组播源172.16.1.1的RPF接口。

【IP组播】PIM-SM的RP、RPF校验,智能路由器可以看到,对于R4来说,关于组播源172.16.1.1的 RPF 接口为 GE 0/0/0、 RPF邻居为R3(10.0.34.3)。 RPF 校验将依据如下顺序确定出 RPF 接口组播静态路由、协议优先级的值最小的路由、Cost最小的路由、下一跳IP地址最大的路由。

在R4上查看单播路由表(注:R4上现在还没有配置组播静态路由)。

【IP组播】PIM-SM的RP、RPF校验,智能路由器

可以看到,R4去往组播源172.16.1.1的路由有两条,它们的协议优先级和 Cost 都是一样的。根据 RPF 校验规则,确定出来的R4的 RPF 接口应该是GE0/0/0,因为该接口对应的下一跳 IP 地址(10.0.34.3)大于接口 GE 0/0/1对应的下一跳 IP 地址(10.0.24.2)。最后,通过裁剪,组播转发路径将会是: Source -1>R1>R3>R4> PC -1。在R2上查看 RPF 接口。

在R2上查看RPF接口。

【IP组播】PIM-SM的RP、RPF校验,智能路由器      从上面的显示信息可知,R2上关于组播源172.16.1.1的 RPF 接口是 GE 0/0/0, RPF 邻居为R1(10.0.12.1)。
       每台路由器上对于一个特定的组播源都只有唯一一个 RPF 接口,如果来自该组播源的组播数据包不是从这个 RPF 接口收到的话,将会被直接丢弃。

5.配置组播静态路由。

       本网络中, Source -1使用组播地址224.1.1.1, Source-2使用组播地址225.1.1.1,二者同时发送组播视频流量, PC-1加入组播组224.1.1.1, PC-2加入组播组225.1.1.1。在这样的情况下,两个组播源发送的组播数据都会通过R3转发给R4。为了减轻R3的一部分负担,管理员可以在R4上配置组播静态路由,使得来自 Source-1的组播流量由R2转发给R4。
        在R4上配置组播静态路由,修改关于组播源172.16.1.1的 RPF 接口。

[r4]ip rpf-route-static 172.16.1.0 24 10.0.24.2

 配置完成后,在R4上查看关于组播源172.16.1.1的 RPF 接口。【IP组播】PIM-SM的RP、RPF校验,智能路由器

可以看到,R4上关于组播源172.16.1.1的 RPF 接口已经变成了 GE 0/0/1。
让 PC-1加入组播组224.1.1.1, PC-2加入组播组225.1.1.1后,让 Source-1和 Source-2同时发送组播视频,并在R4的 GE 0/0/1接口查看报文情况,如图所示。 

【IP组播】PIM-SM的RP、RPF校验,智能路由器

                                                      R4的G0/0/1接口报文情况 

可以看到,R4的 GE 0/0/0接口接收到的是组播地址为225.1.1.1的 UDP 组播数据流。至此,学习视频流量的转发路径为: Source-1>R1>R2>R4> PC-1,电影视频流量的转发路径为:Source -2>R3>R4>PC-2,R3上的流量负担得以减轻,实现了组播流量分布的优化。文章来源地址https://www.toymoban.com/news/detail-850311.html

到了这里,关于【IP组播】PIM-SM的RP、RPF校验的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 组播协议的RP

    某组播网络示意图如图,其中MCS1是组播地址(G1)的组播源,PC1和PC2是组G1的接收者。 1.上述组播网络中,端口1、2、3需要运行哪些协议,为什么需要运行这些协议?(仅填必配的组播协议)详细写出具体原因         结合上述拓扑,考虑到存在RP场景,因此运行组播路由协议

    2023年04月23日
    浏览(35)
  • 七、W5100S/W5500+RP2040树莓派Pico<UDP 组播>

      UDP组播是一种基于UDP协议的通信方式,它允许一台计算机通过发送单个UDP数据包来同时向多个目标发送信息。这种通信方式在需要高效、实时的数据传输的应用中非常有用,比如视频直播、在线游戏等。   本章节将进行UDP组播回环测试。   W5100S/W5500是一款集成全硬

    2024年02月06日
    浏览(37)
  • 组播IP 映射 组播MAC

    1、在IP分类中,D类IP地址用于组播MAC。 2、在TCP/IP中,最常用的v4组播MAC地址的前24位固定为01005e,第25位固定为0,后23位由IP地址的后23位复制得出。 3、在D类组播IP中有5位未用,也就是说组播IP和组播MAC的映射并不唯一, 4、每一个组播MAC最多可映射对应32个组播IP。 5、备注:

    2024年02月02日
    浏览(40)
  • SM3加密与解密校验

    SM3密码杂凑算法是中国国家密码管理局2010年公布的中国商用密码杂凑算法标准。具体算法标准原始文本参见参考文献[1]。该算法于2012年发布为密码行业标准(GM/T 0004-2012),2016年发布为国家密码杂凑算法标准(GB/T 32905-2016)。 SM3适用于商用密码应用中的数字签名和验证,是在[S

    2024年02月02日
    浏览(39)
  • 组播IP地址到组播MAC地址的映射

    以太网的MAC地址由48位二进制数标识,而以太网组播MAC地址的前24位固定为 01-00-5e ,因此组播MAC地址主要靠后面24位标识。 在IP地址分类中,D类地址(范围:224.0.0.0 - 239.255.255.255)被用于组播,而IP地址是由32位二进制组成的,将其转换为二进制表示为: 组播IP地址到组播MAC地

    2024年02月06日
    浏览(36)
  • IP传输方式——组播

    组播作为IP传输三种方式之一,指的是报文从一个源发出,被转发到一组特定的接收者,相同的报文在每条链路上最多有一份。相较于传统的单播和广播,组播可以有效地节约网络带宽、降低网络负载,所以被广泛应用于IPTV、实时数据传送和多媒体会议等网络业务中。 组播和

    2024年03月16日
    浏览(37)
  • IP组播基础

    单播承载点到多点业务,会造成源端负担过大,大量重复的单播数据流占用链路带宽等问题 广播承载点到多点业务,能减轻源端负担,但是会带来新的问题 广播数据无法跨网段传递,传播范围受地域限制 数据的安全性无法保障,接入该二层网络中的终端都可以接收到该数据

    2023年04月08日
    浏览(31)
  • openssl+ SM2 + linux 签名校验开发实例(C++)

    SM2的校验过程是使用椭圆曲线上的公钥验证签名的有效性。以下是SM2校验的理论基础相关知识点: SM2签名算法: SM2的校验基于椭圆曲线数字签名算法(ECDSA)。在签名算法中,签名者使用私钥对消息的哈希值进行签名,而验证者使用相应的公钥、签名值和消息的哈希值进行验

    2024年01月22日
    浏览(51)
  • 交换机IP组播配置详解

    1、IP组播简介 IP组播在一些多用户定向发送的网络应用中使用非常普遍,如远程多媒体会议、远程教学、视频点播、定向电子商务,以及ISP的IPTV(网络电视)等。而这些应用又是目前最热门的互联网应用,在大多数公司中都有一些这类应用,所以学好IP组播基础知识及配置与

    2024年02月02日
    浏览(35)
  • 2027.win10配置组播ip

    1 安装组播协议 win10 更改适配器选项,找到对应网卡,右键属性, Microsoft 网络适配器多路传送器协议 ,点击安装 可靠多播协议 2 将组播IP加入路由表 ,管理员权限打开cmd route add 239.168.20.1 mask 255.255.255.255 0.0.0.0 IF 6 , 其中6 为接口索引,具体参考route print 查看. 3 查看当前网卡

    2024年02月08日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包