网络体检
西雅图Safeco Field棒球场以其创新的可开启式屋顶结构著称,令人叹为观止的奥林匹克山自然景观以及西雅图市区的地平线在场地的各个角度均可一览无余,同时Safeco Field棒球场也将棒球迷们难以获得的绝妙体验提供给了现场每位观众。
当然,所有的大型露天运动场、新闻中心的业务操作均要依靠网络,Mariners在网络维护和故障诊断上也同样不“输球”。如果将网络测试类比于人类体检,Safeco Field 棒球场的网络系统无疑选对了“体测中心”,经过体检预备、体检项目实施、出具报告三大环节,Safeco Field 棒球场的网络系统变得愈加健康透明。
step 1体检预备
洞悉体检需求
随着企业用户对网络依赖程度的加剧,网络的稳定性、安全性和高业务应用性已经越来越受到重视。网络的故障千奇百怪,网络的诊断千头万绪,尤其网络瘫痪已经成为数据通信领域的关键问题。为了确保整个企业网正常地运行,所有的故障都必须在第一时间有效地解决掉。那么如何有效地解决网络故障,给网络的“健康”情况下一个正确的结论呢?
于是,在网络安装、维护、管理和故障诊断的整个过程中都贯穿着网络的测试问题。而网络测试技术自从网络通信产品诞生起就成为通信工业中不可或缺的部分。毫不夸张地说,网络测试对于网络本身好比体检对于人类——高考体检、征兵体检、就职体检、术前体检,在人类社会生活的不同阶段,一个都不能少。
对应于网络世界,网络处于不同运行状态,也会提出不同“体检”需求。
Safeco Field棒球场的网络系统就遇上了这样的问题。
Mariners的网络包括50多台交换机和几百台计算机及IP电话、350多台终端设备,这是所有赛事中最大在前端,有300台PC和40台运行Windonws 2000操作系统的服务器以及12个活动VLAN。同时该网络系统中还包含无线网络应用,如门票扫描以及记者席中供记者使用的无线网络。广域网链路连接几个远程站点,包括整个城市中的商店以及全世界对棒球比分的拨号连接。
在淡季及非赛季,Safeco Field棒球场的IT支持部门和其他IT组织的职能大体一样。他们会处理E-Mail、维护网络和解决病毒问题。在赛季,IT团队主要负责卖点支持、票务问题、信用卡处理、候补区电话以及IT热线配置。整个IT支持队伍必须时刻待命,一旦出现网络速度下降等突发问题,需要立刻进行故障诊断并修复问题。因此,Mariners需要一支精干的网络测试团队。
巡礼体检方式
实施网络测试,有的是自家网管团队担当重任,有的是由系统集成商代劳。目前网络测试的热点在于选择专业性更强的第三方机构。总之“体检方式”是层出不穷。
过去,人们往往认为经过简单培训的人就可以承担测试任务,或者可以直接由最终用户或业务人员进行测试,但是目前业界普遍认识到测试人员需要的素质和技能与开发人员、业务人员是不同的。测试逐步成为一个行业,测试工程师逐步成为一个专门的职业,不少大学已经设立了测试专业,测试工程师也成为IT从业人员的一种职业发展方向。
对具有一定规模的企业来说,都倾向于把开发和测试分开,成立专门的测试组织(如开发中心独立的测试中心,开发部独立的测试部等),采用独立测试的方法,以便提高企业测试水平和测试质量,有利于专业测试人员的技能提升和职业发展。
为应对赛季网络的高负载量,Mariners的网络也需要IT精兵们能够通过网络测试,迅速排查出网络问题症结,为网络突发状况做出应急准备。为此,IT主管从其部门员工中挑选出了一支小型团队,专门负责24×7小时处理特定的网络故障问题和并实施测试。当然将这项任务交付专业性更强的第三方机构承担也是不错的选择。
因为对中小型企业或传统行业企业来说,如何建设与企业核心竞争力无关的专业测试团队和测试组织势必会增加企业成本开支,而采用第三方独立测试(IV&V)或测试外包的方式来满足企业对测试工作的需求,可能是一种更好的选择。即使是大型企业,也需要专业的第三方独立测试或外包测试。根据IDC的统计数据,目前全球测试外包市场约为130亿美元,仅印度的离岸测试外包市场就达到20 亿美元,估计在2008年达到80亿美元。国内的第三方测试和测试外包市场才刚刚兴起,目前的测试外包服务还更多停留在提供人力资源的低级阶段,还有巨大的发展空间。
总之,不管采取何种方式,准备和组织是进行网络性能测试过程的第一步。在这个阶段,需要明确测试的目标和需求,并组织起合适的人员。接下来,便是制订性能测试计划。
step 2体检过程
勾兑体检项目
除了常规的网络基础设施检测,西雅图Safeco Field 棒球场的IT部门主管针对网络安全问题开出了如下“体检”项目清单:
- VLAN透视能力,可以即时发现潜在的和实际的问题;
- VLAN支持,包括饮食办公室、设备管理和安全性管理的VLAN;
- 主动识别配置问题,例如错误的子网掩码往错误的地方发送了数据包;
- 网络流量来源查看,从而能够在病毒造成危害之前识别它们;
- 交换机透视能力,以便在必要的时候可以安装和配置新的交换机。
在选定测试项目后,Dave Curry领导下的IT团队为了更好地透视网络,更积极主动地进行故障诊断,选用了相关的测试工具,从而得以更为快速地识别、解决网络故障。他们可以查看接口状态、连接状态下的主机详情以及趋势数据。当进行故障诊断时,他们还可以将通过测试工具接入网络上的10/100G铜缆端口,即时查看最近的交换机状态、详细信息以及端口统计数据。
通过一些网络监测手段,他们快速发现了可能已经存在很久的IP配置问题,并在第一时间内解决了问题。
现有的网络维护和性能始终是要面对的一个问题,为应对网络上越来越多的流媒体流量,核心结构的网络性能需接受莫大挑战。因此保障网络应用性能是网络测试的真正意义所在。而用户更为关注的是在这样一种网络条件下,网络是否能够承担如此大的业务负载量。
梳理体检流程
网络测试的可选方法种类繁多,根据不同的测试项目需求,也可以使用不同的工具。
当网络宛若初生,尚处于在安装阶段时,物理(电缆)测试是为网络把脉的必备一步。就好似人类进行体检时,血压、身高测量等均属常规测量项目。对网络实体的基础检测会需要运用某些类型的电缆测试设备。电缆系统标准规定了能够确保预期的网络性能的测试程序。但值得注意的是,比特错误率测试法不能提供对系统长期可运行性的预测。
当网络运行迈入正轨,作为底层架构的网络承担起运行其上的各种应用系统,由于所处的环境更为复杂,多种问题迎面而来,这个阶段的网络测试可能是整个测试领域最困难的任务之一。这里的关键问题是应该选择与正在测试的网络层段直接连接的工具。
当企业面临规模扩张,分支机构建立,在总部-分支机构网络环境下,对目标网络的测试必须跨越网络而不能直接连接,网络测试人员面临不断增加的复杂性,这将导致很多问题,而不仅仅是知道目标在哪里。这种情况下,自动测试成为不二之选。
企业业务规模的扩大势必会使底层的网络架构面临更大挑战,针对应用性能的测试能够使 IT主管深入了解应用环境下的网络体质。在性能测试过程中,明确每个场景的参与者人数、比例和具体行为非常重要,这些都是构成性能测试脚本的基础。根据经验,可以从应用服务器的日志中分析用户行为。例如,对于一个OA系统,我们可以从日志中分析出在上午9:00~10:30时段内有280个查看邮件页面的 Page View,且查看时间基本集中在前10分钟; 而在10:30~12:30时间段内对Bug显示页面的查看量是300个Page View,对页面的访问基本平均分配在整个时间段,则我们可以建立两个脚本,前一个脚本模拟查看邮件操作(脚本1),后一个脚本模拟查看Bug操作(脚本 2),考虑运行15分钟的测试场景,则只需在前5分钟运行脚本1,在整个过程中运行脚本2,通过调整Think Time使得Page View达到实际的数值即可。
其实,并不是每个不同的用户应用剖面都需要作为测试场景来设计,在多数情况下,可以通过对测试场景出现的几率、重要性、风险等进行分析,从而最终确定需要设计的测试场景。例如为了应对赛场可能新增的移动终端对无线网络环境的挑战,我们可以测试当有新的移动终端进入原有网络的场景下,网络的各项数据指标,并根据数据指标对网络架构进行调优(如新建一个VLAN)。
任何安全方面的细小疏漏均会造成网络重创。去年的几次重大网络病毒事件,已经向人们敲响警钟。以前,网络的安全性主要是从终端安全做起,而后是防火墙,而现在安全防范性已集成进路由器了。这是未来发展的趋势,只有网络中间的中转设备的安全防范能力越强,安全问题才能得以有效解决。Dave Curry在实际操作中也明确了这一点,通过对网络流量的监测,洞悉网络流量来源,第一时间排查出病毒威胁所在。
当然,根据性能测试应用领域的不同,可以采用不同的性能测试方法来达到性能测试的目标。另外需要提醒的是,性能测试设计还应该包括测试环境、测试数据等的设计,因为影响系统性能的因素很多,保持测试过程中环境和数据的可控性是非常重要的。
从网络测试的解决方案来看,目前企业内较为有效的解决方案是软、硬件结合的方式实施的。服务分析设备作为硬件安装在企业网络中用来收集网络和应用性能数据。应用和数据库服务器,存储了服务分析设备采集的网络和应用性能数据,并提供接口给客户端来读取这些数据。客户端是Web或是基于Windows的、呈现数据进行分析的桌面应用程序。软件功能管理模块可以使用户根据需要选择合适的软件功能模块。这种解决方案为企业提供了极大的灵活性,适合总部-分支机构模式的企业网络。
step 3报告解读
测试部门根据该棒球场网络所具有的系统复杂关联性、地域广泛性、协调多元化等特点,提出了项目群架构关联密集型的测试管理思路,制定了多主线并发测试管理流程,以及目标系统驱动的管理模式。同时,建设了一定规模的测试环境。经过大量的测试工作,对该俱乐部的网络系统进行了一次全面的身体检查,并得出了相关检测结果。
分析体检结果
根据测试的数据,可以看出,该棒球场网络系统基本满足设计需求,可以实现对目前俱乐部各业务系统运行的支撑。
但在许多常规网络测试项目中,我们会发现问题主要表现在以下几个方面。(常规测试项目网络体检分析报告见右下方表格)
- 在此次测试的过程中,我们发现有测试失败的地方都存在跳线上,而永久链路部分并没有问题。经分析查证,得知用户使用的跳线是手工压制的,通过用跳线适配器进行测试,这些跳线全都不合格。在一条网络通道(Channel)链路中跳线易被人所忽略,但是却会给网络带来很大影响。
- 近端串扰(NEXT)较为严重,导致网络速率在某些测试时断偏低、间歇式不通甚至是完全不通。
- IP配置存在不合理,出现数据错误发送的情况。
- 当多套信息系统同时运行时,网络中的数据流量偏大。
- 网络中网络层的安全防护能力较完善,但是应用层的安全危害可能对网络构成影响。
从实际的应用角度而言,由于信息从始发地点到达目标地点过程中,需要经过许多的路由器、网络链路。因此网络速度受多方面因素的影响。网络链路如同遍布各地的高速公路,其中任何一段高速公路出现堵塞,就会影响到整个网络的速度。同时,如果访问的网站访问人员过多或服务器性能不好或服务器上托管了太多的应用系统数据库等等,都会影响到该网络的速度。
近端串扰(NEXT)是布线认证测试中最重要的参数之一,它直接反映了布线系统的传输性能。从技术上来讲 NEXT主要是考察各线对之间电信号相互干扰的情况,它的失败会导致网络速率的降低、间歇式不通甚至是完全不通。而此次测试发现一些故障主要是因为打线人员对6类线缆的性能和布线标准不熟悉,暴露出了布线安装人员对布线规范了解不足的情况。
提出医治建议
- 网络基本符合目前俱乐部业务系统的使用要求。在某些时段出现信息流量偏大现象,可能引起业务系统运行的迟延,在增加业务系统的情况下,可能引起网络负载过重,建议增加网络的带宽。
- 部分跳线不合规范,网络近端串扰较为严重,网络时延较长。应严格规范网络布线阶段的施工工艺,明确布线标准。
- 对应用层的安全防护不足,可能引起网络安全问题发生。建议管理员安装网络版防病毒软件,同时加强提供安全告警日志以及用户操作日志等的能力。
- 对部分不合理的IP配置及时调整。