IP%20Multicasting - PowerPoint PPT Presentation

About This Presentation
Title:

IP%20Multicasting

Description:

IP Multicasting Part of this presentation based on: Cisco, Forouzan TCP/IP textbook, Anthony Chung, Dale Buchholz. – PowerPoint PPT presentation

Number of Views:315
Avg rating:3.0/5.0
Slides: 62
Provided by: depa69
Category:

less

Transcript and Presenter's Notes

Title: IP%20Multicasting


1
IP Multicasting
  • Part of this presentation based on Cisco,
    Forouzan TCP/IP textbook, Anthony Chung, Dale
    Buchholz.

2
Topics
  • IP Class D Group Addressing
  • IGMP (Internet Group Management Protocol)
  • Multicast Strategies
  • Broadcast/Flooding
  • Multiple Unicast
  • Distribution trees
  • Multicast forwarding (based on Reverse Path
    Forwarding)
  • Multicast Routing Protocols
  • DVMRP (Distance Vector Multicast Routing
    Protocol)
  • MOSPF (Multicast OSPF)
  • PIM (Protocol Independent Multicast)
  • MBONE (Multicast Backbone)
  • Implementation and Configuration (for Cisco)

3
Practical Applications of IP Multicast
  • Multimedia A number of users tunes to a video
    or audio transmission from a multimedia source
    station.
  • Teleconferencing A group of workstations form a
    multicast group such that a transmission from any
    member is received by all other group members.
  • Database All copies of a replicated file or
    database are updated at the same time.
  • Distributed computation Intermediate results are
    sent to all participants.
  • Real-time workgroup Files, graphics, and message
    are exchanged among active group members in real
    time.
  • MOST prevalent usage right now trading Used to
    multicast market data.
  • Can be VERY large OPRA (Options Price Reporting
    Authority) feed is over 80 Mbps SUSTAINED
  • Very latency sensitive. Trading platforms are
    trying to optimize at the micro-second levels.

4
Multicasting within single LAN
  • In 802.3, MAC address can specify a
    broadcast/multicast
  • 0xFFFF.FFFF.FFFF is for broadcast
  • Bit 0 of octet 0 indicates Broadcast/Multicast
  • Bit 1 of octet 0 indicates Locally Administer
    Address (LAA) vs use of Universally Administered
    Addresses (UAA)
  • IANA was given MAC address block 01005E IANA
    defined range available
  • 0100.5E00.0000 to 0100.5E7F.FFFF That is 23
    bits
  • Multicast IP address is defined by 28 bits (1110
    defines class D)
  • The lowest 23 bits of the IP multicast address
    maps to a MAC address
  • All stations that recognise the MAC address of
    the multicast address accept the packet Done at
    L2 admission instead of L3 like it would be in
    broadcast. (a broadcast is accepted by all
    stations, then sent to L3 for processing where it
    will be dropped if no process uses it)
  • Works because of broadcast nature of LAN
  • Packet only sent once
  • Much harder on Internet or routed infrastructure

5
IP Class D Group Addressing (multicast address or
group ID)
Mapping IP Multicast Address to Ethernet Address
Figure 10.10
This prefix is given for multicast MAC addresses
6
MAC address Ambiguities
  • Because upper 5 bits in IP multicast address are
    dropped, result MAC address is not unique 32
    multicast group IDs map to a single MAC address.
  • Example all groups below maps to 0x0100.5E01.0101
  • 224.1.1.1
  • 224.129.1.1
  • 225.1.1.1
  • 225.129.1.1
  • 238.1.1.1
  • 238.129.1.1
  • 239.1.1.1
  • 239.129.1.1

7
Multicast Strategies across routers
8
Multicast Strategies across routers
  • Broadcast
  • Multiple Unicasts
  • True Multicast

9
Broadcast
  • Assume location of recipients not know
  • Send packet to every network
  • Packet addressed to N3 traverses N1, link L3, N3
  • Router B translates IP multicast address to MAC
    multicast address
  • Repeat for each network
  • Generates lots of packets
  • Delivery of packets done via Routing Protocols

