if i say:
altq on fxp1 hfsc bandwidth 100Mb queue { q1 q2 q3 q4 }
queue q1 hfsc(default)
queue q2
queue q3
queue q4
i get the error:
altq on fxp1 hfsc bandwidth 100Mb tbrsize 12000 queue { q1 q2 q3 q4 }
queue q1
queue q2
pfctl: link-sharing sc exceeds parent's sc
queue q2
pfctl: link-sharing sc exceeds parent's sc
queue q2
pfctl: Syntax error in config file: pf rules not loaded
if i change the queues to be:
queue q1 bandwidth 25% hfsc(default)
queue q2 bandwidth 25%
queue q3 bandwidth 25%
queue q4 bandwidth 25%
problem is gone.
does this imply that with hfsc, bandwith must be distributed among all
child queues such that the total bandwidth among them at that level of the
tree cannot exceed 100%?
i know that sounds like stupid easy math, but then what manner of linkshare/realtime/
upperlimit options could i impose upon those child queues such that if
queues q2, q3 and q4 were not receiving packets, q1 could receive up to 100% of
the interface bandwidth? as in, on a four client lan, the queues are assigned to
machines 192.168.1.1 - 192.168.1.4 ; let's say the machine running pf is
192.168.1.100...
if 192.168.1.1 is downloading from 192.168.1.100, and the other hosts on the
lan are inactive, can hfsc be setup to allow 192.168.1.1 to receive all of
the 100Mb bandwidth of the altq declaration; but if all four hosts are downloading
equally from the 192.168.1.100, the bandwidth would be split fairly among them?
or is this not the purpose of hfsc and i should stick exclusively to cbq?
thankyou.
jared.