<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <p>Having fq_codel built-into the mac80211 layer allows you to use
      the max rate of the device with low latency.<br>
      <br>
      The Ubiquiti Powerbeam M5-400 is 5Ghz and most likely has an
      ath10k, since the 300 has one.  You could probably just use a LEDE
      build with the ath10k fq_codel patch.<br>
      <br>
      The only alternative I can think of is to have a passive router
      with Cake's autorate_ingress feature.<br>
      <br>
      It automatically estimates the bandwidth of incoming traffic and
      sets its rate-limiter to slightly below that to control the queue.<br>
      <br>
      If you like, I can build you an x86 virtual machine with that
      setup.  You can run that on your PC1 and have it sitting in front
      of the Voyage Linux VM to test Flent over WiFi.<br>
      <br>
      The limitation is that it only estimates incoming traffic, so you
      would have to deploy it at points you receive traffic.</p>
    <p>Noah Causin<br>
    </p>
    <br>
    <div class="moz-cite-prefix">On 12/9/2016 9:43 AM, Phineas Gage
      wrote:<br>
    </div>
    <blockquote
      cite="mid:20EA10A9-73B2-4EAE-B8EE-927AD5DB29F3@gmail.com"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      <div class="">Thanks David, I do see your point. That would be
        great if I could run fq_codel on the outgoing queue of the
        device that has the WiFi radio.</div>
      <div class=""><br class="">
      </div>
      <div class="">But what I’m calling “radios” in this case can be a
        Ubiquiti PowerBeam M5-400, for example. This is a dish with
        integrated CPU and WiFi radio. It runs Ubiquiti’s firmware on
        kernel 2.6.32.68, and doesn’t come with an fq_codel module.
        You’re saying that this is the hardware where I’d really want to
        run it, and just add fq_codel as the egress leaf queue without
        rate limiting, right? But I don’t think fq_codel can run on this
        kernel. Much of the “radio” hardware is similar to this, and I’m
        also not sure what throughput the small CPUS they have (like
        MIPS 74Kc) could even support with fq_codel.</div>
      <div class=""><br class="">
      </div>
      <div class="">So unless I’m missing something, the only option I
        see in this case is to run it on the routers that are connected
        to these radio devices via Ethernet and do rate limiting.</div>
      <div class=""><br class="">
      </div>
      <div class="">As for the Make WiFi Fast project, in addition to
        the airtime fairness work, part of the plan is to add AQM/FQ at
        the 802.11 layer, right? In that case, if I were able to run
        this, I suppose I wouldn’t need to even configure an fq_codel
        queue with tc. But I would probably need to be able to run that
        on Ubiquiti’s firmware. PowerBeam M5-400’s do use ath9k, which
        the code targets, but I think so far the WISP would be reluctant
        to run OpenWRT or LEDE, though I can ask...</div>
      <br class="">
      <div>
        <blockquote type="cite" class="">
          <div class="">On Dec 9, 2016, at 2:41 PM, David Lang <<a
              moz-do-not-send="true" href="mailto:david@lang.hm"
              class="">david@lang.hm</a>> wrote:</div>
          <br class="Apple-interchange-newline">
          <div class=""><span style="font-family: Helvetica; font-size:
              12px; font-style: normal; font-variant-caps: normal;
              font-weight: normal; letter-spacing: normal; orphans:
              auto; text-align: start; text-indent: 0px; text-transform:
              none; white-space: normal; widows: auto; word-spacing:
              0px; -webkit-text-stroke-width: 0px; float: none; display:
              inline !important;" class="">If you are able to make the
              settings on the outgoing side of both the ends of the
              link, the need to estimate bandwidth should pretty much go
              away.</span><br style="font-family: Helvetica; font-size:
              12px; font-style: normal; font-variant-caps: normal;
              font-weight: normal; letter-spacing: normal; orphans:
              auto; text-align: start; text-indent: 0px; text-transform:
              none; white-space: normal; widows: auto; word-spacing:
              0px; -webkit-text-stroke-width: 0px;" class="">
            <br style="font-family: Helvetica; font-size: 12px;
              font-style: normal; font-variant-caps: normal;
              font-weight: normal; letter-spacing: normal; orphans:
              auto; text-align: start; text-indent: 0px; text-transform:
              none; white-space: normal; widows: auto; word-spacing:
              0px; -webkit-text-stroke-width: 0px;" class="">
            <span style="font-family: Helvetica; font-size: 12px;
              font-style: normal; font-variant-caps: normal;
              font-weight: normal; letter-spacing: normal; orphans:
              auto; text-align: start; text-indent: 0px; text-transform:
              none; white-space: normal; widows: auto; word-spacing:
              0px; -webkit-text-stroke-width: 0px; float: none; display:
              inline !important;" class="">The whole mess of estimating
              bandwidth and throttling to keep below that estimate is
              only needed when the device(s) that you have control over
              are not the ones directly adjacent to the bottleneck. If
              you are directly adjacent to the bottleneck, then you
              don't need to guess how much data is too much, you see it
              directly by watching the queues build up (at which point,
              fq_codel kicks in and forces things to back off)</span><br
              style="font-family: Helvetica; font-size: 12px;
              font-style: normal; font-variant-caps: normal;
              font-weight: normal; letter-spacing: normal; orphans:
              auto; text-align: start; text-indent: 0px; text-transform:
              none; white-space: normal; widows: auto; word-spacing:
              0px; -webkit-text-stroke-width: 0px;" class="">
            <br style="font-family: Helvetica; font-size: 12px;
              font-style: normal; font-variant-caps: normal;
              font-weight: normal; letter-spacing: normal; orphans:
              auto; text-align: start; text-indent: 0px; text-transform:
              none; white-space: normal; widows: auto; word-spacing:
              0px; -webkit-text-stroke-width: 0px;" class="">
            <span style="font-family: Helvetica; font-size: 12px;
              font-style: normal; font-variant-caps: normal;
              font-weight: normal; letter-spacing: normal; orphans:
              auto; text-align: start; text-indent: 0px; text-transform:
              none; white-space: normal; widows: auto; word-spacing:
              0px; -webkit-text-stroke-width: 0px; float: none; display:
              inline !important;" class="">you really want to be running
              fq_codel on the 'radios', that's the bottleneck point as
              you shift from ethernet to wifi.</span><br
              style="font-family: Helvetica; font-size: 12px;
              font-style: normal; font-variant-caps: normal;
              font-weight: normal; letter-spacing: normal; orphans:
              auto; text-align: start; text-indent: 0px; text-transform:
              none; white-space: normal; widows: auto; word-spacing:
              0px; -webkit-text-stroke-width: 0px;" class="">
            <br style="font-family: Helvetica; font-size: 12px;
              font-style: normal; font-variant-caps: normal;
              font-weight: normal; letter-spacing: normal; orphans:
              auto; text-align: start; text-indent: 0px; text-transform:
              none; white-space: normal; widows: auto; word-spacing:
              0px; -webkit-text-stroke-width: 0px;" class="">
            <span style="font-family: Helvetica; font-size: 12px;
              font-style: normal; font-variant-caps: normal;
              font-weight: normal; letter-spacing: normal; orphans:
              auto; text-align: start; text-indent: 0px; text-transform:
              none; white-space: normal; widows: auto; word-spacing:
              0px; -webkit-text-stroke-width: 0px; float: none; display:
              inline !important;" class="">I would guess that the
              airtime fairness work probably won't make a huge
              difference in your case as the backhaul networks are all
              operating at or near the same speeds, but it may be that
              it will help by better grouping traffic into transmission
              bursts.</span><br style="font-family: Helvetica;
              font-size: 12px; font-style: normal; font-variant-caps:
              normal; font-weight: normal; letter-spacing: normal;
              orphans: auto; text-align: start; text-indent: 0px;
              text-transform: none; white-space: normal; widows: auto;
              word-spacing: 0px; -webkit-text-stroke-width: 0px;"
              class="">
            <br style="font-family: Helvetica; font-size: 12px;
              font-style: normal; font-variant-caps: normal;
              font-weight: normal; letter-spacing: normal; orphans:
              auto; text-align: start; text-indent: 0px; text-transform:
              none; white-space: normal; widows: auto; word-spacing:
              0px; -webkit-text-stroke-width: 0px;" class="">
            <span style="font-family: Helvetica; font-size: 12px;
              font-style: normal; font-variant-caps: normal;
              font-weight: normal; letter-spacing: normal; orphans:
              auto; text-align: start; text-indent: 0px; text-transform:
              none; white-space: normal; widows: auto; word-spacing:
              0px; -webkit-text-stroke-width: 0px; float: none; display:
              inline !important;" class="">David Lang</span><br
              style="font-family: Helvetica; font-size: 12px;
              font-style: normal; font-variant-caps: normal;
              font-weight: normal; letter-spacing: normal; orphans:
              auto; text-align: start; text-indent: 0px; text-transform:
              none; white-space: normal; widows: auto; word-spacing:
              0px; -webkit-text-stroke-width: 0px;" class="">
          </div>
        </blockquote>
      </div>
      <br class="">
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Make-wifi-fast mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Make-wifi-fast@lists.bufferbloat.net">Make-wifi-fast@lists.bufferbloat.net</a>
<a class="moz-txt-link-freetext" href="https://lists.bufferbloat.net/listinfo/make-wifi-fast">https://lists.bufferbloat.net/listinfo/make-wifi-fast</a></pre>
    </blockquote>
    <br>
  </body>
</html>