কম্পিউটার টিউটোরিয়াল

Windows-এ শেয়ার্ড ফোল্ডার ও নেটওয়ার্ক ড্রাইভে ধীর অ্যাক্সেস সমস্যা সমাধান

আমাদের ব্যবহারকারীরা Windows-এ নেটওয়ার্ক শেয়ার্ড ফোল্ডারে ফাইল খোলা বা সংরক্ষণ করার সময় খুব ধীর নেটওয়ার্ক পারফরম্যান্স নিয়ে অভিযোগ করছেন। যখন একজন ব্যবহারকারী UNC পথের মাধ্যমে একটি শেয়ার্ড ফোল্ডার খোলে, অথবা ড্রাইভ লেটারের মাধ্যমে (যদি শেয়ার্ড ফোল্ডার নেটওয়ার্ক ড্রাইভ হিসেবে ম্যাপ করা থাকে), এর কন্টেন্ট ১০-৬০ সেকেন্ড পর প্রদর্শিত হয়। নেটওয়ার্ক ফোল্ডারে নতুন ফাইল তৈরি করলে সেগুলোও তৎক্ষণ প্রদর্শিত হয় না, বরং ৩-৪ মিনিটের দীর্ঘ বিলম্বের পর দেখায় (যদি আপনি F5 কী দিয়ে ফোল্ডার কন্টেন্ট আপডেট করলেও)। তবে, আপনি যদি ম্যানুয়ালি UNC পথের মাধ্যমে পুরো ফাইল নাম উল্লেখ করেন (\\lon-file-srv1\public\new_file.docx), তবে এটি খুলবে, যদিও File Explorer-এ দৃশ্যমান হবে না।

Windows রিমোট কম্পিউটারে শেয়ার্ড ফাইল এবং অন্যান্য নেটওয়ার্ক রিসোর্স অ্যাক্সেস করার সময় একটি বিশেষ নেটওয়ার্ক রিডাইরেক্টর কম্পোনেন্ট ব্যবহার করে। SMB v2.x-র সাথে শুরু হয়ে (Server Message Block প্রোটোকল ভার্সনের টেবিল দেখুন), নেটওয়ার্ক রিডাইরেক্টর শেয়ার্ড ফোল্ডার এবং ফাইল নেটওয়ার্কের মাধ্যমে অ্যাক্সেস করার সময় একটি ক্যাশিং মেকানিজম ব্যবহার করে। এটি ক্লায়েন্ট এবং সার্ভারের মধ্যে ট্রাফিক এবং SMB রিকোয়েস্টের সংখ্যা কমিয়ে দেয় (বিশেষভাবে ধীর এবং অনিশ্চিত নেটওয়ার্কে কার্যকর)। ডিফল্টরূপে, এই ক্যাশ প্রতি ১০ সেকেন্ড পর ক্লিয়ার হয়।

যদি আপনি Windows ক্লায়েন্ট ডিভাইসে নেটওয়ার্ক শেয়ারে ধীর অ্যাক্সেস সমস্যা সম্মুখীন হন, তবে আপনি ক্লায়েন্ট সাইডে অথবা শেয়ার্ড ফোল্ডার সেটিংসে SMB মেটাডেটা ক্যাশিং নিষ্ক্রিয় করার চেষ্টা করতে পারেন।

শেয়ার্ড ফোল্ডার সেটিংসে SMB ক্যাশিং নিষ্ক্রিয় করা যাবে। শেয়ার্ড ফোল্ডারের প্রপার্টিজ খুলুন, শেয়ারিং ট্যাব -> অ্যাডভান্সড শেয়ারিং -> ক্যাশিং-এ যান। دوم অপশন "শেয়ার্ড ফোল্ডার থেকে কোনো ফাইল বা প্রোগ্রাম অফলাইন উপলব্ধ নয়" নির্বাচন করুন।

অথবা PowerShell কমান্ড ব্যবহার করুন:

Set-SMBShare -Name MySharedDocs -CachingMode None

এটি এই শেয়ার্ড ফোল্ডারের জন্য ক্যাশিং এবং অফলাইন অ্যাক্সেস দুটোই নিষ্ক্রিয় করবে (Windows-এ অফলাইন ফাইল ব্যবহার সম্পর্কে আর্টিকেল দেখুন)।

SMB ক্লায়েন্ট সাইডে নেটওয়ার্ক শেয়ার্ড ফোল্ডার ক্যাশ সেটিংস ম্যানেজ করার তিনটি রেজিস্টারি প্যারামিটার রয়েছে। Microsoft বলে, এই রেজিস্টারি অপশনগুলোর ডিফল্ট মান অধিকাংশ এনভায়রনমেন্টের জন্য সেরা পারফরম্যান্স প্রদান করে। SMB ক্যাশ সেটিংস HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters রেজিস্টারি কী-এর অধীনে থাকে।

  • DirectoryCacheLifetime হলো শেয়ার্ড ফোল্ডার মেটাডেটা ক্যাশের লাইফটাইম (ডিফল্ট ১০ সেকেন্ড);
  • FileNotFoundCacheLifetime - "ফাইল নট ফাউন্ড" রেসপন্স ক্যাশ (৫ সেকেন্ড);
  • FileInfoCacheLifetime - ফাইল ইনফো ধারণকারী ক্যাশের রক্ষণাবেক্ষণ সময় (১০ সেকেন্ড)।

এই রেজিস্টারি সেটিংস সম্পর্কে তথ্য পাওয়া যাবে Windows ফাইল সার্ভার সেটিংস অপ্টিমাইজ করার আর্টিকেলে: https://docs.microsoft.com/en-us/windows-server/administration/performance-tuning/role/file-server/

ডিফল্টরূপে, একটি SMB শেয়ার ফোল্ডারের ক্যাশ লাইফটাইম শুধু ১০ সেকেন্ড। যখন একটি ক্লায়েন্ট একটি শেয়ার্ড ফোল্ডারের কন্টেন্ট রিফ্রেশ করে, গত আপডেটের ফলাফল ক্লায়েন্ট দ্বারা ১০ সেকেন্ড ধরে রাখা হয়। এই নেটওয়ার্ক শেয়ার অ্যাক্সেস করার সময় সব অ্যাপ্লিকেশন প্রথমে এই ক্যাশ ব্যবহার করার চেষ্টা করে।

কিছু ক্ষেত্রে, SMB ফোল্ডারে ডেটা ক্যাশ করার মেকানিজম সঠিকভাবে কাজ করে না (সবচেয়ে বেশি এটি হয় হাজার হাজার ফাইল এবং ফোল্ডার यুক্ত নেটওয়ার্ক ফোল্ডার/ড্রাইভের সাথে)। এই ক্ষেত্রে, ব্যবহারকারীরা শেয়ার্ড ফোল্ডারে ফাইল খোলা, দেখা এবং তৈরি করার সময় উল্লেখযোগ্য বিলম্ব অনুভব করতে পারেন।

SMB ফোল্ডারগুলির জন্য ক্যাশিং নিষ্ক্রিয় করতে পারেন। এর জন্য, HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters রেজিস্টারি কী-এর অধীনে DirectoryCacheLifetime নামে একটি নতুন DWORD প্যারামিটার তৈরি করুন এবং মান ০ দিন। একইভাবে FileInfoCacheLifetime এবং FileNotFoundCacheLifetime প্যারামিটারগুলোর মানও ০ সেট করুন। আপনি regedit.exe বা New-ItemProperty PowerShell কমান্ডলেট ব্যবহার করে এই রেজিস্টারি প্যারামিটার তৈরি করতে পারেন:

$regpath= "HKLM:\System\CurrentControlSet\Services\LanmanWorkstation\Parameters"
$Name1 = "DirectoryCacheLifetime"
$Name2 = "FileInfoCacheLifetime"
$Name3 = "FileNotFoundCacheLifetime"
New-ItemProperty -Path $regpath -Name DirectoryCacheLifetime -Value 0 -PropertyType DWORD -Force | Out-Null
New-ItemProperty -Path $regpath -Name FileInfoCacheLifetime -Value 0 -PropertyType DWORD -Force | Out-Null
New-ItemProperty -Path $regpath -Name FileNotFoundCacheLifetime -Value 0 -PropertyType DWORD -Force | Out-Null

