hyper icon indicating copy to clipboard operation
hyper copied to clipboard

hyper HTTP2 slower than hyper HTTP1 on top of MPTCP

Open deshmukhrajvardhan opened this issue 7 years ago • 3 comments

Problem

Using hyper HTTP1 and HTTP2 on top of mptcp using 2 interfaces on client and 2 on server end (Can share some steps to set it up if needed) to download files from a server caddy 0.10. hyper HTTP1 downloads the files faster (at iperf tcp measured end-to-end bandwidth) than HTTP2 check the pcap files.

Probable source of problem

Although I am using 1 stream over HTTP2 in my case, the infrastructure provided by hyper HTTP2 to have multiple-streams could have overhead while reading from 2 interfaces into the buffer. Any other insights are welcome.

Other HTTP2 client tried

curl with http2, also performs faster than hyper HTTP2

Code used

hyper HTTP2 client script to download file hyper HTTP1 client script to download file curl HTTP2 client script to download file

Dependancies

caddy 0.10 use Caddyfile. run: ./caddy -http2 -log a.log Installing curl http2 using curl HTTP2 due need to observe data chunks as they are downloaded we made small modification to hyper HTTP1

Extra info

Can send pacp files for the 2 interfaces used if necessary (for curl HTTP2, hyper HTTP1 and hyper HTTP2)

deshmukhrajvardhan avatar Jul 10 '18 23:07 deshmukhrajvardhan

Hi All, Can you please give me some feedback on if you need me to better document/ask the question? Or give me hints on who to approach?

Thanks, Raj

deshmukhrajvardhan avatar Jul 17 '18 14:07 deshmukhrajvardhan

I wouldn't assume mptcp has any anything to do with it. I've noticed in a load testing script that it takes nearly twice as long to download a test resource using HTTP2 as it does using HTTP/1.1 on a totally stock Ubuntu install.

alangibson avatar Sep 14 '18 20:09 alangibson

Hi @alangibson I have switched to using a c++ based application using libcurl library and it is giving me good (expected) performance.

deshmukhrajvardhan avatar Sep 23 '18 22:09 deshmukhrajvardhan