package
0.10.2
Repository: https://github.com/hashicorp/serf.git
Documentation: pkg.go.dev

# Functions

DefaultConfig returns a Config that has some default values suitable for basic testing of the algorithm, but not tuned to any particular type of cluster.
Evaluate uses the coordinates of the given clients to calculate estimated distances and compares them with the given truth matrix, returning summary stats.
GenerateCircle returns a truth matrix for a set of nodes, evenly distributed around a circle with the given radius.
GenerateClients returns a slice with nodes number of clients, all with the given config.
GenerateGrid returns a truth matrix as if all the nodes are in a two dimensional grid with the given spacing between them.
GenerateLine returns a truth matrix as if all the nodes are in a straight linke with the given spacing between them.
GenerateRandom returns a truth matrix for a set of nodes with normally distributed delays, with the given mean and deviation.
GenerateSplit returns a truth matrix as if half the nodes are close together in one location and half the nodes are close together in another.
NewClient creates a new Client and verifies the configuration is valid.
NewCoordinate creates a new coordinate at the origin, using the given config to supply key initial values.
Simulate runs the given number of cycles using the given list of clients and truth matrix.

# Structs

Client manages the estimated network coordinate for a given node, and adjusts it as the node observes round trip times and estimated coordinates from other nodes.
ClientStats is used to record events that occur when updating coordinates.
Config is used to set the parameters of the Vivaldi-based coordinate mapping algorithm.
Coordinate is a specialized structure for holding network coordinates for the Vivaldi-based coordinate mapping algorithm.
ErrDimensionalityConflict will be panic-d if you try to perform operations with incompatible dimensions.
Stats is returned from the Evaluate function with a summary of the algorithm performance.