সেটিংস কার্যকর হওয়ার জন্য আপনাকে কম্পিউটার রিস্টার্ট করতে হবে। যদি এই প্যারামিটারগুলো একাধিক ডোমেইন কম্পিউটারে প্রয়োগ করতে হয়, তবে GPO ব্যবহার করে রেজিস্টারি সেটিংস ডিপ্লয় করতে পারেন।

নেটওয়ার্ক ফোল্ডার ক্যাশিং নিষ্ক্রিয় করলে নেটওয়ার্ক ট্রাফিক বড়ে এবং ফাইল সার্ভার পারফরম্যান্স কমে যাবে।

আপনি Set-SmbClientConfiguration কমান্ডলেটও ব্যবহার করতে পারেন SMB ক্লায়েন্ট ফাইন-টিউন করার জন্য:

Set-SmbClientConfiguration -DirectoryCacheLifetime 0
Set-SmbClientConfiguration -FileInfoCacheLifetime 0
Set-SmbClientConfiguration -FileNotFoundCacheLifetime 0

Windows SMB ক্লায়েন্টের বর্তমান ক্যাশিং সেটিংস PowerShell-এ লিস্ট করতে পারেন:

Get-SmbClientConfiguration| select *cache*

DirectoryCacheEntriesMax : 16 DirectoryCacheEntrySizeMax : 65536 DirectoryCacheLifetime : 0 FileInfoCacheEntriesMax : 64 FileInfoCacheLifetime : 0 FileNotFoundCacheEntriesMax : 128 FileNotFoundCacheLifetime : 0

এর পর, শেয়ার্ড ফোল্ডারের সকল পরিবর্তন ক্লায়েন্টে অবিলম্বে প্রদর্শিত হবে (ফোল্ডার কন্টেন্ট প্রতিবার অ্যাক্সেস করার সময় রিফ্রেশ হবে এবং লোকাল ক্যাশ ব্যবহার করা হবে না)।

শেয়ার্ড ফোল্ডারের খারাপ নেটওয়ার্ক পারফরম্যান্স বা ফোল্ডার কন্টেন্ট ধীরে দেখার আরো কিছু কারণ রয়েছে:

  • শেয়ার্ড ফোল্ডার সেটিংসে "Access-based Enumeration (ABE)" অপশন সক্রিয় থাকলে বড় সংখ্যক অবজেক্ট থাকা শেয়ার্ড ফোল্ডারের ফাইল লিস্ট ধীরে আপডেট হতে পারে;
  • Windows Server 2019-এ চলমান Hyper-V ভার্চুয়াল মেশিনে ধীর নেটওয়ার্ক স্পীড হতে পারে (Windows Server 2016/2012R2-এর তুলনায়);
  • ডোমেইন-জয়েন্ড ডিভাইসে আপনার TCP/IPv4 কানেকশনের প্রপার্টিজে লিগেসি NetBIOS প্রোটোকল নিষ্ক্রিয় করার চেষ্টা করুন (ncpa.cpl -> নেটওয়ার্ক অ্যাডাপ্টারের TCP/IPv4 সেটিংস খুলুন এবং WINS ট্যাবে Disable NetBIOS over TCPIP নির্বাচন করুন);
  • Windows ক্লায়েন্ট ডিভাইসে নেটওয়ার্ক এবং TCP/IP স্ট্যাক সেটিংস রিসেট করার চেষ্টা করুন। Windows 10+-এ, আপনি Settings প্যানেলে Network Reset অপশন ব্যবহার করতে পারেন অথবা কমান্ড: netsh int ip reset
ত্রিভুজ No
  1. উইন্ডোজ ১০ ও ১১ সার্চ থেকে ফোল্ডার ও ফাইল লুকাতে: সহজ পদ্ধতি

  2. উইন্ডোজে সীমাবদ্ধ ফোল্ডারে অ্যাক্সেস পাওয়ার সেরা টেকনিক

  3. উইন্ডোজ ১১ শেয়ার্ড ফোল্ডার এক্সেস সমস্যা সমাধান: ধাপে ধাপ গাইড

  4. উইন্ডোজ ১০, ৮.১, ৭-এ 'Unidentified Network' (No Internet Access) ফিক্স করুন