Chapter10 (IGMP)

download Chapter10 (IGMP)

of 30

Transcript of Chapter10 (IGMP)

  • 8/8/2019 Chapter10 (IGMP)

    1/30

    11

    Kyung Hee

    University

    Prof. Choong Seon HONG

    Chapter 10Chapter 10IGMPIGMP

  • 8/8/2019 Chapter10 (IGMP)

    2/30

    22

    Kyung Hee

    University

    IntroductionIntroduction

    Discussing the multicasting capability of the TCP/IP

    protocol suite and the protocol that is involved inmulticasting, IGMP (Internet Group Management

    Protocol)

  • 8/8/2019 Chapter10 (IGMP)

    3/30

    33

    Kyung Hee

    University

    10.1 Group Management10.1 Group Management

    IGMP is a group management protocol. It helps a

    multicast router create and update a list of loyalmembers related to each router interface.

  • 8/8/2019 Chapter10 (IGMP)

    4/30

    44

    Kyung Hee

    University

    Group ManagementGroup Management

    In any network, there are one or more multicast routers

    that distribute multicast packets to hosts or otherrouters.

    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

  • 8/8/2019 Chapter10 (IGMP)

    5/30 55

    Kyung Hee

    University

    10.2 IGMP Messages10.2 IGMP Messages

    IGMPv2 Message Types

  • 8/8/2019 Chapter10 (IGMP)

    6/30 66

    Kyung Hee

    University

    IGMP (contd)IGMP (contd) Message Format

    Type :

    General and Special Query : 0x11 or 00010001Membership Report : 0x16 or 00010110

    Leave Report : 0x17 or 00010111

    Maximum Response Type : defining the amount of time in which aquery must be answered.

    Group address :

    - 0 for a general query message

    - defining the group id (multicast address of the group) in the specialquery, the membership report, and leave report messages

  • 8/8/2019 Chapter10 (IGMP)

    7/30 77

    Kyung Hee

    University

    10.3 IGMP Operation10.3 IGMP Operation

    Operation of IGMP in a Single Network

    A multicast router connected to a network has a list ofmulticast addresses of the groups for which there is at

    least one loyal member.

  • 8/8/2019 Chapter10 (IGMP)

    8/30 88

    Kyung Hee

    University

    IGMP Operations (contd)IGMP Operations (contd)

    Joining a Group

    A host maintains a list of processes with membership in agroup

    When a process wants to join a new group, it sends its request

    to the host

    q 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.

  • 8/8/2019 Chapter10 (IGMP)

    9/30

  • 8/8/2019 Chapter10 (IGMP)

    10/30 1010

    Kyung Hee

    University

    IGMP Operations (contd)IGMP Operations (contd)

    Monitoring Group Membership

    Multicast router is responsible for monitoring all of the hostsin a LAN to see if they want to continue their membership in a

    group

    q 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

  • 8/8/2019 Chapter10 (IGMP)

    11/30

    1111

    Kyung Hee

    University

    IGMP Operations (contd)IGMP Operations (contd)

    General Query Message

    No ResponseNo Response

  • 8/8/2019 Chapter10 (IGMP)

    12/30

    1212

    Kyung Hee

    University

    IGMP Operations (contd)IGMP Operations (contd)

    Delayed Response

    To prevent unnecessary traffic, IGMP uses a delayed

    response strategy.

  • 8/8/2019 Chapter10 (IGMP)

    13/30

    1313

    Kyung Hee

    University

    IGMP Operations (contd)IGMP Operations (contd)

    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.

  • 8/8/2019 Chapter10 (IGMP)

    14/30

    1414

    Kyung Hee

    University

    IGMP Operations (contd)IGMP Operations (contd)

    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.

  • 8/8/2019 Chapter10 (IGMP)

    15/30

    1515

    Kyung Hee

    University

    IGMP Operations (contd)IGMP Operations (contd)

    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 routerand 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 thisstrategy only four reports are sent.

  • 8/8/2019 Chapter10 (IGMP)

    16/30

    1616

    Kyung Hee

    University

    10.4 Encapsulation10.4 Encapsulation

  • 8/8/2019 Chapter10 (IGMP)

    17/30

  • 8/8/2019 Chapter10 (IGMP)

    18/30

    1818

    Kyung Hee

    University

    Encapsulation (contd)Encapsulation (contd)

    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

  • 8/8/2019 Chapter10 (IGMP)

    19/30

    1919

    Kyung Hee

    University

    Encapsulation (contd)Encapsulation (contd)

    Data Link Layer

    Because the IP packet has a multicast IP address, theARP 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 multicastaddresses.

    E l ti ( td)E l ti ( td)

  • 8/8/2019 Chapter10 (IGMP)

    20/30

    2020

    Kyung Hee

    University

    Encapsulation (contd)Encapsulation (contd) Case 1 : Physical Multicast Support

    Most LANs support physical multicasting addressing

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

    multicast address : many-to-one mappingq a host may receive packets that do not really belong to the group in

    which it is involved

    Physical multicast addressPhysical multicast addressfor the TCP/IP protocolfor the TCP/IP protocol

  • 8/8/2019 Chapter10 (IGMP)

    21/30

    2121

    Kyung Hee

    University

    IGMP (contd)IGMP (contd)

    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 itemerges from the other side as a multicast packet

  • 8/8/2019 Chapter10 (IGMP)

    22/30

    2222

    Kyung Hee

    University

    10.5 IGMP Package10.5 IGMP Package

    Showing only the modules used in an IGMP host

    involving a group table, a set of timers, and 4 softwaremodules as follows.

    q a group-joining module, a group-leaving module, an input

    module, and an output module

    Group table

  • 8/8/2019 Chapter10 (IGMP)

    23/30

    2323

    Kyung Hee

    University

    IGMP Package (contd)IGMP Package (contd)

    IGMP P k ( d)

  • 8/8/2019 Chapter10 (IGMP)

    24/30

    2424

    Kyung Hee

    University

    IGMP Package (contd)IGMP Package (contd)

    state : defining the state of the entry

    q FREE : available for a new entry

    q DELAYING : meaning that a report should be sent for this

    entry when the timer matures

    q IDLE : meaning that there is no timer running for the entry

    Interface no.

    q defining the interface through which the multicast packetis sent for this entry

    Group address : multicast address which defines the

    group

    Reference countq meaning the number of processes still interested in this

    group

    IGMP P k ( td)IGMP P k ( td)

  • 8/8/2019 Chapter10 (IGMP)

    25/30

    2525

    Kyung Hee

    University

    IGMP Package (contd)IGMP Package (contd)

    Timers

    each entry in the table in the DELAYING state has atimer to govern the sending of reports

    When an expiration time matures, a signal goes to the

    output module which then generates a report

    IGMP P k ( td)IGMP P k ( td)

  • 8/8/2019 Chapter10 (IGMP)

    26/30

    2626

    Kyung Hee

    University

    IGMP Package (contd)IGMP Package (contd)

    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

    q if found, the module increments the reference count to

    show that one more process has joined this group

    q if the multicast address is not found, the module creates a

    new entry and sets the reference count to one

    q Then, inform the data link layer to update its configuration

    table so that this type of multicast packet can be received

    IGMP P k ( td)IGMP P k ( td)

  • 8/8/2019 Chapter10 (IGMP)

    27/30

    2727

    Kyung Hee

    University

    IGMP Package (contd)IGMP Package (contd)

    3. Request a membership report from the output module.

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

    4. Return

    IGMP P k ( td)IGMP Package (contd)

  • 8/8/2019 Chapter10 (IGMP)

    28/30

    2828

    Kyung Hee

    University

    IGMP Package (contd)IGMP Package (contd)

    Group-Leaving Module

    a process that wants to leave a group invokes thismodule

    3. Request a leave report from the output

    IGMP Package (contd)IGMP Package (contd)

  • 8/8/2019 Chapter10 (IGMP)

    29/30

    2929

    Kyung Hee

    University

    IGMP Package (contd)IGMP Package (contd)

    Input Module

    Random number between zero and the maximum

    delay time

    IGMP Package (contd)IGMP Package (contd)

  • 8/8/2019 Chapter10 (IGMP)

    30/30

    3030

    Kyung Hee

    University

    IGMP Package (contd)IGMP Package (cont d)

    Output Module

    or a request from joining or leaving module1. If the message comes from a timer

    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 report3. If the message comes from group-living module

    1. Create the message

    4. Send the message.

    5. Return