Upload
stephanie-bryan
View
224
Download
1
Embed Size (px)
Citation preview
Multicast Routing Algorithms
Multicast routing Flooding and Spanning Tree Forward Shortest Path algorithm Reversed Path Forwarding (RPF) algorithms Steiner Tree (ST) algorithm Shared tree algorithms
Multicast Routing
Internet
IPMC 2
IPMC 3
IPMC 4
IPMC 1
Multicast routing protocol
IGMP protocol
Subnetwork attachedto a router
Construction of Distribution Tree in Case of Many Sources
For forwarding multicast packets across internet, we should use multicast protocols Several algorithms may be used by the protocols
In case of many sources the multicast routing algorithms can handle the distribution of the packets in three ways:
Primitive methods– Flooding– Spanning Tree
Source Based Tree– Forward Shortest Path– (Reverse Path Forwarding (RPF) algorithms – not detailed)– Steiner Trees (ST)
Shared Tree– Center Based Trees (CBT)
Primitive Methods
These do not take into account:– the multicast traffic refers to different multicast groups– which group member is sender and which is receiver
Such are the Flooding and the Spanning Tree algorithms These are regarded as basic procedures
– They are used as building blocks of the more sophisticated algorithms regarding construction of distribution tree
Flooding When the router receives a multicast packet first it checks
whether it has already met with this If this is the first occasion, the router forwards it to its all
interfaces, except that from which the packet arrived If it has already met with that packet, the router will drop it
out In such a way all router will get the packet once at least Its disadvantages:
– It generates high number multiplied packets– It wastes network bandwidth– Every router must maintain table of the lately arrived packets,
which requires a huge memory
Flooding
When a router receives a packet, the router will determine whether it’s the first time it receives the packet. If so, the packet will be delivered to all interfaces except the one on which it arrived, otherwise the packet will be discarded.
No routing tables needed Inefficient use of bandwidth
The Operation of the Flooding
C
A
Source
BD
E
F
Legend
router
IP connection
branch of distribution tree
group-member host
non group-member host
multicast data
subnetwork
Spanning Tree
Only one active path connects any two of routers
The multicast packets will not loop and reach all routers
May not provide the most efficient path between the source subnetwork and group members
Spanning Tree
Legend
branch
router with an attached subnet
connection
group member host
non group-member host
B
S=AC
IGFE
DH
LJK
PM
N O
The Operation of the Spanning Tree Algorithm
C
A
Source
BD
E
F
Legend
router
IP connection
branch of the distribution tree
group member host
non group memeber
multicast data
subnet
Distribution trees– Source tree
Uses more memory O(NS x NG) but you get optimal paths from source to all receivers, minimizes delay
– Shared treeUses less memory O(NG) but you may get suboptimal paths from source to all receivers, may introduce extra delay
Multicast Routing Algorithms—Characteristics
Source Based Tree
Each source creates its own distribution tree The advantages of such a kind of algorithms are
– the higher end-to-end power» E.g., smaller delay
– sharing the traffic load coming from each source on the network
Disadvantage is that each router must generate large routing table, since one routing item is needed for each source and each group
Forward Shortest Path
In case of link-state unicast routing algorithms every router know the whole network topology – Thus they can calculate the shortest path
form the source to the receivers This tree is different from the reverse
shortest path (later) if the links are non-symmetrical
Reverse Path Forwarding What is RPF?
–A router forwards a multicast datagram if received on the interface used to send unicast datagrams to the source
B C
A F
SourceReceiver
Unicast
Multicast
D E
Reverse Path Forwarding If the RPF check succeeds, the datagram
is forwarded If the RPF check fails, the datagram
is typically silently discarded When a datagram is forwarded, it is sent out each interface in the outgoing
interface list Packet is never forwarded back out the
RPF interface!
Shortest Path or Source Distribution Tree
Receiver 1
E
BA D F
SourceNotation: (S, G) S = Source G = Group
C
Receiver 2
The Reverse Path Forwarding (RPF) Algorithm-Family
These forward packet on their output interfaces if and only if the packet arrived on the interface, which is on the shortest path to the source
The “reverse path” naming is originated from the fact that after the multicast tree was built, the routers have to listen to the reverse path to the multicast source– If a packet arrive in an other interface, which is not in the shortest
path to the source, the packet will be dropped out by the router
Finding the Shortest Path
If a packet comes and another packet has already arrived on a shorter way from the sender, then the new packet will be dropped out
But if the new packet arrived in the shorter path, from this point its path is the current shortest path
It is important, since the packet must carry the IP addresses of the routers along the path, and in case of longer path the size of the packet increases
This algorithm does not need any additional method to prevent against the packet multiplication, e.g., automatic hop count limiting mechanism, since the algorithm automatically limits the path of the packets to the shortest path
The RPF Tree Rooted in the Router A
C
A
Source
BD
E
F
Legend
router
IP connection
shortest path
group member host
non group member host
subnet
The RPF Tree Rooted in the Router C
C
A
SourceBD
E
F
Legend
router
IP connection
shortest path
group member host
non group member host
subnet
The Different Reverse Path Forwarding (RPF) Algorithms
Reverse Path Forwarding/Flooding/Broadcast (RPF) (Sophisticated/Extended) Reverse Path Broadcast
(RPB) Truncated Reverse Path Broadcast (TRPB) Reverse Path Multicast (RPM)
Reverse Path Forwarding/Flooding/Broadcast (RPF)
C
A
Source
BD
E
F
Legend
router
IP connection
brach of tree
parent link
group member host
non group member host
multicast data
subnet
RPF
A local router only accepts packets from the ‘nearest’ source (parent), otherwise the packets are discarded.Accepted packets will be forwarded to all interfaces except the sourceIt does not take into account multicast group membership when building the distribution tree, so packets may be forwarded to non-membership subnetwork
(Sophisticated/Extended) Reversed Path Broadcast (RPB)
childlink
parent link
childlink
childlink
S1 Source (S1, G1)
R4
R5
R6 R7 R8
R2
R3
G1
G5G3G1G2G1
G1
G2
I2
I4
G4
I1
G2
Legend
router
multicast data
IP connection
distribution tree
G1 group member host
non group member host
subnet
G1
G5
G2
I3
I5
The RPB Tree
C
A
Source
BD
E
F
Legend
router
IP connection
branch of the tree (shortest path)
group member host
non group member host
multicast data
subnet
Truncated Reverse Path Broadcast (TRPB)
truncation
truncation
childlink
parent link
childlink
childlink
S1 Source (S1, G1)
R4
R5
R6 R7 R8
R2
R3
G1
G5G3G1G2G1
G1
G2
I2
I4
G4
I1
G2
Legend
router
multicast data
IP connection
distribution tree
member of group G1
non group member
subnet
G1
G5
G2
I3
I5
Truncated Reverse Path Broadcasting (TRPB)
G1
G2
G3
Truncated
Source,G1
It’s an enhancement of RPBWith the help of IGMP, multicast routers determine the group membership on each leaf subnetwork, thus avoiding forwarding packets to non-membersEliminates unnecessary traffic on leaf subnetworks , but does not consider group memberships when building the branches of the distribution tree
TRPB Based Multicast Delivery
C
A
Source
BD
E
F
Legend
router
IP connection
branch of the tree
group member host
non group member host
multicast data
subnet
Reverse Path Multicasting (RPM) RPM creates a delivery tree that spans only
• Subnetworks with group members, and• Routers along the shortest path to subnetworks with group members
First packet will be sent to all interfaces except the source. If none of the subnetworks connected to the leaf router have group members, the leaf router may transmit a "prune" message on its parent link informing the upstream router not to forward packets in this group to the leaf
In RPM, ‘first packet’ still needs to be forwarded throughout the network. Each router has to maintain state information for all groups. It will be impossible as the
number of groups and sources increases.
Reversed Path Multicast (RPM)
C
A
Source
BD
E
F
Legend
router
IP connection
branch of the tree
truncated branch
group member host
non group member host
multicast data
prune message
subnet
Steiner Trees (ST)
C
A
Source
BD
E
F
Legend
router
IP connection
branch of the tree
group member host
non group member host
multicast data
subnet
Shared Tree The all sources sends the packet to the same tree The same tree distributes the all packets This algorithm concentrates the traffic to the small set of the
network connections This algorithm is not optimal if all sources are active in the same
time– E.g., distributed interactive simulation application
This algorithm works well, when the source operates alternatively– E.g., audio-conference
Its advantage is that it needs one item per group, only Such algorithm is e.g., Center Based Trees
Center Based Trees (CBT)
If a host wants to join one group, it has to send a unicast “join request” message to the core.
Compared to previous algorithms, CBT can use bandwidth and router resources more efficiently
CBT may result in traffic concentration and bottlenecks near core routers since traffic from all sources traverses the same set of links as it approaches the core
A single shared tree may create trees not as optimal as source-trees
Operation of the Center Based Trees (CBT) Algorithm
C
A
Source
BD
E
F
Legend
router
core router
IP connection
branch of the tree
group member host
non group member
multicast data
unicast data
subnet
Shared Distribution Tree
Receiver 1
B
E
A D (Shared Root) F
Source 1 Notation: (*, G) * = All Sources G = Group
C
Receiver 2
Source 2
Center Based Multicast Distribution Tree
Incoming multicastpacket to the group Legend
router
core router
connection
CBT backbone
path of the multicast packets
Comparison of the properties related to the construction of the
distribution treeProperty Flooding
Span. Trees
RPF RPB TRPB RPM ST CBT
Taking into account the existence of various multicast groups (different distribution path for each group)
No No Yes Yes Yes Yes Yes Yes
Different distribution paths for each source
No No Yes Yes Yes Yes No No
Building distribution tree (instead of forwarding on the whole network
topology, in such a way avoiding the duplicated packets)
No Yes No Yes Yes Yes Yes Yes
Avoiding the flooding in the first step No No No No No No No Yes
Taking into account the group membership of the host
No No No No Yes Yes Yes Yes
Usage of multicast routing tables No Yes Yes Yes Yes Yes Yes Yes
Comparison of the properties related to the traffic on the tree
Property Flooding Span. trees
RPF RPB TRPB RPM ST CBT
Omitting the routers that are not necessary for multicast delivery
No No No No No Yes Yes Yes
Forwarding that packets, only, which arrived in the shortest path
No No Yes Yes Yes Yes No No
Forwarding the packet on the shortest path, only
No No No Yes Yes Yes No No
Using that paths, only, which have the smallest hop-count or cost
No No No No No No Yes No
Avoiding the whole concentration of the traffic
Yes No Yes Yes Yes Yes Yes Yes
Avoiding the concentration of the traffic of each group
Yes No Yes Yes Yes Yes No No