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

Chris Wong chris at chriswongstudio.com
Fri Mar 5 19:17:33 CET 2010


On Mar 5, 2010, at 12:04 PM, Martin Sustrik wrote:

> Martin Lucina wrote:
> 
>> Yes, but once you introduce sequence numbers you're going to need a
>> handshake to initialise those, which means a "virtual connection" of some
>> sort, and if you want to do that using multicast I guess you'll end up with
>> something like PGM anyway :-)
> 
> No. You need no negotiation. Receiver just has to handle first seqnum it 
> sees as beginning of the stream and wait for following packet. Any 
> larger seqnum means the stream is disrupted at that point. Any lower 
> seqnum means the sender was restarted.
> 
> It may cause some hickups when packets are reordered, but that doesn't 
> really matter, it's unreliable anyway.
> 

Yes.  My intent isn't trying to use Zeromq to build reliability on top of the unreliable multicast.  It's more as an abstract framework for switching the underlying transport to deliver "multicast" message.

> Of course, multiple senders would make a mess.
> 

I think that should be pushed to the application layer to decide.  Zeromq as a framework wouldn't have a better idea on how to handle that anyway.  After all, we're talking about multicast...

>> I guess the answer depends on what applications Chris has in mind.
> 
> Definitely.

The applications I have in mind belong to the category where message is idempotent and only the latest "version" is important. So, if message was lost, a later version will arrive in the next period anyway.  Old version that arrives out of sequence will be discarded by the app.

Chris

> 
> Martin
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev




More information about the zeromq-dev mailing list