• Unicast • Broadcast • Multicast • Anycast
Total Page:16
File Type:pdf, Size:1020Kb
Communication modes • Unicast • Multicast • One sender • One sender • One receiver • N receivers S-38.3191 Verkkopalvelujen tuotanto • Broadcast • Anycast S-38.3191 Network Service Provisioning • One sender • One sender Lecture 5: Multicast 23.10.2008 • All receive • One receiver on a group Juha Järvinen @ netlab.tkk.fi Mostly based on material by Lic.Tech. Marko Luoma Page 1 Page 2 S-38.3191: Multicast Forwarding modes Multicast Point-to-point It is all about determining where - From single ingress to single egress - are the receivers - ’link’ - Is the knowleddge of receivers maintained - Broadcast vs multicast Point-to-multipoint - the replication of packets should be done - From single ingress to multiple egress - Is there knowledge about service within the network - ’tree’ - Source replication vs network replication Multipoint-to-multipoint - From multiple ingress to multiple egress - ’mesh’ Page 3 S-38.3191: Multicast Page 4 S-38.3191: Multicast Multicast forwarding Forwarding Problem Unicast forwarding - How to form a point-to-multipoint structure that is efficient - Forwarding of packets towards destination via the shortest path - e.g. Shortest path tree - SPF is based on weighting of IGP Reverse path forwarding Reverse path forwarding - Logic: - Forwarding of packets away from the shortest path to the sender - Send out replicate of the packet to all interfaces except to the one with the shortest path to the sender - No knowledge of the destination only about the source - That is where the packet should have come in the first place Reverse path forwarding check - Dropped duplicates along the way on the network - Accept packets only from the link which points to SPF towards source - Wasted resources - From the sender to all other stations on the network - Wasted resources Page 5 S-38.3191: Multicast Page 6 S-38.3191: Multicast Building an intelligent tree 1. Router R1 checks: Did the Sender data packet arrive on the Requirements interface with the shortest path 2. Router R2 accepts packets to the Sender ? Yes, so it accepts - We know where the receivers are sent from Router R1 because the packet, duplicates it, and - Group management protocol (IGMP) that is the shortest path to the forwards the packet out all other Sender . The packet gets sent interfaces except the interface - Receivers express their existence to the network out all interfaces. that is the shortest path to the R1 sender (i.e the interface the join, leave packet arrived on). - We are able to communicate that knowledge within the network - Multicast routing protocol (PIM) Drop - Activation of RPF on selected downstream links 3. Router R2 drops R2 R3 packets that arrive from Drop Router R3 because that is not the shortest path to the sender. Avoids cycles. R4 R5 R6 R7 Page 7 S-38.3191: Multicast Page 8 S-38.3191: Multicast Building an intelligent tree If we want to minimize the state information within the core we can build a shared tree for each sender RP - A single point within the network acts as a relay agent data - Traffic in unicast sent to relay point which then multicasts it forward in RPF-tree R R - Efficiency depends on the distribution of sources and receivers in relation to location of relay -point data - Usually very uneffiecient due to sparse nature of receivers and variable locations of R R R sources data R R R R R Sender Receiver 2 Page 9 S-38.3191: Multicast Page 10 S-38.3191: Multicast Receiver 1 Building an intelligent tree If we want to achieve maximal efficiency, we must use shortest paths toward source of the information not towards common replication point RP - Use explicit source rooted RPF-tree - Joining/grafting to multicast tree at the lowest level possible R R - Pruning from the tree if there are no receivers below R R R R R R R R data data data data Sender Receiver 2 Page 11 S-38.3191: Multicast Page 12 S-38.3191: Multicast Receiver 1 PIM PIM Is a combination of shared tree and source specific tree operation Different Modes - Infrequent packets are replicated in a single point (shared tree) - Sparse Mode (SM) - Randevouz point - is the most widely deployed as of 2006 - High data volumes are transferred in more optimal way (source specific tree) - Dense Mode (DM) - Decission based on predefined policy - Source Specific Mode (SSM) - Data rate greater than x - Bidirectional Mode (Bidir) [Also commonly known as Sparse-Dense Mode - Amount of bytes greater than x (SDM)] SSM and Bidir are simpler and more scalable variations developed more recently and gaining in popularity Page 13 S-38.3191: Multicast Page 14 S-38.3191: Multicast PIM-SM Multicast Distribution Trees Is a protocol for efficiently routing to multicast groups that may span wide- • Shared trees • Source specific tree area (and inter-domain) internets. – Uses less resources from the network – Takes more resources from the network It is not dependent on any particular unicast routing protocol for topology • Amount of state information is depent of N(*,G) • Amount of state information is dependent of N(S,G) – All sources (*) are mapped into single distribution tree – Every source (S) has its own distribution tree per group discovery per group (G) (G) - sparse-mode because it is suitable for groups where a very low percentage of – Usually suboptimal path from the source to all • Optimal path from the source to all receivers within receivers within the group the group the nodes (and their routers) will subscribe to the multicast session. »Unless RP is rooted at the source – Minimizes the IGP cost towards source from each - Unlike earlier dense-mode multicast routing protocols such as DVMRP and PIM- receiver DM which flooded packets everywhere and then pruned off branches where – Optimal for one-to-many distribution there were no receivers, PIM-SM explicitly constructs a tree from each sender to (point-to-multipoint) the receivers in the multicast group. Multicast packets from the sender then follow this tree. Page 15 S-38.3191: Multicast Page 16 S-38.3191: Multicast Rendezvous Rendezvous Point Point RP RP Join R R R R Join R R R R R R Join DR1 R DR2 R R DR1 R DR2 R R 1. Receiver 1 joins the multicast 2. Routers along the path to RP create 1. Sender begins sending to a multicast group. 3. The RP decapsulates the packet group. Designated Router DR2 router state for the group, adding and sends it out the shared tree. sends a Join message toward the themselves to the shared tree. 2. Designated Router DR1 encapsulates the RP . Periodically, DR2 resends the packets from Sender in Register messages and Join message in case it was lost. unicasts them to RP . Page 17 S-38.3191: Multicast Receiver 1 Page 18 S-38.3191: Multicast Receiver 1 Source Specific 1. RP sees traffic from Sender at a Join 3. RP sees unencapsulated traffic Rendezvous rate > threshold. It sends source Rendezvous from Sender and sends a Register Point Point RP specific join request toward Sender . RP Stop message to DR1 . DR1 then Prune stops sending encapsulated traffic 2. DR1 adds DR2 to the to RP . R R source specific tree for R R Sender . Prune R R R R R R Source Specific Prune Join Join DR1 R DR2 R R DR1 R DR2 R R 2. DR1 adds RP to the source specific tree 1. DR2 sees traffic from Sender at a rate > 3. DR2 sees traffic from Sender coming from for Sender. threshold. It sends a source specific join request RPF tree , it sends a Source Specific Prune towards Sender. message toward RP. This removes DR2 from the shared tree . Page 19 S-38.3191: Multicast Receiver 1 Page 20 S-38.3191: Multicast Receiver 1 Rendezvous Point (RP) Interdomain multicast Location of RP can be based on Need to transfer multicast routing information across domain borders - Static configuration of served groups - Active groups (senders and receivers) - Bootstrap process with priorities - Multicast Source Discovery Protocol (MSDP) - Anycast operation - Unicast routes for RPF - Multicast BGP (MBGP) Bootstrap Router (BSR) - Dynamically elected (like OSPF DR election process) - Constructs a set of RP IP addresses based on received Candidate-RP messages Page 21 S-38.3191: Multicast Page 22 S-38.3191: Multicast 1. Source registration in to PIM-RP is announced to MSDP peers Domain E 2. Receiver joins to group via PIM-SM Domain E PIM-SM RP RP “Join” SA r r Domain C Domain C Join (*, 224.2.2.2) RP RP SA Domain B SA SA Domain B RP RP PIM-SM SA “Join” RP RP SA Domain D Domain D s RP s RP Domain A Register Domain A Page 23 S-38.3191: Multicast 192.1.1.1, 224.2.2.2 Page 24 S-38.3191: Multicast 3. Traffic flows from the source to receiver via shared trees Domain E 4. Source specific tree optimisations are done for the traffic flow Domain E RP RP r r Domain C Domain C RP RP Domain B Domain B RP RP Traffic Traffic RP RP Domain D Domain D s RP s RP Domain A Domain A Page 25 S-38.3191: Multicast Page 26 S-38.3191: Multicast MBGP Domain E Multiprotocol Extensions to BGP (RFC 2283). - Tag unicast prefixes as multicast source prefixes for intra-domain multicast RP routing protocols to do RPF checks. r - Why same routes two times Domain C - Allows for inter-domain RPF checking where unicast and multicast paths are non- congruent RP Domain B - Inter-provider relationships Policies ;-) RP Traffic RP Domain D s RP Domain A Page 27 S-38.3191: Multicast Page 28 S-38.3191: Multicast MBGP Multicast over Layer 3 VPNs Different NLRI (Network Layer Reachability Information) for unicast and multicast routes - Address Family Information (AFI) = 1 (IPv4) - SAFI = 1 (NLRI is used for unicast) - SAFI = 2 (NLRI is used for multicast RPF check) - SAFI