Как-то раз мне понадобилось по самбе с одного сервера на другой скопировать большой объём данных. Сервер просел по дискам и всё закончилось гневными криками и копирование пришлось отменить. Как же быть? Ограничиваем скорость копирования по сети встроенными средствами Windows. Для ограничения трафика используем QoS.
QoS — quality of service (качество обслуживания). Это технология предоставления различным классам трафика различных приоритетов в обслуживании.
Шейпинг (shaping traffic) — ограничение пропускной способности канала для отдельного узла сети ниже технических возможностей канала. Шейпинг обычно используется как средство ограничения максимального потребления трафика со стороны узла сети.
Первым делом заходим в свойства сетевой карты, которую будем ограничивать. Устанавливаем галку на Qos Packet Scheduler.
Ok.
Далее открываем консоль Local Group Policy Editor (Редактор локальной групповой политики) или выполняем:
gpedit.msc
Заходим в Local Computer Policy → Computer Configuration → Windows Settings → Policy-based QoS.
Создаём новую политику, правой кнопкой Create new policy. Открывается окошко создания политики.
Policy name — указываем любое.
Specify Throttle Rate — вот здесь и будем ограничивать скорость, попробуем 1024 Кб в секунду.
Переключаемся на вкладку Application Name.
Применяем политику для всех приложений — All applications. Переключаемся на вкладку IP Addresses.
Источник я не буду ограничивать — Any source IP Address. А вот получателя буду, в поле Only for the following destination IP address or prefix указываю IP адрес, на который буду закачивать данные. Переключаемся на вкладку Protocol and Ports.
Я собираюсь резать только трафик на самбу. поэтому указываю протокол TCP, и номер порта 445. OK
Собственно, всё готово. Проверяю скорость. Запускаю на копирование массив данных.
Вижу 881 KB/sec на отправителе.
Меняю в политике скорость, указываю 2048 Кб в секунду.
Нажимаю ОК и проверяю скорость.
1,14 MB/sec — скорость подросла. На получателе наблюдаю такую картину нагрузки на сеть в момент изменения политики.
Видно, что нагрузка резко выросла примерно в два раза и составляем 16,5 Мегабит в секунду. Если перевести в Мегабайты, получится 2014 Кб в секунду, почти то, что указали в политике.
Проверим ещё раз как работает изменение скорости копирования налету. Меняю в политике скорость, указываю 4096 Кб в секунду.
Нажимаю ОК и проверяю скорость.
1,54 MB/sec —- скорость ещё подросла. На получателе наблюдаю такую картину.
Всё работает как часы, небольшой провал не в счёт. Настройка заняла минимальное время, несколько кликов мышкой и скорость загрузки по самбе ограничена указанными вами значениями.