简介
本文档介绍当源位于vPC环境中时组播转发的各种场景
先决条件
要求
Cisco 建议您了解以下主题:
使用的组件
本文档中的信息基于以下软件和硬件版本:
- 运行软件8.1(1)的Nexus 7000
-
管理引擎N7K-SUP2E
-
线卡N7K-M348XP-25L
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
拓扑
配置
交换机A和交换机B是VPC对等体。
发送方1连接到VLAN 50(10.200.255.230、239.3.0.2)
Sender2连接到VLAN 30中的L3_swicth/路由器,并且通过VLAN 25(10.30.30.30、239.3.0.2)为vpc-peer所知
接收器1连接在交换机A的孤立端口4/1上
接收器2连接在交换机B的孤立端口4/1上
Switch A
Ip route 10.30.30.0/24 10.25.25.250
ip pim rp-address 10.25.25.250 group-list 224.0.0.0/4
ip pim ssm range 232.0.0.0/8
ip pim pre-build-spt
Switch B
Ip route 10.30.30.0/24 10.25.25.250
ip pim rp-address 10.25.25.250 group-list 224.0.0.0/4
ip pim ssm range 232.0.0.0/8
ip pim pre-build-spt
源连接到vPC VLAN
Receiver1持续请求来自组239.3.0.2的流量,并在VLAN 10中的交换机A上注册(*, G)。
交换机B在CFS的帮助下添加了相同条目。接收方可以连接在VPC VLAN中的孤立或vpc成员端口上。
由于Sender1连接到发送到VLAN 50的VPC VLAN流量,并且Nexus设备都添加OIF条目(S, G)。
当发送方直接连接到vPC VLAN时,两台设备都根据PIM内部转发算法转发流量。
Switch A# show ip pim internal vpc rpf-source
PIM vPC RPF-Source Cache for Context "default" - Chassis Role Secondary
Source: 10.200.255.230
Pref/Metric: 0/0
Ref count: 1
In MRIB: yes
Is (*,G) rpf: no
Source role: Primary
Forwarding state: Win-force (forwarding)
Switch B# show ip pim internal vpc rpf-source
PIM vPC RPF-Source Cache for Context "default" - Chassis Role Secondary
Source: 10.200.255.230
Pref/Metric: 0/0
Ref count: 1
In MRIB: yes
Is (*,G) rpf: no
Source role: secondary
Forwarding state: Win-force (forwarding)
OIF也填充到两个vpc对等体。
Switch A# show ip mroute
(*, 232.0.0.0/8), uptime: 02:16:01, pim ip
Incoming interface: Null, RPF nbr: 0.0.0.0
Outgoing interface list: (count: 0)
(*, 239.3.0.2/32), uptime: 01:42:35, igmp ip pim
Incoming interface: Vlan10, RPF nbr: 10.10.10.251
Outgoing interface list: (count: 1)
Vlan10, uptime: 01:42:35, igmp, (RPF)
(10.200.255.230/32, 239.3.0.2/32), uptime: 02:15:57, ip pim mrib
Incoming interface: Vlan50, RPF nbr: 10.200.255.230
Outgoing interface list: (count: 1)
Vlan10, uptime: 01:42:35, mrib
Switch B# sh ip mroute
(*, 232.0.0.0/8), uptime: 02:03:17, pim ip
Incoming interface: Null, RPF nbr: 0.0.0.0
Outgoing interface list: (count: 0)
(*, 239.3.0.2/32), uptime: 01:31:59, igmp ip pim
Incoming interface: Null, RPF nbr: 0.0.0.0
Outgoing interface list: (count: 1)
Vlan10, uptime: 01:31:59, igmp
(10.200.255.230/32, 239.3.0.2/32), uptime: 02:03:13, ip pim mrib
Incoming interface: Vlan50, RPF nbr: 10.200.255.230
Outgoing interface list: (count: 1)
Vlan10, uptime: 01:31:59, mrib
Receiver1获取该流,一旦Receiver2请求同一组,Receiver 2也开始接收该流。
源连接到L3路由器
Sender2正在将流发送到VLAN 30中的L3_swicth FHRP,在本例中,FHRP也充当RP。
L3_swicth将流转发到VPC VLAN 25上的VPC对等体。此流量被视为L3上的组播,并且两个VPC对等体将构建(S, G)。
Receiver1和Receiver2请求组播流和(*, G)在两个vpc对等体上创建。
由于Sender2流在SVI 25上通过PIM接收,而不是直接在VPC SVI上接收,因此只有一个设备(DR)会根据PIM内部转发算法转发流量,因为Sender 2不直接在VPC SVI上。
Switch A# show ip pim internal vpc rpf-source
Source: 10.30.30.30
Pref/Metric: 1/0
Ref count: 1
In MRIB: yes
Is (*,G) rpf: no
Source role: primary
Forwarding state: Tie (forwarding)
MRIB Forwarding state: forwarding
Switch B# sh ip pim internal vpc rpf-source
Source: 10.30.30.30
Pref/Metric: 1/0
Ref count: 1
In MRIB: yes
Is (*,G) rpf: no
Source role: secondary
Forwarding state: Tie (not forwarding)
MRIB Forwarding state: not forwarding
因此,OIF仅填充在DR上。
Switch A# show ip mroute
IP Multicast Routing Table for VRF "default"
(*, 232.0.0.0/8), uptime: 02:37:29, pim ip
Incoming interface: Null, RPF nbr: 0.0.0.0
Outgoing interface list: (count: 0)
(*, 239.3.0.2/32), uptime: 02:37:26, igmp ip pim
Incoming interface: Vlan25, RPF nbr: 10.25.25.250
Outgoing interface list: (count: 1)
Vlan10, uptime: 02:37:26, igmp
(10.30.30.30/32, 239.3.0.2/32), uptime: 02:37:26, ip mrib pim
Incoming interface: Vlan25, RPF nbr: 10.25.25.250
Outgoing interface list: (count: 1)
Vlan10, uptime: 02:37:26, mrib
Switch B# show ip mroute
(*, 232.0.0.0/8), uptime: 02:38:15, pim ip
Incoming interface: Null, RPF nbr: 0.0.0.0
Outgoing interface list: (count: 0)
(*, 239.3.0.2/32), uptime: 02:38:15, igmp ip pim
Incoming interface: Vlan25, RPF nbr: 10.25.25.250
Outgoing interface list: (count: 1)
Vlan10, uptime: 02:38:15, igmp
(10.30.30.30/32, 239.3.0.2/32), uptime: 02:38:15, ip mrib pim
Incoming interface: Vlan25, RPF nbr: 10.25.25.250
Outgoing interface list: (count: 1) >>>>>> no OIF
在这种情况下,当Receiver1获取流,而Receiver 2将永远不会获得该流,因为交换机B上缺少OIF。
源连接在不同VRF之间
组播流量仅转发到vlan10中连接到主vpc对等体的一个接收方,而连接到辅助对等体的接收方不接收它。
- 在本例中,发送到VLAN 50(vpc vlan)上FEX的组播,交换机A 和交换机B 都具有OIF,因为源直接连接到VRF B,并且它位于vpc vlan中。
- 此流量会转发到位于不同VDC中的VRF A的VLAN 51,并发送到RP。
- 此VDC在VRF A中具有vlan 11,在默认VRF中具有vlan 51。
- 流量现在被发送到VRF A中的交换机A vlan 11。
- 由于与L3路由器机箱连接的发送方2中提到的相同限制,因此,只有交换机A/交换机B中的一个具有VRF A的OIF。
- 通过OIF连接到交换机A的接收器1获取组播流。
这是设计限制。
如果流量由VPC VLAN中的发送方直接转发,而不是由PIM转发,则VPC对等体只能在两台交换机中安装OIF。
因此,OIF作为发送方安装在VRF A中,直接连接到VRF A,但通过PIM连接时不安装在VRF B中。
要在两个VPC对等体上获取OIF,发送方应直接连接到vpc VLAN。
此功能将在稍后作为“L3 over VPC”功能的一部分实施
参考
已知缺陷