[zeromq-dev] conventions in bindings

Gary Wright at2002+zmq at me.com
Fri Feb 3 02:52:39 CET 2012


On Feb 2, 2012, at 5:27 PM, Martin Sustrik wrote:
> As a side comment, the confusion stems from the fact that 0MQ protocol 
> is a mix of two logically separate layers, what I call "scalability 
> layer" at ~L5 and a simple presentation layer (L6, equivalent to XML or 
> JSON) for fragmenting the content of L5 message.

Hmm. My mental model is much different. I think 0MQ is much more
analogous to a L2 (data-link) layer.  0MQ connections only exist
between adjacent peers, there is no routing mechanism. 0MQ devices are
like link-level bridges. 0MQ provides no retransmission mechanism,
no topology-wide addressing or name-resolution, no mux/demux facilities.

That may sound like I'm dissing 0MQ but it is a pretty cool L2
framework. The segmented messages are very versatile, peers can be
transparently connected via intra/inter process links as well as LAN
and WAN connections, while muxing and demuxing (like TCP/UDP ports) is
mostly addressed by the multi-connection properties of 0MQ sockets.

I think all those features enable the construction of some 
interesting messaging systems but the fact remains that you are
*constructing* those systems on top of 0MQ--they aren't provided
by 0MQ. 

Gary Wright



More information about the zeromq-dev mailing list