Dosya sunucularının verimli çalışabilmesi için uygun donanım seçimi, özellikle ortamdaki yük ve büyüme planları gibi faktörler göz önünde bulundurularak dikkatlice yapılmalıdır. Dosya sunucularına bağlanan istemci bilgisayarlar için yapılan yazılım optimizasyonları donanım darboğazlarına takılabilir. Bu nedenle donanım, yazılım iyileştirmelerinin etkili olabilmesi için kritik bir faktördür.
İstemciler İçin Genel Ayarlar
SMB (Server Message Block) dosya sunucularıyla etkileşime giren istemci bilgisayarların performansını artırmak için belirli kayıt defteri ayarları yapılabilir. Aşağıda belirtilen ayarlar özellikle Windows 10, Windows 8.1, Windows Server 2022, Windows Server 2016 gibi sürümlerde geçerlidir.
ConnectionCountPerNetworkInterface
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\ConnectionCountPerNetworkInterface
- Varsayılan Değer: 1
- Geçerli Aralık: 1-16
- Açıklama: Bu ayar, RSS olmayan ağ arabirimleri üzerinden bir sunucuyla kurulabilecek maksimum bağlantı sayısını belirler. Microsoft, varsayılan değerin korunmasını güçlü bir şekilde öneriyor.
ConnectionCountPerRssNetworkInterface
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\ConnectionCountPerRssNetworkInterface
- Varsayılan Değer: 4
- Geçerli Aralık: 1-16
- Açıklama: RSS arabirimleri üzerinden bir sunucuyla yapılabilecek maksimum bağlantı sayısını tanımlar. Varsayılan değerin korunması önerilir.
ConnectionCountPerRdmaNetworkInterface
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\ConnectionCountPerRdmaNetworkInterface
- Varsayılan Değer: 2
- Geçerli Aralık: 1-16
- Açıklama: RDMA arabirimleri üzerinden bir sunucuyla yapılabilecek maksimum bağlantı sayısını belirler. Microsoft, bu ayarın varsayılan değerinin korunmasını öneriyor.
MaximumConnectionCountPerServer
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\MaximumConnectionCountPerServer
- Varsayılan Değer: 32
- Geçerli Aralık: 1-64
- Açıklama: Tüm arabirimlerde bir Windows Server 2012 sunucusuyla kurulabilecek maksimum bağlantı sayısını tanımlar.
DormantDirectoryTimeout
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\DormantDirectoryTimeout
- Varsayılan Değer: 600 saniye
- Açıklama: Bu ayar, dizin kiralamalarına sahip sunucu dizin kollarının açık tutulduğu maksimum süreyi belirler.
FileInfoCacheLifetime
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\FileInfoCacheLifetime
- Varsayılan Değer: 10 saniye
- Açıklama: Bu ayar, dosya bilgisi önbellek süresini belirler. Dosya bilgileri bu süre boyunca önbellekte tutulur ve daha hızlı erişim sağlanır.
DirectoryCacheLifetime
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\DirectoryCacheLifetime
- Varsayılan Değer: 10 saniye
- Açıklama: Dizin önbelleğinin zaman aşımı süresini belirler. Bu süre boyunca dizin bilgileri önbellekte tutulur.
Not: Bu ayar, dizin kiralamaları olmadığında dizin metadata’sının önbelleğe alınmasını kontrol eder. Windows 10, sürüm 1803’te bilinen bir sorun, büyük dizinlerin önbelleğe alınmasını etkiler. Bu sorunu gidermek için sürüm 1809 veya üstünü yüklemek gerekir.
DirectoryCacheEntrySizeMax
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\DirectoryCacheEntrySizeMax
- Varsayılan Değer: 64 KB
- Açıklama: Bu ayar, dizin önbelleği girişlerinin maksimum boyutunu belirler.
FileNotFoundCacheLifetime
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\FileNotFoundCacheLifetime
- Varsayılan Değer: 5 saniye
- Açıklama: Bulunamayan dosya bilgisi önbelleğinin zaman aşımı süresini tanımlar.
CacheFileTimeout
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\CacheFileTimeout
- Varsayılan Değer: 10 saniye
- Açıklama: Bu ayar, dosyanın son uygulama tarafından kapatılmasından sonra yeniden yönlendiricinin dosyayı önbellekte tutacağı süreyi belirler.
DisableBandwidthThrottling
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\DisableBandwidthThrottling
- Varsayılan Değer: 0
- Açıklama: SMB yönlendiricisinin yüksek gecikmeli ağ bağlantılarındaki veri akışını kısıtlamasını devre dışı bırakır. Varsayılan değer olan 0, bu kısıtlamayı etkinleştirir.
DisableLargeMtu
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\DisableLargeMtu
- Varsayılan Değer: 0 (Sadece Windows 8 için)
- Açıklama: Bu ayar, daha büyük veri yüklerinin aktarılmasını sağlar. Örneğin, Windows 8’de SMB yönlendiricisi 1 MB’ye kadar veri gönderir ve bu dosya aktarım hızını artırabilir.
RequireSecuritySignature
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\RequireSecuritySignature
- Varsayılan Değer: 0
- Açıklama: Bu ayar SMB imzalamayı devre dışı bırakır. İmzalama etkinleştirildiğinde CPU maliyeti ve ağ tur sayısı artabilir, ancak “man-in-the-middle” saldırılarına karşı ek bir koruma sağlar.
FileInfoCacheEntriesMax
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\FileInfoCacheEntriesMax
- Varsayılan Değer: 64
- Açıklama: Bu ayar, istemcinin önbellekte tutabileceği maksimum dosya metadata miktarını belirler. Bu değerin artırılması, ağ trafiğini azaltabilir ve performansı artırabilir.
DirectoryCacheEntriesMax
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\DirectoryCacheEntriesMax
- Varsayılan Değer: 16
- Açıklama: İstemcinin önbellekte tutabileceği maksimum dizin bilgisi miktarını belirler. Bu değerin artırılması, büyük dizinlere erişimde performansı artırabilir.
FileNotFoundCacheEntriesMax
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\FileNotFoundCacheEntriesMax
- Varsayılan Değer: 128
- Açıklama: İstemcinin önbellekte tutabileceği maksimum bulunamayan dosya bilgisi miktarını belirler.
MaxCmds
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\MaxCmds
- Varsayılan Değer: 15
- Açıklama: Bir oturumda bekleyen maksimum istek sayısını sınırlayan bu ayar, performansı artırmak amacıyla artırılabilir.
DormantFileLimit
- Kayıt Defteri Yolu:
HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\DormantFileLimit
- Varsayılan Değer: 1023
- Açıklama: Paylaşılan bir kaynak üzerinde bir uygulama dosyayı kapattıktan sonra açık bırakılabilecek maksimum dosya sayısını tanımlar.
Örnek Bir İstemci Optimizasyonu
Aşağıdaki örnek ayarlar, özellikle uzak dosya paylaşımlarına erişim sağlayan bilgisayarlar için optimize edilmiştir. Yüksek gecikmeli ağlar (şube ofisleri, veri merkezleri arası iletişim, ev ofisleri ve mobil genişbant) üzerinde performansı artırmaya yönelik ayarlardır:
- DisableBandwidthThrottling: 1 (Varsayılan 0)
- FileInfoCacheEntriesMax: 32768 (Varsayılan 64)
- DirectoryCacheEntriesMax: 4096 (Varsayılan 16)
- FileNotFoundCacheEntriesMax: 32768 (Varsayılan 128)
- MaxCmds: 32768 (Varsayılan 15)
Bu ayarlar, Windows PowerShell ile kolayca yapılandırılabilir. Örneğin, Set-SmbClientConfiguration
ve Set-SmbServerConfiguration
komutlarıyla SMB ayarları yapılabilir. Ayrıca, kayıt defteri ayarları da PowerShell ile yapılandırılabilir.