3 ms·
While I understand and agree with what you said, HTTP 2 still runs on top of TCP, which means that when you lose a packet, subsequent packets belonging to other
by kartickv 10y ago
While I understand and agree with what you said, HTTP 2 still runs on top of TCP, which means that when you lose a packet, subsequent packets belonging to other responses can't be delivered to the application layer, even though there's no reason to delay them. TCP's strict byte order semantics is the problem.
If only the HTTP/2 implementation on the receiving side could tell the underlying TCP stack that it wants to opt out of byte order semantics and to deliver data as it's available. That will decrease latency while not requiring any protocol changes on the sending side.
- JelteF 10y agoThis is one of the advantages of the QUIC protocol [1]. Which basically implements what you're saying over UDP. [1]: https://en.wikipedia.org/wiki/QUIC https://en.wikipedia.org/wiki/QUIC