Có một kỹ thuật trong Windows có thể chọn lọc giới hạn băng thông của một tiến trình đang chạy không?
Có một kỹ thuật trong Windows có thể chọn lọc giới hạn băng thông của một tiến trình đang chạy không?
Câu trả lời:
Tôi sử dụng Net Limiter , phiên bản miễn phí, nhưng tiếc là bạn sẽ phải trả tiền cho tính năng giới hạn .
NetLimiter là một công cụ giám sát và kiểm soát lưu lượng truy cập internet tối ưu được thiết kế cho Windows. Bạn có thể sử dụng NetLimiter để đặt giới hạn tốc độ tải xuống / tải lên cho các ứng dụng hoặc thậm chí kết nối đơn lẻ và theo dõi lưu lượng truy cập internet của chúng.
Cùng với tính năng độc đáo này, Netlimiter cung cấp bộ công cụ thống kê internet toàn diện. Nó bao gồm đo lưu lượng thời gian thực và thống kê lưu lượng truy cập internet trên mỗi ứng dụng dài hạn
Có nhiều lý do chính đáng để xem xét phương pháp tiếp cận "bộ định tuyến Internet" để quản lý toàn bộ mạng - tuy nhiên vì câu hỏi ban đầu là cụ thể và người dùng rất có thể là máy tính duy nhất trên mạng, đó là mối quan tâm thứ yếu.
Mỗi một câu trả lời hàng đầu khác, trong một thời gian tôi đã kiểm tra NetBalancer . Nó hoạt động thực sự tốt - và dễ dàng để cấu hình.
NetBalancer có sẵn để mua trên trang web của họ với giá khoảng 50 đô la. Phiên bản dùng thử / miễn phí cho phép bạn giám sát các kết nối - nhưng không cho phép điều chỉnh.
Thay thế là NetLimiter . Nó có thời gian dùng thử miễn phí - nhưng bắt đầu ở mức ~ 20 đô la cho phiên bản Lite hoặc ~ 30 đô la cho phiên bản Pro. NetLimiter là ứng dụng đi thử đã được thử nghiệm cho nhiều SysAdmins.
Khi bản dùng thử của NetLimiter kết thúc, cho đến khi bạn mua giấy phép, nó sẽ trở thành một công cụ chỉ giám sát - và không còn hỗ trợ điều chỉnh. Điều này vẫn có thể hữu ích - nhưng không phải cho trường hợp sử dụng này.
Mặc dù sử dụng bộ định tuyến thông minh / có cấu hình cao thường là cách tiếp cận tốt hơn để quản lý mạng toàn bộ, nhưng việc ngắt kết nối giữa câu hỏi đó và câu hỏi ban đầu không được giải thích trong câu trả lời của @ ZaB. Câu hỏi ban đầu là đặc biệt hỏi về một quá trình - mà một bộ định tuyến không có cách nào đáng tin cậy để xác định.
Một biến thể gần với hữu ích ở đầu này là nếu một ứng dụng chỉ giao tiếp qua một kênh hoặc loại lưu lượng truy cập cụ thể mà bộ định tuyến có thể dễ dàng xác định. Một ví dụ bên dưới các bản tải xuống Origin của EA:
Nguồn gốc hiện nay sử dụng Akamai. Thông thường tôi đặt tải xuống / cập nhật tự động để chạy bất cứ lúc nào - nhưng tôi muốn nó không sử dụng tất cả dung lượng đường truyền trong khi tôi bận làm những việc quan trọng khác. Xuất xứ sẽ xảy ra là rất xấu ở này loại của điều, do đó, nó không hỗ trợ lịch tải xuống hoặc tải xuống điều chỉnh. Hiện tại máy tính để bàn của tôi đang tải xuống một trò chơi bằng máy chủ "a1750.d.akamai.net". Bộ định tuyến MikroTik (ví dụ về bộ định tuyến thông minh) có thể lưu ý rằng tên DNS này đã được sử dụng (nó sẽ nằm trong bộ đệm DNS có địa chỉ IP) và có thể được định cấu hình tạm thời để thêm địa chỉ IP của máy chủ đích vào danh sách địa chỉ " ". Tất cả lưu lượng truy cập đến / từ danh sách địa chỉ có thể được thêm vào hàng đợi điều chỉnh, do đó, về mặt kỹ thuật, điều chỉnh một ứng dụng duy nhất.
Cách tiếp cận ở trên là ngây thơ. EA bất cứ lúc nào có thể thay đổi tên máy chủ, giao thức được sử dụng hoặc dịch vụ không liên quan khác sử dụng cơ sở hạ tầng Akamai có thể vô tình bị điều chỉnh. Bây giờ quy tắc mới sáng bóng của tôi là vô dụng và bị phá vỡ.
Đây là người nghèo của tôi điều tiết:
Nó không chính xác giới hạn băng thông, nó tạm dừng / tiếp tục quá trình ăn băng thông và do đó giải phóng một số băng thông cho các ứng dụng khác. Và nó miễn phí!
Bạn cần PsSuspend.exe (Tôi đặt tệp này vào C: \ tools \ sysiternals) và một tệp bó (ví dụ) Slow.bat:
@echo off
:START
c:\tools\sysinternals\pssuspend.exe %1 >NUL: 2>&1
timeout /T 1 /NOBREAK >NUL:
c:\tools\sysinternals\pssuspend.exe -r %1 >NUL: 2>&1
timeout /T 1 /NOBREAK >NUL:
goto START
Bây giờ hãy mở một dòng lệnh với tư cách quản trị viên và chạy tệp bó với chương trình throttles làm tham số
slow.bat filetransfer.exe
(thay thế filetransfer.exe bằng tên chương trình của bạn)
Nếu bạn đã hoàn tất, nhấn CTRL-C và hủy lô.
Nếu chương trình vẫn đang chạy, hãy xem xét để tiếp tục chương trình trong trường hợp bạn bị gián đoạn lô trong khi chương trình bị treo:
c:\tools\sysinternals\pssuspend.exe -r filetransfer.exe
(thay thế filetransfer.exe bằng tên chương trình của bạn)
Bạn có thể sử dụng Chính sách nhóm của Windows để điều tiết băng thông của bất kỳ quy trình nào. Đi đến:
Tại đây bạn có thể xem các chính sách hiện tại và tạo các chính sách mới bằng cách:
Trình hướng dẫn cho phép bạn tạo một chính sách để điều tiết băng thông cho một trong hai:
Và chính sách của bạn sau đó có thể được lọc bởi:
Bạn cũng có thể tạo các chính sách này trong Powershell bằng cách chạy:
New-NetQosPolicy -Name "FTP" -AppPathNameMatchCondition "ftp.exe" -ThrottleRateActionBitsPerSecond 1MB
Mặc dù điều này có thể yêu cầu quyền quản trị viên và dường như có một lỗi trong đó các chính sách được tạo như thế này sẽ không xuất hiện trong GUI.