J'ai donc commencé par réaliser des tests, depuis ma ligne SFR FttH 1 Gb/s symétrique, en rajoutant 200 ms via NetEM pour avoir une latence de 204 ms bout en out avec le serveur.
Contenu du fichier /etc/apache2/mods-enabled/http2.conf
<IfModule !mpm_prefork>
Protocols h2 h2c http/1.1
H2WindowSize 16777216
</IfModule>
Serveur Cubic / Latence 204ms / WindowSize serveur 16 Mo / WindowSize client valeur par défaut :- Descendant HTTP/1.1 en clair : curl --http1.1 -o /dev/null
http://bouygues.testdebit.info/1G.iso => 14,2 Mo/s
- Descendant HTTP/1.1 chiffré : curl --http1.1 -o /dev/null
https://bouygues.testdebit.info/1G.iso => 14,0 Mo/s
- Descendant
HTTP/2 en clair : curl --http2 -o /dev/null
http://bouygues.testdebit.info/1G.iso => 14,2 Mo/s
- Descendant HTTP/2 chiffré : curl --http2 -o /dev/null
https://bouygues.testdebit.info/1G.iso => 14,1 Mo/s
- Montant HTTP/1.1 en clair : curl --http1.1 -o /dev/null -F "file=@/tmp/temp.iso"
http://bouygues.testdebit.info/ul/ => 10,3 Mo/s
- Montant HTTP/1.1 chiffré : curl --http1.1 -o /dev/null -F "file=@/tmp/temp.iso"
https://bouygues.testdebit.info/ul/ => 9,89 Mo/s
- Montant
HTTP/2 en clair : curl --http2 -o /dev/null -F "file=@/tmp/temp.iso"
http://bouygues.testdebit.info/ul/ => 10,2 Mo/s
- Montant HTTP/2 chiffré : curl --http2 -o /dev/null -F "file=@/tmp/temp.iso"
https://bouygues.testdebit.info/ul/ =>
0,687 Mo/sLes résultats sont mauvais, j'impute ça sur la WindowSize de mon client, un Ubuntu 22.10 avec les paramètres par défaut. Je monte donc la WindowSize du client à 16 Mo, comme sur le serveur :
Serveur Cubic / Latence 204ms / WindowSize serveur 16 Mo / WindowSize client 16 Mo :- Descendant HTTP/1.1 en clair : curl --http1.1 -o /dev/null
http://bouygues.testdebit.info/1G.iso => 19,0 Mo/s
- Descendant HTTP/1.1 chiffré : curl --http1.1 -o /dev/null
https://bouygues.testdebit.info/1G.iso => 17,9 Mo/s
- Descendant
HTTP/2 en clair : curl --http2 -o /dev/null
http://bouygues.testdebit.info/1G.iso => 18,8 Mo/s
- Descendant HTTP/2 chiffré : curl --http2 -o /dev/null
https://bouygues.testdebit.info/1G.iso => 20,1 Mo/s
- Montant HTTP/1.1 en clair : curl --http1.1 -o /dev/null -F "file=@/tmp/temp.iso"
http://bouygues.testdebit.info/ul/ => 17,8 Mo/s
- Montant HTTP/1.1 chiffré : curl --http1.1 -o /dev/null -F "file=@/tmp/temp.iso"
https://bouygues.testdebit.info/ul/ => 17,2 Mo/s
- Montant
HTTP/2 en clair : curl --http2 -o /dev/null -F "file=@/tmp/temp.iso"
http://bouygues.testdebit.info/ul/ => 21,5 Mo/s
- Montant HTTP/2 chiffré : curl --http2 -o /dev/null -F "file=@/tmp/temp.iso"
https://bouygues.testdebit.info/ul/ =>
0,616 Mo/sModification des paramètres serveur
H2StreamMaxMemSize 65536 => H2StreamMaxMemSize 16777216Contenu du fichier /etc/apache2/mods-enabled/http2.conf
<IfModule !mpm_prefork>
Protocols h2 h2c http/1.1
H2WindowSize 16777216
H2StreamMaxMemSize 16777216
</IfModule>
- Descendant
HTTP/2 en clair : 18,8 Mo/s => 21,2 Mo/s (résultats très proches vu les variations de débit en Cubic)
- Descendant HTTP/2 chiffré : 20,1 Mo/s => 19,5 Mo/s (résultats très proches vu les variations de débit en Cubic)
- Montant
HTTP/2 en clair : 21,5 Mo/s => 21,4 Mo/s (résultats très proches vu les variations de débit en Cubic)
- Montant HTTP/2 chiffré : 0,616 Mo/s => 2,44 Mo/s