Open psionic12 opened 3 years ago
We don't really support network migration yet (e.g. we don't probe/validate new paths), but in your specific case I think there might be something else going on with your application, as you wouldn't see the "invalid packet" error even if the migration happened.
Hi @ghedo, So what is the expected behavior (for now) in the case I mentioned above? Does the server just ignore my packet which is sent from the new UPD socket, and my client never receive a response?
According to the doc:
Does the UDP socket changes counts "network path changed"? Since the Quiche API do not need a socket fd to passed in, I guess Quiche connection is dependent with sockets.
Then I did a test: First I create a Quiche+H3 connection and sending requests, it works well. Then before the connection closed, I create a new socket, and send requests with this new one.
But each time I tried this, the library said:
it considered my requests as invalid packet. I tried calling
on_timeout()
(sinceon_timeout()
does the recovery jobs) after creating a new socket, but still not working.So what is the proper way to do this?
P.S. re-use Quiche connection while socket changing is extremely useful, in case a user's network changes from 4G to Wifi.