Lets make wifi fast again!
 help / color / mirror / Atom feed
* [Make-wifi-fast] Making wifi really fast...
@ 2017-02-04 16:26 dpreed
  2017-02-04 23:12 ` Jonathan Morton
  0 siblings, 1 reply; 3+ messages in thread
From: dpreed @ 2017-02-04 16:26 UTC (permalink / raw)
  To: Dave Taht; +Cc: make-wifi-fast

As an experiment, I am starting to put fiber throughout my house, primarily intended as a backbone for scalable wifi to wifi that is very low latency, based on low cost 10 GigE gear.

But I'm still looking for some key pieces of kit... Others might suggest motherboards, wifi cards, software that can achieve the "access point" goals below... I'd be very appreciative.

Goals: expected latency end to end around 50 microseconds or in that ballpark, end to end, wifi to wifi. Off the shelf hardware components. Linux or FreeBSD routing components. No bufferbloat. Multiple WiFi gateways. Throughput close to max achievable on multiple mixed bands, 1750 Mbits/sec times number of wifi cards, perhaps. Or more if cochannel operation can be achieved among access points that don't hear each other.

Current gear and costs: 

Ubiquity XG-16 10 GigE switch (cost was $300 as beta, now selling for ~$550).

8 Mellanox ConnectX 2 PCIe cards, $20 each, because they are being pulled from systems. Mine look to possibly be newly packaged ones, probably unsalable, given that they are EOL. But very easy to find (mine from Amazon).

Mix of twinax and fiber SFP+ cables, pulled through walls and/or run on exterior of house.

Need:

Motherboards with enough I/o performance to handle at least a couple of gigabits per second, chopped into smallish packets. I plan to set MTU to 9000, but most packets will be smaller. I know how to get wirespeed on the ConnectX2 devices by dedicating a core and polling, eliminating interrupts. Assume that wifi can work that way also, eliminating need for bloated queueing, leaving one or more cores to do actual routing.
Main requirement is PCI Express x8 or bigger slot, and slot for wifi card. Smaller is better.

Wifi card(s) that support dual band AC, and have drivers that don't bloat their queues. Preferably having support for polled mode operation on one or two cores, which I suspect is needed just as it is for 10 GigE low latency.

Latency is the primary measurement I'm interested in: in Internet "it is the latency, stupid." This may make Linux be the wrong choice... Big queues are baked into Linux kernel dogma a little too much, because the wifi hardware guys on small systems measure throughput only, and the drivers come from them.

Anyway, this is a hobby project, and my day job (which involves getting 10 GigE layer 2 protocols to do end api to end api latencies < 10 usec.) takes priority for me. Any suggestions appreciated.





^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Make-wifi-fast] Making wifi really fast...
  2017-02-04 16:26 [Make-wifi-fast] Making wifi really fast dpreed
@ 2017-02-04 23:12 ` Jonathan Morton
  2017-02-05  0:06   ` Aaron Wood
  0 siblings, 1 reply; 3+ messages in thread
From: Jonathan Morton @ 2017-02-04 23:12 UTC (permalink / raw)
  To: David P. Reed; +Cc: Dave Taht, make-wifi-fast


> On 4 Feb, 2017, at 18:26, dpreed@reed.com wrote:
> 
> Motherboards with enough I/o performance to handle at least a couple of gigabits per second, chopped into smallish packets.

This shouldn’t be too difficult or expensive.


Consider this AM1 Mini-ITX build as a baseline:
	https://pcpartpicker.com/list/Zz9Ff8

The long PCIe slot is electrically x4 v2, but will accept any size card.  There’s a Mini-PCIe slot for wifi, and built-in GigE.  The CPU is weak but efficient, and genuinely quad-core, giving you the option of dedicating cores as you describe.  The whole shebang can be powered with a laptop brick instead of a conventional PSU.  Best of all, AMD graphics are the least troublesome out-of-the-box with Linux.


Even cheaper and quieter, but might not be stocked any more:
	https://pcpartpicker.com/product/Vm8H99/asrock-motherboard-qc5000itxph


If you insist on a true x8 slot, then we need to move up a step:
	https://pcpartpicker.com/list/G9jpdC

Here the first long PCIe slot is x16 v3, as good as you can get.  The second one is x4 v2, but is disabled if you use the M.2 slot.  Ether way, there is a spare x1 slot and an old-skool PCI slot besides.  The CPU is faster than the AM1 build, but is much less efficient.  It’s quad-core, but uses CMT, so the cores are not totally independent; I don’t know how much that matters for you.


If you prefer Intel, this is an inexpensive build:
	https://pcpartpicker.com/list/DJTwCy

However, this is a 2C/4T CPU rather than a true quad-core.  Again, that might or might not matter in practice.


 - Jonathan Morton


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Make-wifi-fast] Making wifi really fast...
  2017-02-04 23:12 ` Jonathan Morton
