Ну, если вы считаете, что информации данной ранее недостаточно, то пожалуйста.
1. Есть ISP, предоставляющий асимметричный канал в Интернет по L2TP/PPTP 6 Mbps/3 Mbps (daunload/upload) и доступ к своим локальным ресурсам на скоростях до 100 Mbps в обе стороны.
2. Есть DFL-210 (192.168.200.1)
3. За DFL всего 2 машины: General(192.168.200.2 - основной рабочий комп) и Torrent (192.168.200.3 - на этой машине установлен bittorrent-клиент, и работает она в режиме 24/7). На машину Torrent проброшен для uTorrent'а порт как из Интернета, так и из локалки провайдера.
4. Необходимо динамически шейпить всю доступную в обе стороны полосу пропускания, предоставляемую провайдером, между этими двумя машинами, отдавая предпочтение машине General, но зарезервировав (гарантировав) для машины Torrent, некую величину от общей полосы пропускания, допустим, 300 kbps в обе стороны. Т.е. мне нужно, чтобы когда машина General выключена, либо трафик от неё/к ней стремится к нулю, машине Torrent выделялась бы вся доступная полоса пропускания, предоставляемая провайдером, но как только General полезла в Интернет (не важно по какому протоколу и каким сервисам), то приоритет на использование канала передавался бы ей, и она бы забирала столько трафика сколько ей необходимо в данный момент, ограничиваясь только физической шириной канала и за вычетом 300 kbps, которые гарантируются для машины Torrent.
Сегодня мне всё-таки удалось получить нечто - отдалённо напоминающее то чего я хотел увидеть. Для этого мне пришлось наколбасить кучу правил канала, чтобы гарантированно пустить какой только можно трафик в нужные каналы согласно его направлению:
В итоге получил в uTorrent'е следующий график, где в левой части шейпер включен, а в правой выключен:
Хочу отметить, что это очень удачный график, т.к. очень часто при включенном шейпере прямую и обратную скорость очень сильно штормит, когда как при отключенном, линии выглядят более-менее ровно.
А вот некоторые эксперименты с шейпером, где 1-й провал скоростей - загрузка файла размером 44,1 MB с машины General по HTTP на удалённый файл-хостинг в Интернете; 2-й провал - понятия не имею, что это такое, но пока наблюдается регулярно через некоторое время после окончания загрузи файла на удалённый сервер; ну и 3-й провал - это скачка ранее загруженного файла с удалённого файл-хостинга в Интернете на машину General:
Однако, как видно из графика, шейпер хоть и врубается, но работает некорректно:
1. Почему практически абсолютно до нуля режутся скорости в
обоих направлениях для машины Torrent, что в момент отдачи файла машиной General, что в момент получения ею файла? Ведь при этих операциях машина General, по идее, по разному загружает входящие/исходящие каналы, так почему у машины Torrent в обоих случаях отбирается практически вся ширина полосы пропускания в обоих противонаправленных каналах?
2. Ни разу не видел, чтобы машине Torrent предоставлялись гарантированные ей правилами 300 kbps.
В общем, как-то так. Ввиду того, что всё равно подыскивается гигабитный коммутатор, к его характеристикам придётся прибавить нормальный шейпер. Надеюсь, такие коммутаторы имеются и их производит не D-Link.