A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | AA | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Method: Manual source code review between May 1 and May 8 2020. Initial windows experimentally confirmed via our 0-RTT tests where applicable. | ||||||||||||||||||||||||||
2 | Elements marked in orange deviate from IETF QUIC recommendations | ||||||||||||||||||||||||||
3 | Implementation | Repo URL | Language | Congestion Control Algorithm(s) | max_datagram_size | k_initial_window | Initial k_minimum_window | k_loss_reduction_factor | Pacing? | Hystart? | |||||||||||||||||
4 | aioquic | https://github.com/aiortc/aioquic | Python 3 | New Reno | 1280 | 12800 | 2560 | 0,5 | TRUE | TRUE | |||||||||||||||||
5 | |||||||||||||||||||||||||||
6 | Total implementation count: 15 | ||||||||||||||||||||||||||
7 | Haskell quic | https://github.com/kazu-yamamoto/quic | Haskell | None | FALSE | FALSE | |||||||||||||||||||||
8 | Cubic | litespeed, mvfst, picoquic, quiche, quic-go, google | 7/15 | ||||||||||||||||||||||||
9 | New Reno | 9/15 | |||||||||||||||||||||||||
10 | LiteSpeed QUIC | https://github.com/litespeedtech/lsquic | C | Cubic [default] | 1460 | 46720 | TRUE | FALSE | BBR | 4/15 | |||||||||||||||||
11 | BBR | 1460 | 46720 | 5840 | TRUE | FALSE | Others like COPA | 3/15 | |||||||||||||||||||
12 | |||||||||||||||||||||||||||
13 | msqquic | https://github.com/microsoft/msquic | C | Cubic | 1280 | 12800 | 2560 | TRUE | FALSE | 8/15 | |||||||||||||||||
14 | |||||||||||||||||||||||||||
15 | mvfst | https://github.com/facebookincubator/mvfst | C++ | New Reno IPv4 | 1252 | 12520 | 2504 | 0,5 | FALSE | FALSE | |||||||||||||||||
16 | Cubic IPv4 [default] | 1252 | 12520 | 2504 | 0,8 | TRUE | TRUE | ||||||||||||||||||||
17 | Copa IPv4 | 1252 | 12520 | 2504 | TRUE | FALSE | |||||||||||||||||||||
18 | BBR IPv4 | 1252 | 12520 | 5008 | TRUE | FALSE | |||||||||||||||||||||
19 | |||||||||||||||||||||||||||
20 | New Reno IPv6 | 1232 | 12320 | 2464 | 0,5 | FALSE | FALSE | ||||||||||||||||||||
21 | Cubic IPv6 [default] | 1232 | 12320 | 2464 | 0,8 | TRUE | TRUE | 13 | 10/15 | ||||||||||||||||||
22 | Copa IPv6 | 1232 | 12320 | 2464 | TRUE | FALSE | |||||||||||||||||||||
23 | BBR IPv6 | 1232 | 12320 | 4928 | TRUE | FALSE | |||||||||||||||||||||
24 | |||||||||||||||||||||||||||
25 | Neqo | https://github.com/mozilla/neqo | Rust | New Reno [guess] | 1337 | 13370 | 2674 | 0,5 | TRUE | FALSE | |||||||||||||||||
26 | |||||||||||||||||||||||||||
27 | ngtcp2 | https://github.com/ngtcp2/ngtcp2 | C, C++ | New Reno [guess] | 1200 | 12000 | 2400 | 0,5 | FALSE | FALSE | |||||||||||||||||
28 | |||||||||||||||||||||||||||
29 | picoquic | https://github.com/private-octopus/picoquic | C | New Reno [default] | 1536 | 15360 | 3072 | 0,5 | TRUE | TRUE | |||||||||||||||||
30 | Cubic | 1536 | 15360 | 3072 | TRUE | TRUE | |||||||||||||||||||||
31 | BBR | 1536 | 15360 | 3072 | TRUE | TRUE | |||||||||||||||||||||
32 | Fast TCP | 1536 | 15360 | 3072 | TRUE | TRUE | |||||||||||||||||||||
33 | |||||||||||||||||||||||||||
34 | quant | https://github.com/NTAP/quant | C | New Reno IPv4 [guess] | 1252 | 12520 | 2504 | 0,5 | FALSE | FALSE | |||||||||||||||||
35 | New Reno IPv6 [guess] | 1232 | 12320 | 2464 | 0,5 | FALSE | FALSE | ||||||||||||||||||||
36 | |||||||||||||||||||||||||||
37 | quiche [cloudflare] | https://github.com/cloudflare/quiche | Rust | Reno | 1452 | 14520 | 2904 | 0,5 | FALSE | TRUE | |||||||||||||||||
38 | Cubic [default] | 1452 | 14520 | 2904 | FALSE | TRUE | |||||||||||||||||||||
39 | |||||||||||||||||||||||||||
40 | quicly | https://github.com/h2o/quicly | C | Reno [maybe New Reno?] | 1472 | 14720 | 2944 | 0,7 | FALSE | FALSE | |||||||||||||||||
41 | |||||||||||||||||||||||||||
42 | quincy | https://github.com/protocol7/quincy | Java | None | FALSE | FALSE | |||||||||||||||||||||
43 | |||||||||||||||||||||||||||
44 | quinn | https://github.com/djc/quinn | Rust | New Reno [Guess] | 1200 | 12000 | 2400 | 0,5 | FALSE | FALSE | |||||||||||||||||
45 | |||||||||||||||||||||||||||
46 | quic-go | https://github.com/lucas-clemente/quic-go | go | Cubic | 1252 | 40064 | 2504 | TRUE | TRUE | ||||||||||||||||||
47 | |||||||||||||||||||||||||||
48 | quiche [google] | https://quiche.googlesource.com/quiche/ | C++ | Cubic | 1460 | 2920 | FALSE | FALSE | |||||||||||||||||||
49 | BBR | 1460 | 46720 | 5840 | TRUE | FALSE | |||||||||||||||||||||
50 | BBRV2 | 1460 | 46720 | 5840 | TRUE | FALSE | |||||||||||||||||||||
51 | PRR | FALSE | FALSE | ||||||||||||||||||||||||
52 | TCP Cubic | TRUE | TRUE | ||||||||||||||||||||||||
53 | |||||||||||||||||||||||||||
54 | |||||||||||||||||||||||||||
55 | |||||||||||||||||||||||||||
56 | |||||||||||||||||||||||||||
57 | |||||||||||||||||||||||||||
58 | |||||||||||||||||||||||||||
59 | |||||||||||||||||||||||||||
60 | |||||||||||||||||||||||||||
61 | |||||||||||||||||||||||||||
62 | |||||||||||||||||||||||||||
63 | |||||||||||||||||||||||||||
64 | |||||||||||||||||||||||||||
65 | |||||||||||||||||||||||||||
66 | |||||||||||||||||||||||||||
67 | |||||||||||||||||||||||||||
68 | |||||||||||||||||||||||||||
69 | |||||||||||||||||||||||||||
70 | |||||||||||||||||||||||||||
71 | |||||||||||||||||||||||||||
72 | |||||||||||||||||||||||||||
73 | |||||||||||||||||||||||||||
74 | |||||||||||||||||||||||||||
75 | |||||||||||||||||||||||||||
76 | |||||||||||||||||||||||||||
77 | |||||||||||||||||||||||||||
78 | |||||||||||||||||||||||||||
79 | |||||||||||||||||||||||||||
80 | |||||||||||||||||||||||||||
81 | |||||||||||||||||||||||||||
82 | |||||||||||||||||||||||||||
83 | |||||||||||||||||||||||||||
84 | |||||||||||||||||||||||||||
85 | |||||||||||||||||||||||||||
86 | |||||||||||||||||||||||||||
87 | |||||||||||||||||||||||||||
88 | |||||||||||||||||||||||||||
89 | |||||||||||||||||||||||||||
90 | |||||||||||||||||||||||||||
91 | |||||||||||||||||||||||||||
92 | |||||||||||||||||||||||||||
93 | |||||||||||||||||||||||||||
94 | |||||||||||||||||||||||||||
95 | |||||||||||||||||||||||||||
96 | |||||||||||||||||||||||||||
97 | |||||||||||||||||||||||||||
98 | |||||||||||||||||||||||||||
99 | |||||||||||||||||||||||||||
100 |