Table of Contents

Class SlicTransportOptions

Namespace
IceRpc.Transports.Slic
Assembly
IceRpc.dll

A property bag used to configure a SlicClientTransport or SlicServerTransport.

public sealed record SlicTransportOptions : IEquatable<SlicTransportOptions>
Inheritance
SlicTransportOptions
Implements
Inherited Members

Properties

IdleTimeout

Gets or sets the idle timeout. This timeout is used to monitor the transport connection health. If no data is received within the idle timeout period, the transport connection is aborted. The effective idle timeout is negotiated with the peer: use InfiniteTimeSpan to defer to the peer's idle timeout. Idle timeout monitoring is disabled only when both sides use InfiniteTimeSpan.

public TimeSpan IdleTimeout { get; set; }

Property Value

TimeSpan

The idle timeout. It must be positive or InfiniteTimeSpan. Defaults to 30 s.

InitialStreamWindowSize

Gets or sets the initial stream window size. It defines the initial size of the stream receive buffer for data that has not been consumed yet by the application. When this buffer is full the sender should stop sending additional data.

public int InitialStreamWindowSize { get; set; }

Property Value

int

The initial window size in bytes. It can't be less than 1 KB. Defaults to 64 KB.

MaxStreamFrameSize

Gets or sets the maximum stream frame size in bytes.

public int MaxStreamFrameSize { get; set; }

Property Value

int

The maximum stream frame size in bytes. It can't be less than 1024 or greater than 16,777,215 (2^24 - 1). Defaults to 32,768.

PauseWriterThreshold

Gets or sets the per-connection pause writer threshold. It defines the maximum amount of data that Slic buffers locally on the connection's outbound pipe before FlushAsync(CancellationToken) on the underlying pipe starts blocking. This bounds the memory used by the connection's outbound buffering when a peer is slow or not reading.

public int PauseWriterThreshold { get; set; }

Property Value

int

The pause writer threshold in bytes. Set to 0 to disable this flow control mechanism. Otherwise, it can't be less than 1 KB. Defaults to 64 KB (the Pipe default).