algor lgorit ithms hms and and prot otocols ocols for or
play

Algor lgorit ithms hms and and Prot otocols ocols for or IP - PDF document

CMPE 252A: Computer Networks Set 10: Algor lgorit ithms hms and and Prot otocols ocols for or IP Mult ulticas icasting ing 1 Multicasting Uses: Multimedia broadcast : IP radio, webcasts Teleconferencing:


  1. CMPE 252A: Computer Networks Set 10: Algor lgorit ithms hms and and Prot otocols ocols for or IP Mult ulticas icasting ing 1 Multicasting  Uses:  Multimedia “ broadcast ” : IP radio, webcasts  Teleconferencing: multiparty videoconferencing with (Mbone, CUSeeMe)  Database replication  Distributed computing: immediate updates to all members  Real-time workgroups: multimedia collaboration  System management: concerted file updates to group of hosts  Stock ticker: low-bandwidth quotes to millions of hosts (cf. Pointcast)  Single LAN segment:  straightforward (IEEE 802 includes provision for MAC- layer multicast addresses) 2 Multicasting  Purpose: Support one-to-many and many-to-many communication needed for many applications across LANs and WANs.  Problem: To minimize the communication and processing overhead entailed in disseminating the same data packets to a group of receivers.  Goal: Identify the receiver set in a convenient way and distribute packets to the set efficiently.  Approach:  Disseminate packets over a tree spanning all the intended receivers.  Identify the receivers with a group identifier or the set of receiver identifiers. 3 1

  2. IP Multicast Architecture  Based on Steve Deering ’ s original proposal (SIGCOMM 88 Proceedings; his PhD thesis)  The architecture expands LAN multicasting to the Internet.  It consists of three basic components:  Group addressing based on globally unique identifiers (IP multicast addresses)  Separation of senders and receivers with anonymous receiver affiliation  A tree-based routing and group structure  Advantages: Efficiency of packet forwarding and simplicity  Disadvantages: Scalability, difficult to adapt to group dynamics, limited services 4 IP Multicast Idea Addresses used:  224.0.0.0 through 239.255.255.255 (the former Class D addresses in IPv4) Abstraction:   multicast address associated with multicast group  host joins / leaves group and receives address dynamically  sender host sends packets to multicast group (one or more destinations) not individuals!  routers deliver to all hosts that joined group address To avoid unnecessary duplication of  packets, routers must route packets using source and destination addresses, and an efficient routing structure must be built! 5 IP Internet Multicasting R R R R G R R R R R R R R R R G G 6 2

  3. Internet Group Management Protocol (IGMP) RFC 1112 - used by hosts and routers to exchange multicast group  membership information over LAN Multicast routers use IGMP in conjunction with a multicast routing protocol,  to support IP multicasting across the Internet. Takes advantage of broadcast nature of LAN to updates - IGMP v1 - 3  Two kinds of packets: query / response  7 Constructing The Multicast Routing Structure  If routers know the topology of the network, they can compute a multicast routing tree locally.  If routers maintain only distance or path information to destinations, multicast routing tree must be computed in a distributed manner.  Internet multicast routing protocols are based on reverse path forwarding. 8 Link-State Multicast  Goal: route packets to all hosts that joined multicast group address  Each host on a LAN periodically announces the groups to which it belongs (IGMP).  Each router uses link-state flooding to distribute  cost of links to neighbors  multicast addresses it wants to receive (hosts joined group)  Each router computes  regular unicast routing (Dijkstra's algorithm to compute shortest- path spanning tree for each source/group pair)  spanning tree for M nodes joining to each active multicast address  Augment link-state update messages to include set of groups that have members on a particular LAN.  Each router caches tree for currently active source/group pairs.  Possible algorithm:  find node with smallest host address among M  use Dijkstra to build tree, rooted at that host reaching all M nodes 9 3

  4. Limitations of Link-State Multicasting  Routers need to maintain too much state for each multicast group.  Routers need to send many more link-state updates.  Routers need to compute a multicast routing tree for each source of a group in the worst case, in order to decide when to forward packets. 10 Multicast Extensions to Open Shortest Path First (MOSPF)  RFC-1583: OSPFv2 - Interior Gateway Protocol (IGP) specifically designed to distribute unicast topology information among routers belonging to a single Autonomous System  RFC-1584: MOSPF routers maintain a current image of the network topology through the unicast OSPF link-state routing protocol  Extends OSPF by providing the ability to route multicast IP traffic  Extension is backward compatible so that routers running MOSPF will interoperate with non-multicast OSPF routers when forwarding unicast IP data traffic. 11 Distributed Approaches for Building Multicast Trees Approaches:  Source-based tree: One tree per source  shortest path trees  reverse path forwarding  Group-shared tree: Entire group uses one tree  Minimal spanning (Steiner)  Center-based trees 12 4

  5. Shortest Path Tree  Multicast forwarding tree: tree of shortest path routes from source to all receivers  Dijkstra ’ s algorithm S: source LEGEND R1 2 R4 router with attached 1 group member R2 router with no attached 3 4 R5 group member link used for forwarding, R3 i i indicates order link R7 R6 added by algorithm 13 Reverse Path Forwarding q Rely on router ’ s knowledge of unicast shortest path from it to sender q Each router has simple forwarding behavior: if (mcast datagram received on incoming link on shortest path back to “ center ” ) then flood datagram onto all outgoing links else ignore datagram 14 Reverse Path Forwarding: Example S: source LEGEND R1 R4 router with attached group member R2 router with no attached R5 group member R3 datagram is forwarded R7 R6 datagram should not be forwarded • Additional signaling is needed to attain the desired tree. • Use information about distance to source to avoid forwarding to equidistant neighbors (R2 and R4, R3 and R6) 15 5

  6. Reverse Path Forwarding: Pruning  “Prune” messages sent to upstream neighbors other than parent (eliminate chords).  Forwarding tree contains subtrees with no mcast group members  No need to forward datagrams down “receiver empty” subtree.  “ prune ” msgs sent upstream by router with no downstream group members LEGEND S: source R1 router with attached R4 group member router with no attached R2 P group member P R5 P prune message P links with multicast R3 forwarding R7 R6 16 Distance-Vector Multicast Routing Protocol (DVMRP)  Implemented by the mrouted program.  Specified in RFC-1075.  Implemented version differs in packet format, different tunnel format, additional packet types.  Maintains routing knowledge via a distance- vector routing protocol:  Much like RIP, described in RFC-1058  Routers maintain hop count to all possible multicast sources. 17 DVMRP  DVMRP: distance vector multicast routing protocol, RFC1075  flood and prune: reverse path forwarding, source-based tree  RPF tree based on DVMRP ’ s own routing tables constructed by communicating DVMRP routers  no assumptions about underlying unicast  initial datagram to mcast group flooded everywhere via RPF  routers not wanting group: send upstream prune msgs 18 6

  7. DVMRP: continued…  soft state: DVMRP router periodically (1 min.) “ forgets ” branches are pruned:  mcast data again flows down un-pruned branch  downstream router: re-prune or else continue to receive data  routers can quickly regraft to tree  following IGMP join at leaf  odds and ends  Mbone routing was done using DVMRP  Replaced by PIM 19 Tunneling How do we connect “ islands ” of multicast routers in a “ sea ” of unicast routers? logical topology physical topology q mcast datagram encapsulated inside “ normal ” (non-multicast-addressed) datagram q normal IP datagram sent thru “ tunnel ” via regular IP unicast to receiving mcast router q receiving mcast router unencapsulates to get mcast datagram 20 Problems with Basic Approach  Flooding the Internet to establish a multicast routing tree is not an option!  This is the key reason why multicasting (based on DVMRP) cannot be deployed on a large scale.  The problem stems from the lack of addressing information in an IP multicast address!  Where is a multicast group on the Internet?  The solution to this problem is to use special nodes as the “ address ” of a group 21 7

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend