package
0.0.0-20240419125430-e07b07e7cea4
Repository: https://github.com/probe-lab/zikade.git
Documentation: pkg.go.dev

# Functions

DefaultBootstrapConfig returns the default configuration options for a Bootstrap.
DefaultExploreConfig returns the default configuration options for an [Explore].
DefaultIncludeConfig returns the default configuration options for an Include.
DefaultProbeConfig returns the default configuration options for a Probe.
No description provided by the author
NewDynamicExploreSchedule creates a new dynamic explore schedule.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# Constants

BootstrapQueryID is the id for the query operated by the bootstrap process.
ExploreQueryID is the id for the query operated by the explore process.

# Structs

No description provided by the author
BootstrapConfig specifies optional configuration for a Bootstrap.
A DynamicExploreSchedule calculates an explore schedule dynamically.
EventBootstrapFindCloserFailure notifies a bootstrap that an attempt to find closer nodes has failed.
EventBootstrapFindCloserResponse notifies a bootstrap that an attempt to find closer nodes has received a successful response.
EventBootstrapPoll is an event that signals the bootstrap that it can perform housekeeping work such as time out queries.
EventBootstrapStart is an event that attempts to start a new bootstrap.
EventExploreFindCloserFailure notifies a explore that an attempt to find closer nodes has failed.
EventExploreFindCloserResponse notifies a explore that an attempt to find closer nodes has received a successful response.
EventExplorePoll is an event that signals the explore that it can perform housekeeping work such as time out queries.
EventIncludeAddCandidate notifies an [Include] that a node should be added to the candidate list.
EventIncludeConnectivityCheckFailure notifies an [Include] that a requested connectivity check has failed.
EventIncludeConnectivityCheckSuccess notifies an [Include] that a requested connectivity check has received a successful response.
EventIncludePoll is an event that signals an [Include] to perform housekeeping work such as time out queries.
EventProbeAdd notifies a probe that a node should be added to its list of nodes.
EventProbeConnectivityCheckFailure notifies a [Probe] that a requested connectivity check has failed.
EventProbeConnectivityCheckSuccess notifies a [Probe] that a requested connectivity check has received a successful response.
EventProbeNotifyConnectivity notifies a probe that a node has confirmed connectivity from another source such as a query.
EventProbePoll is an event that signals the probe that it can perform housekeeping work such as time out queries.
EventProbeRemove notifies a probe that a node should be removed from its list of nodes and the routing table.
The Explore state machine is used to discover new nodes at various distances from the local node in order to improve the occupancy of routing table buckets.
ExploreConfig specifies optional configuration for an [Explore].
No description provided by the author
IncludeConfig specifies optional configuration for an Include.
A NoWaitExploreSchedule implements an explore schedule that cycles through each cpl without delays.
The Probe state machine performs regular connectivity checks for nodes in a routing table.
ProbeConfig specifies optional configuration for a Probe.
StateBootstrapFindCloser indicates that the bootstrap query wants to send a find closer nodes message to a node.
StateBootstrapFinished indicates that the bootstrap has finished.
StateBootstrapIdle indicates that the bootstrap is not running its query.
StateBootstrapTimeout indicates that the bootstrap query has timed out.
StateBootstrapWaiting indicates that the bootstrap query is waiting for a response.
StateExploreFailure indicates that the explore state machine encountered a failure condition when attempting to explore a cpl.
StateExploreFindCloser indicates that the explore query wants to send a find closer nodes message to a node.
StateExploreIdle indicates that the explore is not running its query.
StateExploreQueryFinished indicates that an explore query has finished.
StateExploreQueryTimeout indicates that an explore query has timed out.
StateExploreWaiting indicates that the explore query is waiting for a response.
StateIncludeConnectivityCheck indicates that an [Include] is waiting to send a connectivity check to a node.
StateIncludeIdle indicates that an [Include] is not peforming any work or waiting for any responses..
StateIncludeRoutingUpdated indicates the routing table has been updated with a new node.
StateIncludeWaitingAtCapacity indicates that an [Include] is waiting for responses for checks and that the maximum number of concurrent checks has been reached.
StateIncludeWaitingFull indicates that the include subsystem is waiting for responses for checks and that the maximum number of queued candidates has been reached.
StateIncludeWaitingWithCapacity indicates that an [Include] is waiting for responses for checks but has capacity to perform more.
StateProbeConnectivityCheck indicates that the probe subsystem is waiting to send a connectivity check to a node.
StateProbeIdle indicates that the probe state machine is not running any checks.
StateProbeNodeFailure indicates a node has failed a connectivity check been removed from the routing table and the probe list.
StateProbeWaitingAtCapacity indicates that the probe state machine is waiting for responses for checks and the maximum number of concurrent checks has been reached.
StateProbeWaitingWithCapacity indicates that the probe state machine is waiting for responses for checks but has capacity to perform more.

# Interfaces

BootstrapEvent is an event intended to advance the state of a bootstrap.
BootstrapState is the state of a bootstrap.
ExploreEvent is an event intended to advance the state of an [Explore].
An ExploreSchedule provides an ordering for explorations of each cpl in a routing table.
ExploreState is the state of an [Explore].
IncludeEvent is an event intended to advance the state of an [Include].
IncludeState is the state of a include.
ProbeEvent is an event intended to advance the state of a probe.
ProbeState is the state of the [Probe] state machine.
No description provided by the author

# Type aliases

NodeIDForCplFunc is a function that given a cpl generates a [kad.NodeID] with a key that has a common prefix length with k of length cpl.