Computer >> Máy Tính >  >> Hệ thống >> Windows 7

Truy cập chậm vào các thư mục được chia sẻ và ổ đĩa mạng trong Windows

Người dùng của chúng tôi đang phàn nàn về hiệu suất mạng rất chậm khi mở hoặc lưu tệp vào thư mục chia sẻ mạng trong Windows. Khi người dùng mở thư mục chia sẻ qua đường dẫn UNC hoặc qua ký tự ổ đĩa (nếu thư mục chia sẻ được ánh xạ dưới dạng ổ đĩa mạng), nội dung của thư mục đó chỉ được hiển thị trong 10-60 giây. Khi tạo tệp mới trong thư mục mạng, chúng cũng không được hiển thị ngay lập tức mà có độ trễ lâu sau 3-4 phút (ngay cả khi bạn cập nhật nội dung thư mục bằng F5 Chìa khóa). Tuy nhiên, nếu bạn chỉ định thủ công tên tệp đầy đủ qua đường dẫn UNC ( \\ lon-file-srv1 \ public \ new_file.docx ), nó sẽ mở, mặc dù nó sẽ không hiển thị trong File Explorer.

Truy cập chậm vào các thư mục được chia sẻ và ổ đĩa mạng trong Windows

Windows sử dụng Network Redirector đặc biệt thành phần khi truy cập các tệp được chia sẻ và các tài nguyên mạng khác trên máy tính từ xa. Bắt đầu với SMB v2.x (xem bảng với các phiên bản giao thức Server Message Block), Network Redirector sử dụng cơ chế lưu vào bộ nhớ đệm khi truy cập các thư mục và tệp được chia sẻ qua mạng. Điều này làm giảm lưu lượng và số lượng yêu cầu SMB giữa máy khách và máy chủ (đặc biệt hiệu quả đối với các mạng chậm và không đáng tin cậy). Theo mặc định, bộ nhớ cache này sẽ bị xóa sau mỗi 10 giây.

Nếu bạn đang gặp phải tình trạng truy cập chậm vào phần chia sẻ mạng trên thiết bị khách Windows, bạn có thể thử tắt bộ nhớ đệm siêu dữ liệu SMB ở phía máy khách hoặc trong cài đặt thư mục được chia sẻ.

Bạn có thể tắt bộ nhớ đệm SMB trong cài đặt thư mục chia sẻ. Mở thuộc tính của thư mục được chia sẻ và đi tới Chia sẻ tab -> Chia sẻ nâng cao -> Bộ nhớ đệm . Chọn tùy chọn thứ hai “ Không có tệp hoặc chương trình nào từ thư mục chia sẻ khả dụng ngoại tuyến ”.

Truy cập chậm vào các thư mục được chia sẻ và ổ đĩa mạng trong Windows

Hoặc sử dụng lệnh PowerShell:

Set-SMBShare -Tên MySharedDocs -CachingMode Không có

Thao tác này sẽ vô hiệu hóa cả truy cập ngoại tuyến và bộ nhớ đệm vào thư mục được chia sẻ này (xem bài viết về cách sử dụng tệp ngoại tuyến trong Windows).

Có ba tham số đăng ký quản lý cài đặt bộ đệm thư mục chia sẻ mạng ở phía máy khách SMB. Microsoft tuyên bố rằng các giá trị mặc định cho các tùy chọn đăng ký này cung cấp hiệu suất tốt nhất cho hầu hết các môi trường. Cài đặt bộ đệm SMB nằm trong khóa đăng ký HKLM \ System \ CurrentControlSet \ Services \ LanmanWorkstation \ Parameters .

  • DirectoryCacheLifetime là thời gian tồn tại của bộ đệm siêu dữ liệu thư mục chia sẻ (10 giây theo mặc định);
  • FileNotFoundCacheLifetime - Bộ nhớ đệm phản hồi “Không tìm thấy tệp” (5 giây);
  • FileInfoCacheLifetime - thời gian lưu giữ bộ nhớ cache với thông tin tệp (10 giây).
Bạn có thể tìm thông tin về các cài đặt đăng ký này trong bài viết về cách tối ưu hóa cài đặt máy chủ tệp Windows:https://docs.microsoft.com/en-us/windows-server/administration/performance-tuning/role/file-server/

Theo mặc định, thời gian tồn tại của bộ đệm cho thư mục chia sẻ SMB chỉ là 10 giây. Khi máy khách làm mới nội dung của thư mục chia sẻ, kết quả của lần cập nhật cuối cùng sẽ được máy khách lưu trữ trong 10 giây. Khi truy cập mạng chia sẻ này, tất cả các ứng dụng trước tiên hãy thử sử dụng bộ đệm này.

Trong một số trường hợp, cơ chế lưu dữ liệu vào bộ nhớ đệm trong thư mục SMB không hoạt động chính xác (điều này thường xảy ra với các thư mục / ổ đĩa mạng chứa hàng nghìn tệp và thư mục). Trong trường hợp này, người dùng có thể gặp phải sự chậm trễ đáng kể khi mở, xem và tạo tệp trong thư mục chia sẻ.

Bạn có thể tắt bộ nhớ đệm cho các thư mục SMB. Để thực hiện việc này, hãy tạo một tham số DWORD mới trong HKLM \ System \ CurrentControlSet \ Services \ LanmanWorkstation \ Parameters khóa đăng ký có tên DirectoryCacheLifetime và giá trị 0 . Đồng thời đặt các giá trị của FileInfoCacheLifetime FileNotFoundCacheLifetime tham số thành 0. Bạn có thể tạo tham số đăng ký này bằng cách sử dụng regedit.exe hoặc với lệnh ghép ngắn New-ItemProperty PowerShell:

$ regpath ="HKLM:\ System \ CurrentControlSet \ Services \ LanmanWorkstation \ Parameters"
$ Name1 ="DirectoryCacheLifetime"
$ Name2 ="FileInfoCacheLifetime"
$ Name3 ="FileNotFoundCacheLifetime"
New-ItemProperty -Path $ regpath -Tên DirectoryCacheLifetime -Value 0 -PropertyType DWORD -Force | Out-Null
New-ItemProperty -Path $ regpath -Tên FileInfoCacheLifetime -Value 0 -PropertyType DWORD -Force | Out-Null
New-ItemProperty -Path $ regpath -Tên FileNotFoundCacheLifetime -Value 0 -PropertyType DWORD -Force | Không có giá trị

Truy cập chậm vào các thư mục được chia sẻ và ổ đĩa mạng trong Windows

Bạn phải khởi động lại máy tính của mình để cài đặt có hiệu lực. Nếu các tham số này cần được áp dụng cho nhiều máy tính miền, bạn có thể sử dụng GPO để triển khai cài đặt đăng ký.

Việc tắt bộ nhớ đệm thư mục mạng làm tăng lưu lượng mạng và giảm hiệu suất máy chủ tệp.

Bạn cũng có thể sử dụng lệnh ghép ngắn Set-SmbClientConfiguration để tinh chỉnh ứng dụng khách SMB:

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

Bạn có thể liệt kê các cài đặt bộ nhớ đệm hiện tại cho máy khách Windows SMB với PowerShell:

Get-SmbClientConfiguration | chọn * cache *

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

Truy cập chậm vào các thư mục được chia sẻ và ổ đĩa mạng trong Windows

Sau đó, tất cả các thay đổi trong phần được chia sẻ sẽ được hiển thị ngay lập tức trên máy khách (nội dung của thư mục được làm mới mỗi khi nó được truy cập và bộ đệm cục bộ không được sử dụng).

Có một số lý do khác dẫn đến hiệu suất mạng kém của các thư mục chia sẻ hoặc khi nội dung của các thư mục có thể xuất hiện chậm:

  • Việc bật tùy chọn “Liệt kê dựa trên quyền truy cập (ABE)” trong cài đặt thư mục chia sẻ có thể dẫn đến cập nhật chậm danh sách tệp trong thư mục chia sẻ với một số lượng lớn đối tượng;
  • Bạn có thể gặp phải tình trạng tốc độ mạng chậm trên máy ảo Hyper-V chạy trên Windows Server 2019 (so với Windows Server 2016 / 2012R2);
  • Cố gắng tắt giao thức NetBIOS kế thừa trong các thuộc tính của kết nối TCP / IPv4 của bạn trên các thiết bị tham gia miền ( ncpa.cpl -> mở cài đặt TCP / IPv4 của bộ điều hợp mạng và chọn Tắt NetBIOS qua TCPIP trên WINS tab);
  • Thử đặt lại cài đặt mạng và ngăn xếp TCP / IP trên thiết bị khách Windows. Trên Windows 10+, bạn có thể sử dụng tùy chọn Đặt lại mạng trong bảng Cài đặt hoặc sử dụng lệnh: netsh int ip reset