dotnet / dotNext

Next generation API for .NET
https://dotnet.github.io/dotNext/
MIT License
1.64k stars 123 forks source link

TCP transport: request timeout if Frame header is fragmented #186

Closed sakno closed 1 year ago

sakno commented 1 year ago

Raft client for TCP encounters timeout if protocol Frame header is fragmented when transmitting over the wire. This leads to incorrect adjustment of internal buffer size and stream waits for extra data which doesn't come.

sakno commented 1 year ago

cc @freddyrios

freddyrios commented 1 year ago

Can it lead to repeated timeouts for say 20 seconds? We had such repeated timeouts on a system, but it is unclear if th 20 seconds were purely due to energy efficient ethernet issues with Compute Module 4 or a mix of that + some bug.

sakno commented 1 year ago

Yes, it could lead to random timeouts. But it depends on the size of transmitted data, not the time.