[Libav-user] IGMPv3 source-specific multicast: what is the purpose of multiple sources?

Andrew Krupiczka andrewk at vbrick.com
Wed Oct 24 20:28:56 CEST 2012

You probably recognize that for IPv4 SSM your multicast must use a destination address like 232.x.y.z

Per RFC4607
The benefits of source-specific multicast include:

      Elimination of cross-delivery of traffic when two sources
      simultaneously use the same source-specific destination address.
      The simultaneous use of an SSM destination address by multiple
      sources and different applications is explicitly supported.

      Avoidance of the need for inter-host coordination when choosing
      source-specific addresses, as a consequence of the above.

      Avoidance of many of the router protocols and algorithms that are
      needed to provide the ASM service model.

   SSM is particularly well-suited to dissemination-style applications
   with one or more senders whose identities are known before the
   application begins.  For instance, a data dissemination application
   that desires to provide a secondary data source in case the primary
   source fails over might implement this by using one channel for each
   source and advertising both of them to receivers.  



-----Original Message-----
From: libav-user-bounces at ffmpeg.org [mailto:libav-user-bounces at ffmpeg.org] On Behalf Of David Henry
Sent: Wednesday, October 24, 2012 1:31 PM
To: libav-user at ffmpeg.org
Subject: [Libav-user] IGMPv3 source-specific multicast: what is the purpose of multiple sources?

While using the relatively new feature of source-specific multicast (patched with http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=75d339e044f9b87dd9aa4bdaee73b1a8323d4a15)
I tried giving 2 sources, instead of a single source.  e.g. udp://eth1@,
I assumed (incorrectly) that the linux kernel would fail-over to the 2nd source if there was an interruption or some other error with the first source.
Instead, I'm just getting packets from both sources simultaneously, which is not useful for me.  

So the question is:
1) for streaming video, why would one want this sort of behavior? (packets delivered simultaneously from >1 source)
2) is there any way to dynamically implement fail-over at the receiver with ffmpeg & source-specific multicast?

Thanks, David
Libav-user mailing list
Libav-user at ffmpeg.org

More information about the Libav-user mailing list