From 7ba61ee6b70806dd69d4f417218300be01202200 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20Frosteg=C3=A5rd?= Date: Sun, 19 Apr 2020 10:34:01 +0200 Subject: [PATCH] aquatic: improve comment for NetworkConfig.socket_recv_buffer_size --- aquatic/src/lib/config.rs | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/aquatic/src/lib/config.rs b/aquatic/src/lib/config.rs index d6400bb..3d81760 100644 --- a/aquatic/src/lib/config.rs +++ b/aquatic/src/lib/config.rs @@ -31,7 +31,20 @@ pub struct NetworkConfig { pub max_response_peers: usize, /// Ask peers to announce this often (seconds) pub peer_announce_interval: i32, - /// Setting on socket. When value is zero, don't set (use OS default) + /// Size of socket recv buffer. Use 0 for OS default. + /// + /// This setting can have a big impact on dropped packages. It might + /// require changing system defaults. Some examples of commands to set + /// recommended values for different operating systems: + /// + /// macOS: + /// $ sudo sysctl net.inet.udp.recvspace=6000000 + /// $ sudo sysctl net.inet.udp.maxdgram=500000 # Not necessary, but recommended + /// $ sudo sysctl kern.ipc.maxsockbuf=8388608 # Not necessary, but recommended + /// + /// Linux: + /// $ sudo sysctl -w net.core.rmem_max=104857600 + /// $ sudo sysctl -w net.core.rmem_default=104857600 pub socket_recv_buffer_size: usize, pub poll_event_capacity: usize, }