[zeromq-dev] Another attempt to proxying CURVE
Andrew Hume
andrew at research.att.com
Fri Dec 20 14:01:55 CET 2013
i would say keep it here for now, laurent
On Dec 20, 2013, at 4:11 AM, Laurent Alebarde <l.alebarde at free.fr> wrote:
> Hi Pieter,
>
> Thank you for your great suggestion, because now it becomes an ambitious project.
> it's here : https://github.com/lalebarde/streamq-proxy
> with a RFC.
>
> Shall I create a dedicated mauiling list, or is it preferable to discuss it here ?
>
> Cheers,
>
> Laurent.
>
>
> Le 20/12/2013 09:34, Pieter Hintjens a écrit :
>> Hi Laurent,
>>
>> This approach is the only one that can work, without real protocol
>> changes, as I explained initially.
>>
>> I'd advise you *strongly* to work outside libzmq, on simple and
>> separate test cases that people can take and run. Just create a new
>> GitHub project. For building, you can use a hand-made Bash script that
>> invokes g++. Using libzmq as your codebase makes it too tricky for
>> others to take and play with this. Certainly I'm not comfortable
>> taking a fork of libzmq to test your specific case.
>>
>> A minimal test case fits into a pastebin and builds and runs alone, as
>> I've always done for the Guide examples.
>>
>> (You're going to argue that it's just one test program to try, and I'm
>> going to repeat that I won't run test code that's mixed into libzmq
>> like this. :-)
>>
>> When you move your proxy to a separate project, I'll take a look at it.
>>
>> -Pieter
>>
>>
>>
>>
>> On Thu, Dec 19, 2013 at 5:35 PM, Laurent Alebarde <l.alebarde at free.fr> wrote:
>>> Hi all,
>>>
>>> I am trying a more straight forward approach to proxy CURVE :
>>>
>>> client (CURVE DEALER) --------- frontend (ZMQ_STREAM) proxy (ZMQ_STREAM)
>>> backend ------- (CURVE DEALER) worker
>>>
>>> I have sticked to test_stream.cpp. The idea here is the proxy pools only
>>> workers at the beginning. When a worker connects, we pool also the client
>>> and the backend stays on standby until the client is identified. Then the
>>> proxy forwards all the messages from one to the other. There is a little
>>> state machine for the frontend and for the backend in the proxy.
>>>
>>> The code is simplified and works only with one client and one worker. So, I
>>> don't have to manage any pairing.
>>>
>>> It starts well, both client and worker are identified in the proxy, then
>>> both backend and frontend forward the identity and signature of one peer to
>>> the other.
>>>
>>> The problem is that just after the frontend has sent them, it receive back
>>> from the client its identity (as expected), and a 1 byte message (content =
>>> 3) instead of the greeting.
>>>
>>> All this is in my repository here :
>>> https://github.com/lalebarde/libzmq/commits/master
>>> File to consider is: test_curve_proxying.cpp
>>>
>>> Any help is welcome. Thanks.
>>>
>>> Laurent
>>>
>>>
>>>
>>> _______________________________________________
>>> zeromq-dev mailing list
>>> zeromq-dev at lists.zeromq.org
>>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>>>
>> _______________________________________________
>> zeromq-dev mailing list
>> zeromq-dev at lists.zeromq.org
>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
-----------------------
Andrew Hume
949-707-1964 (VO and best)
732-420-0907 (NJ)
andrew at research.att.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20131220/680a20c5/attachment.htm>
More information about the zeromq-dev
mailing list