The problem is that the kernel will not multicast UDP unicast packets to each socket listening so it is probable the wrong socket is hearing the NAK.
On Fri, Mar 23, 2018 at 12:07 Montero, Antonio UTC CCS < antonio.mont...@fs.utc.com> wrote: > ZMQ’s implementation of PUB socket type does not allow for receive calls > to be made (zmq_recv is disabled), hence why I am trying to figure out how > does one trigger ZMQ to call “pgm_recv” on the PUB socket in order to get > the PUB socket to processes received NAKs from a remote SUB socket? > > I have tried querying the PUB socket state via ZMQ_EVENTS to triggering > the processing of any commands available for the socket however that does > not seem to move the PGM state machine in terms of processing NAKs. > > > > I am running both a PUB and SUB on the same application on the same host > and although I see the same set of sockets being created at the PGM level > for both PUB and SUB ZMQ sockets which includes multiple sockets binding to > the same port, this does not appear to cause any issues in terms of my SUB > socket able to receive multicast messages from a remote PUB and respond > with unicast NAKs when data loss is detected. > > > > Any ideas as to how a user should get ZMQ lib to trigger NAKs processing > for a PUB socket using either pgm/epgm transports? > > > > Thanks, > > Antonio Montero. > > *From:* zeromq-dev [mailto:zeromq-dev-boun...@lists.zeromq.org] *On > Behalf Of *Steven McCoy > *Sent:* Friday, March 23, 2018 9:55 AM > *To:* ZeroMQ development list > *Subject:* [External] Re: [zeromq-dev] A PGM/EPGM question > > > > You should check the PUB socket has a loop that is processing the incoming > NAK requests, this is usually recv call based. The symptoms indicate that > the protocol is operating TX-only. > > > > — > > Steve-o > > > > On Wed, Mar 21, 2018 at 19:50 Montero, Antonio UTC CCS < > antonio.mont...@fs.utc.com> wrote: > > Hello, > > I am having a bit of a hard time getting a ZMQ PUB socket reacting to PGM > NAKs which means at this point I am not able to recover lost packets > > I have tried with both protocols: (pgm and epgm). Still getting the same > result. > > > > I have a setup where I create both a PUB and SUB sockets in that order in > the same ZMQ context running on the same host and connected to the same > IPv6 multicast address and port. > > I have N nodes and each node has a PUB and SUB. All N nodes send messages > asynchronously and all N nodes receive all messages. My multicast network > is working fine whether I use pgm or epgm and all N nodes communicate with > each other over IPv6 multicast. > > The issue I am having is when a packet loss occurs, a remote SUB sends a > unicast NAK back to the source PUB however I am not seeing any NCF or RDATA > being sent by the source PUB. I have verified that the packets in question > are in fact still in the Tx Window as reported by the SPMs being sent by > the source PUB. I have ongoing traffic on a periodic basis which triggers a > send and receive respectably on the PUB and SUB sockets and I am clearing > out the ZMQ_EVENTS after every send and/or receive. I also have a polling > thread running every 150ms to check for ZMQ_EVENTS on both PUB and SUB. > > > > Nothing seems to work in terms of triggering the PUB to react and process > the NAKs received from remote SUB. Looking at the code a bit I see this > function zmq::pgm_socket_t::process_upstream but > > can’t tell if and how it is being triggered. It does not appear to be from > my perspective. > > > > Any help or direction would be appreciated. Thanks. > > > > -- > > Antonio > > > > _______________________________________________ > zeromq-dev mailing list > zeromq-dev@lists.zeromq.org > https://lists.zeromq.org/mailman/listinfo/zeromq-dev > <https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.zeromq.org_mailman_listinfo_zeromq-2Ddev&d=DwMFaQ&c=ilBQI1lupc9Y65XwNblLtw&r=KE-_zI6ApNLT6qvQ1tC8zssu327OLN9lWlhIigWhJA4&m=AYMnN2d160L4oOUMYUzTsb0enU6l7vTnRPY_52rLMy0&s=LcJtAkEY4h2bzvGKaxr7OMpdGRbSSgLTF12pJkc7N70&e=> > > _______________________________________________ > zeromq-dev mailing list > zeromq-dev@lists.zeromq.org > https://lists.zeromq.org/mailman/listinfo/zeromq-dev >
_______________________________________________ zeromq-dev mailing list zeromq-dev@lists.zeromq.org https://lists.zeromq.org/mailman/listinfo/zeromq-dev