Multicast Routing Protocols: TCP/IP Protocol Suite 1
Multicast Routing Protocols: TCP/IP Protocol Suite 1
Multicast Routing Protocols: TCP/IP Protocol Suite 1
Routing
Protocols
OBJECTIVES:
To discuss the general idea behind multicast routing protocols and
their division into two categories based on the creation of the
shortest path trees.
To discuss multicast link state routing in general and its
implementation in the Internet: a protocol named MOSPF.
To discuss multicast distance vector routing in general and its
implementation in the Internet: a protocol named DVMRP.
To discuss core-based protocol (CBT) and briefly discuss two
independent multicast protocols PIM-DM and PIM-SM.
To discuss multicast backbone (MBONE) that shows how to create a
tunnel when the multicast messages need to pass through an area
with no multicast routers.
TCP/IP Protocol Suite
Multicast Groups
The
After
Multiple copies
of the same
message is
transmitted on
the same link
IP Multicasting
There
Multicast Addressing
All Class D addresses are multicast addresses:
Class D
multicast group id
28 bits
Class
From
To
224.0.0.0
239.255.255.255
Multicast Address
Mapping
Identifes
Class D
Ignored
Ethernet Addresses
with 01:00:5e in the
first 3 bytes are
reserved for IP
multicast
0000000
1 00000000
23-bit
address
1110 xxxx
x -------
--------
--------
Class D
IP Address
01011110
0 -------
--------
--------
Ethernet
Address
parameter for IP
Multicast datagrams
Controls the number of hops that a
IP Multicast packet is allowed to
propagate
TTL = 1: local network multicast
TTL > 1: Multicast router(s)
attached to the local network
forward IP Multicast datagrams
9
Several
algorithms employed by
multicast routing protocols:
Spanning Trees
Flooding
Reverse Path Forwarding (RPF)
Reverse Path Broadcasting (RPB)
Reverse Path Multicasting (RPM)
Core-Based Trees
Ahmed Helmy - UF
10
These
Ahmed Helmy - UF
11
Note
12
Figure 12.18
13
Note
14
Note
15
Figure 12.19
16
Multicast Routing
ProtocolsCharacteristics
Receiver 1
Receiver 2
Source-based Trees
Router
S Source
R Receiver
R
R
R
S
R
18
19
Note
20
Figure 12.20
21
Multicast Routing
ProtocolsCharacteristics
Shared Distribution Tree
Source 1
Notation: (*, G)
* = All Sources
G = Group
Source 2
A
D (Shared Root)
Receiver 1
Receiver 2
S1
Notation: (*, G)
* = all sources
G = Group
Shared Root
A
S2
Receiver 1
Receiver 2
CS 640
23
H1
Source
sends data
to the core
Core
forwards
data
according to
routing table
entry
R1
R3
R2
Core
H2
R4
R5
R6
R7
H3
R8
joined
24
H4
H5
joined
joined
Multicast routing
1. Core-based Tree:
Build a single distribution tree that is shared
by all members
Selects one router as a core (also called
rendezvous point)
All receivers build a shortest path to the core
CBT, PIM-SM
Higher delay (bounded by factor of 2), traffic
concentration
Choice of core affects efficiency
Multicast
group
Incoming interface
(RPF interface)
Outgoing
interface list
S1
G1
I1
I2, I3
G2
I2
I1, I3
27
Multicast Routing
ProtocolsCharacteristics
Distribution
trees
Source tree
Uses more memory O(S x G) but you get optimal
paths from source to all receivers, minimizes
delay
Shared tree
Uses less memory O(G) but you may get
suboptimal paths from source to all receivers,
may introduce extra delay
Protocols
PIM, DVMRP, MOSPF, CBT
Multicast Routing
ProtocolsCharacteristics
Types
of multicast protocols
Dense-mode
Broadcast and Prune behavior
Similar to Radio broadcast
Sparse-mode
Explicit Join behavior
Similar to Pay Per View
Multicast Routing
ProtocolsCharacteristics
Dense-mode
protocols
Multicast Routing
ProtocolsCharacteristics
Sparse-mode
protocols
ROUTINGPROTOCOLS
TopicsDiscussedintheSection
32
Figure 12.21
33
Note
36
The
MOSPF
The
37
Impact on Route
Computation
38
Example
Source 1
Z
W
Q
T
Receiver 1
Receiver 2
39
Link Failure/Topology
Change
Source 1
Z
W
Q
T
Receiver 1
Receiver 2
40
Membership Change
Source 1
Z
Receiver 3
W
Q
T
Receiver 1
Receiver 2
41
Limitations
Ahmed Helmy - UF
42
44
Example Topology
G
G
Lecture 12: 02-17-2005
45
Broadcast
G
G
Lecture 12: 02-17-2005
46
Prune
G
Prune (s,g)
Prune (s,g)
G
Lecture 12: 02-17-2005
47
Graft
G
G
G
Report (g)
Graft (s,g)
Graft (s,g)
G
Lecture 12: 02-17-2005
48
Steady State
G
G
G
G
Lecture 12: 02-17-2005
49
Leaf
50
Prune
The
After
Ahmed Helmy - UF
51
DVMRP: Summary
Distance
52
decision-making strategies
1. Flooding
2. Reverse Path Forwarding (RPF)
3. Reverse Path Broadcasting (RPB)
4. Reverse Path Multicasting (RPM)
53
Flooding
Flooding
The
When
Ahmed Helmy - UF
55
Ahmed Helmy - UF
56
Note
57
Multicast routing in
practice
2. Core-based Tree:
60
In
If
61
Figure 12.22
RPF
62
Note
63
Figure 12.23
64
Figure 12.24
66
Note
67
The
The
68
Router
2
1
B
3
5
Leaf
Shortest-path
Branch
E
D
F
8
69
Benefits
Reasonably
Does
Multicast
Avoids
tree
Ahmed Helmy - UF
70
Limitations
Does
As
Ahmed Helmy - UF
71
Figure 12.25
73
Reverse Path
Multicasting
74
Note
75
Router
Pruned branch
G
Pruned message
76
Figure 12.26
77
This
79
If
80
Note
81
Figure 12.27
82
Benefits
A router maintains state information for
each group, not for each (source, group)
pair.
Multicast packets only flow down
branches leading to members (not
periodically broadcast).
Only join state is kept on-tree
Ahmed Helmy - UF
83
Limitations
CBT
single shared delivery tree may create suboptimal routes resulting in increased delay.
Core
management issues
Ahmed Helmy - UF
84
Protocol-Independent Multicast
(PIM)
Broadcast and prune keeps state offtree and is suitable when members are
densely distributed
Explicit join/center-based approach
keeps state on-tree and is suitable when
members are sparsely distributed
PIM attempts to combine the best of
both worlds
Ahmed Helmy - UF
86
Note
87
PIM-DM
It
In
88
89
PIM-DM(1)
Initial flood of data
Source
B
G
H
E
R1
Receiver 1
R2
Receiver 2
CS 640
90
PIM-DM(2)
prune non-RPF p2p link
IGMP PIM-Prune
Source
B
G
H
E
R1
Receiver 1
R2
Receiver 2
CS 640
91
PIM-DM(3)
IGMP PIM-Assert
with its own IP address
Source
B
G
H
E
R1
Receiver 1
R2
Receiver 2
CS 640
92
PIM-DM(4)
I, E, G send Prune
H send Join to override Gs Prune
IGMP PIM-Prune
Source
IGMP PIM-Join
B
G
H
E
R1
Receiver 1
R2
Receiver 2
CS 640
93
PIM-DM(5)
I Gets Pruned
Es Prune is Ignored (since R1 is a receiver)
Gs Prune is Overridden (due to new receiver R2)
Source
B
G
H
E
R1
Receiver 1
R2
Receiver 2
CS 640
94
PIM-DM(6)
New Receiver, I send Graft
IGMP PIM-Graft
Source
B
G
H
I
E
R1
Receiver 1
R2
R3
Receiver 3
Receiver 2
CS 640
95
PIM-DM(7)
new branch
IGMP PIM-Graft
Source
B
G
H
I
E
R1
Receiver 1
R2
R3
Receiver 3
Receiver 2
CS 640
96
Note
97
Ahmed Helmy - UF
98
A
C
RP
Link
(*,G) Data
(S,G) Data
Receiver 1
Control
Receiver 2
Ahmed Helmy - UF
99
A
C
(*, G)
Join
RP
Link
(*,G) Data
(S,G) Data
Receiver 1
Control
Receiver 2
Ahmed Helmy - UF
10
A
C
RP
Link
(*,G) Data
(S,G) Data
Receiver 1
Control
Receiver 2
Ahmed Helmy - UF
10
Register
A
C
RP
Link
(*,G) Data
(S,G) Data
Receiver 1
Control
Receiver 2
Ahmed Helmy - UF
10
(S, G)
Join
A
C
(S, G)
Join
RP
Link
(*,G) Data
(S,G) Data
Receiver 1
Control
Receiver 2
Ahmed Helmy - UF
10
Register-Stop
A
C
RP
Link
(*,G) Data
(S,G) Data
Receiver 1
Control
Receiver 2
Ahmed Helmy - UF
10
A
(S, G) Join
C
RP
Link
(*,G) Data
(S,G) Data
Receiver 1
Control
Receiver 2
Ahmed Helmy - UF
10
(S, G) Prune
RP
Link
(*,G) Data
(S, G) RP Bit
Prune
Receiver 1
(S,G) Data
Control
Receiver 2
Ahmed Helmy - UF
10
A
C
RP
(*, G)
Join
Link
(*,G) Data
(S,G) Data
Receiver 1
Control
Receiver 2
Ahmed Helmy - UF
10
A
C
RP
Link
(*,G) Data
(S,G) Data
Receiver 1
Control
Receiver 2
Ahmed Helmy - UF
10
MBONE
Multimedia and real-time communication have
increased the need for multicasting in the
Internet.
only a small fraction of Internet routers are
multicast routers. this problem may be solved
by adding more and more multicast routers
there is
solution
seen as
routers.
109
MBone
Multicast
Figure 12.28
Logical tunneling
111
Figure 12.29
MBONE
112
Figure 12.5
Tunneling
113
THANKS