组播PIM Sparse的特殊转发模型SSM详解
SSM(Source Specific Multicast) 是一种可以直接从叶路由器向源建立源树的组播转发模型. 主要适用于one-to-many模型.
模型中不需要flood, 不需要register, 将直接通过(S, G) Join Message来完成SPT建立.
该模型需要运行PIM Sparse Mode, 并且不需要设置任何RP
该模型构建组播路由表将不再有(*, G)表项, 直接生成(S, G)表项
运行SSM 的三大条件:
1.sparse mode without rp
2.igmp version 3
3.set ssm group address range
1, 2, 3要同时满足
SSM Range 的设定要求在所有运行SSM的路由器上都要完成, 命令如下:
ip pim ssm range [acl]
access-list [num] permit [group address] [wildcard bit]
拓扑图如下:
第一步:配置IP地址,以R2为例:
interface FastEthernet1/0
ip address 101.1.1.1 255.255.255.0
no shutdown
interface FastEthernet2/0
ip address 28.1.1.2 255.255.255.0
no shutdown
第二步:配置IGP-OSPF,以R2为例:
router ospf 100
router-id 2.2.2.2
network 28.1.1.2 0.0.0.0 area 0
network 101.1.1.1 0.0.0.0 area 0
第三步:配置组播路由功能,以R2为例:
ip multicast-routing
第四步:配置组播PIM Sparse模式,以R2为例:
interface FastEthernet1/0
ip pim sparse-mode
interface FastEthernet2/0
ip pim sparse-mode
第五步:配置SSM
实现SSM一共三个条件,第一个条件全网启用Sparse模式并且不存在RP(已经满足);
第二个条件,启用igmpv3,配置如下:
R7(config)#int f0/0
R7(config-if)#ip igmp version 3
PC(config)#int f0/0
PC(config-if)#ip igmp version 3
PC(config-if)#ip igmp join-group 224.1.1.1 source 101.1.1.100
第三个条件,所有路由器set ssm group address range,以R7为例:
R7(config)#ip pim ssm range 1
R7(config)#access-list 1 permit 224.1.1.1
第六步:看现象,针对SSM的组,每台路由器只有(S,G)表项,没有(*,G)表项,以R7为例:
R7#show ip mrout
IP Multicast Routing Table
(101.1.1.100, 224.1.1.1), 00:00:21/00:02:39, flags: sTI
Incoming interface: FastEthernet1/0, RPF nbr 67.1.1.6
Outgoing interface list:
FastEthernet0/0, Forward/Sparse, 00:00:21/00:02:39
第七步:发送组播流量测试
Server#ping 224.1.1.1 repeat 10
Type escape sequence to abort.
Sending 10, 100-byte ICMP Echos to 224.1.1.1, timeout is 2 seconds:
Reply to request 0 from 192.168.1.100, 100 ms
Reply to request 1 from 192.168.1.100, 100 ms
Reply to request 2 from 192.168.1.100, 140 ms
Reply to request 3 from 192.168.1.100, 144 ms
Reply to request 4 from 192.168.1.100, 116 ms
Reply to request 5 from 192.168.1.100, 96 ms
Reply to request 6 from 192.168.1.100, 88 ms
Reply to request 7 from 192.168.1.100, 68 ms
Reply to request 8 from 192.168.1.100, 108 ms
Reply to request 9 from 192.168.1.100, 104 ms
测试成功,SSM成功。
如果开启抓包,可以抓取到下游发送的(S,G)join,如果下面接受者离开,会发送(*,G)Prune消息。