live

package
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: Mar 19, 2024 License: MIT Imports: 8 Imported by: 0

Documentation

Overview

Package live provides implementations of the Sender and Receiver interfaces for live congestion control

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewFakeLiveReceive

func NewFakeLiveReceive(config ReceiveConfig) congestion.Receiver

func NewReceiver

func NewReceiver(config ReceiveConfig) congestion.Receiver

NewReceiver takes a ReceiveConfig and returns a new Receiver

func NewSender

func NewSender(config SendConfig) congestion.Sender

NewSender takes a SendConfig and returns a new Sender

Types

type ReceiveConfig

type ReceiveConfig struct {
	InitialSequenceNumber circular.Number
	PeriodicACKInterval   uint64 // microseconds
	PeriodicNAKInterval   uint64 // microseconds
	OnSendACK             func(seq circular.Number, light bool)
	OnSendNAK             func(from, to circular.Number)
	OnDeliver             func(p packet.Packet)
}

ReceiveConfig is the configuration for the liveRecv congestion control

type SendConfig

type SendConfig struct {
	InitialSequenceNumber circular.Number
	DropThreshold         uint64
	MaxBW                 int64
	InputBW               int64
	MinInputBW            int64
	OverheadBW            int64
	OnDeliver             func(p packet.Packet)
}

SendConfig is the configuration for the liveSend congestion control

Jump to

Keyboard shortcuts

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