IGMP Protocol

IGMP (Internet Group Management Protocol) is a protocol used to manage IP multicast group membership relationships.

IGMP operates between hosts and their directly connected routers to support IP multicast communication.


How IGMP Works

The main function of IGMP is to allow hosts to join or leave multicast groups, and to enable routers to know which multicast groups have members in the local network.

1. Host Joining a Multicast Group

When a host wants to join a multicast group, it sends an IGMP Membership Report message to the local network.

  • The host sends an IGMP Membership Report message, indicating that it wants to receive data from a specific multicast address.

2. Router Querying Multicast Members

The router periodically sends IGMP Membership Query messages to ask which hosts in the local network are members of multicast groups.

  • The router sends IGMP Query messages to inquire about multicast members in the local network.
  • After receiving the query message, the host sends an IGMP Membership Report message to indicate that it is still a member of the multicast group.

3. Host Leaving a Multicast Group

When a host wants to leave a multicast group, it sends an IGMP Leave Group message.

  • The host sends an IGMP Leave Group message, indicating that it no longer wants to receive data from a specific multicast address.
  • After receiving the Leave Group message, the router sends a Group-Specific Query to confirm whether there are other hosts that are members of the multicast group.

Key Features of IGMP

  1. Multicast Group Membership Management:
    • Supports hosts dynamically joining or leaving multicast groups.
  2. Router Query Mechanism:
    • The router learns about multicast members in the local network through periodic queries.
  3. Version Support:
    • IGMP has multiple versions (IGMPv1, IGMPv2, IGMPv3), each with different features and compatibility.
  4. High Efficiency:
    • Transmits data via multicast, reducing network bandwidth usage.

Application Scenarios of IGMP

IGMP is widely used in the following scenarios:

  1. Video Streaming:
    • Supports multiple users watching the same video stream simultaneously.
  2. Online Meetings:
    • Supports multiple users participating in the same online meeting.
  3. Online Gaming:
    • Supports multiple players participating in the same online game simultaneously.
  4. Data Distribution:
    • Supports distributing data to multiple recipients simultaneously.

Advantages and Disadvantages of IGMP

Advantages:

  1. High Efficiency:
    • Transmits data via multicast, reducing network bandwidth usage.
  2. Flexibility:
    • Supports hosts dynamically joining or leaving multicast groups.
  3. Scalability:
    • Supports large-scale multicast communication.

Disadvantages:

  1. Complexity:
    • The management and configuration of multicast networks are relatively complex.
  2. Compatibility:
    • Different versions of IGMP may have compatibility issues.

IGMP Versions

IGMP has multiple versions, each with different features and compatibility:

  1. IGMPv1:
    • Supports basic multicast group membership management functions.
  2. IGMPv2:
    • Adds Leave Group messages and Group-Specific Query functions.
  3. IGMPv3:
    • Adds source filtering functions, supporting hosts selecting to receive multicast data from specific sources.

In summary, IGMP is a protocol used to manage IP multicast group membership relationships. By allowing hosts to join or leave multicast groups and enabling routers to understand multicast members in the local network, it supports efficient multicast communication. It is widely used in scenarios such as video streaming, online meetings, online gaming, and data distribution.

Other Extensions