Моя цель состоит в том, чтобы уменьшить использование данных за счет ограничения пропускной способности, так что такие службы, как Microsoft Teams и Zoom, вынуждены адаптироваться к моему более медленному соединению inte rnet, автоматически снижая качество видео, аудио и общий доступ к экрану.
Я попытался использовать tc
на linux следующим образом, но с некоторым успехом:
tc qdisc add dev eth0 root handle 1: htb default 10
tc class add dev eth0 parent 1: classid 1:1 htb rate 50kbps ceil 50kbps
tc class add dev eth0 parent 1:1 classid 1:10 htb rate 50kbps ceil 50kbps
Когда я запускаю эти команды, мой inte rnet определенно существенно замедляется. Страницы загружаются намного медленнее. Тем не менее, службы видеочата, похоже, все еще прожигают данные, как если бы эти настройки отсутствовали, а качество остается неизменным без задержки или задержки.
Я ожидаю, что это произойдет, потому что эти сервисы используют отброшенные пакеты для информирования своих алгоритмов адаптивного качества, и вышеупомянутые настройки не вызывают больше отбрасывания пакетов.
Я не уверен, верно ли это предположение или нет, но если это так, я представил, что ответом может быть использование входной политики или определенных правил iptables. Я недостаточно знаком с iptables, чтобы использовать его для этой цели, но я попробовал следующее:
tc qdisc add dev eth0 handle ffff: ingress
tc filter add dev eth0 protocol ip parent ffff: prio 50 u32 match ip \
src 0.0.0.0/0 police rate 50kbit burst 10k drop flowid :1
Эти настройки, похоже, не влияют. Опять же, качество услуг видеочата оказалось одинаковым без задержки или задержки.
Есть мысли?