Sposób na ograniczenie przepustowości programów w systemie Windows?

85

Czy w systemie Windows jest technika, która może selektywnie ograniczać przepustowość uruchomionego procesu?

James McMahon
źródło
3
Istnieje tutaj cała lista aplikacji, które mogą to zrobić: alternativeto.net/software/netbalancer
bgmCoder
Nowe aktualizacje NetBalencers nie ograniczają programów zgodnie z ich oświadczeniem, okres próbny wynosi tylko 7 dni, możesz ograniczyć tylko 3 oprogramowanie (kiedy decyduje się na pracę) i kosztuje aż 50 dolców za pełną obsługę. Nawet nie zawracaj sobie głowy.

Odpowiedzi:

21

Korzystam z Net Limiter , który ma darmową wersję, ale niestety musisz zapłacić za funkcję ograniczenia .

NetLimiter to najlepsze narzędzie do kontroli i monitorowania ruchu internetowego zaprojektowane dla systemu Windows. Za pomocą NetLimiter można ustawić limity prędkości pobierania / wysyłania dla aplikacji lub nawet pojedynczego połączenia i monitorować ich ruch internetowy.

Oprócz tej wyjątkowej funkcji Netlimiter oferuje kompleksowy zestaw internetowych narzędzi statystycznych. Obejmuje pomiar ruchu w czasie rzeczywistym i długoterminowe statystyki ruchu internetowego na aplikację

użytkownik
źródło
8
Nie, wersje lite / pro, które pozwalają na ograniczenie ruchu, nie są darmowe.
demonkoryu
Ten jeden, na Przeciwnie , działa całkiem dobrze na Windows XP.
GSerg
NetLimiter 4 nadal ma ograniczającą funkcjonalność i jest w wersji darmowej, ale jest ograniczony czasowo.
Dan Atkinson
9

Istnieją dobre powody, aby przyjrzeć się podejściu do zarządzania routerem sieci jako całości - jednak ponieważ pierwotne pytanie było specyficzne, a użytkownik może równie dobrze być jedynym komputerem w sieci, jest to kwestia drugorzędna.

NetBalancer


Według jednej z najlepszych odpowiedzi, przez jakiś czas testowałem NetBalancer . Działa naprawdę dobrze - i jest łatwy w konfiguracji.

NetBalancer można kupić na ich stronie za około 50 USD. Wersja testowa / darmowa pozwala monitorować połączenia - ale nie pozwala na ograniczanie przepustowości.

NetLimiter


Alternatywą jest NetLimiter . Ma bezpłatny okres próbny - ale zaczyna się od ~ 20 USD w wersji Lite lub ~ 30 USD w wersji Pro. NetLimiter to wypróbowana i przetestowana aplikacja dla wielu SysAdminów.

Po zakończeniu okresu próbnego NetLimiter, dopóki nie kupisz licencji, staje się narzędziem wyłącznie do monitorowania - i nie obsługuje już ograniczania przepustowości. Może to być nadal przydatne - ale nie w tym przypadku użycia.

Korzystanie z routera (z wyjaśnieniem, dlaczego nie jest to dobre podejście do tego przypadku użycia).


Chociaż korzystanie z inteligentnego / wysoce konfigurowalnego routera jest zwykle lepszym podejściem do pełnego zarządzania siecią, rozłączenie między tym a pierwotnym pytaniem nie jest wyjaśnione w odpowiedzi @ ZaB. Pierwotne pytanie dotyczy konkretnie procesu - którego router nie ma niezawodnej identyfikacji.

Jedną z odmian, która jest bardzo przydatna na tym końcu, jest to, że aplikacja komunikuje się tylko przez określony kanał lub rodzaj ruchu, który router może łatwo zidentyfikować. Poniżej znajduje się przykład pobrań EA Origin:

Pochodzenie obecnie używa Akamai. Zazwyczaj ustawiam automatyczne pobieranie / aktualizacje, aby były uruchamiane w dowolnym momencie - ale wolałbym, aby nie wykorzystywał całej pojemności linii, gdy jestem zajęty robieniem innych, ważniejszych rzeczy. Pochodzenie dzieje się bardzo źle w tym rodzaju na rzecz, dlatego nie obsługuje harmonogramów pobierania ani ograniczania pobierania. Obecnie mój pulpit pobiera grę przy użyciu serwera „a1750.d.akamai.net”. Router MikroTik (przykład inteligentnego routera) może wziąć pod uwagę, że ta nazwa DNS została użyta (będzie w pamięci podręcznej DNS z adresem IP) i może zostać skonfigurowana tymczasowo, aby dodać adres IP serwera docelowego do „listy adresów” „. Cały ruch do / z listy adresów można dodać do kolejki przepustnicy, co technicznie ogranicza działanie pojedynczej aplikacji.

