Documentation ¶
Overview ¶
Package tg controls traffic generator elements.
Index ¶
- Constants
- Variables
- type Config
- type Counters
- type TrafficGen
- func (gen *TrafficGen) Close() error
- func (gen TrafficGen) Consumer() *tgconsumer.Consumer
- func (gen *TrafficGen) Counters() (cnt Counters)
- func (gen TrafficGen) Face() iface.Face
- func (gen TrafficGen) Fetcher() *fetch.Fetcher
- func (gen TrafficGen) FileServer() *fileserver.Server
- func (gen *TrafficGen) Launch() error
- func (gen TrafficGen) Producer() *tgproducer.Producer
- func (gen *TrafficGen) Stop() error
- func (gen TrafficGen) Workers() []ealthread.ThreadWithRole
Constants ¶
const ( RoleInput = iface.RoleRx RoleOutput = iface.RoleTx RoleConsumer = tgdef.RoleConsumer RoleProducer = tgdef.RoleProducer )
Thread roles.
Variables ¶
var ( GqlTrafficGenType *gqlserver.NodeType[*TrafficGen] GqlCountersType *graphql.Object )
GraphQL types.
var ( // GqlCreateEnabled allows creating traffic generator instances via GraphQL. GqlCreateEnabled = false )
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { Face iface.LocatorWrapper `json:"face"` Producer *tgproducer.Config `json:"producer,omitempty"` FileServer *fileserver.Config `json:"fileServer,omitempty"` Consumer *tgconsumer.Config `json:"consumer,omitempty"` Fetcher *fetch.Config `json:"fetcher,omitempty"` }
Config describes traffic generator configuration.
type Counters ¶
type Counters struct { Producer *tgproducer.Counters `json:"producer,omitempty"` FileServer *fileserver.Counters `json:"fileServer,omitempty"` Consumer *tgconsumer.Counters `json:"consumer,omitempty"` }
Counters contains traffic generator counters.
type TrafficGen ¶
type TrafficGen struct {
// contains filtered or unexported fields
}
TrafficGen represents the traffic generator on a face.
func (*TrafficGen) Close ¶
func (gen *TrafficGen) Close() error
Close releases resources. It cannot be launched again.
func (TrafficGen) Consumer ¶
func (gen TrafficGen) Consumer() *tgconsumer.Consumer
Consumer returns the fixed rate consumer module.
func (*TrafficGen) Counters ¶
func (gen *TrafficGen) Counters() (cnt Counters)
Counters retrieves counters.
func (TrafficGen) Face ¶
func (gen TrafficGen) Face() iface.Face
Face returns the face on which this traffic generator operates.
func (TrafficGen) Fetcher ¶
func (gen TrafficGen) Fetcher() *fetch.Fetcher
Fetcher returns the congestion aware fetcher module.
func (TrafficGen) FileServer ¶
func (gen TrafficGen) FileServer() *fileserver.Server
FileServer returns the file server module.
func (*TrafficGen) Launch ¶
func (gen *TrafficGen) Launch() error
Launch launches the traffic generator.
func (TrafficGen) Producer ¶
func (gen TrafficGen) Producer() *tgproducer.Producer
Producer returns the producer module.
func (*TrafficGen) Stop ¶
func (gen *TrafficGen) Stop() error
Stop stops the traffic generator. It can be launched again.
func (TrafficGen) Workers ¶
func (gen TrafficGen) Workers() []ealthread.ThreadWithRole
Workers implements tggql.withCommonFields interface.
Directories ¶
Path | Synopsis |
---|---|
Package tgdef contains common definitions and helpers for traffic generator.
|
Package tgdef contains common definitions and helpers for traffic generator. |
Package tggql contains shared functions among traffic generator elements.
|
Package tggql contains shared functions among traffic generator elements. |
Package tgtestenv provides facility to test the traffic generator.
|
Package tgtestenv provides facility to test the traffic generator. |