[zeromq-dev] Unreliable multicast was: udp not enabled on Mac OS X 10.6

Martin Lucina mato at kotelna.sk
Fri Mar 5 18:18:47 CET 2010

sustrik at 250bpm.com said:
> Chris Wong wrote:
> > Actually i want support for unreliable multicast vs reliable multicast.  
> > Zeromq is a nice framework to allow me to transparently switch the 
> > underlying transport. There are applications that don't need the 
> > ordering and lossless guarantee of PGM.
> > 
> > The unreliable multicast transport may or may not work for all the 
> > messaging pattern but should at least work for the multicast pattern.
> Now it makes sense. Paradoxically, unreliable multicast is easier to 
> implement than unreliable unicast.

How so? Isn't unreliable unicast just unicast UDP? And unreliable multicast
just multicast UDP? (But see below about datagram length)

> Just copy pgm_sender.cpp/.hpp and pgm_receiver.cpp/.hpp, name it 
> udp_sender/udp_reciever. Rip off OpenPGM stuff, use UDP socket instead.

This is starting to look the the 'udp' transport we don't have (yet) :-)

> One additional thing that has to be done is to attach a sequence number 
> to each UDP packet, so that you know when packet was lost.

Why would you need to know when a packet was lost, it is after all just
unreliable multicast...

What I see as more of a problem is that UDP datagrams are limited to 65,507
bytes in length, so any 0MQ UDP transport (multicast or unicast) would have
to split and recombine messages.


More information about the zeromq-dev mailing list