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. 

Reply via email to