交换机基本介绍(分类性能指标硬件构成及工作方式)

Posted monologuezjp

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了交换机基本介绍(分类性能指标硬件构成及工作方式)相关的知识,希望对你有一定的参考价值。

一、交换机的分类与性能指标

1.1交换机的分类

按照网络构成方式来分的话,交换机分为三类:接入层交换机、汇聚层交换机和核心层交换机。

按照OSI模型来划分的话,分为:二层交换机、三层交换机和四层交换机

还有一种按照硬件形态来划分,可以分成两类:盒式交换机和机框式交换机。

        盒式交换机是一种有固定端口数,有时也会带有少量扩展槽的交换机。

        机架式交换机是一种插槽式的交换机,这种交换机扩展性较好,可支持不同的网络类型,可支持更大端口密度的网络。

        一般在数据中心的接入层都会采用盒式交换机,盒式交换机有的只有二层功能,也有的支持三层功能,基本是以二层为主。在数据中心的汇聚、核心出口都会采用机架式交换机。相比盒式交换机,机架式交换机都具有三层功能,需要关注更多的关键参数。

这边给大家放一张机框式交换机的图。框式交换机提供了非常高的扩展性和自定义性,一般框式交换机主要分为几个模块:机框、主控板、扩展板、电源等等。每一个部分都不能单独使用的。

框式交换机的硬件组成:

机框:可以理解成一个载体,承载着所有的模块。

主控板卡:就是整个交换机中的核心,一些稍微高端一点的都可以配备双主控板。

扩展板卡:扩展板的种类非常多,例如48口千兆电口版、24口万兆光口版等等,这些都是按照需求去使用。

电源:就是供电模块,一般情况下一台框式交换机最少配备两个电源模块扩展槽,但是上多少个就看需求了。

        一般框式交换机都会提供多种扩展槽,应对不同的需求,例如主控板用的槽位就不能安装交换板卡等,框式交换机的槽位一般分为主控槽、业务槽、交换槽等等,业务槽就是安装一些如无线控制器扩展卡,路由扩展卡等等,交换槽就只能安装交换板卡。

1.2性能指标

1.2.1 背板带宽

        背板带宽是交换机接口处理器或接口卡和数据总线间所能吞吐的最大数据量。背板带宽越高,所能处理数据的能力越强。
        背板带宽标志了交换机总的数据交换能力,单位为Gbps,也叫交换带宽。所以只有模块交换机(拥有可扩展插槽,可灵活改变端口数量)才有这个概念,固定端口交换机是没有这个概念的,并且固定端口交换机的背板容量和交换容量大小是相等的。背板带宽决定了各板卡(包括可扩展插槽中尚未安装的板卡)与交换引擎间连接带宽的最高上限。但由于模块化交换机的体系结构不同,背板带宽并不能完全有效代表交换机的真正性能。

       在交换机选型的过程中,有一个重要的参数,是 交换机背板带宽/全双工端口带宽,这个比值越大,交换机就越能趋近高性能无阻塞的交换。

