# Packages
Package setupmetrics pkg/router/setupmetrics/victoria_metrics.go.
# Functions
BroadcastIntermediaryRules broadcasts routing rules to the intermediary routers.
CreateRouteGroup creates a route group by communicating with routers used within the bidirectional route.
DefaultDialOptions returns default dial options.
DefaultRouteGroupConfig returns default RouteGroup config.
GenerateRules generates rules for given forward and reverse routes.
MakeMap makes a Map of the router clients, where the key is the router's visor public key.
New constructs a new Router.
NewClient creates a new Client.
NewClientFromRaw creates a new client from a raw connection.
NewIDReserver creates a new route ID reserver from a dialer and a slice of paths.
NewMockRouter creates a new instance of MockRouter.
NewNode constructs a new SetupNode.
NewRouteGroup creates a new RouteGroup.
NewRPCGateway creates a new RPCGateway.
NewSetupClient creates a new SetupClient.
NewSetupNodeDialer returns a wrapper for (*Client).DialRouteGroup.
ReserveRouteIDs dials to all routers and reserves required route IDs from them.
WrapDmsgClient wraps a dmsg client to implement snet.Dialer.
# Constants
DefaultRouteKeepAlive is the default expiration interval for routes.
DefaultRulesGCInterval is the default duration for garbage collection of routing rules.
Various timeouts for setup node.
Various timeouts for setup node.
RPCName is the RPC gateway object name.
# Variables
ErrBadTransport is returned when transport is nil.
ErrNoKey is returned when key is not found.
ErrNoRules is returned when RouteGroup has no rules.
ErrNoSuitableTransport is returned when no suitable transport was found.
ErrNoTransportFound is returned when not even one transport is found.
ErrNoTransports is returned when RouteGroup has no transports.
ErrRemoteEmptyPK occurs when the specified remote public key is empty.
ErrRuleTransportMismatch is returned when number of forward rules does not equal to number of transports.
ErrSetupNode is used when the visor is unable to connect to a setup node.
ErrUnknownPacketType is returned when packet type is unknown.
# Structs
Client is used to interact with the router's API remotely.
Config configures Router.
DialOptions describes dial options.
MockIDReserver is an autogenerated mock type for the IDReserver type.
MockRouteGroupDialer is an autogenerated mock type for the RouteGroupDialer type.
MockRouter is an autogenerated mock type for the Router type.
Node performs routes setup operations over messaging channel.
NoiseRouteGroup is a route group wrapped with noise.
RouteGroup should implement 'io.ReadWriteCloser'.
RouteGroupConfig configures RouteGroup.
RPCGateway is a RPC interface for router.
SetupClient is an RPC client for setup node.
SetupConfig defines configuration parameters for setup Node.
SetupRPCGateway is a RPC interface for setup node.
# Interfaces
IDReserver reserves route IDs from remote routers.
RouteGroupDialer is an interface for RouteGroup dialers.
Router is responsible for creating and keeping track of routes.
# Type aliases
Map is a map of router RPC clients associated with the router's visor PK.
RouteSetupHook is an alias for a function that takes remote public key and a reference to transport manager in order to setup i.e: 1.
RulesMap associates a slice of rules to a visor's string of `public key:port“.