[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: atach qdisc's
Exactly that I want, is to put a dsmark and after a CBQ to do marking and
sckeduling of packet in one router only. If exists any fashion to do this,
without puting a CBQ followed a dsmark please replay me.
My other problem is to implement some thing with gred. The example that comes
in iproute works, but when I try to implement some diffrent configuration,
they doesn't work.
The problem is that I can't understand the tc command to implement DP. For
example, when are defined each DP (after defining DP setup) attach a filter to
'parent 1:', and I don't understand this.
$TC filter add dev $DEV parent 1:0 protocol ip prio 1 \
handle 0x0A tcindex classid 1:111 pass_on
$TC qdisc change dev $DEV parent 3:1 gred \
DP 1 \
limit 60KB \
min 15KB \
burst 20 \
avpkt $TAM_PACK \
bandwidth $RATE_AF11 \
probability $DP11 \
In a configutration that I want to implement have a conflicts with the filter
of dsmark qdisc.
I don't understand too, the meaning of the classid 1:111, and if this drive a
traffic directly to DP of some fashion; or I have to modifie the tcindex to
put this at the same value that the number of DP.
And finaly How are used the field probability (to know the value I must to
Please replay me. I need this information.
Werner Almesberger wrote:
> Carlos Parada wrote:
> > I want to put one qdisc followed to any other. It is possible ??
> Unfortunately not. It's usually feasible to obtain an equivalent
> configuration by nesting qdiscs, but it may get more complex. For
> multiple classification steps, tcindex may be useful for merging
> them into a single step.
> The problem of concatenating qdiscs is actually a little tricky,
> because in most such cases, you would want to have some feedback
> from the second qdisc to the first, or (worse) some shaping in the
> middle, e.g.
> -> PRIO -> TBF -> (needs feedback from TBF to PRIO, or PRIO
> forwards packets as soon as they enter)
> -> CBQ(X) -> CBQ(Y) -> (X and Y being different class hierarchies
> with different classifications; may need
> shaping in the middle)
> Considering how bad shaping once is already, shaping multiple times
> probably wouldn't yield very nice results. Besides, it would make any
> hardware-assisted shaping even more complex/unrealistic. Fortunately,
> with CBQ, it should be possible to merge such things into a single
> Feedback could be implemented by trying to dequeue packets from the
> first qdisc and to enqueue them on the second until either the first
> runs out of packets or the second fills up. Repeat this whenever
> there's either something new in the first qdisc or something is
> removed from the second qdisc. That should work in simple cases, but
> the nested qdiscs approach is more efficient.
> Worse yet, if classification of the second qdisc depends on time, it
> would be a lot more difficult to get useful semantics and a
> reasonable implementation. (E.g. CBQ with some microflow policing as
> the second qdisc would be poorly served by a mechanism that just
> throws packets at it as fast as it can - just to see them dropped by
> Then there's the case of qdiscs that don't really queue data, e.g.
> sch_dsmark or sch_atm. If they also don't have time-dependent
> classification, then we have a case where concatenation of qdiscs
> would indeed offer a very useful abstraction.
> Something to keep in mind for future design work.
> - Werner
> / Werner Almesberger, ICA, EPFL, CH email@example.com /
org:PT Inovacao, S.A.;Multimedia e Servicos IP