1 / 60

Multicast

Multicast. Brad Smith. Administrativia. Next (8 th ) week Project status report due Tuesday , 5/21 Review STP and Multicast lab Tuesday, 5/21 BGP lab due Wednesday, 5 / 22 Multicast quiz and IPv6 lecture Tuesday, 5/23 Following (9 th ) week

berke
Download Presentation

Multicast

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Multicast Brad Smith

  2. Administrativia • Next (8th) week • Project status report due Tuesday, 5/21 • Review STP and Multicast lab Tuesday, 5/21 • BGP lab due Wednesday, 5/22 • Multicast quiz and IPv6 lecture Tuesday, 5/23 • Following (9th) week • Robert Cartellion server load balancing Monday, 5/28 • Multicast lab due Wednesday, 5/29 • Donald Eastlake on TRILL, 5/30 • Last (10th) week • Cruzio visit Thursday… what’s involved in running an ISP, 6/4 • First 5 project presentations Thursday, 6/6 • Projects due • Presentations last week of class and final slot (I’ll schedule with random assignments) • Alex Lowe, John, Jeff, Dennis, Erik, David, Jeff • Write-up, lab, and answer key bye last day of quarter (June 12th) CE 151 - Advanced Networks

  3. Multiple Receivers • Important applications involve multiple receivers • Broadcasts of Radio or Video • Videoconferencing • Shared Applications • Special mechanisms needed to efficiently support such applications. CE 151 - Advanced Networks

  4. "Together, Internet broadcasting and multicasting are the next chapters in the evolution of the Internet as a revolutionary catalyst for the information age." VintCerf,Senior vice president of MCI/Worldcom,April 1999. CE 151 - Advanced Networks

  5. Multicasting • Multicast communications refers to one-to-many (group) communications. • IP Multicasting refers to the implementation of multicast communication in the Internet Unicast Broadcast Multicast CE 151 - Advanced Networks

  6. Multiple copies of the same message are transmitted on the same link Multicast using Unicast • Without support for multicast at the network layer: CE 151 - Advanced Networks

  7. At most one copy of a message on any link. With Network Layer Multicast Requires a set of mechanisms: Packet forwarding can send multiple copies of same packet Multicast routing algorithm that builds a spanning tree to reach all group members Hosts can join groups CE 151 - Advanced Networks

  8. Semantics of IP Multicast • IP multicast works as follows: • Multicast groups are identified by class D addresses… • 1110… • 224.0.0.0 - 239.255.255.255 • Every host (interface) can join/leave a multicast group dynamically • no access control • Every IP datagram sent to a multicast group is transmitted to all members of the group • no security, no “floor control” • IP multicast is unreliable CE 151 - Advanced Networks

  9. Socket Layer Stream Sockets Datagram Sockets Multicast Sockets TCP UDP IP IP Multicast IP Multicast Transport Layer • IP Multicasting only supports UDP as higher layer • There is no multicast TCP! User Layer Network Interface CE 151 - Advanced Networks

  10. Review • Goal of Network Layer multicast is group communication with at most one copy of a packet on any link. • Requires • Packet forwarding that can send multiple copies of a packet • Ability for hosts to join groups • Routing algorithm that builds a spanning tree to reach all group members • Only unreliable (UDP) transport service is defined for multicast. CE 151 - Advanced Networks

  11. Three Components of IP Multicast • IP Multicast Addressing • IP Group Management • Multicast Routing CE 151 - Advanced Networks

  12. Three Components of IP Multicast • IP Multicast Addressing • IP Group Management • Multicast Routing CE 151 - Advanced Networks

  13. Multicast Addresses • All Class D addresses are multicast addresses: • Multicast addresses are dynamically (i.e. not!) assigned. • IP datagrams sent to a multicast address are forwarded to all hosts that have joined the group • When an application is terminated, the multicast address is (implicitly… i.e. not!) released. CE 151 - Advanced Networks

  14. Reserved Multicast Addresses • The address range 224.0.0.0 - 224.0.0.255 is reserved for routing protocols and other low-level topology discovery or maintenance protocols • Multicast routers should not forward any multicast datagram with destination addresses in this range. • Examples of special and reserved Class D addresses… • 224.0.0.1 All systems on this subnet • 224.0.0.2 All routers on this subnet • 224.0.1.1 NTP (Network Time Protocol) • 224.0.0.9 RIPv2 CE 151 - Advanced Networks

  15. Multicast Address Translation • In Ethernet MAC addresses, a multicast address is identified by setting the lowest bit of the “most left byte” • Generally filtered in hardware (on the Ethernet NIC) • Sometimes filtered in software (in the Ethernet device driver) CE 151 - Advanced Networks

  16. Multicast Address Translation CE 151 - Advanced Networks

  17. Review • Multicast groups are defined by class D IP addresses • In binary, start with “1110” • 224.0.0.0 - 239.255.255.255 • IP addresses can often be directly mapped to MAC addresses • E.g. Ethernet CE 151 - Advanced Networks

  18. Three Components of IP Multicast • IP Multicast Addressing • IP Group Management • Multicast Routing CE 151 - Advanced Networks

  19. IGMP • The Internet Group Management Protocol (IGMP) is a simple protocol for the support of IP multicast. • Defined in RFC 1112. • Operates on an IP subnet. • Used by routers to keep track of membership in a multicast group. • Support for: • Joining a multicast group • Querying group membership • Sending membership reports CE 151 - Advanced Networks

  20. IGMP Protocol • A host sends an IGMP report when it joins a multicast group • Multiple processes can join a group... a report is only sent for the first one. • No report is sent when a host leaves a group • A router regularly multicasts an IGMP query to all hosts • Group address is set to zero. • A host responds to an IGMP query with an IGMP report. • Routers • Track which multicast groups have members on each subnet (but does not keep track of which hosts have joined a group). • Forward packets on subnets that provide access to group members (directly or as transit). CE 151 - Advanced Networks

  21. IGMP Protocol CE 151 - Advanced Networks

  22. IGMP Packet Format • IGMP messages are only 8 bytes long • Type: 1 = sent by router, 2 = sent by host CE 151 - Advanced Networks

  23. IGMP Protocol CE 151 - Advanced Networks

  24. Networks with multiple routers • Only one router generates IGMP queries (Querier) • Router with smallest IP address becomes the querier on a network. • One router forwards multicast packets to the network (Forwarder). CE 151 - Advanced Networks

  25. Review • IGMP used to track group membership on subnets. • Supports • Hosts joining multicast groups • Routers querying subnets for current membership • Hosts reporting membership (in response to queries) • Hosts • Notify routers when they join a group • Respond to router queries • Are not required to notify routers when they leave a group CE 151 - Advanced Networks

  26. Review • Routers • Track which multicast groups have members on each subnet (but don't track which hosts have joined each group) • Forward traffic for a group only on subnets that provide access to group members (directly or as transit) • One router is selected on each subnet to serve as Querier and Forwarder CE 151 - Advanced Networks

  27. Three Components of IP Multicast • IP Multicast Addressing • IP Group Management • Multicast Routing CE 151 - Advanced Networks

  28. Goal of Multicast Routing • Build a spanning tree that reaches all members of a multicast group CE 151 - Advanced Networks

  29. Multicast routing as a graph problem • Problem: Embed a tree such that all multicast group members are connected by the tree CE 151 - Advanced Networks

  30. Multicast routing as a graph problem • Problem: Embed a tree such that all multicast group members are connected by the tree • Solution 1: Shortest Path Tree or source-based tree- build a tree that minimizes the path cost from the source to each receiver • If there are multiple senders, need one tree per sender • Easy to compute CE 151 - Advanced Networks

  31. Multicast routing as a graph problem • Problem: Embed a tree such that all multicast group members are connected by the tree • Solution 2: Minimum-Cost Tree - build a tree that minimizes the total cost of the edges • Single tree serves all senders • Very expensive to compute (not practical for more than 30 nodes) CE 151 - Advanced Networks

  32. Multicast routing in practice • Routing Protocols implement one of two approaches: • Source-based Tree: • Essentially implements Solution 1. • Builds one shortest path tree for each sender • Tree is built from receiver to the sender • Use reverse path forwarding • Shared- or Core-based Tree: • Build a single distribution tree that is shared by all senders • Does not use Solution 2 (because it is too expensive) • Selects one router as a “core” (also called “rendezvous point”) • All receivers build a shortest path to the core • Use reverse path forwarding CE 151 - Advanced Networks

  33. Reverse Path Forwarding (RPF) • Build a shortest path tree by using unicast routing tables… backwards. • Reversein the sense that the path used to forward unicast traffic tothe node is used to forward multicast traffic fromthe node. • Routers join the tree when they have downstream group members • Notify the unicast next hop router towards the root that they wants to join the tree. • The multicast tree is composed of interfaces • On subnets with source or group members (receivers) • That connect a router to its RPF neighbor, or • With neighbors for which the router is their RPF neighbor • Multicast forwarding • Accept packets from interfaces on the multicast tree, and • Forward them out all other interfaces on the tree CE 151 - Advanced Networks

  34. Multicast Routing table • Routing table entries differ for source-based and for core-based trees… • Source-based tree: (Source, Group) or (S, G) entry. • Core-based tree: (*, G) entry. CE 151 - Advanced Networks

  35. Multicast routing in practice • Multicast routing algorithms in implement one of two approaches: • Source-based tree: • Establish a reverse path to the source(s) • Core-based tree: • Establish a reverse path to the core router (or RP) CE 151 - Advanced Networks

  36. Multicast routing in practice • Multicast routing algorithms in implement one of two approaches: • Source-based tree: • Establish a reverse path to the source(s) • Core-based tree: • Establish a reverse path to the core router (or RP) CE 151 - Advanced Networks

  37. Building a source-based tree -Flood & Prune Member • Determine RPF interfaces from unicast routing tables Non-member CE 151 - Advanced Networks

  38. Building a source-based tree -Flood & Prune Member • Flood - forward packets that arrive on RPF interface on all non-RPF interfaces Non-member CE 151 - Advanced Networks

  39. Building a source-based tree -Flood & Prune Member • Receiver drops packets not received on RPF interface Non-member CE 151 - Advanced Networks

  40. Building a source-based tree -Flood & Prune Member • Prune - send a prune message • When a packet is received on a non-RPF interface, or • When have no downstream receivers • Disables routing table entry Non-member CE 151 - Advanced Networks

  41. Pruning • Prune message temporarily disables a routing table entry • Effect: Removes a link from the multicast tree • No multicast messages are sent on a pruned link • Prune message is sent in response to a multicast packet • Why is routing table only temporarily disabled? • Who sends prune messages? • A router… • …with no group members on directly connected subnets • …which has received prune messages from routers on all non-RPF interfaces • A router that has received a packet from a non-RPF neighbor CE 151 - Advanced Networks

  42. Building a source-based tree -Flood & Prune Member • When a receiver joins need to re-activate a pruned routing table entry • Graft - send a Graft message to disable previous prune, and re-activate a routing table entry. Non-member CE 151 - Advanced Networks

  43. Building a source-based tree -Explicit Join Member • This only works if the receiver knows the source • Explicit-Join - Receiver sends a Join message to RPF neighbor, creates (S,G) routing table entry, and is forwarded. Non-member CE 151 - Advanced Networks

  44. Multicast routing in practice • Multicast routing algorithms in implement one of two approaches: • Source-based tree: • Establish a reverse path to the source(s) • Core-based tree: • Establish a reverse path to the core router (or RP) CE 151 - Advanced Networks

  45. Building a core-based tree • One router is the core • Receiver sends a Join message to RPF neighbor with respect to core • Join message creates (*, G) routing table entry CE 151 - Advanced Networks

  46. Building a core-based tree • Source sends data to the core • Core forwards data according to routing table entry CE 151 - Advanced Networks

  47. Existing Multicast Routing Protocols • Distance Vector Multicast Routing Protocol (DVMRP): • First multicast routing protocol • Implements flood-and-prune • Multicast Open Shortest Path First (MOSPF): • Multicast extensions to OSPF. Each router calculates a shortest-path tree based on link state database • Not widely used • Core Based Tree (CBT): • First core-based tree routing protocol • Protocol Independent Multicast (PIM) (RFC 2362): • Two modes: PIM Dense Mode (PIM-DM) and PIM Sparse Mode (PIM-SM). • PIM-DM - source-based trees using flood-and-prune • PIM-SM - core-based trees as well as source-based trees with explicit joins. CE 151 - Advanced Networks

  48. PIM Messages (PIM version 2) • Encapsulated in IP datagrams with protocol number 103. • PIM messages can be sent as unicast or multicast packet • 224.0.0.13 is reserved as the ALL-PIM-Routers group CE 151 - Advanced Networks

  49. PIM-DM: PIM Dense Mode • Implements flood-and-prune • Orange = multicast data • Blue= PIM message CE 151 - Advanced Networks

  50. PIM-SM: PIM Sparse Mode • Core called rendezvous-point (RP) • Receivers know RP (statically configured or dynamically elected) • When receiver joins, a Join message is sent to RP on RPF path. CE 151 - Advanced Networks

More Related