Brocade ICX 6650 IP Multicast Configuration Guide
Brocade ICX 6650 IP Multicast Configuration Guide
07.5.00
Part Number: 53-1002604-01
documentation@brocade.com


IP Multicast Protocols : IGMP V3

IGMP V3
The Internet Group Management Protocol (IGMP) allows an IPV4 interface to communicate IP Multicast group membership information to its neighboring routers. The routers in turn limit the multicast of IP packets with multicast destination addresses to only those interfaces on the router that are identified as IP Multicast group members. This release introduces the support of IGMP version 3 (IGMP V3) on Layer 3 switches.
In IGMP V2, when a router sent a query to the interfaces, the clients on the interfaces respond with a membership report of multicast groups to the router. The router can then send traffic to these groups, regardless of the traffic source. When an interface no longer needs to receive traffic from a group, it sends a leave message to the router which in turn sends a group-specific query to that interface to see if any other clients on the same interface is still active.
In contrast, IGMP V3 provides selective filtering of traffic based on traffic source. A router running IGMP V3 sends queries to every multicast enabled interface at the specified interval. These queries determine if any interface wants to receive traffic from the router. The queries include the IP address of the traffic source (S) or the ID of the multicast group (G, or both).
The interfaces respond to these queries by sending a membership report that contains one or more of the following records that are associated with a specific group:
IGMP V2 Leave report is equivalent to a TO_IN(empty) record in IGMP V3. This record means that no traffic from this group will be received regardless of the source.
An IGMP V2 group report is equivalent to an IS_EX(empty) record in IGMP V3. This record means that all traffic from this group will be received regardless of source.
In response to membership reports from the interfaces, the router sends a Group-Specific or a Group-and-Source Specific query to the multicast interfaces. Each query is sent three times with a one-second interval in between each transmission to ensure the interfaces receive the query. For example, a router receives a membership report with a Source-List-Change record to block old sources from an interface. The router sends Group-and-Source Specific Queries to the source and group (S,G) identified in the record. If none of the interfaces is interested in the (S,G), it is removed from (S,G) list for that interface on the router.
Each IGMP V3-enabled router maintains a record of the state of each group and each physical port within a virtual routing interface. This record contains the group, group-timer, filter mode, and source records information for the group or interface. Source records contain information on the source address of the packet and source timer. If the source timer expires when the state of the group or interface is in Include mode, the record is removed.
Default IGMP version
IGMP V3 is available on Brocade devices; however, the devices are shipped with IGMP V2 enabled. You must enable IGMP V3 globally or per interface.
Also, you must specify what version of IGMP you want to run on a device globally, on each interface (physical port or virtual routing interface), and on each physical port within a virtual routing interface. If you do not specify an IGMP version, IGMP V2 will be used.
Compatibility with IGMP V1 and V2
Different multicast groups, interfaces, and routers can run their own version of IGMP. Their version of IGMP is reflected in the membership reports that the interfaces send to the router. Routers and interfaces must be configured to recognized the version of IGMP you want them to process.
An interface or router sends the queries and reports that include its IGMP version specified on it. It may recognize a query or report that has a different version, but it may not process them. For example, an interface running IGMP V2 can recognize IGMP V3 packets, but cannot process them. Also, a router running IGMP V3 can recognize and process IGMP V2 packet, but when that router sends queries to an IGMP V2 interface, the host on that interface may not recognize the IGMP V3 queries. The interface or router does not automatically downgrade the IGMP version running on them to avoid version deadlock.
If an interface continuously receives queries from routers that are running versions of IGMP that are different from what is on the interface, the interface logs warning messages in the syslog every five minutes. Reports sent by interfaces to routers that contain different versions of IGMP do not trigger warning messages; however, you can see the versions of the packets using the show ip igmp traffic command.
The version of IGMP can be specified globally, per interface (physical port or virtual routing interface), and per physical port within a virtual routing interface. The IGMP version set on a physical port within a virtual routing interface supersedes the version set on a physical or virtual routing interface. Likewise, the version on a physical or virtual routing interface supersedes the version set globally on the device. The sections below present how to set the version of IGMP.
Globally enabling the IGMP version
To globally identify the IGMP version on a Brocade device, enter the ip igmp <version-number> command.
Brocade(config)#ip igmp version 3
 