10
S
Multicast Strategies Broadcast send one copy to
each network (not knowing which network has
members)
11
Multiple Unicast
  • Location of each member of multicast group known
    to source
  • Table maps multicast address to list of networks
  • Only need to send to networks containing members
    of multicast group
  • Reduced traffic (a bit)

12
S
Multicast Strategies Multiple Unicast send one
copy to each network where there is a member.
13
True Multicast
  • Least cost path from source to each network
    containing member of group is determined
  • Gives spanning tree configuration
  • For networks containing group members only
  • Source transmits packet along spanning tree
  • Packet replicated by routers at branch points of
    spanning tree
  • Reduced traffic

14
Multicast Strategies Multicast along a spanning
tree (A sub-graph that reaches all nodes without
cycles) to networks with members only
S
15
Multicast Transmission Example
16
Requirements for Multicasting
  • Router must forward one or more copies of
    incoming packet
  • Addressing
  • IPv4 uses class D
  • Start 1110 plus 28 bit group id
  • IPv6 uses 8 bit prefix of all 1s, 4 bit flags
    field, 4 bit scope field 112 bit group id
  • Router must translate between IP multicast
    address and list of networks containing members
    of group router must keep track of membership
    subscriptions and tree.
  • Multicast addresses may be permanent or dynamic

17
Requirements for Multicasting
  • Individual hosts may join or leave dynamically
  • Need mechanism to inform routers
  • Routers exchange information on which subnets
    contain members of groups
  • Routers exchange information to calculate
    shortest path to each network
  • Need routing protocol and algorithm
  • Routes determined based on source and destination
    addresses
  • Avoids unnecessary duplication of packets

18
IGMP Operation
  • Host uses IGMP (Internet Group Management
    Protocol) to make itself know as member of group
    to other hosts and routers
  • To join, send IGMP membership report message
  • Send to multicast destination of group being
    joined
  • Routers periodically issue IGMP query
  • To all-hosts multicast address
  • Hosts respond with report message for each group
    to which it belongs
  • Only one host in group needs to respond to keep
    group alive
  • Host keeps timer and responds if no other reply
    heard in time
  • Host sends leave group message
  • Group specific query from router determines if
    any members remain
  • Note IGMP v1 did not include leave Multicast
    would be sent until a timer expires

19
IGMP a protocol designed to help a multicast
router identify the hosts in a LAN that are the
members of a group.
Figure 10.2 IGMP (v2) message types
20
IGMP a protocol designed to help a multicast
router identify the hosts in a LAN that are the
members of a group.
From routers to hosts. Asking for group
membership info
From hosts to routers. Reporting group
membership info
21
Reserved Link Local Addresses
  • IANA reserved 224.0.0.0 through 224.0.0.255 for
    routing protocols on local networks. These
    packets should NEVER be forwarded and should have
    TTL of 1.

22
IP multicast address Description
224.0.0.0 Base address (reserved)
224.0.0.1 The All Hosts multicast group that contains all systems on the same network segment
224.0.0.2 The All Routers multicast group that contains all routers on the same network segment
224.0.0.5 The Open Shortest Path First (OSPF) AllSPFRouters address. Used to send Hello packets to all OSPF routers on a network segment
224.0.0.6 The OSPF AllDRouters address. Used to send OSPF routing information to OSPF designated routers on a network segment
224.0.0.9 The RIP version 2 group address. Used to send routing information using the RIP protocol to all RIP v2-aware routers on a network segment
224.0.0.10 EIGRP group address. Used to send EIGRP routing information to all EIGRP routers on a network segment
224.0.0.13 PIM Version 2 (Protocol Independent Multicast)
224.0.0.18 Virtual Router Redundancy Protocol
224.0.0.19 - 21 IS-IS over IP
224.0.0.22 IGMP Version 3 (Internet Group Management Protocol)
224.0.0.102 Hot Standby Router Protocol Version 2
224.0.0.251 Multicast DNS address
224.0.0.252 Link-local Multicast Name Resolution address
224.0.1.1 Network Time Protocol address
224.0.1.39 Cisco Auto-RP-Announce address
224.0.1.40 Cisco Auto-RP-Discovery address
224.0.1.41 H.323 Gatekeeper discovery address
23
Glop Addressing (RFC 2770)
  • RFC 2770 (revised 3180) proposes that 233.0.0.0/8
    be reserved for static Multicast groups for
    organizations that have a reserved, registered
    public AS number.
  • That AS form the 2nd and 3rd Octet of the IP
    range.
  • Gives an AS owner 255 unique static and global
    Multicast groups.
  • Example AS 62010
  • Decimal 62010 0xF23A
  • F2 is 2nd octet 242
  • 3A is 3rd octet 58
  • 233.242.58.0 is globally reserved for AS 62010 to
    use
  • Question what does GLOP stands for?

