[zeromq-dev] Question about identities
AJ Lewis
aj.lewis at quantum.com
Tue Dec 10 15:55:03 CET 2013
Only ROUTERs care about identities.
My understanding is that normally, a NULL ID is sent to the ROUTER at
connection time, which then assigns an identity to that connection (I assume
this is stored in a lookup table, where one column is the connection, and
the other is the ID). If the DEALER has explicitly set an ID, then that is
sent at connection time and the ROUTER stores it instead of a random one.
The DEALER doesn't do anything else with the ID.
The ROUTER then uses the lookup table when it gets messages with a routing
envelope containing an ID to figure out which connection to route the
message to.
Please correct me if I'm wrong about this. :)
AJ
On Tue, Dec 10, 2013 at 11:38:33AM +0100, Laurent Alebarde wrote:
> I did read ZMTP 3 RFC23 several times, but it is not so obvious, even with
> the "Worked Example". In particular if two clients connect in the same time
> to a ROUTER server. As the identity is communicated in the metadata at the
> end of the handcheck, how the server distinguishes the two clients ? Is
> there some temporary identities ? If yes, on what is it built ?
>
> Besides, setting an identity is an option. So a DEALER talking to a ROUTER
> SHALL set an arbitrary one. But it knows it talks to a ROUTER after having
> sent its identity. So it doesn't know it talks to a ROUTER when it sends its
> identity, and therefore, it can send an empty one.
>
> I remain a bit confused.
>
>
> Le 10/12/2013 10:17, Pieter Hintjens a écrit :
> >Laurent, please read the ZMTP v3 protocol spec with regard to
> >identities. A tells B, "this is my identity". B then uses that value
> >to refer to A, IF AND ONLY IF B IS A ROUTER. More usually, A says "I
> >have no identity" and B assigns an internal numeric identity.
> >
> >On Mon, Dec 9, 2013 at 3:59 PM, Laurent Alebarde <l.alebarde at free.fr> wrote:
> >>Hi Devs,
> >>
> >>Are the identities of two different sockets on the same peer the same,
> >>viewed by one single other peer ?
> >>
> >>Say:
> >>
> >>Node 1 ________________________________ Node 2
> >> Socket A1 (NULL) <----------------------------------> Socket A2
> >>(NULL) : Node 1 has identity I1a
> >> Socket B1 (CURVE) <---------------------------------> Socket B2
> >>(CURVE) : Node 1 has identity I1b
> >>
> >>Is I1a == I1b ?
> >>
> >>Cheers,
> >>
> >>
> >>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
--
AJ Lewis
Software Engineer
Quantum Corporation
Work: 651 688-4346
email: aj.lewis at quantum.com
----------------------------------------------------------------------
The information contained in this transmission may be confidential. Any disclosure, copying, or further distribution of confidential information is not permitted unless such privilege is explicitly granted in writing by Quantum. Quantum reserves the right to have electronic communications, including email and attachments, sent across its networks filtered through anti virus and spam software programs and retain such messages in order to comply with applicable data security and retention requirements. Quantum is not responsible for the proper and complete transmission of the substance of this communication or for any delay in its receipt.
More information about the zeromq-dev
mailing list