Skip to content

Instantly share code, notes, and snippets.

@keithah
Created February 4, 2024 00:55
Show Gist options
  • Save keithah/65dd77d56d4f3bb8578e78a9c77e0eca to your computer and use it in GitHub Desktop.
Save keithah/65dd77d56d4f3bb8578e78a9c77e0eca to your computer and use it in GitHub Desktop.
Speedify cli tweaks
rodbourn — 01/14/2024 11:10 AM (speedify discord)
Some more awesome sauce:
making the following kernel tweaks has helped dramatically on the uplink bonding... i have a 1000/1000 fiber, and 1000/35 cable connection, and the uplink reaching near 1000 is the challenge (first world problems, but a fun problem to look at!).
net.ipv4.tcp_congestion_control=bbr
net.ipv4.tcp_slow_start_after_idle=0
# Increase TCP maximum buffer size
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
# Increase Linux autotuning TCP buffer limits
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
# Enable TCP Window Scaling
net.ipv4.tcp_window_scaling = 1
# Enable TCP Timestamps
net.ipv4.tcp_timestamps = 1
# Enable Selective Acknowledgements
net.ipv4.tcp_sack = 1
# Enable FACK congestion avoidance algorithm
net.ipv4.tcp_fack = 1
# Increase the length of the processor input queue
net.core.netdev_max_backlog = 50000
# Increase the TCP maximum and default buffer sizes using setsockopt()
net.core.optmem_max = 25165824
# Increase number of incoming connections
net.core.somaxconn = 4096
# Increase number of incoming connections backlog
net.ipv4.tcp_max_syn_backlog = 20480
net.ipv4.tcp_fastopen = 1
net.ipv4.tcp_fastopen_key = 00000000-00000000-00000000-00000000
net.ipv4.tcp_tw_reuse = 1
$ ./speedify_cli speedtest
[
{
"city" : "",
"country" : "privateus",
"downloadSpeed" : 1683899220.1679666,
"isError" : false,
"latency" : 15,
"numConnections" : 2,
"time" : 1705259084,
"type" : "speed",
"uploadSpeed" : 907825157.41193759
}
]
$ ./speedify_cli show settings
{
"allowChaChaEncryption" : true,
"bondingMode" : "speed",
"downstreamSubnets" : [],
"enableAutomaticPriority" : true,
"enableDefaultRoute" : true,
"encrypted" : true,
"forwardedPorts" : [],
"headerCompression" : false,
"jumboPackets" : true,
"overflowThreshold" : 2500.0,
"packetAggregation" : true,
"perConnectionEncryptionEnabled" : false,
"perConnectionEncryptionSettings" : [],
"perConnectionParallelSockets" :
[
{
"adapterID" : "all",
"sockets" : 4
}
],
"priorityOverflowThreshold" : 2500.0,
"startupConnect" : true,
"transportMode" : "tcp-multi",
"ulpReportIntervalSeconds" : 900
}
I think BBR has the biggest impack 🤷‍♂️
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment