Linux Sunucuda TCP Stack Ayarları ile Gecikme Süresini Azaltmak

TCP/IP protokolü, internetin temel yapı taşlarından biridir. Sunucularda düşük gecikme süresi, yüksek performans ve hızlı veri iletimi sağlamak için TCP ayarlarını optimize etmek oldukça önemlidir. Özellikle Linux sunucularda TCP stack ayarları, ağ iletişimini doğrudan etkiler ve gecikme sürelerini ciddi şekilde azaltabilir.


TCP Gecikmesini Etkileyen Faktörler

TCP iletişimi, özellikle veri aktarımındaki gecikmeleri yönetmek için çeşitli mekanizmalar kullanır. Bu mekanizmalar arasında:

  • Congestion control (tıkalı ağ yönetimi)
  • Buffer management (bellek yönetimi)
  • RTT (Round-Trip Time)

gibi unsurlar bulunur. Bu parametreler, ağın nasıl tepki vereceğini belirler ve gecikme süresini doğrudan etkiler.


TCP Stack Ayarlarıyla Gecikme Süresini Azaltma

Linux sunucularda ağ gecikmesini azaltmak için birkaç kritik TCP ayarı yapılabilir. İşte bu ayarların nasıl yapılacağına dair öneriler:


1. TCP Congestion Control Ayarı

Linux’ta, ağ tıkanıklığı kontrolü yapmak için farklı algoritmalar bulunur. En hızlı veri aktarımı için BIC (Binary Increase Congestion Control) veya CUBIC algoritması önerilir.

Bunu değiştirmek için:

sysctl -w net.ipv4.tcp_congestion_control=cubic

2. TCP Buffer Boyutlarını Artırma

TCP iletişimi sırasında kullanılan send buffer ve receive buffer boyutları, performansı etkileyebilir. Bu buffer’ları büyüterek daha hızlı veri iletimi sağlanabilir.

Buffer boyutlarını artırmak için:

sysctl -w net.core.rmem_max=16777216
sysctl -w net.core.wmem_max=16777216
sysctl -w net.ipv4.tcp_rmem="4096 87380 16777216"
sysctl -w net.ipv4.tcp_wmem="4096 16384 16777216"

3. TCP Slow Start Threshold (Yavaş Başlangıç Eşiği)

TCP’nin yavaş başlama eşiğini düşürmek, veri aktarım hızını artırabilir. Bu, ağ tıkanıklığına daha az duyarlı bir bağlantı sağlar.

Bunu değiştirmek için:

sysctl -w net.ipv4.tcp_slow_start_after_idle=0

4. TCP Time-Wait Durumunu Kısaltma

TCP bağlantısı kapandığında, bağlantının yeniden kullanılabilir hale gelmesi için “TIME-WAIT” durumu vardır. Bu durumu kısaltarak, daha hızlı bağlantı kurma sağlanabilir.

Bunu değiştirmek için:

sysctl -w net.ipv4.tcp_fin_timeout=30

5. TCP Timestamps’ı Kapatma

TCP zaman damgaları, her paket ile ilgili zaman bilgisi taşıyan verileri içerir. Bu, bağlantı gecikmesini artırabilir. Zaman damgalarını devre dışı bırakmak, bazı durumlarda gecikmeyi azaltabilir.

Bunu devre dışı bırakmak için:

sysctl -w net.ipv4.tcp_timestamps=0

İzleme ve Test Etme

Yapılan bu ayarların etkinliğini test etmek için ping ve traceroute gibi araçlarla ağ gecikmesi izlenebilir. Ayrıca, iperf gibi ağ test araçları kullanarak ağın performansı doğrulanabilir.


Sonuç

Linux sunucularda TCP stack ayarlarını optimize etmek, ağ performansını iyileştirmek ve gecikme sürelerini azaltmak için etkili bir yöntemdir. Bu ayarlarla, özellikle yüksek trafikli web uygulamaları ve oyun sunucuları gibi düşük gecikme gereksinimi olan sistemlerde büyük performans artışı sağlanabilir.

Vps.com.tr