Difference between revisions of "Multicast"

From Hackepedia
Jump to navigationJump to search
 
m (new image)
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
Multicast is similar to [[broadcast]] where there is one sender and multiple receivers.  The difference is that with multicast the receiver can opt-in to a specific multicast group.  [[Router|Routers]] and [[switch|switches]] need multicast support in order to effectively switch multicast content to a station that opted in per [[IGMP]] packets.  Multicast support on the Internet has always lagged behind somewhat probably due to the fact that the costs of a multicaster are quite low to reach lots of receivers as compared to a broadcaster serving multiple [[unicast]] streams.  The people in power are just terrified that someone else has a message better than them.  This is exactly the same reason that the upload speed of home DSL is capped at a small percentage of the download speed.  Don't expect to see global or even continent wide multicast support anytime soon.
+
[[Image:3networks-multicasting.jpg]]
 +
 
 +
Multicast is similar to [[broadcast]] where there is one sender and multiple receivers.  The difference is that with multicast the receiver can opt-in to a specific multicast group.  [[Router|Routers]] and [[switch|switches]] need multicast support in order to effectively switch multicast content to a station that opted in per [[IGMP]] packets.  Multicast support on the Internet has always lagged behind somewhat probably due to the fact that the costs of a multicaster are quite low to reach lots of receivers as compared to a broadcaster serving multiple [[unicast]] streams.  To the backbone multicasting was historically expensive due to increased CPU, however there is a fallover point where it is more cost-effective to route multicasts than unicasts.
 +
 
 +
Multicast is stateless, meaning you cannot use [[TCP]] for multicasting.  This sucks because you lose the reliability and content can get lost.  There is protocols that use [[unicast]] to back up lost multicast packets.  Other protocols use [[parity]] inside the packets sent so that a lost packet can be reconstructed after receiving other packets.  Either way whether you use unicast or parity the method for repairing lost multicast packets is costly.
 +
 
 +
 
 +
[[p2p|Peer to Peer]] networks that operate over [[unicast]] are similar to the concept of multicasting.  The big difference is that it achieves similar means of distribution in a cascading style and then has many nodes feeding a single node instead of a single node feeding many.

Latest revision as of 06:00, 17 May 2008

3networks-multicasting.jpg

Multicast is similar to broadcast where there is one sender and multiple receivers. The difference is that with multicast the receiver can opt-in to a specific multicast group. Routers and switches need multicast support in order to effectively switch multicast content to a station that opted in per IGMP packets. Multicast support on the Internet has always lagged behind somewhat probably due to the fact that the costs of a multicaster are quite low to reach lots of receivers as compared to a broadcaster serving multiple unicast streams. To the backbone multicasting was historically expensive due to increased CPU, however there is a fallover point where it is more cost-effective to route multicasts than unicasts.

Multicast is stateless, meaning you cannot use TCP for multicasting. This sucks because you lose the reliability and content can get lost. There is protocols that use unicast to back up lost multicast packets. Other protocols use parity inside the packets sent so that a lost packet can be reconstructed after receiving other packets. Either way whether you use unicast or parity the method for repairing lost multicast packets is costly.


Peer to Peer networks that operate over unicast are similar to the concept of multicasting. The big difference is that it achieves similar means of distribution in a cascading style and then has many nodes feeding a single node instead of a single node feeding many.