Powyższe podejście jest jednak naiwne. EA może w dowolnym momencie zmienić nazwę serwera, używany protokół lub inną niepowiązaną usługę korzystającą z infrastruktury Akamai, która może zostać przypadkowo zdławiona. Teraz moja lśniąca nowa zasada staje się bezużyteczna i łamana.

zaTricky
źródło
Nie jestem pewien, czy darmowa wersja NetBalancer nadal pozwala na ograniczenie przepustowości. Cytując stronę pobierania : „Wersja niezarejestrowana działa tylko jako aplikacja monitorująca i nie obsługuje żadnych priorytetów ani reguł”.
Gras Double
Westchnienie. Ciekawe, kiedy to się zmieniło. Nie zainstalowałem Origin od czasu ostatniego „odświeżenia” pulpitu do gier.
zaTricky 06.04.17
2

Oto mój biedny człowiek dławiący:

Nie ogranicza to dokładnie pasma, raczej zawiesza / wznawia proces pobierania pasma, a tym samym zwalnia część pasma dla innych aplikacji. I to za darmo!

Potrzebujesz PsSuspend.exe (umieszczam ten plik w C: \ tools \ sysinternals) i plik wsadowy (np.) 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

Teraz otwórz wiersz poleceń jako administrator i uruchom plik wsadowy z programem przepustnicy jako parametrem

slow.bat filetransfer.exe

(zamień filetransfer.exe na nazwę programu)

Jeśli skończysz, naciśnij CTRL-C i anuluj partię.

Jeśli program nadal działa, rozważ wznowienie programu na wypadek przerwania partii, gdy program został zawieszony:

c:\tools\sysinternals\pssuspend.exe -r filetransfer.exe

(zamień filetransfer.exe na nazwę programu)

bebbo
źródło
To tak naprawdę nie rozwiązuje problemu. Jest to poprawka dotycząca pojedynczego procesu, musisz znać proces, który ogranicza przepustowość i nie musisz aktywnie z niego korzystać.
Dan Atkinson
1
Jeśli chcesz „ograniczyć przepustowość uruchomionego procesu” (to jest pytanie), znasz ten proces, prawda? A moje procesy, które pochłaniają całą przepustowość, są szczególnie przesyłane (co sprawia, że ​​mój internet nie nadaje się do niczego innego), a może także pliki do pobrania. Mój „dławienie biednego człowieka” wykonuje swoją pracę: mogę przesyłać i nadal korzystać z Internetu. I tak - to nie jest idealne rozwiązanie. To jest dla biednych mężczyzn - nie kupujących oprogramowania.
bebobo
1
Muszę się zgodzić z @ Dan-Atkinson. NetBalancer jest dobrym przykładem, w którym darmowa wersja będzie działała idealnie w tym samym przypadku. Ta metoda ma również ograniczenia: - Wymaga uciążliwych / ręcznych kroków - Nie ma możliwości określenia, jaki powinien być limit przepustowości. - Ta metoda może po prostu zmienić „stabilne” niepożądane użycie na mniej pożądane szczyty. - Aplikacja
przestanie
Maniak we mnie zastanawia się, czy to może być dobry, tani sposób na załatwienie sprawy, ale przy znacznie krótszym czasie oczekiwania, takim jak 50 ms. Byłoby więc dużo zawieszania / cofania zawieszenia, ale doświadczenie może być płynniejsze. Nie wiem, w jaki sposób czas zawieszenia faktycznie przekłada się na zmniejszoną szybkość wysyłania, ale jest coś, z czym można eksperymentować ...
str
1

Za pomocą zasad grupy systemu Windows można ograniczyć przepustowość dowolnego procesu. Iść do:

  • Menu Start> Uruchom> gpedit.msc
  • Konfiguracja komputera / użytkownika (wybierz jedną lub drugą)> Ustawienia systemu Windows> QoS oparte na zasadach

Tutaj możesz zobaczyć aktualne zasady i stworzyć nowe poprzez:

  • Kliknij prawym przyciskiem myszy „QoS oparte na zasadach” lub przejdź do „Działania”> Utwórz nową politykę ...
  • Następnie postępuj zgodnie z instrukcjami kreatora, aby utworzyć nową zasadę ograniczania przepustowości.

Kreator umożliwia utworzenie zasady ograniczania przepustowości dla:

  • Wszystko na twoim komputerze
  • Konkretne procesy
  • Określone strony internetowe (tylko dla aplikacji korzystających z protokołów HTTP)

Twoje zasady można następnie filtrować według:

  • Protokoły TCP lub UDP
  • Źródłowy / docelowy adres IP
  • Porty źródłowe / docelowe

Możesz również utworzyć te zasady w Powershell , uruchamiając:

New-NetQosPolicy -Name "FTP" -AppPathNameMatchCondition "ftp.exe" -ThrottleRateActionBitsPerSecond 1MB

Chociaż może to wymagać uprawnień administratora i wydaje się, że występuje błąd, w którym utworzone zasady nie pojawią się w GUI.

Silveri
źródło