pub fn build_transport(
keypair: Keypair,
memory_only: bool,
yamux_window_size: Option<u32>,
yamux_maximum_buffer_size: usize,
) -> (Boxed<(PeerId, StreamMuxerBox)>, Arc<BandwidthSinks>)
Expand description
Builds the transport that serves as a common ground for all connections.
If memory_only
is true, then only communication within the same process are allowed. Only
addresses with the format /memory/...
are allowed.
yamux_window_size
is the maximum size of the Yamux receive windows. None
to leave the
default (256kiB).
yamux_maximum_buffer_size
is the maximum allowed size of the Yamux buffer. This should be
set either to the maximum of all the maximum allowed sizes of messages frames of all
high-level protocols combined, or to some generously high value if you are sure that a maximum
size is enforced on all high-level protocols.
Returns a BandwidthSinks
object that allows querying the average bandwidth produced by all
the connections spawned with this transport.