6 config_get
enable global
enable 0
8 [ "${enable}" -eq 1 ] ||
{
9 echo 0 ${sch_upstream} > /sys
/kernel
/debug
/hnat
/scheduler0
10 echo 0 ${sch_downstream} > /sys
/kernel
/debug
/hnat
/scheduler1
20 config_get sch_upstream global upstream
100000
21 config_get sch_downstream global downstream
100000
23 echo 1 ${sch_upstream} > /sys
/kernel
/debug
/hnat
/scheduler0
24 echo 1 ${sch_downstream} > /sys
/kernel
/debug
/hnat
/scheduler1
27 local queue_id queue_scheduler queue_minebl queue_maxebl queue_minrate queue_maxrate queue_resv minrate maxrate queue_weight
29 config_get queue_id
$1 id
0
30 config_get queue_minrate
$1 minrate
0
31 config_get queue_maxrate
$1 maxrate
0
32 config_get queue_resv
$1 resv
22
33 config_get queue_weight
$1 weight
7
35 [ "${queue_id}" -gt 7 ] && return 0
41 [ "${queue_minrate}" -eq 0 ] && queue_minebl
=0
42 [ "${queue_maxrate}" -eq 0 ] && queue_maxebl
=0
44 minrate
=$
((sch_upstream
* $queue_minrate))
45 minrate
=$
((minrate
/ 100))
47 maxrate
=$
((sch_upstream
* $queue_maxrate))
48 maxrate
=$
((maxrate
/ 100))
50 echo 0 ${queue_minebl} ${minrate} ${queue_maxebl} ${maxrate} ${queue_weight} ${queue_resv} > /sys/kernel/debug/hnat/queue${queue_id}
52 queue_id
=$
((queue_id
+ 8))
54 minrate
=$
((sch_downstream
* $queue_minrate))
55 minrate
=$
((minrate
/ 100))
57 maxrate
=$
((sch_downstream
* $queue_maxrate))
58 maxrate
=$
((maxrate
/ 100))
60 echo 1 ${queue_minebl} ${minrate} ${queue_maxebl} ${maxrate} ${queue_weight} ${queue_resv} > /sys/kernel/debug/hnat/queue${queue_id}
63 config_foreach setup_scheduler scheduler
64 config_foreach setup_queue queue