<div dir="ltr">Hi Grenville,<div><br>Thanks for the email and the commit link!<br><br></div><div>Sorry for the late reply. I was traveling, and also going through the code which you shared.<br><br></div><div>I believe the implementation of FQ-PIE in FreeBSD matches the proposed ID very closely. I checked the code for the following:<br><br></div><div>1. There is a per queue PIE instance</div><div>2. Implementation of ECN support as described in Section 5.1 of RFC 8033 (<a href="https://datatracker.ietf.org/doc/html/rfc8033#section-5.1">https://datatracker.ietf.org/doc/html/rfc8033#section-5.1</a>)</div><div>3. Use timestamps as a default approach to calculate queue delay instead of Little's Law</div><div>4. The functionality of FQ to be similar to the one used in FQ-CoDel<br><br></div><div>and I found that all of the above are the same as mentioned in the ID. I'll edit the ID and mention this implementation. As of now, the ID mentions two implementations: Linux and ns-3.</div><div><br>Do you have any measurements performed with this implementation? or any other material related to this? I see it mentions that this is a beta implementation, but in case it was used in any real deployment or tested in live networks?<br><br></div><div>Thanks and Regards,</div><div>Mohit P. Tahiliani</div></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Tue, Mar 11, 2025 at 6:51 AM grenville armitage via Bloat <<a href="mailto:bloat@lists.bufferbloat.net">bloat@lists.bufferbloat.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><u></u>

  
    
  
  <div>
    <div>Hi Mohit,<br>
      <br>
      I wonder what you think of the fq-pie developed for FreeBSD back
      in 2015 and merged in May 2016? (commit <a href="https://reviews.freebsd.org/rS300779" target="_blank">here</a>.)  It has
      been too long since I last looked, so would love your thoughts on
      how it aligns (or doesn't) with <a href="https://datatracker.ietf.org/doc/draft-tahiliani-tsvwg-fq-pie/" target="_blank">https://datatracker.ietf.org/doc/draft-tahiliani-tsvwg-fq-pie/</a>?<br>
      <br>
      cheers,<br>
      gja<br>
      <br>
      On 2025-03-11 06:01, Mohit P. Tahiliani via Bloat wrote:<br>
    </div>
    <blockquote type="cite">
      
      <div dir="ltr">Hi all,<br>
        <br>
        I have been working on an Internet Draft on Flow Queue PIE
        (FQ-PIE) [<a href="https://datatracker.ietf.org/doc/draft-tahiliani-tsvwg-fq-pie/" target="_blank">https://datatracker.ietf.org/doc/draft-tahiliani-tsvwg-fq-pie/</a>],
        and recently submitted a revised version.<br>
        <br>
        It has been incorporated into the mainline Linux kernel as a
        queuing discipline (qdisc). Additionally, an implementation of
        FQ-PIE is available in the ns-3 network simulator.<br>
        <br>
        If you have any suggestions or feedback, please let me know.<br>
        <br>
        Thanks and Regards,<br>
        Mohit P. Tahiliani<br>
        <br>
        <div class="gmail_quote">
          <div dir="ltr" class="gmail_attr">---------- Forwarded message
            ---------<br>
            From: <span dir="auto"><<a href="mailto:internet-drafts@ietf.org" target="_blank">internet-drafts@ietf.org</a>></span><br>
            Date: Tue, Mar 4, 2025 at 12:56 AM<br>
            Subject: New Version Notification for
            draft-tahiliani-tsvwg-fq-pie-01.txt<br>
            To: Mohit P. Tahiliani <<a href="mailto:tahiliani@nitk.edu.in" target="_blank">tahiliani@nitk.edu.in</a>><br>
          </div>
          <br>
          <br>
          A new version of Internet-Draft
          draft-tahiliani-tsvwg-fq-pie-01.txt has been<br>
          successfully submitted by Mohit Tahiliani and posted to the<br>
          IETF repository.<br>
          <br>
          Name:     draft-tahiliani-tsvwg-fq-pie<br>
          Revision: 01<br>
          Title:    Flow Queue PIE: A Hybrid Packet Scheduler and Active
          Queue Management Algorithm<br>
          Date:     2025-03-03<br>
          Group:    Individual Submission<br>
          Pages:    8<br>
          URL:      <a href="https://www.ietf.org/archive/id/draft-tahiliani-tsvwg-fq-pie-01.txt" rel="noreferrer" target="_blank">https://www.ietf.org/archive/id/draft-tahiliani-tsvwg-fq-pie-01.txt</a><br>
          Status:   <a href="https://datatracker.ietf.org/doc/draft-tahiliani-tsvwg-fq-pie/" rel="noreferrer" target="_blank">https://datatracker.ietf.org/doc/draft-tahiliani-tsvwg-fq-pie/</a><br>
          HTML:     <a href="https://www.ietf.org/archive/id/draft-tahiliani-tsvwg-fq-pie-01.html" rel="noreferrer" target="_blank">https://www.ietf.org/archive/id/draft-tahiliani-tsvwg-fq-pie-01.html</a><br>
          HTMLized: <a href="https://datatracker.ietf.org/doc/html/draft-tahiliani-tsvwg-fq-pie" rel="noreferrer" target="_blank">https://datatracker.ietf.org/doc/html/draft-tahiliani-tsvwg-fq-pie</a><br>
          Diff:     <a href="https://author-tools.ietf.org/iddiff?url2=draft-tahiliani-tsvwg-fq-pie-01" rel="noreferrer" target="_blank">https://author-tools.ietf.org/iddiff?url2=draft-tahiliani-tsvwg-fq-pie-01</a><br>
          <br>
          Abstract:<br>
          <br>
             This document presents Flow Queue Proportional Integral
          controller<br>
             Enhanced (FQ-PIE), a hybrid packet scheduler and Active
          Queue<br>
             Management (AQM) algorithm to isolate flows and tackle the
          problem of<br>
             bufferbloat.  FQ-PIE uses hashing to classify incoming
          packets into<br>
             different queues and provide flow isolation.  Packets are
          dequeued by<br>
             using a variant of the round robin scheduler.  Each such
          flow is<br>
             managed by the PIE algorithm to maintain high link
          utilization while<br>
             controlling the queue delay to a target value.<br>
          <br>
          <br>
          <br>
          The IETF Secretariat<br>
          <br>
          <br>
        </div>
      </div>
      <br>
      <fieldset></fieldset>
      <pre>_______________________________________________
Bloat mailing list
<a href="mailto:Bloat@lists.bufferbloat.net" target="_blank">Bloat@lists.bufferbloat.net</a>
<a href="https://lists.bufferbloat.net/listinfo/bloat" target="_blank">https://lists.bufferbloat.net/listinfo/bloat</a>
</pre>
    </blockquote>
    <br>
  </div>

_______________________________________________<br>
Bloat mailing list<br>
<a href="mailto:Bloat@lists.bufferbloat.net" target="_blank">Bloat@lists.bufferbloat.net</a><br>
<a href="https://lists.bufferbloat.net/listinfo/bloat" rel="noreferrer" target="_blank">https://lists.bufferbloat.net/listinfo/bloat</a><br>
</blockquote></div>