Documentation
¶
Index ¶
- Variables
- type DefaultSocketInterface
- func (x *DefaultSocketInterface) ClearIoUringOptions()
- func (x *DefaultSocketInterface) GetIoUringOptions() *IoUringOptions
- func (x *DefaultSocketInterface) HasIoUringOptions() bool
- func (*DefaultSocketInterface) ProtoMessage()
- func (x *DefaultSocketInterface) ProtoReflect() protoreflect.Message
- func (x *DefaultSocketInterface) Reset()
- func (x *DefaultSocketInterface) SetIoUringOptions(v *IoUringOptions)
- func (x *DefaultSocketInterface) String() string
- type DefaultSocketInterface_builder
- type IoUringOptions
- func (x *IoUringOptions) ClearIoUringSize()
- func (x *IoUringOptions) ClearReadBufferSize()
- func (x *IoUringOptions) ClearWriteTimeoutMs()
- func (x *IoUringOptions) GetEnableSubmissionQueuePolling() bool
- func (x *IoUringOptions) GetIoUringSize() *wrapperspb.UInt32Value
- func (x *IoUringOptions) GetReadBufferSize() *wrapperspb.UInt32Value
- func (x *IoUringOptions) GetWriteTimeoutMs() *wrapperspb.UInt32Value
- func (x *IoUringOptions) HasIoUringSize() bool
- func (x *IoUringOptions) HasReadBufferSize() bool
- func (x *IoUringOptions) HasWriteTimeoutMs() bool
- func (*IoUringOptions) ProtoMessage()
- func (x *IoUringOptions) ProtoReflect() protoreflect.Message
- func (x *IoUringOptions) Reset()
- func (x *IoUringOptions) SetEnableSubmissionQueuePolling(v bool)
- func (x *IoUringOptions) SetIoUringSize(v *wrapperspb.UInt32Value)
- func (x *IoUringOptions) SetReadBufferSize(v *wrapperspb.UInt32Value)
- func (x *IoUringOptions) SetWriteTimeoutMs(v *wrapperspb.UInt32Value)
- func (x *IoUringOptions) String() string
- type IoUringOptions_builder
Constants ¶
This section is empty.
Variables ¶
View Source
var File_envoy_extensions_network_socket_interface_v3_default_socket_interface_proto protoreflect.FileDescriptor
Functions ¶
This section is empty.
Types ¶
type DefaultSocketInterface ¶
type DefaultSocketInterface struct {
// io_uring options. io_uring is only valid in Linux with at least kernel version 5.11. Otherwise,
// Envoy will fall back to use the default socket API. If not set then io_uring will not be
// enabled.
IoUringOptions *IoUringOptions `protobuf:"bytes,1,opt,name=io_uring_options,json=ioUringOptions,proto3" json:"io_uring_options,omitempty"`
// contains filtered or unexported fields
}
Configuration for default socket interface that relies on OS dependent syscall to create sockets.
func (*DefaultSocketInterface) ClearIoUringOptions ¶
func (x *DefaultSocketInterface) ClearIoUringOptions()
func (*DefaultSocketInterface) GetIoUringOptions ¶
func (x *DefaultSocketInterface) GetIoUringOptions() *IoUringOptions
func (*DefaultSocketInterface) HasIoUringOptions ¶
func (x *DefaultSocketInterface) HasIoUringOptions() bool
func (*DefaultSocketInterface) ProtoMessage ¶
func (*DefaultSocketInterface) ProtoMessage()
func (*DefaultSocketInterface) ProtoReflect ¶
func (x *DefaultSocketInterface) ProtoReflect() protoreflect.Message
func (*DefaultSocketInterface) Reset ¶
func (x *DefaultSocketInterface) Reset()
func (*DefaultSocketInterface) SetIoUringOptions ¶
func (x *DefaultSocketInterface) SetIoUringOptions(v *IoUringOptions)
func (*DefaultSocketInterface) String ¶
func (x *DefaultSocketInterface) String() string
type DefaultSocketInterface_builder ¶
type DefaultSocketInterface_builder struct {
// io_uring options. io_uring is only valid in Linux with at least kernel version 5.11. Otherwise,
// Envoy will fall back to use the default socket API. If not set then io_uring will not be
// enabled.
IoUringOptions *IoUringOptions
// contains filtered or unexported fields
}
func (DefaultSocketInterface_builder) Build ¶
func (b0 DefaultSocketInterface_builder) Build() *DefaultSocketInterface
type IoUringOptions ¶
type IoUringOptions struct {
// The size for io_uring submission queues (SQ). io_uring is built with a fixed size in each
// thread during configuration, and each io_uring operation creates a submission queue
// entry (SQE). The default is 1000.
IoUringSize *wrapperspb.UInt32Value `protobuf:"bytes,1,opt,name=io_uring_size,json=ioUringSize,proto3" json:"io_uring_size,omitempty"`
// Enable io_uring submission queue polling (SQPOLL). io_uring SQPOLL mode polls all SQEs in the
// SQ in the kernel thread. io_uring SQPOLL mode may reduce latency and increase CPU usage as a
// cost. The default is false.
EnableSubmissionQueuePolling bool `` /* 150-byte string literal not displayed */
// The size of an io_uring socket's read buffer. Each io_uring read operation will allocate a
// buffer of the given size. If the given buffer is too small, the socket will have read multiple
// times for all the data. The default is 8192.
ReadBufferSize *wrapperspb.UInt32Value `protobuf:"bytes,3,opt,name=read_buffer_size,json=readBufferSize,proto3" json:"read_buffer_size,omitempty"`
// The write timeout of an io_uring socket on closing in ms. io_uring writes and closes
// asynchronously. If the remote stops reading, the io_uring write operation may never complete.
// The operation is canceled and the socket is closed after the timeout. The default is 1000.
WriteTimeoutMs *wrapperspb.UInt32Value `protobuf:"bytes,4,opt,name=write_timeout_ms,json=writeTimeoutMs,proto3" json:"write_timeout_ms,omitempty"`
// contains filtered or unexported fields
}
func (*IoUringOptions) ClearIoUringSize ¶
func (x *IoUringOptions) ClearIoUringSize()
func (*IoUringOptions) ClearReadBufferSize ¶
func (x *IoUringOptions) ClearReadBufferSize()
func (*IoUringOptions) ClearWriteTimeoutMs ¶
func (x *IoUringOptions) ClearWriteTimeoutMs()
func (*IoUringOptions) GetEnableSubmissionQueuePolling ¶
func (x *IoUringOptions) GetEnableSubmissionQueuePolling() bool
func (*IoUringOptions) GetIoUringSize ¶
func (x *IoUringOptions) GetIoUringSize() *wrapperspb.UInt32Value
func (*IoUringOptions) GetReadBufferSize ¶
func (x *IoUringOptions) GetReadBufferSize() *wrapperspb.UInt32Value
func (*IoUringOptions) GetWriteTimeoutMs ¶
func (x *IoUringOptions) GetWriteTimeoutMs() *wrapperspb.UInt32Value
func (*IoUringOptions) HasIoUringSize ¶
func (x *IoUringOptions) HasIoUringSize() bool
func (*IoUringOptions) HasReadBufferSize ¶
func (x *IoUringOptions) HasReadBufferSize() bool
func (*IoUringOptions) HasWriteTimeoutMs ¶
func (x *IoUringOptions) HasWriteTimeoutMs() bool
func (*IoUringOptions) ProtoMessage ¶
func (*IoUringOptions) ProtoMessage()
func (*IoUringOptions) ProtoReflect ¶
func (x *IoUringOptions) ProtoReflect() protoreflect.Message
func (*IoUringOptions) Reset ¶
func (x *IoUringOptions) Reset()
func (*IoUringOptions) SetEnableSubmissionQueuePolling ¶
func (x *IoUringOptions) SetEnableSubmissionQueuePolling(v bool)
func (*IoUringOptions) SetIoUringSize ¶
func (x *IoUringOptions) SetIoUringSize(v *wrapperspb.UInt32Value)
func (*IoUringOptions) SetReadBufferSize ¶
func (x *IoUringOptions) SetReadBufferSize(v *wrapperspb.UInt32Value)
func (*IoUringOptions) SetWriteTimeoutMs ¶
func (x *IoUringOptions) SetWriteTimeoutMs(v *wrapperspb.UInt32Value)
func (*IoUringOptions) String ¶
func (x *IoUringOptions) String() string
type IoUringOptions_builder ¶
type IoUringOptions_builder struct {
// The size for io_uring submission queues (SQ). io_uring is built with a fixed size in each
// thread during configuration, and each io_uring operation creates a submission queue
// entry (SQE). The default is 1000.
IoUringSize *wrapperspb.UInt32Value
// Enable io_uring submission queue polling (SQPOLL). io_uring SQPOLL mode polls all SQEs in the
// SQ in the kernel thread. io_uring SQPOLL mode may reduce latency and increase CPU usage as a
// cost. The default is false.
EnableSubmissionQueuePolling bool
// The size of an io_uring socket's read buffer. Each io_uring read operation will allocate a
// buffer of the given size. If the given buffer is too small, the socket will have read multiple
// times for all the data. The default is 8192.
ReadBufferSize *wrapperspb.UInt32Value
// The write timeout of an io_uring socket on closing in ms. io_uring writes and closes
// asynchronously. If the remote stops reading, the io_uring write operation may never complete.
// The operation is canceled and the socket is closed after the timeout. The default is 1000.
WriteTimeoutMs *wrapperspb.UInt32Value
// contains filtered or unexported fields
}
func (IoUringOptions_builder) Build ¶
func (b0 IoUringOptions_builder) Build() *IoUringOptions
Source Files
¶
- default_socket_interface.pb.go
Click to show internal directories.
Click to hide internal directories.