The presentation describes the different ways of routing that takes place in Multicast Communication.
The presentation was prepared in collaboration with Shubham Singhal at IIIT-Delhi for the course "Technical Communication".
2. Multicast
Delivery of a message to a group simultaneously in a single
transmission from the source
One-to-many or many-to-many communications
Unicast Broadcast Multicast
2
3. Why Multicast?
Working
• Better bandwidth utilization
• Less host/router processing
Applications
• Video Conferencing
• Data Sharing Applications
• Multi-player Gaming
3
6. Multicast Model
Senders transmit IP datagrams to a host group
Host group identified by a class D IP address
Members join and leave the group and indicate this to the routers
Routers use multicast routing protocols to manage groups
Every IP datagram send to a multicast group is transmitted to all
members of the group
Sender may not be a member of the group
IP Multicast service is unreliable
6
8. Shortest Path Tree
Minimizes the path cost from the source to each
receiver
• Good tree if there is a single sender
• If there are multiple senders, need one tree
per sender
• Easy to compute
S
8
9. Minimum Cost Tree
S
Minimizes the total cost of the edges
• Good solution if there are multiple senders
• Single tree for multiple senders
• Very expensive to compute (not practical
for more than 30 nodes)
9
10. Reverse Path Forwarding
Builds shortest path tree using unicast
routing tables
A router selects its next hop
neighbor(router) in the tree for
forwarding unicast packets to the root
Traces a reverse shortest path from any
router to the sending host
Union of reverse shortest paths builds a
reverse shortest path tree.
10
11. Routing Approaches
Source Based Tree
One shortest path tree for each sender
Tree is built from receiver to the sender [Reverse Path Forwarding (RPF)]
Useful when there are small number of senders and large number of receivers
• Core Based Tree
• A single distribution tree that is shared by all senders
• Selects one router as a “core”
• All receivers build a shortest path to the core [Reverse Path Forwarding]
11
12. Source Based Tree
Flood & Prune
• Set routing tables according to
RPF forwarding
• Next hop neighbor of R5 is R2
• Next hop neighbor of R7 is R3
• And so on…..
Image Source: www.cs.virginia.edu/~itlab/book/slides/module21-mcastv4.ppt 12
13. Each router in the network uses
reverse path forwarding to
forward the packets out every
interface except the upstream
interface.
As a result, the multicast session
initially reaches every router in
the network.
This is called flooding
H2
H3
H5H4
H1
Source
R1
R2
R6
R4
R5
R3
R8
R7
joined
joined
Source Based Tree
Flood & Prune
13
14. Source Based Tree
Flood & Prune
H2
H3
H5H4
H1
Source
R1
R2
R6
R4
R5
R3
R8
R7
joined
joined
Pruning = If no group members
or downstream routers to which
the traffic must be
forwarded, router sends a
poison-reverse message called
a prune message to its upstream
neighbor.
This called pruning
14
17. Core Based Tree
Receiver 1
E
BA D F
Source
C
Receiver 2
S1
R R
Shared Root (Core)
S2
Source
• Constructs a single delivery tree
that is shared by all members of a
group
• Source sends data to the core
• Core forwards data to the group
members according to routing
table entry
17
18. Challenges
Difficult because:
sources may join and leave dynamically
need to dynamically update routing table entry
How can a sender restrict who can receive?
need authentication, authorization
encryption of data
key distribution
This is still an active area of research
18
19. Summary
Unicast and Broadcast not always efficient
Applications need multicast for better bandwidth utilisation
Source based tree
Optimal path between sender and receiver but overall expensive
One path for each receiver- more memory requirement
Core based tree
Less memory requirement
Careful selection of the core required
Scalable for many senders and receivers
19
20. References
1. Xiaola Lin and Lionel M. Ni, “Multicast Communication in Multicomputer
Networks”, IEEE, VOL.4, NO. 10, OCTOBER 1993
2. Yuan Gao and Jennifer C. Hou, “Reliable Multicasts for Core-based Multicast Trees”, IEEE, 2000
3. Rick Graziani, (Fall 2006), “IP Multicasting” [Online],
Available: alextm.no-ip.com/appunti/ccnp/lucidi/ccnp1-Multicasting.ppt
4. Radhika Rengaswamy, “IP Multicasting” [Online],
Available: www.cse.buffalo.edu/~qiao/cse620/ip_multicasting.ppt
20
But before moving to routing algorithms we should know about Multicast.It is the delivery of a message to members of a group simultaneously in a single transmission from the sender.It is One-to-many or many-to-many communication.The picture depicts the difference between unicast, broadcast and multicast.
But why we need multicast?We use multicast because it gives better utilization of the bandwidth as only one copy of data is forwarded to the router which makes multiple copies as per the requirement. This reduces processing at each router. Multicast is used in video conferencing. multi player gaming and other applications where data is shared among the users
Lets see the working of multicast:
But in multicast system the sender sends only one copy of the data to the forwarding router and the router then makes multiple copies.
In multicast communication the sender transmit IP datagrams to a group of receivers called host groupHost group is identified by a class D IP address which ranges from 224.0.0.0 to 239.255.255.255Membersjoin and leave the group informing the nearby routersRouters use multicast routing protocols to manage groupsEvery IP datagram send to a multicast group is transmitted to all members of the group where the sender may not be a member of the groupIP multicast uses UDP which is fast but unreliable.
To understand the routing algorithms we need to learn a few concepts:Shortest Path treeWe have a blue box as the sender and 3 green boxes as the receivers.
Shortest path tree minimizes the path cost from the source to each receiverConsidering the cost of each edge as 1-
Minimum cost tree:Here we minimizes the total cost of the edgesIt is a better option if we have multiple senders.However it becomes very expensive to compute with increase in number of nodes.
When a sender first initiates a session, each router in the internetwork uses reverse path broadcasting to forward the packets out every interface except the upstream interface. As a result, the multicast session initially reaches every router in the internetwork.
If there are no group members in the subnet or downstream routers to which the traffic must be forwarded, the router sends a poison-reverse message called a prune message to its upstream neighbor. That upstream neighbor then stops forwarding the session traffic to the pruned router.