From 83088644da623b567ad2efff80c2aa8fc0b8ff7e Mon Sep 17 00:00:00 2001 From: Dominik Csapak Date: Wed, 9 Sep 2020 13:54:10 +0200 Subject: [PATCH] fix #2983: improve tcp performance by leaving the buffer sizes on default, we get much better tcp performance for high latency links throughput is still impacted by latency, but much less so when leaving the sizes at default. the disadvantage is slightly higher memory usage of the server (details below) my local benchmarks (proxmox-backup-client benchmark): pbs client: PVE Host Epyc 7351P (16core/32thread) 64GB Memory pbs server: VM on Host 1 Socket, 4 Cores (Host CPU type) 4GB Memory average of 3 runs, rounded to MB/s | no delay | 1ms | 5ms | 10ms | 25ms | without this patch | 230MB/s | 55MB/s | 13MB/s | 7MB/s | 3MB/s | with this patch | 293MB/s | 293MB/s | 249MB/s | 241MB/s | 104MB/s | memory usage (resident memory) of proxmox-backup-proxy: | peak during benchmarks | after benchmarks | without this patch | 144MB | 100MB | with this patch | 145MB | 130MB | Signed-off-by: Dominik Csapak --- src/bin/proxmox-backup-proxy.rs | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/bin/proxmox-backup-proxy.rs b/src/bin/proxmox-backup-proxy.rs index 75065e6f..5844e632 100644 --- a/src/bin/proxmox-backup-proxy.rs +++ b/src/bin/proxmox-backup-proxy.rs @@ -87,8 +87,6 @@ async fn run() -> Result<(), Error> { let acceptor = Arc::clone(&acceptor); async move { sock.set_nodelay(true).unwrap(); - sock.set_send_buffer_size(1024*1024).unwrap(); - sock.set_recv_buffer_size(1024*1024).unwrap(); Ok(tokio_openssl::accept(&acceptor, sock) .await .ok() // handshake errors aren't be fatal, so return None to filter