Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Chapter 16b Multicasting. Chapter 16b Multicasting 2 Multicasting Applications Multimedia Multimedia –television, presentations, etc. Teleconferencing.

Similar presentations


Presentation on theme: "1 Chapter 16b Multicasting. Chapter 16b Multicasting 2 Multicasting Applications Multimedia Multimedia –television, presentations, etc. Teleconferencing."— Presentation transcript:

1 1 Chapter 16b Multicasting

2 Chapter 16b Multicasting 2 Multicasting Applications Multimedia Multimedia –television, presentations, etc. Teleconferencing Teleconferencing –voice and video Database Database –replication and updates Distributed computing and real-time workgroup Distributed computing and real-time workgroup –exchange of results, files, graphics, messages, etc. QoS Attributes

3 Chapter 16b Multicasting 3 Multicast Example - Broadcast (or “Flooding”)

4 Chapter 16b Multicasting 4 Multiple Unicast Example

5 Chapter 16b Multicasting 5 Multicast Strategies

6 Chapter 16b Multicasting 6 True Multicast Source knows network location of multicast group members Source knows network location of multicast group members –identifies least cost path to each member –establishes a partial spanning tree to reach all group member networks Source node sends single packet along tree path Source node sends single packet along tree path Packet is replicated by routers at each branch point in path Packet is replicated by routers at each branch point in path

7 Chapter 16b Multicasting 7 True Multicast Example

8 Chapter 16b Multicasting 8 Multicast Operation Spanning Tree from Source Multicast Group Packets Generated for Transmission

9 Chapter 16b Multicasting 9 Multicast Strategies

10 Chapter 16b Multicasting 10 Multicast Requirements Unique multicast addressing scheme Unique multicast addressing scheme –IPv4 Class D addresses: 1110, followed by 28- bit group identifier –IPv6: 11111111, 3 flag bits, 4 scope bits, and 112-bit group identifier Nodes must be able to translate between multicast addresses and list of networks that have members Nodes must be able to translate between multicast addresses and list of networks that have members Routers must translate between multicast address and subnetwork addressing (e.g. MAC multicast) Routers must translate between multicast address and subnetwork addressing (e.g. MAC multicast) Must have mechanism for hosts to inform routers of group membership/exclusion Must have mechanism for hosts to inform routers of group membership/exclusion Routers must have mechanism for determining and applying multicast routing paths (multiple outbound paths for the same received packet) Routers must have mechanism for determining and applying multicast routing paths (multiple outbound paths for the same received packet)

11 Chapter 16b Multicasting 11 Multicast Operation - Duplication Avoidance Spanning Tree from Router C to Multicast Group How do you avoid this problem?

12 Chapter 16b Multicasting 12 Multicast Operation - Duplication Avoidance Multicast routing is based on knowledge of source as well as multicast destination Multicast routing is based on knowledge of source as well as multicast destination Each router must calculate spanning tree for source node and route on that basis Each router must calculate spanning tree for source node and route on that basis Multicast routing algorithms must support this capability Multicast routing algorithms must support this capability Spanning Tree from Source Multicast Group

13 Chapter 16b Multicasting 13 Internet Multicast Service Model multicast group concept: use of indirection –hosts addresses IP datagram to multicast group –routers forward multicast datagrams to hosts that have “joined” that multicast group 128.119.40.186 (source) 128.59.16.12 (m/c group member) 128.34.108.63 (m/c group member) 128.34.108.60 (m/c group member) multicast group 226.17.30.197

14 Chapter 16b Multicasting 14  class D Internet addresses reserved for multicast:  host group semantics:  anyone can “join” (receive) multicast group  anyone can send to multicast group  no network-layer identification to hosts of members  needed: infrastructure to deliver mcast- addressed datagrams to all hosts that have joined that multicast group Multicast groups

15 Chapter 16b Multicasting 15 Multicast Routing Mechanisms Group-Shared or Center-Based Tree Group-Shared or Center-Based Tree –Single optimum (shortest path) shared tree for all senders/ receivers –Typically based on use of a “center” (rendezvous point) of the tree Source-Based Tree Source-Based Tree –Optimum routing tree for each source (sender) in a multicast group –Typically uses reverse path forwarding

16 Chapter 16b Multicasting 16 Center-Based Routing Trees Single delivery tree shared by all Single delivery tree shared by all One router identified as “center” of tree, designated the rendezvous point One router identified as “center” of tree, designated the rendezvous point 1.edge router sends unicast join-msg addressed to the rendezvous point (center router) 2.join-msg “processed” by intermediate routers and forwarded towards center 3.join-msg either hits existing tree branch for this center, or arrives at center 4.path taken by join-msg becomes new branch of tree for this router

17 Chapter 16b Multicasting 17 Center-Based Routing Example Suppose R6 chosen as center: R1 R2 R3 R4 R5 R6 R7 router with attached group member router with no attached group member path order in which join messages generated LEGEND: 2 1 3 1

18 Chapter 16b Multicasting 18 Source-Based Trees with Reverse Path Forwarding if (mcast datagram received on incoming link on shortest path back to sender) then flood datagram onto all outgoing then flood datagram onto all outgoing links links else ignore datagram else ignore datagram  Rely on router’s knowledge of unicast shortest path from it to sender  Each router has simple forwarding behavior:

19 Chapter 16b Multicasting 19 Reverse-Path Forwarding Example R1 R2 R3 R4 R5 R6 R7 LEGEND S: source router with attached group member router with no attached group member datagram will be forwarded datagram will not be forwarded

20 Chapter 16b Multicasting 20 Reverse-Path Forwarding Example forwarding tree contains subtrees with no multicast group members forwarding tree contains subtrees with no multicast group members –no need to forward datagrams down subtree –“prune” messages are sent upstream by router with no downstream group members R1 R2 R3 R4 R5 R6 R7 router with attached group member router with no attached group member prune message LEGEND S: source links with multicast forwarding P P P

21 Chapter 16b Multicasting 21 IGMPv4 Message Format Type Type –Membership Query: learn group members on network –Membership Report: declare group membership –Leave Group: declare departure from group Max Response Time Max Response Time –in Membership Query only –max time before sending response in 1/10 second units Checksum: Checksum: 16-bit ones complement Group Address: Group Address: IP multicast address (zero in request message) RFC 2236

22 Chapter 16b Multicasting 22 IGMP Operation Hosts send Membership Report to join groups Hosts send Membership Report to join groups –sent in IP datagram with IP destination address equal to Group Address –therefore, routers and other hosts are informed of new member Multicast routers periodically broadcast Membership Query to maintain current list Multicast routers periodically broadcast Membership Query to maintain current list –hosts must reply with Report for each group in which it wants to remain –if a host hears another Membership Report for one of its groups within a random timer value (< maximum response time), it cancels its report (why??) Hosts send Leave when it leaves a group Hosts send Leave when it leaves a group –Routers then use group-specific Query to determine if any other member of this group are left

23 Chapter 16b Multicasting 23 IPv6 Group Membership IGMP-like functions incorporated into new version of ICMP for IPv6 (ICMPv6) IGMP-like functions incorporated into new version of ICMP for IPv6 (ICMPv6) ICMPv6 includes group membership query and report messages, and a new group membership termination message ICMPv6 includes group membership query and report messages, and a new group membership termination message

24 Chapter 16b Multicasting 24 Multicast Routing Algorithms DVMRP: distance vector source-based with RPF/RPM, based on RIP DVMRP: distance vector source-based with RPF/RPM, based on RIP MOSPF: link-state source-based, extension of OSPF MOSPF: link-state source-based, extension of OSPF CBT: core-based tree CBT: core-based tree PIM-DM: protocol independent, dense PIM-DM: protocol independent, dense PIM-SM: protocol independent, sparse PIM-SM: protocol independent, sparse MBONE: tunneling via backbone MBONE: tunneling via backbone

25 Chapter 16b Multicasting 25 Distance-Vector Multicast Routing Protocol (DVMRP) The first and, arguably, most widely- deployed multicast routing algorithm used in the Internet The first and, arguably, most widely- deployed multicast routing algorithm used in the Internet Straightforward implementation of source- based trees Straightforward implementation of source- based trees –with reverse-path forwarding and pruning –pruned branches automatically restored after specified “prune lifetime” Uses distance-vector algorithm to determine next hop for best path back to the source Uses distance-vector algorithm to determine next hop for best path back to the source

26 Chapter 16b Multicasting 26 Multicast Extensions to OSPF Direct extension to OSPF unicast routing Direct extension to OSPF unicast routing MOSPF is designed to operate within a single AS to generate source-specific, pre-pruned, least-cost trees for each multicast group MOSPF is designed to operate within a single AS to generate source-specific, pre-pruned, least-cost trees for each multicast group Multicast spanning trees calculated on demand using Dijkstra’s algorithm Multicast spanning trees calculated on demand using Dijkstra’s algorithm Routers periodically flood group membership information to all other routers in its area Routers periodically flood group membership information to all other routers in its area –added to the link-state advertisements that are used with OSPF

