Unicast vs Multicast Unicast Server Router Multicast Server

  • Slides: 49
Download presentation
Unicast vs. Multicast Unicast Server Router Multicast Server Router 2214 1197_05_2000_c 2 © 2000,

Unicast vs. Multicast Unicast Server Router Multicast Server Router 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 1

Multicast Addressing • IP Multicast Group Addresses – 224. 0. 0. 0– 239. 255

Multicast Addressing • IP Multicast Group Addresses – 224. 0. 0. 0– 239. 255 – Class “D” Address Space • High order bits of 1 st Octet = “ 1110” • Reserved Link-local Addresses – 224. 0. 0. 0– 224. 0. 0. 255 – Transmitted with TTL = 1 – Examples: • • • 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 224. 0. 0. 1 224. 0. 0. 2 224. 0. 0. 4 224. 0. 0. 5 224. 0. 0. 13 All systems on this subnet All routers on this subnet DVMRP routers OSPF routers PIMv 2 Routers 2

Multicast Addressing IP Multicast MAC Address Mapping (FDDI and Ethernet) 32 Bits 1110 5

Multicast Addressing IP Multicast MAC Address Mapping (FDDI and Ethernet) 32 Bits 1110 5 Bits Lost 28 Bits 239. 255. 0. 1 01 -00 -5 e-7 f-00 -01 25 Bits 23 Bits 48 Bits 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 3

Multicast Addressing IP Multicast MAC Address Mapping (FDDI & Ethernet) Be Aware of the

Multicast Addressing IP Multicast MAC Address Mapping (FDDI & Ethernet) Be Aware of the 32: 1 Address Overlap 32 - IP Multicast Addresses 224. 1. 1. 1 224. 129. 1. 1 225. 129. 1. 1. . . 238. 1. 1. 1 238. 129. 1. 1 239. 129. 1. 1 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 1 - Multicast MAC Address (FDDI and Ethernet) 0 x 0100. 5 E 01. 0101 4

Host-Router Signaling: IGMP • How hosts tell routers about group membership • Routers solicit

Host-Router Signaling: IGMP • How hosts tell routers about group membership • Routers solicit group membership from directly connected hosts • RFC 1112 specifies version 1 of IGMP Supported on Windows 95 • RFC 2236 specifies version 2 of IGMP Supported on latest service pack for Windows and most UNIX systems • IGMP version 3 is specified in IETF draft-ietf-idmr-igmp-v 3 -03. txt 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 5

Host-Router Signaling: IGMP Joining a Group H 1 H 2 224. 1. 1. 1

Host-Router Signaling: IGMP Joining a Group H 1 H 2 224. 1. 1. 1 H 3 Report • Host sends IGMP Report to join group 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 6

Host-Router Signaling: IGMP Maintaining a Group 224. 1. 1. 1 X H 1 Suppressed

Host-Router Signaling: IGMP Maintaining a Group 224. 1. 1. 1 X H 1 Suppressed 224. 1. 1. 1 Report H 2 224. 1. 1. 1 X H 3 Suppressed Query • Router sends periodic Queries to 224. 0. 0. 1 • One member per group per subnet reports • Other members suppress reports 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 7

Host-Router Signaling: IGMP Leaving a Group (IGMPv 2) H 1 H 2 224. 1.

Host-Router Signaling: IGMP Leaving a Group (IGMPv 2) H 1 H 2 224. 1. 1. 1 H 3 Leave to #1 224. 0. 0. 2 Group Specific Query to 224. 1. 1. 1 #2 • • Host sends Leave message to 224. 0. 02 Router sends Group specific query to 224. 1. 1. 1 No IGMP Report is received within ~3 seconds Group 224. 1. 1. 1 times out 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 8

Multicast Distribution Trees Shortest Path or Source Distribution Tree Source 1 Notation: (S, G)

