论网络测试在信息化建设中的作用
作者:网络转载 发布时间:[ 2011/10/9 10:31:21 ] 推荐标签:
网络测试在信息化建设中起到了不可获取的作用。然后网络测试所面临的挑战也越来越多。不断发展的信息技术,无论从广度上,还是深度上都对网络测试提出了新的要求。如今的网络测试,越来越多的时候,被测的对象不仅仅是单独的计算机网络或是网络设备,而是作为整个信息系统的一部分。不仅要测试网络平台自身的功能,性能等指标,更要把它放在整个系统的环境下进行考量,考察其与信息系统其他部分之间的关联与交互。
1 网络测试在信息化建设中的作用随着人类社会迈入信息化时代,随着信息化建设的不断深入,人们的日常生活与工作对信息系统的依赖也越来越深。越来越多的关键数据储存在信息系统中,越来越多的核心业务通过信息系统来实现,越来越多的信息交换与数据传输也通过信息系统来实现。因此,对整个信息系统的功能正确性,执行效率,运行稳定性,可靠性,安全性提出了越来越高的要求。在这样的发展背景下,网络测试作为保障整个信息系统正常稳定运行的重要手段,起到了日益重要的作用。
首先,计算机网络作为整个信息系统的运行基础与底层平台,其的运行是否正确,可靠,安全,稳定。对于信息系统与信息应用来说是至关重要。一旦网络系统出现故障,那么届时所有的上层应用都将受到影响,甚至面临系统瘫痪的危险。而网络测试能够有效的发现网络系统的自身故障与潜在隐患,降低网络运行的风险,提高网络系统的可靠性与稳定性。
其次,网络测试是整个信息系统的系统级测试的重要组成部分。在实际的信息化应用过程中,经常会面临这样的问题。终用户反应应用系统的执行速度很慢,或者某个功能实现不正常。然而系统实施方与维护方经过多方查证,却根本不知道系统慢在何处,无法给终用户以满意的答复。
因为终用户接触的一般只是整个信息系统的上层应用与具体界面,反馈的只是问题的表象。即便是系统底层出现的问题,到了终用户那里,也往往是通过上层应用系统的界面表现出来。此时,经常会给人一种错觉,这是一个应用系统的问题。然后,事实可能恰恰相反,问题产生的根本原因很有可能是在底层系统,网络平台乃至物理传输层。不经过对整个信息系统的完整的系统级的测试,包括从底层的物理传输层即网络布线测试,到网络平台测试,再到系统主机测试,后到上层应用系统的测试这样一个逐层测试,无法对问题进行定位。由此可见,网络测试在整个系统级测试是不可缺少的重要组成部分。
2 网络测试技术的发展趋势网络测试技术自从网络通信产品的诞生起成为整个网络技术中不可或缺的部分,到目前为止,其技术的主体已经相当成熟。网络测试大体上可以分为:网络设备功能测试、网络设备性能测试、网络协议一致性测试、网络流量监测、网络协议分析与故障定位、端到端QoS传输性能测试、网络安全性测试、网络管理测试、网络应用层测试等。然而,随着这些年信息技术的不断发展,网络测试技术出现了很多有别于传统的新的发展趋势。
第一、网络测试的重点从以往的单纯关注网络产品逐步向更加关注网络的整体性能所转变。
传统意义上的网络测试,往往意味着对网络设备的测试。很多时候,在广大用户和网络管理人员心中存在这样一种误区,认为网络设备通过了测试,等同于整个网络也通过了测试,网络设备性能达到了要求,等于整个网络的性能也达到了要求。实际上,无数个案例告诉我们这样的想法是片面的。在测试中,我们会经常发现这样的现象,1+1并不等于2.如的木桶理论所指出的那样,一条网络链路的传输性能是由其上面薄弱的一环所决定的,而不幸的是网络设备自身的性能往往是网络链路上坚固的一环,单纯对网络设备进行测试并不能反映整个网络链路的真实性能。一条网络策略配置错误,一个网络端口接触不良,网络受到病毒的影响,网络拓扑设置不当,网络中存在大量的广播包,网络出口带宽收到限制,这些都会导致网络的传输速率受到影响,导致你投资数十万乃至数百万的高昂网络设备“英雄无用武之地”。因此,对网络整体性能的测试与评估,才是网络测试的终目的。而且从用户的角度来说,他并不关心具体每台网络设备的传输速率是多少,他关心的是“我访问服务器的速度是多少?”“我上网的速度是多少?”这些都是网络整体性能的反映,而不是单台网络设备的反映。
第二、网络测试的对象从以往的侧重网络层逐步向侧重网络应用测试转变。
传统的网络测试工作,大多是使用测试设备按照RFC2544等规范的要求,测试丢包率是多少,延迟多大等等这些指标而已。可是我们不妨换位思考一下这个问题: 测试的终目的是为什么? 用户的终需求是什么?答案其实很简单: 是要确保网络平台能够承载各种各样的应用。我们设想一下如下的场景,当你告诉你的用户某种条件下,测试结果为丢包3%时,他常常会一脸茫然。这样的测试结果对他来说没有任何实际意义。用户实际关注的问题往往是:“这样的网络能否满足我的业务需求?在这样的网络带宽条件下,我能否开展视频会议业务?能有多少个用户同时上线,访问我的Web网站?”诸如此类的问题。 在这样的情况下,如果凭借以往单纯的网络层测试方法,你如何回答用户的问题?你如何给出用户关心的数据?解答用户的问题,满足用户的测试需求。只能通过网络应用层测试来实现。在实际测试中,往往可以很轻松的举出很多例子,来证明一个三层性能测试结果好的网络设备,一个丢包率和延时极低的设备,极有可能是在实际上层应用中被用户投诉多的设备。因为网络设备的传输性能对运行在其之上的应用系统性能的影响是非线性的。所以对网络应用层的测试才是网络测试的真正意义所在。如今的网络应用层测试,包括视频业务测试、话音业务测试、门户网站访问测试、邮件业务测试、文件与数据传输测试等,这些都越来越成为今后网络测试与用户关注的重点。
第三、网络的安全性测试日益得到重视。
近年来,通过网络入侵系统或者传播病毒的事件愈演愈烈,造成的损失不计其数。网络安全日益得到大家的重视。网络安全测试应该不仅仅只考虑对网络安全设备(例如防火墙、入侵检测系统、防病毒软件)的测试,更应该侧重以下几点:1)对网络整体安全策略的测试,例如:系统密码的安全策略,数据传输是否加密等;2)对网络整个拓扑结构的测试,安全设备是否部署在了需要的关键位置上等;3)对应用层系统的安全测试,主要包括在操作系统层面,对主机进行漏洞扫描测试,对Web系统进行安全扫描测试等;4)需要指出的是,对网络安全设备进行性能测试,也是至关重要的。测试数据显示,防火墙等网络安全设备由于其自身的功能特点的限制,其对数据包的处理能力,往往不如交换设备。因此,在面临黑客攻击时,其对正确数据包的处理能力,成为了一个非常重要的性能指标。如果一台防火墙,可以阻挡几乎所有的黑客攻击,此时我们可以认为它是一台合格的防火墙吗?答案是不能。如果它在过滤攻击包的同时,也丢弃了大量的正常数据包,那么网络传输与正常业务都将大受影响。因此,衡量网络安全设备是否合格应该要看两个方面,一个是通常的是否能抵御攻击,另一个是在抵御攻击时,对正常数据包能否正常处理。
从目前网络的发展趋势来看,人们对安全性的日益重视是件好事,但是这也提出了新的课题,即如何在网络的性能与安全性之间找到平衡点。因为,安全性的提高,必定是以牺牲一部分性能为代价的。这个牺牲的程度是否可行?是否过度影响了系统的正常性能?是否满足用户的要求?网络测试将为用户的这些问题提供客观的数据与参考依据。
3 网络测试的注意点除了以上的三个发展趋势之外,在进行网络测试时还需要特别注意以下两点:第一、测试结果数据只有在结合了具体的测试方法、测试模型与测试环境的情况下才有意义,单纯的测试数据是没有意义的。
我们常常会遇到这样的情况,有的厂商会宣称自己的设备是700Mbps的转发速率,有的则会说达到了900Mbps,然而在实际使用中,很有可能无法达到这样的性能。这是为什么呢?问题的关键在于,厂商是在理想的测试模型下得到的测试数据,它对于实际应用没有可比意义。例如在上面的测试中,采用1518字节的数据包进行测试,和采用64字节的数据包进行测试,得到的测试结果将大不相同。好比在一个邮局里,要求分拣员要完成一吨的邮件分拣量,如果来的都是300公斤的邮包,那么这个邮件分拣员会很容易的完成分拣任务。但是,如果来的都是重量1克的邮件包,分拣员则会很辛苦,说不定会完不成任务。对于上面的转发速率测试来说,如果被测设备测试的都是中型数据包,那么转发测试结果会很好,大部分设备都会达到“线速”。但如果测试的是小包,对于交换机路由器等设备来说,压力会很大,同样的设备测试结果也可能会很不好。
测试时间在网络测试中是一个非常关键的因素,测试时间的不同,可能会导致大相径庭的结果。有的设备在测试时,1分钟的测试时间还非常好,但超过了这个时间,设备开始了丢包,这是因为有的交换设备是靠缓存来存储数据包,但超过一分钟以后,缓存满了,所以出现了丢包情况。因此测试时间也是测试结果必须关注的一个重要参数。不同的测试时间下,得到的测试结果很有可能是完全不同的。
第二、一定要准确评估测试采用的测试模型与测试拓扑,是否能够满足测试需求。
例如,对于性能测试来说,小型的接入路由器和骨干路由器在简单流量下,性能值可能会非常相似,但如果通过极限压力测试,则结果可能会大相径庭。因此,我们在设计测试模型的时候,如果只设计发送一般的网络流量,而不是极限流量,那么无法得到准确的结果。又比如,对两块通过背板连接在一起的芯片进行测试。如果设计这样一个测试,让所有的流量只通过其中的一个芯片进行转发,这会是一个合格的测试模型吗?我们认为这是一个不好的测试设计,因为背板并不会有任何的流量压力,我们无从考察背板的实际性能。好的测试模型应该是让测试流量要穿过所有的芯片,并也可穿过背板,从而可考验背板能力。
因此来说,一个测试模型是否合适,是关系测试是否成功,是否能达到预期目标的主要因素。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11