Hi,

If no HR timer is present, then the only time source is the Linux OS
tick at (typically) 100Hz. If a shaper decides to put a 10 ms delay
between each of your typical 1500byte ethernet frame, it means max
1500*8*100 = 1.2Mbit/s egress.

Enabling the HR timers can be as simple as fliping a config option in
the kernel config if it is supported on your platform.
The hard part is finding which one.
Start with something like "make kernelconfig" in openwrt, then search
for "HR timer" ...
I believe there is a generic core to enable, and a hardware driver
(arch/platform/soc/board dependent) too.

Mickael


2015-03-16 19:04 GMT+01:00 spaceman <[email protected]>:
> Hi,
>
> Is 10Mbits/s considered a high data rate? Assuming that it is:
>
> I'm just a user of openwrt using a pre-supplied image. How would I check
> without access to the kernel config?
> I have tried:
> cat /proc/timer_list (based on http://elinux.org/High_Resolution_Timers)
> but that file is not present.
>
> Given that I would probably assume that it is not enabled. So unless
> enabling it is a relatively simple task, which given that it a kernel thing
> probably means recompiling the kernel which is probably something I am
> unable to do. I want the feature but not so badly that I would be willing to
> go to that length for it.
>
> spaceman
>
>
> On 2015/03/16 09:03:00 , Mickael Chazaux wrote:
>>
>> Hi,
>>
>> Shaping with high datarates requires the use of the HR Timers. I once
>> had problems like that. Is it enabled in your kernel config?
>>
>> Mickael
>>
>> 2015-03-15 21:49 GMT+01:00 spaceman <[email protected]>:
>>>
>>> Hi,
>>>
>>> Yeah, that doesn't seem to work:
>>> $ tc qdisc add dev eth0 root pfifo_fast
>>> RTNETLINK answers: No such file or directory
>>>
>>> It looks right, but again it doesn't work the way you would expect.
>>>
>>> The reason I want it removed is because something is screwing the shaping
>>> on
>>> eth0.2.  I always get 7Mb down and 1Mb up no matter what I set the values
>>> (ridiculously high or low).  I have tried doing it manually
>>> (http://lartc.org/) and using wshaper.  Either that or I have a buggy
>>> release (14.07, r42625). My internet without shaping is 65Mb down and
>>> 10Mb
>>> up.
>>>
>>> I like fq_codel (I run where I can), but it won't make as much difference
>>> unless I get the shaping right because the link to the modem is 100Mb/s
>>> (which being owned by the ISP probably has a massive queue running fifo)
>>> and
>>> only the connection after that is 10Mb/s. I want fq_codel (on openwrt) to
>>> be
>>> in charge of queue not the modem running fifo.
>>>
>>> Regards,
>>> spaceman
>>>
>>> On 2015/03/15 00:03:03 , David Lang wrote:
>>>>
>>>>
>>>> for me, this seems to work
>>>>
>>>> # tc qdisc add dev eth3 root pfifo_fast
>>>> # tc  qdisc
>>>> qdisc pfifo_fast 8002: dev eth3 root refcnt 2 bands 3 priomap  1 2 2 2 1
>>>> 2
>>>> 0 0 1 1 1 1 1 1 1 1
>>>>
>>>> I'm curious as to why you are trying to remove fq_codel? have you run
>>>> into
>>>> a place where it hurts you? or are you just trying to compare it with
>>>> pfifo_fast?
>>>>
>>>> David Lang
>>>>
>>>> On Thu, 12 Mar 2015, spaceman wrote:
>>>>
>>>>> Date: Thu, 12 Mar 2015 22:21:42 +0000
>>>>> From: spaceman <[email protected]>
>>>>> Reply-To: OpenWrt User List <[email protected]>
>>>>> To: [email protected]
>>>>> Subject: [OpenWrt-Users] Remove fq_codel from eth0
>>>>>
>>>>> Hi,
>>>>>
>>>>> I cannot remove the fq_codel qdisc from the eth0 device.
>>>>>
>>>>> I have tried:
>>>>> tc qdisc del dev eth0 root
>>>>> However it responds with:
>>>>> RTNETLINK answers: No such file or directory
>>>>> However:
>>>>> tc -s qdisc show dev eth0
>>>>> Responds with:
>>>>> qdisc fq_codel 0: root refcnt 2 limit 1024p flows 1024 quantum 300
>>>>> target
>>>>> 5.0ms interval 100.0ms ecn
>>>>> Sent 152870410415 bytes 180254077 pkt (dropped 412, overlimits 0
>>>>> requeues
>>>>> 195500)
>>>>> backlog 0b 0p requeues 195500
>>>>> maxpacket 1514 drop_overlimit 0 new_flow_count 545433 ecn_mark 4
>>>>> new_flows_len 0 old_flows_len 0
>>>>>
>>>>> How do get rid of it or replace it with pfifo_fast so it basically
>>>>> doesn't do anything?
>>>>>
>>>>> I am using Barrier Breaker.
>>>>>
>>>>> Regards,
>>>>> spaceman
>>>>> _______________________________________________
>>>>> openwrt-users mailing list
>>>>> [email protected]
>>>>> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-users
>>>>>
>>>> _______________________________________________
>>>> openwrt-users mailing list
>>>> [email protected]
>>>> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-users
>>>
>>>
>>> _______________________________________________
>>> openwrt-users mailing list
>>> [email protected]
>>> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-users
>>
>> _______________________________________________
>> openwrt-users mailing list
>> [email protected]
>> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-users
>
> _______________________________________________
> openwrt-users mailing list
> [email protected]
> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-users
_______________________________________________
openwrt-users mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-users

Reply via email to