Evdeki yavaş internet bağlantımı, kimsenin bilmediği bir ayarı değiştirerek düzelttim.

İnternet hızımızda yavaşlama yaşadığımızda, neredeyse her zaman yönlendiriciyi yeniden başlatmaya başvururuz. Bazı durumlarda bu işe yarayabilir. Bazen, internet servis sağlayıcımızın (İSS) internet hızını kısıtladığını otomatik olarak varsayarız.Bu durum her zaman böyle olmayabilir. Bağlantı hızı tüm hız testlerinde harika görünse de, internet deneyiminin kötü olmasına neden olan benzersiz bir sorun yaşıyor olabiliriz.

Evdeki yavaş internet bağlantımı, kimsenin bilmediği bir ayarı değiştirerek düzelttim.

Aynen benim başıma da bu geldi ve sonuç olarak çözüm beklediğim gibi olmadı. Tek yapmam gereken Maksimum İletim Birimi (MTU) değerini gerçek bağlantı limitlerimle eşleştirmekti. Bunu yaptıktan sonra gecikme ortadan kayboldu.

MTU, bağlantı üzerinden sorunsuz bir şekilde geçebilecek maksimum IP yükünü tanımlar.

Bölümleme ve başlık boyutunun fazla olması kuralları, gerçek paket boyutunu belirler.

Wi-Fi yönlendirici, USB bağlantı noktası ve LAN bağlantı noktalarıyla birlikte.

MTU, ağa bağlı bir cihazın parçalanma olmadan izin verebileceği en büyük veri paketini bayt cinsinden temsil eder. Bu sayı, çoğu Ethernet ağı için genellikle 1500 bayt olarak ayarlanmıştır. 1500 sayısı rastgele değildir. Yönlendiriciniz, onlarca yıllık Ethernet çerçeve tasarım sınırlamalarına dayanarak güvenli olduğunu varsayar; bu sınırlamaların çoğu bugün hala kullanılmaktadır.

Ancak, 1500 bayt sadece veri boyutunuzu temsil etmez, çünkü paketler doğal olarak protokol yükünü temsil eden ek veriler de taşır. Tipik TCP trafiğinde, bu yük genellikle IPv4 başlığı için 20 bayt ve TCP başlığı için 20 bayt içerir. Bunu hesaba katarsak, 1500 MTU ortamında paketiniz için etkili bir şekilde maksimum 1460 baytlık bir izin verilir. Bu, standart ağlarda 1460 baytlık maksimum TCP segment boyutunu (MSS) açıklar.

Bir paketin, geçmesi gereken MTU ortamından daha büyük olması durumunda sorunlar ortaya çıkar. Paketin başarılı bir şekilde geçmesinin tek yolu, yönlendiricinin paketi daha küçük parçalara bölmesidir. Bu işlem, her parçanın kendi IP başlığına sahip olması ve bunların hedefte yeniden birleştirilmesi gerektiği için daha fazla CPU çalışması ve önbellek alanı gerektiren kaynak yoğun bir işlemdir. İşlemin kendisi bant genişliğini azaltmaz; ancak paket iletiminin karmaşıklığını ve hassasiyetini artırır.

Gerçek dünyadaki internet yolları, kullanılabilir MTU'yu genellikle 1500'ün altına düşürür.

Paketleme ve erişim teknolojileri, mevcut kargo alanını azaltır.

1500 baytın her yerde işe yaradığını varsayabilirsiniz, ancak bu doğru değil. 1500 bayt, birçok konut bağlantısında kullanılan Maksimum İletim Biriminden (MTU) daha büyüktür. Ethernet Üzerinden Noktadan Noktaya (PPPoE), bazı fiber ağ kurulumları ve birçok DSL seçeneği için yaygın bir standarttır. 8 baytlık ek maliyeti, etkin MTU'yu 1492'ye düşürür ve yönlendiricinizin 1500 baytlık paketleri 1492 bitlik bir tünelden geçirmesi gerekiyorsa parçalanmaya neden olur.

Verilerinizin ek paketlemeye alınması gerektiği sürece, bu durum gerçek veri taşıma alanınızı etkileyecektir. Örneğin, bir VLAN 4 baytlık bir etiket sağlar. Bu etiket, trafiğin sanal ağı tanımlaması için gerekli olsa da, yine de veri taşıma alanını azaltır. Taşıyıcı düzeyinde ağ adresi çevirisi (CGNAT) ve DS-Lite de aynı etkiye sahiptir. DS-Lite durumunda, IPv4 trafiğini IPv6 paketleri içinde geçirerek trafiği ISS'nizin ağında yönlendirmek fazladan bir başlık ekler. VPN'ler, orijinal paketinizi yeni bir paketin veri taşıma alanı haline getirir ve yeni paket yeni bir başlık gerektirir.

Bütün bu durumlar, zaten kendi ambalajı olan bir kutuya fazladan ambalaj eklemek gibidir; ancak kutunun geçmesi gereken yolun boyutunu artırmaz. Kutu ancak bölündüğü takdirde geçebilir.

Mobil ağlarda işler daha karmaşık hale geliyor çünkü LTE ve 5G'nin tarihsel olarak Ethernet'e göre daha düşük bir temel değeri (1500 bayt) var. Operatörünüzün uygulamasına bağlı olarak, MTU değerleri 1420 ile 1480 arasında değişiyor. Genellikle, bağlantı limiti yol boyunca herhangi bir yerdeki en küçük MTU değerine eşittir ve yönlendirici bu limite uyamadığı sürece, paket parçalanması veya sessiz paket kaybı yaşarsınız. Bu, internet hızının yavaş olmasının olası bir nedenidir..

