Quote:
Originally Posted by egarim
Hi all, I begin to do some experiments with tc :
this is an example to shape my outgoing bandwith on eth0 to 128kB:
tcng output:
dev "eth0" {
egress {
fifo ( limit 128kB );
}
}
tc output:
tc qdisc add dev eth0 handle 1:0 root dsmark indices 1 default_index 0
tc qdisc add dev eth0 handle 2:0 parent 1:0 bfifo limit 131072
If I try to send data to another host in my lan the speed is alway 8-10 Mbyte/sec , I don't really known why... Did I wrong queue ? If I run tc -s I notice the packets flow that queue
tc -s qdisc show dev eth0
qdisc dsmark 1: root indices 0x0001 default_index 0x0000
Sent 72509672 bytes 8817 pkt (dropped 0, overlimits 0 requeues 0)
rate 0bit 0pps backlog 0b 0p requeues 0
qdisc bfifo 2: parent 1: limit 128Kb
Sent 72509672 bytes 8817 pkt (dropped 0, overlimits 0 requeues 0)
rate 0bit 0pps backlog 0b 0p requeues 0
Could anyone explain this to me ? Best regards.
|
I find :
***
14.1. bfifo/pfifo
These classless queues are even simpler than pfifo_fast in that they lack the internal bands - all traffic is really equal. They have one important benefit though, they have some statistics. So even if you don't need shaping or prioritizing, you can use this qdisc to determine the backlog on your interface.
pfifo has a length measured in packets, bfifo in bytes.
***
So the fifo is not useful to shape or better it CAN'T shapes! Correct me if I wrong maybe I misunderstood ?