What is IGMP
§ Internet Group Management Protocol (IGMP) is a protocol that manages host membership in IP multicast groups. IGMP（Internet Group Management Protocol）協定很簡單，它由主機成員關係協定發展而來。
§ IGMP: Internet Group Management Protocol - Used in IP multicast
§ IGMP is an Internet Layer protocol
§ IGMP is an asymmetric protocol.
§ IGMP carries group membership information
§ IGMP: “signaling” protocol to establish, maintain, remove groups on a subnet.
§ IGMP is required for all machines that receive IP multicast
§ IGMP operates at the IP Layer
§ Technically embeds its information in IP packets
§ IP Protocol Number = 2 to identify IGMP messages
Host and Group Membership in IGMP
§ Host and router exchange of multicast group info. IGMP在主機和它直接連接的路由器間工作。
§ Hosts use IGMP to dynamically register themselves in a multicast group on a particular LAN. 主機使用IGMP消息通告本地的組播路由器它想接收組播流量的組播組位址
§ Host registration is accomplished using IGMP.
§ How hosts tell routers about group membership. Hosts identify group memberships by sending IGMP messages to their local multicast router.
§ IGMP is used by host receivers to join or leave a multicast host group.
§ IGMP is used by IPv4-based receivers.
§ An IP multicast group, also known as a host group, is a set of hosts that listen for IP traffic destined for a specific multicast IP address.
§ A host group can be of any size.
§ Host group membership is dynamic, hosts can join and leave the group at any time.
§ Members of a host group can span IP routers across multiple networks. This situation requires IP multicast support on the IP routers and the ability for hosts to register their group membership with local routers.
§ A host can send traffic to an IP multicast address without belonging to the corresponding host group.
§ Each host keeps track of which mcast groups are subscribed to
- Socket API informs IGMP process of all joins
§ Hosts send memberships reports
- use response suppression
Multicast Router (Mrouter) in IGMP
§ Objective: keep router up-to-date with group membership of entire LAN
- Routers need not know who all the members are, only that members exist
§ Used by mrouters to learn about Multicast Group Memberships on their directly attached subnets
- the existence of at least one member/group
§ Routers and multilayer switches, configured for IGMP, listen to IGMP messages and periodically send out queries to discover which groups are active or inactive on a particular subnet or VLAN.
§ Routers solicit group membership from directly connected hosts
§ IGMP messages not forwarded by routers
§ Router queries periodically (every 60s.)
- mcast query to all-hosts group: 18.104.22.168
- maintains list of “active” groups
- entries time-out if hosts do not respond
§ The latest version at press time was Version 3.
- IGMPv3 supports receivers that explicitly signal sources from which they wish to receive traffic.
The following list indicates the current versions of IGMP:
§ IGMP version 1 (IGMPv1) RFC 1112
§ IGMP version 2 (IGMPv2) RFC 2236
§ IGMP version 3 (IGMPv3) RFC 3376
§ IGMP version 3 lite (IGMPv3 lite)
IGMP v1 – version v1
§ No way to expressly leave a multicast group.
§ It’s up to the router to timeout the group membership
IGMP v2 – version v2
§ Includes “leave processing” mechanism
- explicit leave message - reduces leave latency
- group-specific query – reduces bandwidth
IGMP v3 – version v3
Please refer further for the following topics: http://docs.google.com/fileview?id=0B71FtRlv0N1DNWJhNTI1NDktNDlmYy00OWUzLTljMGEtZmM4ZDI1NTY3Yzdh&hl=en
Possible levels of participation of a host in multicasting:
Unicast vs. Multicast routing
Multicast Forwarding Algorithms
IP Multicast Addresses
1.4. IGMP Protocol Packet Overview
1.5. IGMPv1 Message and Packet Format
1.7. IGMPv3 Message and Packet Format
To join a group, hosts sends report (Membership Report) message
Routers periodically issue request (Membership Query) message
Multicast Router Operations
1.9. Functions in IGMP Operation
Switches Using IGMP Snooping
Multicast Forwarding and Routing
DoS: IGMP Blasting
Group Table for IGMP