-
Notifications
You must be signed in to change notification settings - Fork 11
Performance drop over time #199
Comments
Updates 02.09.2018Found some bugs in the ingress server implementation. One of these bugs should be the cause of this issue. @lbarman @italod @stevens-leblond @aledcuevas Recap:
Bugs:
The generated random ID is a string from an integer, for example, "3503164205", "1433617593", etc.
Basically there are only 9 * 10 * 10 * 10 = 9000 possible IDs, and the duplication occurs very often.
Summary:The probability that the Bug 2 is the root of this "performance drop" issue is very high. |
Thanks a lot @junchen108 for the analysis. I will try to confirm |
Each connection has its own randomID generated by sampling 32 random bits (one
Well perharps there's another bug here, but BTW it seems that |
@lbarman Hi, thanks for looking at this. The randomID is generated by sampling 32 random bit, this is true.
But this function returns the Then
For instance, if random Hence, I think there are only 9000 possibilities. (1-9, 0-9, 0-9, 0-9) It will work, if we don't do |
Right, nice catch ! I let you do the change since you're already working on the 1st point you mentioned. |
ok! |
There is one more thing that I want to do. This is not ideal, because if there are only two clients that generate two same IDs, a collision occurs again. To avoid this problem, EG should track the connections in its own way. |
After having PriFi running for 45 to 60 minutes, we can usually experience some performance drop on the client side, which results
Restart PriFi on the client can fix the problem.
One of the potential roots of the issue is the ingress server. The following logs show (already after a long period of execution),
The text was updated successfully, but these errors were encountered: