<SNIP Traffic shaping for VoIP> > # ---------- > # altq rules > # ---------- > > # These are very simple altq rules. > # All they do is give priority to outgoing voip traffic. > altq on $ext_if cbq bandwidth 380Kb \ > queue { std_out, voip_out, voip_in, ack_out} > > queue std_out cbq(red default) > queue voip_out priority 4 cbq(red) > queue voip_in priority 4 cbq(red) > queue ack_out priority 6 cbq(red) <SNIP> <disclaimer>This is just what I've discovered, and should definately not be taken as gospel</disclaimer> Wouldn't you be better off using something with guarantees? I am thinking here of HFSC. My personal experience has been far better with this queueing type than any other, and so I've switched all my queueing boxes over. (But that was a while (1yr+?) ago, so things may have changed). I've got the following snippet in one of my configs. (Sorry about the wrapping). If you can find out the minimum/preferred bandwidth required by the VoIP applications, you should be able to guarantee them bandwidth, at least for outbound traffic. In my case q_big is guaranteed to have at least 225Kbps available (~28KB/s)
############ # HFSC for ADSL ############ altq on $ext_if hfsc bandwidth 450Kb queue { q_pri, q_icmp, q_http, q_big, q_mail, q_low, q_def } queue q_pri bandwidth 10% priority 7 hfsc( realtime 10% upperlimit 30% linkshare 15% ) queue q_icmp bandwidth 10% priority 5 hfsc( realtime 1% upperlimit 10% linkshare 1% ) queue q_big bandwidth 20% priority 4 hfsc( ecn realtime 55% upperlimit 90% linkshare 50% ) queue q_http bandwidth 10% priority 3 hfsc( ecn realtime 5% upperlimit 80% linkshare 5% ) queue q_def bandwidth 10% priority 2 hfsc(default ecn realtime 5% upperlimit 80% linkshare 5% ) queue q_low bandwidth 5% priority 0 hfsc( ecn realtime 4% upperlimit 80% linkshare 4% ) -- Craig