Presentation is loading. Please wait.

Presentation is loading. Please wait.

Methods and Needs for Multicast Applications

Similar presentations


Presentation on theme: "Methods and Needs for Multicast Applications"— Presentation transcript:

1 Methods and Needs for Multicast Applications
Siavash Samadian Barzoki University of Tehran

2 Multicast Addressing multicast address  a set of Internet hosts comprising a multicast group. Senders : Dest. Address = multicast address IP multicast group Class D address Class D address : bit multicast group ID  to bits Multicast Group ID is reserved. to  reserved for permanent assignments to various uses, including routing protocols and other protocols that require a well-known permanent address.

3 Multicast Addressing Some of the well-known groups include :
“all systems on this subnet” “all routers on this subnet” “all DVMRP routers” “all OSPF routers” “all OSPF designated routers” “all RIP2 routers” “all PIM routers” “all CBT routers” The remaining groups are either permanently assigned to various multicast applications or are available for dynamic assignment ( to for “Administratively scoped” applications)

4 Mapping a Class D Address to an IEEE-802 MAC Address
The block begin with E (hex) of the IEEE-802 MAC-layer multicast address space is used for IP multicast groups. The low order 23 bits of class D address is replaced by the low order 23 bits of MAC-layer multicast address block. (EA-8A-08-05) : (E0-0A-08-05) : (E1-8A-08-05) : IEEE-802 MAC-layer multicast address : Hex: E A

5 IP Multicast MAC Address Mapping (FDDI & Ethernet)
Be Aware of the 32:1 Address Overlap 32 - IP Multicast Addresses . 1 - Multicast MAC Address (FDDI and Ethernet) 0x0100.5E

6 Internet Group Management Protocol (IGMP)
Hosts Host-to-Router Protocols (IGMP) Routers Multicast Routing Protocols (PIM)

7 Internet Group Management Protocol (IGMP)
How hosts tell routers about group membership RFC 1112 and RFC 2236 specify IGMPv1 and IGMPv2 IGMPv3 work-in-progress More than 1 router on a LAN  a router is elected as a querier The querier is responsible for periodically querying the LAN for the presence of any group members Group Specific Query Message, TTL=1 is sent The members if any  set a random timer On timer expiration  the host sends a Report message and the other members suppress their same Reports

8 Internet Group Management Protocol (IGMP)
A host first joins a group  sends an IGMP Report rather than waiting for a router’s IGMP Query to reduce Join Latency Join Latency : the interval from a host’s first IGMP Report sent until the first packet for that group arrives on that host’s subnetwork. A host leaves a group  sends an Leave Group message Inclusion Group-Source Report message to select the specific sources and Exclusion Group-Source Report message to block some sources’ traffic

9 Internet Group Management Protocol (IGMP)
Joining a Group H3 H2 Report H3 H1 Host sends IGMP Report to join group

10 Internet Group Management Protocol (IGMP)
Source = Group = Source = Group = R1 R2 H1 wants to receive from S = but not from S = With IGMP, specific sources can be pruned back - S = in this case R3 IGMPv3: Join , Leave , H1 - Member of

11 Multicast Routing in Extended LANs
Broadcast based : Single-Spanning Tree Multicast Routing RPF (Reverse Path Flooding) RPB (Reverse Path Broadcasting) Multicast based : TRPB (Truncated Reverse Path Broadcasting) RPM (Reverse Path Multicasting)

12 Single-Spanning Tree Multicast Routing
Compute a spanning tree among the bridges using a distributed algorithm A packet can be sent on the spanning tree There can be a membership learning algorithm A member of group G sends a membership-report to all-bridges group B periodically (Src. Adr.= G, Dest. Adr. = B) The bridge adds G to a table entry (address, (outgoing-branch, age), (outgoing-branch, age), …) where address is set to G and outgoing-branch to the interface it received the report message When a packet received by the bridge with Dest. Adr. = G, it will send it on the outgoing-branches which are in the table

13 Single-Spanning Tree Multicast Routing
d G G G a b c G G

14 Single-Spanning Tree Multicast Routing
Advantages : Relatively easy to implement  a great deal of experience with spanning tree protocols in Internet community Disadvantages : Centralize traffic on a small number of links Computationally difficult to compute a spanning tree in large, complex topologies

15 Reverse Path Flooding (RPF)
A router forwards a broadcast packet originating at source S if and only if it arrives via the shortest path from the router back to S (i.e., the “reverse path”). Otherwise the packet will be discarded The router forwards the packet out all incident links except the one on which the packet arrived. Disadvantage : Any single broadcast packet may be transmitted more than once across any link, up to the number of routers that share the link.

16 Reverse Path Flooding (RPF)
What is RPF? A router forwards a multicast datagram if received on the interface used to send unicast datagrams to the source Unicast B C Receiver Source A F D E Multicast

17 Reverse Path Flooding (RPF)
The RPF Check The routing table used for multicasting is checked against the “source” IP address in the packet. If the datagram arrived on the interface specified in the routing table for the source address; then the RPF check succeeds. Otherwise, the RPF Check fails.

18 Reverse Path Flooding (RPF)
A closer look: RPF Check Fails Multicast Packet from Source X Discard Packet! S0 RPF Check Fails! S1 S2 Unicast Route Table Network Interface /16 S1 /24 S0 /24 E0 E0 S1 Packet Arrived on Wrong Interface!

19 Reverse Path Flooding (RPF)
A closer look: RPF Check Succeeds Multicast Packet from Source S0 S1 S2 RPF Check Succeeds! E0 Unicast Route Table Network Interface /16 S1 /24 S0 /24 E0 S1 Packet Arrived on Correct Interface! Forward out all outgoing interfaces. (i. e. down the distribution tree)

20 Reverse Path Broadcasting (RPB)
Eliminates the duplicate broadcast packets generated by Reverse Path Forwarding It is necessary for each router to identify which of its links are “child” links in the shortest reverse path tree rooted at any given source S. When a broadcast packet originating at S arrives via the shortest path back to S, the router can forward it out only the child links for S.

21 Reverse Path Broadcasting (RPB)
5 6 X Y Child link D=5 D=6 a D=6 Z b

22 Reverse Path Broadcasting (RPB)
Advantages : Easy to implement Saving of link bandwidth and of host and router processing time achieved by eliminating duplicate broadcast packets. Disadvantages : Extra storage consumed by the children bit-map in each routing table entry It does not take into account multicast group membership  extraneous datagrams may be forwarded onto subnetworks that have no group members

23 Truncated Reverse Path Broadcasting (TRPB)
The previous algorithms used broadcasting and so were wasting the bandwidth on the links that had no group members. In TRPB only non-member leaf networks are deleted from each broadcast tree. Leaf networks are the networks which have no downstream router. So the leaf networks must be found out and it must be determined if there is any member on the leaf network or not then.

24 Reverse Path Multicasting (RPM)
Provides on-demand pruning of shortest-path multicast trees. When a source first sends a multicast packet to a group, it uses TRPB algorithm. When the packet reaches a router for whom all of the child links are leaves and none of them have members of the destination group, a non-membership report (NMR) for that (source, group) pair is generated and sent back to the router that is one hop towards the source. If the one-hop-back router receives NMRs from all of its child routers, and if its child links also have no members, it in turn sends an NMR back to its predecessor. Subsequent multicast packets from the same source to the same group are blocked from traveling down the unnecessary branches by the NMRs sitting in intermediate routers. A non-membership report includes an age field that is used to cancel the NMR effect after some time.

25 Reverse Path Multicasting (RPM)
Send based on TRPB Send Prune message R G Prune the branches R G R R R G R G

26 Intra-Domain Multicast vs. Inter-Domain Multicast
1992 to 1997  standardization and deployment focused on a single flat topology Beginning in 1997  the need for a hierarchical multicast infrastructure and inter-domain routing The existing protocols then categorized as intra-domain protocol

27 Multicast protocols – Distribution Trees
Shortest Path or Source Distribution Tree Source 1 Notation: (S, G) S = Source G = Group Source 2 B A D F C E Receiver 1 Receiver 2

28 Multicast protocols – Distribution Trees
Shared Distribution Tree Source 1 Notation: (*, G) * = All Sources G = Group Source 2 A B D (Shared Root) F C E Receiver 1 Receiver 2

29 Multicast Protocols - Characteristics
Distribution trees Source tree Uses more memory O(S x G) but you get optimal paths from source to all receivers, minimizes delay Shared tree Uses less memory O(G) but you may get suboptimal paths from source to all receivers, may introduce extra delay Protocols PIM, DVMRP, MOSPF, CBT

30 Multicast Protocols - Characteristics
Types of multicast protocols Dense-mode : The receivers are densely populated Broadcast and prune (flood & prune) behavior Similar to radio broadcast Sparse-mode : The receivers are sparsely populated Explicit join behavior Similar to pay-per-view

31 Multicast Protocols - DVMRP
Stands for Distance Vector Multicast Routing Protocol First protocol implemented on MBone Broadcast and prune Source Distribution Trees Dense Mode Protocol Uses own routing table (Distance Vector similar to RIP) Many implementations Disadvantages : Slow Convergence — RIP-like behavior Significant amount of multicast routing state information stored in routers — (S,G) everywhere Protocol Dependent

32 Multicast Protocols - MOSPF
Stands for Multicast Extensions to OSPF (Open Shortest Path First) Information about group receivers are included in the attached Link State (LS) Flood the area with LS  same view of group membership in the area Source Tree  Each router uses Dijkstra algorithm to compute shortest-path tree for each source and group Dense Mode or Sparse Mode ?!  Membership information is broadcasted so dense mode , but data is sent to those receivers that specifically request it so sparse mode

33 MOSPF - Membership LSA’s
Area 0 MABR1 MABR2 Membership LSA’s Membership LSA’s Area 1 Area 2 MB MA

34 MOSPF - Intra-Area Traffic
Not receiving (S2 , A) traffic MABR1 MABR2 Area 1 Area 2 MB (S1 , B) (S2 , A) MA

35 MOSPF - Inter-Area Traffic
MABR routers inject Summary Membership LSAs into Area 0. Wildcard Receivers “pull” traffic from all sources in the area. Summarized Membership LSA (GA , GB) (GA ) Wildcard Receiver Flag (*, *) MABR1 MABR2 Membership LSA’s Membership LSA’s Area 1 Area 2 MB (S1 , B) (S2 , A) MA

36 MOSPF - Inter-Area Traffic
Unnecessary traffic still flowing to the MABR Routers!! Wildcard Receiver Flag (*, *) MABR1 MABR2 Area 1 Area 2 (S1 , B) (S2 , A)

37 MOSPF - Inter-Area Traffic
MASBR External AS (S1 , A) Summarized Membership LSA (S2 , B) (GA , GB) (GA ) MABR1 MABR2 Membership LSA’s Membership LSA’s Area 1 Area 2 MB MA MA MA

38 MOSPF - Inter-Area Traffic
Unnecessary traffic may flow all the way to the MASBR Router!! MASBR External AS Wildcard Receiver Flag (*, *) MABR1 MABR2 Area 1 Area 2 (S1 , B) (S2 , A)

39 MOSPF - Disadvantages Protocol dependent - works only in OSPF-based networks Significant scaling problems Dijkstra algorithm run for EVERY multicast (SNet, G) pair! Dijkstra algorithm rerun when: Group Membership changes Line-flaps

40 PIM-DM Stands for Protocol Independent Multicast – Dense Mode
Broadcast and prune Source Distribution Trees Fewer implementations than DVMRP Branches that don't care for data are pruned Grafts to join existing source tree Uses asserts to determine forwarder for multi-access LAN PIM-DM vs. DVMRP : DVMRP tries to avoid sending unnecessary packets to neighbors who will then generate prune messages based on a failed RPF check. PIM-DM avoids this complexity, but the tradeoff is that packets are forwarded on all outgoing interfaces. Unnecessary packets are often forwarded to routers which must then generate prune messages because of the resulting RPF failure.

41 PIM-DM I Gets Pruned E’s Prune is Ignored G’s Prune is Overridden
C and D Assert to Determine Forwarder for the LAN, C Wins Initial Flood of Data and Creation of State New Receiver, I Sends Graft Prune to Non-RPF Neighbor Source Link Data Control Prune D F I B C A E G H Prune Asserts Join Override Prune Graft Receiver 3 Receiver 1 Receiver 2

42 PIM-SM (Overview) Explicit join model RPF check depends on tree type
Receivers join to the Rendezvous Point (RP) Senders register with the RP Data flows down the shared tree and goes only to places that need the data from the sources Last hop routers can join source tree if the data rate warrants by sending joins to the source RPF check depends on tree type For shared trees, uses RP address For source trees, uses Source address

43 PIM-SM (Overview) Only one RP is chosen for a particular group
RP statically configured or dynamically learned (Auto-RP, PIM v2 candidate RP advertisements) Data forwarded based on the source state (S, G) if it exists, otherwise use the shared state (*, G) RFC “PIM Sparse Mode Protocol Spec”

44 PIM-SM (Shared Tree Join)
RP (*, G) State created only along the Shared Tree. (*, G) Join Shared Tree Receiver

45 PIM-SM (Sender Registration)
RP Source (S, G) State created only along the Source Tree. Traffic Flow Shared Tree (S, G) Join (S, G) Register (unicast) Source Tree Receiver

46 PIM-SM (Sender Registration)
RP Source (S, G) traffic begins arriving at the RP via the Source tree. Shared Tree Traffic Flow RP sends a Register-Stop back to the first-hop router to stop the Register process. Source Tree (S,G) Register-Stop (unicast) (S, G) Register Receiver

47 PIM-SM (Sender Registration)
RP Source Source traffic flows natively along SPT to RP. Shared Tree Traffic Flow From RP, traffic flows down the Shared Tree to Receivers. Source Tree Receiver

48 PIM-SM (SPT Switchover)
RP Source Last-hop router joins the Source Tree. Shared Tree Traffic Flow Additional (S, G) State is created along new part of the Source Tree. (S, G) Join Source Tree Receiver

49 PIM-SM (SPT Switchover)
RP Source Traffic begins flowing down the new branch of the Source Tree. Shared Tree Traffic Flow Additional (S, G) State is created along the Shared Tree to prune off (S, G) traffic. Source Tree (S, G)RP-bit Prune Receiver

50 PIM-SM (SPT Switchover)
RP Source (S, G) Traffic flow is now pruned off of the Shared Tree and is flowing to the Receiver via the Source Tree. Traffic Flow Shared Tree Source Tree Receiver

51 PIM-SM (SPT Switchover)
RP Source (S, G) traffic flow is no longer needed by the RP so it Prunes the flow of (S, G) traffic. Traffic Flow Shared Tree Source Tree (S, G) Prune Receiver

52 PIM-SM (SPT Switchover)
RP Source (S, G) Traffic flow is now only flowing to the Receiver via a single branch of the Source Tree. Traffic Flow Shared Tree Source Tree Receiver

53 PIM-SM Advantages: Traffic only sent down “joined” branches
Can switch to optimal source-trees for high traffic sources dynamically Unicast routing protocol-independent Basis for inter-domain multicast routing

54 IP Multicast Protocol Characteristics
Dense Distribution Sparse Distribution Extensible to IDMR Protocol- Independent Standards Status Industry Usage Efficient PIM-DM X X X X X X DVMRP X X X X MOSPF X X X X X X X CBT X PIM-SM X X X X X X

55 Any Questions ? Multicasting


Download ppt "Methods and Needs for Multicast Applications"

Similar presentations


Ads by Google