使用方法
下载时间计算器把「多大的文件、多快的网」换成一句「还要等几分钟」,五步就能读完:
- 「文件大小」填你要下的文件体积,演示值 8;后面「文件单位」选 MB、GB 或 TB,演示值选 GB。
- 「带宽」填运营商或测速网站给的速率,单位是 Mbps(兆比特每秒),演示值 50。注意不要填成下载工具里显示的 MB/s,两者差 8 倍。
- 「实际带宽利用率」按经验设:家庭宽带晚高峰常掉到 90% 甚至更低,专线或内网可以设 95~100。演示值取 90。
- 「小数位」设 0~4,默认 2;点「计算下载耗时」,或在任一输入框里按 Enter 键,四张卡片立刻刷新。
- 想还原演示值按「载入示例」:8 GB、50 Mbps、90%、2 位小数,四张卡片会回到 24 分 16 秒那一组。
下载时间计算器能解决什么
它解决「进度条上没有剩余时间」和「要不要现在开始下」这两个具体问题,适合三类场景:
- 要不要睡前挂机:8 GB 的蓝光镜像在 50 Mbps、利用率 90% 下要 24.27 分钟,若家里只有 10 Mbps,对照表第 1 行给出 121.36 分钟,超过两小时,就得改成睡前挂机而不是干等。
- 选带宽套餐:同一份 8 GB 文件,100 Mbps 是 12.14 分钟、300 Mbps 是 4.05 分钟、1000 Mbps 是 1.21 分钟。把三行摆在一起,能直接看出「从 100 提到 300 省下 8 分钟,从 300 提到 1000 只再省 2.8 分钟」,加钱升级的边际收益递减。
- 给同事一个准信:把算出的「24 分 16 秒」贴进群聊,比说「一会儿就好」靠谱;平均吞吐 5.63 MB/s 还能帮对方核对下载工具显示的速度是否异常。
本页不做的事:不预测真实网络抖动(无线信号、跨运营商、服务器限速都会让实际值偏长);不算断点续传或多线程加速的收益;不区分上行与下行。需要的是「按固定速率的理论下限」,实际耗时只会比它长,不会比它短。
原理和变量
① 用了哪个具体函数:整式为 sec = mbit / (bw * eff / 100),其中 mbit = size * 1024 * 8(GB 口径)。页面只用 JavaScript 四则运算与两个内置函数:Number(v.toFixed(d)) 负责按小数位收尾,Math.floor 负责把总秒数拆成时、分、秒三段。没有引入任何第三方库。
② 关键参数为什么这样取:利用率默认值取 90 而不是 100,是因为标称带宽是物理层速率,TCP 握手、丢包重传、TLS 加密与对端限速都会吃掉一部分,90% 是家庭宽带的经验中位;文件换算用 1024 而不是 1000,是因为下载工具和操作系统按 1024 进制显示剩余量,用 1024 才能和你在进度条上看到的数字对上,两者相差约 7%。
③ 遵循哪个标准:带宽单位 Mbps 指兆比特每秒(小写 b),文件单位 GB 指吉字节(大写 B),1 字节等于 8 比特,这是 IEEE 1541 与电信业的通用约定;浮点运算遵循 IEEE 754 双精度,中间量不做任何提前截断,只在最后一步按小数位收尾。
④ 输入怎么变成输出:演示值 8 GB 先换成比特:8 × 1024 × 8 = 65536 Mbit;有效带宽 50 × 0.90 = 45 Mbps;秒数 65536 ÷ 45 = 1456.3556,按 2 位小数收尾为 1456.36 秒;分钟 1456.3556 ÷ 60 = 24.2726,收尾为 24.27 分钟;拆成时分秒即 0 时 24 分 16 秒;平均吞吐 8192 MB ÷ 1456.3556 s = 5.625,收尾为 5.63 MB/s,也等于 45 ÷ 8。
⑤ 边界与阈值:文件大小允许 0.001~100000,带宽 0.1~10000 Mbps,利用率 50~100,小数位 0~4,默认 2。文件为 0、带宽为 0 或留空都会被拦下并提示具体字段——带宽为 0 时除数为零,直接算会得到 Infinity,属于必须挡住的非法输入。
⑥ 常见误用的正确解释:把 Mbps 当 MB/s 填会让结果快 8 倍(50 Mbps 实际只有 6.25 MB/s);把硬盘标签上的「8 GB」(1000 进制)当成下载工具里的 8 GB(1024 进制)会差约 7%;把多个并行任务的耗时相加是错的,它们共享同一条总带宽,正确做法是把总文件体积一起算;利用率设 100 得到的是理论下限,不要拿它当承诺。
完整示例(数值仅作演示)
保持演示值:文件大小 8 GB、带宽 50 Mbps、利用率 90%、小数位 2。
- 第一步,文件换算成兆比特:8 × 1024 × 8 = 65536 Mbit。
- 第二步,算有效带宽:50 × 90 ÷ 100 = 45 Mbps。
- 第三步,算秒数:65536 ÷ 45 = 1456.3556,收尾为 1456.36 秒。
- 第四步,算分钟:1456.3556 ÷ 60 = 24.2726,收尾为 24.27 分钟,即时分秒的 24 分 16 秒。
- 第五步,算平均吞吐:8192 ÷ 1456.3556 = 5.625,收尾为 5.63 MB/s。
这五组数字与页面默认卡片、对照表第 5 行(带宽 50)完全一致,可以三处互相对一遍。
输入范围与对照表
下载时间计算器的对照表固定文件 8 GB、利用率 90%,前 12 行改变带宽,后 4 行补上 150、400、600、2000 Mbps 四档;耗时与平均吞吐都按上面的公式算出。
| 带宽(Mbps) | 有效带宽(Mbps) | 耗时(秒) | 耗时(分钟) | 平均吞吐(MB/s) |
|---|---|---|---|---|
| 10 | 9.0 | 7281.78 | 121.36 | 1.13 |
| 20 | 18.0 | 3640.89 | 60.68 | 2.25 |
| 25 | 22.5 | 2912.71 | 48.55 | 2.81 |
| 30 | 27.0 | 2427.26 | 40.45 | 3.38 |
| 50(演示值) | 45.0 | 1456.36 | 24.27 | 5.63 |
| 100 | 90.0 | 728.18 | 12.14 | 11.25 |
| 200 | 180.0 | 364.09 | 6.07 | 22.50 |
| 300 | 270.0 | 242.73 | 4.05 | 33.75 |
| 500 | 450.0 | 145.64 | 2.43 | 56.25 |
| 800 | 720.0 | 91.02 | 1.52 | 90.00 |
| 1000 | 900.0 | 72.82 | 1.21 | 112.50 |
| 1500 | 1350.0 | 48.55 | 0.81 | 168.75 |
| 150 | 135.0 | 485.45 | 8.09 | 16.88 |
| 400 | 360.0 | 182.04 | 3.03 | 45.00 |
| 600 | 540.0 | 121.36 | 2.02 | 67.50 |
| 2000 | 1800.0 | 36.41 | 0.61 | 225.00 |
对照表能直观看出「带宽翻倍、耗时减半」的反比关系:10 Mbps 是 121.36 分钟,20 Mbps 正好是 60.68 分钟;但从 1000 提到 2000 只省 0.6 分钟,边际收益已经很小。
结果边界和舍入
舍入位置:秒、分钟、平均吞吐三项都按「小数位」输入框保留(默认 2 位,Number(v.toFixed(d)))。因为先收尾再拼接,演示值不会显示成 1456.3599999999 这样的浮点尾巴。时分秒卡片只对整数秒做拆分,不参与小数位设置。
什么时候会拒绝计算:文件大小为空、不是数字、≤0 或超过 100000 时;带宽为空、不是数字、≤0 或超过 10000 时;利用率不在 50~100 时;小数位不在 0~4 时。每种情况都会点名具体字段并给出可填范围,不会静默归零。
单位和精度:文件单位只影响换算系数(MB 乘 8、GB 乘 8192、TB 乘 8388608),不影响输出单位;吞吐统一用 MB/s 显示,若要换成 Mbps,把数值乘 8 即可(5.63 MB/s 约等于 45 Mbps)。
结果性质:这是定速率下的理论下限,没算握手、丢包重传、无线衰减与服务器限速,只能作排期与选型参考,不能当服务承诺。
常见问题
Mbps 和 MB/s 差多少?
差 8 倍。Mbps 是兆比特每秒,MB/s 是兆字节每秒,1 字节等于 8 比特。50 Mbps 的带宽理论最高吞吐是 50 ÷ 8 = 6.25 MB/s,再乘 90% 利用率就是演示值里的 5.63 MB/s。
利用率该填多少?
家庭宽带晚高峰填 85~90,白天可以填 95;企业专线或内网传文件填 95~100。不确定的话先看下载工具稳定后的速度,反推比例,演示值用的是 90。
为什么算出来比实际快?
因为公式假设带宽恒定且独占。实际下载会被服务器限速、Wi-Fi 衰减、丢包重传和同时上网的其他设备拖慢。把利用率调低(例如 70)能让估算更接近真实。
能算上传要多久吗?
能,只要把「带宽」填成上行速率即可。宽带上下行通常不对称,例如 100 Mbps 下行配 20 Mbps 上行,上传同一个 8 GB 文件要 60.68 分钟,是下行的 5 倍。
多个文件一起下怎么算?
把它们的体积相加后一次算。逐个算再相加是错的,因为并行任务共享总带宽;8 GB 加 2 GB 在 50 Mbps 下应按 10 GB 算,得到 30.34 分钟,而不是各自算完再加。
用 1000 还是 1024 进制?
本页用 1024,与下载工具、操作系统显示一致。硬盘包装上标的容量用 1000 进制,所以标称 8 GB 的盘在系统里大约只显示 7.45 GB,两者差约 7%,属于正常现象。
带宽填 0 会怎样?
会被拦下。带宽为 0 时除数为零,直接算会得到 Infinity,所以页面会提示「带宽」必须在 0.1~10000 Mbps 之间,不会给出 Infinity 或 NaN。
我的输入会被上传吗?
不会。全部计算在浏览器内完成,刷新即清空;可以在 Network 面板复查,点「计算下载耗时」时没有任何请求发出。