24
Using IGMP, R learns about the list of groups on
this LAN. When R receives a packet with a
destination multicast address, it checks against
the list and determine if the packet should be
propagated to the LAN.
25
Four situations of IGMP operations VERSION 1!!
(initially)
(periodic)
(in response to a query)
(time out) Router erase after no responses to 3
queries
26
(A host waits for a random period of time before
sending out a report)
(they hear that the group has been reported)
27
(No Transcript)
28
IGMP v2 improvements
  • IGMPv2
  • Defines a procedure for the election of multicast
    queriers for each LAN (the router with the lowest
    IP address).
  • Group-specific query message
  • Leave group message (to lower IGMPs leave
    latency)
  • IGMPv3
  • - Enables hosts to listen only to a specified
    subset of the hosts sending to the group

29
IGMP v2 and V3 improvements
30
Multicast Distribution Trees
  • Multicast Distribution Trees
  • Control the path which IP Multicast traffic
    takes through the network in order to deliver
    traffic to all receivers.
  • Source Trees
  • A source tree with its root at the source and
    branches forming a spanning tree through the
    network to the receivers.
  • Also referred to as a shortest path tree (SPT).
  • Remind you of anything??? ?

31
Multicast Source Tree
  • Advantage of creating the optimal path between
    the source and the receivers.
  • The routers must maintain path information for
    each source.
  • Memory consumption O(S G)

32
  • Shared Trees
  • A single common root placed at some chosen point
    in the network. This shared root is called a
    Rendezvous Point (RP).
  • Advantage of requiring the minimum amount of
    state in each router. Memory requirements O(G)
  • The disadvantage of shared trees is that under
    certain circumstances the paths between the
    source and receivers might not be the optimal
    paths.
  • The placement of the RP must be carefully
    considered.
  • THIS IS THE PREFERED MANNER to implement
    Multicasts

33
Multicast Forwarding
Multicast Forwarding In unicast routing, a router
does not really care about the source address. In
multicast routing, the multicast router must
determine which direction is upstream (towards
the source) and which direction (or directions)
is downstream.
34
Multicast Forwarding
  • Reverse Path Forwarding (RPF)
  • An approximation of the source tree.
  • Make use of the existing unicast routing table to
    determine the upstream and downstream neighbors.
    A router will only forward a multicast packet if
    it is received on the upstream interface. This
    RPF check helps to guarantee that the
    distribution tree will be loop free.
  • Step 1.   Router looks up the source address in
    the unicast routing table to determine if it has
    arrived on the interface that is on the reverse
    path back to the source.
  • Step 2.   If packet has arrived on the interface
    leading back to the source, the RPF check is
    successful and the packet will be forwarded.
  • Step 3.   If the RPF check in 2 fails, the packet
    is dropped.

35
(No Transcript)
36
  • Enhancement
  • Only forward to your neighbor on a link if the
    neighbor uses this link to reach the source.
  • How does the node know?
  • For link state routing easy
  • For distance vector routing
  • Modify to include next hop information in
    messages or
  • Poison reverse

37
Figure 15.7 Taxonomy of common multicast
routing protocols
JP note Core Based Trees Never seen live
  • MOSPF (RFC 1584)
  • Extension to OSPF unicast routing protocol
  • Includes multicast information in OSPF link state
    advertisements to construct multicast
    distribution trees
  • Group membership LSAs are flooded throughout the
    OSPF routing domain so MOSPF routers can compute
    outgoing interface lists
  • Uses Dijkstra algorithm to compute shortest-path
    tree
  • Separate calculation is required for each (S Net
    , G) pair (Source, Group address pair)
  • Data-driven a router construct a tree the first
    time it sees a (S Net , G) pair.