Multicast Distribution Trees Shortest Path or Source Distribution Tree Source 1 Notation: (S, G) S = Source G = Group Source 2 A B C Receiver 1 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. F D E Receiver 2 9

Multicast Distribution Trees Shortest Path or Source Distribution Tree Source 1 Notation: (S, G)

Multicast Distribution Trees Shortest Path or Source Distribution Tree Source 1 Notation: (S, G) S = Source G = Group Source 2 A B C Receiver 1 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. F D E Receiver 2 10

Multicast Distribution Trees Shared Distribution Tree Notation: (*, G) * = All Sources G

Multicast Distribution Trees Shared Distribution Tree Notation: (*, G) * = All Sources G = Group A B C Receiver 1 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. D (RP) E F (RP) PIM Rendezvous Point Shared Tree Receiver 2 11

Multicast Distribution Trees Shared Distribution Tree Source 1 Notation: (*, G) * = All

Multicast Distribution Trees Shared Distribution Tree Source 1 Notation: (*, G) * = All Sources G = Group Source 2 A B C D (RP) E F (RP) PIM Rendezvous Point Shared Tree Source Tree Receiver 1 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. Receiver 2 12

Multicast Distribution Trees Characteristics of Distribution Trees • Source or Shortest Path trees Uses

Multicast Distribution Trees Characteristics of Distribution Trees • Source or Shortest Path trees Uses more memory O(S x G) but you get optimal paths from source to all receivers; minimizes delay • Shared trees Uses less memory O(G) but you may get sub-optimal paths from source to all receivers; may introduce extra delay 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 13

Multicast Forwarding • Multicast Routing is backwards from Unicast Routing – Unicast Routing is

Multicast Forwarding • Multicast Routing is backwards from Unicast Routing – Unicast Routing is concerned about where the packet is going. – Multicast Routing is concerned about where the packet came from. • Multicast Routing uses “Reverse Path Forwarding” 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 14

Multicast Forwarding Reverse Path Forwarding (RPF) • What is RPF? A router forwards a

Multicast Forwarding Reverse Path Forwarding (RPF) • What is RPF? A router forwards a multicast datagram only if received on the up stream interface to the source (i. e. it follows the distribution tree). • 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. 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 15

Multicast Forwarding Example: RPF Checking Source 151. 10. 3. 21 RPF Check Fails Packet

Multicast Forwarding Example: RPF Checking Source 151. 10. 3. 21 RPF Check Fails Packet arrived on wrong interface! Mcast Packets 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 16

Multicast Forwarding A closer look: RPF Check Fails X Multicast Packet from Source 151.

Multicast Forwarding A closer look: RPF Check Fails X Multicast Packet from Source 151. 10. 3. 21 S 0 RPF Check Fails! Unicast Route Table Network Interface 151. 10. 0. 0/16 S 1 198. 14. 32. 0/24 S 0 204. 1. 16. 0/24 E 0 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. S 1 S 2 E 0 Packet Arrived on Wrong Interface! Discard Packet! 17

Multicast Forwarding A closer look: RPF Check Succeeds Multicast Packet from Source 151. 10.

Multicast Forwarding A closer look: RPF Check Succeeds Multicast Packet from Source 151. 10. 3. 21 S 0 S 1 RPF Check Succeeds! Unicast Route Table Network Interface 151. 10. 0. 0/16 S 1 198. 14. 32. 0/24 S 0 204. 1. 16. 0/24 E 0 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. S 2 E 0 Packet Arrived on Correct Interface! Forward out all outgoing interfaces. (i. e. down the distribution tree) 18

Multicast vs. Unicast Routing Multicast Routing is not unicast routing. You have to think

Multicast vs. Unicast Routing Multicast Routing is not unicast routing. You have to think of it differently. It is not like OSPF. It is not like RIP. It is not like anything you may be familiar with. 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 19

Types of Multicast Protocols • Dense-mode • • Uses “Push” Model Traffic Flooded throughout

