Ищем функцию управления дорожным движением (т.е.QOS) библиотека в Linux

StackOverflow https://stackoverflow.com//questions/9695735

Вопрос

Я пытаюсь перенести некоторый код C++ из Windows в Linux, но не могу найти аналогичный API для функций управления трафиком в Linux.

мне нужны эти функции.Пожалуйста, помогите, если вы знаете, где я могу найти такой API?

Спасибо за ваше время.

Это было полезно?

Решение

Вы определенно хотите начать с Расширенная маршрутизация и контроль трафика Linux как.Я бы рекомендовал использовать tc утилита из iproute2, которую использует руководство, но если вам нужен более прямой API, вы можете посмотреть его исходный код в качестве примера.

Другие советы

Как уже говорилось, вы хотите использовать команду управления управлением трафика Linux TC.Я бы порекомендовал HTB Sceduling.Вы можете включить модуль ядра с:

modprobe sch_htb
.

Основные команды для настройки Tc следующие:

tc qdisc add dev eth0 root handle 1:0 htb
tc class add dev eth0 parent 1:0 classid 1:1 htb rate 100mbit
tc class add dev eth0 parent 1:1 classid 1:1000 htb rate 500Kbit ceil 1000Kbit
tc filter add dev eth0 parent 1:0 protocol ip prio 1 u32 match ip src 109.11.28.2 flowid 1:1000
.

Эти примерные команды настройки управления движением на устройстве ETH0 для IP 109.11.28.2, более подробно они выполняют следующие

  1. Настройка дисциплины очередей
  2. Установка родительского класса и его ограничение скорости трафика
  3. Настройка дочернего класса с частотой трафика и скоростью трафика потолок
  4. добавить IP-фильтр, чтобы применить пределы класса дочерних классов до конкретного IP-IP
  5. Вы можете настроить столько детских классов, сколько вы хотите, каждый может использоваться для другого IP в вашей сети.Для более тщательного и подробного пошагового пошагового руководства по настройке контроля трафика TC см. Здесь: http://hostrepo.com/article.php?id=194

    Удачи!

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top