Sie sind auf Seite 1von 30

Chapter 10

IGMP

Prof. Choong Seon HONG

Kyung Hee
University 1
Introduction
 Discussing the multicasting capability of the TCP/IP
protocol suite and the protocol that is involved in
multicasting, IGMP (Internet Group Management
Protocol)

Kyung Hee
University 2
10.1 Group Management
 IGMP is a group management protocol. It helps a
multicast router create and update a list of loyal
members related to each router interface.

Kyung Hee
University 3
Group Management
 In any network, there are one or more multicast routers
that distribute multicast packets to hosts or other
routers.

 The IGMP Protocol gives the multicast routers


information about the membership status of hosts
(routers) connected to the network.

 Position of IGMP in the network layer

Kyung Hee
University 4
10.2 IGMP Messages
 IGMPv2 Message Types

Kyung Hee
University 5
IGMP (cont’d)
 Message Format

Type :
General and Special Query : 0x11 or 00010001
Membership Report : 0x16 or 00010110
Leave Report : 0x17 or 00010111
Maximum Response Type : defining the amount of time in which a
query must be answered.
Group address :
- 0 for a general query message
- defining the group id (multicast address of the group) in the special
query, the membership report, and leave report messages
Kyung Hee
University 6
10.3 IGMP Operation
 Operation of IGMP in a Single Network

A multicast router connected to a network has a list of


multicast addresses of the groups for which there is at
least one loyal member.

Kyung Hee
University 7
IGMP Operations (cont’d)
 Joining a Group

A host maintains a list of processes with membership in a


group
When a process wants to join a new group, it sends its request
to the host
● The host will add the name of the process and the name of the requested
group to its list
Host only sends an IGMP report to the multicast router if this is
the first request for membership in that group.
 Membership report

- In IGMP, a membership report is sent twice, one after the other.


Kyung Hee
University 8
IGMP Operations (cont’d)
 Leaving a Group

When a host sees that


no process is interested
in a specific group, it
sends a leave report.
When a router sees that
none of the networks
connected to its
interface is interested in
a specific group, it
sends a leave report
about that group. No Response

Kyung Hee
University 9
IGMP Operations (cont’d)
 Monitoring Group Membership
Multicast router is responsible for monitoring all of the hosts
in a LAN to see if they want to continue their membership in a
group
● the router periodically (by default, every 125s) sends a query
message. In this message, the group address field is set to 0.0.0.0
(to all systems on a LAN)
The general query message does not define a particular
group

Kyung Hee
University 10
IGMP Operations (cont’d)
 General Query Message

No Response

Kyung Hee
University 11
IGMP Operations (cont’d)
 Delayed Response
To prevent unnecessary traffic, IGMP uses a delayed
response strategy.

Kyung Hee
University 12
IGMP Operations (cont’d)
 Example 1

- Imagine there are three hosts in a network as shown in Figure. A query


message was received at time 0; the random delay time (in tenths of
seconds) for each group is shown next to the group address. Show the
sequence of report messages.

Kyung Hee
University 13
IGMP Operations (cont’d)
 The events occur in this sequence:

a. Time 12: The timer for 228.42.0.0 in host A expires and a


membership report is sent, which is received by the router
and every host including host B which cancels its timer for
228.42.0.0.

b. Time 30: The timer for 225.14.0.0 in host A expires and a


membership report is sent, which is received by the router
and every host including host C which cancels its timer for
225.14.0.0.

Kyung Hee
University 14
IGMP Operations (cont’d)
c. Time 50: The timer for 251.70.0.0 in host C expires and a
membership report is sent, which is received by the router
and every host.

d. Time 70: The timer for 230.43.0.0 in host A expires and a


membership report is sent, which is received by the router
and every host including host A which cancels its timer for
230.43.0.0.

 Note that if each host had sent a report for every group in
its list, there would have been seven reports; with this
strategy only four reports are sent.

Kyung Hee
University 15
10.4 Encapsulation

Kyung Hee
University 16
Encapsulation (cont’d)
 Protocol field
The IP packet that carries an IGMP packet has a value of 2
in its protocol field.

 TTL Field
The IP packet that carries an IGMP packet has a value of
1 in its TTL field.

Kyung Hee
University 17
Encapsulation (cont’d)
 Destination IP Addresses
- Query : 224.0.0.1 All systems on this subnet
- Membership Report : The multicast address of the group
- Leave Report : 224.0.0.2 All routers on this subnet

Kyung Hee
University 18
Encapsulation (cont’d)
 Data Link Layer
Because the IP packet has a multicast IP address, the
ARP protocol cannot find the corresponding MAC
(Physical) address to forward the packet at the data link
layer.
What happens next depends on whether or not the
underlying data link layer supports physical multicast
addresses.

Kyung Hee
University 19
Encapsulation (cont’d)
 Case 1 : Physical Multicast Support
Most LANs support physical multicasting addressing

Physical multicast address


for the TCP/IP protocol

32 (25)multicast addresses at the IP level are mapped to a single


multicast address : many-to-one mapping
● a host may receive packets that do not really belong to the group in
which it is involved

Kyung Hee
University 20
IGMP (cont’d)
 Case 2 : No Physical Multicast Support
Most WANs do not support physical multicast
addressing .
To send a multicast packet through these networks, a
process called tunneling is used.
In tunneling , the multicast packet is encapsulated in a
unicast packet and sent through the network, where it
emerges from the other side as a multicast packet

Kyung Hee
University 21
10.5 IGMP Package
 Showing only the modules used in an IGMP host
involving a group table, a set of timers, and 4 software
modules as follows.
● a group-joining module, a group-leaving module, an input
module, and an output module

 Group table

Kyung Hee
University 22
IGMP Package (cont’d)

Kyung Hee
University 23
IGMP Package (cont’d)
state : defining the state of the entry
● FREE : available for a new entry
● DELAYING : meaning that a report should be sent for this
entry when the timer matures
● IDLE : meaning that there is no timer running for the entry
Interface no.
● defining the interface through which the multicast packet
is sent for this entry
Group address : multicast address which defines the
group
Reference count
● meaning the number of processes still interested in this
group
Kyung Hee
University 24
IGMP Package (cont’d)
 Timers
each entry in the table in the DELAYING state has a
timer to govern the sending of reports
When an expiration time matures, a signal goes to the
output module which then generates a report

Kyung Hee
University 25
IGMP Package (cont’d)
 Group-joining Module
a process that wants to join a group invokes this module
module searches the group table to find an entry with
the same multicast address
● if found, the module increments the reference count to
show that one more process has joined this group
● if the multicast address is not found, the module creates a
new entry and sets the reference count to one
● Then, inform the data link layer to update its configuration
table so that this type of multicast packet can be received

Kyung Hee
University 26
IGMP Package (cont’d)

3. Request a membership report from the output module.


4. Inform the data link layer to update its configuration table.

4. Return

Kyung Hee
University 27
IGMP Package (cont’d)

 Group-Leaving Module
a process that wants to leave a group invokes this
module

3. Request a leave report from the output


Kyung Hee
University 28
IGMP Package (cont’d)
 Input Module

Random number between zero and the maximum


delay time

Kyung Hee
University 29
IGMP Package (cont’d)
 Output Module

1. If the message comes fromora atimer


request from joining or leaving module
1. if (found and state is DELAYING0
1. Create a membership report.
2. Reset the state to IDLE.
2. If message comes from the Group- joining module
1. Create a membership report
3. If the message comes from group-living module
1. Create the message
4. Send the message.
5. Return

Kyung Hee
University 30

Das könnte Ihnen auch gefallen