A program is downloading a large file via HTTPS (50M). It's fast until at some time (~30M) it slows down significantly, never resuming.
From the capture file I see that the receive window gets full, then it reduces to 384 or so. It never resumes. The receive queue is clear as I can see with netstat -npt. This doesn't happen with wget the same URL (no window full; wget downloads smoothly to the end).
I don't understand why the receive window doesn't increase after the data has been read?
Here is the capture file: https://mega.nz/#!el1B3SRR!gERqKWq30xnhTrpIxHwko-MxcUHEehWUyI-3nL9syOk
Here is the program (in Go):
package main
import (
"io/ioutil"
"net/http"
)
func main() {
resp, _ := http.Get("A URL here")
ioutil.ReadAll(resp.Body)
}
This is a Linux box kernel version 4.15.0-1023-aws.