servers

package
v0.12.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 10, 2024 License: Apache-2.0 Imports: 27 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	PathsRequestsLabels              = []string{prom.LabelResult, prom.LabelDst}
	ASRequestsLabels                 = []string{prom.LabelResult}
	InterfacesRequestsLabels         = []string{prom.LabelResult}
	ServicesRequestsLabels           = []string{prom.LabelResult}
	InterfaceDownNotificationsLabels = []string{prom.LabelResult, prom.LabelSrc}
	LatencyLabels                    = []string{prom.LabelResult}
)

Labels used for metrics in the Metrics struct, those labels should be used for initialization.

Functions

This section is empty.

Types

type DaemonServer

type DaemonServer struct {
	IA          addr.IA
	MTU         uint16
	Topology    Topology
	Fetcher     fetcher.Fetcher
	RevCache    revcache.RevCache
	ASInspector trust.Inspector
	DRKeyClient *drkey_daemon.ClientEngine

	Metrics Metrics
	// contains filtered or unexported fields
}

DaemonServer handles gRPC requests to the SCION daemon.

func (*DaemonServer) AS

AS serves the AS request.

func (*DaemonServer) DRKeyASHost added in v0.9.0

func (*DaemonServer) DRKeyHostAS added in v0.9.0

func (*DaemonServer) DRKeyHostHost added in v0.9.0

func (*DaemonServer) Interfaces

Interfaces serves the interfaces request.

func (*DaemonServer) NotifyInterfaceDown

NotifyInterfaceDown notifies the server about an interface that is down.

func (*DaemonServer) Paths

Paths serves the paths request.

func (*DaemonServer) PortRange added in v0.12.0

func (s *DaemonServer) PortRange(
	_ context.Context,
	_ *emptypb.Empty,
) (*sdpb.PortRangeResponse, error)

PortRange returns the port range for the dispatched ports.

func (*DaemonServer) Services

Services serves the services request.

type Metrics

type Metrics struct {
	PathsRequests              RequestMetrics
	ASRequests                 RequestMetrics
	InterfacesRequests         RequestMetrics
	ServicesRequests           RequestMetrics
	InterfaceDownNotifications RequestMetrics
}

Metrics can be used to inject metrics into the SCION daemon server. Each field may be set individually.

type RequestMetrics

type RequestMetrics struct {
	Requests metrics.Counter
	Latency  metrics.Histogram
}

RequestMetrics contains the metrics for a given request.

type Topology

type Topology interface {
	IfIDs() []uint16
	UnderlayNextHop(uint16) *net.UDPAddr
	ControlServiceAddresses() []*net.UDPAddr
	PortRange() (uint16, uint16)
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL