[Cerowrt-devel] [Bloat] Comcast upped service levels -> WNDR3800 can't cope...

Jonathan Morton chromatix99 at gmail.com
Tue Sep 2 09:40:58 EDT 2014

On 1 Sep, 2014, at 9:32 pm, Dave Taht wrote:

>>> It would be cool to be able to program the ethernet hardware itself to
>>> return completion interrupts at a given transmit rate (so you could
>>> program the hardware to be any bandwidth not just 10/100/1000). Some
>>> hardware so far as I know supports this with a "pacing" feature.
>> Is there a summary of hardware features like this anywhere?  It'd be nice to see what us GEM and RTL proles are missing out on.  :-)
> I'd like one.

Is there at least a list of drivers (both wired and wireless) which are BQL enabled?  If GEM is not in that list, it might explain why the PCI bus gets jammed solid on my PowerBook.

> There are certain 3rd party firmwares like octeon's
> where it seems possible to add more features to the firmware
> co-processor, in particular.

Octeon is basically a powerful, multi-core MIPS64 SoC that happens to have Ethernet hardware attached, and is available in NIC form.  These "NICs" look like miniature motherboards in PCIe-card format, complete with mini-SIMM slots.  Utter overkill for normal applications; they're meant to do encryption on the fly, and were originally introduced as Ethernet-less coprocessor cards for that purpose.  At least they represent a good example of what high-end MIPS is like these days.

The original Bigfoot KillerNIC was along those lines, too, but slightly less overdone.  It still managed to cost $250+, and Newegg still lists a price in that general range despite being permanently out of stock.  As well as running Linux on the card itself, the drivers apparently replaced large parts of the Windows network stack in the quest for efficiency and low latency.  Results varied; Anandtech suggested that the biggest improvements probably came on cheaper PCs, whose owners wouldn't be able to justify such a high-priced NIC - and that was in 2007.

I can't tell what the newer products under the Killer brand (taken over by Qualcomm/Atheros) really are, but they are sufficiently reduced in cost, size and complexity to be integrated into "gamer" PC motherboards and laptops, and they respond to being driven like standard (newish) Atheros hardware.  In particular, it's unclear whether they do most of their special sauce in software (so Windows-specific) or firmware.

Comments I hear sometimes seem to imply that *some* Atheros hardware runs internal firmware.  Whether that is strictly wireless hardware, or whether it extends into Ethernet, I can't yet tell.  Since it's widely deployed, it would theoretically be a good platform for experimentation - but in practice?

> tc qdisc add dev eth0 cake bandwidth 50mbit diffservmap std

Or even having the "diffservmap std" part be in the defaults.  I try not to spend too much mental effort understanding diffserv - it's widely misunderstood, and most end-user applications ignore it.  Supporting the basic eight precedences, and maybe some userspace effort to introduce marking, should be enough.

I like the name, though.  :-)

 - Jonathan Morton

More information about the Cerowrt-devel mailing list