之前写的双十一mesh路有器选购和组网指南,就有值友抱怨看不懂是什么意思。趁着最近值得买的千兆升级征文活动,说说一些路由器的基本知识,以及为了升级千兆做出的准备
科普
路由器涉及硬件、网络知识较多较杂,主要面向的是家庭路由器,科普只会简单说说,有不准确的地方求大家指出。
路由器结构
路由器本质是网络进行互联的专用计算机,具有输入和输出端口,其职能是收集网络拓扑信息,对数据进行转发。
早期路由器基于X86架构,是单总线单CPU结构的计算机。由一个处理器加主板、内存和多个网卡(Line interface)组成。功能基本是靠软件层面实现,一般称之为软路由。
经过多年发展,转发过程已由ASIC来实现,CPU只起到一个维护系统运转的作用。专用化程度高,一般称之为硬路由。例如发哥的MT7623A SOC,里面就有网络加速器实现NAT转发。出于成本考虑,家用路由器CPU多基于ARM架构,早些年还有MIPS架构的。X86架构的硬路由也有,主要用于企业级。ASIC计算就相当于一堆小学生做算术题,CPU通用计算就相当于一个大学生做算术题。计算大量简单加减算术题的时候,一堆小学生会比一个大学生算的快。但是小学生能力有限,没法做更复杂的算术题。可以说是各有各自优势,不能一概而论。
目前常见家用路由器结构以网件RAX120为例,其处理器是高通IPQ8074,14nm工艺,四核Cortex A53,最高2.2GHz主频。512MB Flash,1GB RAM。Flash是非易失性存储器,相当于PC的硬盘。用于储存固件,一般是NAND或NOR芯片。Flash的大小与路由器固件rom有关,有些路由器运行的系统较为精简高效,不会有很大容量的Flash。RAM即随机访问存储器,相当于PC的内存。网络芯片就相当于网卡,千兆有线是QCA8075,5G有线是AQR111。2.4G无线是高通QCN5024,5G无线是高通QCN5054。还会连有功率放大器,以匹配无线天线的特性,获得更好的无线性能。
路由器基本用途是用于连接广域网WAN和局域网LAN,所以能看到其背后由WAN、LAN等标识的接口,家用路由一般为单WAN口多LAN口路由器。部分还会有USB接口等等,可以外接硬盘实现简单的网络文件存储服务。
路由功能
路由器最基本的功能就是数据转发,会涉及物理层、数据链路层和网络层。物理层是路由器从一个端口收到一个报文,上送到数据链路层。这个口可以是WAN,也可以是LAN。数据链路层是对数据进行拆包,去掉链路层封装,根据报文的协议上送到网络层。网络层根据报文的目的地址查找路由表,将报文送给相应端口的数据链路层,数据链路层封装后,发送报文。进行这个转换的,一般称为网关nat gateway。
物理层就是就是路由器利用网线将多个设备集结起来。数据链路层,就是路由器根据网口名称(MAC地址)自动寻址传输数据。交换机就是在数据链路层工作的设备,与路由的区别就是没有网络层。网络层面的路由表,就是路由器建立的网络拓跋信息。相当于地图,路由器会根据地图,查找目的地和计算最优路线。网络层面上,都会使用IP地址来作为设备标识。
为了解决局域网和互联网的冲突,不同的层会有不同的IP地址。层层网络的IP地址转换,就称为NAT。通常第一层是本机回环,就是单机。第二层称为局域网,即是家里设备组成的局域网。第三层是公网,也就是常说的互联网。
IP目前有两种格式,分别是IPv4和IPv6。IPv4格式是32位的,一般是xxx.xxx.xxx.xxx的格式,总数有43亿个左右。IPv6则是128位的,一般是xxxx.xxxx.xxxx.xxxx.xxxx.xxxx的格式,总数有IPv4数量的4次方个。IP地址复杂,我们还会用域名作为指代。将网站域名转换为IP地址的服务器一般称为DNS。常见是谷歌的8.8.8.8DNS服务器。
本机回环常用127.0.0.1表示,家用局域网一般用192.168.1.1-192.168.1.255表示,这个范围称为网段。IETF和IANA规定了一些IP地址专门用于私有地址,用于本地回环、局域网等。常见保留的私有地址还有192.168.0.0~192.168.255.255、10.0.0.0-10.255.255.255、172.16.0.0~172.31.255.255。局域网IP地址可以在路由器内部设定。但是不能乱设,如果你的私有地址和公网中某个地址重合,你就无法连接公网中这个地址的设备。由于实际中可能存在多层网络,得靠子网掩码,区分是否属于一个网段。