[WireGuard] WireGuard ECN Implementation

Jason A. Donenfeld Jason at zx2c4.com
Fri Sep 30 18:34:30 CEST 2016


On Thu, Sep 29, 2016 at 10:03 PM, Dave Taht <dave.taht at gmail.com> wrote:
> Now... as for the other stuff in that blog entry (I never got around
> to writing parts II and III), I am curious as to your raw PPS with
> small packets presently, and if you've figured out how to apply
> fq_codel internally yet? :-P

I haven't looked deeply into it yet, but one thing that makes me a bit
hesitant is that fq_codel does flow classification. WireGuard uses a
separate queue for each peer, so that it can start and stop it
independently depending on the state of various crypto handshake
things. This also means that each queue only has one flow.
Furthermore, flow classification is usually done because different
endpoints have different latencies. But in this case, the latency
isn't a factor of which endpoint, but rather of the CPU doing the
encryption/decryption operation. So, I'm not yet sure precisely how to
conceptualize fitting fq_codel over WireGuard.


More information about the WireGuard mailing list