#

Monday, June 3, 2019

Traffic Analysis of IGMPv1

IGMPv1 only has 2 types of packets.

1. Membership Report
2. Membership Query

Let's analyse the traffic flow after configuring the following setup.

Here the hosts are also Cisco IOS routers.

Nothing is configured on the switch.

Hosts 1 & 2 will be configured in the same multicast group. Host-3 will not participate in the lab.

Packets entering and leaving on e0/0 interface of Router will be captured..









Configuration on the Router..

Router(config)#ip multicast-routing 

Router(config)#int e0/0
Router(config-if)#ip igmp version 1
Router(config-if)#ip pim sparse-mode

1st command will enable the multicast routing globally. It is enabled by default on most routers.
Next the interface will be configured for IGMPv1 (v2 is the default) and then a multicast routing protocol is specified for the interface to process the multicast packets.


As soon as configured, the 1st packet will be a Membership report destined to 224.0.1.40 and it will be a self generated one from this interface of the router. 224.0.1.40 is the Cisco RP discovery IP.











Next packet will also be from the e0/0 of the router and it will be a Membership query packet destined to 224.0.0.1 which is for the all hosts of the segment.











As soon as this Query hits it's own interface, the router will again send a packet very similar to the 1st packet. Query is sent every 1 minute, and a Report from router itself will be sent again as soon as it sees it's own Query. This will continue until we configure Hosts..

Configuration on Hosts..

Host-1(config)#int e0/0
Host-1(config-if)#ip igmp join-group 226.139.1.2
Host-1(config-if)#ip igmp version 1

Host-2(config)#int e0/0
Host-2(config-if)#ip igmp join-group 226.139.1.2
Host-2(config-if)#ip igmp version 1

The 1st packet from a Host which is an IGMP report will be like the following.











As soon as the router hits with a membership report from a Host, the router will insert the multicast address to the IGMP groups and it will start sending the feed to the interface it received the Report. 






If debug ip igmp is enabled on both Router and Host, something like the following will be displayed.


















The routing table will be shown like the following for this setup.

Router#show ip mroute


















IGMPv1 has no mechanism to inform the router about leaving the group by hosts. So this will be the end of the packet flow. When one host decides to leave the group it will simply not reply the future Queries. If no Report is received, the router will stop sending the traffic on that interface.

All the packet flow of IGMPv1 of this lab will be like the following and the highlighted packet is the 1st packet by a host at the moment it decided to join the group. Download the packet capture from here.



















If you want to see the traffic analysis of the current default version (IGMPv2) of this protocol and how the switch determines where to forward etc, please go here.

No comments:

Post a Comment