In piloting HFSC's service curves on 4.2-release, I uncovered something wrong. In sending one 1024 byte ICMP packet every second (ping -s 1016), pfctl gets it mostly right:
queue interac on pcn0 bandwidth 64Kb priority 7 hfsc( realtime(128Kb 128 32Kb) ) [ pkts: 333 bytes: 329274 dropped pkts: 0 bytes: 0 ] [ qlength: 0/ 50 ] queue interac on pcn0 bandwidth 64Kb priority 7 hfsc( realtime(128Kb 128 32Kb) ) [ pkts: 338 bytes: 334564 dropped pkts: 0 bytes: 0 ] [ qlength: 0/ 50 ] Five packets in five second and the bytes, largely, add up correctly. However, the measured bandwidth is way off: [ measured: 1.0 packets/s, 8.25Kb/s ] 8.25Kb/s? I know this is 1Kb/s so what's going on? Is this just an inaccuracy in the pfctl output or does altq really think I'm moving 8Kb/s? I assume it's the former as pftop appears to get it right: QUEUE BW SCH PR PKTS BYTES DROP_P DROP_B QLEN BORR SUSP P/S B/S root_pcn0 1024K hfsc 0 0 0 0 0 0 0 0 interac 64000 hfsc 7 338 327K 0 0 0 1.0 1050