Types of Multicast Protocols • Dense-mode • • Uses “Push” Model Traffic Flooded throughout network Pruned back where it is unwanted Flood & Prune behavior (typically every 3 minutes) • Sparse-mode • Uses “Pull” Model • Traffic sent only to where it is requested • Explicit Join behavior 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 20

Multicast Protocol Overview • Currently, there are four multicast routing protocols: – DVMRPv 3

Multicast Protocol Overview • Currently, there are four multicast routing protocols: – DVMRPv 3 (Internet-draft) – DVMRPv 1 (RFC 1075) is obsolete and unused. A variant is currently implemented – MOSPF (RFC 1584) – PIM-DM (Internet-draft) – PIM-SM (RFC 2362 - v 2) – Others (CBT, OCBT, QOSMIC, SM, etc. ) 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 21

DVMRP Overview • Dense Mode Protocol – Distance vector-based • Similar to RIP •

DVMRP Overview • Dense Mode Protocol – Distance vector-based • Similar to RIP • Infinity = 32 hops • Subnet masks in route advertisements – DVMRP Routes used: • For RPF Check • To build Truncated Broadcast Trees (TBTs) – Uses special “Poison-Reverse” mechanism – Uses Flood and Prune operation • Traffic initially flooded down TBT’s • TBT branches are pruned where traffic is unwanted. • Prunes periodically time-out causing reflooding. 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 22

DVMRP—Source Trees • Truncated Broadcast Trees Are Built using Best DVMRP Metrics Back to

DVMRP—Source Trees • Truncated Broadcast Trees Are Built using Best DVMRP Metrics Back to Source Network. • Lowest IP Address Used in Case of a Tie. (Note: IP Address of D < C < B < A) Source Network A B mrouted 1 mrouted 33 mrouted 1 1 mrouted C X 33 3 2 mrouted 2 D 35 34 E 35 3 2 n m Y mrouted Route for source network of metric “n” Poison reverse (metric + infinity) sent to upstream “parent” router. Router depends on “parent” to receive traffic for this source. Resulting Truncated Broadcast Tree for Source Network 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 23

DVMRP—Source Trees Forwarding onto Multi-access Network X • Both B and C have routes

DVMRP—Source Trees Forwarding onto Multi-access Network X • Both B and C have routes to network X. A • To avoid duplicates, only one router can be “Designated Forwarder” for network X. mrouted 1 1 mrouted B mrouted 2 C 2 • Router with best metric is elected as the “Designated Forwarder”. • Lowest IP address used as tie-breaker. • Router C wins in this example. (Note: IP Address of C < B ) n 2214 1197_05_2000_c 2 Route advertisement for network X of metric “n” © 2000, Cisco Systems, Inc. 24

DVMRP—Source Trees Source Network “S 1” A Resulting Truncated Broadcast Tree for Source Network

DVMRP—Source Trees Source Network “S 1” A Resulting Truncated Broadcast Tree for Source Network “S 1” B mrouted X mrouted C mrouted D mrouted E Y mrouted S 1 Source Tree 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 25

DVMRP—Source Trees A B mrouted Each Source Network has it’s Own Truncated Broadcast Tree

DVMRP—Source Trees A B mrouted Each Source Network has it’s Own Truncated Broadcast Tree mrouted X mrouted C mrouted D Note: IP Address of D < C < B < A S 2 Source Tree 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. mrouted E Y mrouted Source “S 2” 26

DVMRP—Flood & Prune Source “S” A mrouted Initial Flooding of (S, G) Multicast Packets

DVMRP—Flood & Prune Source “S” A mrouted Initial Flooding of (S, G) Multicast Packets Down Truncated Broadcast Tree B mrouted X mrouted 1 mrouted C mrouted D mrouted E Y mrouted Receiver 1 (Group “G”) Truncated Broadcast Tree based on DVMRP route metrics (S, G) Multicast Packet Flow 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 27

