Sao chép một tệp 2 GB qua VPN và quá trình truyền có vẻ ổn. Sao chép một thư mục gồm mười nghìn tài liệu nhỏ và cùng đường liên kết đó trông như hỏng. Khác biệt không phải là một thiết lập băng thông đã thay đổi giữa hai công việc. Công việc thứ hai dành thời gian cho thiết lập, siêu dữ liệu và chờ phản hồi, và độ trễ của đường hầm chính là thứ khiến việc chờ đó trở nên hữu hình.

Một tệp chảy; một thư mục tệp thương lượng

Một bản sao lớn dành phần lớn vòng đời trong vòng lặp đọc-ghi trên một vài tay nắm đang mở. Chi phí giao thức được trả một lần cho mỗi tệp, và dữ liệu di chuyển theo khối lớn. Băng thông chi phối kết quả.

Sao chép thư mục trả giá theo từng tệp: tạo, truy vấn thuộc tính, mở, ghi, đóng và cập nhật siêu dữ liệu thư mục. Mỗi thao tác trong số đó là một yêu cầu chờ phản hồi trước khi bước tiếp theo có thể tiếp tục. Các byte thì nhỏ; sự phối hợp thì không.

Đó là lý do một biểu đồ sử dụng liên kết thấp gần như không chứng minh được gì. Liên kết nhàn rỗi vì máy khách đang chờ, không phải vì đường hầm chậm. Một mảng lưu trữ hoặc một trình quét điểm cuối có thể thêm cùng dạng chậm trễ. Xác định giai đoạn nào đang chờ trước khi thay đổi bất kỳ cài đặt mạng nào.

Các chuyến khứ hồi tích lũy nhanh hơn byte

Độ trễ là chi phí của một lần trao đổi phụ thuộc. Nếu một tệp cần vài lần trao đổi tuần tự và đường hầm thêm 40 ms mỗi chiều, chi phí mỗi tệp tăng nhanh. Mười nghìn tệp biến điều đó thành vài phút.

Số học này mang tính minh họa, không phải phép đo: không có gì bảo đảm một tệp chỉ tốn một chuyến khứ hồi, và các máy khách chồng lấn một phần công việc.

Hai đòn bẩy thay đổi tổng số. Giảm số lần trao đổi phụ thuộc cho mỗi tệp, hoặc giữ nhiều lần trao đổi chạy đồng thời hơn. Cái đầu là thay đổi giao thức hoặc khối lượng công việc; cái sau là tính đồng thời. Không cái nào làm một liên kết chậm nhanh hơn.

Đo khối lượng công việc, không phải liên kết

So sánh ba công việc có cùng điểm cuối và cùng chính sách truy cập: một tệp lớn, thư mục tệp nhỏ và hoạt động kinh doanh thực tế. Ghi lại số tệp, phân bố kích thước, công cụ sao chép và điều kiện mạng với mỗi kết quả.

Một con số MB/s duy nhất không có những chi tiết đó không thể so sánh với của bất kỳ ai khác.

Đo độ trễ tách biệt với thông lượng. Một bài kiểm tra khứ hồi đơn giản tới máy chủ tệp cho ra con số được nhân lên qua các thao tác nhỏ. Sau đó quan sát mẫu yêu cầu của bản sao thay vì tốc độ trung bình. Nếu tốc độ thấp và liên kết nhàn rỗi, nút thắt nằm phía trên đường hầm.

Thay đổi công việc: đồng thời và lưu trữ

Đối với một bản sao hàng loạt được cấp phép, công cụ có tính đồng thời được kiểm soát giữ nhiều yêu cầu đang chạy hơn. Tùy chọn /MT của Robocopy là ví dụ phổ biến trên Windows. Thêm luồng không bảo đảm một bản sao nhanh hơn.

Chọn một con số mà máy khách, máy chủ và kho lưu trữ có thể chịu được, và giữ nhật ký công việc cùng mọi lỗi.

Lưu trữ tại nguồn và giải nén cục bộ loại bỏ công việc từ xa cho từng tệp. Đưa thời gian chuẩn bị và trích xuất vào so sánh, và xác nhận rằng kho lưu trữ giữ lại siêu dữ liệu và quyền mà công việc cần. Không thủ thuật nào buộc một ứng dụng gộp các thao tác tệp của chính nó.

Kiểm tra bộ đếm bằng bài kiểm tra có kiểm soát

Chạy cùng công việc hai lần với một biến được thay đổi, và ghi lại cả hai con số. Một bài kiểm tra có kiểm soát là cách duy nhất để biết liệu một cài đặt có giúp ích hay mạng tình cờ yên tĩnh hơn.

Hai lệnh cho ra số tệp và đường cơ sở khứ hồi:

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

Sau đó chạy bản sao với số luồng giới hạn và so sánh nhật ký với lần chạy trước:

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

Đừng tắt chữ ký SMB, mã hóa hoặc bảo vệ điểm cuối để cải thiện bộ đếm. Những thay đổi đó đánh đổi một thuộc tính bảo mật lấy một con số có thể không phải là nút thắt. Và hãy giữ vận chuyển VPN tách biệt với vận chuyển riêng của SMB trong ghi chú của bạn, vì một bản sửa ở cái này không phải bằng chứng về cái kia.

Bài viết liên quan