The Internet Group Management Protocol, known as the Internet Group Management Protocol (IGMP), is a multicast protocol in the Internet Protocol family. The protocol runs between the host and the multicast router. There are three IGMP protocols, IGMPv1, v2, and v3.
The host IP software needs to be multicast expanded to enable the host to send and receive multicast packets locally. But this alone is not enough, because multicast forwarding across multiple networks must rely on routers. In order to establish a multicast forwarding route, a router needs to know the distribution of each member in the Internet. This requires that the host must be able to notify the local router of the multicast group it belongs to. This is also the basis for establishing a multicast forwarding route. Hosts and local routers use the Internet Group Management Protocol (IGMP) to exchange multicast group member information. On this basis, the local router then communicates with her multicast router about your information, disseminates the membership of the multicast group, and establishes multicast routing. This process and the router between the conventional unicast routing. This process is very similar to the propagation of conventional unicast routing between routers. IGMP is one of the most important TCP / IP standards. All IP multicast systems (including hosts and routers) need to support the IGMP protocol.
Multicast protocols include group member management protocols and multicast routing protocols. The member management protocol is used to manage the joining and leaving of multicast group members. The multicast routing protocol is responsible for establishing information exchange between routers to establish a multicast tree. IGMP belongs to the former and is a protocol used by a multicast router to maintain multicast group membership information. It runs between the host and the multicast router. The IGMP message is encapsulated in an IP packet and its IP protocol number is 2.
If a host wants to receive multicast packets sent to a particular group, it needs to listen for all packets destined for that particular group. In order to solve the route selection of multicast data packets on the Internet, a host needs to join or leave a group by notifying multicast routers on its subnet. IGMP is used in multicast to accomplish this task. In this way, the multicast router can know the members of the multicast group on the network and decide whether to forward the multicast data packets to their network. When a multicast router receives a multicast packet, it checks the multicast destination address of the packet and forwards it only if there is a member of that group on the interface.
IGMP provides the information necessary to forward the multicast packet to the destination in the final phase, enabling the following two-way capabilities:
The host uses IGMP to notify the router that it wants to receive or leave information for a particular multicast group.
The router periodically querys whether the multicast group members in the LAN are active through IGMP, and collects and maintains the member relationships of the connected network segment groups.