38
Multicast Routing Protocols
  • Dense-Mode (DM)
  • Uses Push Model
  • Traffic Flooded throughout network
  • Pruned back where it is unwanted
  • Flood Prune behavior (typically every 3
    minutes)
  • Sparse-Mode (SM)
  • Uses Pull Model
  • Traffic sent only to where it is requested
  • Explicit Join behavior

39
DVRMPv3 (Internet Draft)
  • Dense Mode Protocol
  • Distance vector-based
  • Similar to RIP
  • Infinity 32 hops
  • Subnet masks in route advertisements
  • DVMRP Routes used
  • For RPF Check
  • To build Truncated Broadcast Trees (TBTs)
  • Uses special Poison-Reverse mechanism
  • Uses Flood and Prune operation
  • Traffic initially flooded down TBTs
  • TBT branches are pruned where traffic is
    unwanted.
  • Prunes periodically time-out causing reflooding.

40
Multicast Extension to OSPF (MOSPF)
  • Enables routing of IP multicast datagrams within
    single AS
  • Each router uses MOSPF to maintain local group
    membership information
  • Each router periodically floods this to all
    routers in area
  • Routers build shortest path spanning tree from a
    source network to all networks containing members
    of group (Dijkstra)
  • Takes time, so on demand only

41
Forwarding Multicast Packets
  • If multicast address not recognised, discard
  • If router attaches to a network containing a
    member of group, transmit copy to that network
  • Consult spanning tree for this source-destination
    pair and forward to other routers if required

42
Equal Cost Multipath Ambiguities
  • Dijkstra algorithm will include one of multiple
    equal cost paths
  • Which depends on order of processing nodes
  • For multicast, all routers must have same
    spanning tree for given source node
  • MOSPF has tiebreaker rule

43
Inter-Area Multicasting
  • Multicast groups may contain members from more
    than one area
  • Routers only know about multicast groups with
    members in its area
  • Subset of areas border routers forward group
    membership information and multicast datagrams
    between areas
  • Interarea multicast forwarders

44
Inter-AS Multicasting
  • Certain boundary routers act as inter-AS
    multicast forwarders
  • Run an inter-AS multicast routing protocol as
    well as MOSPF and OSPF
  • MOSPF makes sure they receive all multicast
    datagrams from within AS
  • Each such router forwards if required
  • Use reverse path routing to determine source
  • Assume datagram from X enters AS at point
    advertising shortest route back to X
  • Use this to determine path of datagram through
    MOSPF AS

45
MOSPF (RFC 1584)
  • Extension to OSPF unicast routing protocol
  • Includes multicast information in OSPF LSAs to
    construct multicast distribution trees
  • Group membership LSAs are flooded throughout the
    OSPF routing domain so MOSPF routers can compute
    outgoing interface lists.
  • Uses Dijkstras algorithm to compute
    shortest-path tree for each multicast group.

46
Protocol Independent Multicast (PIM)
  • Independent of unicast routing protocols
  • Extract required routing information from any
    unicast routing protocol
  • Work across multiple AS with different unicast
    routing protocols
  • JP Note this is usually how we do Multicasting
    in real life ?

47
PIM Strategy
  • Flooding is inefficient over large sparse
    internet
  • Little opportunity for shared spanning trees
  • Focus on providing multiple shortest path unicast
    routes
  • Two operation modes
  • Dense mode
  • For intra-AS
  • Alternative to MOSPF
  • Sparse mode
  • Inter-AS multicast routing

48
PIM-DM (Internet Draft)
  • Protocol Independent
  • Supports all underlying unicast routing
    protocols including static, RIP, IGRP, EIGRP,
    IS-IS, BGP, and OSPF
  • Uses reverse path forwarding
  • Floods network and prunes back based on
    multicast group membership
  • Assert mechanism used to prune off redundant
    flows
  • Appropriate for...
  • Smaller implementations and pilot networks