全双工端口带宽(交换机使用总带宽或者可以实现线速转发的交换机背板带宽

计算公式:端口数×相应端口速率×2(全双工模式)

例如,一个24个百兆口,2个千兆口的交换机,他的全双工端口带宽就是:24*2*100+2*2*1000=8.8Gbps

如果我们的背板带宽大于8.8Gbps,就说明我们的交换机始终能保持线性转发的速度,进行无阻塞交换。

如图,这是背板带宽与端口带宽之间的关系示意图。

 1.2.2 交换容量

        交换容量表示的是我们的交换机的核心的交换引擎的转发速率,一般单位用bps来表示。

        交换机的主要作用就是转发数据,端口和背板带宽只是起到一个传输的作用,端口的多少和背板带宽的大小就好像是咱们的路修的有多宽,路越宽,跑的车越多,传输速率也就越大。那么交换容量是什么呢?所谓的交换容量就是交换引擎单位时间内能处理多少数据。如果说有两个单向八车道交汇,形成一个十字路口,那么背板带宽就是这两个车道同一时间总共能跑多少车,而交换容量就看这个十字路口的指挥者能同时指挥多少车辆运行。遇到能力强的指挥者,这两个车道理论上能同时跑1000辆车,那么就真的可能跑1000辆车,也不会堵车,那么如果遇到能力不够的指挥者,比如说他只有指挥500辆车的能力,那么这个当路口有1000辆车时,就会发生堵车,路再宽,也只能同时跑500辆车。
       由于交换引擎是作为模块化交换机数据包转发的核心,所以这一指标能够真实反映交换机的性能。对于固定端口交换机,交换引擎和网络接口模板是一体的,所以厂家提供的转发性能参数就是交换引擎的转发性能,这一指标是决定交换机性能的关键。支持第三层交换的设备,厂家会分别提供第二层转发速率和第三层转发速率,一般二层能力用bps,三层能力用pps,采用不同体系结构的模块化交换机,这两个参数的意义是不同的。但是,对于一般的局域网用户而言,只关心这两个指标就可以了,它是决定该系统性能的关键指标;对于大型园区网和城域网用户,讨论交换机的体系结构和第三层优化算法才是有意义的。

        其实现在设备厂家的部分工程师已经认为背板带宽这个概念没有意义了,而交换容量和下面要说的转发率才决定交换机的性能,而这个参数很大程度上取决于交换矩阵

*注意:

  • 交换机达到线速转发时,交换容量=端口数×相应端口速率×2(全双工模式)。

        如果交换机在满载板卡的情况下还能达到线速转发(线速转发可以理解为路上不堵车,所有车都能保持最高100码的速度开),说明交换引擎的处理性能是≥背板带宽≥所有端口的全双工转发速率的。

  • 交换容量是一个二层转发的概念

1.2.3 包转发率(pps,三层转发)

        包转发率实际上跟交换容量概念相似,只不过交换容量是指交换机进行二层转发的性能,而包转发率是指交换机进行三层路由转发的性能。这两个概念仅仅是所属的网络层级不同。

        三层包转发率的计算,简单说一下,一个千兆的端口包转发率是多少呢?1000,000,000bps/8*(64+8+12)=1.488Mpps,8表示8个bit,而64+12+8表示的是一个数据字段为64字节的帧,在网络上传输时候实际所使用的字节数,8字节的头部以及12字节的其他开销,这个数据意味着一个千兆口每秒能转发1.488M个包,每个包的大小是84字节(算上头尾的开销)。同理,百兆接口的包转发率是0.1488M。(标准的以太网帧尺寸在64字节到1518字节之间,在衡量交换机包转发能力时应当采用最小尺寸的包进行评价。指基于64字节分组,在单位时间内交换机转发的数据总数)

1.2.4 线速

        前面多次提到了线速,那么线速究竟是什么概念呢?       

        所谓线速,是指能够按照网络通信线上的数据传输速度实现无瓶颈的数据交换。交换机的所有端口都以线速接收帧,并能无延迟地处理被称为“无阻塞(Nonblocking)”,之所以这样叫是因为设备内部没有等待处理的帧(没有阻塞)。
    如果是总线交换结构,要想达到线速指标,背板带宽要大于{N*M *端口速率}(其中 N 有每块模块/板卡的端口数, M 为模块数),同时板卡的交换容量也要大于{端口数*端口速率}, 一般情况下,现代的交换机背板带宽不是瓶颈,板卡的交换容量是瓶颈,导致模块化交换机不能实现真正线速。

    如果是交换矩阵结构,一般都能达到线速指标,这是由于这种交换结构的先进性决定的,所以高性能的交换机都采用这种交换结构。

1.2.5 端口密度

        端口密度是一个数据中心交换机的关键参数,代表着交换机的转发能力。拥有端口密度越大,代表着这个设备的转发能力越强,端口速率越高,代表着这个设备的处理性能越强。
       由于受数据中心机柜尺寸限制,机架式交换机的宽度无法再扩宽,所以目前一个模块能提供48个万兆端口已经达到极限。另外能支持越多的模块类型,则表示设备的实用性越强,可以应用于不同的网络环境,比如:LAN接口、WAN接口、ATM接口。端口带宽类型越丰富越好,即支持40G、100G高速端口,又支持百兆、千兆低速端口,即支持XFP又支持SFP、SFP+、CFP等等多种光接口类型。

1.2.6 二三层表项的容量     

        二、三层转发表项的容量基本代表了这个设备所能承载的用户数量。比如:二层MAC地址表项32K,这意味着这个交换机能最多带三万多二层用户地址,三层路由表项16K,这意味着这个交换机最多能学习一万多条路由。还有一项规格对于交换机也非常重要,就是ACL,即访问控制列表。通过ACL可以灵活地实现业务部署,对网络攻击进行限制,让交换机更灵活地工作

二、交换机的硬件构成

首先我们来看一下交换机硬件模块的逻辑结构

交换机的主要硬件都有以下几类:背板,主控单板,交换网板,接口单板。硬件组成如下图所示:

主控单板、交换网板、接口单板是华为的名称,其他品牌各有自己的名称,如思科的名称是:管理引擎、交换矩阵、线卡,虽然名称不一样但是都是同类部件,这些概念都是针对框式交换机,即机框+可插拔板卡形式的交换机。

2.1 背板

        是机框背部内侧的一块板子,背板是框式交换机用于连接引擎、交换矩阵、线卡、风扇、电源等的PCB板,类似计算机的主板(显卡、声卡等都插入主板),提供插卡的供电、数据、管理、控制平面的各种通道

        背板技术每家又大不相同,华为的主控单板、交换网板、接口板都插在同一侧属于平行结构,而思科等交换机品牌最大的特点就是业务线卡和交换矩阵采用了正交硬件架构技术(上图所示就是正交架构),正交架构最大的特点就是业务线卡和交换矩阵通过背板90°直接连接。相对于传统的无源铜背板技术,正交硬件架构大大缩短了业务线卡与交换矩阵卡之间的高速信号传输距离,为交换机的高速信号稳定传输提供了硬件架构基础。现在的交换机,为了提高背板器件可用性,一般不会在背板上设计芯片,而全部是硬件链路,将器件故障率降低。

2.2 主控单板(引擎)

        提供设备的管理和控制功能以及数据平面的协议处理功能,负责处理各种通信协议;作为用户操作的代理,根据用户的操作指令来管理系统、监视性能,并向用户反馈设备运行情况;对接口板、交换模块、风扇、电源进行监控和维护。

2.3 交换网板

主要是负责跨接口单板卡之间的数据转发交换负责各接口板之间报文的交换、分发、调度、控制等功能。通常交换单元采用高性能的ASIC芯片,提供线速转发。从接口单板A到接口单板B的数据转发路径是接口单板A->背板->交换网板->背板->接口单板B。交换网板上一般会有一个或者多个交换芯片,交换机芯片通过交换网板内部链路、背板与各个接口单板相连,提供接口单板之间的数据交换。

        交换网板不是必须有的,因为交换功能可以集成在主控板上(也就是引擎上)。但是这样做有个坏处就是一旦引擎挂了,交换功能也会随之关闭,不能使用,这样就严重影响了性能。所以将交换功能单独弄出来集成到交换网板上,这样即使引擎挂了,交换机也可以通过交换网板进行二层交换,不影响性能。

        交换网板的好处就是与主控引擎实现了管理控制与转发分离,每个模块只需要专注做一件事情就可以了,提高了效率。

2.4 接口单板

        也称为接口单元或业务处理板,提供业务传输的外部物理接口,完成报文接收和发送。对于分布式系统,承担部分协议处理和交换/路由功能。

        一般来说就是提供交换机端口的模块。

三、交换机的接口

3.1RG-45接口

        这种接口就是我们现在最常见的网络设备接口,俗称"水晶头",专业术语为RJ-45连接器,属于双绞线以太网接口类型。RJ-45插头只能沿固定方向插入,设有一个塑料弹片与RJ-45插槽卡住以防止脱落。这种接口在10Base-T以太网、100Base-TX以太网、1000Base-TX以太网中都可以使用,传输介质都是双绞线,不过根据带宽的不同对介质也有不同的要求,特别是1000Base-TX千兆以太网连接时,至少要使用超五类线,要保证稳定高速的话还要使用6类线。

3.2 SC光纤接口

        SC光纤接口在100Base-TX以太网时代就已经得到了应用,因此当时称为100Base-FX(F是光纤单词fiber的缩写),不过当时由于性能并不比双绞线突出但是成本却较高,因此没有得到普及,现在业界大力推广千兆网络,SC光纤接口则重新受到重视。
    光纤接口类型很多,SC光纤接口主要用于局域网交换环境,在一些高性能千兆或万兆交换机和路由器上提供了这种接口,它与RJ-45接口看上去很相似,不过SC接口显得更扁些,其明显区别还是里面的触片,如果是8条细的铜触片,则是RJ-45接口,如果是一根铜柱则是SC光纤接口。

3.3 Consle口

        是用来配置交换机的,所以只有网管型交换机才有。而且还要注意,并不是所有网管型交换机都有,那是因为交换机的配置方法有多种,如通过Telnet命令行方式、Web方式、TFTP方式等。虽然理论上来说,交换机的基本配置必须通过Console(控制)端口,但有些品牌的交换机的基本配置在出厂时就已配置好了,不须要进行诸如IP地址、基本用户名之类的基本配置,所以这类网管型交换机就不用提供这个Console接口了,而且就目前来说还占多数。这类交换机通常只需要通过简单的Telnet或Java程序的Web方式进行一些高级配置即可。
      当然也有一些交换机还是提供了Console接口的,但要注意的是,用于交换机配置的Console端口并不是所有交换机都一样,有的采用与Cisco路由器一样的RJ-45类型Console接口,而有的则采用串口作为Console接口。

四、交换机的主要功能与工作方式

        交换机的主要功能包括物理编址、网络拓扑结构、错误校验、帧序列以及流控。交换机还具备了一些新的功能,如对VLAN(虚拟局域网)的支持、对链路汇聚的支持,甚至有的还具有防火墙的功能。     

4.1 三大基本功能:

地址学习: 以太网交换机了解每一端口相连设备的MAC地址,并将地址同相应的端口映射起来存放在交换机缓存中的MAC地址表中。

转发/过滤: 当一个数据帧的目的地址在MAC地址表中有映射时,它被转发到连接目的节点的端口而不是所有端口(如该数据帧为广播/组播帧则转发至所有端口)。

消除回路: 当交换机包括一个冗余回路时,以太网交换机通过生成树协议避免回路的产生,同时允许存在后备路径。

4.2 交换方式

端口交换

        端口交换技术最早出现在插槽式的集线器中,这类集线器的背板通常划分有多条以太网段(每条网段为一个广播域),不用网桥或路由连接,网络之间是互不相通的。以太主模块插入后通常被分配到某个背板的网段上,端口交换用于将以太模块的端口在背板的多个网段之间进行分配、平衡。根据支持的程度,端口交换还可细分为:
        ·模块交换:将整个模块进行网段迁移。
        ·端口组交换:通常模块上的端口被划分为若干组,每组端口允许进行网段迁移。
        ·端口级交换:支持每个端口在不同网段之间进行迁移。这种交换技术是基于OSI第一层上完成的,具有灵活性和负载平衡能力等优点。如果配置得当,那么还可以在一定程度进行容错,但没有改变共享传输介质的特点,自而未能称之为真正的交换。

这种交换手段实际上就是将端口从一个网络移到另一个网络,实现的二层交换

帧交换

        帧交换是应用最广的局域网交换技术,它通过对传统传输媒介进行微分段,提供并行传送的机制,以减小冲突域,获得高的带宽。一般来讲每个公司的产品的实现技术均会有差异,但对网络帧的处理方式一般有以下几种:

  •  直通式:

    它在输入端口检测到一个数据包时,检查该包的包头,获取包的目的地址,启动内部的动态查找表转换成相应的输出端口,在输入与输出交叉处接通,把数据包直通到相应的端口,实现交换功能。由于不需要存储,延迟非常小、交换非常快,这是它的优点。它的缺点是,因为数据包内容并没有被以太网交换机保存下来,所以无法检查所传送的数据包是否有误,不能提供错误检测能力。由于没有缓存,不能将具有不同速率的输入/输出端口直接接通,而且容易丢包。

  •  存储转发:

        通过对网络帧的读取进行验错和控制。

        存储转发方式是计算机网络领域应用最为广泛的方式。它把输入端口的数据包先存储起来,然后进行CRC(循环冗余码校验)检查,在对错误包处理后才取出数据包的目的地址,通过查找表转换成输出端口送出包。正因如此,存储转发方式在数据处理时时延大,这是它的不足,但是它可以对进入交换机的数据包进行错误检测,有效地改善网络性能。尤其重要的是它可以支持不同速度的端口间的转换,保持高速端口与低速端口间的协同工作。

  • 碎片隔离(快速转发)

        这是介于前两者之间的一种解决方案。它检查数据包的长度是否够64个字节,如果小于64字节,说明是假包,则丢弃该包;如果大于64字节,则发送该包。这种方式也不提供数据校验。它的数据处理速度比存储转发方式快,但比直通式慢。

信元交换

        信元交换又叫异步传输模式(Asynchronous Transfer Mode,ATM),是一种面向连接的快速分组交换技术,它是通过建立虚电路来进行数据传输的。ATM采用固定长度的信元作为数据传送的基本单位,信元长度为53字节,其中信元头尾5字节,数据为48字节。长度固定的信元可以使ATM交换机的功能尽量简化,只用硬件电路就可以对信元头中的虚电路表示进行识别,因此缩短了每个信元的处理时间。另外ATM采用了统计时分复用的方式来进行数据传输,根据各种业务的统计特性,在保证服务质量要求的前提下,在各个业务之间动态地分配网络带宽。

        在数据传输中,来自不同业务和不同源端发送的信息统一以固定字节的信元汇集在一起,在ATM交换机的缓冲区排队,然后传送到线路上,由信息头中的地址来确定信元的去向。使用这种方法可使任何业务按实际需要占用资源,保证网络资源得到合理利用,目前ATM技术被广泛应用于银行等金融机构中

聊一聊性能测试指标

聊一聊性能测试指标



聊一聊性能测试指标



前言






上文说到了性能测试就是在功能测试通过的前提下,通过合理的加压方式及策略对系统进行性能测试,在这过程中监控并收集服务端应用程序的各项性能指标以及硬件资源使用情况(硬件资源包含了服务端及测试端)来评估系统是否存在性能问题。


本章作为性能测试系列更新的第二章,主要介绍下在服务端性能测试中常见的性能指标。


在说之前,先推一篇在刚接触性能测试时觉得不错的性能测试基础随笔:https://www.cnblogs.com/puresoul/p/5456855.html。testing写的第二系列也相当于是借鉴了这篇文章吧!

聊一聊性能测试指标




性能测试指标



不同群体性能


不同的群体由于视角的不同,关注的侧重点也不同。比如系统的用户只关心系统的一个响应速度及稳定性;而系统的开发者可能会更注重系统的架构、数据库的设计、代码是否存在性能问题、代码是否可以进一步的优化、代码的扩展性等问题;运维可能更关心服务器的一个资源情况、系统的上限(最大处理量)、系统存在那些瓶颈、怎么可以提升系统性能等。说到这里,可以看出,因为身处位置的不同,所以看待问题的方式也不一样,不同的群体关心的性能指标也不一样。

那么,在性能指标这方面,测试又该关心那些指标呢?

测试人员通常是作为软件质量控制的一个角色,不仅仅是找bug,需要对整个软件的质量负责,性能也属于质量的一部分,因此测试人员眼中的性能应该是全面的,考虑的东西也需要全面。
1、测试人员需要考虑全面的性能,包括用户、开发、管理员等各个视角的性能。
2、测试人员在做性能测试时除开要关注表面的现象如响应时间,也需要关注本质,比如用户看不到的服务器资料利用率,架构设计是否合理?代码是否合理等言方方面面。

说到这里,后面可能会更新一篇针对软件测试工程师的职责的文章。下面来看看软件测试工程师常关注的性能测试指标!
聊一聊性能测试指标




性能测试分类


从性能测试分析度量的度角来看,可以分几个维度来收集考察各项性能指标。
1.系统性能指标
2.资源性能指标
3.中间件指标
4.数据库指标
5.稳定性指标
6.可扩展性指标
7.可靠性指标

下面分别介绍这几个维度的常见指标、指标含义及参考标准等方面,下述部分介绍及业内参考标准取自于百度百科。
聊一聊性能测试指标




资源性能指标


聊一聊性能测试指标

资源性能指标

聊一聊性能测试指标


一般常见的资源性能指标有:CPU、内存、磁盘吞吐量、网络吞吐量。
聊一聊性能测试指标



聊一聊性能测试指标

CPU

聊一聊性能测试指标


介绍:CPU也叫中央处理器,作为计算机系统的运算核心和控制核心,是信息处理、程序运行的最终执行单元。cpu是计算机内的电子电路,通过执行由指令指定的基本算术、逻辑、控制和输入/输出操作来执行计算机程序的指令。

参考标准:CPU指标主要指的CPU利用率,包括用户态(user)、系统态(sys)、等待态(wait)、空闲态(idle)。
1.CPU利用率要低于业界警戒值范围之内,即小于或者等于75%
2.CPU sys%小于或者等于30%
3.CPU wait%小于或者等于5%
聊一聊性能测试指标



聊一聊性能测试指标

内存

聊一聊性能测试指标


介绍:内存是计算机中重要的部件之一,它是外存与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大。内存(Memory)也被称为内存储器和主存储器,其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。

参考标准:现在的操作系统为了最大利用内存,在内存中存放了缓存,因此内存利用率100%并不代表内存有瓶颈,衡量系统内存是否有瓶颈主要靠SWAP(与虚拟内存交换)交换空间利用率,一般情况下,SWAP交换空间利用率要低于70%,太多的交换将会引起系统性能低下。
聊一聊性能测试指标



聊一聊性能测试指标

磁盘吞吐量

聊一聊性能测试指标


介绍:磁盘吞吐量简称为Disk Throughput,是指在无磁盘故障的情况下单位时间内通过磁盘的数据量。

参考标准:磁盘指标主要有每秒读写多少兆,磁盘繁忙率,磁盘队列数,平均服务时间,平均等待时间,空间利用率。其中磁盘繁忙率是直接反映磁盘是否有瓶颈的的重要依据,一般情况下,磁盘繁忙率要低于70%。
聊一聊性能测试指标




聊一聊性能测试指标

网络吞吐量

聊一聊性能测试指标



介绍:网络吞吐量简称为Network Throughput,是指在无网络故障的情况下单位时间内通过的网络的数据数量。单位为Byte/s。网络吞吐量指标用于衡量系统对于网络设备或链路传输能力的需求。当网络吞吐量指标接近网络设备或链路最大传输能力时,则需要考虑升级网络设备。

参考标准:网络吞吐量指标主要有每秒有多少兆流量进出,一般情况下不能超过设备或链路最大传输能力的70%。
聊一聊性能测试指标




系统性能指标


一般常见的系统性能指标有:响应时间、系统处理能力、吞吐量、并发用户数、错误率。下面部分介绍及业内参考标准取自于百度百科。
聊一聊性能测试指标




聊一聊性能测试指标 

响应时间

聊一聊性能测试指标 


介绍:响应时间,简称RT。是指系统对请求作出响应的时间,可以理解为是指用户从客户端发起一个请求开始,到客户端接收到从服务器端返回的响应结束,整个过程所耗费的时间。直观上看,这个指标与人对软件性能的主观感受是非常一致的,因为它完整地记录了整个计算机系统处理请求的时间。

在性能检测中一般以压力发起端至被压测服务器返回处理结果的时间为计量,单位一般为秒或毫秒,由于一个系统通常会提供许多功能,而不同功能的处理逻辑也千差万别,因而不同功能的响应时间也不尽相同,甚至同一功能在不同输入数据的情况下响应时间也不相同。所以,在讨论一个系统的响应时间时,通常是指该系统所有功能的平均时间或者所有功能的最大响应时间。


参考标准:不同行业不同业务可接受的响应时间是不同的,一般情况,对于在线实时交易的系统:
  • 互联网企业:500毫秒以下,例如淘宝业务10毫秒左右。

  • 金融企业:1秒以下为佳,部分复杂业务3秒以下。

  • 保险企业:3秒以下为佳。

  • 制造业:5秒以下为佳。

  • 时间窗口:不同数据量结果是不一样的,大数据量的情况下,2小时内完成。

聊一聊性能测试指标


这里需要注意的是,响应时间的绝对值并不能直接反映软件性能的高低,它取决于用户对该响应时间的接受程度。


聊一聊性能测试指标 

系统处理能力

聊一聊性能测试指标 


介绍:系统处理能力是指系统在利用系统硬件平台和软件平台进行信息处理的能力。系统处理能力通过系统每秒钟能够处理的交易数量来评价,交易有两种理解:一是业务人员角度的一笔业务过程;二是系统角度的一次交易申请和响应过程。前者称为业务交易过程,后者称为事务。两种交易指标都可以评价应用系统的处理能力。


一般情况下,系统处理能力又用以下几个指标来度量:
  • HPS(Hits Per Second):每秒点击次数,单位是次/秒。

  • TPS(Transaction per Second):系统每秒处理交易数,单位是笔/秒。

  • QPS(Query per Second):系统每秒处理查询次数,单位是次/秒。


在互联网业务中,如果某些业务有且仅有一个请求连接,那么TPS=QPS=HPS,一般情况下用TPS来衡量整个业务流程,用QPS来衡量接口查询次数,用HPS来表示对服务器点击请求。

        参考标准:无论TPS、QPS、HPS,此指标是衡量系统处理能力非常重要的指标,越大越好一般情况下:

  • 金融行业:1000TPS~50000TPS,不包括互联网化的活动
  • 保险行业:100TPS~100000TPS,不包括互联网化的活动
  • 制造行业:10TPS~5000TPS
  • 互联网电子商务:10000TPS~1000000TPS
  • 互联网中型网站:1000TPS~50000TPS
  • 互联网小型网站: 500TPS~10000TPS

聊一聊性能测试指标



聊一聊性能测试指标 

吞吐量

聊一聊性能测试指标 


介绍:吞吐量是指系统在单位时间内处理请求的数量。

对于单用户的系统,响应时间可以很好地度量系统的性能,但对于并发系统,通常需要用吞吐量作为性能指标。

对于一个多用户的系统,如果只有一个用户使用时系统的平均响应时间是t,当有你n个用户使用时,每个用户看到的响应时间通常并不是n×t,而往往比n×t小很多(当然,在某些特殊情况下也可能比n×t大,甚至大很多)。一般而言,吞吐量是一个比较通用的指标,两个具有不同用户数和用户使用模式的系统,如果其最大吞吐量基本一致,则可以判断两个系统的处理能力基本一致。
聊一聊性能测试指标


聊一聊性能测试指标 

并发用户数

聊一聊性能测试指标 


介绍:并发用户数指在同一时刻内,登录系统并进行业务操作的用户数量。

并发用户数对于长连接系统来说最大并发用户数即是系统的并发接入能力。对于短连接系统而言最大并发用户数并不等于系统的并发接入能力,而是与系统架构、系统处理能力等各种情况相关。

与吞吐量相比,并发用户数是一个更直观但也更笼统的性能指标。实际上,并发用户数是一个非常不准确的指标,因为用户不同的使用模式会导致不同用户在单位时间发出不同数量的请求。

除了用户并发数还有在线用户数和系统用户数,一般三者的关系是:系统用户数 >= 在线用户数 >= 并发用户数
聊一聊性能测试指标



聊一聊性能测试指标 

错误率

聊一聊性能测试指标 


介绍:错误率简称FR,指系统在负载情况下,失败交易的概率。错误率=(失败交易数/交易总数)*100%。

参考标准:不同系统对错误率的要求不同,但一般不超出千分之六,即成功率不低于99.4%
聊一聊性能测试指标




中间间指标


常用的中间件例如Tomcat、Weblogic等,指标主要包括JVM、ThreadPool、JDBC。这个有兴趣的可以百度下。testing百度了一张图片,具体的如下:

聊一聊性能测试指标


参考标准: 当前正在运行的线程数不能超过设定的最大值。一般情况下系统性能较好的情况下,线程数最小值设置50和最大值设置200比较合适。
当前运行的JDBC连接数不能超过设定的最大值。一般情况下系统性能较好的情况下,JDBC最小值设置50和最大值设置200比较合适。
GC频率不能频繁,特别是FULL GC更不能频繁,一般情况下系统性能较好的情况下,JVM最小堆大小和最大堆大小分别设置1024M比较合适。
聊一聊性能测试指标



数据库指标


常用的数据库例如MySQL指标主要包括SQL、吞吐量、缓存命中率、连接数等,这个有兴趣的也可以百度下。testing百度了一张图片,具体如下:

聊一聊性能测试指标



参考标准:

  • SQL耗时越小越好,一般情况下毫米、微秒级别。

  • 命中率越高越好,一般情况下不能低于95%。

  • 锁等待次数越低越好,等待时间越短越好。

聊一聊性能测试指标




稳定性指标


聊一聊性能测试指标

聊一聊性能测试指标




可扩展性指标


聊一聊性能测试指标

聊一聊性能测试指标




可靠性指标


对于服务端性能测试,从系统可靠性指标度量分析时,常见从三类来入手:

  • 双机热备

  • 集群

  • 备份和恢复

聊一聊性能测试指标



聊一聊性能测试指标 

双机备热

聊一聊性能测试指标 


对于将双机热备作为可靠性保障手段的系统,可衡量的指标如下:

  • 节点切换是否成功及其消耗时间。

  • 双机切换是否有业务中断。

  • 节点回切是否成功及其耗时。

  • 双机回切是否有业务中断。

  • 节点回切过程中的数据丢失量在进行双机切换的同时,使用压力发生工具模拟实际业务发生情况,对应用保持一定的性能压力,保证测试结果符合生产实际情况。


聊一聊性能测试指标



聊一聊性能测试指标 

集群

聊一聊性能测试指标 


对于使用集群方式的系统,主要通过以下方式考量其集群可靠性:

  • 集群中某个节点出现故障时,系统是否有业务中断情况出现

  • 在集群中新增一个节点时,是否需要重启系统

  • 当故障节点恢复后,加入集群,是否需要重启系统

  • 当故障节点恢复后,加入集群,系统是否有业务中断情况出现

  • 节点切换需要多长时间在验证集群可靠性的同时,需根据具体情况使用压力工具模拟实际业务发生相关情况,对应用保持一定的性能压力,确保测试结果符合生产实际情况。

聊一聊性能测试指标



聊一聊性能测试指标 

备份和恢复

聊一聊性能测试指标 


本指标为了验证系统的备份/恢复机制是否有效可靠,包括系统的备份和恢复、数据库的备份和恢复、应用的备份和恢复,包括以下测试内容:

  • 备份是否成功及其消耗时间。

  • 备份是否使用脚本自动化完成。

  • 恢复是否成功及其消耗时间。

  • 恢复是否使用脚本自动化完成指标体系的运用原则。

  • 指标项的采用和考察取决于对相应系统的测试目的和测试需求。被测系统不一样,测试目的不一样,测试需求也不一样,考察的指标项也有很大差别。

  • 部分系统涉及额外的前端用户接入能力的,需要考察用户接入并发能力指标。

  • 对于批量处理过程的性能验证,主要考虑批量处理效率并估算批量处理时间窗口。

  • 如测试目标涉及到系统性能容量,测试需求中应根据相关指标项的定义,明确描述性能指标需求。

  • 测试指标获取后,需说明相关的前提条件(如多少的业务量、系统资源情况等)。


聊一聊性能测试指标



结语


好了,第二篇文章到此结束,这篇文章写的稍微费力点。为了尽可能的写详细点,上述文章有些东西testing也是临时百度copy的,testing也顺便涨了一波见识。上面提到的后三个指标testing也没有具体了解过,大多数公司在开展性能测试的时候应该会很少涉及到这几个点,但这几个点从产品整体性能和质量来讲,又是不得不关注的点,这里算是给大家提供一些测试思路吧,有兴趣的可以百度了解了解。
朋友们看完后也可以看看前言testing说的那个随手博客。如果有问题可以联系testing或者评论区留言哦~


以上是关于交换机基本介绍(分类性能指标硬件构成及工作方式)的主要内容,如果未能解决你的问题,请参考以下文章

聊一聊性能测试指标

计算机网络笔记Part1 概述

计算机硬件基础知识

软件测试常见性能指标都有哪些,并简述其定义

性能专题:一文搞懂性能测试常见指标

1.1计算机系统组成及工作原理简介