Chapter 10 IGMP Prof Choong Seon HONG Kyung

  • Slides: 30
Download presentation
Chapter 10 IGMP Prof. Choong Seon HONG Kyung Hee University 1

Chapter 10 IGMP Prof. Choong Seon HONG Kyung Hee University 1

Introduction q Discussing the multicasting capability of the TCP/IP protocol suite and the protocol

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

10. 1 Group Management q IGMP is a group management protocol. It helps a

10. 1 Group Management q 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 q In any network, there are one or more multicast routers that

Group Management q In any network, there are one or more multicast routers that distribute multicast packets to hosts or other routers. q. The IGMP Protocol gives the multicast routers information about the membership status of hosts (routers) connected to the network. q. Position of IGMP in the network layer Kyung Hee University 4

10. 2 IGMP Messages q IGMPv 2 Message Types Kyung Hee University 5

10. 2 IGMP Messages q IGMPv 2 Message Types Kyung Hee University 5

IGMP (cont’d) q Message Format Type : General and Special Query : 0 x

IGMP (cont’d) q Message Format Type : General and Special Query : 0 x 11 or 0001 Membership Report : 0 x 16 or 00010110 Leave Report : 0 x 17 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 q Operation of IGMP in a Single Network A multicast

10. 3 IGMP Operation q 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) q Joining a Group A host maintains a list of processes

IGMP Operations (cont’d) q 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 l 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. q Membership report - In IGMP, a membership report is sent twice, one after the other. Kyung Hee University 8

IGMP Operations (cont’d) q Leaving a Group When a host sees that no process

IGMP Operations (cont’d) q 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. Kyung Hee University No Response 9

IGMP Operations (cont’d) q Monitoring Group Membership Multicast router is responsible for monitoring all

IGMP Operations (cont’d) q 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 l the router periodically (by default, every 125 s) sends a query message. In this message, the group address field is set to 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) q General Query Message No Response Kyung Hee University 11

IGMP Operations (cont’d) q General Query Message No Response Kyung Hee University 11

IGMP Operations (cont’d) q Delayed Response To prevent unnecessary traffic, IGMP uses a delayed

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

IGMP Operations (cont’d) q Example 1 - Imagine there are three hosts in a

IGMP Operations (cont’d) q 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) q The events occur in this sequence: a. Time 12: The

IGMP Operations (cont’d) q 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

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. q. 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 q Kyung Hee University 16

10. 4 Encapsulation q Kyung Hee University 16

Encapsulation (cont’d) q Protocol field The IP packet that carries an IGMP packet has

Encapsulation (cont’d) q Protocol field The IP packet that carries an IGMP packet has a value of 2 in its protocol field. q 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) q Destination IP Addresses - Query : 224. 0. 0. 1 All

Encapsulation (cont’d) q 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) q Data Link Layer Because the IP packet has a multicast IP

Encapsulation (cont’d) q 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) q Case 1 : Physical Multicast Support Most LANs support physical multicasting

Encapsulation (cont’d) q 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 l Kyung Hee University a host may receive packets that do not really belong to the group in which it is involved 20

IGMP (cont’d) q Case 2 : No Physical Multicast Support Most WANs do not

IGMP (cont’d) q 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 q Showing only the modules used in an IGMP host

10. 5 IGMP Package q Showing only the modules used in an IGMP host involving a group table, a set of timers, and 4 software modules as follows. l a group-joining module, a group-leaving module, an input module, and an output module q Group table Kyung Hee University 22

IGMP Package (cont’d) Kyung Hee University 23

IGMP Package (cont’d) Kyung Hee University 23

IGMP Package (cont’d) state : defining the state of the entry l l l

IGMP Package (cont’d) state : defining the state of the entry l l l 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. l defining the interface through which the multicast packet is sent for this entry Group address : multicast address which defines the group Reference count l Kyung Hee University meaning the number of processes still interested in this group 24

IGMP Package (cont’d) q Timers each entry in the table in the DELAYING state

IGMP Package (cont’d) q 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) q Group-joining Module a process that wants to join a group

IGMP Package (cont’d) q Group-joining Module a process that wants to join a group invokes this module searches the group table to find an entry with the same multicast address l l l Kyung Hee University 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 26

IGMP Package (cont’d) 3. Request a membership report from the output module. 4. Inform

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) q Group-Leaving Module a process that wants to leave a group

IGMP Package (cont’d) q 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) q. Input Module Random number between zero and the maximum delay

IGMP Package (cont’d) q. Input Module Random number between zero and the maximum delay time Kyung Hee University 29

IGMP Package (cont’d) q Output Module 1. 2. 3. 4. 5. 6. 7. 8.

IGMP Package (cont’d) q Output Module 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. If the message comes fromora atimer request from joining or leaving module 1. if (found and state is DELAYING 0 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