Syntax:
ip igmp version <version-number>
Enter 1, 2, or 3 for <version-number>. Version 2 is the default version.
Enabling the IGMP version per interface setting
To specify the IGMP version for a physical port, enter a command such as the following.
Brocade(config)#interface ethernet 1/1/1
Brocade(config-if-e10000-1/1/1)#ip igmp version 3
 
To specify the IGMP version for a virtual routing interface on a physical port, enter a command such as the following.
Brocade(config)#interface ve 3
Brocade(config-vif-1) ip igmp version 3
 
Syntax:
[no] ip igmp version <version-number>
Enter 1, 2, or 3 for <version-number>. Version 2 is the default version.
Enabling the IGMP version on a physical port within
a virtual routing interface
To specify the IGMP version recognized by a physical port that is a member of a virtual routing interface, enter a command such as the following.
Brocade(config)#interface ve 3
Brocade(config-vif-3)#ip igmp version 2
Brocade(config-vif-3)#ip igmp port-version 3 e1/1/1-e1/1/5 e1/1/7
 
In this example, the second line sets IGMP V2 on virtual routing interface 3. However, the third line set IGMP V3 on ports 1/1/1 through 1/1/5 and port e1/1/7. All other ports in this virtual routing interface are configured with IGMP V2.
Syntax:
ip igmp port-version <version-number> ethernet <unit-num>/<slot-num>/<port-num>
Enter 1, 2, or 3 for <version-number>. IGMP V2 is the default version.
The ethernet <unit-num>/<slot-num>/<port-num> parameter specifies which physical port within a virtual routing interface is being configured. The unit number is 1.
Enabling membership tracking and fast leave
IGMP V3 provides membership tracking and fast leave to clients. In IGMP V2, only one client on an interface needs to respond to a router queries; therefore, some of the clients may be invisible to the router, making it impossible for the router to track the membership of all clients in a group. Also, when a client leaves the group, the router sends group specific queries to the interface to see if other clients on that interface need the data stream of the client who is leaving. If no client responds, the router waits three seconds before it stops the traffic.
IGMP V3 contains the tracking and fast leave feature that you enable on virtual routing interfaces. Once enabled, all physical ports on that virtual routing interface will have the feature enabled. IGMP V3 requires all clients to respond to general and group specific queries so that all clients on an interface can be tracked. Fast leave allows clients to leave the group without the three second waiting period, if the following conditions are met:
Every group on the physical interface of a virtual routing interface keeps its own tracking record. However, it can track group membership only; it cannot track by (source, group).
For example, two clients (Client A and Client B) belong to group1 but each is receiving traffic streams from different sources. Client A receives a stream from (source_1, group1) and Client B receives it from (source_2, group1). The router still waits for three seconds before it stops the traffic because the two clients are in the same group. If the clients are in different groups, then the three second waiting period is not applied and traffic is stopped immediately. The show ip igmp group tracking command displays that clients in a group that are being tracked.
If a client sends a leave message, the client is immediately removed from the group. If a client does not send a report during the the specified group membership time (the default is 140 seconds), that client is removed from the tracking list.
To enable the tracking and fast leave feature, enter commands such as the following.
Brocade(config)#interface ve 13
Brocade(config-vif-13)#ip igmp tracking
 
Syntax:
Setting the query interval
The IGMP query interval period defines how often a router will query an interface for group membership.
To modify the default value for the IGMP query interval, enter the ip igmp query-interval <num> command.
Brocade(config)#ip igmp query-interval 120
 
