Ip Multicast Routing
Total Page:16
File Type:pdf, Size:1020Kb
#CLUS Introduction to IP Multicast BRKIPM-1261 Beau Williamson CCIE R/S #1346 Emeritus CiscoLive Distinguished Speaker Twitter: @Mr_Multicast #CLUS Session Goals • To provide you with an Agenda understanding of the concepts, mechanics and protocols used to build IP multicast networks. • To enable you to ask the right questions, and make the correct architectural decisions in deploying and maintaining an IP Multicast enabled network. • To prove that Multicast doesn’t have to be: • Hard • Scary #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 3 Agenda • Multicast Fundamentals • Source-Specific Multicast Geekometer (SSM) • Bidirectional Multicast (Bidir) • Any-Source Multicast (ASM) • ASM Redundant RP Choices • Multicast at Layer 2 • Multicast over MPLS – mLDP • Bit-Indexed Explicit Replication – BIER • Inter-domain IP Multicast • IPv6 Multicast #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 4 Cisco Webex Teams Questions? Use Cisco Webex Teams (formerly Cisco Spark) to chat with the speaker after the session How 1 Find this session in the Cisco Events App 2 Click “Join the Discussion” 3 Install Webex Teams or go directly to the team space 4 Enter messages/questions in the team space Webex Teams will be moderated cs.co/ciscolivebot#BRKRST-2095 by the speaker until June 18, 2018. #CLUS © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 5 Multicast Fundamentals 6 Why Multicast Unicast vs. Multicast Scaling Unicast Server Router Number of Streams Multicast Server Router #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 7 Multicast Uses • Any applications with multiple • Server/Website replication receivers • Reducing network/resource • One-to-many or many-to-many overhead • Live video distribution • More than multiple point-to-point flows • Collaborative groupware • • Periodic data delivery—“push” Resource discovery technology • Distributed interactive • Stock quotes, sports scores, simulation (DIS) magazines, newspapers, adverts • War games • Inter Data Center L2 Underlay • Virtual reality • VXLAN, etc. for BUM #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 8 Multicast Considerations Multicast Is UDP-Based • Best effort delivery: Drops are to be expected; multicast applications should not expect reliable delivery of data and should be designed accordingly; reliable multicast is still an area for much research; expect to see more developments in this area; PGM, FEC, QoS • No congestion avoidance: Lack of TCP windowing and “slow-start” mechanisms can result in network congestion; if possible, multicast applications should attempt to detect and avoid congestion conditions • Duplicates: Some multicast protocol mechanisms (e.g., asserts, registers, and SPT transitions) result in the occasional generation of duplicate packets; multicast applications should be designed to expect occasional duplicate packets • Out of order delivery: Some protocol mechanisms may also result in out of order delivery of packets #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 9 Multicast Fundamentals Multicast Myth Busters “Multicast is complicated, scary and hard to understand!” #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 10 Unicast vs. Multicast Addressing 12.1.1.1 11.1.1.1 src addr: 10.1.1.1 A unique packet addressed to each 13.1.1.1 destination IP Address. Multicast Group Address src addr: e.g. 224.1.1.1 Same packet 10.1.1.1 addressed to “Group” destination address... #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 11 Unicast vs. Multicast Addressing 12.1.1.1 11.1.1.1 src addr: 10.1.1.1 A unique packet addressed to each 13.1.1.1 destination IP Address. Multicast Group Address src addr: e.g. 224.1.1.1 ..replicated at 10.1.1.1 each node along the tree. #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 12 MulticastMulticast Addressing Addressing IPv4 Header Version IHL Type of Service Total Length Identification Flags Fragment Offset Time to Live Protocol Header Checksum SourceSource Source AlwaysAddress the unique unicast origin address of 1.0.0.0 - 232.255.255.255 (Class A, B, C) the packet – same as unicast DestinationDestination Destination Address 224.0.0.0 - 239.255.255.255 (Class D) Multicast Group Address Range Options Padding #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 13 Multicast Addressing Class D Group addresses – 224/4 • Multicast Group addresses are NOT in the unicast route table. • A separate multicast route table is maintained for active multicast trees. • Multicast trees are initiated by receivers signaling their request to join a group. • Sources do not need to join, they just send! • Multicast routing protocols build the trees: • Hop-by-hop, from the receivers (tree leaves) to the source (tree root). • Tree path follows the unicast route table backward to the source using source address. • i.e. Multicast relies on a dependable unicast infrastructure! #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 14 Multicast Addressing—224/4 • Reserved link-local addresses • 224.0.0.0–224.0.0.255 • Transmitted with TTL = 1 • Examples • 224.0.0.1 All systems on this subnet • 224.0.0.2 All routers on this subnet • 224.0.0.5 OSPF routers • 224.0.0.13 PIMv2 routers • 224.0.0.22 IGMPv3 • Other IANA reserved addresses • 224.0.1.0–224.0.1.255 • Not local in scope (transmitted with TTL > 1) • Examples • 224.0.1.1 NTP (Network Time Protocol) • 224.0.1.32 Mtrace routers • 224.0.1.78 Tibco Multicast1 #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 15 Multicast Addressing—224/4 • Administratively scoped addresses • 239.0.0.0–239.255.255.255 • Private address space • Similar to RFC1918 unicast addresses • Not used for global Internet traffic—scoped traffic • SSM (Source Specific Multicast) range • 232.0.0.0–232.255.255.255 • Primarily targeted for Internet-style broadcast #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 16 Multicast Addressing IP Multicast MAC Address Mapping 32 Bits 1110 28 Bits 239.255.0.1 5 Bits Lost 01-00-5e-7f-00-01 25 Bits 23 Bits 48 Bits #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 17 Multicast Addressing IP Multicast MAC Address Mapping Be Aware of the 32:1 Address Overlap 32–IP Multicast Addresses 224.1.1.1 224.129.1.1 225.1.1.1 1–Multicast MAC Address 225.129.1.1 . 0x0100.5E01.0101 . 238.1.1.1 238.129.1.1 239.1.1.1 239.129.1.1 #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 18 How are Multicast Flows Identified • Every Multicast Flow can be identified by two components: • Source IP Address • The address of the Sender Multicast Flow from Source 2.2.2.2 to • Multicast Group Address Group 232.1.1.1 • 224/4 (Class D) IP Address • Example (2.2.2.2, 232.1.1.1), 3w1d/00:02:40, flags: s Incoming interface: Ethernet 0/0, RPF nbr 207.109.83.33 Outgoing interface list: Ethernet 1/0, Forward/Sparse, 3w1d/00:02:40 Ethernet 2/0, Forward/Sparse, 2w0d/00:02:33 • How do Hosts Signal to Routers which flow they want? • IPv4: IGMP • IPv6: MLD #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 19 Host-Router Signaling: IGMP • IGMP Version 3 is current version • RFC3376 Oct 2002 (Over 10 years old!) • Uses 224.0.0.22 (IGMPv3 routers) Link-Local Multicast Address • All IGMP hosts send Membership Reports to this address • All IGMP routers listen to this address • Hosts do not listen or respond to this address (unlike previous IGMP versions) • Membership Reports • Sent by Hosts • Contain list of Multicast (Source, Group) pairs to Include/Exclude (Join/Leave) • Membership Queries • Sent by Routers to refresh/maintain list of Multicast traffic to deliver. #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 20 IGMPv3 – Membership Report Packet Format 7 15 31 Type = 0x22 Reserved Checksum 7 15 31 Record Type Aux Data Len # of Sources (N) Reserved # of Group Records (M) Multicast Group Address Group Record [1] Source Address [1] Source Address [2] Group Record [2] . Source Address [N] . Auxiliary Data Group Record [M] Record Type Include, Exclude, Chg-to-Include, # of Group Records (M) Chg-to-Exclude, Allow New Srcs, Number of Group Records in Report Block Old Srcs Group Records 1 - M Group address plus list of zero or # of Sources (N) more sources to Include/Exclude Number of Sources in Record (See Group Record format) Source Address 1- N Address of Source #CLUS © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 21 IGMPv3 – Query Packet Format Type = 0x11 IGMP Query 7 15 31 Max. Resp. Max. Resp. Time Type = 0x11 Checksum Max. time to send a response Code if < 128, Time in 1/10 secs if > 128, FP value (12.8 - 3174.4 secs) Group Address Group Address: Multicast Group Address S QRV QQIC Number of Sources (N) (0.0.0.0 for General Queries) S Flag Source Address [1] Suppresses processing by routers QRV (Querier Robustness Value) Source Address [2] Affects timers and # of retries QQIC (Querier’s Query Interval) . Same format as Max. Resp. Time . Number of Sources (N) (Non-zero for Group-and-Source Query) Source Address [N] Source Address Address of Source #CLUS BRKRST-2095 © 2018 Cisco and/or its affiliates. All rights reserved.