XIU2 / CloudflareSpeedTest

🌩「自选优选 IP」测试 Cloudflare CDN 延迟和速度,获取最快 IP !当然也支持其他 CDN / 网站 IP ~
GNU General Public License v3.0
19.28k stars 3.76k forks source link

能否限定下载队列 #463

Open Whichbfj28 opened 10 months ago

Whichbfj28 commented 10 months ago

功能需求

—————————————————————————————————— 开始延迟测速(模式:TCP, 端口:443, 范围:100 ~ 170 ms, 丢包:1.00) 5955 / 5955 [----------------------------------------------------] 可用: 3102 开始下载测速(下限:5.00 MB/s, 数量:10, 队列:689) 1 / 10 [----↗____] IP 地址 已发送 已接收 丢包率 平均延迟 下载速度 (MB/s) 104.18.187.37 4 4 0.00 169.96 10.58 ——————————————————————————————————

1、可用:3102改为【没超时IP:3102】。这样可能更方便理解 2、3102个IP根据延迟筛选后。有测速队列689个。我想找到10个。实际上只有一个。是不是这样理解。那么我能不能限定下测速队列。我不需要那么多都去测速。我只需要按照延迟最低的排序后测试20个就行了。

预期目标

1、可用:3102改为【没超时IP:3102】。这样可能更方便理解 2、3102个IP根据延迟筛选后。有测速队列689个。我想找到10个。实际上只有一个。是不是这样理解。那么我能不能限定下测速队列。我不需要那么多都去测速。我只需要按照延迟最低的排序后测试20个就行了。【这样测速才会比较快。不然一个一个测速过去。太久了】

XIU2 commented 10 months ago
  1. 不考虑,你提的这个太长了
  2. 测速全部 5955 个 IP 后,有 3102 个测试通过未超时,按延迟/丢包排序后根据延迟条件(100 ~ 170 ms)过滤后只剩下 689 个满足延迟要求的 IP,然后开始对这 689 个挨个进行测速(从最低延迟的开始),挨个测速完这所有 689 个 IP 后,只有 1 个 IP 满足下载速度要求(5.00 MB/s)。

如果你不想遇到这种全部测速一遍都没几个满足条件的情况,那么你就调低下载速度上限参数 -sl,或者直接取消该条件。

移除 -sl 5 并添加 -dn 20 参数,这样就是只测速延迟最低的前 20 个 IP,测速完就停止。

而只要指定了 -sl 参数,那么只要没有凑够 -dn 的数量(默认 10 个),就会一直测速下去,直到凑够或全部测速完。

你只需要知道,测速条件不是固定的,是需要你自行测试调整的,根据你的网络情况来调高/调低测速条件,有的人可能随便指定个苛刻的条件就能筛选出一大堆优质 IP,有的可能就象你这样找个 5 MB/s 以上速度的都费劲。

因此,你这种情况,就要根据测速结果来调整条件数值,不断的降低预期条件,这样才能尽可能的找到合适的 IP。


针对这种情况,我也做过一些细节功能,比如 可用: 3102队列:689,这两个数值可以让你清楚,你设置的延迟条件对你来说是否过于苛刻,可用 IP 一大堆,过滤后只剩下 2、3 个,那不用说就知道要调低预期延迟/丢包条件了。

还有比如,如果全部队列 IP 都测速完了,但一个满足下载速度条件的 IP 都没找到,那么就会直接输出全部队列 IP 的下载测速结果,这样你就能看到这些 IP 的下载速度都有多少,心里就有数了,然后适当调低 -sl 再试试。

这两个机制,一个是告诉你延迟条件是否合适的,一个是告诉你下载速度条件是否合适的。

Whichbfj28 commented 10 months ago

OK。我了解了。多谢。