随着宽带网络的逐步普及,宽带路由器已经得到越来越广泛的应用,衍生并发展了宽带路由市场,各厂家纷纷推出功能各异、名目众多的路由器产品,使大多数想要购买路由器但又缺乏基本技术的消费者无从选择,因此,我们在这里对选购宽带路由器的主要性能指标逐一进行分析解读,对广大消费者选择宽带路由器提供一个帮助。
1、处理器主频
分析:
首先,路由器的处 理器同电脑主板、交换机等产品一样,是路由器最核心的器件。处理器的好坏直接影响路由器的性能,处理能力差的处理器,路由器性能好不了,但反过来处理器好了,路由器性能却未必就好,因为处理器不是决定路由器的惟一因素。
其次,市面上常有些路由器宣称诸如“处理器主频100m,性能强劲”之类。其实,除了处理器的主频外,还必须了解其总线宽度、cache容量和结构、内部总线结构、是单cpu还是多cpu分布式处理、运算模式等等,这些都会极大地影响处理器性能,一点也不比主频次要,关键要看这颗cpu到底用的是什么内核,内部结构如何。
用户进阶:
一般来说,处理器主频在100m或以下的属于较低主频,100m~200m中等,200m以上属于较高主频。另外要看处理器是什么内核,是80186、arm7、arm9、mips还是intel xscale?cache容量有多大?是单cpu还是多cpu分布式处理?80186、arm7内核处理器是第一代宽带路由器的典型配置,性能低,主流厂商均已不使用。arm9、mips内核处理器是目前主流。intel xscale架构是高级网络处理器,用于高端产品。cache容量8k或以下属于少的,16k常见,32k或以上是属于大的。一般处理器都是单cpu,采用多cpu分布式处理的是高级处理器,性能高。还可以深究一下arm9是普通型的920t/922t/940t还是增强型的926e/946e/966e,mips是2k、3k还是4k、5k,不同型号性能和结构都会有较大差异。有兴趣可以到网上按处理器型号搜索一下,然后到芯片厂家的网站上好好看个究竟。
2、内存容量
分析:
处理器内存是用来存放运算过程中的所有数据,因此内存的容量大小对处理器的处理能力有一定影响。但有一个问题:内存的大小是一方面,能否科学地使用更重要。水平高的软件设计能很好地规划和使用内存,水平低的自己没有设计能力,直接copy处理器芯片厂家提供未经优化的参考软件,内存就不能得到有效的规划和使用。这就好像布置房间,精明的上海女人善于“螺蛳壳里做道场”,每一件东西都摆得合情合理,每一寸都得到合理利用,十几平米的居室能摆下全部家具和电器。但换做一个懒惰的单身汉,同样大小的房间和同样多的家具和电器,不仅很可能摆不下,而且没过几天房间里到处是垃圾,立足的地方都没有。所以根据使用内存的大小来绝对地评判路由器性能的高低是不合理的。
用户进阶:
一般来说,1m~4m bytes属于较小,8m bytes属于中等,16m bytes或以上属于较大。另外要特别注意的是,很多经销商甚至厂商在提到内存时只说是多少m,这时一定要问清楚是byte还是bit。内存可以用byte(字节)做单位,也可以用bit(位)做单位,两者一音之差,容量差8倍(1 byte = 8 bit)!一般用大写b表示byte,小写b表示bit,别有用心的人会在这里做手脚,有的不标单位,也有把b标做b瞒天过海的。可以到芯片厂家的网站上查清楚。有些不法分子甚至用打磨芯片在芯片丝印上造假,所以选择诚实守信的厂家产品很重要。
3、flash容量
分析:
flash是用来存放操作系统和应用程序的,其大小主要取决于用何种操作系统、应用程序编写效率和用户界面的花哨程度。如果选用高效率的实时操作系统(如vxworks、ecos、nucleus等),设计者理解深刻,裁剪合理,编写效率也很高,就可以使用小容量的flash。如果选用低效率的操作系统(如linux等),设计者对操作系统不了解,编写效率低,或根本照搬芯片厂家未经优化的参考软件,就只能使用大容量的flash了。从这个角度来说,反而是flash用得越小软件水平越高,产品越值得信赖。当然,产品功能多、用户界面花哨(如有很多高清晰图片)相对来说用的flash会大一点。
用户进阶:
普通用户根本不用去了解flash到底是多大,只要看功能是不是满足需要,顶多再看看用户界面好不好看就足够了。
4、throughput
分析:
throughput(吞吐量)表示的是路由器每秒能处理的数据量。打个形象的比方,路由器的工作过程很像邮局包裹业务,邮局寄包裹是大家把物品、寄件人、收件人等信息交给邮局,邮局把物品包好,并贴上格式化的包裹单,检查无误后投递到目的地,收包裹是相反过程。路由器基本一样,只不过收发的东西是数据而已。throughput就相当于邮局单位时间里的包裹处理能力,是路由器性能的直观反映。但同时,这个数据后面隐藏的名堂也是最多的。
首先应该说明路由器的throughput,一定是lan-to-wan的throughput,数据流出或流入局域网才需要路由器处理,才能代表路由器性能。而不是lan-to-lan,这代表的是路由器内部小交换机性能,一点意义都没有。这就像邮局单位时间里的包裹处理能力,一定指的是运出和运进邮局的包裹量,而不是从邮局一个房间搬到另一个房间的包裹量。
其次,路由器throughput,应该是在nat(网络地址转换)开启、防火墙关闭的情况下得出的测试数据。这是因为nat是宽带路由器最基本、最核心的功能,不开启nat就不成其为宽带路由器了,而且软件设计的好坏直接影响到nat效率和路由器性能,所以nat开启的throughput才是有意义的。而防火墙,应该算做宽带路由器附带的高级功能,有的产品防火墙规则很多很复杂,能过滤很多东西,有的产品规则就又少又简单。规则多、复杂的,cpu用来过滤数据的时间就长,规则少、简单的,过滤数据的时间就短,这对throughput测试数据影响还是挺大的。为公平起见,在测试路由器throughput时,特别是在不同产品性能比较时,把防火墙关闭是合理的。防火墙的评判,一般放在功能里比较而不是性能比较。
常见throughput测试方法有两种,一是smartbits测试,一是chariot测试。smartbits测试是使用全球最权威的网络设备测试仪smartbits2000或6000,配以专业的测试软件smartapplicati byte包每秒处理20000个,而是只比10000个略多一点点,比如10100个。例如:有些说法认为路由器在处理最大的1518byte包时每秒8000个(理论上处理1518byte包达到100m线速的极限值是每秒8127个),折算出throughput是100m*8000/8127=98.44m,于是称该路由器throughput高达98.44m;而实际上这个路由器在处理最小的byte包时每秒是11000个(理论上的极限值是每秒148810个),折算只有100m*11000/148810=7.39m,两者相差13倍多!同样,说路由器的“throughput高达97m”,也很可能是1518byte包达到97m,而处理byte的包却很可能只有7.39m!更为重要的是,小包转发的处理能力才能真正体现路由器的throughput能力!目前市场上大多数的主流路由器处理512、1024和1518byte这样的大包,throughput大都能近似线速(当然,也有一些杂牌路由器大包转发能力都不行),而测试256、128和byte等小包的时候,性能差异立即体现。而大多数路由器的实际应用里小包转发能力十分关键,比如网吧里经常玩游戏,每操作一个游戏指令,每扣动一个扳机,转发的全部是小包,如果路由器处理小包的能力不够强,就很难应付游戏的大量小包转发需求,游戏玩起来就很不顺畅。所以nat开启 byte小包的lan-to-wan 的throughput才真正具有评价意义。
另外,以目前宽带路由器普遍所采用的硬件来看,基本上都不足以达到byte小包throughput线速,因此有些产品宣称可以达到线速,可能是采用了所谓的nat硬件加速技术,throughput是很好看,但代价是所有数据都不通过cpu,无法做数据过滤,防火墙不起作用,路由器没有任何管理功能。这就像邮局根本不检查邮包里是什么东西,有没有易燃易爆物品,地址是不是火星,收件人是不是本·拉登,照单全发。
chariot测试则是用两台服务器,安装netiq公司的软件chariot,一台接路由器wan口,一台接lan口,通过统计一个预定长度和格式的脚本文件无差错地从一台服务器传送到另一台服务器的时间来计算出路由器的throughput。这里面学问就大了,一是与服务器性能有关,不诚实的厂家在测试自家的产品时用高性能的服务器,而测试别人的产品时用低性能的服务器,故意贬低数据。二是建立连接数,建立的连接数越多,对路由器软件的性能要求越高,软件写得差的,在连接数增加时,其throughput会直线下降,甚至导致无法连接;而软件写得好的路由器则很平稳,甚至会随连接数的增加反而略有上扬。三是chariot测试不象smartbits测试那样是测试udp“包”,而是数据“流”,其数据封装成多大tcp包和服务器操作系统相关,但一般都封装为1518byte大包,所以其测试数据会比用smartbits测试 byte小包的数据好看很多倍,这一点很能迷惑人。四是chriot测试throughput结果是有效数据负载,不包括tcp协议损耗、帧间隔、应答和chriot本身系统损耗,此部分典型损耗根据理论计算约6m,就是说即使你接的是一台能线速转发的交换机,不是路由器,测出来的throughput也只可能是94m左右,这是理论极限值,因此如果宣称某路由器产品chriot测试throughput达 97m、98m,那就毫无疑问是信口开河欺骗消费者了。
用户进阶:
throughput是lan-to-wan的throughput,一般应该是在nat开启,防火墙关闭的情况下得出的测试数据,而且有smartbits测试和chariot测试两种方式,得出的结果可以很不相同。根据现在普遍的硬件能力,smartbits大包测试数据大家都很容易达到线速,就像测试大学生的智力,题目是1+1=?,大家都能答上来,比不出高下。所以要做客观的评估,题目应该出难一点,比较byte小包测试数据,高下立判。当然如果有nat硬件加速要把它关掉再测试。至于chariot测试,应该是在同样的测试环境和方法、同样的连接数下进行比较才公平,而且在实际网络应用中,几乎不可能是单连接的,所以chariot测试最好是在多连接下进行,一般可以选择100对连接基本上就可以看出端倪了。总之,单独的一个throughput数据是毫无意义的,一定要说明这个数据是用什么方法测出来的才有用,相互性能的比较一定要在同样的测试环境和方法下进行比较才公平和有意义。最好的方法是看smartbits测试nat开启 byte小包的lan-to-wan throughput。
1、处理器主频
分析:
首先,路由器的处 理器同电脑主板、交换机等产品一样,是路由器最核心的器件。处理器的好坏直接影响路由器的性能,处理能力差的处理器,路由器性能好不了,但反过来处理器好了,路由器性能却未必就好,因为处理器不是决定路由器的惟一因素。
其次,市面上常有些路由器宣称诸如“处理器主频100m,性能强劲”之类。其实,除了处理器的主频外,还必须了解其总线宽度、cache容量和结构、内部总线结构、是单cpu还是多cpu分布式处理、运算模式等等,这些都会极大地影响处理器性能,一点也不比主频次要,关键要看这颗cpu到底用的是什么内核,内部结构如何。
用户进阶:
一般来说,处理器主频在100m或以下的属于较低主频,100m~200m中等,200m以上属于较高主频。另外要看处理器是什么内核,是80186、arm7、arm9、mips还是intel xscale?cache容量有多大?是单cpu还是多cpu分布式处理?80186、arm7内核处理器是第一代宽带路由器的典型配置,性能低,主流厂商均已不使用。arm9、mips内核处理器是目前主流。intel xscale架构是高级网络处理器,用于高端产品。cache容量8k或以下属于少的,16k常见,32k或以上是属于大的。一般处理器都是单cpu,采用多cpu分布式处理的是高级处理器,性能高。还可以深究一下arm9是普通型的920t/922t/940t还是增强型的926e/946e/966e,mips是2k、3k还是4k、5k,不同型号性能和结构都会有较大差异。有兴趣可以到网上按处理器型号搜索一下,然后到芯片厂家的网站上好好看个究竟。
2、内存容量
分析:
处理器内存是用来存放运算过程中的所有数据,因此内存的容量大小对处理器的处理能力有一定影响。但有一个问题:内存的大小是一方面,能否科学地使用更重要。水平高的软件设计能很好地规划和使用内存,水平低的自己没有设计能力,直接copy处理器芯片厂家提供未经优化的参考软件,内存就不能得到有效的规划和使用。这就好像布置房间,精明的上海女人善于“螺蛳壳里做道场”,每一件东西都摆得合情合理,每一寸都得到合理利用,十几平米的居室能摆下全部家具和电器。但换做一个懒惰的单身汉,同样大小的房间和同样多的家具和电器,不仅很可能摆不下,而且没过几天房间里到处是垃圾,立足的地方都没有。所以根据使用内存的大小来绝对地评判路由器性能的高低是不合理的。
用户进阶:
一般来说,1m~4m bytes属于较小,8m bytes属于中等,16m bytes或以上属于较大。另外要特别注意的是,很多经销商甚至厂商在提到内存时只说是多少m,这时一定要问清楚是byte还是bit。内存可以用byte(字节)做单位,也可以用bit(位)做单位,两者一音之差,容量差8倍(1 byte = 8 bit)!一般用大写b表示byte,小写b表示bit,别有用心的人会在这里做手脚,有的不标单位,也有把b标做b瞒天过海的。可以到芯片厂家的网站上查清楚。有些不法分子甚至用打磨芯片在芯片丝印上造假,所以选择诚实守信的厂家产品很重要。
3、flash容量
分析:
flash是用来存放操作系统和应用程序的,其大小主要取决于用何种操作系统、应用程序编写效率和用户界面的花哨程度。如果选用高效率的实时操作系统(如vxworks、ecos、nucleus等),设计者理解深刻,裁剪合理,编写效率也很高,就可以使用小容量的flash。如果选用低效率的操作系统(如linux等),设计者对操作系统不了解,编写效率低,或根本照搬芯片厂家未经优化的参考软件,就只能使用大容量的flash了。从这个角度来说,反而是flash用得越小软件水平越高,产品越值得信赖。当然,产品功能多、用户界面花哨(如有很多高清晰图片)相对来说用的flash会大一点。
用户进阶:
普通用户根本不用去了解flash到底是多大,只要看功能是不是满足需要,顶多再看看用户界面好不好看就足够了。
4、throughput
分析:
throughput(吞吐量)表示的是路由器每秒能处理的数据量。打个形象的比方,路由器的工作过程很像邮局包裹业务,邮局寄包裹是大家把物品、寄件人、收件人等信息交给邮局,邮局把物品包好,并贴上格式化的包裹单,检查无误后投递到目的地,收包裹是相反过程。路由器基本一样,只不过收发的东西是数据而已。throughput就相当于邮局单位时间里的包裹处理能力,是路由器性能的直观反映。但同时,这个数据后面隐藏的名堂也是最多的。
首先应该说明路由器的throughput,一定是lan-to-wan的throughput,数据流出或流入局域网才需要路由器处理,才能代表路由器性能。而不是lan-to-lan,这代表的是路由器内部小交换机性能,一点意义都没有。这就像邮局单位时间里的包裹处理能力,一定指的是运出和运进邮局的包裹量,而不是从邮局一个房间搬到另一个房间的包裹量。
其次,路由器throughput,应该是在nat(网络地址转换)开启、防火墙关闭的情况下得出的测试数据。这是因为nat是宽带路由器最基本、最核心的功能,不开启nat就不成其为宽带路由器了,而且软件设计的好坏直接影响到nat效率和路由器性能,所以nat开启的throughput才是有意义的。而防火墙,应该算做宽带路由器附带的高级功能,有的产品防火墙规则很多很复杂,能过滤很多东西,有的产品规则就又少又简单。规则多、复杂的,cpu用来过滤数据的时间就长,规则少、简单的,过滤数据的时间就短,这对throughput测试数据影响还是挺大的。为公平起见,在测试路由器throughput时,特别是在不同产品性能比较时,把防火墙关闭是合理的。防火墙的评判,一般放在功能里比较而不是性能比较。
常见throughput测试方法有两种,一是smartbits测试,一是chariot测试。smartbits测试是使用全球最权威的网络设备测试仪smartbits2000或6000,配以专业的测试软件smartapplicati byte包每秒处理20000个,而是只比10000个略多一点点,比如10100个。例如:有些说法认为路由器在处理最大的1518byte包时每秒8000个(理论上处理1518byte包达到100m线速的极限值是每秒8127个),折算出throughput是100m*8000/8127=98.44m,于是称该路由器throughput高达98.44m;而实际上这个路由器在处理最小的byte包时每秒是11000个(理论上的极限值是每秒148810个),折算只有100m*11000/148810=7.39m,两者相差13倍多!同样,说路由器的“throughput高达97m”,也很可能是1518byte包达到97m,而处理byte的包却很可能只有7.39m!更为重要的是,小包转发的处理能力才能真正体现路由器的throughput能力!目前市场上大多数的主流路由器处理512、1024和1518byte这样的大包,throughput大都能近似线速(当然,也有一些杂牌路由器大包转发能力都不行),而测试256、128和byte等小包的时候,性能差异立即体现。而大多数路由器的实际应用里小包转发能力十分关键,比如网吧里经常玩游戏,每操作一个游戏指令,每扣动一个扳机,转发的全部是小包,如果路由器处理小包的能力不够强,就很难应付游戏的大量小包转发需求,游戏玩起来就很不顺畅。所以nat开启 byte小包的lan-to-wan 的throughput才真正具有评价意义。
另外,以目前宽带路由器普遍所采用的硬件来看,基本上都不足以达到byte小包throughput线速,因此有些产品宣称可以达到线速,可能是采用了所谓的nat硬件加速技术,throughput是很好看,但代价是所有数据都不通过cpu,无法做数据过滤,防火墙不起作用,路由器没有任何管理功能。这就像邮局根本不检查邮包里是什么东西,有没有易燃易爆物品,地址是不是火星,收件人是不是本·拉登,照单全发。
chariot测试则是用两台服务器,安装netiq公司的软件chariot,一台接路由器wan口,一台接lan口,通过统计一个预定长度和格式的脚本文件无差错地从一台服务器传送到另一台服务器的时间来计算出路由器的throughput。这里面学问就大了,一是与服务器性能有关,不诚实的厂家在测试自家的产品时用高性能的服务器,而测试别人的产品时用低性能的服务器,故意贬低数据。二是建立连接数,建立的连接数越多,对路由器软件的性能要求越高,软件写得差的,在连接数增加时,其throughput会直线下降,甚至导致无法连接;而软件写得好的路由器则很平稳,甚至会随连接数的增加反而略有上扬。三是chariot测试不象smartbits测试那样是测试udp“包”,而是数据“流”,其数据封装成多大tcp包和服务器操作系统相关,但一般都封装为1518byte大包,所以其测试数据会比用smartbits测试 byte小包的数据好看很多倍,这一点很能迷惑人。四是chriot测试throughput结果是有效数据负载,不包括tcp协议损耗、帧间隔、应答和chriot本身系统损耗,此部分典型损耗根据理论计算约6m,就是说即使你接的是一台能线速转发的交换机,不是路由器,测出来的throughput也只可能是94m左右,这是理论极限值,因此如果宣称某路由器产品chriot测试throughput达 97m、98m,那就毫无疑问是信口开河欺骗消费者了。
用户进阶:
throughput是lan-to-wan的throughput,一般应该是在nat开启,防火墙关闭的情况下得出的测试数据,而且有smartbits测试和chariot测试两种方式,得出的结果可以很不相同。根据现在普遍的硬件能力,smartbits大包测试数据大家都很容易达到线速,就像测试大学生的智力,题目是1+1=?,大家都能答上来,比不出高下。所以要做客观的评估,题目应该出难一点,比较byte小包测试数据,高下立判。当然如果有nat硬件加速要把它关掉再测试。至于chariot测试,应该是在同样的测试环境和方法、同样的连接数下进行比较才公平,而且在实际网络应用中,几乎不可能是单连接的,所以chariot测试最好是在多连接下进行,一般可以选择100对连接基本上就可以看出端倪了。总之,单独的一个throughput数据是毫无意义的,一定要说明这个数据是用什么方法测出来的才有用,相互性能的比较一定要在同样的测试环境和方法下进行比较才公平和有意义。最好的方法是看smartbits测试nat开启 byte小包的lan-to-wan throughput。