49
PIM-SM (RFC 2362)
  • Supports both source and shared trees
  • Assumes no host wants multicast traffic unless it
    specifically ask for it
  • Uses a Rendezvous Point (RP)
  • Senders and Receivers rendezvous at this point
    to learn of each others existence.
  • Senders are registered with RP by their
    first-hop router.
  • Receivers are joined to the Shared Tree (rooted
    at the RP) by their local Designated Router (DR).
  • Appropriate for
  • Wide scale deployment for both densely and
    sparsely populated groups in the enterprise
  • Optimal choice for all production networks
    regardless of size and membership density.

50
Sparse Mode
  • A sparse group
  • Number of networks/domains with group members
    present significantly small than number of
    networks/domains in internet
  • Internet spanned by group not sufficiently
    resource rich to ignore overhead of current
    multicast schemes

51
Group Routers
  • Group Destination Router
  • Has local group members
  • Router becomes destination router for given group
    when at least one host joins group
  • Using IGMP or similar
  • Group source router
  • Attaches to network with at least one host
    transmitting on multicast address via that router

52
PIM Approach
  • For a group, one router designated rendezvous
    point (RP)
  • Group destination router sends join message
    towards RP requesting its members be added to
    group
  • Use unicast shortest path route to send
  • Reverse path becomes part of distribution tree
    for this RP to listeners in this group
  • Node sending to group sends towards RP using
    shortest path unicast route
  • Destination router may replace group-shared tree
    with shortest path tree to any source
  • By sending a join back to source router along
    unicast shortest path
  • Selection of RP dynamic
  • Not critical

53
(No Transcript)
54
MBONE consists of multicast islands connected by
tunnels
55
L2 switching implementation Considerations
  • Issue Default behavior of a l2 switch is to
    flood multicast to all port on a VLAN. This beats
    the purpose of a switch (to limit traffic)
  • Solution Cisco Group Management Protocol (CGMP)
    and IGMP Snooping

56
CGMP
  • Proprietary Cisco solution
  • Basically uses IGMP information to generate CGMP
    messages to tell a switch to enable a port for a
    Mcast group and add CAM entry.
  • Disabled by default
  • Must be configured on switch and routers
  • Cisco recommend that for low end switches
  • JP opinion pretty poor and would not want to use
    it. Id rather just enable Mcast flooding on VLAN
    and if switch too low end to support such high
    Mcast, we have architecture issue.

57
IGMP Snooping
  • LAN switch looks at L3 information of multicast
    packet to see the join requests
  • When it sees it it enables forwarding on the
    port for that Mcast group
  • Pro transparent to administrator, enabled by
    default.
  • Con can get processor intensive unless you can
    do snooping in special ASIC (high end switches do
    that)

58
Sparse or Dense Mode?
  • What is best?
  • It depends! ?
  • It is a global config for a given VLAN/interface
  • What if you want both?
  • Cisco Sparse-Dense mode
  • In this case it is by default Dense
  • but if a group gets an RP, switch to Sparse
  • Recommendation Sparse mode

59
Enabling and configuring Mcast
  • Global command
  • Ip multicast-routing
  • Per interface/VLAN
  • Ip pim sparse-mode dense-mode
    sparse-dense-mode
  • If you dont know use sparse-dense will work
    with all.

60
Troubleshooting Mcast
  • Even more fun than troubleshooting VPN
    problems! (if you want an unforgettable life
    experience try putting Multicast traffic in a
    GRE tunnel over an IPSEC VPN! You only have one
    life you got to try it!)
  • First make sure end-to-end unicast routing is
    fine.
  • Then consider the mode and signaling used to
    propagate Mcast groups.

61
Troubleshooting Mcast
  • Different aspects to check
  • Source packet flow - At upstream router
  • show ip igmp groups interface-name
  • show ip igmp Interface interface-name
  • Check Multicast Signaling
  • Show ip pim neighbor
  • Show ip pim rp mapping
  • Show ip rpf ltsourcegt (to make sure RPF is correct
    alternatively look at routing table)
  • Look at active network mroutes
  • Show ip mroute active
  • Show ip mroute count
  • Check receiver
  • show ip igmp groups interface-name
  • show ip igmp Interface interface-name
  • Advanced CLI tool
  • Mstat
  • mtrace
Write a Comment
User Comments (0)
About PowerShow.com