@ 2017-02-05  0:06   ` Aaron Wood
  0 siblings, 0 replies; 3+ messages in thread
From: Aaron Wood @ 2017-02-05  0:06 UTC (permalink / raw)
  To: Jonathan Morton, David P. Reed; +Cc: make-wifi-fast

[-- Attachment #1: Type: text/plain, Size: 2236 bytes --]

For pulling cables, I highly, highly recommend flexible conduit (smurf
tube), and then pulling the cables through that (with a fish tape). Much
easier than dealing with snags and kinks in the cables while running them
from place to place.

-Aaron
On Sat, Feb 4, 2017 at 15:12 Jonathan Morton <chromatix99@gmail.com> wrote:

>
> > On 4 Feb, 2017, at 18:26, dpreed@reed.com wrote:
> >
> > Motherboards with enough I/o performance to handle at least a couple of
> gigabits per second, chopped into smallish packets.
>
> This shouldn’t be too difficult or expensive.
>
>
> Consider this AM1 Mini-ITX build as a baseline:
>         https://pcpartpicker.com/list/Zz9Ff8
>
> The long PCIe slot is electrically x4 v2, but will accept any size card.
> There’s a Mini-PCIe slot for wifi, and built-in GigE.  The CPU is weak but
> efficient, and genuinely quad-core, giving you the option of dedicating
> cores as you describe.  The whole shebang can be powered with a laptop
> brick instead of a conventional PSU.  Best of all, AMD graphics are the
> least troublesome out-of-the-box with Linux.
>
>
> Even cheaper and quieter, but might not be stocked any more:
>
> https://pcpartpicker.com/product/Vm8H99/asrock-motherboard-qc5000itxph
>
>
> If you insist on a true x8 slot, then we need to move up a step:
>         https://pcpartpicker.com/list/G9jpdC
>
> Here the first long PCIe slot is x16 v3, as good as you can get.  The
> second one is x4 v2, but is disabled if you use the M.2 slot.  Ether way,
> there is a spare x1 slot and an old-skool PCI slot besides.  The CPU is
> faster than the AM1 build, but is much less efficient.  It’s quad-core, but
> uses CMT, so the cores are not totally independent; I don’t know how much
> that matters for you.
>
>
> If you prefer Intel, this is an inexpensive build:
>         https://pcpartpicker.com/list/DJTwCy
>
> However, this is a 2C/4T CPU rather than a true quad-core.  Again, that
> might or might not matter in practice.
>
>
>  - Jonathan Morton
>
> _______________________________________________
> Make-wifi-fast mailing list
> Make-wifi-fast@lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/make-wifi-fast

[-- Attachment #2: Type: text/html, Size: 3899 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-02-05  0:06 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-02-04 16:26 [Make-wifi-fast] Making wifi really fast dpreed
2017-02-04 23:12 ` Jonathan Morton
2017-02-05  0:06   ` Aaron Wood

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox