dataplane

package
v0.18.2 Latest Latest
Warning

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

Go to latest
Published: Aug 16, 2026 License: BSD-3-Clause Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client interface {
	Open(context.Context) (Stream, error)
	Stats() Stats
	CloseWithError(uint64, string) error
}

type QUICClient

type QUICClient struct {
	// contains filtered or unexported fields
}

func NewQUICClient

func NewQUICClient(manager *transport.Manager, identity quicpath.SessionIdentity, peer [32]byte) *QUICClient

func NewQUICClientOnPacketConn

func NewQUICClientOnPacketConn(conn net.PacketConn, remote net.Addr, identity quicpath.SessionIdentity, peer [32]byte) *QUICClient

func NewQUICClientOnPacketConns

func NewQUICClientOnPacketConns(conns []net.PacketConn, remotes []net.Addr, identity quicpath.SessionIdentity, peer [32]byte) *QUICClient

func (*QUICClient) Accept

func (q *QUICClient) Accept(ctx context.Context) (Stream, error)

func (*QUICClient) AcceptStreams

func (q *QUICClient) AcceptStreams(ctx context.Context, count int) ([]io.ReadCloser, error)

func (*QUICClient) CloseWithError

func (q *QUICClient) CloseWithError(code uint64, reason string) error

func (*QUICClient) Open

func (q *QUICClient) Open(ctx context.Context) (Stream, error)

func (*QUICClient) OpenStreams

func (q *QUICClient) OpenStreams(ctx context.Context, count int) ([]io.WriteCloser, error)

func (*QUICClient) SetManagerConnectionCount added in v0.16.0

func (q *QUICClient) SetManagerConnectionCount(count int)

func (*QUICClient) Stats

func (q *QUICClient) Stats() Stats

type QUICServer

type QUICServer struct {
	// contains filtered or unexported fields
}

func NewQUICServer

func NewQUICServer(manager *transport.Manager, identity quicpath.SessionIdentity, peer [32]byte) *QUICServer

func NewQUICServerOnPacketConn

func NewQUICServerOnPacketConn(conn net.PacketConn, identity quicpath.SessionIdentity, peer [32]byte) *QUICServer

func NewQUICServerOnPacketConns

func NewQUICServerOnPacketConns(conns []net.PacketConn, identity quicpath.SessionIdentity, peer [32]byte) *QUICServer

func (*QUICServer) Accept

func (q *QUICServer) Accept(ctx context.Context) (Stream, error)

func (*QUICServer) AcceptStreamsWithReady

func (q *QUICServer) AcceptStreamsWithReady(ctx context.Context, count int, ready func() error) ([]io.ReadCloser, error)

func (*QUICServer) AcceptWithReady

func (q *QUICServer) AcceptWithReady(ctx context.Context, ready func() error) (Stream, error)

func (*QUICServer) CloseWithError

func (q *QUICServer) CloseWithError(code uint64, reason string) error

func (*QUICServer) OpenStreamsWithReady

func (q *QUICServer) OpenStreamsWithReady(ctx context.Context, count int, ready func() error) ([]io.WriteCloser, error)

func (*QUICServer) OpenWithReady

func (q *QUICServer) OpenWithReady(ctx context.Context, ready func() error) (Stream, error)

func (*QUICServer) SetManagerConnectionCount added in v0.16.0

func (q *QUICServer) SetManagerConnectionCount(count int)

func (*QUICServer) Stats

func (q *QUICServer) Stats() Stats

type Server

type Server interface {
	Accept(context.Context) (Stream, error)
	Stats() Stats
	CloseWithError(uint64, string) error
}

type Stats

type Stats struct {
	BytesSent            int64
	BytesReceived        int64
	TelemetryPresent     bool
	Connections          uint32
	Streams              uint32
	PacketsSent          uint64
	PacketsReceived      uint64
	PacketsLost          uint64
	WireBytesSent        uint64
	RecoveryWireBytes    uint64
	SmoothedRTT          time.Duration
	HandshakeDuration    time.Duration
	FirstByteDuration    time.Duration
	StreamBytesSent      uint64
	StreamBytesReceived  uint64
	Version              string
	RawSocketBackend     string
	NativeSendBackend    string
	NativeReceiveBackend string
	NativeGSO            string
	NativeReceiveBatch   string
	HandshakeMS          int64
	FirstByteMS          int64
	OpenedAt             time.Time
	HandshakeAt          time.Time
	FirstByteAt          time.Time
	ClosedAt             time.Time
	CloseReason          string
}

type Stream

type Stream interface {
	io.Reader
	io.Writer
	io.Closer
}

Jump to

Keyboard shortcuts

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