Lets make wifi fast again!
 help / color / mirror / Atom feed
From: dpreed@reed.com
To: "Dave Taht" <dave.taht@gmail.com>
Cc: make-wifi-fast@lists.bufferbloat.net
Subject: [Make-wifi-fast] Making wifi really fast...
Date: Sat, 4 Feb 2017 11:26:59 -0500 (EST)	[thread overview]
Message-ID: <1486225619.383728022@mobile.rackspace.com> (raw)

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.





             reply	other threads:[~2017-02-04 16:26 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-04 16:26 dpreed [this message]
2017-02-04 23:12 ` Jonathan Morton
2017-02-05  0:06   ` Aaron Wood

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://lists.bufferbloat.net/postorius/lists/make-wifi-fast.lists.bufferbloat.net/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1486225619.383728022@mobile.rackspace.com \
    --to=dpreed@reed.com \
    --cc=dave.taht@gmail.com \
    --cc=make-wifi-fast@lists.bufferbloat.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox