neqo icon indicating copy to clipboard operation
neqo copied to clipboard

Make sure to buffer all Datagrams that are received in a single UDP datagram

Open ddragana opened this issue 2 years ago • 1 comments

Currently, we only buffer a certain fixed number of datagrams. If a UDP pack contains more HTTP datagrams than we would buffer, we will just drop them without informing the application. We should at least buffer all datagrams received in a single UDP packet and give the application chance to receive them.

ddragana avatar Oct 14 '22 10:10 ddragana

This gets a bit worse in Firefox. In firefox, we will read from a socket multiple times before handling events and datagrams. Considering the current way Firefox uses neqo e will need to allow buffering all datagrams from multiple UDP packets. I think we should fix issue #1218 and also change the Firefox behavior to read Datagrams after each UDP packet is read. I think it is fine to read other events only after all available UDP packets are handled and we should not change that.

ddragana avatar Oct 14 '22 11:10 ddragana