diff options
Diffstat (limited to 'docs/man/nng_respondent.adoc')
| -rw-r--r-- | docs/man/nng_respondent.adoc | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/docs/man/nng_respondent.adoc b/docs/man/nng_respondent.adoc deleted file mode 100644 index 9cc6519e..00000000 --- a/docs/man/nng_respondent.adoc +++ /dev/null @@ -1,90 +0,0 @@ -= nng_respondent(7) -// -// Copyright 2018 Staysail Systems, Inc. <info@staysail.tech> -// Copyright 2018 Capitar IT Group BV <info@capitar.com> -// -// This document is supplied under the terms of the MIT License, a -// copy of which should be located in the distribution where this -// file was obtained (LICENSE.txt). A copy of the license may also be -// found online at https://opensource.org/licenses/MIT. -// - -== NAME - -nng_respondent - respondent protocol - -== SYNOPSIS - -[source,c] ----------- -#include <nng/protocol/survey0/respond.h> - -int nng_respondent0_open(nng_socket *s); ----------- - -== DESCRIPTION - -The _nng_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 after -not obliged to). The survey itself is a timed event, so that responses -received after the survey has finished are discarded. - -TIP: 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 _nng_respondent_ protocol is the respondent side, and the -<<nng_surveyor#,nng_surveyor(7)>> 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. Generally -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 -http://nanomsg.org[nanomsg], but was not released in any production -version.) - -=== Protocol Options - -The following protocol-specific options are available. - -`NNG_OPT_MAXTTL`:: - - Maximum time-to-live. This option is an integer value - between 0 and 255, - inclusive, and is the maximum number of "hops" that a message may - pass through until it is discarded. The default value is 8. A value - of 0 may be used to disable the loop protection, allowing an infinite - number of hops. - -=== Protocol Headers - -The _nng_respondent_ protocol uses a _backtrace_ in the header. This -form uses an array of 32-bit big-endian identifiers, where the first -element in the array -identifies the local peer identifier to which the message will next be sent. -This is a hop-by-hop header where each element in a path adds routing -information to the end when sending a survey, and when replying removes -elements to obtain the next hop information. The survey ID is at the -end of this header and is inserted into the header as its first element -by the originating surveyor. (Survey IDs are distinguished from hops by -having their high order bit set to one.) - -// TODO: Insert reference to RFC. - -== SEE ALSO - -<<nng#,nng(7)>>, -<<nng_surveyor#,nng_surveyor(7)>> |
