VPN üzerinden bir 2 GB dosya kopyalayın, aktarım iyi görünür. On bin küçük belgeden oluşan bir klasör kopyalayın, aynı bağlantı bozuk görünür. Fark, iki iş arasında değişen bir bant genişliği ayarı değildir. İkinci iş zamanını kurulum, meta veri ve yanıt beklemeye harcar ve tünelin gecikmesi bu beklemeyi görünür kılar.

Bir dosya akar; bir klasör dolusu dosya pazarlık eder

Büyük bir kopya ömrünün çoğunu birkaç açık tanıtıcı üzerinde okuma-yazma döngüsünde geçirir. Protokol ek yükü dosya başına bir kez ödenir ve veriler büyük bloklar halinde hareket eder. Sonuca bant genişliği hâkimdir.

Klasör kopyası dosya başına öder: oluştur, öznitelikleri sorgula, aç, yaz, kapat ve dizin meta verisini güncelle. Bunların her biri, sonraki adım ilerlemeden önce yanıt bekleyen bir istektir. Baytlar küçüktür; koordinasyon değildir.

Bu yüzden düşük bağlantı kullanımı grafiği neredeyse hiçbir şey kanıtlamaz. Bağlantı boştadır çünkü istemci bekliyordur, tünel yavaş olduğu için değil. Bir depolama dizisi veya uç nokta tarayıcısı aynı biçimde gecikme ekleyebilir. Herhangi bir ağ ayarını değiştirmeden önce hangi aşamanın beklediğini belirleyin.

Gidiş-dönüşler baytlardan daha hızlı birikir

Gecikme, tek bir bağımlı alışverişin maliyetidir. Bir dosya birkaç sıralı alışveriş gerektiriyorsa ve tünel her yöne 40 ms ekliyorsa, dosya başına maliyet hızla büyür. On bin dosya bunu dakikalara çevirir.

Aritmetik açıklayıcıdır, ölçüm değil: bir dosyanın tek bir gidiş-dönüşe mal olacağı garanti değildir ve istemciler işin bir kısmını örtüştürür.

Toplamı iki kol değiştirir. Dosya başına bağımlı alışveriş sayısını azaltın veya bunlardan daha fazlasını aynı anda yürütün. Birincisi protokol veya iş yükü değişikliğidir; ikincisi eşzamanlılıktır. İkisi de yavaş bir bağlantıyı hızlandırmaz.

İş yükünü ölçün, bağlantıyı değil

Aynı uç noktalara ve aynı erişim ilkesine sahip üç işi karşılaştırın: bir büyük dosya, küçük dosyalar klasörü ve gerçek iş operasyonu. Her sonuçla birlikte dosya sayısını, boyut dağılımını, kopyalama aracını ve ağ koşullarını kaydedin.

Bu ayrıntılar olmadan tek bir MB/s sayısı kimsenin sayısıyla karşılaştırılamaz.

Gecikmeyi verimden ayrı ölçün. Dosya sunucusuna basit bir gidiş-dönüş testi, küçük işlemler boyunca çarpılan sayıyı verir. Ardından kopyanın ortalama hızı yerine istek desenini izleyin. Hız düşükse ve bağlantı boştaysa, darboğaz tünelin üstündedir.

İşi değiştirin: eşzamanlılık ve arşivler

Yetkili toplu kopya için kontrollü eşzamanlılığa sahip bir araç daha fazla isteği yürütür. Robocopy'nin /MT seçeneği Windows'ta yaygın örnektir. İş parçacığı eklemek daha hızlı kopyayı garanti etmez.

İstemcinin, sunucunun ve depolamanın kaldırabileceği bir sayı seçin; iş günlüğünü ve varsa hataları saklayın.

Kaynakta arşivlemek ve yerelde açmak, dosya başına uzak işi ortadan kaldırır. Karşılaştırmaya hazırlık ve çıkarma süresini ekleyin ve arşivin işin ihtiyaç duyduğu meta verileri ve izinleri koruduğunu doğrulayın. İki hilenin hiçbiri bir uygulamayı kendi dosya işlemlerini toplu yapmaya zorlamaz.

Sayacı kontrollü testle doğrulayın

Aynı işi bir değişkeni değiştirerek iki kez çalıştırın ve iki sayıyı da kaydedin. Bir ayarın yardımcı olduğunu mu yoksa ağın tesadüfen daha sakin mi olduğunu bilmenin tek yolu kontrollü testtir.

İki komut dosya sayısını ve gidiş-dönüş temel çizgisini verir:

Get-ChildItem \\fileserver.hq.example\\share -Recurse | Measure-Object -Property Length -Sum
ping -n 20 fileserver.hq.example

Ardından kopyayı sınırlı iş parçacığı sayısıyla çalıştırın ve günlüğü önceki çalıştırmayla karşılaştırın:

robocopy \\fileserver.hq.example\\share C:\\local /E /MT:16 /LOG:copy.log /TEE

Sayacı iyileştirmek için SMB imzalamayı, şifrelemeyi veya uç nokta korumasını kapatmayın. Bu değişiklikler bir güvenlik özelliğini, belki de darboğaz olmayan bir sayıyla değişir. Ve notlarınızda VPN taşımasını SMB'nin kendi taşımasından ayrı tutun, çünkü birindeki düzeltme diğeri hakkında kanıt değildir.

İlgili makaleler