Birçok yönetici, ServerFault ve başka yerlerde, TCP üzerinden TCP hakkında bir fikrin ne kadar kötü olduğunu, örneğin VPN'lerde sürdürmeye devam ediyor. En küçük paket kaybının bile, birinin TCP erimesi olmasa bile en azından şiddetli verim bozulmasından muzdarip olacağı ve bu nedenle TCP-TCP'nin kesinlikle önlenmesi gerektiğidir. Ve bu muhtemelen bir zamanlar doğruydu, örneğin 2001'de hala bu makalenin yazıldığı zaman .
Fakat o zamandan beri teknoloji ve protokollerde büyük ilerlemeler gördük. Günümüzde hemen hemen her yere “Seçici ACK” uyguladık ve Moore yasası bize çok daha fazla bellek verdi ve onunla birlikte Gbit uplinks için optimize edilmiş büyük TCP tamponları geldi. Ayrıca paket kaybı, bugünlerde radyo dışı bağlantılarda çok daha az sorun yaratıyor. Bütün bunlar TCP üzerindeki TCP problemini önemli ölçüde hafifletmeli, değil mi?
Örneğin, TCP tabanlı VPN'lerin UDP / ESP tabanlı olanlardan daha kolay uygulanıp işletilebileceği gerçek dünya senaryoları olduğunu unutmayın (aşağıya bakınız). Bu yüzden benim sorum:
Hangi koşullar altında (bağlantı paketi kaybı ve gecikmesi) TCP-to-TCP, SACK desteği ve her iki uçta da uygun boyutta TCP arabellekleri varsayarak, yalnızca TCP'den daha kötü performans gösteriyor mu?
Bu harika olurdu, bu nedenle (dış bağlantı) paket kaybı / gecikmesi ve (iç bağlantı) iş çıkışı / titremesi arasındaki ilişkiyi gösteren - TCP üzerinden TCP için ve yalnızca TCP için yapılan ölçümlere bakın. Bu ilginç makaleyi buldum , ancak yalnızca gecikmeyle ilgileniyor ve (dış) paket kaybını ele almıyor gibi görünüyor.
Ayrıca: TCP ve TCP üzerinden TCP arasındaki performans farkını azaltmak için önerilen ayarlar (örn. TCP seçenekleri, tampon ayarları, MTU / MSS'yi azaltma vb.) Var mı?
Güncelleme: Mantığımız.
Bu soru bazı gerçek dünya senaryolarında hala çok önemlidir. Örneğin, sensör verilerini toplayan ve VPN aracılığıyla platformumuza besleyen büyük binalara gömülü cihazlar yerleştiriyoruz. Karşı karşıya olduğumuz sorun, güvenlik duvarları ve yanlış yapılandırılmış bir şekilde üst üste binme, isteksiz BT departmanları ile birlikte kontrolümüz altında olmadığımızı gösteriyor. Burada tartışılan ayrıntılı bir örneğe bakın .
Bu gibi pek çok durumda, TCP olmayandan TCP tabanlı bir VPN'e geçmek (bizim gibi OpenVPN kullanıyorsanız çok kolaydır), yokuş yukarı parmakla işaret eden savaşlardan kaçmamızı sağlayan hızlı bir düzeltmedir. Örneğin, genellikle 443 numaralı TCP bağlantı noktasına genellikle izin verilir (en azından vekil aracılığıyla) veya yalnızca TCP'nin MSS seçeneğini azaltarak Path-MTU sorunlarını çözebiliriz.
TCP-tabanlı bir VPN'in hangi şartlar altında uygulanabilir bir alternatif olarak değerlendirilebileceğini bilmek iyi olurdu, bu yüzden her iki seçeneğin de artılarını ve eksilerini ağırlayan bilinçli bir karar verebiliriz. Örneğin, radyo-olmayan bağlantılarda TCP-VPN'in bizim için uygun olduğunu biliyoruz, ancak önemli miktarda paket kaybı ve yüksek gecikme süresi olan 3G bağlantılarında uzak istemcilerde adil bir paya sahibiz - orada bir TCP-VPN nasıl performans gösterirdi?
Buna göre başlığı ve ana soruyu geliştirmeye çalıştım; umarım anlamlı olur.