16-Multicast Protocol Operation

Download

Table of Contents

Chapter 1 IGMP Snooping Configuration. 1-1

1.1 IGMP Snooping Overview. 1-1

1.1.1 Principle of IGMP Snooping. 1-1

1.1.2 Basic Concepts in IGMP Snooping. 1-2

1.1.3 Work Mechanism of IGMP Snooping. 1-3

1.2 IGMP Snooping Configuration Tasks. 1-5

1.3 Configuring Basic Functions of IGMP Snooping. 1-6

1.3.1 Configuration Prerequisites. 1-6

1.3.2 Enabling IGMP Snooping. 1-6

1.3.3 Configuring the Version of IGMP Snooping. 1-7

1.3.4 Configuring Port Aging Timers. 1-8

1.4 Configuring Port Functions. 1-9

1.4.1 Configuration Prerequisites. 1-9

1.4.2 Configuring Static Ports. 1-9

1.4.3 Enabling the Function of Simulating Member Hosts. 1-10

1.4.4 Enabling the Fast Leave Feature. 1-11

1.4.5 Configuring IGMP Report Suppression. 1-12

1.5 Configuring IGMP-Related Functions. 1-13

1.5.1 Configuration Prerequisites. 1-13

1.5.2 Enabling IGMP Snooping Querier 1-13

1.5.3 Configuring IGMP Timers. 1-14

1.5.4 Configuring Source IP Address of IGMP Queries. 1-15

1.5.5 Configuring the Function of Dropping Unknown Multicast Data. 1-16

1.6 Configuring a Multicast Group Policy. 1-16

1.6.1 Configuration Prerequisites. 1-16

1.6.2 Configuring a Multicast Group Filter 1-16

1.6.3 Configuring Multicast Source Port Filtering. 1-17

1.6.4 Configuring Maximum Multicast Groups that Can Pass Ports. 1-18

1.6.5 Configuring Multicast Group Replacement 1-19

1.7 Displaying and Maintaining IGMP Snooping. 1-20

1.8 IGMP Snooping Configuration Examples. 1-21

1.8.1 Simulating Member Hosts. 1-21

1.8.2 Static Router Port Configuration. 1-23

1.9 Troubleshooting IGMP Snooping Configuration. 1-25

1.9.1 Switch Fails in Layer 2 Multicast Forwarding. 1-25

1.9.2 Configured Multicast Group Policy Fails to Take Effect 1-25

Chapter 2 MLD Snooping Configuration. 2-1

2.1 MLD Snooping Overview. 2-1

2.1.1 How MLD Snooping Works. 2-1

2.1.2 Basic Concepts in MLD Snooping. 2-2

2.1.3 Work Mechanism of MLD Snooping. 2-3

2.2 MLD Snooping Configuration Tasks. 2-5

2.3 Configuring Basic Functions of MLD Snooping. 2-6

2.3.1 Configuration Prerequisites. 2-6

2.3.2 Enabling MLD Snooping. 2-6

2.3.3 Configuring Port Aging Timers. 2-7

2.4 Configuring Port Functions. 2-8

2.4.1 Configuration Prerequisites. 2-8

2.4.2 Configuring Static Ports. 2-8

2.4.3 Enabling the Function of Simulating Member Hosts. 2-9

2.4.4 Configuring the Fast Leave Feature. 2-10

2.4.5 Configuring MLD Report Suppression. 2-11

2.5 Configuring MLD-Related Functions. 2-11

2.5.1 Configuration Prerequisites. 2-11

2.5.2 Enabling MLD Snooping Querier 2-12

2.5.3 Configuring MLD Timers. 2-12

2.5.4 Configuring Source IPv6 Addresses of MLD Queries. 2-14

2.5.5 Configuring the Function of Dropping Unknown IPv6 Multicast Data. 2-14

2.6 Configuring an IPv6 Multicast Group Policy. 2-15

2.6.1 Configuration Prerequisites. 2-15

2.6.2 Configuring an IPv6 Multicast Group Filter 2-15

2.6.3 Configuring IPv6 Multicast Source Port Filtering. 2-16

2.6.4 Configuring Maximum Multicast Groups that Can Pass Ports. 2-17

2.6.5 Configuring IPv6 Multicast Group Replacement 2-18

2.7 Displaying and Maintaining MLD Snooping. 2-19

2.8 MLD Snooping Configuration Examples. 2-20

2.8.1 Simulated Host Joining. 2-20

2.8.2 Static Router Port Configuration. 2-22

2.9 Troubleshooting MLD Snooping. 2-23

2.9.1 Switch Fails in Layer 2 Multicast Forwarding. 2-23

2.9.2 Configured IPv6 Multicast Group Policy Fails to Take Effect 2-24

Chapter 3 Multicast VLAN Configuration. 3-1

3.1 Introduction to Multicast VLAN. 3-1

3.2 Configuring Multicast VLAN. 3-1

3.3 Displaying and Maintaining Multicast VLAN. 3-2

3.4 Multicast VLAN Configuration Example. 3-2

 


Chapter 1  IGMP Snooping Configuration

When configuration IGMP Snooping, go to the following sections for information you are interested in:

l           IGMP Snooping Overview

l           Configuring Basic Functions of IGMP Snooping

l           Configuring Port Functions

l           Configuring IGMP-Related Functions

l           Configuring a Multicast Group Policy

l           Displaying and Maintaining IGMP Snooping

l           IGMP Snooping Configuration Examples

l           Troubleshooting IGMP Snooping Configuration

1.1  IGMP Snooping Overview

Internet Group Management Protocol Snooping (IGMP Snooping) is a multicast constraining mechanism that runs on Layer 2 devices to manage and control multicast groups.

1.1.1  Principle of IGMP Snooping

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.

As shown in Figure 1-1, when IGMP Snooping is not running, multicast packets are broadcast to all devices at Layer 2. When IGMP Snooping runs, multicast packets for known multicast groups are multicast to the receivers at Layer 2.

Figure 1-1 Multicast forwarding before and after IGMP Snooping runs

1.1.2  Basic Concepts in IGMP Snooping

I. IGMP Snooping related ports

As shown in Figure 1-2, Router A connects to the multicast source, IGMP Snooping runs on Switch A and Switch B, Host A and Host C are receiver hosts (namely, multicast group members).

Figure 1-2 IGMP Snooping related ports

Ports involved in IGMP Snooping, as shown in Figure 1-2, are described as follows:

l           Router port: On an Ethernet switch, a router port connects the switch to a multicast router. In the figure, GigabitEthernet1/0/1 of Switch A and GigabitEthernet1/0/1 of Switch B are router ports. A switch registers all its local router ports in its router port list.

l           Member port: On an Ethernet switch, a member port (also known as multicast group member port) connects the switch to a multicast group member. In the figure, GigabitEthernet1/0/2 and GigabitEthernet1/0/3 of Switch A and GigabitEthernet1/0/2 of Switch B are member ports. The switch records all member ports on the local device in the IGMP Snooping forwarding table.

 

&  Note:

Whenever mentioned in this document, a router port is a router-connecting port on a switch, rather than a port on a router.

 

II. Port aging timers in IGMP Snooping and related messages and actions

Table 1-1 Port aging timers in IGMP Snooping and related messages and actions

Timer

Description

Message before expiry

Action after expiry

Router port aging timer

For each router port, the switch sets a timer initialized to the aging time of the route port

IGMP general query or PIM hello message of which the source address is not 0.0.0.0

The switch removes this port from its router port list

Member port aging timer

When a port joins an multicast group, the switch sets a timer for the port, which is initialized to the member port aging time

IGMP report message

The switch removes this port from the multicast group forwarding table

 

1.1.3  Work Mechanism of IGMP Snooping

A switch running IGMP Snooping performs different actions when it receives different IGMP messages, as follows:

I. General queries

The IGMP querier periodically sends IGMP general queries to all hosts and routers on the local subnet to find out whether multicast group members exist on the subnet.

Upon receiving an IGMP general query, the switch forwards it through all ports in the VLAN except the receiving port and performs the following to the receiving port:

l           If the receiving port is a router port existing in its router port list, the switch resets the aging timer of this router port.

l           If the receiving port is not a router port existing in its router port list, the switch adds it into its router port list and sets an aging timer for this router port.

II. Membership reports

A host sends an IGMP report to the multicast router in the following circumstances:

l           Upon receiving an IGMP query, a multicast group member host responds with an IGMP report.

l           When intended to join a multicast group, a host sends an IGMP report to the multicast router to announce that it is to join the multicast group.

Upon receiving the IGMP report, the switch forwards it through all the router ports in the VLAN and performs the following to the receiving port:

l           Resolves the address of the multicast group that the host is to join and add a forwarding entry for this port in the forwarding table.

l           Sets or resets a member port aging timer for this port.

 

&  Note:

A switch will not forward an IGMP report through a non-router port for the following reason: When IGMP report suppression is enabled, if member hosts of that multicast group still exist under non-router ports, the hosts will stop sending reports when they receive the message, and this prevents the switch from knowing if members of that multicast group are still attached to these ports.

 

III. Leave messages

When an IGMPv1 host leaves a multicast group, the host does not send an IGMP leave message, so the switch cannot know immediately that the host has left the multicast group. However, as the host stops sending IGMP reports as soon as it leaves a multicast group, the switch deletes the forwarding entry for the member port corresponding to the host from the forwarding table when its aging timer expires.

When an IGMPv2 or IGMPv3 host leaves a multicast group, the host sends an IGMP leave message to the multicast router to announce that it has leaf the multicast group.

Upon receiving an IGMP leave message on the last member port, a switch forwards it out all router ports in the VLAN. Because the switch does not know whether any other member hosts of that multicast group still exists under the port to which the IGMP leave message arrived, the switch does not immediately delete the forwarding entry corresponding to that port from the forwarding table; instead, it resets the aging timer of the member port.

Upon receiving the IGMP leave message from a host, the IGMP querier resolves from the message the address of the multicast group that the host just left and sends an IGMP group-specific query to that multicast group through the port that received the leave message. Upon receiving the IGMP group-specific query, a switch forwards it through all the router ports in the VLAN and all member ports of that multicast group, and performs the following to the receiving port:

l           If a response to an IGMP report from that multicast group arrives to the member port before its aging timer expires, this means that some other members of that multicast group still exist under that port: the switch resets the aging timer of the member port.

l           If no IGMP report from that multicast group arrives to this member port before its aging timer expires as a response to the IGMP group-specific query,this means that no members of that multicast group still exist under the port: the switch deletes the forwarding entry corresponding to the port from the forwarding table when the aging timer expires.

1.2  IGMP Snooping Configuration Tasks

Complete these tasks to configure IGMP Snooping:

Task

Remarks

Configuring Basic Functions of IGMP Snooping

Enabling IGMP Snooping

Required

Configuring the Version of IGMP Snooping

Optional

Configuring Port Aging Timers

Optional

Configuring Port Functions

Configuring Static Ports

Optional

Enabling the Function of Simulating Member Hosts

Optional

Enabling the Fast Leave Feature

Optional

Configuring IGMP Report Suppression

Optional

Configuring IGMP-Related Functions

Enabling IGMP Snooping Querier

Optional

Configuring IGMP Timers

Optional

Configuring Source IP Address of IGMP Queries

Optional

Configuring the Function of Dropping Unknown Multicast Data

Optional

Configuring a Multicast Group Policy

Configuring a Multicast Group Filter

Optional

Configuring Multicast Source Port Filtering

Optional

Configuring Maximum Multicast Groups that Can Pass Ports

Optional

Configuring Multicast Group Replacement

Optional

 

&  Note:

l      Configurations performed in IGMP Snooping view are effective for all VLANs, while configurations made in VLAN view are effective only for ports belonging to the current VLAN. Configurations made in VLAN view override the corresponding configurations made in IGMP Snooping view.

l      Configurations performed in IGMP Snooping view are globally effective; configurations performed in port view are effective only for the current port; configurations performed in port group view are effective only for all the ports in the current port group.

l      The system gives priority to configurations made in port view or port group view. Configurations made in IGMP Snooping view are used only if the corresponding configurations have not been carried out in port view or port group view.

 

1.3  Configuring Basic Functions of IGMP Snooping

1.3.1  Configuration Prerequisites

Before configuring the basic functions of IGMP Snooping, complete the following tasks:

l           Configure the corresponding VLANs

l           Configure the corresponding port groups

Before configuring the basic functions of IGMP Snooping, prepare the following data:

l           Version of IGMP Snooping

l           Aging time of router ports

l           Aging timer of member ports

1.3.2  Enabling IGMP Snooping

Follow these steps to enabling IGMP Snooping:

To do...

Use the command...

Remarks

Enter system view

system-view

Enable IGMP Snooping globally and enter IGMP Snooping view

igmp-snooping

Required

Disabled by default

Return to system view

quit

Enter VLAN view

vlan vlan-id

Enable IGMP Snooping in the VLAN

igmp-snooping enable

Required

Disabled by default

 

&  Note:

l      IGMP Snooping must be enabled globally before it can be enabled in a VLAN.

l      If you enable IGMP Snooping in a specified VLAN, this function takes effect for Ethernet ports in this VLAN only.

 

1.3.3  Configuring the Version of IGMP Snooping

By configuring the IGMP Snooping version, you are actually configuring the version of IGMP messages that can be analyzed and processed by IGMP Snooping.

l           In the case of version 2, IGMP Snooping can analyze and process IGMPv1 and IGMPv2 messages, but not IGMPv3 messages, which will be broadcast in the VLAN.

l           If the current is 3, IGMP Snooping can analyze and process IGMPv1, IGMPv2 and IGMPv3 messages.

Follow these steps to configure the version of IGMP Snooping:

To do...

Use the command...

Remarks

Enter system view

system-view

Enter VLAN view

vlan vlan-id

Configure the version of IGMP Snooping

igmp-snooping version version-number

Optional

Version 2 by default

 

  Caution:

If you switch IGMP Snooping from version 3 to version 2, the system will:

l      Keep forwarding entries for version 3 static (*, G) joins;

l      Clear forwarding entries for version 3 static (S, G) joins, which will be restored when IGMP Snooping is switched back to version 3.

 

1.3.4  Configuring Port Aging Timers

If the switch does not receive an IGMP general query or a PIM hello message before the aging timer of a router port expires, the switch deletes this port from the router port list when the aging timer times out.

If the switch does not receive an IGMP report from a multicast group before the aging timer of a member port expires, the switch deletes this port from the forwarding table for that multicast group when the aging timers times out.

If multicast group memberships change frequently, you can set a relatively small value for the member port aging timer, and vice versa.

I. Configuring port aging timers globally

Follow these steps to configure port aging timers globally:

To do...

Use the command...

Remarks

Enter system view

system-view

Enter IGMP Snooping view

igmp-snooping

Configure router port aging time

router-aging-time interval

Optional

105 seconds by default

Configure member port aging time

host-aging-time interval

Optional

260 seconds by default

 

II. Configuring port aging timers in a VLAN

Follow these steps to configure port aging timers in a VLAN:

To do...

Use the command...

Remarks

Enter system view

system-view

Enter VLAN view

vlan vlan-id

Configure router port aging time

igmp-snooping router-aging-time interval

Optional

105 seconds by default

Configure member port aging time

igmp-snooping host-aging-time interval

Optional

260 seconds by default

 

1.4  Configuring Port Functions

1.4.1  Configuration Prerequisites

Before configuring port functions, complete the following task:

l           Enable IGMP Snooping in the VLAN

Before configuring port functions, prepare the following data:

l           Multicast group and multicast source addresses

l           Whether to enable the fast leave feature

l           Whether to enabled IGMP report suppression

1.4.2  Configuring Static Ports

If the host attached to a port needs to receive multicast data addressed to a particular multicast group or from a particular multicast source/group, you can configure this port to be a static member port of that multicast group or multicast source/group.

In a network with a stable topology structure, you can configure router ports of a switch into static router ports, through which the switch can receive IGMP messages from routers.

Follow these steps to configure static ports:

To do...

Use the command...

Remarks

Enter system view

system-view

Enter the corresponding view

Enter Ethernet port view

interface interface-type interface-number

Use either command

Enter port group view

port-group { manual port-group-name | aggregation agg-id }

Configure a static member port

igmp-snooping static-group group-address [ source-ip source_address ] vlan vlan-id

Required

Disabled by default

Configuring a static router port

igmp-snooping static-router-port vlan vlan-id

Required

Disabled by default

 

&  Note:

