nanomsg next generation NNG  
Home GitHub Documentation

This documentation is for version 0.7.0 of nng, but the latest released version is v1.8.0. see the documentation for v1.8.0 for the most up-to-date information.
nng_respondent(7)

SYNOPSIS

#include <nng/protocol/survey0/respond.h>

int nng_respondent0_open(nng_socket *s);

DESCRIPTION

The respondent protocol is one half of a survey pattern. In this pattern, a surveyor sends a survey, which is broadcast to all peer respondents. The respondents then have a chance to reply (but are not obliged to reply). The survey itself is a timed event, so that responses received after the survey has finished are discarded.

This protocol is useful in solving voting problems, such as leader election in cluster configurations, as well as certain kinds of service discovery problems.

The respondent protocol is the respondent side, and the surveyor protocol is the surveyor side.

Socket Operations

The nng_respondent0_open() call creates a respondent socket. This socket may be used to receive messages, and then to send replies. A reply can only be sent after receiving a survey, and generally the reply will be sent to surveyor from whom the last survey was received.

Respondents may discard a survey by simply not replying to it.

Raw mode sockets (set with NNG_OPT_RAW) ignore all these restrictions.

Protocol Versions

Only version 0 of this protocol is supported. (At the time of writing, no other versions of this protocol have been defined. An earlier and incompatible version of the protocol was used in older pre-releases of nanomsg, but was not released in any production version.)

Protocol Options

The respondent protocol has no protocol-specific options.

Protocol Headers

The respondent protocol uses a backtrace in the header. This is more fully documented in the surveyor manual.

NNG Reference Manual v0.7.0 © 2019 Staysail Systems, Inc, © 2018 Capitar IT Group BV
This document is supplied under the MIT License.
nanomsg™ and nng™ are trademarks of Garrett D'Amore.