У цій статті ми розглянемо способи обмеження швидкості передачі даних по мережі з / на Windows Server 2016 і Windows 10 за допомогою вбудованих і сторонніх коштів. Як відомо, що за замовчуванням, додатки Windows використовують мережевий інтерфейс по максимуму. Це може викликати проблеми, коли певна задача (найчастіше це загальні мережеві папки) використовують всю доступну пропускну здатність мережевої карти. У цей випадку ви можете обмежити максимальну швидкість копіювання файлів з мережевої папки, і надати користувачам інших додатки гарантовані ресурси мережевої карти.

Для управління класами і пріоритетами трафіку в мережах TCP / IP використовується технологія QoS (якість обслуговування).

Налаштування групової політики QoS в Windows

Ви можете управляти пріоритетами трафіку в Windows за допомогою налаштувань групової політики QoS. У цьому сценарії я обмежу швидкість передачі даних для всіх вихідних з’єднань (політика буде застосовуватися, в тому числі, коли користувачі копіюють файли з вашого сервера). На основі цього прикладу ви зможете обмежити швидкість для будь-якої програми, порту або сайту.

Групові політики QoS підтримується в:

  • Windows Server 2008 і вище
  • Windows Vista і вище

В першу чергу налаштування параметри мережевої карти і переконайтеся, що у вас включена опція Планувальник пакетів Qos.

включити Qos Packet Scheduler для мережевої карти windows

  1. Запустіть оснащення локального редактора GPO (gpedit.msc) і перейдіть в розділ Конфігурація комп’ютера -> Налаштування Windows -> QoS на основі політики та натисніть Створіть нову політику; створити політику qos
  2. Вкажіть ім’я політики, включіть опцію Вкажіть швидкість дросельної заслінки і задайте обмеження швидкості Швидкість дросельної заслінки. Це швидкість в MBps / KBps (мегабайтах / кілобайтах) до якої ви хочете обмежити вихідний трафік.

    замітка. Також є можливість виставити DSCP значення. DSCP (Differenciated Services Code Point) може використовуватися на просунутих маршрутизаторах типу Cisco / Mikrotik. Залежно від значення DSCP у пакета, маршрутизатори виставлятимуть цього пакету пріоритет. Не використовуйте цей параметр, якщо ви не впевнені в налаштуваннях QoS DSCP на ваших маршрутизаторах.

    ім'я політики qos і обмеження максимальної швидкості передачі

  3. Далі можете вибрати конкретний процес / додаток (виконуваний ехе файл) або певний http (s) сайт IIS, до якого буде застосовуватися політика. У моєму випадку я залишу опцію Усі додатки; вибрати програми, для яких потрібно обмежувати максимальний трафік
  4. Ви можете вказати до якого IP на вашому комп’ютері буде застосовуватися політика. Це може знадобитися, якщо у вас є кілька мережевих карт або IP алиасов;
  5. Також ви можете вказати цільової IP, з яким ви хочете обмежити швидкість передачі; qos вибрати ip адреси одержувача і джерела
  6. Далі вказується протокол, до якого буде застосовується політика (TCP, UDP або TCP and UDP). А також можете вибрати вихідний і цільовий порт. Якщо ви не впевнені за яким протоколом працює ваш додаток, яке ви хочете обмежити, вибирайте TCP and UDP. Якщо ви хочете обмежити швидкість доступу до загальних файлів в мережевій теці, вкажіть протокол TCP і 445 порт; порти і протоколи, для яких потрібно включити qos

Налаштування QoS політики в Windows завершена. Перезавантажуватися не треба, відразу після застосування змін швидкість передачі по мережі почне Шейп. Зверніть увагу, що Throttle Rate відображається редакторі політик в кілобайти, навіть якщо ви вибрали значення 3 МБ.

перелік застосованих групових політик QoS в Windows

Так як я вибрав всі програми і всі порти, дана політика буде обмежувати максимальну швидкість передачі файлів по мережі до 3 Мб (в тому числі при копіюванні файлів через File Explorer – explorer.exe).

обмеження максимальної скопрості передачі в Windows через політики QoS

ще існують Advanced QoS політики, Які знаходяться у секції конфігурації політик комп’ютера. Ви можете обмежити вхідний TCP трафік на вкладці Вхідний трафік TCP. (Вкладка DSCP Marking Override відноситься до налаштувань DSCP, її розглядати ми не будемо)

Advanced QoS політики

Як ви бачите, є 4 рівня обмеження трафіку. У таблиці нижче рівні і їх швидкості.

