Module network::protocols::health_checker[][src]

Expand description

Protocol used to ensure peer liveness

The HealthChecker is responsible for ensuring liveness of all peers of a node. It does so by periodically selecting a random connected peer and sending a Ping probe. A healthy peer is expected to respond with a corresponding Pong message.

If a certain number of successive liveness probes for a peer fail, the HealthChecker initiates a disconnect from the peer. It relies on ConnectivityManager or the remote peer to re-establish the connection.

Future Work

We can make a few other improvements to the health checker. These are:

  • Make the policy for interpreting ping failures pluggable
  • Use successful inbound pings as a sign of remote note being healthy
  • Ping a peer only in periods of no application-level communication with the peer

Modules

Structs

The actor performing health checks by running the Ping protocol

The interface from HealthChecker to Networking layer.

Enums

Functions

Configuration for the network endpoints to support HealthChecker.

Type Definitions

The interface from Network to HealthChecker layer.