How to Configure IGMP Snooping on Omada Switches for Hotel IPTV Scenarios

Configuration Guide
Updated 05-13-2024 22:19:21 PM 6117
This Article Applies to: 

This article will introduce how to configure the IGMP Snooping on Omada switches in the hotel IPTV scenario, including the standalone and controller modes.

Note: All the CLI commands introduced in this article will only realize the basic features and take only gigabit ethernet ports as examples; for more detailed configuration and parameters, please check the CLI Guide.

1. Typical Topology

In the hotel IPTV scenario, the typical topology is as below:

Unlike SOHO scenarios, most IPTV servers or IPTV multicast sources are included in the hotel LAN network, so the multicast stream won’t come from the WAN side. The IPTV source is usually connected to the core switch or an access switch and then to the core switch so the multicast stream can be handed out to all IPTV devices in LAN. Access switches are then connected to the core switch and the hotel TVs directly or via room APs.

2. How does the IGMP system work

The IGMP system consists of several parts: Multicast Source, IGMP Querier, IGMP Snooping, and IGMP Receiver. Please see the figure below:

This figure shows a basic structure of the IGMP system; for our product, the device running IGMP Snooping is the switch, and our switch can also be configured as the IGMP Snooping Querier to replace the querier in this figure.

IGMP Snooping v2 has three kinds of IGMP packets: the IGMP Query, IGMP Report, and IGMP Leave. If the Multicast Source doesn’t support the query feature, it will simply broadcast all the streams, which is a waste of network resources, and enabling IGMP Snooping will handle this. The Querier will send an IGMP Query, which consists of general query and specific query, here it’s usually general query, which will ask if there’s any device requesting for any multicast stream, and the switches will forward the IGMP Query, and finally, reaches the IGMP Receiver such as an IPTV, if someone wants to watch a particular channel, the IPTV will send IGMP Report, which includes the information of this channel to request for this stream, which will also join this multicast group. When the user switches to another channel, which means the IPTV is no longer requesting this stream, it will send the IGMP Leave to leave this multicast group.

For all the devices running IGMP Snooping, there are two kinds of port roles to help create multicast groups: the router port and the member port. For a switch, the port receiving the IGMP Query packet will become the router port, and the ports receiving IGMP Report/leave will become the member port. You can also assume that the router port is closest to the querier on a switch, and the member ports are the ports closest to receivers. So after the query process mentioned previously, the switch running IGMP Snooping will create multicast groups, including the multicast IP of this stream, the VLAN this stream is running in, and the ports participating in this group, including the router port and the member port. As mentioned before, the multicast source will simply broadcast the stream in the network; after the multicast groups are created, the switch will forward the corresponding multicast stream only to the router port and member ports, and the IGMP Report/Leave packets will only be forwarded from member port to the router port.

The basic working process of IGMP v2 is like this, and IGMP v3 has some features to make the whole process more efficient, but the basic process and theory are the same as v2.

3. Overall Configuring Principles

Here, we will introduce the overall configuring principles for IGMP Snooping, taking the previous topology as an example. These recommendations we made when configuring IGMP Snooping will help avoid misfunction and improve device efficiency, bringing a better user experience.

3.1 Disable IGMP features for the router.

In a hotel IPTV scenario, as the IPTV source is included in the LAN, the multicast stream will not enter from the WAN side, and the router will not participate in the IGMP process. If you enable the IGMP feature on the router, it will be recognized as a querier, so the switch port connecting to it will become a router port. After that, a copy of all the multicast streams will be forwarded to the router, causing unnecessary load, which may lead to high CPU and memory occupancy on the router, affecting the normal function of the router. That’s why it is recommended to disable the IGMP Query or IGMP Proxy feature on the router, whether it’s a TP-Link router or from other vendors.

3.2 Enable drop packets from unknown multicast groups.

When configuring IGMP Snooping, you can choose to forward or discard the packets of unknown groups. Here, we recommend discarding all the packets from unknown groups. The reason is that there isn’t a table recording the member ports for unknown groups, so the switch doesn’t know where these packets should be forwarded. If you choose to forward them, they will be broadcasted, causing a waste of network resources, so the best choice is to discard them.

