[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Setting rate for tbf
Hi,
I want to change the rate of the tbf after the queuing discipline
is installed.
I was looking the code and think that
static int tbf_change(struct Qdisc* sch, struct rtattr *opt) this
function should come in handy. I want to call this function from
tbf_enqueue not for all the packets but few special ones.
The problem :
tbf_change needs a rtattr structure pointer.
1. I cannot build this structure as tc does it as I do not have
struct nlmsghdr.
2. So during tbf_init call I store a pointer to the rtattr sturcture as I
have added struct rtattr in the tbf_sched_data.
Now I can pass this structure to tbf_change but how should I set
the rate to the desired rate I want.In tbf_change.....
Does setting the rate in the qopt->rate.rate to the new rate
suffice? This is before the call to rtab = qdisc_get_rtab(&qopt->rate,
tb[TCA_TBF_RTAB-1]);
I shall highly appreciate any inputs or other ways of tackling the
problem.
Regards,
Karan Gupta