DVMRP—Flood & Prune Source “S” A mrouted B mrouted Routers C is a Leaf

DVMRP—Flood & Prune Source “S” A mrouted B mrouted Routers C is a Leaf Node so it sends an “(S, G) Prune” Message Router B Prunes interface. X mrouted Prune mrouted C mrouted D mrouted E Y mrouted Receiver 1 (Group “G”) Truncated Broadcast Tree based on DVMRP route metrics (S, G) Multicast Packet Flow 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 28

DVMRP—Flood & Prune A mrouted Source “S” Routers X, and Y are also Leaf

DVMRP—Flood & Prune A mrouted Source “S” Routers X, and Y are also Leaf Nodes so they send “Prune (S, G)” Messages B Router E prunes interface. Prune mrouted X mrouted C mrouted D mrouted E Prune Y mrouted Receiver 1 (Group “G”) Truncated Broadcast Tree based on DVMRP route metrics (S, G) Multicast Packet Flow 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 29

DVMRP—Flood & Prune Source “S” A mrouted B Router E is now a Leaf

DVMRP—Flood & Prune Source “S” A mrouted B Router E is now a Leaf Node; it sends an (S, G) Prune message. Router D prunes interface. mrouted X mrouted Prune mrouted C mrouted D mrouted E Y mrouted Receiver 1 (Group “G”) Truncated Broadcast Tree based on DVMRP route metrics (S, G) Multicast Packet Flow 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 30

DVMRP—Flood & Prune Source “S” A mrouted B Final Pruned State mrouted X mrouted

DVMRP—Flood & Prune Source “S” A mrouted B Final Pruned State mrouted X mrouted C mrouted D mrouted E Y mrouted Receiver 1 (Group “G”) Truncated Broadcast Tree based on DVMRP route metrics (S, G) Multicast Packet Flow 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 31

DVMRP—Grafting Source “S” A mrouted B Receiver 2 joins Group “G” Router Y sends

DVMRP—Grafting Source “S” A mrouted B Receiver 2 joins Group “G” Router Y sends a “Graft (S, G)” Message mrouted X mrouted C mrouted D mrouted E Graft Y mrouted Receiver 1 (Group “G”) Truncated Broadcast Tree based on DVMRP route metrics Receiver 2 (Group “G”) (S, G) Multicast Packet Flow 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 32

DVMRP—Grafting Source “S” Router E Responds with a “Graft-Ack” A mrouted B Sends its

DVMRP—Grafting Source “S” Router E Responds with a “Graft-Ack” A mrouted B Sends its Own “Graft (S, G) Message mrouted X mrouted Graft mrouted C mrouted D mrouted E Graft-Ack Receiver 1 (Group “G”) Truncated Broadcast Tree based on DVMRP route metrics Y mrouted Receiver 2 (Group “G”) (S, G) Multicast Packet Flow 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 33

DVMRP—Grafting Source “S” Router D Responds with a “Graft-Ack” A mrouted B Begins Forwarding

DVMRP—Grafting Source “S” Router D Responds with a “Graft-Ack” A mrouted B Begins Forwarding (S, G) Packets mrouted X mrouted Graft-Ack mrouted C mrouted D mrouted E Y mrouted Receiver 1 (Group “G”) Truncated Broadcast Tree based on DVMRP route metrics Receiver 2 (Group “G”) (S, G) Multicast Packet Flow 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 34

PIM-DM • Protocol Independent – Supports all underlying unicast routing protocols including: static, RIP,

PIM-DM • Protocol Independent – Supports all underlying unicast routing protocols including: static, RIP, IGRP, EIGRP, IS-IS, BGP, and OSPF • Uses reverse path forwarding – Floods network and prunes back based on multicast group membership – Assert mechanism used to prune off redundant flows • Appropriate for. . . – Smaller implementations and pilot networks 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 35

