Historically, data transfer services used one-to-one delivery, using unicast addressing and routing across an IP internetwork. The utility of one-to-many delivery across an IP internetwork has recently become an interesting and cost-effective way to deliver audio, video, and other types of content to multiple destinations. One-to-many delivery service requires hosts to inform local routers of their interest in receiving the traffic so that routers can forward the traffic to the network segments of the listening hosts.
IP multicast provides an efficient one-to-many delivery service. To achieve one-to-many delivery using IP unicast traffic, each datagram needs to be sent multiple times. To achieve one-to-many delivery using IP broadcast traffic, a single datagram is sent, but all nodes process it, even those that are not interested. Broadcast delivery service is unsuitable for internetworks, as routers are designed to prevent the spread of broadcast traffic. With IP multicast, a single datagram is sent and forwarded across routers only to the network segments containing nodes that are interested in receiving it.
Historically, IP multicast traffic has been little utilized. However, recent developments in audio and video teleconferencing, distance learning, and data transfer to a large number of hosts have made IP multicast traffic more important.
More Info |
RFCs 1112 and 2236 describe IP multicast and the Internet Group Management Protocol (IGMP). These RFCs can be found in the Rfc folder on the companion CD-ROM. |
The following are the essential details of IP multicast operation:
IP multicast must be supported by the hosts and the routers of an IP internetwork.
To support IP multicast, hosts must be able to send and receive IP multicast traffic.RFC 1112 defines three levels of IP multicast support for hosts as follows:
The IP multicast support level is controlled through the following registry setting:
IGMPLevel
Location: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters Value Type: REG_DWORD Valid Range: 0-2 Default: 2 Present by Default: No
By default, TCP/IP for the Windows Server 2003 family supports Level 2IP multicasting.
Sending IP Multicast Traffic
A host sending an IP multicast packet must first determine the IP multicast address. The IP multicast address is determined by either the application or protocol (a well-known or reserved IP multicast address), or obtained from a server allocating unique IP multicast addresses. Multicast Address Dynamic Client Allocation Protocol (MADCAP) is an extension to the Dynamic Host Configuration Protocol (DHCP) standard that is used to obtain a unique IP multicast address. Multicast scopes configured on the DHCP server define rangesof IP multicast addresses. Similar to allocating unicast IP addresses, unique IP multicast addresses are allocated to a single DHCP client. If multiple hosts use the same IP multicast address for different applications, the wrong traffic could be forwarded to host group members. For more information on multicast support by the DHCP service in theWindows Server 2003 family, see Chapter 16, "Dynamic Host Configuration Protocol (DHCP) Server Service."
After determining the destination IP multicast address, the sending host must construct the IP datagram with its own IP address as the source IP address, the intended IP multicast address as the destination IP address, and an appropriate TTL value. For local subnet IP multicast traffic destined for addresses in the range 224.0.0.0 through 224.0.0.255 (224.0.0.0/24), the TTL is set to 1. Routers do not forward IP multicast traffic in this range even if the TTL is greater than 1. For nonlocal subnet traffic, the TTL should be set to a value that is high enough to reach all host group members. Table 9-1 lists the recommended values of the TTL for IP multicast traffic and their scope.
TTL Value |
Description |
---|---|
0 |
Restricted to the same host |
1 |
Restricted to the same subnet |
15 |
Restricted to the same site |
63 |
Restricted to the same region |
127 |
Worldwide |
191 |
Worldwide; limited bandwidth |
255 |
Unrestricted |
Once the sending host constructs the IP multicast datagram, the IP packet is passed through the IP forwarding process. The multicast entry in the IP routing table (the route(s) with the destination of 224.0.0.0 and the network mask of 240.0.0.0) informs IP that the datagram must be forwarded to the destination IP address, using the local network interface. The IP datagram, the forwarding IP address, and the interface are submitted to theAddress Resolution Protocol (ARP).
The ARP module checks the forwarding IP address. Because the forwarding IP address is in the range 224.0.0.0 through 239.255.255.255 (224.0.0.0/4), ARP bypasses the process of checking the ARP cache and sending a broadcast ARP Request frame. For Ethernet and Fiber Distributed Data Interface (FDDI) hosts, the destination IP address is mapped to the destination media access control (MAC) address using the process described in Chapter 6, "Internet Protocol (IP) Addressing." For Token Ring hosts, all IP multicast traffic isaddressed to the Token Ring functional address of 0xC0-00-00-04-00-00 unless otherwise specified with the TrFunctionalMcastAddress registry setting.
Receiving IP Multicast Traffic
To receive IP multicast traffic, a host informs the IP layer to process traffic for a specific group address. To facilitate the request, the IP module does the following:
If there are multiple applications on the host using the same group address, IP tracksapplication group membership and passes a copy of the received IP multicast datagram to each listening application. For a multihomed host, IP tracks group membership for each network segment.
To support IP multicast forwarding and routing, a router must be able to do the following:
Multicast promiscuous mode is a special listening mode in which all packets with the Individual/Group (I/G) bit set in the destination MAC address are considered interesting. The I/G bit is also known as the multicast bit. For Ethernet frames, the multicast bit is the last bit of the first byte in the destination MAC address. In multicast promiscuous mode, all frames with the multicast bit set and a valid Frame Check Sequence (FCS) field are passed up to the operating system forprocessing. See Chapter 1, "Local Area Network (LAN) Technologies," for more information on the multicast bit. In multicast promiscuous mode, an IP multicast router receives a copy of every IP multicast packet for processing or forwarding. Not all network adapters support multicast promiscuous mode. A network adapter that supports promiscuous mode might not support multicast promiscuous mode.
IP multicast traffic is forwarded to network segments that have either a listening host or a router that has informed the router forwarding the IP multicast traffic that there are host group members downstream. The entries in the IP multicast forwarding table do not indicate which hosts are listening or how many group members there are on a network segment—only that at least one host member is present on the network segment (or a downstream network segment).
Figure 9-1 shows a multicast-enabled intranet. To support the forwarding of IP multicast traffic from any host to any group member, hosts and routers must support the following criteria:
Figure 9-1: A multicast-enabled intranet showing multicast-enabled hosts and routers.
The Internet's Multicast-Enabled Backbone
The portion of the Internet that is IP-multicast-enabled is known as the multicast backbone (MBONE). The MBONE was originally created to multicast the audio for Internet Engineering Task Force (IETF) meetings for members who could not attend. Today, the MBONE is used for the audio and video of IETF meetings, launches of the National Aeronautic and Space Administration (NASA) space shuttle, and teleconferences of all kinds. The MBONE is also the testbed for the development of IP multicast technology such as applications, tools, and routing protocols.
The MBONE is a logical IP multicast topology overlaid on the Internet's physical unicast topology. Not all Internet portions and Internet service providers (ISPs) support the forwarding of IP multicast traffic. To connect two portions of the Internet that supportIP multicast traffic, IP multicast traffic is tunneled or wrapped with another IP headeraddressed from one router to another router. The typical tunneling is called IP-in-IPtunneling, described in RFC 1853. The MBONE is a series of multicast-enabled islands connected together with IP-in-IP tunnels.
More Info |
IP-in-IP tunneling is described in RFC 1853, which can be found in the Rfc folder on the companion CD-ROM. |
IGMP is the protocol used to maintain local subnet host group membership, and it is required for hosts that support Level 2 IP multicasting. IGMP messages are sent as IP datagrams with the IP Protocol field set to 2. Therefore, an IGMP message is encapsulated with an IP header. The resulting IP datagram is then encapsulated with the appropriate Network Interface Layer header and trailer. Figure 9-2 shows the resulting frame.
Figure 9-2: IGMP message encapsulation showing the IP header and Network Interface Layer header and trailer.
In the IP header of IGMP messages, the Source IP Address field is set to the router or host interface that sent the IGMP message; the Destination IP Address field depends on the type of IGMP message.
IGMPv1 defines two types of IGMP messages: the Host Membership Report and the Host Membership Query.
More Info |
IGMPv1 is described in Appendix I of RFC 1112, which can be found in the Rfc folder on the companion CD-ROM. |
Host Membership Report
A host sends a Host Membership Report message to inform local routers that the host wants to receive IP multicast traffic at a specified group address. A host also sends a Host Membership Report in response to a Host Membership Query message sent by a router. Host Membership Report messages are sent, with a TTL of 1, to the destination IPaddress of the multicast group.
Host Membership Query
A router sends a Host Membership Query message to poll a network segment and verify that there are hosts still listening for IP multicast traffic. Host Membership Query messages are sent, with a TTL of 1, to the destination IP address of the all-hosts IP multicast address (224.0.0.1). An IGMPv1 Host Membership Query is a general query, attempting to identify all multicast groups being listened to by hosts on a network segment.
Hosts that receive the Host Membership Query message send a Host Membership Report message for all the host groups for which they are members. To prevent an avalanche of response traffic, host group members choose a random report delay time for each host group and wait to hear from other host group members on the network segment. If another host group member sends a Host Membership Report message, the waiting host does not send a reply.
This behavior is consistent with the information kept by multicast routers. A multicast router does not track which hosts on a network segment are members of a host group, only that there is at least one host group member.
If no hosts respond with a Host Membership Report to a group address that the multicast router is tracking for the network segment, the multicast router can remove that entry from the multicast forwarding table and inform other multicast routers through multicast routing protocols. Multicast traffic to the removed group address is no longer forwarded to the network segment.
IGMPv1 Message Structure
Figure 9-3 shows the structure of the IGMPv1 message.
Figure 9-3: The structure of the IGMPv1 message.
The fields in the IGMPv1 header are defined as follows:
Table 9-2 summarizes the addresses used in IGMPv1 Host Membership Report and Host Membership Query messages.
Host Membership Report |
Host Membership Query |
|
---|---|---|
Source IP Address (IP header) |
Host IP Address |
Router IP Address |
Destination IP Address (IP header) |
Group IP Address |
224.0.0.1 |
Group Address |
Group IP Address |
0.0.0.0 |
Network Monitor Examples
The following Network Monitor trace (Capture 09-01 in the Captures folder on the companion CD-ROM) is an IGMPv1 Host Membership Report message for a host joining the host group 224.0.1.41:
+ FRAME: Base frame properties ETHERNET: ETYPE = 0x0800 : Protocol = IP: DOD Internet Protocol ETHERNET: Destination address : 01005E000129 ETHERNET: .......1 = Group address ETHERNET: ......0. = Universally administered address + ETHERNET: Source address : 00C04FD7BAEC ETHERNET: Frame Length : 60 (0x003C) ETHERNET: Ethernet Type : 0x0800 (IP: DOD Internet Protocol) ETHERNET: Ethernet Data: Number of data bytes remaining = 46 (0x002E) IP: ID = 0xB201; Proto = IGMP; Len: 28 IP: Version = 4 (0x4) IP: Header Length = 20 (0x14) IP: Precedence = Routine IP: Type of Service = Normal Service IP: Total Length = 28 (0x1C) IP: Identification = 45569 (0xB201) + IP: Flags Summary = 0 (0x0) IP: Fragment Offset = 0 (0x0) bytes IP: Time to Live = 1 (0x1) IP: Protocol = IGMP - Internet Group Management IP: Checksum = 0x118E IP: Source Address = 10.0.11.40 IP: Destination Address = 224.0.1.41 IP: Data: Number of data bytes remaining = 8 (0x0008) IP: Padding: Number of data bytes remaining = 18 (0x0012) IGMP: Version 1 Membership Report IGMP: Type = Version 1 Membership Report IGMP: Unused = 0 (0x0) IGMP: Checksum = 0x0CD6 IGMP: Group Address = 224.0.1.41
Note that the group address of 224.0.1.41 is being mapped to the Ethernet destination address of 01-00-5E-00-01-29 (41 in hexadecimal is 0x29). Also note that IGMP messages must be padded with 18 padding bytes on Ethernet networks to adhere to the Ethernet minimum payload size of 46 bytes (padding bytes not shown).
The following Network Monitor trace (Capture 09-02 in the Captures folder on the companion CD-ROM) is an IGMPv1 Host Membership Query message:
+ FRAME: Base frame properties ETHERNET: ETYPE = 0x0800 : Protocol = IP: DOD Internet Protocol ETHERNET: Destination address : 01005E000001 ETHERNET: .......1 = Group address ETHERNET: ......0. = Universally administered address + ETHERNET: Source address : 00E034C0A060 ETHERNET: Frame Length : 60 (0x003C) ETHERNET: Ethernet Type : 0x0800 (IP: DOD Internet Protocol) ETHERNET: Ethernet Data: Number of data bytes remaining = 46 (0x002E) IP: ID = 0x0; Proto = IGMP; Len: 28 IP: Version = 4 (0x4) IP: Header Length = 20 (0x14) IP: Precedence = Internetwork Control IP: Type of Service = Normal Service IP: Total Length = 28 (0x1C) IP: Identification = 0 (0x0) + IP: Flags Summary = 0 (0x0) IP: Fragment Offset = 0 (0x0) bytes IP: Time to Live = 1 (0x1) IP: Protocol = IGMP - Internet Group Management IP: Checksum = 0xC71E IP: Source Address = 10.0.8.1 IP: Destination Address = 224.0.0.1 IP: Data: Number of data bytes remaining = 8 (0x0008) IP: Padding: Number of data bytes remaining = 18 (0x0012) IGMP: Membership Query IGMP: Type = Membership Query IGMP: Max Resp Time = 100 (0x64) IGMP: Checksum = 0xEE9B IGMP: Group Address = 0.0.0.0
Notice that for both traces, the IP header's TTL field is set to 1.
IGMPv2 provides additional capabilities to help multicast routers converge a multicast group to the set of hosts listening for traffic. IGMPv2 is backward compatible with IGMPv1.
The additional capabilities of IGMPv2 are as follows:
More Info |
IGMPv2 is described in RFC 2236, which can be found in the Rfc folder on the companion CD-ROM. |
The Leave Group Message
With IGMPv1, if a host leaves a specific multicast group and it is the last member of the multicast group for that subnet, the local router is not explicitly informed. The router maintains the entry in its multicast forwarding table and continues to forward multicast traffic to the host's subnet. Only after the router sends a Host Membership Query message and receives no response for the multicast group does the router recognize that there are no more hosts on that network segment for that group address. The router then updates its multicast forwarding table, discontinues forwarding IP multicast traffic to the network segment, and informs neighboring routers of the new state. This can lead to long leave latency times. During the leave latency time, multicast traffic is forwarded to network segments that do not contain group members.
During the periodic polling process, when an IGMPv2 host responds to a membership query, it assumes that it is potentially the last member in the group for that subnet because no other hosts responded before it. If that host leaves the group, it sends an IGMP Leave Group message to the all-routers IP multicast address. To ensure that the host leaving is truly the last host in the group for the subnet, the multicast router sends a series of group-specific membership queries. If the multicast router receives a response from another host for that group, the router maintains the group membership state for that group on that subnet. If the multicast router does not receive any responses, it can prevent the forwarding of traffic to that group to the subnet. If there are host members on downstream subnets available across subnet routers, multicast traffic for the group is still forwarded to the subnet.
The Group-Specific Query Message
In the case of IGMPv2, two different types of Host Membership Query messages are defined: the General Query and the Group-Specific Query. The General Query is the same as the IGMPv1 Host Membership Query. The Group-Specific Query is designed to check for host membership in a specific group. In the Group-Specific Query, the IP header's destination IP address and the IGMP header's group address are set to the group address being queried.
The Multicast Querier
IGMPv2 supports the election of a multicast querier, a single router per network segment that sends Host Membership Query messages. With IGMPv1, the designation of a single multicast router to perform queries is a function of the multicast routing protocol. Because all IGMP traffic is sent to multicast addresses, every multicast router on a network segment receives all IGMP messages. Therefore, only a single router is needed to send queries.
The IGMPv2 multicast querier election is simple: A router assumes that it is the multicast querier until it receives a Host Membership Query (either General or Group-Specific) from another router with a numerically lower IP address. If it is the only router on a subnet and it does not receive a query from another router in an interval called the Other Querier Present Interval (by default set for 255 seconds), the router becomes the querier for that network.
IGMPv2 Message Structure
Figure 9-4 shows the structure of the IGMPv2 message.
Figure 9-4: The structure of the IGMPv2 message.
The IGMPv2 header contains the following fields:
Type |
Message |
---|---|
17 (0x11) |
Host Membership QueryThe previous Version 0x1 and Type 0x1 are combined to form 0x11, or 17. |
18 (0x12) |
IGMPv1 Host Membership ReportThe previous Version 0x1 and Type 0x2 are combined to form 0x12, or 18. |
22 (0x16) |
IGMPv2 Host Membership ReportThe IGMPv2 Host Membership Report has the same function as the IGMPv1 Host Membership Report and is intended to be received by only IGMPv2-capable multicast routers. |
23 (0x17) |
Leave Group Message |
Table 9-4 summarizes the addresses used in IGMPv2 Group-Specific Host Membership Query and Group Leave messages.
Group-Specific Query |
Group Leave |
|
---|---|---|
Source IP Address (IP header) |
Router IP Address |
Host IP Address |
Destination IP Address (IP header) |
Group IP Address |
224.0.0.2 |
Group Address |
Group IP Address |
Group IP Address |
Network Monitor Example
The following Network Monitor trace (Capture 09-03 in the Captures folder on the companion CD-ROM) shows an IGMPv2 Host Membership Report message for a host registering the group address 239.255.255.252:
+ Frame: Base frame properties ETHERNET: ETYPE = 0x0800 : Protocol = IP: DOD Internet Protocol ETHERNET: Destination address : 01005E7FFFFC ETHERNET: .......1 = Group address ETHERNET: ......0. = Universally administered address + ETHERNET: Source address : 0060083E4607 ETHERNET: Frame Length : 46 (0x002E) ETHERNET: Ethernet Type : 0x0800 (IP: DOD Internet Protocol) ETHERNET: Ethernet Data: Number of data bytes remaining = 32 (0x0020) IP: ID = 0x1A26; Proto = IGMP; Len: 32 IP: Version = 4 (0x4) IP: Header Length = 24 (0x18) IP: Precedence = Routine IP: Type of Service = Normal Service IP: Total Length = 32 (0x20) IP: Identification = 6694 (0x1A26) IP: Flags Summary = 0 (0x0) IP: .......0 = Last fragment in datagram IP: ......0. = May fragment datagram if necessary IP: Fragment Offset = 0 (0x0) bytes IP: Time to Live = 1 (0x1) IP: Protocol = IGMP - Internet Group Management IP: Checksum = 0x07ED IP: Source Address = 10.1.8.200 IP: Destination Address = 239.255.255.252 IP: Option Fields IP: Unrecognized Option IP: Option Type = 0x94 IP: Option Length = 4 (0x4) IP: Option data: Number of data bytes remaining = 2 (0x0002) IP: Data: Number of data bytes remaining = 8 (0x0008) IP: Padding: Number of data bytes remaining = 14 (0x000E) IGMP: Version 2 Membership Report IGMP: Type = Version 2 Membership Report IGMP: Unused = 0 (0x0) IGMP: Checksum = 0xFA02 IGMP: Group Address = 239.255.255.252
Notice the existence of the IP Router Alert option (Option Type 0x94) that is used to inform the router that further processing of the IP header is required. For more information on the IP Router Alert option, see Chapter 5, "Internet Protocol (IP) Basics."
IGMPv3 supports multicast source-specific reports and queries. With IGMPv1 and IGMPv2, multicast group members report membership and routers query for membership without regard to the source of the multicast traffic. IGMPv3 allows you to have multiple sources for multicast traffic, which can be beneficial when you are multicasting a video session across an enterprise organization. Rather than having a single source of the multicast packets that comprise the video broadcast, you can have multiple sources distributed regionally. Then, multicast hosts can join the group and specify a multicast source that is topologically closest to them (a regional source).
More Info |
IGMPv3 is described in RFC 3376, which is available in the RFC folder of the companion CD-ROM. |
When an IGMPv3 host sends a Host Membership Report message, it can specify the multicast group and either the list of multicast sources from which the host can receive the multicast packets (the include list) or a list of the multicast sources from which the host must not receive multicast packets (the exclude list). Multicast routers and multicast routing protocols use the list of sources to include or exclude in the IGMPv3 Host Membership Report message to promote the forwarding of multicast packets from included sources and prevent the forwarding and delivery of multicast packets from excluded sources.
In IGMPv3, the Host Membership Query message is modified to allow an IGMPv3 router to send source- and-group-specific queries. An IGMPv3 host uses a new Host Membership Report message to send source-specific reports.
IGMPv3 Host Membership Query
The IGMPv3 Host Membership Query message is for a group- and source-specific query, sent by an IGMPv3 router to determine if there are any group members in the indicated group address for traffic from one of the sources in the source list. The IGMPv3 Host Membership Query message uses the same IGMP Type number (0x11) and has the same format as the IGMPv2 Host Membership Query message. However, there are additional fields after the Group Address field that allow the router to specify querying parameters and list the sources of the multicast group being queried. These additional fields are only included for an IGMPv3 group- and source-specific query.
Beyond the Group Address field, the IGMPv3 Host Membership Query message contains the following fields:
Figure 9-5 shows the structure of the IGMPv3 Host Membership Query message.
Figure 9-5: The structure of the IGMPv3 Host Membership Query message.
IGMPv3 Host Membership Report
The IGMPv3 Host Membership Report message contains one or more group records and is sent to the multicast address 224.0.0.22, a reserved multicast address for all IGMPv3-capable multicast routers. Each group record contains the group address and the list of sources to either include or exclude.
The IGMPv3 Host Membership Report message contains the following fields:
Figure 9-6 shows the structure of the IGMPv3 Host Membership Report message.
Figure 9-6: The structure of the IGMPv3 Host Membership Report message.
The IGMPv3 Host Membership Report message group record contains the following fields:
Figure 9-7 shows the structure of an IGMPv3 Host Membership Report message group record.
Figure 9-7: The structure of the IGMPv3 Host Membership Report message group record.
The Windows Server 2003 family supports IP multicast sending, receiving, and forwarding through the TCP/IP protocol and the Routing and Remote Access service.
TCP/IP for the Windows Server 2003 family supports IP multicast traffic in the following ways:
In the Windows Server 2003 family, TCP/IP behavior for IP multicast forwarding is controlled by the following registry setting:
EnableMulticastForwarding
Location: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters Data Type: REG_DWORD Valid Range: 0-1 Default: 0 Present by Default: No
EnableMulticastForwarding enables (when set to 1) or disables (when set to 0) the forwarding of IP multicast traffic. By default, multicast forwarding is disabled.
In the Windows Server 2003 family, the Routing and Remote Access service functions as a limited multicast forwarder using IGMPv1, IGMPv2, or IGMPv3 to track local group membership. Because IGMP is not a true multicast routing protocol, routers running a member of the Windows Server 2003 family can support only limited multicast configurations. For more information on recommended configurations, see the Internetworking Guide in the Microsoft Windows Server 2003 Resource Kit.
In the Routing and Remote Access service, IGMP is implemented as a routing protocol component added and configured through the Routing and Remote Access administrative tool. After running the Routing and Remote Access Server Setup Wizard, the IGMP routing protocol component is automatically added. Add individual routing interfaces to the IGMP routing protocol and configure them for either IGMP router mode or IGMP proxy mode.
Interfaces in IGMP Router Mode
An interface in IGMP router mode acts as an IGMP-capable IP multicast forwarder and performs the following actions:
Interfaces in IGMP Proxy Mode
An interface in IGMP proxy mode acts as an IGMP-capable IP multicast proxy host for hosts on IGMP router mode interfaces and performs the following functions:
IGMP proxy mode is designed to connect a router running a member of the Windows Server 2003 family to a fully capable IP multicast internetwork, as Figure 9-8 shows. A good example of this is the connection of a single router intranet to the MBONE. IGMP proxy mode is enabled on a single interface connected to the multicast-enabled internetwork.
Figure 9-8: The use of IGMP router mode and proxy mode to connect a single router intranet to an IP multicast-enabled internetwork.
The combination of IGMP router mode interfaces and the IGMP proxy mode interface allows the sending and receiving of IP multicast traffic for hosts on a peripheral network segment using a router running a member of the Windows Server 2003 family.
Multicast Group Members on IGMP Router Mode Interfaces
Host members on IGMP router mode interfaces receive host group traffic through the following process:
Routers of the IP multicast-enabled internetwork forward IP multicast traffic sent to the host group to the neighboring IP multicast-enabled router, which forwards the traffic on the IGMP proxy mode interface network segment. The IGMP proxy mode interface receives the multicast traffic and submits it to the TCP/IP multicast forwarding process. Basedon the entries in the multicast forwarding table, the IP multicast traffic is forwarded on the IGMP router mode interface connected to the network segment containing thehost member.
Multicast Sources on IGMP Router Mode Interfaces
The multicast traffic of multicast sources on IGMP router mode interfaces is forwarded through the following process:
IGMP provides a mechanism for hosts to register their interest in receiving IP multicast traffic sent to a specific group address (the Host Membership Report message), for hosts to indicate that they are no longer interested in receiving IP multicast traffic sent to a specific group address (the Leave Group message), and for routers to query the mem
Part I - The Network Interface Layer
Part II - Internet Layer Protocols
Part III - Transport Layer Protocols
Part IV - Application Layer Protocols and Services