3.3 IGMP Snooping Querier should be closest to the source.

In hotel IPTV scenario, as the source needs report from end devices to determine which streams to be multicasted, an IGMP Snooping Querier is required. There should be only one querier in the network, and it should be configured only on the switch closest to the IPTV source. Check the following figure for a more intuitive explanation:

Here you can see the Querier will send IGMP Query to others, which means it won’t receive any IGMP Query from others, so there isn’t a router port on the Querier, as we know that the switch with IGMP Snooping enabled will forward the IGMP Report to the router port, so in this scenario, this Querier will not forward the IGMP Report to anyone. The other switch won’t receive any IGMP Report so that no multicast group will be created. However, if the multicast source keeps sending the streams, all of them will be regarded as streams of unknown groups and get dropped because no multicast group is created on this switch. Setting the switch closest to the multicast source as Querier will avoid this problem; the IGMP Snooping will be able to take effect through the whole network, saving network resources while ensuring the multicast functions normally.

3.4 Fast leave and report suppression should be closest to the end device.

Fast leave will remove the port from the IGMP group immediately when the switch receives the IGMP leave from the end device, so the IPTV can switch to another channel faster, providing the users with a smooth experience. If not enabled, another specific query will be sent after receiving IGMP leave to determine if more IPTVs are requesting this stream.

Report suppression will collect IGMP reports for the same stream coming from different member ports and finally send out only one IGMP report through the router port, which will reduce the load for uplink; it’s recommended to enable report suppression in large multicasting networks for example, over three to four hundreds of IPTVs installed.

If you need to enable these two features, do remember to configure them on the access switch or the switch directly connecting the IPTVs. Check the figure below:

For fast leave, you need to ensure that only one IPTV is connected to this port, so terminating the stream as soon as IGMP leave is received will not affect other IPTVs watching the same channel. It’s not recommended to enable fast leave in the scenario shown in the figure when more than one IPTV is connected to one member port; enabling fast leave on this port will interrupt the stream for another TV still watching. It’s the same if you enable it on any higher level uplink switches, so remember to enable fast leave only on the access switch, and the ports connecting to only one IPTV.

For report suppression, enabling it on the access switch will save the most network resources for the whole network; the total number of IGMP Report packets will be lowered from the very beginning and save the bandwidth of uplinks; suppressing the report on the core switch but not the access switch will be meaningless.

3.5 In case you have multiple IPTV sources in LAN.

Sometimes, there is more than one IPTV source in the network; it’s recommended you connect them to the same switch and set this switch as IGMP Snooping Querier; this switch will also send general queries to all the IPTV sources.

If your IPTV sources respond to the query, the switch will also establish IGMP groups for these IPTV sources, recording which port each stream is coming from so the stream will not be forwarded to another IPTV source, causing heavy load or misfunction on the source.

If your IPTV source does not respond to the IGMP query, you have two choices:

The first one is configuring port isolation and blocking communication between the ports connected to each IPTV source.

Below are the configuration methods in standalone mode and controller mode.

  • Configure port isolation in standalone mode:

Go to L2 FEATURES – Switching – Port – Port Isolation; here, you will see a table showing the ports and their forwarding list; the port will only be able to communicate with the ports included in the forwarding port list.

Click Edit on the upper right of the table to edit the forwarding list; for example, if I want to cut the communication between ports 1 and 2, just select port 1 and unselect port 2 for its forwarding port list, and click Apply.

  • Configure port isolation in controller mode:

In controller mode, go to Devices and click on the device connected with multiple IPTV Sources. In the device’s private configuration page, go to Ports, click the edit button of the ports connected with the IPTV Sources, tick Profile Overrides, and then tick Port Isolation.

In controller mode, the communication between the ports with port isolation enabled will be cut, but the communication between the ports enabled and disabled port isolation will be kept normal.