Otomatik MTU ayarlama mekanizmaları her zaman arızayı önlemez.

MTU yol tespiti, ICMP filtreleme ve kara delik davranışı

Google Pixel 10 Pro'daki Wi-Fi bağlantı listesi

En azından kağıt üzerinde harika çalışan otomatik bir parçalanma önleme çözümü var. Buna Yol MTU Algılama (PMTUD) deniyor. İşte çalışma prensibi: Cihazlar paket gönderirken "parçalanma yok" biti ayarlayabilir. Bu bit, alıcı yönlendiricinin bir mesajla yanıt vermesine neden olur. ICMP Türü 3 Kodu 4Eğer aşağı yöndeki paket boyutu MTU'yu aşarsa, "parçalama gereklidir".

Sorun şu ki, pratikte birçok güvenlik duvarı ICMP'yi varsayılan olarak engelliyor. Bu nedenle, büyük paketler düşürülüyor ve güvenlik duvarı filtrelemesi göndericinin paketlerin çok büyük olduğunu fark etmesini engelliyor. Bu paket düşürme, TCP'nin yeniden iletmesine ve üstel geri alma zamanlayıcıları oluşturmasına neden oluyor. Bu duruma MTU kara deliği deniyor; burada trafik akıyor gibi görünse bile büyük paketler sürekli olarak başarısız oluyor.

Modern işletim sistemleri, ICMP'ye güvenmeden paket boyutunu araştırmak için RFC 4821 Paket Katmanı Yol MTU Keşfi (PLPMTUD) uygulayarak bazı hataları azaltmaya çalışır. Bazı durumlarda, parçalanma yönlendiriciler, ISS ekipmanları ve VPN uç noktaları tarafından etkili bir şekilde ele alınmaz. Bu durum hız testi sonuçlarında görünmez, ancak gerçek etkisi gecikme değişkenliğinin birikmeye devam etmesidir.

Eğer yönlendiriciniz MSS kurulumu uyguluyorsa, MTU uyumsuzluğunu düzeltmek yerine gizliyor olabilir; bu nedenle belirtiler tutarsız ve sürekli olmayabilir.

MTU'nun ölçülmesi ve düzeltilmesi, uçtan uca temiz paket akışını yeniden sağlar.

Hesaplamaları anladığınız sürece, doğru MTU'yu bulmak kolaydır. Ping komutunu kullanarak test etmeniz gerekiyorsa, IPv4 başlığının 20 bayt, ICMP'nin ise 8 bayt eklediğini ve toplam başlık boyutunun 28 bayt olduğunu unutmayın. Dolayısıyla, 1472 baytlık bir veri yüküyle başlarken, 28 baytlık IPv4 ve ICMP'yi eklediğinizde toplam 1500 bayt olur. Parçalanmaya neden olmayacak bir değere ulaşana kadar veri yükü boyutunu bu noktadan itibaren azaltın. Kullanılabilir MTU, 28 artı en yüksek başarılı veri yükü olacaktır.

İşte Windows komutu:

ping 8.8.8.8 -f -l 1472

`-f` parametresini kullanarak `Parçalanmayı Engelle` seçeneğini, `-l` parametresini kullanarak ise veri paketinin boyutunu belirtiyorum. Amaç, tutarlı bir başarı yanıtı alana kadar veri paketinin boyutunu sürekli olarak azaltmaktır. Bunun Linux'taki karşılığı şu şekildedir:

ping -M do -s 1472 8.8.8.8

macOS'ta işler biraz farklı çünkü hash'ler sürümler arasında aynı şekilde işlenmiyor. MTU yol kontrolünü daha güvenilir hale getirmek için şu gibi araçlar kullanabilirsiniz: mtr Homebrew aracılığıyla.

MTU testini her zaman yalnızca 8.8.8.8 ile sınırlı kalmayın, birden fazla hedef IP adresine karşı yapın; çünkü kara delik koşulları bazı yollarda mevcutken diğerlerinde olmayabilir.

İstenen sabit değeri belirledikten sonra, tüm cihazlarınızı ayrı ayrı yapılandırmak zorunda kalmamak için MTU'yu yönlendiricinizin WAN arayüzünde ayarlamanız en iyisidir. Aşağıda, farklı bağlantı türleri için bekleyebileceğiniz yaklaşık tahminleri gösteren bir tablo bulunmaktadır:

bağlantı türüBekleyebileceğiniz tipik MTU değerleri.
Standart Ethernet (Doğrudan Kablo/Fiber Optik, PPPoE Yok)1500
PPPoE (DSL veya bazı fiber optik internet servis sağlayıcıları)1492
VLAN ile etiketlenmiş internet servis sağlayıcısı bağlantısı1496-1500 (internet servis sağlayıcısının uygulamasına bağlı olarak)
LTE / 4G / 5G mobil ağları~1420-1480 (telekomünikasyon şirketine göre değişir)
IPSec VPN (Tünelleme Modu)1380-1460 (koda ve ambalaja bağlı olarak)
WireGuard (Orijinal MTU 1500)~ 1412
OpenVPN (UDP modu)1300–1450 (büyük ölçüde ortama bağlı)

 

Üst düğmeye git