Srebrenik.NET

Kako povećati brzinu prenosa podataka na linux serveru ?

Super računar

Super računar

Da ne zaboravim(o):

$ sysctl -p /etc/sysctl.conf
net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr
net.ipv4.tcp_window_scaling = 1
net.core.rmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 16384 16777216

Ako linux server ne daje one performanse, prilikom prenosa podataka preko mreže sa jednog servera na drugi, tada treba podesiti parametre u kernelu zaduzene za prijenos podataka preko mreže. U osnovi imamo segmente, pakete i frejmove koji imaju određenu veličinu kada se podaci prenose kroz OSI Model. Svaki prijenos iz jednog layera u drugi traži da se potvrdi ovaj prijenos podataka. Standardne postavke veličine ovih segmenata, paketa, frejmova su definisane godinama i godinama prije, kada još nije bilo brzih Gigabit mreža. Eh, sada kada se to podesi na bolje vrijednosti ima sve da "leti" ...

--- par minuta kasnije ---

Podešeno je, preko ovih gore parametera, malo više :) nego što to je po defaultu u kernelu. I šta smo dobili ? Dobili smo da umjesto sa 300Kb/s prijenos podataka "leti" sa 7-8 MB/s. I to je to .. :) ( I članak mi treba da služi kao podsjetnik kada sljedeći puta neki server bude trebao da se podesi da bude "brži" :) ).


Fajl 1:
245,436,776 100% 7.54MB/s

Fajl 2:

222,433,148 100% 7.92MB/s

Exit mobile version