27 Chapter 16b Multicasting 27 MOSPF Routing

28 Chapter 16b Multicasting 28 Protocol Independent Multicast (PIM) More general solution to multicast routing More general solution to multicast routing –Key assumption: members of any given multicast group are few and widely-dispersed Independent of underlying unicast routing algorithm Independent of underlying unicast routing algorithm Uses multiple shortest-path unicast routing approach Uses multiple shortest-path unicast routing approach Two modes of operation (actually, two separate algorithms): Two modes of operation (actually, two separate algorithms): –dense mode: intra-AS –sparse mode: inter-AS

29 Chapter 16b Multicasting 29 PIM: Protocol Independent Multicast not dependent on any specific underlying unicast routing algorithm (works with all) not dependent on any specific underlying unicast routing algorithm (works with all) two different multicast distribution scenarios : two different multicast distribution scenarios : Dense:  group members densely packed, in “close” proximity.  bandwidth more plentiful Sparse:  # networks with group members small wrt # interconnected networks  group members “widely dispersed”  bandwidth not plentiful

30 Chapter 16b Multicasting 30 Consequences of Sparse-Dense Dichotomy: Dense group membership by routers assumed until routers explicitly prune group membership by routers assumed until routers explicitly prune data-driven construction on mcast tree (e.g., RPF) data-driven construction on mcast tree (e.g., RPF) bandwidth and non- group-router processing profligate bandwidth and non- group-router processing profligate Sparse : no membership until routers explicitly join no membership until routers explicitly join receiver- driven construction of mcast tree (e.g., center- based) receiver- driven construction of mcast tree (e.g., center- based) bandwidth and non- group-router processing conservative bandwidth and non- group-router processing conservative

31 Chapter 16b Multicasting 31 PIM- Dense Mode flood-and-prune RPF, similar to DVMRP or MOSPF but  underlying unicast protocol provides RPF info for incoming datagram  less complicated (less efficient) downstream flood than DVMRP reduces reliance on underlying routing algorithm  has protocol mechanism for router to detect it is a leaf-node router

32 Chapter 16b Multicasting 32 Sparse-mode PIM Operation One router is designated as the RP (rendezvous point) for each multicast group (center-based tree, like CBT algorithm) One router is designated as the RP (rendezvous point) for each multicast group (center-based tree, like CBT algorithm) Group destination routers send Join messages to RP requesting membership for its hosts in the RP’s group Group destination routers send Join messages to RP requesting membership for its hosts in the RP’s group –uses a unicast shortest path route selection (e.g. RIP) –reverse of this path becomes part of that RP’s shared distribution tree Source nodes send messages intended for a group to the RP for that group Source nodes send messages intended for a group to the RP for that group –uses a unicast shortest path route from source to RP –RP routes packets, using the group-shared tree, back toward routers that have “Join”ed that group

33 Chapter 16b Multicasting 33 PIM - Sparse Mode center-based approach center-based approach Group router(s) send join msg to the rendezvous point (RP) Group router(s) send join msg to the rendezvous point (RP) –intermediate routers update state and forward the join after joining via RP, router can switch from the group- shared tree to a source- specific tree after joining via RP, router can switch from the group- shared tree to a source- specific tree –increased performance: less concentration, shorter paths R1 R2 R3 R4 R5 R6 R7 join rendezvous point

34 Chapter 16b Multicasting 34 PIM - Sparse Mode Multicast sources(s): “Register” with RP “Register” with RP RP can extend the multicast tree upstream to a source RP can extend the multicast tree upstream to a source Send data to RP, via unicast path, which then distributes data down RP-rooted tree Send data to RP, via unicast path, which then distributes data down RP-rooted tree RP can send stop msg to a source if all receivers “leave” a group RP can send stop msg to a source if all receivers “leave” a group –“no one is listening!” R1 R2 R3 R4 R5 R6 R7 all data multicast from Rendezvous Point RP Source

35 Chapter 16b Multicasting 35 PIM Routing Example   


Download ppt "1 Chapter 16b Multicasting. Chapter 16b Multicasting 2 Multicasting Applications Multimedia Multimedia –television, presentations, etc. Teleconferencing."

Similar presentations


Ads by Google