Sysctl

De WikiMar
Dreceres ràpides: navegació, cerca

Connection tunning for performance

See some of the current values you are using at https://www.speedguide.net/analyzer.php


Config for fast 1 Gbps Internet connections:

Windows

https://www.speedguide.net/articles/windows-8-10-2012-server-tcpip-tweaks-5077

Open a PowerShell as administrator.


Show current config:

netsh int tcp show global
Get-NetTCPSetting -SettingName InternetCustom

Apply new config:

# DEFAULT OPTION THAT SOMETIMES IT DOES NOT WORK WELL:
netsh int tcp set global autotuninglevel=normal
# IF IT DOES NOT WORK WELL TEST IF IT IMPROVES:
netsh int tcp set global autotuninglevel=highlyrestricted


netsh int tcp set heuristics disabled

Set-NetTCPSetting -SettingName InternetCustom -CongestionProvider CTCP

netsh int tcp set global dca=enabled

Get-NetAdapterChecksumOffload  
Enable-NetAdapterChecksumOffload -Name *

netsh int tcp set global rss=enabled
netsh int tcp set global rsc=enabled


Set-NetTCPSetting -SettingName InternetCustom -InitialCongestionWindow 10
#ALTERINATIVELY:  netsh int tcp set supplemental template=custom icw=10

Alternatively there is a progra to see and change all the values:

https://www.speedguide.net/downloads.php

Linux

See current config

sysctl -a

/etc/sysctl.conf

#marti: https://fasterdata.es.net/host-tuning/linux/
# allow testing with buffers up to 32MB
net.core.rmem_max = 33554432
net.core.wmem_max = 33554432
# increase Linux autotuning TCP buffer limit to 16MB
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
# recommended default congestion control is htcp   (enlloc de la per defecte cubic)
net.ipv4.tcp_congestion_control=htcp
# recommended for hosts with jumbo frames enabled
net.ipv4.tcp_mtu_probing=1
net.ipv4.tcp_slow_start_after_idle=0
# crec que ja esta activat per defecte:
net.ipv4.tcp_sack=1

Explanation of the different congestion control algorithms: http://androidmodguide.blogspot.de/p/tcp-algorithms.html


Apply changes

sysctl -p

Check speed of internet connection (no root needed)

wget https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py
chmod a+rx speedtest.py
./speedtest.py