diff --git a/client/cli/src/params/network_params.rs b/client/cli/src/params/network_params.rs index faaf2c2bd210d..79e7a700244a9 100644 --- a/client/cli/src/params/network_params.rs +++ b/client/cli/src/params/network_params.rs @@ -92,11 +92,6 @@ pub struct NetworkParams { #[structopt(flatten)] pub node_key_params: NodeKeyParams, - /// Disable the yamux flow control. This option will be removed in the future once there is - /// enough confidence that this feature is properly working. - #[structopt(long)] - pub no_yamux_flow_control: bool, - /// Enable peer discovery on local networks. /// /// By default this option is true for `--dev` and false otherwise. @@ -158,7 +153,6 @@ impl NetworkParams { enable_mdns: !is_dev && !self.no_mdns, allow_private_ipv4: !self.no_private_ipv4, wasm_external_transport: None, - use_yamux_flow_control: !self.no_yamux_flow_control, }, max_parallel_downloads: self.max_parallel_downloads, allow_non_globals_in_dht: self.discover_local || is_dev, diff --git a/client/network/src/config.rs b/client/network/src/config.rs index 7445ea0534bb7..c144bebb5fc8d 100644 --- a/client/network/src/config.rs +++ b/client/network/src/config.rs @@ -451,7 +451,6 @@ impl NetworkConfiguration { enable_mdns: false, allow_private_ipv4: true, wasm_external_transport: None, - use_yamux_flow_control: false, }, max_parallel_downloads: 5, allow_non_globals_in_dht: false, @@ -519,8 +518,6 @@ pub enum TransportConfig { /// This parameter exists whatever the target platform is, but it is expected to be set to /// `Some` only when compiling for WASM. wasm_external_transport: Option, - /// Use flow control for yamux streams if set to true. - use_yamux_flow_control: bool, }, /// Only allow connections within the same process. diff --git a/client/network/src/service.rs b/client/network/src/service.rs index af123e94fac4b..0139739ad2aa6 100644 --- a/client/network/src/service.rs +++ b/client/network/src/service.rs @@ -334,12 +334,12 @@ impl NetworkWorker { behaviour.register_notifications_protocol(*engine_id, protocol_name.clone()); } let (transport, bandwidth) = { - let (config_mem, config_wasm, flowctrl) = match params.network_config.transport { - TransportConfig::MemoryOnly => (true, None, false), - TransportConfig::Normal { wasm_external_transport, use_yamux_flow_control, .. } => - (false, wasm_external_transport, use_yamux_flow_control) + let (config_mem, config_wasm) = match params.network_config.transport { + TransportConfig::MemoryOnly => (true, None), + TransportConfig::Normal { wasm_external_transport, .. } => + (false, wasm_external_transport) }; - transport::build_transport(local_identity, config_mem, config_wasm, flowctrl) + transport::build_transport(local_identity, config_mem, config_wasm) }; let mut builder = SwarmBuilder::new(transport, behaviour, local_peer_id.clone()) .peer_connection_limit(crate::MAX_CONNECTIONS_PER_PEER) diff --git a/client/network/src/transport.rs b/client/network/src/transport.rs index a18aa3d56f2c6..10b374a4f256c 100644 --- a/client/network/src/transport.rs +++ b/client/network/src/transport.rs @@ -41,7 +41,6 @@ pub fn build_transport( keypair: identity::Keypair, memory_only: bool, wasm_external_transport: Option, - use_yamux_flow_control: bool ) -> (Boxed<(PeerId, StreamMuxerBox), io::Error>, Arc) { // Build the base layer of the transport. let transport = if let Some(t) = wasm_external_transport { @@ -109,12 +108,9 @@ pub fn build_transport( mplex_config.max_buffer_len(usize::MAX); let mut yamux_config = libp2p::yamux::Config::default(); - - if use_yamux_flow_control { - // Enable proper flow-control: window updates are only sent when - // buffered data has been consumed. - yamux_config.set_window_update_mode(libp2p::yamux::WindowUpdateMode::OnRead); - } + // Enable proper flow-control: window updates are only sent when + // buffered data has been consumed. + yamux_config.set_window_update_mode(libp2p::yamux::WindowUpdateMode::OnRead); core::upgrade::SelectUpgrade::new(yamux_config, mplex_config) .map_inbound(move |muxer| core::muxing::StreamMuxerBox::new(muxer)) diff --git a/client/service/test/src/lib.rs b/client/service/test/src/lib.rs index 7c4e28f4ddc4a..29e5e4bd86453 100644 --- a/client/service/test/src/lib.rs +++ b/client/service/test/src/lib.rs @@ -225,7 +225,6 @@ fn node_config