Documentation ¶
Overview ¶
Package model contains the ndt7 data model
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AppInfo ¶
type AppInfo struct { // NumBytes is the number of bytes transferred so far. NumBytes int64 `json:"num_bytes"` }
AppInfo contains an application level measurement.
type ArchivalData ¶ added in v0.10.0
type ArchivalData struct { UUID string StartTime time.Time EndTime time.Time ServerMeasurements []Measurement ClientMeasurements []Measurement ClientMetadata []metadata.NameValue `json:",omitempty"` }
ArchivalData saves all instantaneous measurements over the lifetime of a test.
type BBRInfo ¶
type BBRInfo struct { // MaxBandwidth is the max bandwidth measured by BBR in bits per second. MaxBandwidth int64 `json:"max_bandwidth"` // MinRTT is the min RTT measured by BBR in milliseconds. MinRTT float64 `json:"min_rtt"` }
The BBRInfo struct contains information measured using BBR.
type ConnectionInfo ¶ added in v0.9.0
type ConnectionInfo struct { // Client is the client endpoint Client string `json:"client"` // Server is the server endpoint Server string `json:"server"` // UUID is the internal unique identifier of this experiment. UUID string `json:"uuid"` }
ConnectionInfo contains connection info.
type Measurement ¶
type Measurement struct { // AppInfo contains application level measurements. AppInfo *AppInfo `json:"app_info,omitempty"` // ConnectionInfo contains connection information. ConnectionInfo *ConnectionInfo `json:"connection_info,omitempty" bigquery:"-"` // BBRInfo is the data measured using TCP BBR instrumentation. BBRInfo *BBRInfo `json:"bbr_info,omitempty"` // Elapsed is the number of seconds elapsed since the beginning. Elapsed float64 `json:"elapsed"` // TCPInfo contains metrics measured using TCP_INFO instrumentation. TCPInfo *TCPInfo `json:"tcp_info,omitempty"` }
The Measurement struct contains measurement results. This structure is meant to be serialised as JSON as sent as a textual message.
type TCPInfo ¶
type TCPInfo struct { // SmoothedRTT is the smoothed RTT in milliseconds. SmoothedRTT float64 `json:"smoothed_rtt"` // RTTVar is the RTT variance in milliseconds. RTTVar float64 `json:"rtt_var"` }
The TCPInfo struct contains information measured using TCP_INFO.
func NewTCPInfo ¶ added in v0.13.0
func NewTCPInfo(kernelTCPInfo *tcp.LinuxTCPInfo) *TCPInfo
NewTCPInfo creates an ndt7 model from the TCPInfo struct returned from the kernel.
Click to show internal directories.
Click to hide internal directories.