-
Notifications
You must be signed in to change notification settings - Fork 468
Description
For now, lha
was judged right behind the interval checked was done, this behavior has some flaws:
Suppose we have multiple nodes A, B, C, D, the A node have the smallest elapsed
from 1 check, glider
choice A as winner
node now. But in fact, node B(or C D) may be faster than node A most of the time.
This situation often occurs on routes from mainland China to overseas,Shorter the checkinterval
and Bigger the checktolerance
may improve the flaws but not perfect.
How about check continuously(let's call inner-check
here) during checkinterval
,then next checkinterval
will use the average elapsed
value as winner
.
For checkinterval=3600
i mostly used, let inner-check=60
, we will get the the very fair result from the past 1 hour.
For glider
first start, old way is fine if we have no result cache to use.