Я хочу ограничить доступную пропускную способность для определенных фоновых служб репликации файлов до нескольких (<100) кБайт / с (предпочтительно ассиметрично).
Сначала я попытался добиться этого с помощью арбалета. Но Crossbow позволяет ограничивать пропускную способность только с шагом 150 кбайт / с, я, к сожалению, не могу его использовать. Затем я попытался использовать IPQoS.
Однако IPQoS, похоже, не работает в Solaris Express 11.
Пробовал много примеров (из мануала ipqosconf (1M), из онлайн-документации и из разных блогов) и все приводит к следующей ошибке:
Error: Missing required parameter for action <name>.
Error: Configuration failed, system state unchanged.
В этой конфигурации qos я хочу ограничить пропускную способность e1000g0 до 100 кбайт / с вверх / вниз.
fmt_version 1.0
action {
# generic IP classifier
module ipgpc
name ipgpc.classify
# disable later due to perfomance impact
params {
global_stats TRUE
}
class {
name hlimit
next_action cap
enable_stats FALSE
}
filter {
name hlimit
if_name e1000g0
class hlimit
}
}
action {
module tokenmt
name cap
params {
committed_rate 102400
committed_burst 102400
peak_rate 102400
peak_burst 102400
red_action_name drop
green_action_name continue
yellow_action_name continue
global_stats TRUE
}
}
Но когда я пытаюсь применить конфигурацию, я получаю:
$ sudo ipqosconf -a ipqos.qos
Error: Missing required parameter for action cap.
Error: Configuration failed, system state unchanged.
Моя служба ipqos запущена:
$ svcs -l ipqos
fmri svc:/network/ipqos:default
name IPQoS configuration
enabled true
state online
next_state none
state_time May 11, 2011 05:33:29 PM CEST
logfile /var/svc/log/network-ipqos:default.log
restarter svc:/system/svc/restarter:default
dependency optional_all/none svc:/network/initial (online)
dependency require_all/none svc:/system/filesystem/usr (online)
Файл журнала:
$ cat /var/svc/log/network-ipqos\:default.log
<snip>
[ May 11 16:50:40 Disabled. ]
[ May 11 17:33:29 Enabled. ]
[ May 11 17:33:29 Executing start method ("/lib/svc/method/net-ipqos"). ]
[ May 11 17:33:29 Method "start" exited with status 0. ]
и cat /var/adm/messages
ничего не показывает относительно ipqos.
Кажется, я здесь застрял.
Как вы подойдете к формированию трафика в Solaris для небольшой полосы пропускания?
Есть ли что-нибудь еще, что я мог бы посмотреть, чтобы узнать больше об этой ошибке. Может быть, кто-нибудь из вас знает, как найти самую свежую документацию по IPQoS.
Является ли IPQoS открытым исходным кодом, я хотел бы покопаться в источнике, чтобы добраться до корня этой ошибки. Но пока мне не удалось найти его (в Интернете или в диспетчере пакетов) с помощью поисковых запросов.
У вас есть какие-либо стандартные ресурсы, где я могу найти дополнительную информацию об услугах в Solaris, особенно о IPQoS?
Попробуйте установить ipqos-conf
. Должен решить вашу проблему.
pkg install ipqos-conf