Uncategorized

Sysctl Ayarlarıyla VDS Performansını Arttırma

VDS sunucularda ağ performansını artırmak için en güçlü yöntemlerden biri, kernel’in TCP/IP davranışını sysctl ayarlarıyla optimize etmektir. VDS’in kendi çekirdeğini kullanması (VDS, VPS’ten farklı olarak) paket işleme üzerinde tam kontrol anlamına gelir.

Sysctl Neden Kullanılır?

Sysctl, Linux çekirdeğinin ağ trafiğini hangi kurallarla yöneteceğini belirleyen yapılandırma sistemidir.

  • TCP bağlantı süreleri hızlanır
  • Gecikme değerleri düşer
  • Büyük dosya transferleri daha akıcı çalışır
  • Sunucu daha fazla eşzamanlı bağlantıyı kaldırır
  • Ağ yükü arttığında darboğaz oluşmaz

Oyun sunucularında düşük ping elde etmek için bu ayarlar oldukça kritiktir. Bu konuda daha fazla örnek görmek istersen VPS/VDS yapılandırma rehberimiz sana yardımcı olabilir.

VPS Üzerinde Oyun Sunucusu Kurulum Rehberi

VDS Üzerinde Sysctl Tuning Nasıl Yapılır?

Kernel’in Kullanılan Ağ Ayarlarını İnceleyelim

Sunucuda tanımlı olan TCP ve ağ ayarlarını kontrol etmek için bu komutu girelim. Alınan çıktı, TCP protokolünün mevcut çalışma değerlerini gösterir.

sysctl -a | grep tcp

Tüm Optimize Ayarları Uygun Dosyaya Ekleyelim

Şimdi ağ performansını iyileştiren sysctl parametrelerini düzenleyeceğiz. Bunun için yapılandırma dosyasını açalım.

nano /etc/sysctl.conf

Aşağıdaki ayarları dosyanın en altına ekleyelim.

net.core.somaxconn = 65535
net.core.netdev_max_backlog = 65536
net.ipv4.tcp_max_syn_backlog = 8192

net.core.rmem_max = 33554432
net.core.wmem_max = 33554432
net.ipv4.tcp_rmem = 4096 87380 33554432
net.ipv4.tcp_wmem = 4096 65536 33554432

net.ipv4.tcp_congestion_control = bbr
net.ipv4.tcp_fastopen = 3

net.ipv4.tcp_fin_timeout = 20
net.ipv4.tcp_tw_reuse = 1

net.ipv4.ip_local_port_range = 1024 65535

net.ipv4.tcp_syncookies = 1

Ayarların Aktif Olması İçin Sysctl’i Yeniden Yükleyelim

Dosyayı kaydedip sysctl’i yeniden yüklemek için komutu girelim. Eğer hata görünmüyorsa ayarlarımız başarılıdır.

sysctl -p

BBR Aktif mi Kontrol Edelim

BBR, Google’ın geliştirdiği modern bir TCP hızlandırma algoritmasıdır ve VDS üzerinde ciddi performans artışı sağlar.

Kontrol etmek için

sysctl net.ipv4.tcp_congestion_control

Çıktı şöyleyse her şey doğru uygulanmış demektir.

net.ipv4.tcp_congestion_control = bbr

BBR aktif değilse kernel bunu desteklemiyor olabilir. Modül görünüyorsa tamamdır.

lsmod | grep bbr

Bağlantı Kuyruğu Artmış mı Kontrol Edelim

sysctl net.core.somaxconn

Eğer çıktı böyle ise sunucunun aynı anda kabul edebileceği bağlantı kapasitesi ciddi şekilde arttı demektir.

net.core.somaxconn = 65535

Sunucu Trafiğini Test Edelim

Aşağıdaki komut, paketlerin gecikme davranışını hızlıca anlamanı sağlar

ping -c 5 google.com

Yüksek gecikme sunucu dışındaki bir ağ problemine işaret eder. Gecikme düşük ama sunucuda trafik yavaşsa sorun kernel ayarlarıyla düzelir.

Ağ verimliliğini artıran bir diğer testi deneyelim.

iperf3 -c <hedef_ip>

Kaynak Yönetimini Etkileyen Kernel Parametreleri

Bu parametreler, VDS üzerinde ağ trafiğinin nasıl yürütüleceğini belirleyen temel çekirdek ayarlarıdır. Bağlantı kapasitesi, veri işleme hızı, kuyruk genişliği ve TCP davranışı tamamen bu değerler üzerinden yönetilir.

• net.core.somaxconn
Sunucunun aynı anda kabul edebileceği yeni bağlantı sayısını tanımlar. Varsayılan değer yoğun yükte performans kaybına neden olabilir.

• net.ipv4.tcp_max_syn_backlog
Yeni bağlantıları bekleten kuyruğun boyutunu artırır. Trafik yükseldiğinde düşük değerler bağlantı reddine sebep olabilir.

• net.core.rmem_max / net.core.wmem_max
Sunucunun paketleri işlerken kullandığı tampon alanını belirler. Bu tamponun büyütülmesi yüksek hızda veri aktarımını kolaylaştırır.

• net.ipv4.tcp_rmem
TCP tampon boyutlarını minimumdan maksimuma kadar tanımlar. Bu değerler trafik seviyesine göre optimize edilir.

• net.ipv4.tcp_congestion_control
TCP trafiğinde hangi tıkanıklık algoritmasının kullanılacağını belirler. BBR, gecikmeyi ciddi ölçüde düşürerek daha yüksek hız sunar.

Bu değerler, SSH üzerinden sunucuya bağlanıldıktan sonra terminalde sysctl.conf dosyasına eklenerek geçerli hâle getirilir. Ağ optimizasyonunda kullanılan bu kernel ayarları, VDS ile dedicated sunucular arasındaki temel farklardan birini oluşturur; donanım seviyesi ve kontrol imkânını karşılaştırmak için hazırlanan detaylı içeriğe bakabilirsin.

Sık Sorulan Sorular

Sysctl ayarlarını uyguladıktan sonra ağ performansını nasıl test edebilirim?

Temel gecikme için ping, bant genişliği için iperf3, bağlantı kuyruğu için ss -lnt ve aktif bağlantı yönetimi için netstat -s kullanabilirsin. Bu testler, yapılan değişikliğin gerçek etkisini görmek için en doğru yöntemdir.

net.core.netdev_max_backlog değerini artırmak ne zaman faydalı olur?

Bu değer ağ kartının çok hızlı paket aldığı durumlarda, kernel paketleri işleyemeden yoğunluk oluştuğunda devreye girer.

Sysctl ayarlarını yaptıktan sonra hangi log dosyalarını kontrol etmeliyim?

Kernel ile ilgili hatalar genellikle şu loglarda görülür. Ayarların aşırı yüksek olması durumunda buffer uyarıları, port tükenmesi veya conntrack uyarıları bu loglarda görünür.

  • /var/log/kern.log
  • /var/log/syslog
  • dmesg

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir