230 likes | 429 Views
DYNAMIC HOST REGISTRATION -- INTERNET GROUP MANAGEMENT PROTOCOL. 2008.07.26 Yi-Cheng Lin. Outline. INTRODUCTION IGMP MESSAGES IGMPv3 MESSAGES IGMP OPERATION PROTOCOL DETAILS FOR IGMPv2 IGMP SNOOPING SWITCHES. INTRODUCTION.
E N D
DYNAMIC HOST REGISTRATION -- INTERNET GROUP MANAGEMENT PROTOCOL 2008.07.26 Yi-Cheng Lin
Outline • INTRODUCTION • IGMP MESSAGES • IGMPv3 MESSAGES • IGMP OPERATION • PROTOCOL DETAILS FOR IGMPv2 • IGMP SNOOPING SWITCHES
INTRODUCTION • IGMP is used by host receivers to join or leave a multicast host group. • IGMP is used by IPv4-based receivers. • The latest version at press time was Version 3. • IGMPv3 supports receivers that explicitly signal sources from which they wish to receive traffic.
INTRODUCTION • Specifically, IGMPv3 is employed by hosts to signal channel access in SSM (Source Specific Multicast ). • Benefits of SSM: • Optimized access bandwidth utilization • Risk reduction
IGMP MESSAGES • In Version 1 , there are two types of IGMP messages: MQ and MR. • IGMPv2 message types are MQ,MR, and Leave Group (LG). • MQ: generic (general MQ), specific (group-specific MQ). MQ router receiver MR
IGMP MESSAGES • The IGMP messages for IGMPv2
IGMPv3 MESSAGES • Version 3 allows receivers to subscribe to or exclude a specific set of sources within a multicast group, rather than just an individual source (this is called, as noted, source specific multicast). • With this feature, IGMPv 3 adds support for “source filtering”. • IGMPv3 is not widely implemented as of press time.
IGMPv3 MESSAGES • Receivers signal membership to a multicast host group in the following two modes • INCLUDE mode. • EXCLUDE mode. • To support this capability the membership query packet (type of 0x11) has been changed; in addition, a new packet type of 0x22 has been added.
IGMPv3 MESSAGES • In IGMPv3 there are the following three variants of the Query message • general query • group-specific query • group-and-source-specific query
IGMPv3 MESSAGES • The Max Resp Code field specifies the maximum time allowed before sending a responding report. • Represented in units of 1/10 s and is derived from the maximum response code. • < 128, the value of the maximum response time • Max Resp Code >=128, Max Resp Code represents a floating-point
IGMPv3 MESSAGES • If Max Resp Code >= 128 • Ex: assume that the value of the maximum response code is decimal 178. • 10110010 • Byte 0= 1 • Exp = 011 • Mant = 0010 • The subsequent calculations are • ( Mant | 0x10) = (0010|10000) = 10010 • Expt+11 = 011+ 11= 110 (basically, 3 +3= 6 in base 10, or 110 in base 2) • Therefore, when the maximum response code is decimal 178, the maximum response time is 1152 tenths of a second.
IGMPv3 MESSAGES • The QRV field (Querier’s Robustness Variable) carries a parameter that is used in tuning timer values for expected packet loss. • The QQIC field (Querier’s Query Interval Code) carries a value specifying the query interval, in seconds, used by the originator of this query. • Number of Sources field indicates how many source addresses are contained within the Query message.
IGMPv3 MESSAGES • As noted earlier, IGMPv3 adds a new type of 0x22 to support the IGMPv3 MR. • MRs are sent by IP systems to report (to neighboring routers) the current multicast reception state.
IGMPv3 MESSAGES • The Record Type field indicates whether the group record type is a current-state, filter-mode-change, or source-list-change record. • Version 3 reports are sent with an IP destination address of 224.0.0.22, to which all IGMPv3-capable multicast routers listen. • Because of its higher complexity, IGMPv3 is not universally supported by all the receiver hosts, IGMPv2 is more common, especially in IPTV applications
IGMP OPERATION • IGMP is an asymmetric protocol. • Host Operations • To receive multicast datagrams, a host must join a group. To join a group, the host sends an IGMP membership report packet through an attached interface.
IGMP OPERATION • Multicast Router Operations • Multicast routers listen to all multicast addresses to detect membership reports. • 1. receiver (host) signals to join a group, • 2. creates an entry in the local group database. • 3. To verify group membership, multicast routers regularly send an IGMP Query message.
IGMP OPERATION • Switches Using IGMP Snooping • IGMP snooping utilizes a router to send out IGMP Query messages to identify potentially interested receivers. • Membership reports are returned to the router, which builds a mapping table of the group and associates forwarding filters for the member port. • If no router is available, some switches can take on the query function. RFC 4541 provides mechanisms to allow switches to “snoop” on IGMP traffic. • This reduces the amount of unnecessary multicast traffic flooding to locally attached networks that have no active receivers.
IGMP OPERATION • Figure 4.5 illustrates the process at a macrolevel; here receivers seek to access a video multicast from an IPTV source.
PROTOCOL DETAILS FOR IGMPv2 • Receiver (Host) State Diagram • A host may be in one of the following three possible states with respect to any single IP multicast group on any single network interface:
PROTOCOL DETAILS FOR IGMPv2 • Router State Diagram
PROTOCOL DETAILS FOR IGMPv2 • In addition, to keep track of which groups have members, a router may be in one of the four possible states with respect to any single IP multicast group on any single attached network.