- Table of Contents
- Related Documents
-
Title | Size | Download |
---|---|---|
06-Multicast Protocol Configuration Examples | 201 KB |
Chapter 1 Multicast Protocol Overview
1.2.1 Configuring IGMP Snooping
Chapter 2 Multicast Protocol Configuration Examples
2.1 PIM-DM plus IGMP plus IGMP Snooping Configuration Example
2.2 PIM-SM plus IGMP plus IGMP Snooping Configuration Examples
2.3 IGMP Snooping-Only Configuration Examples
Multicast Protocol Configuration Examples
Keywords: IGMP, PIM-DM, PIM-SM, IGMP Snooping
Abstract: This document introduces how to configure multicast functions on Ethernet switches in practical networking, based on three typical networking scenarios:
1. Deployment of PIM-DM plus IGMP, with and without IGMP Snooping respectively. Multicast group filtering in IGMP and IGMP Snooping is mainly described for this scenario.
2. Deployment of PIM-SM plus IGMP, with and without IGMP Snooping respectively. Simulated joining is mainly described for this scenario.
3. IGMP Snooping only.
Acronyms: IGMP (Internet Group Management Protocol), IGMP Snooping (Internet Group Management Protocol Snooping), PIM-DM (Protocol Independent Multicast Dense Mode), PIM-SM (Protocol Independent Multicast Sparse Mode)
Chapter 1 Multicast Protocol Overview
1.1 Overview
Different from unicast and broadcast, the multicast technique efficiently addresses the issue of point-to-multipoint data transmission. By allowing high-efficiency point-to-multipoint data transmission, multicast greatly saves network bandwidth and reduces network load.
With the multicast technique, service providers can easily provide new value-added services, such as live Webcasting, Web TV, distance learning, Telemedicine, Web radio, real-time videoconferencing, and other bandwidth- and time-critical information services.
I. IGMP
As a TCP/IP protocol responsible for IP multicast group membership management, the Internet Group Management Protocol (IGMP) is used by IP hosts to establish and maintain their multicast group memberships to the immediately neighboring multicast router.
II. PIM
Protocol Independent Multicast (PIM) provides IP multicast forwarding by leveraging unicast routing tables generated by static routing or any unicast routing protocol, such as the Routing Information Protocol (RIP), Open Shortest Path First (OSPF), Intermediate System to Intermediate System (IS-IS), or the Border Gateway Protocol (BGP). PIM uses the unicast routing table to perform reverse path forwarding (RPF) check in multicast forwarding.
Based on the forwarding mechanism, PIM falls into two modes:
l PIM-DM
l PIM-SM
PIM-DM is a type of dense mode multicast protocol. It uses the “push mode” for multicast forwarding, suitable for small-sized networks with densely distributed multicast group members. .
PIM-SM is a type of sparse mode multicast protocol. It uses the “pull mode” for multicast forwarding, suitable for large- and medium-sized networks with sparsely and widely distributed multicast group members.
III. IGMP Snooping
Internet Group Management Protocol Snooping (IGMP Snooping) is a multicast monitoring mechanism that runs on Layer 2 devices to manage and control multicast groups. By analyzing received IGMP messages, a Layer 2 device running IGMP Snooping establishes mappings between ports and MAC multicast groups and forwards multicast data based on these mappings.
IV. IGMP Proxy
When a multicast routing protocol (such as PIM-DM) is deployed on a large network, many stub networks may exist. It is tedious work to configure and manage these stub networks.
To minimize the workload of such configuration and management without affecting the multicast connections of the multicast networks, you can configure IGMP Proxy on a Layer 3 switch in the edge networks, so that the Layer 3 switch forwards the IGMP join and IGMP leave messages sent by the hosts attached to it. After the IGMP Proxy configuration, the Layer 3 switch is no longer a PIM neighbor to the external network; instead, it is a host. The Layer 3 switch receives multicast data for a multicast group only when a member of that group is directly attached to it.
1.2 Configuration Guidance
The following configuration guidance describes the configuration of multicast features based on the implementations on the S5600 series Ethernet switches. For more information, see the corresponding operation manuals.
1.2.1 Configuring IGMP Snooping
Complete these tasks to configure IGMP Snooping:
Configuration task |
Remarks |
Required |
|
Optional |
|
Optional |
|
Optional |
|
Configuring the maximum number of multicast groups that can be joined on a port |
Optional |
Optional |
I. Enabling IGMP Snooping
Follow these steps to enable IGMP Snooping:
To do... |
Use the command... |
|
Enter system view |
system-view |
— |
Enable IGMP Snooping |
igmp-snooping enable |
Required Disabled by default. |
Enter VLAN view |
vlan vlan-id |
— |
Enable IGMP Snooping |
igmp-snooping enable |
Required Disabled by default. |
II. Configuring IGMP-Snooping timers
Follow these steps to configure IGMP-Snooping timers:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Configure an aging timer of router port |
igmp-snooping router-aging-time seconds |
Optional By default, the router port aging time is 105 seconds. |
Configure a response-to-query timer |
igmp-snooping max-response-time seconds |
Optional By default, the maximum response-to-query time is 10 seconds. |
Configure an aging timer of a member port of a multicast group |
igmp-snooping host-aging-time seconds |
Optional By default, the aging time of the multicast group member port is 260 seconds. |
III. Configuring fast leave processing
1) Configure fast leave processing in system view
Follow these steps to configure fast leave processing in system view:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Configure fast leave processing |
igmp-snooping fast-leave [ vlan vlan-list ] |
Required Disabled by default |
2) Configure fast leave in Ethernet port view
Follow these steps to configure fast leave processing in Ethernet port view:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Enter Ethernet port view |
interface interface-type interface-number |
— |
Configure fast leave processing |
igmp-snooping fast-leave [ vlan vlan-list ] |
Required Disabled by default |
IV. Configuring a multicast group filter
1) Configure a multicast group filter in system view
Follow these steps to configure a multicast group filter in system view:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Configure a multicast group filter |
igmp-snooping group-policy acl-number [ vlan vlan-list ] |
Required Disabled by default |
2) Configure a multicast group filter in Ethernet port view
Follow these steps to configure a multicast group filter in Ethernet port view:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Enter Ethernet port view |
interface interface-type interface-number |
— |
Configure a multicast group filter |
igmp-snooping group-policy acl-number [ vlan vlan-list ] |
Required Disabled by default |
V. Configuring the maximum number of multicast groups that can be joined on a port
Follow these steps to configure the maximum number of multicast groups that can be joined on a port:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Enter Ethernet port view |
interface interface-type interface-number |
— |
Configure maximum number of multicast groups that can be joined on the port |
igmp-snooping group-limit limit [ vlan vlan-list [ overflow-replace ] ] |
Required The system default is 256. |
VI. Configuring IGMP Snooping querier
Follow these steps to configure IGMP Snooping querier:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Enable IGMP Snooping |
igmp-snooping enable |
Required Enabled by default |
Enter VLAN view |
vlan vlan-id |
— |
Enable IGMP Snooping |
igmp-snooping enable |
Required Disabled by default |
Enable IGMP-Snooping querier |
igmp-snooping querier |
Required Disabled by default |
Configure the query interval |
igmp-snooping query-interval seconds |
Optional The system default is 60 seconds. |
Configure a source IP address for general query messages |
igmp-snooping general-query source-ip { current-interface | ip-address } |
Optional The system default is 0.0.0.0. |
1.2.2 Configuring IGMP
Complete these tasks to configure IGMP:
Configuration task |
Remarks |
Required |
|
Optional |
|
Optional |
|
Optional |
|
Optional |
|
Optional |
|
Optional |
|
Optional |
I. Enabling IGMP
Follow these steps to enable IGMP:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Enable multicast routing |
multicast routing-enable |
— |
Enter VLAN interface view |
interface Vlan-interface interface-number |
— |
Enabling IGMP |
igmp enable |
Required Enabled by default |
Caution:
The following configurations in this chapter are implemented after multicast routing is enabled on the device and IGMP is enabled on the corresponding interface.
II. Configuring IGMP version
Follow these steps to configure IGMP version:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Enter VLAN interface view |
interface Vlan-interface interface-number |
— |
Configure IGMP version |
igmp version { 1 | 2 } |
Required IGMPv2 by default |
Caution:
The device cannot switch from one IGMP version to another automatically. All switches on the same subnet must run the same version of IGMP.
III. Configuring parameters related to IGMP queries
Follow these steps to configure parameters related to IGMP queries:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Enter VLAN interface view |
interface Vlan-interface interface-number |
— |
Configure IGMP query interval |
igmp timer query seconds |
Optional The system default is 60 seconds. |
Configure the IGMP last member query interval |
igmp lastmember-queryinterval seconds |
Optional The system default is 1 second. |
Configure the IGMP last member query count |
igmp robust-count robust-value |
Optional The system default is two. |
Configure the IGMP other querier present interval |
igmp timer other-querier-present seconds |
Optional The system default is 120 seconds, twice the interval specified by the igmp timer query command. |
Configure the maximum response time |
igmp max-response-time seconds |
Optional The system default is 10 seconds. |
IV. Configuring the maximum allowed number of multicast groups
Follow these steps to configure the maximum number of multicast groups allowed to be joined on an interface:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Enter VLAN interface view |
interface Vlan-interface interface-number |
— |
Configure the maximum number of multicast groups allowed on the interface |
igmp group-limit limit |
Required The system default is 256. |
Caution:
If you configure the maximum number of multicast groups allowed on an interface to 1, a new group joined on the interface automatically supersedes the existing one.
If the number of existing multicast groups is larger than the limit configured on the interface, the system will remove the oldest entries automatically until the number of multicast groups on the interface conforms to the configured limit.
V. Configuring a multicast group filter
1) Configure a multicast group filter in VLAN interface view
Follow these steps to configure a multicast group filter in VLAN interface view:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Enter VLAN interface view |
interface Vlan-interface interface-number |
— |
Configure a multicast group filter |
igmp group-policy acl-number [ 1 | 2 | port interface-type interface-number [ to interface-type interface-number ] ] |
Optional No filter is configured by default. |
2) Configuring a multicast group filter in Ethernet port view
Follow these steps to configure a multicast group filter in Ethernet port view:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Enter Ethernet port view |
interface interface-type interface-number |
— |
Configure a multicast group filter |
igmp group-policy acl-number vlan vlan-id |
Optional No multicast group filter is configured by default. The port must belong to the specified VLAN. |
VI. Configuring simulated joining
1) Configure simulated joining in VLAN interface view
Follow these steps to configure simulated joining in VLAN interface view:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Enter VLAN interface view |
interface Vlan-interface interface-number |
— |
Configure simulated joining |
igmp host-join group-address port interface-list |
Optional Disabled by default |
2) Configure simulated joining in Ethernet port view
Follow these steps to configure simulated joining in VLAN interface view:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Enter Ethernet port view |
interface interface-type interface-number |
— |
Configure simulated joining |
igmp host-join group-address vlan vlan-id |
Optional Disabled by default |
Caution:
Before configuring simulated joining, you must enable IGMP in VLAN interface view.
If you configure a port as a simulated host in Ethernet port view, the Ethernet port must belong to the specified VLAN; otherwise the configuration does not take effect.
VII. Configuring IGMP proxy
Follow these steps to configure IGMP proxy:
Caution:
l You must enable PIM on the interface before configuring the igmp proxy command. Otherwise, the IGMP proxy feature does not take effect.
l One interface cannot serve as the proxy interface for two or more interfaces.
l When you configure the IP address of the interface that will serve as an IGMP proxy, make sure that the IP address is not the lowest on this subnet to prevent this interface from being elected as the IGMP querier on the subnet, as this will result in failure of multicast data forwarding.
VIII. Removing joined IGMP groups from an interface
Follow these steps to remove joined IGMP groups from an interface:
To do... |
Use the command... |
Remarks |
Remove the specified group or all groups from the specified interface or all interfaces |
reset igmp group { all | interface interface-type interface-number { all | group-address [ group-mask ] } } |
The reset command available in user view. |
Caution:
After a multicast group is removed from an interface, hosts attached to interface can join the multicast group again.
1.2.3 Configuring PIM
I. Configuring PIM-DM
Follow these steps to configure PIM-DM:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Enable multicast routing |
multicast routing-enable |
Required Disabled by default |
Enter PIM view |
pim |
— |
Configure a multicast source or multicast source-group filter |
source-policy acl-number |
Optional You can define the related IP addresses in an ACL. |
Enter VLAN interface view |
interface Vlan-interface interface-number |
— |
Enable PIM-DM |
pim dm |
Required |
Configure the hello interval on the interface |
pim timer hello seconds |
Optional The system default is 30 seconds. |
Configure a limit on the number of PIM neighbors on the interface |
pim neighbor-limit limit |
Optional The default value is 128. |
Configure the filtering policy for PIM neighbors |
pim neighbor-policy acl-number |
Optional You can define the related IP addresses in an ACL. Disabled by default |
II. Configuring PIM-SM
Follow these steps to configure PIM-SM:
To do... |
Use the command... |
Remarks |
Enter system view |
system-view |
— |
Enable multicast routing |
multicast routing-enable |
Required Disabled by default |
Enter PIM view |
pim |
— |
Configure a multicast source or multicast source-group filter |
source-policy acl-number |
Optional You can define the related IP addresses in an ACL. |
Configure a C-BSR |
c-bsr interface-type interface-number hash-mask-len [ priority ] |
Optional By default, no C-BSR is configured. The default priority is 0. |
Configure a C-RP |
c-rp interface-type interface-number [ group-policy acl-number | priority priority ]* |
Optional By default, no C-RP is configured. The default priority is 0. |
Configure a static RP |
static-rp rp-address [ acl-number ] [ preferred ] |
Optional No static RP is configured by default. If you configure a static RP while a dynamic RP exists, the preferred keyword makes the static RP the preferred RP; if you do not use the preferred keyword in this command, the dynamic RP is given preference, |
Configure a legal BSR address range |
bsr-policy acl-number |
Optional No legal BSR address range is configured by default. |
Configure a legal C-RP address range |
crp-policy acl-number |
Optional You can define the related IP address ranges in an ACL. No legal C-RP address range is configured by default. |
Configure to filter the register messages from RP to DR |
register-policy acl-number |
Optional You can define the related IP addresses in an ACL. Disabled by default. |
Disable RPT-to-SPT switchover |
spt-switch-threshold { traffic-rate | infinity } [ group-policy acl-number [ order order-value ] ] |
Optional By default, the device switches to the SPT immediately after it receives the first multicast packet from the RPT. |
Enter VLAN interface view |
interface Vlan-interface interface-number |
— |
Enable PIM-SM |
pim sm |
Required |
Configuring a PIM-SM domain boundary |
pim bsr-boundary |
Optional By default, no PIM-SM domain boundary is configured |
Configure the hello interval on the interface |
pim timer hello seconds |
Optional The system default is 30 seconds. |
Configure the maximum number of PIM neighbors allowed on the interface |
pim neighbor-limit limit |
Optional The default value is 128. |
Configure the filtering policy for PIM neighbors |
pim neighbor-policy acl-number |
Optional You can define the related IP addresses in an ACL. Disabled by default |
& Note:
Currently the device supports only 0 for traffic-rate and the use of the infinity keyword in the spt-switch-threshold command.
l If you use 0 for traffic-rate, the device, working as the last-hop router, will initiate an RPT-to-SPT switchover as soon as it receives the first multicast packet.
l If you use the infinity keyword in the command, the device will never initiate an RPT-to-SPT switchover.
Chapter 2 Multicast Protocol Configuration Examples
2.1 PIM-DM plus IGMP plus IGMP Snooping Configuration Example
2.1.1 Requirement Analysis
When users receive voice on demand (VOD) information through multicast, the information receiving mode may vary based on user requirements:
1) To avoid video broadcast at Layer 2, IGMP Snooping is enabled on Switch E, through which Host A and Host B receive the multicast data.
2) To ensure reliable and stable reception of multicast data, Switch B and Switch C provide uplink backup for the directly attached stub network N1, which comprises multicast receivers Host C and Host D.
3) All the Layer 3 switches run RIP for unicast routing and run PIM-DM for multicast routing.
2.1.2 Configuration Plan
1) Switch D connects to the network that comprises the multicast source (Source) through VLAN-interface 300.
2) Switch A connects to Switch E through VLAN-interface 100, and to Switch D through VLAN-interface 103.
3) Switch B and Switch C connect to stub network N1 through their respective VLAN-interface 200, and to Switch D through VLAN-interface 101 and VLAN-interface 102 respectively.
4) Enable IGMPv2 on VLAN-interface 100 of Switch A. Enable IGMP Snooping on Switch E and in VLAN 100. Run IGMPv2 on Switch B, Switch C, and the hosts in stub network N1. Typically, Switch B acts as the IGMP querier.
2.1.3 Network Diagram
Device |
Interface |
IP address |
|
Switch A |
Vlan-int100 |
10.110.1.1/24 |
Ethernet1/0/1 |
|
Vlan-int103 |
192.168.1.1/24 |
Ethernet1/0/2 |
Switch B |
Vlan-int200 |
10.110.2.1/24 |
Ethernet1/0/1 |
|
Vlan-int101 |
192.168.2.1/24 |
Ethernet1/0/2 |
Switch C |
Vlan-int200 |
10.110.2.2/24 |
Ethernet1/0/1 |
|
Vlan-int102 |
192.168.3.1/24 |
Ethernet1/0/2 |
Switch D |
Vlan-int300 |
10.110.5.1/24 |
Ethernet1/0/1 |
|
Vlan-int103 |
192.168.1.2/24 |
Ethernet1/0/2 |
|
Vlan-int101 |
192.168.2.2/24 |
Ethernet1/0/3 |
|
Vlan-int102 |
192.168.3.2/24 |
Ethernet1/0/4 |
Switch E |
Vlan 100 |
— |
Ethernet1/0/1, Ethernet1/0/2, Ethernet1/0/3 |
Figure 2-1 Network diagram for PIM-DM plus IGMP plus IGMP Snooping configuration
2.1.4 Configuration Procedure
I. Configuring VLANs, VLAN interfaces and IP addresses on each switch
# Configure VLANs, VLAN interfaces, and their IP addresses on Switch A.
<SwitchA> system-view
System View: return to User View with Ctrl+Z.
[SwitchA] vlan 100
[SwitchA-vlan100] port Ethernet 1/0/1
[SwitchA-vlan100] quit
[SwitchA] vlan 103
[SwitchA-vlan103] port Ethernet 1/0/2
[SwitchA-vlan103] quit
[SwitchA] interface Vlan-interface 100
[SwitchA-Vlan-interface100] ip address 10.110.1.1 24
[SwitchA-Vlan-interface100] quit
[SwitchA] interface Vlan-interface 103
[SwitchA-Vlan-interface103] ip address 192.168.1.1 24
[SwitchA-Vlan-interface103] quit
Configure VLANs, VLAN interfaces, and their IP addresses on other switches as per Figure 2-1. The detailed configuration steps are omitted here.
II. Configuring the unicast routing protocol
# Enable RIP on Switch A, and then enable RIP on subnets 192.168.1.0 and 10.110.1.0.
<SwitchA> system-view
[SwitchA] rip
[SwitchA- rip] network 192.168.1.0
[SwitchA- rip] network 10.110.1.0
[SwitchA- rip] quit
The configuration on Switch B, Switch C, and Switch D is similar to the configuration on Switch A.
III. Configuring the multicast protocols
# Enable IP multicast routing on Switch A, enable PIM-DM on each interface, and then enable IGMPv2 on VLAN-interface 100.
<SwitchA> system-view
[SwitchA] multicast routing-enable
[SwitchA] interface vlan-interface 100
[SwitchA-Vlan-interface100] igmp enable
[SwitchA-Vlan-interface100] pim dm
[SwitchA-Vlan-interface100] quit
[SwitchA] interface vlan-interface 103
[SwitchA-Vlan-interface103] pim dm
[SwitchA-Vlan-interface103] quit
The configuration on Switch B and Switch C is similar to the configuration on Switch A.
# Enable multicast routing on Switch D, and enable PIM-DM on each interface.
<SwitchD> system-view
[SwitchD] multicast routing-enable
[SwitchD] interface vlan-interface 300
[SwitchD-Vlan-interface300] pim dm
[SwitchD-Vlan-interface300] quit
[SwitchD] interface vlan-interface 103
[SwitchD-Vlan-interface103] pim dm
[SwitchD-Vlan-interface103] quit
[SwitchD] interface vlan-interface 101
[SwitchD-Vlan-interface101] pim dm
[SwitchD-Vlan-interface101] quit
[SwitchD] interface vlan-interface 102
[SwitchD-Vlan-interface102] pim dm
[SwitchD-Vlan-interface102] quit
# Enable IGMP Snooping on Switch E, and enable IGMP Snooping in VLAN 100.
<SwitchE> system-view
[SwitchE] igmp-snooping enable
Enable IGMP-Snooping ok.
[SwitchE] vlan 100
[SwitchE-vlan100] igmp-snooping enable
[SwitchE-vlan100] quit
IV. Verifying the configuration
Now start sending multicast data to multicast group 224.1.1.1 from Source and start receiving the multicast data on Host A, and take the following steps to verify the configurations made on the switches.
1) Check whether the multicast stream can flow to Host A.
# View the PIM neighboring relationships on Switch D.
<SwitchD> display pim neighbor
Neighbor's Address Interface Name Uptime Expires
192.168.2.1 Vlan-interface101 02:45:04 00:04:46
192.168.3.1 Vlan-interface102 02:42:24 00:04:45
192.168.1.1 Vlan-interface103 02:43:44 00:05:44
# View the multicast forwarding table of Switch D.
<SwitchD> display multicast forwarding-table
Multicast Forwarding Cache Table
Total 1 entry: 0 entry created by IP, 1 entry created by protocol
00001. (10.110.5.110, 224.1.1.1), iif Vlan-interface1, 1 oifs,
Protocol Create
List of outgoing interface:
01: Vlan-interface101
Matched 181 pkts(271500 bytes), Wrong If 0 pkts
Forwarded 130 pkts(195000 bytes)
Total 1 entry Listed
# View the multicast forwarding table of Switch A.
<SwitchA>display multicast forwarding-table
Multicast Forwarding Cache Table
Total 1 entry: 0 entry created by IP, 1 entry created by protocol
00001. (10.110.5.110, 224.1.1.1), iif Vlan-interface101, 1 oifs,
Protocol Create
List of outgoing interface:
01: Vlan-interface100
Matched 451 pkts(676500 bytes), Wrong If 0 pkts
Forwarded 451 pkts(676500 bytes)
Total 1 entry Listed
Matched 1 entry
# View the multicast group information that contains port information on Switch A.
<SwitchA> display mpm group
Total 1 IP Group(s).
Total 1 MAC Group(s).
Vlan(id):101.
Total 0 IP Group(s).
Total 0 MAC Group(s).
Static router port(s):
Dynamic router port(s):
Ethernet1/0/2
Vlan(id):200.
Total 1 IP Group(s).
Total 1 MAC Group(s).
Static router port(s):
Dynamic router port(s):
IP group(s):the following ip group(s) match to one mac group.
IP group address:224.1.1.1
Host port(s):Ethernet1/0/15
MAC group(s):
MAC group address:0100-5e01-0101
Host port(s):Ethernet1/0/15
# View the information about the multicast group entries created by IGMP Snooping on Switch E.
<SwitchE> display igmp-snooping group
Total 1 IP Group(s).
Total 1 MAC Group(s).
Vlan(id):100.
Total 1 IP Group(s).
Total 1 MAC Group(s).
Static router port(s):
Dynamic router port(s):
Ethernet1/0/2
IP group(s):the following ip group(s) match to one mac group.
IP group address:224.1.1.1
Host port(s):Ethernet1/0/19
MAC group(s):
MAC group address:0100-5e01-0101
Host port(s):Ethernet1/0/19
The above-mentioned information shows that multicast forwarding entries have been correctly established on Switch D and Switch A, and multicast traffic can successfully flow to Host A.
2) Configure IGMP Snooping multicast group filtering on Switch E
# Configure to filter the packets for the multicast group 224.1.1.1 on Switch E.
<SwitchE> system-view
[SwitchE-acl-basic-2000] rule deny source 224.1.1.1 0
[SwitchE-acl-basic-2000] rule permit source any
[SwitchE-acl-basic-2000] quit
[SwitchE]igmp-snooping group-policy 2000 vlan 100
# View multicast forwarding entries on Switch A.
<SwitchA> display multicast forwarding-table
Multicast Forwarding Cache Table
Total 1 entry: 0 entry created by IP, 1 entry created by protocol
00001. (10.110.5.100, 224.1.1.1), iif Vlan-interface101, 0 oifs,
Protocol Create
Matched 5 pkts(7500 bytes), Wrong If 0 pkts
Forwarded 0 pkts(0 bytes)
Total 1 entry Listed
As shown above, Switch A has stopped forwarding multicast data for the multicast group 224.1.1.1.
# View multicast group information on Switch E.
<SwitchE> display igmp-snooping group
Total 0 IP Group(s).
Total 0 MAC Group(s).
Vlan(id):200.
Total 0 IP Group(s).
Total 0 MAC Group(s).
Static router port(s):
Dynamic router port(s):
Ethernet1/0/19
With multicast group filtering enabled, the corresponding ports drop IGMP reports for the filtered group and will be removed for that group when their respective port aging timer expires.
3) Configure IGMP multicast group filtering on Switch A.
# Disable multicast group filtering on Switch E.
<SwitchE> system-view
[SwitchE] undo igmp-snooping group-policy
& Note:
To verify the configuration of IGMP multicast group filtering on Switch A, disable IGMP Snooping multicast group filtering on Switch E first.
Configure to filter the multicast group 224.1.1.1 on VLAN-interface 100 of Switch A, and then display the multicast forwarding entries of Switch A.
# Configure to filter the multicast group 224.1.1.1 on VLAN-interface 100 of Switch A.
<SwitchA> system-view
[SwitchA] acl number 2000
[SwitchA-acl-basic-2000] rule deny source 224.1.1.1 0
[SwitchA-acl-basic-2000] rule permit source any
[SwitchA-acl-basic-2000] quit
[SwitchA] interface Vlan-interface 100
[SwitchA-Vlan-interface100] igmp group-policy 2000
[SwitchA-Vlan-interface100] return
# View multicast forwarding entries on Switch A.
<SwitchA> display multicast forwarding-table
Multicast Forwarding Cache Table
Total 1 entry: 0 entry created by IP, 1 entry created by protocol
00001. (10.110.5.100, 224.1.1.1), iif Vlan-interface101, 0 oifs,
Protocol Create
Matched 5 pkts(7500 bytes), Wrong If 0 pkts
Forwarded 0 pkts(0 bytes)
Total 1 entry Listed
# View multicast group information on Switch A.
<SwitchA> display igmp group
Total 0 IGMP groups reported on this router
After multicast group filtering is enabled, the corresponding port cannot receive IGMP reports. Thus, the corresponding multicast groups are deleted after the port aging timer expires.
& Note:
As shown above, IGMP Snooping multicast group filtering has the same function as IGMP multicast group filtering. You can use either approach based on the specific situation.
2.2 PIM-SM plus IGMP plus IGMP Snooping Configuration Examples
2.2.1 Requirement Analysis
When users receive VOD information through multicast, the information receiving mode may vary based on user requirements:
1) To avoid broadcasting of the video information at Layer 2, IGMP Snooping is enabled on Switch E, through which Host A and Host B receive the multicast data.
2) To ensure reliable and stable reception of multicast data, Switch B and Switch C provide uplink backup for the directly attached stub network N1, which comprises multicast receivers Host C and Host D.
3) Configure the PIM-SM domain as a single-BSR domain. Run OSPF for unicast routing in the domain.
2.2.2 Configuration Plan
1) Switch D connects to the network that comprises the multicast source (Source) through VLAN-interface 300.
2) Switch A connects to Switch F through VLAN-interface 100, and to Switch D and Switch E through VLAN-interface 101 and VLAN-interface 102 respectively.
3) Switch B and Switch C connect to stub network N1 through their respective VLAN-interface 200, and to Switch E through VLAN-interface 103 and VLAN-interface 104 respectively.
4) It is required that VLAN-interface 105 of Switch D and VLAN-interface 102 of Switch E act as C-BSR and C-RP.
5) IGMPv2 is required on VLAN-interface 100 of Switch A. IGMP Snooping is required on Switch F and in VLAN 100. IGMPv2 is also required between Switch B, Switch C, and stub network N1. Typically, Switch B acts as the querier.
2.2.3 Network Diagram
Device |
Interface |
IP address |
Ports |
Switch A |
Vlan-int100 |
10.110.1.1/24 |
Ethernet1/0/1 |
|
Vlan-int101 |
192.168.1.1/24 |
Ethernet1/0/2 |
|
Vlan-int102 |
192.168.9.1/24 |
Ethernet1/0/3 |
Switch B |
Vlan-int200 |
10.110.2.1/24 |
Ethernet1/0/1 |
|
Vlan-int103 |
192.168.2.1/24 |
Ethernet1/0/2 |
Switch C |
Vlan-int200 |
10.110.2.2/24 |
Ethernet1/0/1 |
|
Vlan-int104 |
192.168.3.1/24 |
Ethernet1/0/2 |
Switch D |
Vlanint300 |
10.110.5.1/24 |
Ethernet1/0/1 |
|
Vlanint101 |
192.168.1.2/24 |
Ethernet1/0/2 |
|
Vlanint105 |
192.168.4.2/24 |
Ethernet1/0/3 |
Switch E |
Vlanint104 |
192.168.3.2/24 |
Ethernet1/0/3 |
|
Vlanint103 |
192.168.2.2/24 |
Ethernet1/0/2 |
|
Vlanint102 |
192.168.9.2/24 |
Ethernet1/0/1 |
|
Vlanint105 |
192.168.4.1/24 |
Ethernet1/0/4 |
Switch F |
Vlan 100 |
— |
Ethernet1/0/1, Ethernet1/0/2, Ethernet1/0/3 |
Figure 2-2 Network diagram for PIM-SM plus IGMP plus IGMP Snooping configuration
2.2.4 Configuration Procedure
I. Configuring VLANs, VLAN interfaces and IP addresses for each switch
# Configure VLANs, VLAN interfaces, and their IP addresses on Switch A.
<SwitchA> system-view
System View: return to User View with Ctrl+Z.
[SwitchA] vlan 100
[SwitchA-vlan100] port Ethernet 1/0/1
[SwitchA-vlan100] quit
[SwitchA] vlan 101
[SwitchA-vlan101] port Ethernet 1/0/2
[SwitchA-vlan101] quit
[SwitchA] vlan 102
[SwitchA-vlan102] port Ethernet 1/0/3
[SwitchA-vlan102] quit
[SwitchA] interface Vlan-interface 100
[SwitchA-Vlan-interface100] ip address 10.110.1.1 24
[SwitchA-Vlan-interface100] quit
[SwitchA] interface Vlan-interface 101
[SwitchA-Vlan-interface101] ip address 192.168.1.1 24
[SwitchA-Vlan-interface101] quit
[SwitchA] interface Vlan-interface 102
[SwitchA-Vlan-interface102] ip address 192.168.9.1 24
[SwitchA-Vlan-interface102] quit
Configure VLANs, VLAN interfaces, and their IP addresses on other switches as per Figure 2-2. The detailed configuration steps are omitted here.
II. Configuring the unicast routing protocol
# Configure a router ID and enable OSPF on Switch A.
<SwitchA> system-view.
[SwitchA]router id 1.1.1.1
[SwitchA]ospf
[SwitchA-ospf-1]area 0
[SwitchA-ospf-1-area-0.0.0.0]network 10.110.1.0 0.0.0.255
[SwitchA-ospf-1-area-0.0.0.0]network 192.168.1.0 0.0.0.255
[SwitchA-ospf-1-area-0.0.0.0]network 192.168.9.0 0.0.0.255
The configuration on Switch B, Switch C, Switch D, and Switch E is similar to the configuration on Switch A.
III. Configuring the multicast protocols
# Enable IP multicast routing on Switch A, enable PIM-SM on each interface, and then enable IGMPv2 on VLAN-interface 100.
<SwitchA> system-view
[SwitchA] multicast routing-enable
[SwitchA] interface Vlan-interface 100
[SwitchA-Vlan-interface100] igmp enable
[SwitchA-Vlan-interface100] pim sm
[SwitchA-Vlan-interface100] quit
[SwitchA] interface vlan-interface 101
[SwitchA-Vlan-interface101] pim sm
[SwitchA-Vlan-interface101] quit
[SwitchA] interface vlan-interface 102
[SwitchA-Vlan-interface102] pim sm
& Note:
It is necessary to enable IGMP only on interfaces with attached multicast receivers. As the default IGMP version is IGMPv2, it is not necessary to use the version configuration command on the interface.
The configuration on Switch B and Switch C is similar to that on Switch A. The configuration on Switch D and Switch E is also similar to that on Switch A except that it is not necessary to enable IGMP on the corresponding interfaces on these two switches.
# Configure the group range to be served by the RP and configure a C-BSR and a C-RP on Switch D.
<SwitchD> system-view
[SwitchD] acl number 2005
[SwitchD-acl-basic-2005] rule permit source 225.1.1.0 0.0.0.255
[SwitchD-acl-basic-2005] quit
[SwitchD] pim
[SwitchD-pim] c-bsr vlan-interface 105 24 2
[SwitchD-pim] c-rp vlan-interface 105 group-policy 2005 priority 2
[SwitchD-pim] quit
# Configure the group range to be served by the RP and configure a C-BSR and a C-RP on Switch E.
<SwitchE> system-view
[SwitchE] acl number 2005
[SwitchE-acl-basic-2005] rule permit source 225.1.1.0 0.0.0.255
[SwitchE-acl-basic-2005] quit
[SwitchE] pim
[SwitchE-pim] c-bsr vlan-interface 102 24 1
[SwitchE-pim] c-rp vlan-interface 102 group-policy 2005 priority 1
[SwitchE-pim] quit
# Enable IGMP Snooping globally on Switch E, and enable IGMP Snooping in VLAN 100.
<SwitchF> system-view
[SwitchF] igmp-snooping enable
Enable IGMP-Snooping ok.
[SwitchF] vlan 100
[SwitchF-vlan100] igmp-snooping enable
[SwitchF-vlan100] quit
IV. Verifying the configuration
Now start sending multicast data to multicast group 225.1.1.1 from Source and start receiving the multicast data on Host A and Host C, and take the following steps to verify the configurations made on the switches.
1) Check whether the multicast stream flows to Host A and Host C.
# View PIM neighboring relationships on Switch E.
<SwitchE> display pim neighbor
Neighbor's Address Interface Name Uptime Expires
192.168.9.1 Vlan-interface102 02:47:04 00:01:42
192.168.2.1 Vlan-interface103 02:45:04 00:04:46
192.168.3.1 Vlan-interface104 02:42:24 00:04:45
192.168.4.2 Vlan-interface105 02:43:44 00:05:44
# View BSR information on Switch E.
<SwitchE> display pim bsr-info
Current BSR Address: 192.168.4.2
Priority: 2
Mask Length: 24
Expires: 00:01:39
Local Host is C-BSR: 192.168.9.2
Priority: 1
Mask Length: 24
# View RP information on Switch E.
<SwitchE> display pim rp-info
PIM-SM RP-SET information:
BSR is: 192.168.4.2
Group/MaskLen: 225.1.1.0/24
RP 192.168.9.2
Version: 2
Priority: 1
Uptime: 00:03:15
Expires: 00:01:14
RP 192.168.4.2
Version: 2
Priority: 2
Uptime: 00:04:25
Expires: 00:01:09
# View PIM routing table entries on Switch A.
<SwitchA> display pim routing-table
PIM-SM Routing Table
Total 1 (S,G) entry, 1 (*,G) entry, 0 (*,*,RP) entry
(*, 225.1.1.1), RP 192.168.9.2
Protocol 0x20: PIMSM, Flag 0x2003: RPT WC NULL_IIF
Uptime: 00:01:33, Timeout in 200 sec
Upstream interface: Null, RPF neighbor: 0.0.0.0
Downstream interface list:
1 oifs
Vlan-interface100, Protocol 0x100: RPT RPT, timeout in 200 sec
(10.110.5.100, 225.1.1.1)
Protocol 0x20: PIMSM, Flag 0x80004: SPT
Uptime: 00:03:43, Timeout in 199 sec
Upstream interface: Vlan-interface102, RPF neighbor: 192.168.9.2
Downstream interface list:
1 oifs
Vlan-interface100, Protocol 0x300: RPT SPT, timeout in 200 sec
Matched 1 (S,G) entry, 1 (*,G) entry, 0 (*,*,RP) entry
The information on Switch B and Switch C is similar to that on Switch A.
# View PIM routing table entries on Switch D.
<SwitchD> display pim routing-table
PIM-SM Routing Table
Total 1 (S,G) entry, 0 (*,G) entry, 0 (*,*,RP) entry
(10.110.5.100, 225.1.1.1)
Protocol 0x20: PIMSM, Flag 0x4: SPT
Uptime: 00:03:03, Timeout in 27 sec
Upstream interface: Vlan-interface300, RPF neighbor: NULL
Downstream interface list:
2 oifs
Vlan-interface101, Protocol 0x300: RPT SPT, timeout in 147 sec
Vlan-interface105, Protocol 0x300: RPT SPT, timeout in 145 sec
Matched 1 (S,G) entry, 0 (*,G) entry, 0 (*,*,RP) entry
# View PIM routing table entries on Switch E.
<SwitchE> display pim routing-table
PIM-SM Routing Table
Total 1 (S,G) entry, 1 (*,G) entry, 0 (*,*,RP) entry
(*,225.1.1.1), RP 192.168.9.2
Protocol 0x20: PIMSM, Flag 0x2003: RPT WC NULL_IIF
Uptime: 00:02:34, Timeout in 176 sec
Upstream interface: Null, RPF neighbor: 0.0.0.0
Downstream interface list:
2 oifs
Vlan-interface102, Protocol 0x100: RPT, timeout in 176 sec
Vlan-interface103, Protocol 0x100: RPT, timeout in 135 sec
(10.110.5.100, 225.1.1.1)
Protocol 0x20: PIMSM, Flag 0x4: SPT
Uptime: 00:03:03, Timeout in 27 sec
Upstream interface: Vlan-interface105, RPF neighbor: 192.168.4.2
Downstream interface list:
2 oifs
Vlan-interface102, Protocol 0x300: RPT SPT, timeout in 147 sec
Vlan-interface103, Protocol 0x300: RPT SPT, timeout in 145 sec
Matched 1 (S,G) entry, 1 (*,G) entry, 0 (*,*,RP) entry
# View the information about multicast group entries created by IGMP Snooping on Switch F.
<SwitchF> display igmp-snooping group
Total 1 IP Group(s).
Total 1 MAC Group(s).
Vlan(id):100.
Total 1 IP Group(s).
Total 1 MAC Group(s).
Static router port(s):
Dynamic router port(s):
Ethernet1/0/2
IP group(s):the following ip group(s) match to one mac group.
IP group address:225.1.1.1
Host port(s):Ethernet1/0/19
MAC group(s):
MAC group address:0100-5e01-0101
Host port(s):Ethernet1/0/19
# View multicast group information that contains port information on Switch B.
<SwitchB> display mpm group
Total 1 IP Group(s).
Total 1 MAC Group(s).
Vlan(id):200.
Total 1 IP Group(s).
Total 1 MAC Group(s).
Static router port(s):
Dynamic router port(s):
IP group(s):the following ip group(s) match to one mac group.
IP group address:225.1.1.1
Host port(s):Ethernet1/0/24
MAC group(s):
MAC group address:0100-5e01-0101
Host port(s):Ethernet1/0/24
Vlan(id):103.
Total 0 IP Group(s).
Total 0 MAC Group(s).
Static router port(s):
Dynamic router port(s):
Ethernet1/0/10
As shown above, multicast traffic can successfully flow to Host A and Host C.
2) Configure simulated joining
Configure simulated joining on Switch B, thus to prevent the multicast switch from considering that no multicast receiver exist on the subnet due to some reason and removing the corresponding path from the multicast forwarding tree.
# Configure Ethernet 1/0/21 as a simulated host to join multicast group 225.1.1.1.
<SwitchB> system-view
[SwitchB] interface Vlan-interface 200
[SwitchB-Vlan-interface200] igmp host-join 225.1.1.1 port Ethernet 1/0/21
# View multicast group information that contains port information on Switch B.
<SwitchB> display mpm group
Total 1 IP Group(s).
Total 1 MAC Group(s).
Vlan(id):200.
Total 1 IP Group(s).
Total 1 MAC Group(s).
Static router port(s):
Dynamic router port(s):
IP group(s):the following ip group(s) match to one mac group.
IP group address:225.1.1.1
Host port(s):Ethernet1/0/21 Ethernet1/0/24
MAC group(s):
MAC group address:0100-5e01-0101
Host port(s):Ethernet1/0/21 Ethernet1/0/24
Vlan(id):103.
Total 0 IP Group(s).
Total 0 MAC Group(s).
Static router port(s):
Dynamic router port(s):
Ethernet1/0/10
As shown above, Ethernet 1/0/21 has become a member port for multicast group 225.1.1.1.
2.3 IGMP Snooping-Only Configuration Examples
2.3.1 Network Requirements
In case that it is unnecessary or infeasible to build a Layer-3 multicast network, enabling IGMP Snooping on all the devices in a Layer 2 network can implement some multicast functions.
2.3.2 Configuration Plan
1) As shown in Figure 2-3, in a Layer-2 network without Layer-3 devices, Switch C connects to the multicast source through Ethernet 1/0/3. At least one receiver is attached to Switch B and Switch C respectively.
2) Enable IGMP Snooping on Switch A, Switch B, and Switch C, with Switch A acting as the IGMP Snooping querier.
2.3.3 Network Diagram
Figure 2-3 Network diagram for IGMP Snooping–only configuration
2.3.4 Configuration Procedure
I. Configuring switch A
# Enable IGMP Snooping globally.
<SwitchA> system-view
[SwitchA] igmp-snooping enable
Enable IGMP-Snooping ok.
# Create VLAN 100, add Ethernet 1/0/1 and Ethernet 1/0/2 into VLAN 100, and then enable IGMP Snooping in this VLAN.
[SwitchA] vlan 100
[SwitchA-vlan100] port Ethernet 1/0/1 Ethernet 1/0/2
[SwitchA-vlan100] igmp-snooping enable
# Enable IGMP Snooping querier in VLAN 100.
[SwitchA-vlan100] igmp-snooping querier
[SwitchA-vlan100] quit
II. Configuring Switch B
# Enable IGMP Snooping globally.
<SwitchB> system-view
[SwitchB] igmp-snooping enable
Enable IGMP-Snooping ok.
# Create VLAN 100, add Ethernet 1/0/1 through Ethernet 1/0/3 into VLAN 100, and then enable IGMP Snooping in this VLAN.
[SwitchB] vlan 100
[SwitchB-vlan100] port Ethernet 1/0/1 to Ethernet 1/0/3
[SwitchB-vlan100] igmp-snooping enable
[SwitchB-vlan100] quit
III. Configuring Switch C
# Enable IGMP Snooping globally.
<SwitchC system-view
[SwitchC] igmp-snooping enable
Enable IGMP-Snooping ok.
# Create VLAN 100, add Ethernet 1/0/1 through Ethernet 1/0/3 into VLAN 100, and then enable IGMP Snooping in this VLAN.
[SwitchC] vlan 100
[SwitchC-vlan100] port Ethernet 1/0/1 to Ethernet 1/0/3
[SwitchC-vlan100] igmp-snooping enable
Caution:
Switch C is not the IGMP Snooping querier, so it does not have forwarding entries for non-directly-connected multicast receivers, and floods multicast packets for such receivers within the VLAN to which the packets belong. Therefore, to avoid impact on the network and on Switch C caused by multicast flooding, it is recommended to enable IGMP Snooping querier on the switch that is as close to the multicast source as possible.
IV. Verifying the configuration
1) View information on Switch B.
# View IGMP packet statistics on Switch B.
<SwitchB> display igmp-snooping statistics
Received IGMP general query packet(s) number:16.
Received IGMP specific query packet(s) number:3.
Received IGMP V1 report packet(s) number:0.
Received IGMP V2 report packet(s) number:53.
Received IGMP leave packet(s) number:1.
Received error IGMP packet(s) number:0.
Sent IGMP specific query packet(s) number:1.
Switch B received IGMP general queries sent by the querier and IGMP reports from receivers.
# View multicast group information on Switch B.
<Switch B> display igmp-snooping group
Total 1 IP Group(s).
Total 1 MAC Group(s).
Vlan(id):100.
Total 1 IP Group(s).
Total 1 MAC Group(s).
Static router port(s):
Dynamic router port(s):
Ethernet1/0/1
IP group(s):the following ip group(s) match to one mac group.
IP group address:224.1.1.1
Host port(s):Ethernet1/0/2
MAC group(s):
MAC group address:0100-5e01-0101
Host port(s):Ethernet1/0/2
As shown above, a forwarding entry for the multicast group 224.1.1.1 has been created on Switch A, with Ethernet 1/0/1 as the router port and Ethernet 1/0/2 as the member port.
2) View information on Switch A.
# View IGMP packet statistics on Switch A.
<SwitchA> display igmp-snooping statistics
Received IGMP general query packet(s) number:0.
Received IGMP specific query packet(s) number:0.
Received IGMP V1 report packet(s) number:0.
Received IGMP V2 report packet(s) number:53.
Received IGMP leave packet(s) number:1.
Received error IGMP packet(s) number:0.
Sent IGMP specific query packet(s) number:1.
Switch A receives IGMP reports from the receivers.
# View multicast group information on Switch A.
<Switch A> display igmp-snooping group
Total 1 IP Group(s).
Total 1 MAC Group(s).
Vlan(id):100.
Total 1 IP Group(s).
Total 1 MAC Group(s).
Static router port(s):
Dynamic router port(s):
IP group(s):the following ip group(s) match to one mac group.
IP group address:224.1.1.1
Host port(s):Ethernet1/0/1
MAC group(s):
MAC group address:0100-5e01-0101
Host port(s):Ethernet1/0/1
As shown above, a forwarding entry for the multicast group 224.1.1.1 has been created on Switch A, with Ethernet 1/0/1 as the member port. Acting as the IGMP Snooping querier, Switch A does not have a router port.
3) View information on Switch C.
# View IGMP packet statistics on Switch C.
<SwitchC> display igmp-snooping statistics
Received IGMP general query packet(s) number:10.
Received IGMP specific query packet(s) number:0.
Received IGMP V1 report packet(s) number:0.
Received IGMP V2 report packet(s) number:0.
Received IGMP leave packet(s) number:.0
Received error IGMP packet(s) number:0.
Sent IGMP specific query packet(s) number:0.
Switch C received only IGMP general queries from the querier.
# View multicast group information on Switch C.
<Switch C> display igmp-snooping group
Total 0 IP Group(s).
Total 0 MAC Group(s).
Vlan(id):100.
Total 0 IP Group(s).
Total 0 MAC Group(s).
Static router port(s):
Dynamic router port(s):
Ethernet1/0/1
As shown above, no forwarding entries have been created on Switch C. The switch must flood multicast data in VLAN 100.