PIM-DM Flood & Prune Initial Flooding Source (S, G) State created in every router

PIM-DM Flood & Prune Initial Flooding Source (S, G) State created in every router in the network! Multicast Packets Receiver 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 36

PIM-DM Flood & Prune Pruning Unwanted Traffic Source Multicast Packets Prune Messages Receiver 2214

PIM-DM Flood & Prune Pruning Unwanted Traffic Source Multicast Packets Prune Messages Receiver 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 37

PIM-DM Flood & Prune Results After Pruning Source (S, G) State still exists in

PIM-DM Flood & Prune Results After Pruning Source (S, G) State still exists in every router in the network! Multicast Packets Flood & Prune process repeats every 3 minutes!!! 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. Receiver 38

PIM-SM (RFC 2362) • Supports both source and shared trees – Assumes no hosts

PIM-SM (RFC 2362) • Supports both source and shared trees – Assumes no hosts want multicast traffic unless they specifically ask for it • Uses a Rendezvous Point (RP) – Senders and Receivers “rendezvous” at this point to learn of each others existence. • Senders are “registered” with RP by their first-hop router. • Receivers are “joined” to the Shared Tree (rooted at the RP) by their local Designated Router (DR). • Appropriate for… – Wide scale deployment for both densely and sparsely populated groups in the enterprise – Optimal choice for all production networks regardless of size and membership density. 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 39

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

PIM-SM Shared Tree Join RP (*, G) State created only along the Shared Tree. (*, G) Join Shared Tree Receiver 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 40

PIM-SM Sender Registration RP Source (S, G) State created only along the Source Tree.

PIM-SM Sender Registration RP Source (S, G) State created only along the Source Tree. Traffic Flow Shared Tree Source Tree (S, G) Register (unicast) Receiver (S, G) Join 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 41

PIM-SM Sender Registration RP Source (S, G) traffic begins arriving at the RP via

PIM-SM Sender Registration RP Source (S, G) traffic begins arriving at the RP via the Source tree. Traffic Flow Shared Tree Source Tree (S, G) Register-Stop 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. (unicast) Receiver RP sends a Register-Stop back to the first-hop router to stop the Register process. (unicast) 42

PIM-SM Sender Registration RP Source Traffic Flow Source traffic flows natively along SPT to

PIM-SM Sender Registration RP Source Traffic Flow Source traffic flows natively along SPT to RP. Shared Tree Source Tree From RP, traffic flows down the Shared Tree to Receivers. Receiver 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 43

PIM-SM SPT Switchover RP Source Last-hop router joins the Source Tree. Traffic Flow Shared

PIM-SM SPT Switchover RP Source Last-hop router joins the Source Tree. Traffic Flow Shared Tree Source Tree (S, G) Join 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. Additional (S, G) State is created along new part of the Source Tree. Receiver 44

PIM-SM SPT Switchover RP Source Traffic Flow Shared Tree Source Tree (S, G)RP-bit Prune

PIM-SM SPT Switchover RP Source Traffic Flow Shared Tree Source Tree (S, G)RP-bit Prune 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. Traffic begins flowing down the new branch of the Source Tree. Receiver Additional (S, G) State is created along the Shared Tree to prune off (S, G) traffic. 45

PIM-SM SPT Switchover RP Source (S, G) Traffic flow is now pruned off of

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 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 46

PIM-SM SPT Switchover RP Source (S, G) traffic flow is no longer needed by

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 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. Receiver 47

PIM-SM SPT Switchover RP Source (S, G) Traffic flow is now only flowing to

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 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 48

Documentation • EFT/Beta Site Web Page: ftp: //ftpeng. cisco. com/ipmulticast. html 2214 1197_05_2000_c 2

Documentation • EFT/Beta Site Web Page: ftp: //ftpeng. cisco. com/ipmulticast. html 2214 1197_05_2000_c 2 © 2000, Cisco Systems, Inc. 49