Вы находитесь на странице: 1из 25

Advance

Computer Networks

#4 Broadcast Mul9cast Rou9ng


Semester Ganjil 2012
PTIIK Universitas Brawijaya
Todays Lecture
This Course
Goals :
Understanding Broadcast & Multicast
Routing
Broadcast Routing
Multicast Routing

#1 - Review of Networks 2
References
Kurose & Ross, Computer Networking : Top down
Approach, 6th Ed., Pearson/Addison, 2012.
Chapter 4
Network Layer

#1 - Review of Networks 3
#4 Broadcast & Mul9cast
Rou9ng
Broadcast Routing
Multicast Routing
Broadcast rou9ng
deliver packets from source to all other nodes
source duplica9on is inecient:
duplicate
duplicate R1 crea9on/transmission R1
duplicate
R2 R2

R3 R4 R3 R4

source in-network
duplica9on duplica9on

source duplication: how does source determine


recipient addresses?
Network Layer 4-5
In-network duplica9on
ooding: when node receives broadcast packet, sends copy to
all neighbors
problems: cycles & broadcast storm
controlled ooding: node only broadcasts pkt if it hasnt
broadcast same packet before
node keeps track of packet ids already broadacsted
or reverse path forwarding (RPF): only forward packet if it
arrived on shortest path between node and source
spanning tree:
no redundant packets received by any node

Network Layer 4-6


Spanning tree
rst construct a spanning tree
nodes then forward/make copies only along
spanning tree
A A

B B
c c

D D
F E F E

G G
(a) broadcast ini9ated at A (b) broadcast ini9ated at D

Network Layer 4-7


Spanning tree: crea9on
center node
each node sends unicast join message to center node
message forwarded un9l it arrives at a node already
belonging to spanning tree

A A
3
B B
c c
4
2
D D
F E F E
1 5
G G
(a) stepwise construc9on of (b) constructed spanning tree
spanning tree (center: E)
Network Layer 4-8
Mul9cast rou9ng: problem statement
goal: nd a tree (or trees) connec9ng routers having local mcast
group members
tree: not all paths between routers used legend
shared-tree: same tree used by all group members group
member
source-based: different tree from each sender to rcvrs
not group
member
router
with a
group
member
router
without
group
member

shared tree source-based trees


Network Layer 4-9
Approaches for building mcast trees
approaches:
source-based tree: one tree per source
shortest path trees
reverse path forwarding
group-shared tree: group uses one tree
minimal spanning (Steiner)
center-based trees

we rst look at basic approaches, then specic protocols


adop9ng these approaches

Network Layer 4-10


Shortest path tree
mcast forwarding tree: tree of shortest path routes from
source to all receivers
Dijkstras algorithm

s: source LEGEND
R1 2 router with aeached
1 R4
group member
R2 5 router with no aeached
3 4 group member
R5
i link used for forwarding,
R3 6
i indicates order link
R6 R7 added by algorithm

Network Layer 4-11


Reverse path forwarding

relyon routers knowledge of unicast shortest


path from it to sender
each router has simple forwarding behavior:

if (mcast datagram received on incoming link on


shortest path back to center)
then ood datagram onto all outgoing links
else ignore datagram

Network Layer 4-12


Reverse path forwarding: example
s: source LEGEND
R1
R4 router with aeached
group member
R2
router with no aeached
R5 group member
R3 datagram will be forwarded
R6 R7
datagram will not be
forwarded

result is a source-specific reverse SPT


may be a bad choice with asymmetric links

Network Layer 4-13


Reverse path forwarding: pruning
forwarding tree contains subtrees with no mcast group members
no need to forward datagrams down subtree
prune msgs sent upstream by router with no downstream
group members

s: source
LEGEND
R1
R4
router with aeached
group member
R2
P
router with no aeached
R5 group member
P
R3 P prune message
R6 links with mul9cast
R7 forwarding

Network Layer 4-14


Shared-tree: steiner tree

steiner tree: minimum cost tree connec9ng all


routers with aeached group members
problem is NP-complete
excellent heuris9cs exists
not used in prac9ce:
computa9onal complexity
informa9on about en9re network needed
monolithic: rerun whenever a router needs to
join/leave
Network Layer 4-15
Center-based trees
single delivery tree shared by all
one router iden9ed as center of tree
to join:
edge router sends unicast join-msg addressed to center
router
join-msg processed by intermediate routers and
forwarded towards center
join-msg either hits exis9ng tree branch for this center, or
arrives at center
path taken by join-msg becomes new branch of tree for
this router
Network Layer 4-16
Center-based trees: example
suppose R6 chosen as center:

LEGEND

R1 router with aeached


R4
3 group member

R2 router with no aeached


2 group member
1
R5 path order in which join
messages generated
R3
1 R6
R7

Network Layer 4-17


Internet Mul9cas9ng Rou9ng: DVMRP

DVMRP: distance vector mul9cast rou9ng protocol, RFC1075


ood and prune: reverse path forwarding, source-based tree
RPF tree based on DVMRPs own rou9ng tables
constructed by communica9ng DVMRP routers
no assump9ons about underlying unicast
ini9al datagram to mcast group ooded everywhere via
RPF
routers not wan9ng group: send upstream prune msgs

Network Layer 4-18


DVMRP: con9nued
so8 state: DVMRP router periodically (1 min.)
forgets branches are pruned:
mcast data again ows down unpruned branch
downstream router: reprune or else con9nue to
receive data
routers can quickly regraj to tree
following IGMP join at leaf
odds and ends
commonly implemented in commercial router
Network Layer 4-19
Tunneling
Q: how to connect islands of mul9cast
routers in a sea of unicast routers?

physical topology logical topology

mcast datagram encapsulated inside normal (non-multicast-


addressed) datagram
normal IP datagram sent thru tunnel via regular IP unicast to
receiving mcast router (recall IPv6 inside IPv4 tunneling)
receiving mcast router unencapsulates to get mcast datagram
Network Layer 4-20
PIM: Protocol Independent Mul9cast
not dependent on any specic underlying unicast
rou9ng algorithm (works with all)
two dierent mul9cast distribu9on scenarios :

dense: sparse:
group members densely # networks with group
packed, in close members small wrt #
proximity. interconnected networks
bandwidth more plentiful group members widely
dispersed
bandwidth not plentiful

Network Layer 4-21


Consequences of sparse-dense dichotomy:

dense sparse:
group membership by no membership un9l routers
routers assumed un9l explicitly join
routers explicitly prune receiver- driven construc9on
data-driven construc9on on of mcast tree (e.g., center-
mcast tree (e.g., RPF) based)
bandwidth and non-group- bandwidth and non-group-
router processing proigate router processing
conserva;ve

Network Layer 4-22


PIM- dense mode
flood-and-prune RPF: similar to DVMRP but
underlying unicast protocol provides RPF info
for incoming datagram
less complicated (less efficient) downstream
flood than DVMRP reduces reliance on
underlying routing algorithm
has protocol mechanism for router to detect it
is a leaf-node router

Network Layer 4-23


PIM - sparse mode
center-based approach
router sends join msg to R1
R4
rendezvous point (RP) join
intermediate routers R2
join
update state and forward
R5
join join
ajer joining via RP, router R3
R6
can switch to source-specic
R7
tree all data mul9cast rendezvous
from rendezvous point
increased performance: point
less concentra9on,
shorter paths

Network Layer 4-24


PIM - sparse mode
sender(s):
R1
unicast data to RP, which R4
join
distributes down RP-
rooted tree R2
join
RP can extend mcast tree R5
upstream to source join
R3
RP can send stop msg if no R6
aeached receivers all data mul9cast R7
rendezvous
from rendezvous
no one is listening! point
point

Network Layer 4-25