Please note that when configuring profile override with this method, the profile override is enabled, overriding the configurations you made in the port profile. Remember to make the necessary changes here.

The second one is configuring static IGMP groups on the switch, manually creating the groups, and assigning member ports to ensure the stream will not be forwarded from one IPTV source to another.

Below are the configuration methods in standalone mode and controller mode:

  • Configure static multicast group in standalone mode:

Go to L2 FEATURES – Multicast – IGMP Snooping – Static Group Config; here is where you can configure the static multicast group in standalone mode; you will be able to manually bind the multicast IP, VLAN, ID, and the designated member ports.

When entering the static group config page, you will see the static multicast group table; click Add on the upper right of the table to start configuring a new static group; just input the corresponding multicast IP, the VLAN ID this multicast stream is running in, and select the member ports you want to add, in this scenario, select the port connected to one of your IPTV Source and another port connected to the main network, for example, I have one of the IPTV Source connected to port 1 and the port 3 connected to core switch, so I just add port 1 and 3 into the static group. After configuring, the multicast stream from one IPTV Source will only be forwarded to the main network but not to any other IPTV Source.

  • Configure static multicast group in controller mode:

Port isolation must be configured through the CLI template in controller mode.

Go to Settings – CLI Configuration – Device CLI, click Create New Device CLI Profile, enter a name and description, and then enter the CLI commands.

For example, one of my IPTV Sources is connected to port 1, and port 3 is connected to the core switch. This IPTV Source is sending the stream with IP, running in VLAN 10; here is the command:

ip igmp snooping vlan-config 10 static interface gigabitEthernet 1/0/1,1/0/3

As you have multiple multicast groups to be configured, you can enter all the commands here, group by group. After entering the commands, click Next, and choose the device you want to apply the CLI.

Then click Confirm, then Save, and you will see this CLI Template you have just created; click Apply to apply it on the chosen devices; you can also check if it has been successfully applied by clicking View CLI Details in the upper-right corner.

4. Configuration under Standalone Mode

After entering the web GUI, you will find the IGMP related configurations in L2 FEATURES – Multicast – IGMP Snooping. It is divided into four parts: Global Config, Port Config, Static Group Config, and IGMP Authentication. We will introduce the configuration for these parts.

4.1 Global Config

This is the basic configuration page of IGMP Snooping; for the switches participating in IGMP, you need to enable IGMP Snooping.

  • IGMP Snooping: Ticking enable will enable it globally on the device.
  • IGMP Version: The IGMP protocol is backward compatible, so you can simply choose v3; it will work well with other devices that support v1 or v2 only.
  • Unknown Multicast Groups: It decides how the switch will process the stream with no IGMP group excited, which means currently, no one wants to watch it, or it’s a stream sending to an unknown group. It’s recommended that it be set as Discard to save network resources.
  • Header Validation: Enabling it will check a few sums in the header. This packet will be dropped if the sums don’t match the IGMP protocol. We do not suggest enabling it as some IPTV vendors may not closely follow the corresponding protocol, causing the packets created not to be able to pass the validation and get dropped, leading to misfunction of the whole system.

After you have finished configuring these four options, don’t forget to click Apply to apply it to the device.

For the IGMP VLAN Config, it will display all the VLANs created on the device. Usually, all the IPTV streams run in a dedicated VLAN, so please create a VLAN Interface for the IPTV stream first; then, you will find this VLAN in the IGMP VLAN Config. You can click the edit button on the right of this VLAN and enter the VLAN config page.

  • IGMP Snooping Status: Tick Enable to enable IGMP Snooping for VLAN.
  • Fast Leave, Report Suppression: Decide whether to enable fast leave and report suppression on this device; please follow the principle from the previous chapter.
  • Member Port Aging Time, Router Port Aging Time, Leave time: Keep default or configure as you want.
  • IGMP Snooping Querier: Please check the previous chapter about where you should enable the switch as an IGMP Snooping Querier. Tick Enable to set this switch as IGMP Snooping Querier and configure parameters, including Query Interval, Maximum Response Time, Last Member Query Interval, and Last Member Query Count; you can just keep it as default or set it manually as you like. The General Query Source IP is the IP address used to send the IGMP Query. Usually, you should set it as the IP address of this switch so it will be more convenient for you to check the packets sent from this querier.
  • Static Router Ports, Forbidden Router Ports: No need to configure.

After finishing configuring the IGMP VLAN configuration, click Save.

4.2 Port Config

After configuring IGMP on this device globally and per VLAN, you must also perform the port config; you can configure it per port or LAG group. You must configure the IGMP Snooping and fast leave status for each port or LAG group.

Here, you will see that for IGMP Snooping and Fast Leave, you can also choose to enable or disable them by port; by default, IGMP Snooping is enabled on all ports, and Fast Leave is disabled on all ports. Explanation as below:

  • IGMP Snooping: You can choose to turn it on or off globally per VLAN and port. To enable it on port A included in VLAN B, you must enable IGMP Snooping globally; in VLAN B and on port A, IGMP Snooping will take effect on a port only when the IGMP Snooping is enabled on all these three layers.
  • Fast Leave: You can choose to turn it on or off per VLAN and port, and it will take effect with only one layer enabled. For example, ports A and B are included in VLAN C. If you only enable it in VLAN C, even if you don’t enable it on ports A and B, it will also affect them. If you enabled it on port A but not on port B and VLAN C, it will also affect port A.

4.3 Static Group Config

In Static Group Config, you can click Add to configure and add static IGMP groups. To add a group, you must configure the multicast IP address and the VLAN running this multicast group. Then, manually choose the member ports you want to add to this static multicast group. After being added, all the static multicast groups, including their VLAN ID, multicast IP, and member ports, will be displayed in the table.

4.4 IGMP Authentication

Keep it by default.

5. Configuration under Controller Mode

The first step when using the devices in controller mode is creating a VLAN for IGMP. Go to Settings – Wired Networks – LAN – Networks, click Create New LAN, configure it as VLAN, apply on switches only, and then tick to enable the IGMP Snooping; if you need the IPv6 version, tick to enable MLD Snooping, too. Then click save.

Here, the GUI configuration is finished; you must configure the rest of the parameters using the CLI Template.

Go to Settings – CLI Configuration – Device CLI, click Create New Device CLI Profile, enter a name and description, and then enter the CLI commands.

Please note that you can also configure this device under standalone mode, export its config file, and copy it here.

Below are the CLI commands for configuring IGMP Snooping based on the topology shown in Chapter 1 and the principles in Chapter 3 (with IPTV VLAN ID=100):

  • Core switch and Aggregation switch:

ip igmp snooping drop-unknown

  • Access switch to IPTV:

ip igmp snooping drop-unknown

ip igmp snooping vlan-config 100 report-suppression

ip igmp snooping vlan-config 100 immediate-leave (If all the ports on this switch connect to only one IPTV, if not, don’t use this command and use the below command to enable it by port)

interface gigabitEthernet 1/0/1

ip igmp snooping immediate-leave


  • Access switch to IPTV Source:

ip igmp snooping drop-unknown

ip igmp snooping vlan-config 100 querier

Please check the CLI Guide on the product’s support page for more CLI commands to configure more parameters.

After entering the commands, click Next, and choose the device you want to apply the CLI.

Then click Confirm, then Save, and you will see this CLI Template you have just created; click Apply to apply it on the chosen devices; you can also check if it has been successfully applied by clicking View CLI Details in the upper-right corner.

For all the parameters you can configure, please check Chapter 3, which is the configuration under standalone mode. Also, remember to configure different parameters and features for switches in different positions of your topology following the principle introduced in Chapter 2.

Here, we have finished introducing how to configure IGMP Snooping for typical hotel IPTV scenarios on Omada L2+ and L3 switches in standalone mode or through the Omada SDN Controller.


Is this faq useful?

Your feedback helps improve this site.

Recommend Products


TP-Link Community

Still need help? Search for answers, ask questions, and get help from TP-Link experts and other users around the world.

Visit the Community >