Re: [zeromq-dev] When unreliability is desired

2014-01-04 Thread Lindley French
I've pushed the changes:
https://github.com/LindleyF/libzmq
Note that this just builds---I doubt very much that it works yet.
Here are the changes:
https://github.com/LindleyF/libzmq/commit/c5f576e20db663bc724536786ef31a9482fe2fbe
I wasn't sure what to do about the copyright notice so I left the
Crossroads text mostly in place, with a note that I modified it for 0MQ.


On Thu, Dec 19, 2013 at 2:55 PM, Pieter Hintjens p...@imatix.com wrote:

 Wow, that's fantastic. I'm really eager to get my hands on another
 wire protocol to turn into a neat little stack of RFCs! (I'm sure this
 is the sign of a deeply troubled mind. :-)


 On Thu, Dec 19, 2013 at 6:18 PM, Lindley French lindl...@gmail.com
 wrote:
  Well, I've got it building. I have no idea if it works because I don't
 fully
  understand the design, and I'm pretty sure just commenting out the
  encoder/decoder related lines was the wrong thing to do, but it builds
 now,
  and that's a first step.
 
  The machine I'm on can't push and pull from github so I won't be able to
  upload the changes to my fork just yet. I should be able to get that
 done in
  a day or so.
 
 
  On Thu, Dec 19, 2013 at 3:12 AM, Pieter Hintjens p...@imatix.com wrote:
 
  On Wed, Dec 18, 2013 at 8:33 PM, Lindley French lindl...@gmail.com
  wrote:
 
   Come to think of it, the way that library is structured, it would be
   easy
   enough to use it on top of ZMQ. Therefore it may not be reasonable to
   integrate it anyway.
 
  Yes. My point was really not about pros or cons of libraries, rather
  solving one problem at a time, and getting a minimal plausible first
  step down. I'd really enjoy seeing a raw UDP transport that we can
  hack on. I'm hoping some unsung genius can pull off the impossible and
  bring that code in from XS, even in basic form. Once we have something
  we can improve it...
 
  -Pieter
 
  ___
  zeromq-dev mailing list
  zeromq-dev@lists.zeromq.org
  http://lists.zeromq.org/mailman/listinfo/zeromq-dev
 
 
 
  ___
  zeromq-dev mailing list
  zeromq-dev@lists.zeromq.org
  http://lists.zeromq.org/mailman/listinfo/zeromq-dev
 
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev

___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2014-01-04 Thread Lindley French
I've opened a github issue for this:
https://github.com/zeromq/libzmq/issues/807


On Sat, Jan 4, 2014 at 12:04 PM, Lindley French lindl...@gmail.com wrote:

 I've pushed the changes:
 https://github.com/LindleyF/libzmq
 Note that this just builds---I doubt very much that it works yet.
 Here are the changes:

 https://github.com/LindleyF/libzmq/commit/c5f576e20db663bc724536786ef31a9482fe2fbe
 I wasn't sure what to do about the copyright notice so I left the
 Crossroads text mostly in place, with a note that I modified it for 0MQ.


 On Thu, Dec 19, 2013 at 2:55 PM, Pieter Hintjens p...@imatix.com wrote:

 Wow, that's fantastic. I'm really eager to get my hands on another
 wire protocol to turn into a neat little stack of RFCs! (I'm sure this
 is the sign of a deeply troubled mind. :-)


 On Thu, Dec 19, 2013 at 6:18 PM, Lindley French lindl...@gmail.com
 wrote:
  Well, I've got it building. I have no idea if it works because I don't
 fully
  understand the design, and I'm pretty sure just commenting out the
  encoder/decoder related lines was the wrong thing to do, but it builds
 now,
  and that's a first step.
 
  The machine I'm on can't push and pull from github so I won't be able to
  upload the changes to my fork just yet. I should be able to get that
 done in
  a day or so.
 
 
  On Thu, Dec 19, 2013 at 3:12 AM, Pieter Hintjens p...@imatix.com wrote:
 
  On Wed, Dec 18, 2013 at 8:33 PM, Lindley French lindl...@gmail.com
  wrote:
 
   Come to think of it, the way that library is structured, it would be
   easy
   enough to use it on top of ZMQ. Therefore it may not be reasonable to
   integrate it anyway.
 
  Yes. My point was really not about pros or cons of libraries, rather
  solving one problem at a time, and getting a minimal plausible first
  step down. I'd really enjoy seeing a raw UDP transport that we can
  hack on. I'm hoping some unsung genius can pull off the impossible and
  bring that code in from XS, even in basic form. Once we have something
  we can improve it...
 
  -Pieter
 
  ___
  zeromq-dev mailing list
  zeromq-dev@lists.zeromq.org
  http://lists.zeromq.org/mailman/listinfo/zeromq-dev
 
 
 
  ___
  zeromq-dev mailing list
  zeromq-dev@lists.zeromq.org
  http://lists.zeromq.org/mailman/listinfo/zeromq-dev
 
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev



___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2014-01-04 Thread Pieter Hintjens
On Sat, Jan 4, 2014 at 6:04 PM, Lindley French lindl...@gmail.com wrote:

 I've pushed the changes:
 https://github.com/LindleyF/libzmq
 Note that this just builds---I doubt very much that it works yet.

Looks good for a start.

 I wasn't sure what to do about the copyright notice so I left the Crossroads
 text mostly in place, with a note that I modified it for 0MQ.

I've asked Martin Lucina for permission to use our standard model of
putting all attribution in AUTHORS. For the rest of the header, it's
fair to use the This file is part of 0MQ. text, without further
attribution to XS (when XS forked from ZeroMQ, that was likewise how
it went on all sources.)

I'm wondering if, for all transports, it wouldn't be useful to have an
interface enumeration method in libzmq (much as we're doing in zbeacon
now).

-Pieter
___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-19 Thread Pieter Hintjens
On Wed, Dec 18, 2013 at 8:33 PM, Lindley French lindl...@gmail.com wrote:

 Come to think of it, the way that library is structured, it would be easy
 enough to use it on top of ZMQ. Therefore it may not be reasonable to
 integrate it anyway.

Yes. My point was really not about pros or cons of libraries, rather
solving one problem at a time, and getting a minimal plausible first
step down. I'd really enjoy seeing a raw UDP transport that we can
hack on. I'm hoping some unsung genius can pull off the impossible and
bring that code in from XS, even in basic form. Once we have something
we can improve it...

-Pieter
___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-19 Thread Lindley French
Well, I've got it building. I have no idea if it works because I don't
fully understand the design, and I'm pretty sure just commenting out the
encoder/decoder related lines was the wrong thing to do, but it builds now,
and that's a first step.

The machine I'm on can't push and pull from github so I won't be able to
upload the changes to my fork just yet. I should be able to get that done
in a day or so.


On Thu, Dec 19, 2013 at 3:12 AM, Pieter Hintjens p...@imatix.com wrote:

 On Wed, Dec 18, 2013 at 8:33 PM, Lindley French lindl...@gmail.com
 wrote:

  Come to think of it, the way that library is structured, it would be easy
  enough to use it on top of ZMQ. Therefore it may not be reasonable to
  integrate it anyway.

 Yes. My point was really not about pros or cons of libraries, rather
 solving one problem at a time, and getting a minimal plausible first
 step down. I'd really enjoy seeing a raw UDP transport that we can
 hack on. I'm hoping some unsung genius can pull off the impossible and
 bring that code in from XS, even in basic form. Once we have something
 we can improve it...

 -Pieter
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev

___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-19 Thread Pieter Hintjens
Wow, that's fantastic. I'm really eager to get my hands on another
wire protocol to turn into a neat little stack of RFCs! (I'm sure this
is the sign of a deeply troubled mind. :-)


On Thu, Dec 19, 2013 at 6:18 PM, Lindley French lindl...@gmail.com wrote:
 Well, I've got it building. I have no idea if it works because I don't fully
 understand the design, and I'm pretty sure just commenting out the
 encoder/decoder related lines was the wrong thing to do, but it builds now,
 and that's a first step.

 The machine I'm on can't push and pull from github so I won't be able to
 upload the changes to my fork just yet. I should be able to get that done in
 a day or so.


 On Thu, Dec 19, 2013 at 3:12 AM, Pieter Hintjens p...@imatix.com wrote:

 On Wed, Dec 18, 2013 at 8:33 PM, Lindley French lindl...@gmail.com
 wrote:

  Come to think of it, the way that library is structured, it would be
  easy
  enough to use it on top of ZMQ. Therefore it may not be reasonable to
  integrate it anyway.

 Yes. My point was really not about pros or cons of libraries, rather
 solving one problem at a time, and getting a minimal plausible first
 step down. I'd really enjoy seeing a raw UDP transport that we can
 hack on. I'm hoping some unsung genius can pull off the impossible and
 bring that code in from XS, even in basic form. Once we have something
 we can improve it...

 -Pieter

 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev



 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev

___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-18 Thread Pieter Hintjens
On Tue, Dec 17, 2013 at 11:30 PM, Lindley French lindl...@gmail.com wrote:

 It would be really neat if we could integrate something like
 http://feclib.sourceforge.net/documentation.html into this. Not sure how
 that possibility would work license-wise, though.

I'd recommend against looking at existing libraries unless they are
compelling answers to a problem we've not been able to solve any other
way.

-Pieter
___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-18 Thread Lindley French
Any particular reason? The natural extension of that philosophy is that I
shouldn't bother looking at ZeroMQ because it's an existing library and I
might be able to solve my problems other ways.


On Wed, Dec 18, 2013 at 6:13 AM, Pieter Hintjens p...@imatix.com wrote:

 On Tue, Dec 17, 2013 at 11:30 PM, Lindley French lindl...@gmail.com
 wrote:

  It would be really neat if we could integrate something like
  http://feclib.sourceforge.net/documentation.html into this. Not sure how
  that possibility would work license-wise, though.

 I'd recommend against looking at existing libraries unless they are
 compelling answers to a problem we've not been able to solve any other
 way.

 -Pieter
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev

