Huawei Quidway 5300 – Multicast Routing Configuration

huaweiigmpmulticastpim

I have been testing a scenario which involves multicast routing for multicast traffic the scenario is pretty simple.

I have two L3 switches with OSPF running in between them, two computers are connected on both ends of the switches, one acts as the multicast server the other as the multicast client.

Multicast is enabled on both switches as well as multicast routing using PIM DM. I am also using VLC on both ends for the multicast traffic using the multicast group address 225.1.1.1; however, this setup does not seem to work as intended.

network diagram:
enter image description here

Client Switch configuration:

sysname CLIENT-SW
#
vlan batch 5 10
#
stp enable
#
multicast routing-enable
#
telnet server enable
telnet ipv6 server enable
#
undo http server enable
undo http secure-server enable
#
undo management-port isolate enable
undo management-plane isolate enable
#
dhcp enable
#
aaa
 authentication-scheme default
 authorization-scheme default
 accounting-scheme default                
 domain default
 domain default_admin
 local-user admin password irreversible-cipher 
 local-user admin service-type http
#
interface Vlanif5
description CLIENT-NETWORK
ip address 192.168.0.254 255.255.255.0
pim dm
igmp enable
dhcp select interface
dhcp server dns-list 172.16.1.1 172.16.1.3
#
interface Vlanif10
description TO-SW-2
ip address 10.1.1.2 255.255.255.252
pim dm
#
interface MEth0/0/1
#
...

interface GigabitEthernet0/0/22
#
interface GigabitEthernet0/0/23
 description TO-MULTICAST-CLIENT
 port link-type access
 port default vlan 5                      
 stp edged-port enable
#
interface GigabitEthernet0/0/24
 description TO-SW-2
 port link-type trunk
 undo port trunk allow-pass vlan 1
 port trunk allow-pass vlan 10
#
interface NULL0
#
ospf 2
 import-route direct type 1
 area 0.0.0.0
 network 10.1.1.0 0.0.0.3 description TO-SW-2
#  
igmp
#
ssh server compatible-ssh1x enable
#
user-interface con 0
user-interface vty 0 4
protocol inbound telnet
user-interface vty 16 20
protocol inbound telnet                  

Server Switch Configuration:

sysname SERVER-SW
#
vlan batch 5 10
#
stp enable
#
multicast routing-enable
#
telnet server enable
telnet ipv6 server enable
#
undo http server enable
undo http secure-server enable
#
undo management-port isolate enable
undo management-plane isolate enable
#
dhcp enable
#
aaa
 authentication-scheme default
 authorization-scheme default
 accounting-scheme default                
 domain default
 domain default_admin
 local-user admin password irreversible-cipher 
 local-user admin service-type http
#
interface Vlanif5
 description SERVER-NETWORK
 ip address 192.168.1.254 255.255.255.0
 pim dm
 dhcp select interface
 dhcp server dns-list 172.16.1.1 172.16.1.3
#
interface Vlanif10
 description TO-SW-1
 ip address 10.1.1.1 255.255.255.252
 pim dm
#
 interface MEth0/0/1
#
interface GigabitEthernet0/0/23
 description MULTICAST-SERVER
 port link-type access
 port default vlan 5
 stp edged-port enable
#
interface GigabitEthernet0/0/24
 description TO-SW-1
 port link-type trunk                     
 undo port trunk allow-pass vlan 1
 port trunk allow-pass vlan 10
#
interface NULL0
#
ospf 2
 import-route direct type 1
 area 0.0.0.0
  network 10.1.1.0 0.0.0.3 description TO-SW-1
#
igmp
#
pim
#
ssh server compatible-ssh1x enable
#
user-interface con 0
user-interface vty 0 4
 protocol inbound telnet
user-interface vty 16 20
 protocol inbound telnet
#
return

EDIT:

The output related to multicast from Client SW are as follows:

<CLIENT-SW>display  igmp group 
Interface group report information
 Vlanif5(192.168.0.254): 
  Total 1 IGMP Group reported
   Group Address   Last Reporter   Uptime      Expires     
   239.255.255.250 192.168.0.253   00:01:45    00:01:42    

   =======================================================================

<CLIENT-SW>display  pim routing-table 
 VPN-Instance: public net
 Total 1 (*, G) entry; 2 (S, G) entries

 (*, 239.255.255.250)
     Protocol: pim-dm, Flag: WC 
     UpTime: 00:01:59
     Upstream interface: NULL
         Upstream neighbor: NULL
         RPF prime neighbor: NULL
     Downstream interface(s) information:
     Total number of downstreams: 1
         1: Vlanif5
             Protocol: igmp, UpTime: 00:01:59, Expires: never

 (192.168.0.253, 239.255.255.250)
    Protocol: pim-dm, Flag: LOC ACT 
     UpTime: 00:02:02
     Upstream interface: Vlanif5
         Upstream neighbor: NULL
         RPF prime neighbor: NULL
     Downstream interface(s) information:
     Total number of downstreams: 1
         1: Vlanif10
             Protocol: pim-dm, UpTime: 00:02:02, Expires: never

 (192.168.1.252, 239.255.255.250)
     Protocol: pim-dm, Flag: ACT 
     UpTime: 00:03:17                     
     Upstream interface: Vlanif10
         Upstream neighbor: 10.1.1.1
        RPF prime neighbor: 10.1.1.1
     Downstream interface(s) information:
     Total number of downstreams: 1
         1: Vlanif5
             Protocol: pim-dm, UpTime: 00:01:59, Expires:  - 

 ===============================================================================

<CLIENT-SW>display  pim neighbor 
 VPN-Instance: public net
 Total Number of Neighbors = 1

 Neighbor        Interface           Uptime   Expires  Dr-Priority  BFD-Session
 10.1.1.1        Vlanif10            05:59:11 00:01:35 1            N     

 ===========================================================================

<CLIENT-SW>display pim interface
 VPN-Instance: public net
 Interface           State NbrCnt HelloInt   DR-Pri     DR-Address
 Vlanif10            up    1      30         1          10.1.1.2        (local)
 Vlanif5             up    0      30         1          192.168.0.254   (local)

The output related to multicast from SERVER SW are as follows:

<SERVER-SW>display  pim routing-table 
 VPN-Instance: public net
 Total 2 (*, G) entries; 3 (S, G) entries

 (*, 239.1.1.1)
     Protocol: pim-dm, Flag: WC 
     UpTime: 00:05:48
     Upstream interface: NULL
         Upstream neighbor: NULL
         RPF prime neighbor: NULL
     Downstream interface(s) information:
     Total number of downstreams: 1
         1: Vlanif5
             Protocol: static, UpTime: 00:05:48, Expires: never

 (192.168.1.252, 239.1.1.1)
     Protocol: pim-dm, Flag: LOC ACT 
     UpTime: 00:02:57
     Upstream interface: Vlanif5
         Upstream neighbor: NULL
         RPF prime neighbor: NULL
     Downstream interface(s) information: None

 (*, 239.255.255.250)
     Protocol: pim-dm, Flag: WC 
     UpTime: 00:05:45
     Upstream interface: NULL
         Upstream neighbor: NULL
         RPF prime neighbor: NULL         
     Downstream interface(s) information:
     Total number of downstreams: 1
         1: Vlanif5
             Protocol: igmp, UpTime: 00:05:45, Expires: never

 (192.168.0.253, 239.255.255.250)
     Protocol: pim-dm, Flag: 
     UpTime: 00:04:21
     Upstream interface: Vlanif10
         Upstream neighbor: 10.1.1.2
         RPF prime neighbor: 10.1.1.2
     Downstream interface(s) information:
     Total number of downstreams: 1
         1: Vlanif5
             Protocol: pim-dm, UpTime: 00:04:21, Expires:  - 

 (192.168.1.252, 239.255.255.250)
     Protocol: pim-dm, Flag: LOC ACT 
     UpTime: 00:05:43
     Upstream interface: Vlanif5
         Upstream neighbor: NULL
         RPF prime neighbor: NULL
    Downstream interface(s) information:
     Total number of downstreams: 1       
         1: Vlanif10
             Protocol: pim-dm, UpTime: 00:04:24, Expires: never

  =========================================================================

<SERVER-SW>         display  pim interface 
 VPN-Instance: public net
 Interface           State NbrCnt HelloInt   DR-Pri     DR-Address
 Vlanif5             up    0      30         1          192.168.1.254   (local)
 Vlanif10            up    1      30         1          10.1.1.2       

 ==========================================================================

<SERVER-SW>display  pim neighbor 
 VPN-Instance: public net
 Total Number of Neighbors = 1

 Neighbor        Interface           Uptime   Expires  Dr-Priority  BFD-Session
 10.1.1.2        Vlanif10            06:00:48 00:01:28 1            N          

Best Answer

Multicast is clearly working for group 239.255.255.250:

  • Both Server and Client PCs have joined the group (through IGMP)
  • Both are sending to the group, can see (S,G) entries:
    • (192.168.1.252, 239.255.255.250) - Server sending to group
    • (192.168.0.253, 239.255.255.250) - Client sending to group
  • These (S,G) entries have correct Upstream and Downstream interfaces on both switches to allow end-to-end forwarding

So, 239.255.255.250 apears to be working.

The group in question (239.1.1.1) shows an (S,G) entry on the Server switch:

  • (192.168.1.252, 239.1.1.1)

So, the Server PC is sending to the group.

The Client PC has not joined the group (no IGMP entry). This is a problem and needs investigating as the traffic will not forward end-to-end if Client PC is not requesting the group. Investigate the Client PC application and get it to join the group.

I would usually expect on a Cisco device to see a Pruned Downstream interface for the (192.168.1.252, 239.1.1.1) entry on Server Switch and would also expect to see the same (S,G) entry on the Client Switch with no Downstream interfaces, and the entry marked as Pruned. This may be due to the way Huawei reports pruned groups, or as Benjamin mentions, could be issue with TTL VLC is setting on stream.

Investigate the Client issue first. Mirror the port on the Client Switch and run Wireshark and see if it is sending IGMP joins for 239.1.1.1. If it isn't then this is an application problem.

Edit: OP confirms, the following fixed the issue:

  • Faulty Client PC fixed (not joining group)
  • Increased TTL to 200 on Server PC
  • Enabled IGMP snooping on Client side
Related Topic