-
Notifications
You must be signed in to change notification settings - Fork 322
Description
hi, i want to discuss about Gradient2Limit in stable timeout situtation.
I use Gradient2Limit at consumer side (to control the consumer's rate to avoid bursting the provider side)
First, what is stable timeout situtation ?
In my situtation , every consumer has set a client timeout , like 5000ms. the stable timeout situtation is :
1. provider is bursted by other consumer which doesn't hava any rate limit.
2. and the consumer which i use Gradient2Limit always received the same timeout rtt `5000ms`, i call it as a `stable timeout` situtation
Once my consumer which used Gradient2Limit step in stable timeout situtation, the Gradient2Limit will not take effect.
It because Gradient2Limit only care about the volatility of rtt . if rtt has zero volatility, such like stable timeout situtation, Gradient2Limit will grow its limit output until Max_Limit.
So, how could i deal with this situtation? can we make Gradient2Limit to support this situtation?
Now i consider using BBR algorithm to implement a new Limit to resolve it.
Anyone has met the same situtation? how do you deal with it?