___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-18 Thread Pieter Hintjens
On Wed, Dec 18, 2013 at 7:22 PM, Lindley French lindl...@gmail.com wrote:

 Any particular reason? The natural extension of that philosophy is that I
 shouldn't bother looking at ZeroMQ because it's an existing library and I
 might be able to solve my problems other ways.

Yes, many reasons. The main one is complexity. You can read
http://hintjens.com/blog:19 and our contribution process, RFC 22,
which requires that every patch be a minimal solution to an agreed
problem. Importing libraries breaks that rule and needs to happen with
great care when we're sure the tradeoffs are worth it.

Technically, additional dependencies make packaging ZeroMQ a horrid process.

If you can solve whatever problem you have without using ZeroMQ, why
would you use ZeroMQ?

-Pieter
___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-18 Thread Lindley French
Yes, many reasons. The main one is complexity. You can read
http://hintjens.com/blog:19 and our contribution process, RFC 22,
which requires that every patch be a minimal solution to an agreed
problem. Importing libraries breaks that rule and needs to happen with
great care when we're sure the tradeoffs are worth it.

Whether or not FEC functionality is needed is the relevant question. If
that is agreed to be a problem, whether the solution comes from a library
or new code is a separate issue.

Technically, additional dependencies make packaging ZeroMQ a horrid
process.

Large dependencies, sure. Small dependencies that can be added just as a
few additional source files (license permitting) shouldn't be a big deal.

If you can solve whatever problem you have without using ZeroMQ, why
would you use ZeroMQ?

The same reason I use any library---to save time, and effort, and because I
understand that there's no point reinventing the wheel if someone already
has functionality I can leverage in a tested, working condition.


On Wed, Dec 18, 2013 at 2:05 PM, Pieter Hintjens p...@imatix.com wrote:

 On Wed, Dec 18, 2013 at 7:22 PM, Lindley French lindl...@gmail.com
 wrote:

  Any particular reason? The natural extension of that philosophy is that I
  shouldn't bother looking at ZeroMQ because it's an existing library and I
  might be able to solve my problems other ways.

 Yes, many reasons. The main one is complexity. You can read
 http://hintjens.com/blog:19 and our contribution process, RFC 22,
 which requires that every patch be a minimal solution to an agreed
 problem. Importing libraries breaks that rule and needs to happen with
 great care when we're sure the tradeoffs are worth it.

 Technically, additional dependencies make packaging ZeroMQ a horrid
 process.

 If you can solve whatever problem you have without using ZeroMQ, why
 would you use ZeroMQ?

 -Pieter
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev

___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-18 Thread Lindley French
Come to think of it, the way that library is structured, it would be easy
enough to use it on top of ZMQ. Therefore it may not be reasonable to
integrate it anyway.


On Wed, Dec 18, 2013 at 2:31 PM, Lindley French lindl...@gmail.com wrote:

 Yes, many reasons. The main one is complexity. You can read
 http://hintjens.com/blog:19 and our contribution process, RFC 22,
 which requires that every patch be a minimal solution to an agreed
 problem. Importing libraries breaks that rule and needs to happen with
 great care when we're sure the tradeoffs are worth it.

 Whether or not FEC functionality is needed is the relevant question. If
 that is agreed to be a problem, whether the solution comes from a library
 or new code is a separate issue.


 Technically, additional dependencies make packaging ZeroMQ a horrid
 process.

 Large dependencies, sure. Small dependencies that can be added just as a
 few additional source files (license permitting) shouldn't be a big deal.

 If you can solve whatever problem you have without using ZeroMQ, why
 would you use ZeroMQ?

 The same reason I use any library---to save time, and effort, and because
 I understand that there's no point reinventing the wheel if someone already
 has functionality I can leverage in a tested, working condition.


 On Wed, Dec 18, 2013 at 2:05 PM, Pieter Hintjens p...@imatix.com wrote:

 On Wed, Dec 18, 2013 at 7:22 PM, Lindley French lindl...@gmail.com
 wrote:

  Any particular reason? The natural extension of that philosophy is that
 I
  shouldn't bother looking at ZeroMQ because it's an existing library and
 I
  might be able to solve my problems other ways.

 Yes, many reasons. The main one is complexity. You can read
 http://hintjens.com/blog:19 and our contribution process, RFC 22,
 which requires that every patch be a minimal solution to an agreed
 problem. Importing libraries breaks that rule and needs to happen with
 great care when we're sure the tradeoffs are worth it.

 Technically, additional dependencies make packaging ZeroMQ a horrid
 process.

 If you can solve whatever problem you have without using ZeroMQ, why
 would you use ZeroMQ?

 -Pieter
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev



___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-17 Thread Lindley French
It would be really neat if we could integrate something like
http://feclib.sourceforge.net/documentation.html into this. Not sure how
that possibility would work license-wise, though.


On Fri, Dec 13, 2013 at 2:11 PM, Pieter Hintjens p...@imatix.com wrote:

 We should ignore the encoder classes as they are specific to TCP and
 hacked for PGM (frame format was the same originally). Each protocol
 should have its own framing spec and implementation.

 On Thu, Dec 12, 2013 at 8:04 PM, Steven McCoy steven.mc...@miru.hk
 wrote:
  On 7 December 2013 00:34, lindl...@gmail.com wrote:
 
  I'll take a look at tipc. I've been using the pgm classes as a reference
  so far. They appear to use v1_encoder while tcp uses v2_encoder.
 
 
  If you can get a nice clean framework setup independent of the TCP/Unix
  socket setup I think many others and myself included would like to
  experiment adding many different types of protocol to 0mq.  I have many
 on
  my wish list.
 
  --
  Steve-o
 
  ___
  zeromq-dev mailing list
  zeromq-dev@lists.zeromq.org
  http://lists.zeromq.org/mailman/listinfo/zeromq-dev
 
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev

___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-17 Thread Steven McCoy
On 17 December 2013 17:30, Lindley French lindl...@gmail.com wrote:

 It would be really neat if we could integrate something like
 http://feclib.sourceforge.net/documentation.html into this. Not sure how
 that possibility would work license-wise, though.


Google's QUIC includes XOR FEC as their studies have shown little
requirement for full on Reed Solomon encoding.

OpenPGM includes Reed Solomon FEC as studies have shown it dramatically
improves performance for large number of receivers.  However Microsoft went
ahead and implemented an incompatible scheme to everyone else so nothing
works out-of-the-box.

-- 
Steve-o
___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-17 Thread Lindley French
Microsoft often does such things.

Anyway, one of the goals of a pure UDP transport is to work well over
one-way physical links, so the ability to hedge one's bets with FEC seems
quite worthwhile as an option.


On Tue, Dec 17, 2013 at 6:14 PM, Steven McCoy steven.mc...@miru.hk wrote:

 On 17 December 2013 17:30, Lindley French lindl...@gmail.com wrote:

 It would be really neat if we could integrate something like
 http://feclib.sourceforge.net/documentation.html into this. Not sure how
 that possibility would work license-wise, though.


 Google's QUIC includes XOR FEC as their studies have shown little
 requirement for full on Reed Solomon encoding.

 OpenPGM includes Reed Solomon FEC as studies have shown it dramatically
 improves performance for large number of receivers.  However Microsoft went
 ahead and implemented an incompatible scheme to everyone else so nothing
 works out-of-the-box.

 --
 Steve-o

 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev


___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-13 Thread Pieter Hintjens
We should ignore the encoder classes as they are specific to TCP and
hacked for PGM (frame format was the same originally). Each protocol
should have its own framing spec and implementation.

On Thu, Dec 12, 2013 at 8:04 PM, Steven McCoy steven.mc...@miru.hk wrote:
 On 7 December 2013 00:34, lindl...@gmail.com wrote:

 I'll take a look at tipc. I've been using the pgm classes as a reference
 so far. They appear to use v1_encoder while tcp uses v2_encoder.


 If you can get a nice clean framework setup independent of the TCP/Unix
 socket setup I think many others and myself included would like to
 experiment adding many different types of protocol to 0mq.  I have many on
 my wish list.

 --
 Steve-o

 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev

___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-12 Thread Steven McCoy
On 7 December 2013 00:34, lindl...@gmail.com wrote:

 I'll take a look at tipc. I've been using the pgm classes as a reference
 so far. They appear to use v1_encoder while tcp uses v2_encoder.


If you can get a nice clean framework setup independent of the TCP/Unix
socket setup I think many others and myself included would like to
experiment adding many different types of protocol to 0mq.  I have many on
my wish list.

-- 
Steve-o
___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-08 Thread Lindley French
I've created a JIRA issue:
https://zeromq.jira.com/browse/LIBZMQ-589

Next I'll try to figure out how to properly apply C4 to this process. I'm
more familiar with gitflow, and while C4 appears to be pretty much the same
thing except with forks instead of branches, I'm sure there are subtleties.


On Sat, Dec 7, 2013 at 4:23 AM, Arnaud Loonstra arn...@sphaero.org wrote:

 On 12/07/2013 12:15 AM, Lindley French wrote:
  Is there a better place for discussion of this effort? I do have a lot
  of questions.
 
  The latest one is about encoder_t etc. This appears to have changed
  significantly recently, and I'm not entirely sure how to adapt the
  Crossroads code to match. Is there documentation on its latest design
  somewhere?
 
 No please continue your quest out in the open. I would like to keep
 track as well. Do you have a repository online somewhere?

 Arnaud.

 --
 w: http://www.sphaero.org
 t: http://twitter.com/sphaero
 g: http://github.com/sphaero
 i: freenode: sphaero_z25
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev

___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-08 Thread Pieter Hintjens
We have moved the issue tracker to github and you may want to create
new issues there. No urgency, it'll be a gradual migration.

The process is... not the same as gitflow. The subtleties will become
clear to you over time. It's far more aimed at learning, and less at
organization, as a goal.

-Pieter


On Sun, Dec 8, 2013 at 6:34 PM, Lindley French lindl...@gmail.com wrote:
 I've created a JIRA issue:
 https://zeromq.jira.com/browse/LIBZMQ-589

 Next I'll try to figure out how to properly apply C4 to this process. I'm
 more familiar with gitflow, and while C4 appears to be pretty much the same
 thing except with forks instead of branches, I'm sure there are subtleties.


 On Sat, Dec 7, 2013 at 4:23 AM, Arnaud Loonstra arn...@sphaero.org wrote:

 On 12/07/2013 12:15 AM, Lindley French wrote:
  Is there a better place for discussion of this effort? I do have a lot
  of questions.
 
  The latest one is about encoder_t etc. This appears to have changed
  significantly recently, and I'm not entirely sure how to adapt the
  Crossroads code to match. Is there documentation on its latest design
  somewhere?
 
 No please continue your quest out in the open. I would like to keep
 track as well. Do you have a repository online somewhere?

 Arnaud.

 --
 w: http://www.sphaero.org
 t: http://twitter.com/sphaero
 g: http://github.com/sphaero
 i: freenode: sphaero_z25
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev



 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev

___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-08 Thread lindleyf
I'll recreate the issue there.

I can see how C4 could be considered more democratic and less authoritarian 
than git flow since anyone can fork for stabilization (equivalent to creating a 
release branch in git flow). I also see how it could be less error-prone to 
create a feature fork rather than a feature branch. But fundamentally I don't 
see any significant differences in the two processesboth go from 
features/bugfixes, to a probably-good-but-unblessed state, to a stabilization 
(bugfix and testing only) state, to a released state.

 On Dec 8, 2013, at 2:06 PM, Pieter Hintjens p...@imatix.com wrote:
 
 We have moved the issue tracker to github and you may want to create
 new issues there. No urgency, it'll be a gradual migration.
 
 The process is... not the same as gitflow. The subtleties will become
 clear to you over time. It's far more aimed at learning, and less at
 organization, as a goal.
 
 -Pieter
 
 
 On Sun, Dec 8, 2013 at 6:34 PM, Lindley French lindl...@gmail.com wrote:
 I've created a JIRA issue:
 https://zeromq.jira.com/browse/LIBZMQ-589
 
 Next I'll try to figure out how to properly apply C4 to this process. I'm
 more familiar with gitflow, and while C4 appears to be pretty much the same
 thing except with forks instead of branches, I'm sure there are subtleties.
 
 
 On Sat, Dec 7, 2013 at 4:23 AM, Arnaud Loonstra arn...@sphaero.org wrote:
 
 On 12/07/2013 12:15 AM, Lindley French wrote:
 Is there a better place for discussion of this effort? I do have a lot
 of questions.
 
 The latest one is about encoder_t etc. This appears to have changed
 significantly recently, and I'm not entirely sure how to adapt the
 Crossroads code to match. Is there documentation on its latest design
 somewhere?
 No please continue your quest out in the open. I would like to keep
 track as well. Do you have a repository online somewhere?
 
 Arnaud.
 
 --
 w: http://www.sphaero.org
 t: http://twitter.com/sphaero
 g: http://github.com/sphaero
 i: freenode: sphaero_z25
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev
 
 
 
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev
___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-08 Thread Pieter Hintjens
On Sun, Dec 8, 2013 at 10:01 PM,  lindl...@gmail.com wrote:

 I'll recreate the issue there.

Sure, we're going to have overlapping trackers for a while (different
ranges of issue numbers) so there's no problem.

 I can see how C4 could be considered more democratic and less authoritarian 
 than git flow since anyone can fork for stabilization (equivalent to creating 
 a release branch in git flow). I also see how it could be less error-prone to 
 create a feature fork rather than a feature branch. But fundamentally I don't 
 see any significant differences in the two processesboth go from 
 features/bugfixes, to a probably-good-but-unblessed state, to a stabilization 
 (bugfix and testing only) state, to a released state.

Perhaps we can catch up this thread later when you've used C4 for a
while and seen how it works. We for sure use stabilization forks as
gitflow uses branches, but that's only a small part of C4. The rest is
about reducing barriers to learning, as a group, in a number of small
but specific ways. The code emerges as we learn, and is our primary
tool for learning more, rather than being the one-way product of
educated minds.

-Pieter
___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-07 Thread Arnaud Loonstra
On 12/07/2013 12:15 AM, Lindley French wrote:
 Is there a better place for discussion of this effort? I do have a lot
 of questions.

 The latest one is about encoder_t etc. This appears to have changed
 significantly recently, and I'm not entirely sure how to adapt the
 Crossroads code to match. Is there documentation on its latest design
 somewhere?

No please continue your quest out in the open. I would like to keep 
track as well. Do you have a repository online somewhere?

Arnaud.

-- 
w: http://www.sphaero.org
t: http://twitter.com/sphaero
g: http://github.com/sphaero
i: freenode: sphaero_z25
___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-06 Thread Lindley French
Is there a better place for discussion of this effort? I do have a lot of
questions.

The latest one is about encoder_t etc. This appears to have changed
significantly recently, and I'm not entirely sure how to adapt the
Crossroads code to match. Is there documentation on its latest design
somewhere?


On Thu, Dec 5, 2013 at 4:13 PM, Charles Remes li...@chuckremes.com wrote:

 Feel free to rubber duck with the list as much as you want. :)

 cr

 On Dec 5, 2013, at 3:08 PM, Lindley French lindl...@gmail.com wrote:

 Disregard the question about timers, it appears this was a change made to
 Crossroads IO after the fork. I found the relevant commit:

 https://github.com/crossroads-io/libxs/commit/2df873a435ff139cf9d1b10b666d75e6dc6da442#diff-45c9686e09ed422318a2da658745dedd
 I will revert the code to the 0MQ way of doing things for now.


 On Thu, Dec 5, 2013 at 3:48 PM, Lindley French lindl...@gmail.com wrote:

 I'm trying to make sure I understand how the timer_ids work, since these
 were not in the Crossroads IO code. It appears several classes define
 timer_id constants as anonymous enums. Furthermore, the values of these
 constants don't appear to follow any particular pattern, *except* that
 constants with the same name (same purpose?) are assigned the same value.
 Therefore, I expect I ought to adopt tx_timer_id and rx_timer_id from
 pgm_sender without changing their values for udp_sender etc. Am I
 understanding this correctly?


 On Thu, Dec 5, 2013 at 3:06 PM, Lindley French lindl...@gmail.comwrote:

 It appears that at some point, activate_in was renamed to restart_input,
 and likewise with output. I'm assuming there are no functional changes
 other than the names in the UDP case. It also appears that
 zap_msg_available() can be ignored for now. Let me know if I'm wrong about
 these.


 On Thu, Dec 5, 2013 at 2:01 PM, Lindley French lindl...@gmail.comwrote:

 Okay, I'm working on porting the UDP stuff to the latest ZMQ now. Most
 of the changes necessary are purely a matter of namespace, but there are a
 few others that seem to reflect design changes in ZMQ since XS was forked.
 These are the ones I'm not immediately sure how to solve:

 1) The XS UDP code references encoder_t and decoder_t, but ZMQ has
 v1_encoder_t and v2_encoder_t etc instead.
 2) i_engine appears to have three pure virtual methods that are not
 defined in the XS code: restart_input, restart_output, and
 zap_msg_available().

 Any suggestions how to resolve these?


 On Thu, Dec 5, 2013 at 10:52 AM, Lindley French lindl...@gmail.comwrote:

 Thanks, I found it. I don't see any reason given as to why UDP support
 was reverted, though. Are there issues with the code, philosophical
 objections, etc?


 On Wed, Dec 4, 2013 at 5:16 PM, Ivan Pechorin ivan.pecho...@gmail.com
  wrote:

 UDP support was reverted in libxs just before 1.2.0 release: check
 the commits history on github around June 13th, 2012.
 05.12.2013 6:48 пользователь Lindley French lindl...@gmail.com
 написал:

 Can you clarify where in the Crossroads IO library the UDP transport
 code lives? I've downloaded the 1.2.0 tarball here:
 http://download.crossroads.io/libxs-1.2.0.tar.gz
 but so far, I don't see a UDP transport in that code. I also checked
 the github version:
 https://github.com/crossroads-io/libxs
 but I don't see it there either.

 On Wed, Nov 27, 2013 at 11:26 AM, Charles Remes 
 li...@chuckremes.com wrote:

 That defunct library (crossroads io) has the code that you want.
 That lib was a fork of zeromq, so moving the UDP transport from that
 library to zeromq should be easy (for varying degrees of easy). Once it
 makes it into zeromq, it will be supported.


 On Nov 27, 2013, at 9:50 AM, Lindley French lindl...@gmail.com
 wrote:

 I've never used ZeroMQ before so writing up a new transport would
 be just a bit ambitious right now. (I did write something in Java last 
 year
 that, in retrospect, was solving basically the same problem as ZeroMQ 
 so I
 have some familiarity with the problem space.)

 I'm also leery of adopting a defunct library for a new project.

 I'll keep the udp transport option in mind.


 On Tue, Nov 26, 2013 at 1:18 PM, Pieter Hintjens 
 p...@imatix.comwrote:

 Hi Lindley,

 The right solution would be to make a UDP transport for ZeroMQ.
 It's
 not a trivial project but could start with, for instance, just
 pub/sub
 (like PGM).

 It might be worth looking at Crossroads.io for that, which is
 abandoned but had afair a UDP transport, and shared the same
 original
 codebase with ZeroMQ.

 -Pieter

 On Tue, Nov 26, 2013 at 6:15 PM, Lindley French 
 lindl...@gmail.com wrote:
  I have a networking application that I'd like to use ZeroMQ in.
 However, my
  use-case demands minimum latency even at the expense of lost
 messages. I'm
  weary of using ZeroMQ's TCP transport because if packets are
 dropped, TCP
  will block further messages until it has retransmitted the last
 one, and I
  don't want that behavior.
 
  I don't mind FEC codes 

