Multicasting - PowerPoint PPT Presentation

About This Presentation
Title:

Multicasting

Description:

IP Multicasting: The Internet abstraction of hardware multicasting. ... All communications between hosts and multicast routers use IP multicast ... – PowerPoint PPT presentation

Number of Views:166
Avg rating:3.0/5.0
Slides: 37
Provided by: anthon103
Learn more at: http://www.csun.edu
Category:

less

Transcript and Presenter's Notes

Title: Multicasting


1
Multicasting
Anthony Choi David Strole Werner Kalyan Landeck
2
Broadcasting Delivering one packet to each
destination
Multicasting Allows each system to choose
whether it wants to participate in a given
multicast
A multicast address identifies an arbitrary set
of listeners, so forwarding mechanism must
propagate the packet to all segments
3
Ethernet Multicast the low order bit of the
high-order octet distinguishes conventional
unicast address (0) from multicast address (1)
01-00-00-00-00-0016
4
IP Multicasting The Internet abstraction of
hardware multicasting. The subset of systems
that are receiving a multicast is called
multicast group
General Characteristics
  • Group Address Each multicast group is a unique
    class D address
  • Number of Groups IP provides for up to 228
    simultaneous multicast groups
  • Dynamic Group Membership A host can join or
    leave an IP multicast at any time
  • Use of hardware IP uses hardware multicast to
    send IP multicast, if hardware supports
    multicast, otherwise, it uses broadcast or
    unicast to deliver IP multicast

5
General Characteristics (continued)
  • Inter-network Forwarding Special multicast
    routers are used to forward multicasts to systems
    in different physical networks
  • Delivery Semantics IP multicast uses the same
    best-effort delivery semantics as other IP
    datagrams
  • Membership And Transmission An arbitrary host
    may send datagrams to any multicast group group
    membership is only used to determine whether the
    host receives datagrams sent to the group

6
Three Conceptual Pieces
  1. Addressing Scheme
  2. Effective notification and delivery system
  3. Efficient internetworking forwarding facility

7
Multicasting Addresses
  • Two kinds Permanent (well known) or Create when
    needed (transient)

1
1
1
0
Group Identification
Multicast Address Range 224.0.0.0 to
239.255.255.255
8
Example of permanent IP multicast address
assignments
Address Meaning
224.0.0.0 Base Address (Reserved)
224.0.0.1 All Systems on this Subnet
224.0.0.2 All Routers on this Subnet
224.0.0.3 Unassigned
224.0.0.4 DVMRP Routers
224.0.0.5 OSPFIGP All Routers
224.0.0.6 OSPFIGP Designated Routers
224.0.0.7 ST Routers
224.0.0.8 ST Hosts
224.0.0.9 RIP2 Routers
224.0.0.10 IGRP Routers
224.0.0.11 Mobile-Agents
224.0.0.12 DHCP Server / Relay Agent
224.0.0.13 All PIM Routers
224.0.0.14 RSVP-Encapsulation
224.0.0.15 All-CBT-Routers
224.0.0.16 Designated-Sbm
224.0.0.17 All-Sbm
9
Example of permanent IP multicast address
assignments (continued)
Address Meaning
224.0.0.18 VRRP
through 244.0.0.255 Other Link Local Address
224.0.1.0 Through 238.255.255.255 Globally Scoped Addresses
239.0.0.0 Through 239.55.255.255 Scope restricted to one organization
10
To map an IP multicast address to the
corresponding Ethernet multicast address, place
the low-order 23 bits of the IP multicast address
into the low-order 23 bits of the special
Ethernet multicast address 01-00-5E-00-00-0016
Example 224.0.0.2 becomes 01-00-5E-00-00-0216
The mapping of IP to Ethernet multicast address
is NOT unique It is up to the host to disregard
unwanted multicast datagrams
Primary difference between local and nonlocal
multicast lies in multicast routers, not in hosts
11
Multicast Scope
Scope refers to the range of group members
Two techniques to control multicast scope
  • The Time To Live (TTL) field
  • Limiting the number of hops allowed
  • e.g. 1 to never leave a network, 0 to never leave
    host
  • Administrative scoping
  • Reserving parts of the address space for groups
    that are local to a given site or local to a
    given organization
  • Assign the group an address that has local scope

12
  • A host can join a multicast in three different
    levels
  • Level 1 Can neither receive nor send IP
    multicast
  • Level 2 Can send but not receive IP multicast
  • Level 3 Can send and receive IP multicast
  • Hosts join specific IP multicast groups on
    specific networks
  • A host must have multicast capability software
    and a multicast router would be needed if a
    multicast spans multiple networks

13
Internet Group Management Protocol (IGMP)
  • Multicast routers and hosts must use IGMP to
    communicate
  • Although IGMP uses IP datagrams to carry
    messages, it is thought of as an integral part of
    IP, not a separate protocol
  • IGMP is standard for TCP/IP
  • Two phases
  • Phase 1
  • A host sends an IGMP message to the group to
    declare its membership when joining
  • Local multicast routers propagate the membership
    information to the rest of the internet
  • Phase 2
  • Local multicast routers must poll hosts to
    determine if a host is still a member, due to
    dynamic membership
  • Source address filter

