CPU|软路由怎么选?软路由越贵越好?上网软路由硬件选择( 二 )


面对硬盘我们的第一反应就是读写速度和容量 , X86的软路由目前使用最多的是mSATA的固态硬盘 , 而ARM的软路由现在使用的是TF卡当作硬盘 , mSATA它还能说得过去TF卡的读写速度 , 岂不是很垃圾?
那我们做个测试 , 我们用ARM架构的R2S硬盘用的就是这个 TF卡 , 我们测速一下试试 , 也就是看看软路由在工作的时候对硬盘的读写频率是什么样的?
右边这个窗口是软路由的系统性能 , 实时监控最左边的这两个圈分别代表着硬盘的读写 。


可以看到CPU的使用量在变 , 而硬盘的读写却没什么动静 , 这就说明了软路由在转发数据时完全是靠CPU , 硬盘的读写频率非常低 , 这主要是因为软路由系统启动后 , 必要的应用进程都运行在内存中 , 硬盘只是在系统启动引导保存配置 , 读取交换分区和缓存时会有读写 。好在这些数据量都不大 , 即便你用上NVMe的SSD , 你也感觉不出有什么太大的变化 。 所以硬盘读写速度会影响软弱的性能吗?
无论是TF卡当作硬盘还是mSATA的硬盘都不会影响软路由的速度(网速) , 毕竟软路又不是NAS , 不会对硬盘频繁的读写 。 至于硬盘的容量大小选择 , 软路由系统其实并不需要太大 , 一般两个G就完全够用了 , 虚拟机用户就看需求了 , 反正我的虚拟环境120G都不够用 。 接下来就是内存了 , 市面上现在的软路由内存使用都是DDR4的内存颗粒 , X86直接使用的就是笔记本内存频率都差不多 , 现在的手机内存都6G起步了 。
软路由到底需要多少内存?软路由我们使用最多的系统就是OpenWRT , OpenWRT作为嵌入式的Linux , 其实对内存的要求十分的低 , 看看我自己的日常的内存使用量 , 现在这台ARM的设备内存1G , 使用了100多M , 还有很大部分的空闲 , 再看看X86的 , 这台软路由有16G内存 , OpenWRT是装在虚拟环境下的 , 我也只给他分配了1G内存 , 我们看看实际使用了多少 , 最后发现才200多 , 虽然比ARM的多了一些 , 但是1G也是够用的 。
但我们还有一个传统的认知 , 内存越大 速度越快 , 真的是这样吗?对软路由也适用吗?我们来做个测试 , 这两台软路由都是ARM的R4S , 但是内存大小不一样 , 一个是1G一个是4G 。 我们来测试一下速度感受一下不一样的内存 , 是否速度表现 。



可以看到两台设备的速度几乎一样 , 1G内存和4G内存的速度没什么差别 。 所以对软路由来说 , 在内存已经够用的情况下 , 更多的内存并不会提升速度 。
所以最终结论日常使用Openwrt , 1G内存就够 , 内存多了并不会提升速度(网速) , 如果你想在软路由上玩虚拟环境 , 那就另说了 , 虚拟平台PVE的内存要求低一些 , 但ESXI需要8G内存才能安装 , 说完了网卡内存硬盘 , 似乎对软路由的网络速度都没有什么影响 。
接下来CPU可以说是软路由种最重要的一个硬件设备 , CPU它对网速是绝对的影响 , CPU也决定着软路由的价格 , 选择软路由可以说就是在选择CPU , 最早软路由的CPU我们没得选 , 只能用X86的 , 现在又多了一个选择 , 就是ARM的 , 所以转路由的CPU是选ARM还是X86?这就要看你是否需要虚拟环境了 。

你要玩虚拟机不用说肯定选X86 , 但是X86的CPU也有好有坏 , 性能不好的CPU就别考虑虚拟化了 , 体验并不友好 , 反而会让虚拟机的硬件损耗 , 降低了本来就不是很强的性能 , 另外虚拟环境需要一定的基础 , 小白用户还是不建议上手就玩虚拟机 。


不玩虚拟机的 , CPU的要求就不用那么高了 , ARM和X86的CPU都可以选 。 也就是低端的X86和ARM该选谁?