Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve flow control for TCP connections (GRPC example) #185

Open
dtwitty opened this issue Sep 10, 2024 · 1 comment
Open

Improve flow control for TCP connections (GRPC example) #185

dtwitty opened this issue Sep 10, 2024 · 1 comment

Comments

@dtwitty
Copy link

dtwitty commented Sep 10, 2024

I have been following the GRPC example to add chaos testing to my distributed system. The determinism has been extremely nice for reproducing issues! However, I keep running into issues that TCP would generally handle on its own.

I've run into situations like this when setting builder.fail_rate(0.01).repair_rate(0.9):

  1. Client and server do the TCP 3-way handshake
  2. Client sends its request packet, which gets dropped
  3. The packet is never re-sent, but also the link isn't considered broken
  4. The client task hangs until the request deadline hits, and no more packets are sent out

Is this considered normal? Please forgive me if my understanding of TCP is rusty 😅

@mcches
Copy link
Contributor

mcches commented Sep 10, 2024

Unfortunately we don't have the best fidelity yet. There is no re-transmit behavior implemented. I'll group this issue along with similar ones and hopefully we can prioritize this work soon.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants