科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道路由交换宽带路由器性能评判常见误区

宽带路由器性能评判常见误区

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

宽带和窄带比起来,最主要就是个"快"字,所以大家在选购宽带路由器时,非常关心其性能怎么样,通俗来说就是"快不快"。

来源:chinaitlab 2011年8月11日

关键字: 路由交换 路由技术

  • 评论
  • 分享微博
  • 分享邮件

  宽带和窄带比起来,最主要就是个"快"字,所以大家在选购宽带路由器时,非常关心其性能怎么样,通俗来说就是"快不快"。于是很多人提出各种各样的证据来,证明自己的宽带路由器性能很好,很快。但许多证据往往是片面的,等你买回去发现性能不足的时候已经悔之晚矣。本文就从专业角度出发,分析几个大家经常引用又容易误导大家评判的"证据",告诉大家应该怎样客观地看待这些证据,以及怎样正确地评判一个宽带路由器的性能。

  证据一:处理器主频

  说法:"处理器主频100M,性能强劲。""处理器主频133M,性能比100M的要好得多。""采用通信专业RISC CPU。"

  误区:首先,处理器只是路由器的一个部件,特别之处只在于它是最核心的器件。处理器用得差路由器性能好不了,但反过来处理器好了路由器性能却不一定好。就象做菜,没有肥瘦得宜的新鲜猪肉绝对做不出好的红烧肉,但有了肥瘦得宜的新鲜猪肉,没有好的酱油,没有好的厨师,照样做不出好的红烧肉。其次,处理器主频只是处理器的一个性能指标,要知道处理器性能,还必须了解其总线宽度(16位还是32位)、Cache容量和结构、内部总线结构、是单CPU还是多CPU分布式处理、运算模式等等,这些都会极大地影响处理器性能,一点也不比主频次要。所谓的"采用通信专业RISC CPU"相当于什么都没说,只是用专业术语扮高深,不敢量出底细,因为几乎所有路由器采用的都是通信专业RISC 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,不同型号性能和结构都会有较大差异。可以把处理器型号输入到Google上搜一把,然后到芯片厂家的网站上好好看个究竟 ,顺便也看看其他人对这个芯片的评价(评论者水平有高低,目的有不同,不可全信)。

  证据二:内存容量

  说法:"我这个内存16M,你看那个才8M,性能比它好多了。"

  误区:这句话存在一个问题,两个陷阱。一个问题是:内存同样只是路由器的一个部件,只不过是一个重要部件而已。和处理器一样,内存用得小路由器性能好不了,但反过来内存用得大路由器性能却不一定好。内存是用来存放运算过程中的所有数据的,使用内存就象布置房间。精明的上海女人善于"螺蛳壳里做道场",没用的东西绝对不会摆在房间里,每一件东西都摆得合情合理,房间的每一个角落,从地板到天花板,每一寸都得到充分利用,10几20几平米的一居室能摆下全家所需的全部家具和电器,甚至还有空间放一两个盆栽点缀一下。但如果换做一个懒惰的单身汉,你给他一套两居室和同样多的家具和电器试试看,保证他摆不下,而且没过几天房间里到处是垃圾,立足的地方都没有。所以根据使用内存的大小来绝对地评判路由器性能的高低是不合理的,科学地使用内存同样重要,水平高的软件设计能很好地规划和使用内存,水平低的甚至自己没有设计能力,直接使用处理器芯片厂家提供的未经优化的参考软件的,内存就不能得到有效的规划和使用。两个陷阱是:内存单位和内存总线。内存可以用Byte(字节)做单位,也可以用Bit(位)做单位,两者一音之差,容量差8倍(1 Byte = 8 Bit),一般用大写B表示Byte,小写b表示Bit,但有些别有用心的人会在这里做手脚,有象上面的说法例子中不标单位混淆视听的,也有故意把b标做B瞒天过海的。内存总线有宽有窄,要在内存中存或取4Byte的数据,如果是16位内存,就要操作两次,32位内存则只需要操作一次,效率差一倍。所以即使相同容量的内存如果总线宽度不一样其对路由器性能的影响也是重大的。

  用户进阶:一般来说,1M~4M Byte属于较小,8M Byte属于中等,16M Byte或以上属于较大。另外如果别人只告诉你是多少M,一定要问清楚是Byte还是Bit,是16位还是32位。当然你要找信得过的对象问,千万别上当受骗。如果你是专业人士或喜欢追根究底,把内存型号输入到Google上搜一把,然后到芯片厂家的网站上好好看个究竟就绝对不会错了,除非不法分子用打磨芯片在芯片丝印上造假。所以选择诚实守信的厂家产品很重要。

  证据三:Flash容量

  说法:"我的Flash容量大,性能比它好。"

  误区:没有道理。Flash是用来存放操作系统和应用程序的,其大小主要取决于用何种操作系统、应用程序编写效率和用户界面的花哨程度。如果选用高效率的实时操作系统(如VxWorks、Ecos、Nucleus等),设计者对操作系统理解又很深刻,能对其进行合理裁剪,设计者的应用程序编写效率也很高,就可以使用小容量的Flash。如果选用低效率的操作系统(如Linux等),设计者对操作系统不了解,应用程序编写效率低,或根本就是照搬了芯片厂家提供的未经优化的参考软件,就只能使用大容量的Flash了。从这个角度来说,反而是Flash用得越小软件水平越高,产品越值得信赖。当然,产品功能多、用户界面花哨(如有很多高清晰图片)相对来说用的Flash会大一点。

  用户进阶:普通用户根本不用去了解Flash到底是多大,只要看功能是不是满足需要,顶多再看看用户界面好不好看,合不合你口味(如果你有这方面偏好的话)就足够了。如果你是专业人士或喜欢追根究底,可以尝试去问问厂家他们用的是什么操作系统,软件是自己写的还是抄来的,不过基本上你会碰一鼻子灰,这可是厂家机密。

  证据四:Throughput

  说法:"性能强劲,Throughput高达97M。""64Byte小包Throughput达到线速。"

  误区:路由器的工作过程很象邮局包裹业务。邮局寄包裹的过程是大家把要寄走的物品和寄件人、收件人和物品信息交给邮局,邮局用不同尺寸的标准箱把物品包好并在箱子上贴上格式化的包裹单,检查无误后投递到目的地,收包裹是相反过程。路由器基本一样,只不过收发的东西是数据而已。Throughput(吞吐量)表示的是路由器每秒能处理的数据量,相当于邮局单位时间里的包 裹处理能力,是路由器性能的直观反映。大家一定要注意这个数据后面隐藏的名堂是最多的。

  首先应该说明所谓路由器Throughput,一定是LAN-to-WAN的Throughput,数据流出或流入局域网才需要路由器处理,才能这代表了路由器性能。而不是LAN-to-LAN,这代表的是路由器内部小交换机性能,正常应该都是线速,一点意义都没有。这就象邮局单位时间里的包裹处理能力,一定指的是运出和运进邮局的包裹量,而不是从邮局一个房间搬到另一个房间的包裹量。但还是有些人把LAN-to-LAN的数据当作路由器Throughput在宣传,甚至标到产品包装上,当然他不会写上这是LAN-to-LAN,大家要小心。

  另外,路由器Throughput,一般应该是在NAT开启,防火墙关闭的情况下得出的测试数据。这是因为NAT是宽带路由器最基本、最核心的功能,不开启NAT就不成其为宽带路由器了,而且虽然不同的产品设计其NAT功用是一样的,但软件设计的好坏直接影响到NAT效率、路由器性能,所以NAT开启的Throughput才是有意义的。至于防火墙,应该算做宽带路由器的附带功能、高级功能,有的产品防火墙规则很多很复杂,能过滤很多东西,有的产品规则就又少又简单。规则多、复杂的,CPU用来过滤数据的时间就长,规则少、简单的,CPU用来过滤数据的时间就短,这对Throughput测试数据影响还是挺大的。为公平起见,在测试路由器Throughput时,特别是在不同产品性能比较时,把防火墙关闭是合理的。这就象美国发生炭疽邮件袭击以后,邮局对邮包的检查严格了很多,这会对邮局单位时间里的邮包处理能力产生较大影响,但其他国家没有这么复杂的检查程序,如果我们据此就断言美国邮局的效率低下,就有失公允了。至于防火墙的评判,一般放在功能比较里面而不是性能比较。当然,如果不是不同产品的横向比较,只考察特定产品本身的性能,如果能同时有防火墙关闭和防火墙开启(需要注明启用了哪些过滤规则)两种情况下的Throughput数据,大家就能对这个产品了解得更透彻了。

  常见Throughput测试方法有两种,一是Smartbits测试,一是Chariot测试。Smartbits测试是使用全球最权威的网络设备测试仪器Smartbits2000或6000,配以其附带的专业测试软件SmartApplication,用连续不断的UDP包来测出对不同大小的数据包路由器每秒能处理的包数量。路由器在处理数据包时,主要的时间花在处理包头、包尾上,所以对于不同大小的数据包,路由器每秒能处理的包数量差别不会太大。这就象邮局处理包裹,主要的时间是花在处理寄件人、收件人和物品信息以及检查上,包裹重一点轻一点对处理速度影响不会太大。如128Byte包每秒能处理10000个,并不能做到64 Byte包每秒处理20000个,而是只比10000个略多一点点,比如10100个。这就给了一些不诚实的厂家以可乘之机。如他的路由器在处理最大的1518Byte包时每秒8000个,根据理论计算处理1518Byte包100M线速的极限值是8127个,所以折算出来的Throughput就是100M*8000/8127=98.44M,于是他就很自豪地宣布,我的路由器Throughput高达98.44M,殊不知,原来这个路由器在处理最小的64Byte包时每秒是11000个,根据理论计算处理64Byte包100M线速的极限值是148810个,所以折算出来的Throughput只有100M*11000/148810=7.39M,两者相差13倍多。这完全取决于我们怎么看待吞吐量,是每秒处理多少个数据包还是每秒处理多少兆数据,就象邮局每天是处理多少个邮包还是多少公斤货物。从邮局能力角度来看,应该是从每天处理多少个邮包来评判更合理一点,因为这个数据相对来说是稳定的,受邮包重量影响小。但每天多少公斤货物,受邮包重量的影响就是根本性的,如邮寄的全部是书籍,计算出来的每天处理货物公斤数就很大,如果全是棉花就很小。实际情况中一定是既有书籍又有棉花还有其他五花八门的东西,但你评估的时候按什么比例来调配这些货物才合理呢?没人说得清,除非有人定一个标准规定各种东西的比例,大家都按照这个标准来计算。既然没标准,有人就用书籍来计算,有人就用棉花来计算,规矩的人说明我是用什么来算的,不规矩的就乐得浑水摸鱼。另外,以目前宽带路由器普遍所采用的硬件来看,即使是性能最好的,也不足以达到64Byte小包Throughput线速,但有的人宣称我的产品就有这么好,而且拿出Smartbits测试数据来证明。这类产品采用的是所谓NAT硬件加速技术,Throughput是很好看,但代价是所有数据都不通过CPU,无法做数据的过滤,门户大开,防火墙不起作用,路由器没有任何管理功能。

  Chariot测试则是用两台服务器,安装NETIQ公司的流行软件Chariot,一台接路由器WAN口,一台接LAN口,通过统计一个预定长度和格式的脚本文件无差错地从一台服务器传送到另一台服务器的时间来计算出路由器的Throughput。这里面学问就大了。一是服务器性能,如果性能差,就会成为测试的瓶颈,路由器性能得不到体现,所以不诚实的厂家在测试自家的产品时用高性能的服务器,生怕自家的产品性能表现不出来,而测试别人的产品时用低性能的服务器,故意贬低数据。二是建立连接数,如果路由器软件写得差,在连接数增加时,其Throughput会直线下降,而好的路由器则很平稳,甚至会随连接数的增加反而略有上扬。如果路由器性能不足,甚至会因无法同时建立这么多连接而测试失败。所以差的路由器只敢用一对连接来得出测试数据,而好的路由器不怕多连接。三是Chariot测试不象Smartbits测试那样是测试UDP"包",而是数据"流",其数据封装成多大TCP包和服务器操作系统相关,但一般都封装为1518Byte大包,所以其测试数据会比用Smartbits测试64 Byte小包的数据好看很多倍,这一点很能迷惑人。四是Chriot测试Throughput结果是有效数据负载,不包括TCP协议损耗、帧间隔、应答和Chriot本身系统损耗,此部分典型损耗根据理论计算约6M,就是说即使你接的是一台能线速转发的交换机,不是路由器,测出来的Throughput也只可能是94M左右,这是理论极限值,如果有人宣称我的产品Chriot测试Throughput 97M、98M,那毫无疑问是瞎吹。

  用户进阶:Throughput是LAN-to-WAN的Throughput,一般应该是在NAT开启,防火墙关闭的情况下得出的测试数据,而且有Smartbits测试和Chariot测试两种方式,得出的结果可以很不相同。根据现在普遍的硬件能力,Smartbits大包测试数据大家都很容易达到线速,就象你测试大学生的智力,题目是1+1=?,大家都能答上来,比不出高下。所以你要做客观的评估,题目应该出难一点,比较64Byte小包测试数据,高下立判。当然你要小心是否有NAT硬件加速,有的话把它关掉再测试。至于Chariot测试,不同产品的性能应 该是在同样的测试环境和方法、同样的连接数下进行比较才公平,而且在实际网络应用中,总是多连接而几乎不可能是单连接的,为了发现差路由器,Chariot测试最好是在多连接下进行,一般可以选择100对连接基本上就可以看出大家的区别来了。总之,单独的一个Throughput数据是毫无意义的,一定要说明这个数据是用什么方法测出来的才有用,相互性能的比较一定要在同样的测试环境和方法下进行比较才公平和有意义。最好的方法是看Smartbits测试NAT开启64 Byte小包的LAN-to-WAN Throughput。

  该是在同样的测试环境和方法、同样的连接数下进行比较才公平,而且在实际网络应用中,总是多连接而几乎不可能是单连接的,为了发现差路由器,Chariot测试最好是在多连接下进行,一般可以选择100对连接基本上就可以看出大家的区别来了。总之,单独的一个Throughput数据是毫无意义的,一定要说明这个数据是用什么方法测出来的才有用,相互性能的比较一定要在同样的测试环境和方法下进行比较才公平和有意义。最好的方法是看Smartbits测试NAT开启64 Byte小包的LAN-to-WAN Throughput。

  听很重要,最好的方法之一是找有信誉专业媒体的横向测评数据,注意前提是有信誉和专业,既能做到客观公正又能测到点子上,如前不久《在线Online》杂志(online.cniti.com)2004年第2期中的"18款宽带路由器全面测试",就是一个产品/品牌较全,测试较为专业、客观、全面的横向测评,很有参考价值。相信按现在宽带路由器产品的市场地位及其发展速度,很多权威媒体在今年都会做类似的横向测评,大家可以关注。对于第一步中所讲的一、二类品牌产品,大家还可以就不清楚的地方直接打电话或发E-mail问厂家,一般能得到较客观回答。

  经过以上三步,大家基本上已经可以作出判断和选择了。如果可能,再实际试试看就更保险了。非专业人士可以直接把路由器安装到网络中用用看,注意要在网络最繁忙的时段试才能看出性能够不够,如网吧要在基本满座,最好大家都在玩"传奇"时测试。专业人士如果有设备和软件,可以做一下Smartbits测试和Chariot测试,重点测以下几项:Smartbits测试NAT开启64Byte小包的LAN-to-WANThroughput,最严格、最客观的性能数据;最大并发连接数及连接建立速度,在很大程度上影响带机能力;多连接下Chariot测试Throughput,也能较好地反映性能。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章