An IGMP v3 limitation is documented in the HP manual but not the fact that it supresses the leave message, prunes too early and then floods all hosts with the traffic until the router gets around to pruning!
; J4900A Configuration Editor; Created on release #H.07.31 hostname "HP ProCurve Switch 2626" cdp run ip default-gateway 128.59.7.1 snmp-server community "public" Unrestricted vlan 1 name "DEFAULT_VLAN" untagged 1-26 ip address 128.59.7.254 255.255.255.0 ip igmp exit password manager
tcpdump -s 1500 -w 12.tcpdump igmp or dst 224.5.6.7 &This captures IGMP protocol messages and the (relatively low data rate) multicast data for the group of interest. Raw tcpdump traces are here:
host 10
host 11
host 12
host 13
Following are summaries of the traces and switch and router IGMP CLI output merged in chronological order:
Initial state | |
switch | HP ProCurve Switch 2626# sho ip igmp Status and Counters - IP Multicast (IGMP) Status VLAN ID : 1 VLAN Name : DEFAULT_VLAN Querier Address : 128.59.7.1 Active Group Addresses Reports Queries Querier Access Port ---------------------- ------- ------- ------------------- |
router | wat-edge-1>sho ip igmp groups fa7/37 IGMP Connected Group Membership Group Address Interface Uptime Expires Last Reporter |
Host 10 joins group. Exclude mode membership report is sent up to switch and passed through unmodified to router, but is supressed out other switch ports (so hosts 11 and 12 don't hear it). | |
host 10 | No. Time Source Destination Protocol Info 1 0.000000 128.59.7.10 224.0.0.22 IGMP V3 Membership Report Frame 1 (54 bytes on wire, 54 bytes captured) Ethernet II, Src: 00:00:86:51:bd:b2, Dst: 01:00:5e:00:00:16 Internet Protocol, Src Addr: 128.59.7.10 (128.59.7.10), Dst Addr: 224.0.0.22 (224.0.0.22) Internet Group Management Protocol IGMP Version: 3 Type: Membership Report (0x22) Header checksum: 0xf3f1 (correct) Num Group Records: 1 Group Record : 224.5.6.7 Change To Exclude Mode |
host 13 | No. Time Source Destination Protocol Info 1 0.000000 128.59.7.10 224.0.0.22 IGMP V3 Membership Report Frame 1 (60 bytes on wire, 60 bytes captured) Ethernet II, Src: 00:00:86:51:bd:b2, Dst: 01:00:5e:00:00:16 Internet Protocol, Src Addr: 128.59.7.10 (128.59.7.10), Dst Addr: 224.0.0.22 (224.0.0.22) Internet Group Management Protocol IGMP Version: 3 Type: Membership Report (0x22) Header checksum: 0xf3f1 (correct) Num Group Records: 1 Group Record : 224.5.6.7 Change To Exclude Mode |
host 11 | nothing |
host 12 | nothing |
Data starts to flow. Host 13 sees it come down from router which passes through to host 10 only, as it should. | |
host 13 | Frame 2 (1512 bytes on wire, 1500 bytes captured) Ethernet II, Src: 00:08:7c:d0:08:40, Dst: 01:00:5e:05:06:07 Internet Protocol, Src Addr: 128.59.39.150 (128.59.39.150), Dst Addr: 224.5.6.7 (224.5.6.7) User Datagram Protocol, Src Port: 33981 (33981), Dst Port: 8910 (8910) Data (1458 bytes) |
host 10 | No. Time Source Destination Protocol Info 2 0.920255 128.59.39.150 224.5.6.7 UDP Source port: 33981 Destination port: 8910 Frame 2 (1512 bytes on wire, 1500 bytes captured) Ethernet II, Src: 00:08:7c:d0:08:40, Dst: 01:00:5e:05:06:07 Internet Protocol, Src Addr: 128.59.39.150 (128.59.39.150), Dst Addr: 224.5.6.7 (224.5.6.7) User Datagram Protocol, Src Port: 33981 (33981), Dst Port: 8910 (8910) Data (1458 bytes) |
host 11 | nothing |
host 12 | nothing |
Data keeps flowing for about 39 seconds and the router sends out a membership query which is flooded out all switch ports. (N.B. this is time 0 for hosts 11 and 12 as it is the first packet they've heard.) | |
host 13 | No. Time Source Destination Protocol Info 41 39.403474 128.59.7.1 224.0.0.1 IGMP V3 Membership Query Frame 41 (60 bytes on wire, 60 bytes captured) Ethernet II, Src: 00:d0:03:66:80:0a, Dst: 01:00:5e:00:00:01 Internet Protocol, Src Addr: 128.59.7.1 (128.59.7.1), Dst Addr: 224.0.0.1 (224.0.0.1) Internet Group Management Protocol IGMP Version: 3 Type: Membership Query (0x11) Max Response Time: 10.0 sec (0x64) Header checksum: 0xec5f (correct) Multicast Address: 0.0.0.0 (0.0.0.0) QRV=2 S=Do not supress router side processing QQIC: 60 Num Src: 0 |
host 10 | No. Time Source Destination Protocol Info 41 39.402519 128.59.7.1 224.0.0.1 IGMP V3 Membership Query Frame 41 (60 bytes on wire, 60 bytes captured) Ethernet II, Src: 00:d0:03:66:80:0a, Dst: 01:00:5e:00:00:01 Internet Protocol, Src Addr: 128.59.7.1 (128.59.7.1), Dst Addr: 224.0.0.1 (224.0.0.1) Internet Group Management Protocol IGMP Version: 3 Type: Membership Query (0x11) Max Response Time: 10.0 sec (0x64) Header checksum: 0xec5f (correct) Multicast Address: 0.0.0.0 (0.0.0.0) QRV=2 S=Do not supress router side processing QQIC: 60 Num Src: 0 |
host 11 | No. Time Source Destination Protocol Info 1 0.000000 128.59.7.1 224.0.0.1 IGMP V3 Membership Query Frame 1 (60 bytes on wire, 60 bytes captured) Ethernet II, Src: 00:d0:03:66:80:0a, Dst: 01:00:5e:00:00:01 Internet Protocol, Src Addr: 128.59.7.1 (128.59.7.1), Dst Addr: 224.0.0.1 (224.0.0.1) Internet Group Management Protocol IGMP Version: 3 Type: Membership Query (0x11) Max Response Time: 10.0 sec (0x64) Header checksum: 0xec5f (correct) Multicast Address: 0.0.0.0 (0.0.0.0) QRV=2 S=Do not supress router side processing QQIC: 60 Num Src: 0 |
host 12 | No. Time Source Destination Protocol Info 1 0.000000 128.59.7.10 224.0.0.22 IGMP V3 Membership Report Frame 1 (60 bytes on wire, 60 bytes captured) Ethernet II, Src: 00:00:86:51:bd:b2, Dst: 01:00:5e:00:00:16 Internet Protocol, Src Addr: 128.59.7.10 (128.59.7.10), Dst Addr: 224.0.0.22 (224.0.0.22) Internet Group Management Protocol IGMP Version: 3 Type: Membership Report (0x22) Header checksum: 0xf3f1 (correct) Num Group Records: 1 Group Record : 224.5.6.7 Change To Exclude Mode |
Data keeps flowing and about 6 seconds later, host 10 sends up a membership report, which the router receives but is not flooded out to hosts 11 or 12. | |
host 10 | No. Time Source Destination Protocol Info 49 46.800444 128.59.7.10 224.0.0.22 IGMP V3 Membership Report Frame 49 (54 bytes on wire, 54 bytes captured) Ethernet II, Src: 00:00:86:51:bd:b2, Dst: 01:00:5e:00:00:16 Internet Protocol, Src Addr: 128.59.7.10 (128.59.7.10), Dst Addr: 224.0.0.22 (224.0.0.22) Internet Group Management Protocol IGMP Version: 3 Type: Membership Report (0x22) Header checksum: 0xf5f1 (correct) Num Group Records: 1 Group Record : 224.5.6.7 Mode Is Exclude |
host 13 | No. Time Source Destination Protocol Info 49 46.803464 128.59.7.10 224.0.0.22 IGMP V3 Membership Report Frame 49 (60 bytes on wire, 60 bytes captured) Ethernet II, Src: 00:00:86:51:bd:b2, Dst: 01:00:5e:00:00:16 Internet Protocol, Src Addr: 128.59.7.10 (128.59.7.10), Dst Addr: 224.0.0.22 (224.0.0.22) Internet Group Management Protocol IGMP Version: 3 Type: Membership Report (0x22) Header checksum: 0xf5f1 (correct) Num Group Records: 1 Group Record : 224.5.6.7 Mode Is Exclude |
host 11 | nothing |
host 12 | nothing |
Host 10 leaves group, sends a leave (change to include mode), which is SUPPRESSED by the switch and never gets to the router. Traffic keeps flowing, even though the host doesn't care. | |
host 10 | No. Time Source Destination Protocol Info 59 55.037244 128.59.7.10 224.0.0.22 IGMP V3 Membership Report Frame 59 (54 bytes on wire, 54 bytes captured) Ethernet II, Src: 00:00:86:51:bd:b2, Dst: 01:00:5e:00:00:16 Internet Protocol, Src Addr: 128.59.7.10 (128.59.7.10), Dst Addr: 224.0.0.22 (224.0.0.22) Internet Group Management Protocol IGMP Version: 3 Type: Membership Report (0x22) Header checksum: 0xf4f1 (correct) Num Group Records: 1 Group Record : 224.5.6.7 Change To Include Mode |
host 11 | nothing |
host 12 | nothing |
host 13 | nothing toward router; data continues to flow toward switch. |
Some time goes by, unwanted traffic keeps flowing to host 10. Hosts 11 and 12 just hear the once-a-minute membership query (as does host 10, who does not respond since he's already left the group). The switch and router show IGMP state with soft state timers counting down. | |
switch | HP ProCurve Switch 2626# sho ip igmp Status and Counters - IP Multicast (IGMP) Status VLAN ID : 1 VLAN Name : DEFAULT_VLAN Querier Address : 128.59.7.1 Active Group Addresses Reports Queries Querier Access Port ---------------------- ------- ------- ------------------- 224.5.6.7 3 3 1 |
router | wat-edge-1>sho ip igmp groups fa7/37 IGMP Connected Group Membership Group Address Interface Uptime Expires Last Reporter 224.5.6.7 FastEthernet7/37 00:02:51 00:00:55 128.59.7.10 wat-edge-1>sho ip igmp groups fa7/37 IGMP Connected Group Membership Group Address Interface Uptime Expires Last Reporter 224.5.6.7 FastEthernet7/37 00:02:55 00:00:51 128.59.7.10 |
The switch soft state IGMP counter expires, removing host 10's group membership. But the router is still counting down and sending the traffic which now FLOODS to all hosts on the switch. | |
switch | HP ProCurve Switch 2626# sho ip igmp Status and Counters - IP Multicast (IGMP) Status VLAN ID : 1 VLAN Name : DEFAULT_VLAN Querier Address : 128.59.7.1 Active Group Addresses Reports Queries Querier Access Port ---------------------- ------- ------- ------------------- |
router | wat-edge-1>sho ip igmp groups fa7/37 IGMP Connected Group Membership Group Address Interface Uptime Expires Last Reporter 224.5.6.7 FastEthernet7/37 00:03:04 00:00:42 128.59.7.10 wat-edge-1>sho ip igmp groups fa7/37 IGMP Connected Group Membership . . . wat-edge-1>sho ip igmp groups fa7/37 IGMP Connected Group Membership Group Address Interface Uptime Expires Last Reporter 224.5.6.7 FastEthernet7/37 00:03:45 00:00:01 128.59.7.10 wat-edge-1>sho ip igmp groups fa7/37 IGMP Connected Group Membership Group Address Interface Uptime Expires Last Reporter 224.5.6.7 FastEthernet7/37 00:03:45 00:00:00 128.59.7.10 wat-edge-1>sho ip igmp groups fa7/37 IGMP Connected Group Membership Group Address Interface Uptime Expires Last Reporter 224.5.6.7 FastEthernet7/37 00:03:46 now 128.59.7.10 wat-edge-1>sho ip igmp groups fa7/37 IGMP Connected Group Membership Group Address Interface Uptime Expires Last Reporter wat-edge-1> |
host 10 | No. Time Source Destination Protocol Info 234 226.920104 128.59.39.150 224.5.6.7 UDP Source port: 33981 Destination port: 8910 Frame 234 (1512 bytes on wire, 1500 bytes captured) Ethernet II, Src: 00:08:7c:d0:08:40, Dst: 01:00:5e:05:06:07 Internet Protocol, Src Addr: 128.59.39.150 (128.59.39.150), Dst Addr: 224.5.6.7 (224.5.6.7) User Datagram Protocol, Src Port: 33981 (33981), Dst Port: 8910 (8910) Data (1458 bytes) |
host 11 | No. Time Source Destination Protocol Info 4 131.518160 128.59.39.150 224.5.6.7 UDP Source port: 33981 Destination port: 8910 Frame 4 (1512 bytes on wire, 1500 bytes captured) Ethernet II, Src: 00:08:7c:d0:08:40, Dst: 01:00:5e:05:06:07 Internet Protocol, Src Addr: 128.59.39.150 (128.59.39.150), Dst Addr: 224.5.6.7 (224.5.6.7) User Datagram Protocol, Src Port: 33981 (33981), Dst Port: 8910 (8910) Data (1458 bytes) |
host 12 | ... first data packet received: No. Time Source Destination Protocol Info 4 131.524134 128.59.39.150 224.5.6.7 UDP Source port: 33981 Destination port: 8910 Frame 4 (1512 bytes on wire, 1500 bytes captured) Ethernet II, Src: 00:08:7c:d0:08:40, Dst: 01:00:5e:05:06:07 Internet Protocol, Src Addr: 128.59.39.150 (128.59.39.150), Dst Addr: 224.5.6.7 (224.5.6.7) User Datagram Protocol, Src Port: 33981 (33981), Dst Port: 8910 (8910) Data (1458 bytes) ... last data packet received: No. Time Source Destination Protocol Info 61 187.527213 128.59.39.150 224.5.6.7 UDP Source port: 33981 Destination port: 8910 Frame 61 (1512 bytes on wire, 1500 bytes captured) Ethernet II, Src: 00:08:7c:d0:08:40, Dst: 01:00:5e:05:06:07 Internet Protocol, Src Addr: 128.59.39.150 (128.59.39.150), Dst Addr: 224.5.6.7 (224.5.6.7) User Datagram Protocol, Src Port: 33981 (33981), Dst Port: 8910 (8910) Data (1458 bytes) |
host 13 | ... last data packet received: No. Time Source Destination Protocol Info 233 226.953965 128.59.39.150 224.5.6.7 UDP Source port: 33981 Destination port: 8910 Frame 233 (1512 bytes on wire, 1500 bytes captured) Ethernet II, Src: 00:08:7c:d0:08:40, Dst: 01:00:5e:05:06:07 Internet Protocol, Src Addr: 128.59.39.150 (128.59.39.150), Dst Addr: 224.5.6.7 (224.5.6.7) User Datagram Protocol, Src Port: 33981 (33981), Dst Port: 8910 (8910) Data (1458 bytes) |