pub struct Config {
pub listen_addresses: Vec<Multiaddr>,
pub reuse_port: bool,
pub nodelay: bool,
pub yamux_config: Config,
pub noise_read_ahead_frame_count: usize,
pub noise_write_buffer_size: usize,
pub connection_open_timeout: Duration,
pub substream_open_timeout: Duration,
}
Expand description
WebSocket transport configuration.
Fields§
§listen_addresses: Vec<Multiaddr>
Listen address address for the transport.
Default listen addreses are [“/ip4/0.0.0.0/tcp/0/ws”, “/ip6/::/tcp/0/ws”].
reuse_port: bool
Whether to set SO_REUSEPORT
and bind a socket to the listen address port for outbound
connections.
Note that SO_REUSEADDR
is always set on listening sockets.
Defaults to true
.
nodelay: bool
Enable TCP_NODELAY
.
Defaults to false
.
yamux_config: Config
Yamux configuration.
noise_read_ahead_frame_count: usize
Noise read-ahead frame count.
Specifies how many Noise frames are read per call to the underlying socket.
By default this is configured to 5
so each call to the underlying socket can read up
to 5
Noise frame per call. Fewer frames may be read if there isn’t enough data in the
socket. Each Noise frame is 65 KB
so the default setting allocates 65 KB * 5 = 325 KB
per connection.
noise_write_buffer_size: usize
Noise write buffer size.
Specifes how many Noise frames are tried to be coalesced into a single system call.
By default the value is set to 2
which means that the NoiseSocket
will allocate
130 KB
for each outgoing connection.
The write buffer size is separate from the read-ahead frame count so by default
the Noise code will allocate 2 * 65 KB + 5 * 65 KB = 455 KB
per connection.
connection_open_timeout: Duration
Connection open timeout.
How long should litep2p wait for a connection to be opened before the host is deemed unreachable.
substream_open_timeout: Duration
Substream open timeout.
How long should litep2p wait for a substream to be opened before considering the substream rejected.