14
IGMP Implementation
Five ways IGMP use to minimize its traffic on
the network
  • All communications between hosts and multicast
    routers use IP multicast
  • When polling, a multicast router sends a single
    query about all groups instead of sending a
    separate message to each
  • If multiple multicast routers attach to the same
    network, they quickly and efficiently choose a
    single router to poll host membership
  • Hosts do not respond to a routers IGMP query at
    the same time
  • Spaced randomly over 10 seconds.
  • Reports for multiple group memberships sent in a
    single packet

15
Group Membership State Transitions
16
IGMP Membership Query Message
TYPE (0x11)
RESP CODE
CHECKSUM
GROUP ADDRESS
RES
S
QQIC
NUM SOURCES
QRV
SOURCE ADDRESS 1 SOUCRE ADDRESS 2 SOUCRE
ADDRESS N
17
TYPE (0X22)
RESERVED
CHECKSUM
NUM GROUP RECORDS (K)
RESERVED
GROUP RECORD 1
GROUP RECORD 2
GROUP RECORD K
REC TYPE
NUM OF SOURCES
ZEROES
MULTICAST ADDRESS
SOURCE ADDRESS 1
SOURCE ADDRESS 2
SOURCE ADDRESS N
18
Multicast Forwarding and Routing
  • Unlike unicast forwarding in which routes change
    only when the topology changes or equipment
    fails, multicast routes can change simply because
    an application program joins or leaves a
    multicast
  • Multicast forwarding requires a router to examine
    more than the destination address
  • A multicast datagram may originate on a computer
    that is not part of the multicast group, and may
    be forwarded across networks that do not have any
    group members attached

19
Multicast Forwarding Paradigms
A multicast destination is a set of hosts, an
optimal forwarding system will reach all of it
destinations without sending a datagram across a
given network twice.
Reverse Path Forwarding (RPF) uses the source
address to avoid loops.
  • Not used alone because it still does not solve
    the problem of multicast datagram being sent to
    non member groups

20
Multicast Forwarding Paradigms (contd)
Truncated Reverse Path Forwarding (TRPF)
follows the basic RPF algorithm, but avoids
(truncates) paths that do not lead to group
members.
  • To use TRPF, router needs 2 pieces of
    information
  • Conventional routing table
  • List of reachable multicast groups of each
    interface
  • For the TRPF algorithm, first RPF is used
  • If no group members are reachable over an
    interface, the router skips over the interface,
    checking the next one

21
Multicast Forwarding Paradigms (contd)
Consequences of TRPF
  • Because it relies on RPF to prevent loops, it
    delivers an extra copy of datagrams to some
    networks just like conventional RPF
  • Delivery depends on a datagrams source

22
Multicast Forwarding Paradigms (contd)
Multicast Trees the other paradigm
  • Multicast router node to the tree
  • Connection between routers edge to the tree
  • Last router along each of the paths from the
    source leaf of the tree

A multicast forwarding tree is defined as a set
of paths through multicast routers from a source
to all members of a multicast group. For a given
multicast group, each possible source of
datagrams can determine a different forward tree
Forwarding protocols use a network prefix as a
source
23
Reverse Path Multicasting
  • More important to ensure that a multicast
    datagram reaches each member of the group than to
    eliminate unnecessary transmission
  • Multicast routers each contain a conventional
    routing table that has correct information
  • Multicast routing should improve inefficiency
    when possible
  • Two step process
  • Uses RPF scheme to send a copy of each datagram
    across all networks in the net.
  • Simultaneously have multicast routers to inform
    one another about paths that do not lead to group
    members

24
  • RPM propagates membership information bottom-up
  • A multicast router only knows about local group
    members
  • If a leaf network contains no members for a
    given group the router connecting that network to
    the rest of the internet does not forward on the
    network
  • RPM is called a broadcast and prune strategy
    because a router broadcasts until it receives
    information that allows it to prune a path
  • Also known as data driven because router does not
    send group information until a datagram arrives
    for that group

25
Multicast Routing Protocols
  • Multiple Multicast Routing Protocols exists, but
    none of them is a required standard.
  • Distance Vector Multicast Routing Protocol
    (DVMRP)
  • Core Based Trees (CBT)
  • Protocol Independant Multicast (PIM)
  • Multicast extensions to OSPF (MOSPF)

26
Distance Vector Multicast Routing Protocol (DVMRP)
  • Uses Data-Driven Paradigm
  • Allows for Multicast Router to pass along group
    membership and routing imformation to other
    Multicast Routers
  • Resembles the RIP protocol, but it has been
    extended for Multicasting.
  • Basically the protocol passes information about
    current multicast group membership as well as the
    cost to transfer datagrams between routers
  • A forwarding tree is imposed on top of the
    physical interconnection for every possible
    (group, sorce) pair. So when a datagram destined
    for an IP multicast group is received by a
    router, it will send a copy of the datagram to
    very network link corresponding to a branch in
    the forwarding tree.