l      The function of static joining to a multicast source/group is available only if a valid multicast source address is specified and IGMP Snooping version 3 is currently running.

l      When you configure or remove a port as a static member port of a multicast group or multicast source/group, the port will not initiate an IGMP report or an IGMP leave message.

l      Static member ports and static router ports never age out. To delete such a port, you need to use the corresponding command.

 

1.4.3  Enabling the Function of Simulating Member Hosts

Generally, a host running IGMP responds to IGMP queries from a multicast router. If a host fails to respond due to some reasons, the multicast router will deem that no member of this multicast group exists on the network segment, and therefore will remove the corresponding forwarding path.

To avoid this situation from happening, you can configure a port of the switch as a member of the multicast group(namely, enable the function of simulating member hosts on the port). When an IGMP query arrives, that member port will give a response. As a result, the switch can continue receive multicast data.

Through this configuration, the following functions can be implemented:

l           When the function of simulating member hosts is enabled on an Ethernet port, the simulated host sends an IGMP report.

l           When receiving an IGMP general query, the simulated host responds with an IGMP report just like a real host.

l           When the function of simulating member hosts is disabled on an Ether port, the simulated host sends an IGMP leave message.

Follow these steps to enable the function of simulating member hosts:

To do...

Use the command...

Remarks

Enter system view

system-view

Enter the corresponding view

Enter Ethernet port view

interface interface-type interface-number

Use either command

Enter port group view

port-group { manual port-group-name | aggregation agg-id }

Enable the function of simulating a member host of a multicast group or multicast source/group

igmp-snooping host-join group-address [ source-ip source-address ] vlan vlan-id

Required

Disabled by default

 

&  Note:

l      Each simulated host is equivalent to an independent host. For example, when receiving an IGMP query, the simulated host corresponding to each configuration responds respectively.

l      The IGMP version of the simulated host is the same as the IGMP Snooping version current running on the device.

 

1.4.4  Enabling the Fast Leave Feature

By default, when receiving a group-specific IGMP leave message on a port, the switch first sends an IGMP group-specific query message that port, rather than directly deleting the port from the multicast forwarding table. If the switch receives no response within a certain period of waiting time, it deletes the port from the forwarding table.

With the fast leave feature enabled, when the switch receives a group-specific IGMP leave message on a port, the switch directly deletes this port from the forwarding table without first sending an IGMP group-specific query to the port.

I. Configuring the fast leave feature globally

Follow these steps to configure the fast leave feature globally:

To do...

Use the command...

Remarks

Enter system view

system-view

Enter IGMP Snooping view

igmp-snooping

Enable the fast leave feature

fast-leave [ vlan vlan-list ]

Required

Disabled by default

 

II. Configuring the fast leave feature on a port or a group ports

Follow these steps to configure the fast leave feature on a port or a group ports:

To do...

Use the command...

Remarks

Enter system view

system-view

Enter the corresponding view

Enter Ethernet port view

interface interface-type interface-number

Use either command

Enter port group view

port-group { manual port-group-name | aggregation agg-id }

Enable the fast leave feature

igmp-snooping fast-leave [ vlan vlan-list ]

Required

Disabled by default

 

  Caution:

If the fast leave feature is enabled on a port to which more than one host is connected, when one host leaves a multicast group, the other hosts connected to port and interested in the same multicast group will fail to receive multicast data for that group.

 

1.4.5  Configuring IGMP Report Suppression

When a Layer 2 device receives an IGMP report from a multicast group member, the device forwards the message to the Layer 3 device directly connected with it. Thus, when multiple members belonging to a multicast group exit on the Layer 2 device, the Layer 3 device directly connected with it will receive duplicate IGMP reports from these members.

With the IGMP report suppression function enabled, within a query interval, the Layer 2 device forwards only the first IGMP report of a multicast group to the Layer 3 device and will not forward the subsequent IGMP reports from the same multicast group to the Layer 3 device. This helps reduce the number of packets being transmitted over the network.

Follow these steps to configure IGMP report suppression:

To do...

Use the command...

Remarks

Enter system view

system-view

Enter IGMP Snooping view

igmp-snooping

Enable IGMP report suppression

report-aggregation

Optional

Enabled by default

 

1.5  Configuring IGMP-Related Functions

1.5.1  Configuration Prerequisites