Рівень пропускної здатності вхідного TCP Максимальна швидкість передачі
0 64 Кб
1 256 Кб
2 1 Мб
3 16 Мб

Управління політиками QoS Windows засобами PowerShell

Для створення і управління політиками QoS можна використовувати PowerShell. Наприклад, щоб створити політику QoS, що обмежує пропускну здатність для SMB (файлового) трафіку, використовуйте команду:

New-NetQosPolicy -Name "SMBRestrictFileCopySpeed" -SMB -ThrottleRateActionBitsPerSecond 10MB

Name : SMBRestrictFileCopySpeed
Owner : Group Policy (Machine)
NetworkProfile : All
Precedence : 127
Template : SMB
JobObject :
ThrottleRate : 10.486 MBits/sec

Щоб вивести список застосованих політик QoS на комп’ютері, виконайте команду:
Get-NetQosPolicy

New-NetQosPolicy управління QoS політиками з PowerShell

Щоб змінити, або видалити політику QoS, використовуються відповідно командлети Set-NetQosPolicy і Remove-NetQosPolicy.

Remove-NetQosPolicy -Name SMBRestrictFileCopySpeed

Set-SmbBandwidthLimit: управління пропускною спроможністю для SMB трафіку з PowerShell

Командир Set-SmbBandwidthLimit дозволяє обмежити швидкість передачі даних по SMB протоколу. Спочатку потрібно встановити компонент Windows Server Обмеження пропускної здатності SMB за допомогою PowerShell:

Add-WindowsFeature -Name FS-SMBBW

Або можна встановити його з графічного Server Manager (Add Windows Feature -> SMB Bandwidth Limit).

Зазвичай даний модуль застосовується для обмеження швидкості для Hyper-V Live Migration. Наприклад, наступна команда обмежити швидкість міграції віртуальних машин до 100 Мбайт / сек.

Set-SmbBandwidthLimit -Category LiveMigration -BytesPerSecond 100MB

Set-SmbBandwidthLimit обмеження швидкості для файлового трафіку

Ви також можете вказати -Category Default для обмеження звичайного трафіку для передачі файлів по протоколу SMB.

Set-SmbBandwidthLimit -Category Default -BytesPerSecond 10MB

Компонент FS-SMBBW доступний починаючи з Windows Server 2012 R2.

Обмеження швидкості передачі файлів в Robocopy – ключ / IPG

При використанні robocopy ви також можете використовувати спеціальний ключ, що дозволяє обмеження швидкості копіювання / переміщення файлів по мережі. Для цього використовується ключ / ipg (Inter packet Gap). Цей ключ виставляє інтервал між пакетами в мілісекундах і використовується для зниження навантаження на мережу при копіюванні по низькошвидкісних каналах. Robocopy передає дані по мережі блоками по 64 КБ, і таким чином, знаючи пропускну здатність вашого каналу, можна розрахувати потрібне значення для /ipg, Виходячи з вимог до обмеження швидкості передачі.

Якщо ви не хочете заглиблюватися в формули, то можете використовувати вже готовий калькулятор Robocopy IPG Calclator: http://www.zeda.nl/index.php/en/robocopyipgcalculator-en-2

Робокопія IPG Calclator

Для копіювання даних по повільним і нестабільним каналам також можна використовувати протокол BITS (див. Приклад у статті Копіювання великих файлів за допомогою BITS і PowerShell). Цей протокол дозволять динамічно управляти швидкістю передачі даних між двома вузлами в залежності від зайнятості каналу і підтримує докачку.

Управління шейпінгом трафіку за допомогою сторонніх утиліт

З платних варіантів найпопулярнішим рішенням для обмеження пропускної здатності в Windows в залежності від порту, програма, призначення є програми NetLimiter, А з безкоштовних TMeter Free.

Також можна скасувати:

  • Glasswire – також включається в себе фаєрвол і мережевий моніторинг;
  • NetBalancer – мережевий моніторинг і можливість налаштовувати правила для трафіку;
  • cFosSpeed ​​- може задати пріоритет трафіку для певних програм;
  • Net Peeker – як і Glasswire має функцію брандмауера і можливість задавати пріоритети для трафіку.

Із завданням обмеження швидкості передачі даних по мережі відмінно справляються QoS політики Windows, тому якщо перед вами стоїть таке завдання, то політики QoS повинні бути розглянуті в першу чергу. До того ж як і будь-які політики, вони можуть бути налаштовані на рівні всього домену через консоль gpmc.msc.

Стороннє ПО більш функціонально і має графічний інтерфейс, але в більшості випадків це платні програми.

Leave a Reply

Your email address will not be published. Required fields are marked *