[zeromq-dev] Problems with ZeroMQ 4.1.2 and multicast transports on Windows

Steven McCoy steven.mccoy at miru.hk
Tue Jul 28 17:39:47 CEST 2015


On 23 July 2015 at 15:23, Andrew Novikov <as.asaw at gmail.com> wrote:

> If ZMQ_RATE of the multicast socket is lower than about 8 megabits per
> second, packets are sent to the network at the specified rate. But if
> the rate is set higher than that number, messages begin to get queued
> and newer transmitted faster than about 9-10 megabits per second. In
> fact, it seems that congestions start to appear and the average data
> transmission rate drops even lower than 8 megabits per second.
> Moreover, if I set the number of I/O threads in the ZMQ context to a
> value higher than 1, strange transmission gaps begin to appear: the
> zmqsend may stop transmitting data for several dozen seconds and then
> suddenly resume only to stop transmitting soon (messages continue to
> be generated and queued during the gaps).
>

Windows itself is not helping here, ZeroMQ and PGM is presently tuned for
larger numbers of smaller messages.  To work on Windows one needs to use
smaller quantities (significantly less than 10,000 per second) and larger
sizes, preferably at jumbogram sizes with packet fragmentation.  The cause
is that the WinSock interface has just too much overhead compared with the
performance of the stack itself.  Pushing too high rate into the stack also
causes problems due to inefficiencies of buffer management.  The stack
itself is incredibly good and can better Linux on the same hardware so it
is quite a complicated situation.

Ideal packet sizes for throughput are 64-128KB, I'll have comparable
configurations for other reliable multicast stacks.

So it is a research project and may require modification to the ZeroMQ
interface to open up options to make it easier to work with.  However also
note that pushing high data rates and
no-congestion-control-trivial-network-saturation protocols are not a good
mix.

For interesting alternative projects which I keep following please check
out these:

http://uftp-multicast.sourceforge.net/

https://github.com/real-logic/Aeron

-- 
Steve-o
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20150728/d63b8fab/attachment.htm>


More information about the zeromq-dev mailing list