Syntax:
The <num> variable specifies the IGMP query interval in number of seconds. Enter a value from 10 through 3600. The default value is 125.
Setting the group membership time
The group membership time defines how long a group will remain active on an interface in the absence of a group report.
To define an IGMP membership time of 240 seconds, enter the ip igmp group-membership-time <num> command.
Brocade(config)#ip igmp group-membership-time 240
 
Syntax:
The <num> variable specifies the IGMP group membership time in number of seconds. Enter a value from 20 through 7200 seconds. The value you enter must be a little more than two times the query interval (2*query-interval +10). The default value is 260.
Setting the maximum response time
Maximum response time defines how long the Layer 3 switch will wait for an IGMP (V1 and V2) response from an interface before concluding that the group member on that interface is down, and then removing the interface from the group.
To change the IGMP maximum response time, enter the ip igmp max-response-time <num> command at the global CONFIG level of the CLI.
Brocade(config)#ip igmp max-response-time 8
 
Syntax:
[no] ip igmp max-response-time <num>
The <num> parameter specifies the IGMP maximum response time in number of seconds. Enter a value from 1 through 10. The default is 10.
IGMP V3 and source-specific multicast protocols
Enabling IGMP V3 enables source specific multicast (SSM) filtering for DVMRP and PIM Dense (PIM-DM) for multicast group addresses in the 224.0.1.0 through 239.255.255.255 address range. However, if PIM Sparse is used as the multicast protocol, the SSM protocol should be enabled if you want to filter unwanted traffic before the Shortest Path Tree protocol switchover occurs for groups in the 232/8 range. Not configuring the SSM protocol in PIM Sparse may cause the switch or router to leak unwanted packets with the same group, but containing undesired sources, to clients. After SPT switch over, the leak stops and source specific multicast works correctly even without configuring the SSM protocol.
If the SSM protocol is not enabled and before the SPT switchover, the multicast router creates one (*, G) entry for the entire multicast group, which can have many sources. If the SSM protocol is enabled, one (S,G) entry is created for every member of the multicast group, even for members with non-existent traffic. For example, if there are 1,000 members in the group, 1,000 (S,G) entries will be created. Therefore, enabling the SSM protocol for PIM-SM requires more resources than leaving the protocol disabled.
Enabling SSM
To enable the SSM protocol on a Brocade device running PIM-SM, enter a command such as the following.
Brocade(config)#router pim
Brocade(config-pim-router)#ssm-enable
 
Syntax:
[no] ssm-enable
Enter the ssm-enable command under the router pim level to globally enable the SSM protocol on a Layer 3 switch.
Displaying IGMP V3 information on Layer 3 switches
The sections below present the show commands available for IGMP V3 on Layer 3 switches. For show commands on Layer 2 Switches, use the show ip multicast commands which are discussed in the section “Displaying IGMP snooping information”.
Displaying IGMP group status
NOTE: This report is available on Layer 3 switches.
To display the status of all IGMP multicast groups on a device, enter the ip igmp group command.
To display the status of one IGMP multicast group, enter a command such as the following.
If the tracking and fast leave feature is enabled, you can display the list of clients that belong to a particular group by entering commands such as the following.
 
Syntax:
show ip igmp group [ <group-address> ] [ detail | tracking ]
If you want a report for a specific multicast group, enter that group address for <group-address>. Omit the <group-address> if you want a report for all multicast groups.
Enter detail if you want to display the source list of the multicast group.
Enter tracking if you want information on interfaces that have tracking enabled.
The following table defines the statistics for the show ip igmp group command output.
 
If you requested a detailed report, the following information is displayed:
If you requested a tracking report, the clients from which reports were received are identified.
Displaying IGMP traffic status
To display the traffic status on each virtual routing interface, enter the show ip igmp traffic command.
NOTE: This report is available on Layer 3 switches.
Syntax:
The report shows the following information.
 
Clearing IGMP statistics
To clear statistics for IGMP traffic, enter the clear igmp traffic command.
Brocade#clear igmp traffic
 
Syntax:
This command clears all the multicast traffic information on all interfaces on the device.

IP Multicast Protocols : IGMP V3