Re: [zeromq-dev] When unreliability is desired

2013-12-06 Thread Pieter Hintjens
This is the best place for discussions. The encoder classes are for
TCP only. If you do try to port the UDP transport, my advice is to do
it in many little steps, so we can all get involved. Start with an
empty class if needed. The tipc classes in libzmq may be a help.

On Sat, Dec 7, 2013 at 12:15 AM, Lindley French lindl...@gmail.com wrote:
 Is there a better place for discussion of this effort? I do have a lot of
 questions.

 The latest one is about encoder_t etc. This appears to have changed
 significantly recently, and I'm not entirely sure how to adapt the
 Crossroads code to match. Is there documentation on its latest design
 somewhere?


 On Thu, Dec 5, 2013 at 4:13 PM, Charles Remes li...@chuckremes.com wrote:

 Feel free to rubber duck with the list as much as you want. :)

 cr

 On Dec 5, 2013, at 3:08 PM, Lindley French lindl...@gmail.com wrote:

 Disregard the question about timers, it appears this was a change made to
 Crossroads IO after the fork. I found the relevant commit:

 https://github.com/crossroads-io/libxs/commit/2df873a435ff139cf9d1b10b666d75e6dc6da442#diff-45c9686e09ed422318a2da658745dedd
 I will revert the code to the 0MQ way of doing things for now.


 On Thu, Dec 5, 2013 at 3:48 PM, Lindley French lindl...@gmail.com wrote:

 I'm trying to make sure I understand how the timer_ids work, since these
 were not in the Crossroads IO code. It appears several classes define
 timer_id constants as anonymous enums. Furthermore, the values of these
 constants don't appear to follow any particular pattern, *except* that
 constants with the same name (same purpose?) are assigned the same value.
 Therefore, I expect I ought to adopt tx_timer_id and rx_timer_id from
 pgm_sender without changing their values for udp_sender etc. Am I
 understanding this correctly?


 On Thu, Dec 5, 2013 at 3:06 PM, Lindley French lindl...@gmail.com
 wrote:

 It appears that at some point, activate_in was renamed to restart_input,
 and likewise with output. I'm assuming there are no functional changes 
 other
 than the names in the UDP case. It also appears that zap_msg_available() 
 can
 be ignored for now. Let me know if I'm wrong about these.


 On Thu, Dec 5, 2013 at 2:01 PM, Lindley French lindl...@gmail.com
 wrote:

 Okay, I'm working on porting the UDP stuff to the latest ZMQ now. Most
 of the changes necessary are purely a matter of namespace, but there are a
 few others that seem to reflect design changes in ZMQ since XS was forked.
 These are the ones I'm not immediately sure how to solve:

 1) The XS UDP code references encoder_t and decoder_t, but ZMQ has
 v1_encoder_t and v2_encoder_t etc instead.
 2) i_engine appears to have three pure virtual methods that are not
 defined in the XS code: restart_input, restart_output, and
 zap_msg_available().

 Any suggestions how to resolve these?


 On Thu, Dec 5, 2013 at 10:52 AM, Lindley French lindl...@gmail.com
 wrote:

 Thanks, I found it. I don't see any reason given as to why UDP support
 was reverted, though. Are there issues with the code, philosophical
 objections, etc?


 On Wed, Dec 4, 2013 at 5:16 PM, Ivan Pechorin
 ivan.pecho...@gmail.com wrote:

 UDP support was reverted in libxs just before 1.2.0 release: check
 the commits history on github around June 13th, 2012.

 05.12.2013 6:48 пользователь Lindley French lindl...@gmail.com
 написал:

 Can you clarify where in the Crossroads IO library the UDP transport
 code lives? I've downloaded the 1.2.0 tarball here:
 http://download.crossroads.io/libxs-1.2.0.tar.gz
 but so far, I don't see a UDP transport in that code. I also checked
 the github version:
 https://github.com/crossroads-io/libxs
 but I don't see it there either.

 On Wed, Nov 27, 2013 at 11:26 AM, Charles Remes
 li...@chuckremes.com wrote:

 That defunct library (crossroads io) has the code that you want.
 That lib was a fork of zeromq, so moving the UDP transport from that 
 library
 to zeromq should be easy (for varying degrees of easy). Once it makes 
 it
 into zeromq, it will be supported.


 On Nov 27, 2013, at 9:50 AM, Lindley French lindl...@gmail.com
 wrote:

 I've never used ZeroMQ before so writing up a new transport would
 be just a bit ambitious right now. (I did write something in Java 
 last year
 that, in retrospect, was solving basically the same problem as ZeroMQ 
 so I
 have some familiarity with the problem space.)

 I'm also leery of adopting a defunct library for a new project.

 I'll keep the udp transport option in mind.


 On Tue, Nov 26, 2013 at 1:18 PM, Pieter Hintjens p...@imatix.com
 wrote:

 Hi Lindley,

 The right solution would be to make a UDP transport for ZeroMQ.
 It's
 not a trivial project but could start with, for instance, just
 pub/sub
 (like PGM).

 It might be worth looking at Crossroads.io for that, which is
 abandoned but had afair a UDP transport, and shared the same
 original
 codebase with ZeroMQ.

 -Pieter

 On Tue, Nov 26, 2013 at 6:15 PM, Lindley French
 lindl...@gmail.com wrote:
  I 

Re: [zeromq-dev] When unreliability is desired

2013-12-06 Thread lindleyf
I'll take a look at tipc. I've been using the pgm classes as a reference so 
far. They appear to use v1_encoder while tcp uses v2_encoder.

Sent from my iPhone

 On Dec 6, 2013, at 6:37 PM, Pieter Hintjens p...@imatix.com wrote:
 
 This is the best place for discussions. The encoder classes are for
 TCP only. If you do try to port the UDP transport, my advice is to do
 it in many little steps, so we can all get involved. Start with an
 empty class if needed. The tipc classes in libzmq may be a help.
 
 On Sat, Dec 7, 2013 at 12:15 AM, Lindley French lindl...@gmail.com wrote:
 Is there a better place for discussion of this effort? I do have a lot of
 questions.
 
 The latest one is about encoder_t etc. This appears to have changed
 significantly recently, and I'm not entirely sure how to adapt the
 Crossroads code to match. Is there documentation on its latest design
 somewhere?
 
 
 On Thu, Dec 5, 2013 at 4:13 PM, Charles Remes li...@chuckremes.com wrote:
 
 Feel free to rubber duck with the list as much as you want. :)
 
 cr
 
 On Dec 5, 2013, at 3:08 PM, Lindley French lindl...@gmail.com wrote:
 
 Disregard the question about timers, it appears this was a change made to
 Crossroads IO after the fork. I found the relevant commit:
 
 https://github.com/crossroads-io/libxs/commit/2df873a435ff139cf9d1b10b666d75e6dc6da442#diff-45c9686e09ed422318a2da658745dedd
 I will revert the code to the 0MQ way of doing things for now.
 
 
 On Thu, Dec 5, 2013 at 3:48 PM, Lindley French lindl...@gmail.com wrote:
 
 I'm trying to make sure I understand how the timer_ids work, since these
 were not in the Crossroads IO code. It appears several classes define
 timer_id constants as anonymous enums. Furthermore, the values of these
 constants don't appear to follow any particular pattern, *except* that
 constants with the same name (same purpose?) are assigned the same value.
 Therefore, I expect I ought to adopt tx_timer_id and rx_timer_id from
 pgm_sender without changing their values for udp_sender etc. Am I
 understanding this correctly?
 
 
 On Thu, Dec 5, 2013 at 3:06 PM, Lindley French lindl...@gmail.com
 wrote:
 
 It appears that at some point, activate_in was renamed to restart_input,
 and likewise with output. I'm assuming there are no functional changes 
 other
 than the names in the UDP case. It also appears that zap_msg_available() 
 can
 be ignored for now. Let me know if I'm wrong about these.
 
 
 On Thu, Dec 5, 2013 at 2:01 PM, Lindley French lindl...@gmail.com
 wrote:
 
 Okay, I'm working on porting the UDP stuff to the latest ZMQ now. Most
 of the changes necessary are purely a matter of namespace, but there are 
 a
 few others that seem to reflect design changes in ZMQ since XS was 
 forked.
 These are the ones I'm not immediately sure how to solve:
 
 1) The XS UDP code references encoder_t and decoder_t, but ZMQ has
 v1_encoder_t and v2_encoder_t etc instead.
 2) i_engine appears to have three pure virtual methods that are not
 defined in the XS code: restart_input, restart_output, and
 zap_msg_available().
 
 Any suggestions how to resolve these?
 
 
 On Thu, Dec 5, 2013 at 10:52 AM, Lindley French lindl...@gmail.com
 wrote:
 
 Thanks, I found it. I don't see any reason given as to why UDP support
 was reverted, though. Are there issues with the code, philosophical
 objections, etc?
 
 
 On Wed, Dec 4, 2013 at 5:16 PM, Ivan Pechorin
 ivan.pecho...@gmail.com wrote:
 
 UDP support was reverted in libxs just before 1.2.0 release: check
 the commits history on github around June 13th, 2012.
 
 05.12.2013 6:48 пользователь Lindley French lindl...@gmail.com
 написал:
 
 Can you clarify where in the Crossroads IO library the UDP transport
 code lives? I've downloaded the 1.2.0 tarball here:
 http://download.crossroads.io/libxs-1.2.0.tar.gz
 but so far, I don't see a UDP transport in that code. I also checked
 the github version:
 https://github.com/crossroads-io/libxs
 but I don't see it there either.
 
 On Wed, Nov 27, 2013 at 11:26 AM, Charles Remes
 li...@chuckremes.com wrote:
 
 That defunct library (crossroads io) has the code that you want.
 That lib was a fork of zeromq, so moving the UDP transport from that 
 library
 to zeromq should be easy (for varying degrees of easy). Once it 
 makes it
 into zeromq, it will be supported.
 
 
 On Nov 27, 2013, at 9:50 AM, Lindley French lindl...@gmail.com
 wrote:
 
 I've never used ZeroMQ before so writing up a new transport would
 be just a bit ambitious right now. (I did write something in Java 
 last year
 that, in retrospect, was solving basically the same problem as 
 ZeroMQ so I
 have some familiarity with the problem space.)
 
 I'm also leery of adopting a defunct library for a new project.
 
 I'll keep the udp transport option in mind.
 
 
 On Tue, Nov 26, 2013 at 1:18 PM, Pieter Hintjens p...@imatix.com
 wrote:
 
 Hi Lindley,
 
 The right solution would be to make a UDP transport for ZeroMQ.
 It's
 not a trivial project but could start with, for instance, 

Re: [zeromq-dev] When unreliability is desired

2013-12-05 Thread Lindley French
Thanks, I found it. I don't see any reason given as to why UDP support was
reverted, though. Are there issues with the code, philosophical objections,
etc?


On Wed, Dec 4, 2013 at 5:16 PM, Ivan Pechorin ivan.pecho...@gmail.comwrote:

 UDP support was reverted in libxs just before 1.2.0 release: check the
 commits history on github around June 13th, 2012.
 05.12.2013 6:48 пользователь Lindley French lindl...@gmail.com
 написал:

 Can you clarify where in the Crossroads IO library the UDP transport code
 lives? I've downloaded the 1.2.0 tarball here:
 http://download.crossroads.io/libxs-1.2.0.tar.gz
 but so far, I don't see a UDP transport in that code. I also checked the
 github version:
 https://github.com/crossroads-io/libxs
 but I don't see it there either.

 On Wed, Nov 27, 2013 at 11:26 AM, Charles Remes li...@chuckremes.comwrote:

 That defunct library (crossroads io) has the code that you want. That
 lib was a fork of zeromq, so moving the UDP transport from that library to
 zeromq should be easy (for varying degrees of easy). Once it makes it into
 zeromq, it will be supported.


 On Nov 27, 2013, at 9:50 AM, Lindley French lindl...@gmail.com wrote:

 I've never used ZeroMQ before so writing up a new transport would be
 just a bit ambitious right now. (I did write something in Java last year
 that, in retrospect, was solving basically the same problem as ZeroMQ so I
 have some familiarity with the problem space.)

 I'm also leery of adopting a defunct library for a new project.

 I'll keep the udp transport option in mind.


 On Tue, Nov 26, 2013 at 1:18 PM, Pieter Hintjens p...@imatix.com wrote:

 Hi Lindley,

 The right solution would be to make a UDP transport for ZeroMQ. It's
 not a trivial project but could start with, for instance, just pub/sub
 (like PGM).

 It might be worth looking at Crossroads.io for that, which is
 abandoned but had afair a UDP transport, and shared the same original
 codebase with ZeroMQ.

 -Pieter

 On Tue, Nov 26, 2013 at 6:15 PM, Lindley French lindl...@gmail.com
 wrote:
  I have a networking application that I'd like to use ZeroMQ in.
 However, my
  use-case demands minimum latency even at the expense of lost
 messages. I'm
  weary of using ZeroMQ's TCP transport because if packets are dropped,
 TCP
  will block further messages until it has retransmitted the last one,
 and I
  don't want that behavior.
 
  I don't mind FEC codes or other strategies to improve reliability by
 sending
  more data up-front, but I do not need complete reliability and I want
 to
  avoid retransmission of messages, or at the least avoid blocking later
  messages if earlier ones need to be retransmitted.
 
  Is there an existing ZeroMQ transport that will provide the behavior
 I want?
  I was thinking maybe epgm would do the trick, even though I don't
 really
  need multicast. Ideally, I'd want a transport that uses pure UDP for
  messages, perhaps with some TCP behind the scenes for out-of-band
  handshaking.
 
  I may end up just using UDP myself for the time-critical messages, and
  ZeroMQ for less critical data, but I'd prefer to avoid multiple-API
 creep.
 
  ___
  zeromq-dev mailing list
  zeromq-dev@lists.zeromq.org
  http://lists.zeromq.org/mailman/listinfo/zeromq-dev
 
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev


 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev



 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev



 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev


 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev


___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-05 Thread Lindley French
It appears that at some point, activate_in was renamed to restart_input,
and likewise with output. I'm assuming there are no functional changes
other than the names in the UDP case. It also appears that
zap_msg_available() can be ignored for now. Let me know if I'm wrong about
these.


On Thu, Dec 5, 2013 at 2:01 PM, Lindley French lindl...@gmail.com wrote:

 Okay, I'm working on porting the UDP stuff to the latest ZMQ now. Most of
 the changes necessary are purely a matter of namespace, but there are a few
 others that seem to reflect design changes in ZMQ since XS was forked.
 These are the ones I'm not immediately sure how to solve:

 1) The XS UDP code references encoder_t and decoder_t, but ZMQ has
 v1_encoder_t and v2_encoder_t etc instead.
 2) i_engine appears to have three pure virtual methods that are not
 defined in the XS code: restart_input, restart_output, and
 zap_msg_available().

 Any suggestions how to resolve these?


 On Thu, Dec 5, 2013 at 10:52 AM, Lindley French lindl...@gmail.comwrote:

 Thanks, I found it. I don't see any reason given as to why UDP support
 was reverted, though. Are there issues with the code, philosophical
 objections, etc?


 On Wed, Dec 4, 2013 at 5:16 PM, Ivan Pechorin ivan.pecho...@gmail.comwrote:

 UDP support was reverted in libxs just before 1.2.0 release: check the
 commits history on github around June 13th, 2012.
 05.12.2013 6:48 пользователь Lindley French lindl...@gmail.com
 написал:

 Can you clarify where in the Crossroads IO library the UDP transport
 code lives? I've downloaded the 1.2.0 tarball here:
 http://download.crossroads.io/libxs-1.2.0.tar.gz
 but so far, I don't see a UDP transport in that code. I also checked
 the github version:
 https://github.com/crossroads-io/libxs
 but I don't see it there either.

 On Wed, Nov 27, 2013 at 11:26 AM, Charles Remes 
 li...@chuckremes.comwrote:

 That defunct library (crossroads io) has the code that you want. That
 lib was a fork of zeromq, so moving the UDP transport from that library to
 zeromq should be easy (for varying degrees of easy). Once it makes it into
 zeromq, it will be supported.


 On Nov 27, 2013, at 9:50 AM, Lindley French lindl...@gmail.com
 wrote:

 I've never used ZeroMQ before so writing up a new transport would be
 just a bit ambitious right now. (I did write something in Java last year
 that, in retrospect, was solving basically the same problem as ZeroMQ so I
 have some familiarity with the problem space.)

 I'm also leery of adopting a defunct library for a new project.

 I'll keep the udp transport option in mind.


 On Tue, Nov 26, 2013 at 1:18 PM, Pieter Hintjens p...@imatix.comwrote:

 Hi Lindley,

 The right solution would be to make a UDP transport for ZeroMQ. It's
 not a trivial project but could start with, for instance, just pub/sub
 (like PGM).

 It might be worth looking at Crossroads.io for that, which is
 abandoned but had afair a UDP transport, and shared the same original
 codebase with ZeroMQ.

 -Pieter

 On Tue, Nov 26, 2013 at 6:15 PM, Lindley French lindl...@gmail.com
 wrote:
  I have a networking application that I'd like to use ZeroMQ in.
 However, my
  use-case demands minimum latency even at the expense of lost
 messages. I'm
  weary of using ZeroMQ's TCP transport because if packets are
 dropped, TCP
  will block further messages until it has retransmitted the last
 one, and I
  don't want that behavior.
 
  I don't mind FEC codes or other strategies to improve reliability
 by sending
  more data up-front, but I do not need complete reliability and I
 want to
  avoid retransmission of messages, or at the least avoid blocking
 later
  messages if earlier ones need to be retransmitted.
 
  Is there an existing ZeroMQ transport that will provide the
 behavior I want?
  I was thinking maybe epgm would do the trick, even though I don't
 really
  need multicast. Ideally, I'd want a transport that uses pure UDP for
  messages, perhaps with some TCP behind the scenes for out-of-band
  handshaking.
 
  I may end up just using UDP myself for the time-critical messages,
 and
  ZeroMQ for less critical data, but I'd prefer to avoid multiple-API
 creep.
 
  ___
  zeromq-dev mailing list
  zeromq-dev@lists.zeromq.org
  http://lists.zeromq.org/mailman/listinfo/zeromq-dev
 
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev


 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev



 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev



 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev


 

Re: [zeromq-dev] When unreliability is desired

2013-12-05 Thread Lindley French
I'm trying to make sure I understand how the timer_ids work, since these
were not in the Crossroads IO code. It appears several classes define
timer_id constants as anonymous enums. Furthermore, the values of these
constants don't appear to follow any particular pattern, *except* that
constants with the same name (same purpose?) are assigned the same value.
Therefore, I expect I ought to adopt tx_timer_id and rx_timer_id from
pgm_sender without changing their values for udp_sender etc. Am I
understanding this correctly?


On Thu, Dec 5, 2013 at 3:06 PM, Lindley French lindl...@gmail.com wrote:

 It appears that at some point, activate_in was renamed to restart_input,
 and likewise with output. I'm assuming there are no functional changes
 other than the names in the UDP case. It also appears that
 zap_msg_available() can be ignored for now. Let me know if I'm wrong about
 these.


 On Thu, Dec 5, 2013 at 2:01 PM, Lindley French lindl...@gmail.com wrote:

 Okay, I'm working on porting the UDP stuff to the latest ZMQ now. Most of
 the changes necessary are purely a matter of namespace, but there are a few
 others that seem to reflect design changes in ZMQ since XS was forked.
 These are the ones I'm not immediately sure how to solve:

 1) The XS UDP code references encoder_t and decoder_t, but ZMQ has
 v1_encoder_t and v2_encoder_t etc instead.
 2) i_engine appears to have three pure virtual methods that are not
 defined in the XS code: restart_input, restart_output, and
 zap_msg_available().

 Any suggestions how to resolve these?


 On Thu, Dec 5, 2013 at 10:52 AM, Lindley French lindl...@gmail.comwrote:

 Thanks, I found it. I don't see any reason given as to why UDP support
 was reverted, though. Are there issues with the code, philosophical
 objections, etc?


 On Wed, Dec 4, 2013 at 5:16 PM, Ivan Pechorin 
 ivan.pecho...@gmail.comwrote:

 UDP support was reverted in libxs just before 1.2.0 release: check the
 commits history on github around June 13th, 2012.
 05.12.2013 6:48 пользователь Lindley French lindl...@gmail.com
 написал:

 Can you clarify where in the Crossroads IO library the UDP transport
 code lives? I've downloaded the 1.2.0 tarball here:
 http://download.crossroads.io/libxs-1.2.0.tar.gz
 but so far, I don't see a UDP transport in that code. I also checked
 the github version:
 https://github.com/crossroads-io/libxs
 but I don't see it there either.

 On Wed, Nov 27, 2013 at 11:26 AM, Charles Remes 
 li...@chuckremes.comwrote:

 That defunct library (crossroads io) has the code that you want. That
 lib was a fork of zeromq, so moving the UDP transport from that library 
 to
 zeromq should be easy (for varying degrees of easy). Once it makes it 
 into
 zeromq, it will be supported.


 On Nov 27, 2013, at 9:50 AM, Lindley French lindl...@gmail.com
 wrote:

 I've never used ZeroMQ before so writing up a new transport would be
 just a bit ambitious right now. (I did write something in Java last year
 that, in retrospect, was solving basically the same problem as ZeroMQ so 
 I
 have some familiarity with the problem space.)

 I'm also leery of adopting a defunct library for a new project.

 I'll keep the udp transport option in mind.


 On Tue, Nov 26, 2013 at 1:18 PM, Pieter Hintjens p...@imatix.comwrote:

 Hi Lindley,

 The right solution would be to make a UDP transport for ZeroMQ. It's
 not a trivial project but could start with, for instance, just
 pub/sub
 (like PGM).

 It might be worth looking at Crossroads.io for that, which is
 abandoned but had afair a UDP transport, and shared the same original
 codebase with ZeroMQ.

 -Pieter

 On Tue, Nov 26, 2013 at 6:15 PM, Lindley French lindl...@gmail.com
 wrote:
  I have a networking application that I'd like to use ZeroMQ in.
 However, my
  use-case demands minimum latency even at the expense of lost
 messages. I'm
  weary of using ZeroMQ's TCP transport because if packets are
 dropped, TCP
  will block further messages until it has retransmitted the last
 one, and I
  don't want that behavior.
 
  I don't mind FEC codes or other strategies to improve reliability
 by sending
  more data up-front, but I do not need complete reliability and I
 want to
  avoid retransmission of messages, or at the least avoid blocking
 later
  messages if earlier ones need to be retransmitted.
 
  Is there an existing ZeroMQ transport that will provide the
 behavior I want?
  I was thinking maybe epgm would do the trick, even though I don't
 really
  need multicast. Ideally, I'd want a transport that uses pure UDP
 for
  messages, perhaps with some TCP behind the scenes for out-of-band
  handshaking.
 
  I may end up just using UDP myself for the time-critical messages,
 and
  ZeroMQ for less critical data, but I'd prefer to avoid
 multiple-API creep.
 
  ___
  zeromq-dev mailing list
  zeromq-dev@lists.zeromq.org
  http://lists.zeromq.org/mailman/listinfo/zeromq-dev
 
 

Re: [zeromq-dev] When unreliability is desired

2013-12-05 Thread Lindley French
Disregard the question about timers, it appears this was a change made to
Crossroads IO after the fork. I found the relevant commit:
https://github.com/crossroads-io/libxs/commit/2df873a435ff139cf9d1b10b666d75e6dc6da442#diff-45c9686e09ed422318a2da658745dedd
I will revert the code to the 0MQ way of doing things for now.


On Thu, Dec 5, 2013 at 3:48 PM, Lindley French lindl...@gmail.com wrote:

 I'm trying to make sure I understand how the timer_ids work, since these
 were not in the Crossroads IO code. It appears several classes define
 timer_id constants as anonymous enums. Furthermore, the values of these
 constants don't appear to follow any particular pattern, *except* that
 constants with the same name (same purpose?) are assigned the same value.
 Therefore, I expect I ought to adopt tx_timer_id and rx_timer_id from
 pgm_sender without changing their values for udp_sender etc. Am I
 understanding this correctly?


 On Thu, Dec 5, 2013 at 3:06 PM, Lindley French lindl...@gmail.com wrote:

 It appears that at some point, activate_in was renamed to restart_input,
 and likewise with output. I'm assuming there are no functional changes
 other than the names in the UDP case. It also appears that
 zap_msg_available() can be ignored for now. Let me know if I'm wrong about
 these.


 On Thu, Dec 5, 2013 at 2:01 PM, Lindley French lindl...@gmail.comwrote:

 Okay, I'm working on porting the UDP stuff to the latest ZMQ now. Most
 of the changes necessary are purely a matter of namespace, but there are a
 few others that seem to reflect design changes in ZMQ since XS was forked.
 These are the ones I'm not immediately sure how to solve:

 1) The XS UDP code references encoder_t and decoder_t, but ZMQ has
 v1_encoder_t and v2_encoder_t etc instead.
 2) i_engine appears to have three pure virtual methods that are not
 defined in the XS code: restart_input, restart_output, and
 zap_msg_available().

 Any suggestions how to resolve these?


 On Thu, Dec 5, 2013 at 10:52 AM, Lindley French lindl...@gmail.comwrote:

 Thanks, I found it. I don't see any reason given as to why UDP support
 was reverted, though. Are there issues with the code, philosophical
 objections, etc?


 On Wed, Dec 4, 2013 at 5:16 PM, Ivan Pechorin 
 ivan.pecho...@gmail.comwrote:

 UDP support was reverted in libxs just before 1.2.0 release: check the
 commits history on github around June 13th, 2012.
 05.12.2013 6:48 пользователь Lindley French lindl...@gmail.com
 написал:

 Can you clarify where in the Crossroads IO library the UDP transport
 code lives? I've downloaded the 1.2.0 tarball here:
 http://download.crossroads.io/libxs-1.2.0.tar.gz
 but so far, I don't see a UDP transport in that code. I also checked
 the github version:
 https://github.com/crossroads-io/libxs
 but I don't see it there either.

 On Wed, Nov 27, 2013 at 11:26 AM, Charles Remes li...@chuckremes.com
  wrote:

 That defunct library (crossroads io) has the code that you want.
 That lib was a fork of zeromq, so moving the UDP transport from that
 library to zeromq should be easy (for varying degrees of easy). Once it
 makes it into zeromq, it will be supported.


 On Nov 27, 2013, at 9:50 AM, Lindley French lindl...@gmail.com
 wrote:

 I've never used ZeroMQ before so writing up a new transport would be
 just a bit ambitious right now. (I did write something in Java last year
 that, in retrospect, was solving basically the same problem as ZeroMQ 
 so I
 have some familiarity with the problem space.)

 I'm also leery of adopting a defunct library for a new project.

 I'll keep the udp transport option in mind.


 On Tue, Nov 26, 2013 at 1:18 PM, Pieter Hintjens p...@imatix.comwrote:

 Hi Lindley,

 The right solution would be to make a UDP transport for ZeroMQ. It's
 not a trivial project but could start with, for instance, just
 pub/sub
 (like PGM).

 It might be worth looking at Crossroads.io for that, which is
 abandoned but had afair a UDP transport, and shared the same
 original
 codebase with ZeroMQ.

 -Pieter

 On Tue, Nov 26, 2013 at 6:15 PM, Lindley French lindl...@gmail.com
 wrote:
  I have a networking application that I'd like to use ZeroMQ in.
 However, my
  use-case demands minimum latency even at the expense of lost
 messages. I'm
  weary of using ZeroMQ's TCP transport because if packets are
 dropped, TCP
  will block further messages until it has retransmitted the last
 one, and I
  don't want that behavior.
 
  I don't mind FEC codes or other strategies to improve reliability
 by sending
  more data up-front, but I do not need complete reliability and I
 want to
  avoid retransmission of messages, or at the least avoid blocking
 later
  messages if earlier ones need to be retransmitted.
 
  Is there an existing ZeroMQ transport that will provide the
 behavior I want?
  I was thinking maybe epgm would do the trick, even though I don't
 really
  need multicast. Ideally, I'd want a transport that uses pure UDP
 for
  messages, perhaps with some TCP behind the 

Re: [zeromq-dev] When unreliability is desired

2013-12-05 Thread Charles Remes
Feel free to rubber duck with the list as much as you want. :)

cr

On Dec 5, 2013, at 3:08 PM, Lindley French lindl...@gmail.com wrote:

 Disregard the question about timers, it appears this was a change made to 
 Crossroads IO after the fork. I found the relevant commit:
 https://github.com/crossroads-io/libxs/commit/2df873a435ff139cf9d1b10b666d75e6dc6da442#diff-45c9686e09ed422318a2da658745dedd
 I will revert the code to the 0MQ way of doing things for now.
 
 
 On Thu, Dec 5, 2013 at 3:48 PM, Lindley French lindl...@gmail.com wrote:
 I'm trying to make sure I understand how the timer_ids work, since these were 
 not in the Crossroads IO code. It appears several classes define timer_id 
 constants as anonymous enums. Furthermore, the values of these constants 
 don't appear to follow any particular pattern, *except* that constants with 
 the same name (same purpose?) are assigned the same value. Therefore, I 
 expect I ought to adopt tx_timer_id and rx_timer_id from pgm_sender without 
 changing their values for udp_sender etc. Am I understanding this correctly?
 
 
 On Thu, Dec 5, 2013 at 3:06 PM, Lindley French lindl...@gmail.com wrote:
 It appears that at some point, activate_in was renamed to restart_input, and 
 likewise with output. I'm assuming there are no functional changes other than 
 the names in the UDP case. It also appears that zap_msg_available() can be 
 ignored for now. Let me know if I'm wrong about these.
 
 
 On Thu, Dec 5, 2013 at 2:01 PM, Lindley French lindl...@gmail.com wrote:
 Okay, I'm working on porting the UDP stuff to the latest ZMQ now. Most of the 
 changes necessary are purely a matter of namespace, but there are a few 
 others that seem to reflect design changes in ZMQ since XS was forked. These 
 are the ones I'm not immediately sure how to solve:
 
 1) The XS UDP code references encoder_t and decoder_t, but ZMQ has 
 v1_encoder_t and v2_encoder_t etc instead.
 2) i_engine appears to have three pure virtual methods that are not defined 
 in the XS code: restart_input, restart_output, and zap_msg_available().
 
 Any suggestions how to resolve these?
 
 
 On Thu, Dec 5, 2013 at 10:52 AM, Lindley French lindl...@gmail.com wrote:
 Thanks, I found it. I don't see any reason given as to why UDP support was 
 reverted, though. Are there issues with the code, philosophical objections, 
 etc?
 
 
 On Wed, Dec 4, 2013 at 5:16 PM, Ivan Pechorin ivan.pecho...@gmail.com wrote:
 UDP support was reverted in libxs just before 1.2.0 release: check the 
 commits history on github around June 13th, 2012.
 
 05.12.2013 6:48 пользователь Lindley French lindl...@gmail.com написал:
 
 Can you clarify where in the Crossroads IO library the UDP transport code 
 lives? I've downloaded the 1.2.0 tarball here:
 http://download.crossroads.io/libxs-1.2.0.tar.gz
 but so far, I don't see a UDP transport in that code. I also checked the 
 github version:
 https://github.com/crossroads-io/libxs
 but I don't see it there either.
 
 On Wed, Nov 27, 2013 at 11:26 AM, Charles Remes li...@chuckremes.com wrote:
 That defunct library (crossroads io) has the code that you want. That lib was 
 a fork of zeromq, so moving the UDP transport from that library to zeromq 
 should be easy (for varying degrees of easy). Once it makes it into zeromq, 
 it will be supported.
 
 
 On Nov 27, 2013, at 9:50 AM, Lindley French lindl...@gmail.com wrote:
 
 I've never used ZeroMQ before so writing up a new transport would be just a 
 bit ambitious right now. (I did write something in Java last year that, in 
 retrospect, was solving basically the same problem as ZeroMQ so I have some 
 familiarity with the problem space.)
 
 I'm also leery of adopting a defunct library for a new project.
 
 I'll keep the udp transport option in mind.
 
 
 On Tue, Nov 26, 2013 at 1:18 PM, Pieter Hintjens p...@imatix.com wrote:
 Hi Lindley,
 
 The right solution would be to make a UDP transport for ZeroMQ. It's
 not a trivial project but could start with, for instance, just pub/sub
 (like PGM).
 
 It might be worth looking at Crossroads.io for that, which is
 abandoned but had afair a UDP transport, and shared the same original
 codebase with ZeroMQ.
 
 -Pieter
 
 On Tue, Nov 26, 2013 at 6:15 PM, Lindley French lindl...@gmail.com wrote:
  I have a networking application that I'd like to use ZeroMQ in. However, my
  use-case demands minimum latency even at the expense of lost messages. I'm
  weary of using ZeroMQ's TCP transport because if packets are dropped, TCP
  will block further messages until it has retransmitted the last one, and I
  don't want that behavior.
 
  I don't mind FEC codes or other strategies to improve reliability by 
  sending
  more data up-front, but I do not need complete reliability and I want to
  avoid retransmission of messages, or at the least avoid blocking later
  messages if earlier ones need to be retransmitted.
 
  Is there an existing ZeroMQ transport that will provide the behavior I 
  want?
  I was thinking 

Re: [zeromq-dev] When unreliability is desired

2013-12-04 Thread Lindley French
Can you clarify where in the Crossroads IO library the UDP transport code
lives? I've downloaded the 1.2.0 tarball here:
http://download.crossroads.io/libxs-1.2.0.tar.gz
but so far, I don't see a UDP transport in that code. I also checked the
github version:
https://github.com/crossroads-io/libxs
but I don't see it there either.

On Wed, Nov 27, 2013 at 11:26 AM, Charles Remes li...@chuckremes.comwrote:

 That defunct library (crossroads io) has the code that you want. That lib
 was a fork of zeromq, so moving the UDP transport from that library to
 zeromq should be easy (for varying degrees of easy). Once it makes it into
 zeromq, it will be supported.


 On Nov 27, 2013, at 9:50 AM, Lindley French lindl...@gmail.com wrote:

 I've never used ZeroMQ before so writing up a new transport would be just
 a bit ambitious right now. (I did write something in Java last year that,
 in retrospect, was solving basically the same problem as ZeroMQ so I have
 some familiarity with the problem space.)

 I'm also leery of adopting a defunct library for a new project.

 I'll keep the udp transport option in mind.


 On Tue, Nov 26, 2013 at 1:18 PM, Pieter Hintjens p...@imatix.com wrote:

 Hi Lindley,

 The right solution would be to make a UDP transport for ZeroMQ. It's
 not a trivial project but could start with, for instance, just pub/sub
 (like PGM).

 It might be worth looking at Crossroads.io for that, which is
 abandoned but had afair a UDP transport, and shared the same original
 codebase with ZeroMQ.

 -Pieter

 On Tue, Nov 26, 2013 at 6:15 PM, Lindley French lindl...@gmail.com
 wrote:
  I have a networking application that I'd like to use ZeroMQ in.
 However, my
  use-case demands minimum latency even at the expense of lost messages.
 I'm
  weary of using ZeroMQ's TCP transport because if packets are dropped,
 TCP
  will block further messages until it has retransmitted the last one,
 and I
  don't want that behavior.
 
  I don't mind FEC codes or other strategies to improve reliability by
 sending
  more data up-front, but I do not need complete reliability and I want to
  avoid retransmission of messages, or at the least avoid blocking later
  messages if earlier ones need to be retransmitted.
 
  Is there an existing ZeroMQ transport that will provide the behavior I
 want?
  I was thinking maybe epgm would do the trick, even though I don't really
  need multicast. Ideally, I'd want a transport that uses pure UDP for
  messages, perhaps with some TCP behind the scenes for out-of-band
  handshaking.
 
  I may end up just using UDP myself for the time-critical messages, and
  ZeroMQ for less critical data, but I'd prefer to avoid multiple-API
 creep.
 
  ___
  zeromq-dev mailing list
  zeromq-dev@lists.zeromq.org
  http://lists.zeromq.org/mailman/listinfo/zeromq-dev
 
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev


 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev



 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev


___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-12-04 Thread Ivan Pechorin
UDP support was reverted in libxs just before 1.2.0 release: check the
commits history on github around June 13th, 2012.
05.12.2013 6:48 пользователь Lindley French lindl...@gmail.com написал:

 Can you clarify where in the Crossroads IO library the UDP transport code
 lives? I've downloaded the 1.2.0 tarball here:
 http://download.crossroads.io/libxs-1.2.0.tar.gz
 but so far, I don't see a UDP transport in that code. I also checked the
 github version:
 https://github.com/crossroads-io/libxs
 but I don't see it there either.

 On Wed, Nov 27, 2013 at 11:26 AM, Charles Remes li...@chuckremes.comwrote:

 That defunct library (crossroads io) has the code that you want. That lib
 was a fork of zeromq, so moving the UDP transport from that library to
 zeromq should be easy (for varying degrees of easy). Once it makes it into
 zeromq, it will be supported.


 On Nov 27, 2013, at 9:50 AM, Lindley French lindl...@gmail.com wrote:

 I've never used ZeroMQ before so writing up a new transport would be just
 a bit ambitious right now. (I did write something in Java last year that,
 in retrospect, was solving basically the same problem as ZeroMQ so I have
 some familiarity with the problem space.)

 I'm also leery of adopting a defunct library for a new project.

 I'll keep the udp transport option in mind.


 On Tue, Nov 26, 2013 at 1:18 PM, Pieter Hintjens p...@imatix.com wrote:

 Hi Lindley,

 The right solution would be to make a UDP transport for ZeroMQ. It's
 not a trivial project but could start with, for instance, just pub/sub
 (like PGM).

 It might be worth looking at Crossroads.io for that, which is
 abandoned but had afair a UDP transport, and shared the same original
 codebase with ZeroMQ.

 -Pieter

 On Tue, Nov 26, 2013 at 6:15 PM, Lindley French lindl...@gmail.com
 wrote:
  I have a networking application that I'd like to use ZeroMQ in.
 However, my
  use-case demands minimum latency even at the expense of lost messages.
 I'm
  weary of using ZeroMQ's TCP transport because if packets are dropped,
 TCP
  will block further messages until it has retransmitted the last one,
 and I
  don't want that behavior.
 
  I don't mind FEC codes or other strategies to improve reliability by
 sending
  more data up-front, but I do not need complete reliability and I want
 to
  avoid retransmission of messages, or at the least avoid blocking later
  messages if earlier ones need to be retransmitted.
 
  Is there an existing ZeroMQ transport that will provide the behavior I
 want?
  I was thinking maybe epgm would do the trick, even though I don't
 really
  need multicast. Ideally, I'd want a transport that uses pure UDP for
  messages, perhaps with some TCP behind the scenes for out-of-band
  handshaking.
 
  I may end up just using UDP myself for the time-critical messages, and
  ZeroMQ for less critical data, but I'd prefer to avoid multiple-API
 creep.
 
  ___
  zeromq-dev mailing list
  zeromq-dev@lists.zeromq.org
  http://lists.zeromq.org/mailman/listinfo/zeromq-dev
 
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev


 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev



 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev



 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev


___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-11-27 Thread Lindley French
I've never used ZeroMQ before so writing up a new transport would be just a
bit ambitious right now. (I did write something in Java last year that, in
retrospect, was solving basically the same problem as ZeroMQ so I have some
familiarity with the problem space.)

I'm also leery of adopting a defunct library for a new project.

I'll keep the udp transport option in mind.


On Tue, Nov 26, 2013 at 1:18 PM, Pieter Hintjens p...@imatix.com wrote:

 Hi Lindley,

 The right solution would be to make a UDP transport for ZeroMQ. It's
 not a trivial project but could start with, for instance, just pub/sub
 (like PGM).

 It might be worth looking at Crossroads.io for that, which is
 abandoned but had afair a UDP transport, and shared the same original
 codebase with ZeroMQ.

 -Pieter

 On Tue, Nov 26, 2013 at 6:15 PM, Lindley French lindl...@gmail.com
 wrote:
  I have a networking application that I'd like to use ZeroMQ in. However,
 my
  use-case demands minimum latency even at the expense of lost messages.
 I'm
  weary of using ZeroMQ's TCP transport because if packets are dropped, TCP
  will block further messages until it has retransmitted the last one, and
 I
  don't want that behavior.
 
  I don't mind FEC codes or other strategies to improve reliability by
 sending
  more data up-front, but I do not need complete reliability and I want to
  avoid retransmission of messages, or at the least avoid blocking later
  messages if earlier ones need to be retransmitted.
 
  Is there an existing ZeroMQ transport that will provide the behavior I
 want?
  I was thinking maybe epgm would do the trick, even though I don't really
  need multicast. Ideally, I'd want a transport that uses pure UDP for
  messages, perhaps with some TCP behind the scenes for out-of-band
  handshaking.
 
  I may end up just using UDP myself for the time-critical messages, and
  ZeroMQ for less critical data, but I'd prefer to avoid multiple-API
 creep.
 
  ___
  zeromq-dev mailing list
  zeromq-dev@lists.zeromq.org
  http://lists.zeromq.org/mailman/listinfo/zeromq-dev
 
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev

___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-11-27 Thread Arnaud Loonstra
On 11/27/2013 04:50 PM, Lindley French wrote:
 I've never used ZeroMQ before so writing up a new transport would be
 just a bit ambitious right now. (I did write something in Java last year
 that, in retrospect, was solving basically the same problem as ZeroMQ so
 I have some familiarity with the problem space.)

 I'm also leery of adopting a defunct library for a new project.

 I'll keep the udp transport option in mind.


I'm also very interested in an udp transport for the exact same reasons. 
I would be writing such transport if I had time and/or resources to do 
so. It shouldn't be too hard I guess. How much would it take? Could 
anybody elaborate on that?

Arnaud.
-- 
w: http://www.sphaero.org
t: http://twitter.com/sphaero
g: http://github.com/sphaero
i: freenode: sphaero_z25
___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-11-27 Thread Charles Remes
That defunct library (crossroads io) has the code that you want. That lib was a 
fork of zeromq, so moving the UDP transport from that library to zeromq should 
be easy (for varying degrees of easy). Once it makes it into zeromq, it will be 
supported.


On Nov 27, 2013, at 9:50 AM, Lindley French lindl...@gmail.com wrote:

 I've never used ZeroMQ before so writing up a new transport would be just a 
 bit ambitious right now. (I did write something in Java last year that, in 
 retrospect, was solving basically the same problem as ZeroMQ so I have some 
 familiarity with the problem space.)
 
 I'm also leery of adopting a defunct library for a new project.
 
 I'll keep the udp transport option in mind.
 
 
 On Tue, Nov 26, 2013 at 1:18 PM, Pieter Hintjens p...@imatix.com wrote:
 Hi Lindley,
 
 The right solution would be to make a UDP transport for ZeroMQ. It's
 not a trivial project but could start with, for instance, just pub/sub
 (like PGM).
 
 It might be worth looking at Crossroads.io for that, which is
 abandoned but had afair a UDP transport, and shared the same original
 codebase with ZeroMQ.
 
 -Pieter
 
 On Tue, Nov 26, 2013 at 6:15 PM, Lindley French lindl...@gmail.com wrote:
  I have a networking application that I'd like to use ZeroMQ in. However, my
  use-case demands minimum latency even at the expense of lost messages. I'm
  weary of using ZeroMQ's TCP transport because if packets are dropped, TCP
  will block further messages until it has retransmitted the last one, and I
  don't want that behavior.
 
  I don't mind FEC codes or other strategies to improve reliability by sending
  more data up-front, but I do not need complete reliability and I want to
  avoid retransmission of messages, or at the least avoid blocking later
  messages if earlier ones need to be retransmitted.
 
  Is there an existing ZeroMQ transport that will provide the behavior I want?
  I was thinking maybe epgm would do the trick, even though I don't really
  need multicast. Ideally, I'd want a transport that uses pure UDP for
  messages, perhaps with some TCP behind the scenes for out-of-band
  handshaking.
 
  I may end up just using UDP myself for the time-critical messages, and
  ZeroMQ for less critical data, but I'd prefer to avoid multiple-API creep.
 
  ___
  zeromq-dev mailing list
  zeromq-dev@lists.zeromq.org
  http://lists.zeromq.org/mailman/listinfo/zeromq-dev
 
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev
 
 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev

___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-11-27 Thread Pieter Hintjens
On Wed, Nov 27, 2013 at 5:26 PM, Charles Remes li...@chuckremes.com wrote:

 That defunct library (crossroads io) has the code that you want. That lib
 was a fork of zeromq, so moving the UDP transport from that library to
 zeromq should be easy (for varying degrees of easy). Once it makes it into
 zeromq, it will be supported.

Indeed... the code should be rapidly usable. License compatible.

I'll help once/if the code is ported; it'll need documentation and
protocol specs.

A UDP transport would be... awesome!

-Pieter
___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


[zeromq-dev] When unreliability is desired

2013-11-26 Thread Lindley French
I have a networking application that I'd like to use ZeroMQ in. However, my
use-case demands minimum latency even at the expense of lost messages. I'm
weary of using ZeroMQ's TCP transport because if packets are dropped, TCP
will block further messages until it has retransmitted the last one, and I
don't want that behavior.

I don't mind FEC codes or other strategies to improve reliability by
sending more data up-front, but I do not need complete reliability and I
want to avoid retransmission of messages, or at the least avoid blocking
later messages if earlier ones need to be retransmitted.

Is there an existing ZeroMQ transport that will provide the behavior I
want? I was thinking maybe epgm would do the trick, even though I don't
really need multicast. Ideally, I'd want a transport that uses pure UDP for
messages, perhaps with some TCP behind the scenes for out-of-band
handshaking.

I may end up just using UDP myself for the time-critical messages, and
ZeroMQ for less critical data, but I'd prefer to avoid multiple-API creep.
___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


Re: [zeromq-dev] When unreliability is desired

2013-11-26 Thread Pieter Hintjens
Hi Lindley,

The right solution would be to make a UDP transport for ZeroMQ. It's
not a trivial project but could start with, for instance, just pub/sub
(like PGM).

It might be worth looking at Crossroads.io for that, which is
abandoned but had afair a UDP transport, and shared the same original
codebase with ZeroMQ.

-Pieter

On Tue, Nov 26, 2013 at 6:15 PM, Lindley French lindl...@gmail.com wrote:
 I have a networking application that I'd like to use ZeroMQ in. However, my
 use-case demands minimum latency even at the expense of lost messages. I'm
 weary of using ZeroMQ's TCP transport because if packets are dropped, TCP
 will block further messages until it has retransmitted the last one, and I
 don't want that behavior.

 I don't mind FEC codes or other strategies to improve reliability by sending
 more data up-front, but I do not need complete reliability and I want to
 avoid retransmission of messages, or at the least avoid blocking later
 messages if earlier ones need to be retransmitted.

 Is there an existing ZeroMQ transport that will provide the behavior I want?
 I was thinking maybe epgm would do the trick, even though I don't really
 need multicast. Ideally, I'd want a transport that uses pure UDP for
 messages, perhaps with some TCP behind the scenes for out-of-band
 handshaking.

 I may end up just using UDP myself for the time-critical messages, and
 ZeroMQ for less critical data, but I'd prefer to avoid multiple-API creep.

 ___
 zeromq-dev mailing list
 zeromq-dev@lists.zeromq.org
 http://lists.zeromq.org/mailman/listinfo/zeromq-dev

___
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev