Multi Cast
Multi Cast
IP MULTICAST
• Why Multicast?
• Multicast Fundamentals
• PIM Protocols
• RP choices
• Multicast at Layer 2
• Interdomain IP Multicast
• Latest Additions
9783_05_2004_X2
© 2004 Cisco Systems, Inc. All rights reserved. © 2003, Cisco Systems, Inc. All rights reserved. 3
Unicast vs. Multicast
Unicast
Server
Router
Multicast
Server
Router
© 2004 Cisco Systems, Inc. All rights reserved. 4
Multicast Advantages
• Enhanced Efficiency:
Efficiency Controls network traffic and reduces server and CPU
loads
• Optimized Performance:
Performance Eliminates traffic redundancy
• Distributed Applications:
Applications Makes multipoint applications possible
Unicast
0.8
0.6
Traffic
0.4
Mbps
0.2
0
1 20 40 60 80 100
# Clients
© 2004 Cisco Systems, Inc. All rights reserved. 5
Multicast Applications
Today Tomorrow
• Finance Applications
• Broadband access
–Trading Stocks and Commodities
• Video conferencing
• Streaming Multimedia
–E-Learning • Digital TV
–Corporate communications
• Digital audio
• Enterprise Resource
Applications • Networked gaming
–Data warehousing and content • PDAs and Home
synchronization
appliances
• Any one-to-many data
push applications
• No Congestion Avoidance:
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:
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.
9783_05_2004_X2
© 2004 Cisco Systems, Inc. All rights reserved. © 2003, Cisco Systems, Inc. All rights reserved. 8
Multicast Components
Cisco End-to-End Architecture
ISP A
ISP B
MSDP
RP
Multicast Source
Multicast Source DR Y
X RP
ISP B
ISP A
IGMP Snooping, MBGP
CGMP, RGMP
DR
IGMP PIM-SM DR
Bidir PIM
PIM-SSM
MVPN
Campus Multicast Interdomain Multicast
• End Stations (hosts-to-routers): • Multicast routing across domains
– IGMP – MBGP
• Switches (Layer 2 Optimization): • Multicast Source Discovery
– CGMP, IGMP Snooping or RGMP – MSDP with PIM-SM
• Routers (Multicast Forwarding Protocol): • Source Specific Multicast
– PIM Sparse Mode or Bidirectional PIM – PIM-SSM
s ca n n s
d d r es A d dr es
e A up
Sourc G r o
Identification Flags Fragment Offset
lt ic a s t
D M u
Class
Time to Live Protocol Header Checksum
Options Padding
1110 28 Bits
239.255.0.1
5 Bits
Lost
01-00-5e-7f-00-01
25 Bits 23 Bits
48 Bits
Joining a Group
H1 H2 224.1.1.1 H3
Report
Maintaining a Group
224.1.1.1 H1 224.1.1.1 H2 224.1.1.1 H3
X X
Suppressed Report Suppressed
Query
General Query
#2
• Host quietly leaves group
• Router sends 3 General Queries (60 secs apart)
• No IGMP Report for the group is received
• Group times out (Worst case delay ~= 3 minutes)
© 2004 Cisco Systems, Inc. All rights reserved. 22
Host-Router Signaling: IGMP
Leave to
#1 224.0.0.2
Group Specific
Query to 224.1.1.1
#2
• Host sends Leave message to 224.0.0.2
• 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
© 2004 Cisco Systems, Inc. All rights reserved. 23
Host-Router Signaling: IGMPv3
• RFC 3376
– Adds Include/Exclude Source Lists
– Enables hosts to listen only to a specified
subset of the hosts sending to the group
– Requires new ‘IPMulticastListen’ API
• New IGMPv3 stack required in the O/S.
H1 H2 H3
1.1.1.1
rtr-a
H1 H2 H3
1.1.1.1
rtr-a
H1 H2 H3
1.1.1.1 Query
A B D F
C E
Receiver 1 Receiver 2
A B D F
C E
Receiver 1 Receiver 2
A B D (RP) F
Receiver 1 Receiver 2
Source 2
A B D (RP) F
Receiver 1 Receiver 2
• Shared trees
– Uses less memory O(G) but you may get sub-optimal paths
from source to all receivers; may introduce extra delay
Source
151.10.3.21
Mcast Packets
X
S0
S1 S2
RPF Check Succeeds! E0
Unicast Route Table
Network Interface
151.10.0.0/16 S1 Packet Arrived on Correct Interface!
198.14.32.0/24 S0 Forward out all outgoing interfaces.
204.1.16.0/24 E0 (i. e. down the distribution tree)
9783_05_2004_X2
© 2004 Cisco Systems, Inc. All rights reserved. © 2003, Cisco Systems, Inc. All rights reserved. 39
PIM PROTOCOLS
9783_05_2004_X2
© 2004 Cisco Systems, Inc. All rights reserved. © 2003, Cisco Systems, Inc. All rights reserved. 40
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)
– PIM-DM State Refresh has eliminated this behavior
• Sparse-mode
– Uses “Pull” Model
– Traffic sent only to where it is requested
– Explicit Join behavior
• Protocol Independent
– Supports all underlying unicast routing protocols including:
static, RIP, IGRP, EIGRP, IS-IS, BGP, and OSPF
• Appropriate for...
– Lab work and router performance testing
Initial Flooding
Source
Receiver
Source
Multicast Packets
Prune Messages
Receiver
Source
• Primary use:
– Test Labs and router performance testing
• Advantages:
– Easy to configure—two commands
– Simple flood and prune mechanism
• Potential issues...
– Inefficient flood and prune behavior
– Complex Assert mechanism
– Mixed control and data planes
• Results in (S, G) state in every router in the network
• Can result in non-deterministic topological behaviors
– No support for shared trees
RP
Receiver
RP
Source
RP
Source
RP
Source
RP
Source
RP
Source
Traffic Flow
Traffic begins flowing down the
Shared Tree new branch of the Source Tree.
Source Tree
Additional (S, G) State is created
(S, G)RP-bit Prune Receiver along along the Shared Tree to
prune off (S, G) traffic.
RP
Source
RP
Source
RP
Source
9783_05_2004_X2
© 2004 Cisco Systems, Inc. All rights reserved. © 2003, Cisco Systems, Inc. All rights reserved. 57
PIM-SM: Evaluation
A B C D
Out-of-band Source
(S, G) Join Directory
Example: Web Server
D F
IGMPv3 (S, G) Join
Receiver 1
A B C D
E F
Receiver 1
RP Sender/
Receiver Receiver
Shared Tree
Receiver
RP Sender/
Receiver Receiver
Shared Tree
Source Traffic
Receiver
9783_05_2004_X2
© 2004 Cisco Systems, Inc. All rights reserved. © 2003, Cisco Systems, Inc. All rights reserved. 69
How Does the Network Know about the RP ?
• Static configuration
• AutoRP
• BSR
• Hard-coded RP address
– When used, must be configured on every router
– All routers must have the same RP address
– RP fail-over not possible
• Exception: If Anycast RPs are used.
• Command
ip pim rp-address <address> [group-list <acl>] [override]
MA MA
Announce
Announce
A B
Announce
RP-Announcements multicast to the
Cisco Announce (224.0.1.39) group
Announce
very
y
ver
o
co
Disc
Dis
Dis Disc
co ver ove
y MA ry MA
Disc
A Dis
co ver
B o very
y
y
ry
ver
ove
co
Disc
C D
Dis
C-RP C-RP
1.1.1.1 2.2.2.2
PIMv2
Sparse Mode F
BSR
A
D t C-
en RP
e m Ad
tis ve
ver t ) (u
ni rtise
Ad icas ca
RP n st men
C- (u ) t
C-RP C-RP
B C
PIMv2
BSR Msgs
Sparse Mode F
BSR Msgs
C-RP C-RP
B C
E
BSR Msgs Flooded Hop-by-Hop
9783_05_2004_X2
© 2004 Cisco Systems, Inc. All rights reserved. © 2003, Cisco Systems, Inc. All rights reserved. 78
L2 Multicast Frame Switching
(a) (b)
• IGMP snooping
– Switches with Layer 3 aware Hardware/ASICs
• High-throughput performance maintained
• Increases cost of switches
– Switches without Layer 3 aware Hardware/ASICs
• Suffer serious performance degradation or even Meltdown!
Meltdown
– Shouldn’t be a problem when IGMPv3 is implemented
• CGMP
– Requires Cisco routers and switches
– Can be implemented in low-cost switches
9783_05_2004_X2
© 2004 Cisco Systems, Inc. All rights reserved. © 2003, Cisco Systems, Inc. All rights reserved. 85
MBGP Overview
r
Domain C
RP
Domain B
RP
RP
Domain D
RP
Domain A
MSDP Peers RP
Source Active SA SA r
Messages Domain C
RP
SA
Domain B SA SA
RP
SA RP
SA Domain D
SA Message
192.1.1.1, 224.2.2.2
RP
SA Message
192.1.1.1, 224.2.2.2 s
Domain A
Register
192.1.1.1, 224.2.2.2
© 2004 Cisco Systems, Inc. All rights reserved. 93
MSDP Overview
MSDP Peers RP
r
Domain C
.2.2.2)
RP
(S, 224in
Jo
Domain B
RP
RP
Domain D
RP
s
Domain A
MSDP Peers RP
Multicast Traffic r
Domain C
RP
Domain B
RP
RP
Domain D
RP
s
Domain A
MSDP Peers RP
Multicast Traffic r
Domain C Join
.2)
(S, 224.2.2
RP
Domain B
RP
RP
Domain D
RP
s
Domain A
MSDP Peers RP
Multicast Traffic r
Domain C
RP
Domain B
RP
RP
Domain D
RP
s
Domain A
Src Src
RP1 RP2
MSDP
X
A SA SA B
10.1.1.1 10.1.1.1
Src Src
RP1 RP2
X
A B
10.1.1.1 10.1.1.1
RP1 RP2
MSDP
A B
ip pim rp-address 10.0.0.1 ip pim rp-address 10.0.0.1
X Y
9783_05_2004_X2
© 2004 Cisco Systems, Inc. All rights reserved. © 2003, Cisco Systems, Inc. All rights reserved. 102
Multicast VPN
The Customer Requirement
• MPLS VPN customers want to run multicast within their
VPNs
• Multicast deployment is expanding
• MPLS VPNs do not support multicast today
• Multicast options in MPLS VPNs today
–GRE tunnels from CE to CE
CE CE Does NOT Scale !!!!
CE
CE
MPLS
CE Core CE
• Default-MDT:
– Default MDT group used for control traffic and flooding channel
for dense mode and low bandwidth groups.
• Data-MDT:
– MDT group created on demand for MVPN (S,G) pairs, usually
high bandwidth traffic
Protocol Independent
Protocol Independent
Routing All IGPs,and BGP4+
All IGPs,and BGP4+
with v6 mcast SAFI
128 bits
Group ID (112 bits)
• Static RP assignment
• BSR
• Auto-RP – no current draft
• Why Multicast?
• Multicast Fundamentals
• PIM Protocols
• RP choices
• Multicast at Layer 2
• Interdomain IP Multicast
• Latest Additions IPv6 and MVPN
• White Papers
• Cisco Press