27
Distance Vector Multicast Routing Protocol
(DVMRP) (contd)
  • DVMRP is implemented by a Unix program named
    mrouted which uses a special multicast kernel
  • Uses multicast tunneling to forward multicasts
    acroos the World Wide Web
  • At each site an mrouted tunnel to other sites has
    to be configured manually
  • The mrouted tunnel uses IP in IP encapsulation to
    send multicasts.
  • When a multicast datagram is generated it is
    encapsulated in a unicast datagram and then
    forwared to other sites
  • When a unicast datagram is received through one
    of the tunnels, the multicast datagram is
    extracted and forwarded according to the
    multicast routing table

28
Core Based Trees (CBT)
  • Uses Demand-Driven Paradigm
  • Avoids broadcasting and allows all sources to
    share the same forwarding tree if possible
  • Does not forward multicasts until at least one
    host along the path joins the multicast group
  • When a host uses IGMP to join a multicast group,
    the host does not receive data until the local
    router has propagated the new hosts information
    to the other routers
  • CBT uses a combination of static and dynamic
    algorithms to build a multicast forwarding tree.
    In order to make this scheme scalable CBT devides
    the underlying internet into regions of a size
    specified by the network administrator
  • Each region has a designated core router and all
    other routers in the region have to know about
    the core router

29
Core Based Trees (CBT) (contd)
  • The use of a core router in each region allows
    for the region to have a shared tree
  • So router in a region dynamically build the
    forwarding trees by sending join requests to the
    core router

30
Protocol Independant Multicast (PIM)
  • Actually is 2 independant protocols, which have
    little in common exept for the name and message
    header
  • PIM Defense Mode (PIM DM)
  • Designed for LAN environments in which all or
    almost all networks have hosts which are lisening
    to each of the multicast group
  • PIM Sparse Mode (PIM SP)
  • Designed for a wide area environment in which the
    member of a given multicast group occupy a small
    subset of all possible networks
  • 2 Independant Protocols exists, because neither
    works well for all situations

31
Protocol Independant Multicast (PIM) (contd)
  • PIM functions independantly from the unicast
    routing protocol or protocols that a rounter
    uses, because PIM does not specify a routing
    table form. Thus PIM can use an arbitary routing
    protocol
  • To accomandate many listenners
  • PIM-DM uses a broadcast and prune approach.
    Datagrams are forwarded to all routers using RPF
    until a router sends an explicit request
  • PIM-SM designates a router, called a Renderview
    Point (RP), which functions similar to the CBT
    core Router

32
Multicast extensions to OSPF (MOSPF)
  • The idea behind MOSPF is when the router know the
    topology of its OSPF area, MOSPF can use this to
    compute a forwarding tree.
  • MOSPF is Demand-Driven , so traffic will not be
    propagted until requested
  • Problems with this scheme are that all router
    must maintain the membership information of all
    groups and the information has to be synchronized
    to ensure every router has the exatly same
    database

33
Reliable Multicast and ACK Implosions
  • Reliable Multicast referes to a system which
    provides multicast delivery and guarantees that
    all members of the group receive the data in
    order without any loss, duplication or
    corruption.
  • In theory sound greath but hard to implement,
    since many problems arise
  • If a multicast group has multiple sender datagram
    arrival in sequence becomes meaning less
  • Widely used multicast forwarding schemes, such as
    RPF, produce duplication even on small internets
  • Applications like audio or video expect relioable
    systems to bound the delay and jitter

34
Reliable Multicast and ACK Implosions (contd)
  • Reliabiliy requires acknowledgements, since
    multicastr groups can have an arbitary number of
    members, traditional reliable protocols require
    the sender to handle an arbitary number of
    acknowledgements. This problem is refered to as
    the ACK Implosion, since no computer has enough
    processing power to handle this problem.
  • How to overcome ACk implosion
  • Reliable multicost protocols restrict multicating
    to a single source. Before data is sent a
    forwarding tree is established from the source to
    all group members and acknowledgement points need
    to be established.

35
Reliable Multicast and ACK Implosions (contd)
  • An acknowledgement point, also know as
    acknowledgement aggregator or designated route
    (DR), is a router that agrees to cache copies of
    the data and process acknowledgements from
    routers and hosts further down the forwarding
    tree. If a retransmission is need it is taken
    from the routers cache. This occurs when the host
    or router send a NACK. The NACK will propogate up
    the tree until a acknowledgement point or the
    source is reached.
  • The selection of sufficient acknowledgement is
    important, since an insufficient number points
    will cause an ACK Implosion. Thus reliable
    multicast protocols require manual configuratio,
    as a result if you have a fast growing network
    this can be a problem

36
Reliable Multicast and ACK Implosions (contd)
  • Other methos of reliable multicast are still
    theoretical or experimental. Here are 2 protocols
    being considered.
  • One was is to send multiple copies to reduce the
    need for retransmission
  • Works good with Random Early Discard (RED), since
    the probability of more than one copy being
    discarded is extremly small
  • Another way is to incorporate forward
    error-correcting codes
Write a Comment
User Comments (0)
About PowerShow.com