两把利剑,别把网络工程师带到故障面前
首先,你的网络维护是否还只是停留在对网线的测试上呢?如果这样的话,你对你的网络健康状况是否做到心中有数了?
网络管理、维护工具主要可以分为两大类:网络管理系统和网络测试仪表。
网络管理系统的构成包括:网管工作站(运行各种网络管理软件)和分布在不同网络设备中的网管代理(Agent)或硬件探头(Probe)。Probe是RMON标准中的专业名词,它是一种硬件采集设备,对网络流量进行采集、统计,然后通过SNMP将数据传送给网管工作站进行进一步处理、显示。
网络测试仪表按照OSI协议层来分类,可分为物理层的测试仪表(如电缆测试仪、误码测试仪、OTDR等)和协议分析仪(用于解决2-7层网络协议问题)。而协议分析仪又可分为基于硬件的协议分析仪和基于软件的协议分析仪。基于硬件的协议分析仪是指采用专门的硬件设计(如:专用CPU、FPGA芯片、高速捕捉缓冲区)来完成对网络数据包的捕捉和实时协议分析;基于软件的协议分析仪一般由普通的PC机、网卡和协议分析软件构成,它利用PC机的RAM来捕捉数据包,用PC机的CPU来进行网络协议分析。
如下图所示,可以看出不同的工具在OSI网络协议层次管理和维护中的定位和所起的作用。
由于目前市场上有众多的网络管理、维护工具,每种工具都有各自的产品定位和侧重点,并且有些工具在功能上也存在一定的重复性,这在一方面给网络管理、维护人员提供了更多灵活的选择空间,在另一方面,也给他们确定何种产品更适合自己的应用和需要带来一定的难度。
网络管理维护工具 |
功能侧重点 |
优点和局限性 |
主要应用领域 |
网络节点管理系统 |
对分布在不同地理位置的网络设备进行集中式的参数配置管理;
监视网络的拓扑结构和设备运行状态;
对网络节点进行故障和性能管理。 |
优点:具有较全面的网络节点和主机系统的管理功能,并具有完善的事件处理和告警功能。
局限性:
缺乏对网络流量的分析能力;
会产生一定的网管流量负荷。 |
适合于对中、大型网络的集中式网络设备管理和监控。
属于网络管理的基本系统,一般在网管项目的初期便可实施。 |
基于RMON的分布式流量监测系统 |
进行分布式的长时期数据采集和流量监测;
对网络链路进行性能分析、确定网络瓶颈;
确定网络趋势,对网络容量规划提供参考依据。 |
优点:可进行分布式的流量监测,分析流量分布和发展趋势。
局限性:
会产生较高的网管流量负荷;
缺乏对交换式以太网的全面监测手段;
网络故障分析功能较弱;
对大型网络的监测,需要很大的投资。 |
适合于对中、大型网络进行集中式网络性能监测和预防性网络维护;
属于较高级的网络管理系统,且投资较大,一般在网管项目的高级阶段实施。 |
基于硬件的协议分析仪 |
进行实时的协议过滤、统计和解码;
100%数据捕捉;
实时的专家系统分析(支持OSI 2-7层);
完善的链路层故障测试功能和部分物理层测试功能。 |
优点:
便携性好,一台仪表可以灵活地分时测试不同地理位置的网络故障;
能进行准确的网络故障检测和定位;
具有一定的物理层测试功能。
局限性:
同软件协议分析仪相比,价格较高;
单台仪表只能对1-2个网段进行同时测试。 |
适合于对中、大型网络进行网络安装和响应式的网络故障维护;
属于数据通信网络安装、维护的必备工具,尤其当采用了先进的宽带网络技术(如ATM、帧中继和快速以太网)时,它更为适用。 |
基于软件的协议分析仪 |
用软件实现协议过滤和解码(一般为后分析方式);
具有一定的统计功能;
后分析方式的专家系统。 |
优点:
价格便宜。
局限性:无法100%数据捕捉;
非常局限的数据链路层错误事件报告能力。 |
适合于对小型网络进行初步性的网络协议故障检测;
一般只适用于对局域网的维护。 |
电缆测试仪,光时域反射计,误码测试仪 |
进行线缆、光纤的物理层指标、通断情况测试;
对广域网链路的质量和可靠性进行测试。 |
优点:便携性好,价格较便宜。
局限性:只适合于对物理层的网络问题进行诊断和维护。 |
适合于各种网络的线路安装、维护使用。 |
对局域网的维护
局域网是应用最普及、使用范围最广的数据组网方式,这一部分针对运用最广泛的以太网的维护和故障排除,列出一些常见故障现象和相应的处理方法。
常见碰撞故障
A. 本地碰撞(Local Collsion)
在同轴线的网中(10Base2和10Base5),信号沿电缆传输直至碰到来自另一个节点的信号。这时波形会叠盖在一起。部分信号会相互抵消(减弱),而部分信号会相互迭加(加强)。而加强的信号部分的电压值会超过所允许的最高电平。这种过压的现象会被本网段的所有节点所观测到,称之为局部碰撞。
B. 远端碰撞
如果碰撞发生在中继器的另一端,过压的现象在中继器的这一端就不会发现。在中继器这一侧所发现的是不完整的信息帧。这个缩短的信息帧的FCS将会报告有问题并且不会满足64个字节的帧最小要求。事实上,通常是帧短的几乎整个帧首都看不见(含目的和源地址)。而且还会有“阻塞”的字符出现在缩短了的帧的最后4个8位(一组8个二进制位,有时不严格的称为字节)。
这种帧首缩的帧称为远端碰撞。其关键的特征是不存在过压现象,帧的长度小于72个字节并且FCS是无效的。
因为10BaseT的集线器基本上是一个多口的中继器而且每个站点就象一个局部网段,所以在10BaseT中的碰撞几乎全是远端碰撞。
C. 延迟碰撞
当碰撞发生在帧的前同步信号和前64个字节之后,而且是局部碰撞的现象时(有过压或同时发送和接收),也就是和局部碰撞一样只是发生的较晚一些,这种碰撞称延迟碰撞。一般它只在同轴线的网络(在10BaseT网中,监测站必须同时发送才能看见延迟碰撞)。延迟碰撞的通常原因是网卡故障或网络电缆太长。所谓电缆过长的网络是指信号从一端传送另一端的时间超过了最小的合法帧的大小。
D. 延迟的远端碰撞
发生在中继器另外一侧的延迟碰撞就是延迟的远端碰撞。因为中继器将阻止过压传至另一侧,所以只是将本网段的局部碰撞报告给另一侧。延迟的远端碰撞也可以通过分析出现阻塞信号的破损帧的最后几个字节来推断出来。典型的这种类型的碰撞可以在本网段用检查坏的FCS来查出。
常见链路层错误故障
(1)帧检测序列-FCS
一个帧中的FCS错误也称为CRC错误。一般帧首的信息是正确的(如地址等),但接收站累计出的累加和与帧尾的FCS不相符。单一站的FCS数目过大常表明网卡有问题或软件驱动有问题,如果FCS的错误与多个站点相关则可能是电缆故障,网卡驱动故障,集线器接口故障或噪声的影响。
(2)短帧-Short Frame
一个帧比有效的最短帧(72字节)还小而FCS是正常的则为短帧。某些网络协议分析仪和网络监测仪称之为帧不全(Runts),但这不准确。一般来说你看不见短帧。虽然他们的出现不一定会造成网络故障。短帧的最可能原因就是网卡故障,设置错误或网卡驱动文件损坏。
(3)碎片帧-Runts
当发生碰撞时,设备会停止发送没有发完的帧,这种不完整的帧叫碎片帧。这可以是任何长度短于法定帧长的帧,它包括了局部,远端或前端碰撞,也可以是FCS是好的或坏的短帧。
(4)帧过长-Jabber
帧过长在802.3标准中定义为比标准的最大长度(1518 Bytes)还要长的帧,但没有说明其FCS是好还是坏。所以一般很难发现帧过长。造成帧过长的可能原因有坏的网卡,网卡中的驱动文件损坏,电缆故障或接地问题等。
(5)长帧-Long Frame
比标准最长(1518 Bytes)还长的帧,但FCS是有效的帧称为长帧。其可能的原因是软件设置有问题或网卡驱动文件损坏。
(6)定位错误-Alignment Error
是指不能被8整除的帧,FCS也是错误的。通常是由于软件驱动有错误或网络碰撞造成的。
常见集线器和交换机故障
故障和症状 |
潜在原因 |
连接在同一个交换机的网段之间无法通信 |
电缆问题、交换机硬件故障;
两个网段配置的速率不一致,例如一个是10M,一个是100M;
IP地址、子网掩码或者网关配置不对;
VLAN配置不对 |
广播风暴 |
Spanning Tree没有激活或者交换机不支持;
以太网的多播地址配置错误;
应用程序配置错误。 |
吞吐量太低 |
网络设计失误,负荷不均衡;
交换机端口速率配置错误(10M/100M);
失效端口导致大量错误帧;
布线长度超过规范,数据包误码或者干扰太大。 |
大量延迟碰撞的错误
|
在高峰时段将网络测试仪连入集线器,运行网络健康状况测试。此时将会观察到大量错误帧。统计一下任意两个网络设备之间经过的中继器的数量。在10Mbps以太网中不应超过4个,在100Mbps快速以太网中不应超过2个。随着网络用户的增长,新增加的集线器通常与原有的集线器形成“刍菊链”效应。 |
常见路由器故障
故障和症状 |
潜在原因 |
吞吐率性能问题 |
检验是否路由器厂家提供的设备最大运行容限和网络中的峰值速率比较
或者路由器的负荷分担没有配置正确 |
错误的子网掩码 |
路由器配置错误,会使正常的子网地址被理解为广播地址,需要系统的检查系统配置和记录 |
没有默认网关 |
如果节点到有些地址通,到另一些地址不同,可能是网关没有设置 |
路由不同 |
路由器的端口故障
路由协议配置错误,需要分析路由器之间通信的路由报文内容以及路由器的配置 |
其他常见网络和应用错误
故障和症状 |
潜在原因 |
TCP/IP性能低 |
DNS配置不当,导致地址解析时间太长
本地路由,连接在同一个交换机的两个子网的数据还有交换机发给路由器,再有路由器转发会交换机,导致浪费带宽CPU效率
链路负荷太重 |
大量TCP重传 |
链路负荷太重,导致很多数据包和应答包丢失
数据包传输有误码,如FSC错、校验和错;
TCP/IP分组的部分数据包丢失,导致重组时延超出,数据包被重传
接受端缓冲区溢出
应答包传输太慢,发送端主动重传
|
TCP窗口太小 |
优于内存不足导致缓冲区太小
应用程序配置的TCP发送数据包窗口太小 |
不能登录到欲连接的服务器,问题通常在新安装或重新设置工作站后出现,但仅限于一个工作站 |
断开工作站连线,接上网络测试仪执行Ping或者在取得服务器列表后来检查配置的是哪一层的网络协议。注意帧的封装类型(例如802.2),注意检查网卡绑定帧的类型(比如802.3)。 |
在网络繁忙的高峰期访问网络的速度很慢,个别网段的所有工作站对不论是本网段的服务器还是其它网段的服务器都无反应 |
在高峰时段将网络测试仪连接到该网段。运行该网段的网络健康测试,注意观察网络的利用率、碰撞、错误帧、广播帧的状况,此时可能看到平均碰撞率不正常,观察到的流量中可能有根多是碰撞帧碎片。 |
某个工作站间歇性出错,不能登录或者不能访问远端服务器
|
排除帐户和安全设置方面的潜在问题,让用户登录并且试图从另一个工作站重复这一操作。如果成功,则可以用网络测试仪检查从用户端到服务器之间的链路状况。然后测试网卡,检测硬件和驱动程序的功能和状况。如果没有问题则检查IP设置,确定用户的IP地址是否有效或者是否有重复的IP地址,确定本网段的子网掩码和路由器默认地址是否正确,DNS服务器(如果有)地址是否专用。 |
根据经验发现大多数网络故障是与硬件有关的:比如电缆、中继器、Hub、Switch和网卡等,可以使用协议分析仪、网关软件或者线缆测试仪。本文描述了以太网典型故障的查找过程。
故障查找的一般规则
以太网的故障查找可分为以下几个步骤:
收集所有可以收集到的有价值的信息,分析故障的现象。例如,故障是周期性的还是偶发性的,故障出现间隔是否有规律,是个别网段出现问题,还是所有网段都有问题;是个别用户存在问题还是所以用户都有 。出现问题前,系统的设置是什么,是否做了什么改动?做了什么改动;问题出现后,系统设置有什么变化。
使用测试设备分析系统运行的现状和规律,这些规律可以帮助我们了解系统的变化和性能,测试内容应包括:利用率、吞吐量、碰撞率、数据包大小分布、FCS错误等等;观察出现的故障和测试的系统指标之间是否有什么相关性。
根据用户的描述,试验是否可以再次重现问题,便于定位故障。技术人员不要过多指望用户会给出完整准确的情况描述,最好由自己来确认一下。当然也可以让用户演示所发现的问题。
将故障定位到某一特定的网段,或者是单一独立功能组(模块),也可以是某一用户。可以根据系统的文档,确定和问题相关的设备有哪些。一般来说,最好的办法是先把故障细分或隔离在一个小的功能段上,即首先排除最大的简单段,从任何一个方便的、靠近问题的站点入手,利用二分法隔离故障,再继续使用二分法直至把故障划分到最小的单位。
确认是特定的硬件故障还是软件故障。
定位与修复故障。比如是某个用户计算机设备软件或者硬件配置的错误,或者某个网络设备故障、失效导致的数据丢失、数据错误。
验证故障的排除。检测网络服务是否恢复正常,网络的状态和数据分析统计是否恢复到以前正常的情况。
故障查找应注意的事项
由于以太网采用通用总线拓扑结构以及物理层可扩展的潜在问题,所以某个特定物理层的问题会以不同的方式显示出来,而且由于采用的测试手段、位置和环境不同,显示出的现象还常常有矛盾。
为了避免被假象误导,推荐两个故障查找的步骤:
1.沿网段多做几次测试
如果故障现象随测试点的不同还保持一样的话,就可以依照所测试出的故障现象去排除。如果故障现象在一些或所有的测试点都不相同的话,就要把查找故障的方向定在物理层(除非有特别提示),例如去查找坏的电缆、噪声环境、接地循环等故障。
2.要提高测试质量,在测试的同时要把测试仪器设置成至少可同时发送较低的流量。由于增加了网络流量,微小的和间歇性的物理层问题会被暴露出来。
典型故障解决范例
故障1. 不能访问服务器或某项服务
在这里设定服务器或某项服务以前是正常的,并且已经做过如下的工作:
重新冷启动PC机(热启动不能复位全部的适配卡)。
确认PC机没有本身的硬件故障。
确认所有的网络电缆都连接正确。
确认所有的网卡驱动软件都正常地装入,没有报告错误。
确认服务器或服务没有改变,比如重新配置增加硬? 软件。
要测试一下这一故障是否只影响该工作站(本地故障)还是会影响其它站点(大范围故障),可以通过其它工作站装入服务器或服务来证明这一点。这些工作站要在同一网段或Hub上。如果故障在同一网段或Hub上的其它的站点也存在,就试着从其它的Hub或网段上的站点进行测试。
(一)全局问题
通常来说,在同轴网中的物理层故障会导致灾难性的网络故障。使用“二分法”来查找这类故障是可以很快定位解决的。间歇性的故障是比较难以隔离的。
(二)本地故障
在进行硬件故障查找以前,要确认其它用户也不能登录从这台机器上,这就排除了用户帐号的错误。对一个单一的站点来说,典型的故障多发生在坏的电缆、坏的网卡、驱动软件或是工作站设置的不正确等问题上。
(三)网线的问题
目测连接性
检查连接性常用的方法就是检查Hub、收发器以及近期出产的网卡上的状态灯。如果是10BASE5的电缆,要仔细检查所有的AUI电缆是否牢固地连接,划锁要同时锁牢,很多问题只要简单地把未接牢的部分重新紧一下就解决了。
连接脉冲极性问题
无论是NIC还是Hub的连接脉冲极性都可以用测试测出,连接极性故障通常是由电缆的接线错误引起的。
受损的电缆或连接部件
在你检查物理层的问题时,要注意受损的电缆,不正确的电缆类型(比如在以太网上用RG62或RG59),未打好的RJ45头,未按牢的BNC头。对怀疑有问题的电缆可以用一般的电缆测试仪进行测试。
(四)检查链路层的问题
(1)碰撞问题
如果平均碰撞率大于10%或是观察到非常高的碰撞,就需要进一步的测试了。如果可能,试着通过减少网段规模(将网络分成小段)并随时监测碰撞的变化以隔离出发生问题的区域。为了跟踪碰撞情况,就必须知道网络的流量。可以使用背景流量发生器来加入适量的流量(100帧/秒、100字节长的流量),并同时观察网络的统计显示。某些和介质有关的故障是与流量的大小成正比的。可以用控制键改变流量同时观察碰撞与错误的改变。这种做法要特别小心,因为你很容易给网络加入很重的流量。解决与碰撞有关的问题常常是很费劲的,因为测试的情况在很大程度上取决于观察的位置。也许在同一网段相距几尺远的不同观察点所看到的情况就不同,要多找几个点来测试并留意所发生的变化。
如果碰撞与流量成正比,或碰撞几乎是100%,或几乎没有正常的流量,则可能是布线系统出了问题。对于UTP的布线,可以在Hub上断开电缆然后进行电缆测试。对于同轴缆就要进行阻抗测量,可以使用数字表或其他仪表的直流通断功能进行测试。如果电缆两端都有端接器,从T型接头应测得大约25 ,如果从电缆的一端将会测得50 。
(2)帧级错误
如果出现帧级错误,你就要运行错误统计测试,并通过详查功能把有问题的工作站的MAC地址找出,然后经过测试把故障确定下来。可以试着将驱动程序用“干净”的原盘重新装入工作站,要确认各项配置完全。如果这一切仍不奏效,可以试着把有疑问的网卡换掉。
(3)利用率过高
如果利用率过高(平均值大于40%,瞬时峰值高于60%),那么网段负荷就过重了。应当考虑安装网桥或路由器以减少在网段中的流量或把网段分成若干小的网段。
(五)客户服务器连接的完整性
如果在链路层上是完好的,那么我们就要来看一下协议方面是否有什么问题会影响服务器与客户之间的通信。
(1)连通性
使用测试仪表,你可以运行Node Discovery或Ping测试功能,用来验证从测试点是否可以访问服务器或服务功能。如果服务器没有回应,重新冷启动服务器并注意观察所有所需的驱动软件是否正确加载,有无错误提示。
另外也可试着对服务器进行几次Ping测试,要确认请求信号与返回的响应信号数目相等,结果不一致则表明有时好时坏的网卡或Hub的故障导致帧的丢失。临界状态的和已坏的桥或路由器也可以用此方法很快地定位。
(2)服务器或服务的可达性
使用协议分析仪,捕获3至4分钟的数据包来分析。看一下是否有从服务器发出延时请求,并找出是哪个服务器,如果有延时请求,则表明服务器不能完全处理所加载的任务,每一个延时请求作废一个任务请求。
故障2.网络响应慢或性能差
首先,要确定一下是否是与网络介质有关的故障,是一个工作站的问题还是一个服务器或是服务的问题。从其它工作站去访问同样的服务器或服务,并询问本段网络或其它网段上的用户,如果问题不是与介质有关的,要确定问题是否是软件有关,检查网络利用率和软件错误来查找性能差的网络问题。
运行诸如网络统计这样的测试,看一下是否有高流量和不正常的高碰撞存在,在增加背景流量后再运行一下这些测试。如果发现碰撞和PCF错随着流量的增加而增多话,你就应运行电缆测试来检查工作站的连接性。
(一)碰撞问题
如果碰撞较多,要算一下有多带宽被碰撞损失了。把本地和远端碰撞的损失都加起来,如果平均碰撞的值大于5—10%,就要进行进一步的故障查找。同样要检查一下碰撞是否是突发的,也就是说碰撞明显地增多不是因为流量明显增大引起的,如果是这样就意味着某处的物理层出现了比较严重的问题。在碰撞与流量之间应是有一定的关系的。这种关系应当在做网络参照基准测试时收集到。如果碰撞始终是比较多的(但仍是可以接受),可能是太多站点同时在参与发送,或者网络结构应做一些优化使近距离的站点分在一起。过多的碰撞最常见是与介质有关的故障导致的。比如:不正确的端接,特性阻抗不连续(坏接点、残留支缆、残破线缆)等和坏网卡。
(二)过载的网段
如果利用率很高(持续峰值超过60%)而碰撞又可以接受(平均碰撞小于10%),那么网络就饱和了。这时就应该增加网段或用路由器把网段分成较小的可以支持正常流量的网段。
(三)硬件故障
如果出现帧错误,利用仪表可以找出错误帧的来源是那个计算机节点。此后的工作就是在Hub口、网卡和电缆中隔离出特定的故障,如果故障是间歇性的,就替换掉有怀疑的网卡。检查一下服务器/服务是否接在广域网路由器的远端。如果是这样,就用Ping测试来测一下响应时间并与基准测试比较一下。为了保证没丢失帧的情况就要连续运行多次的Ping测试,检查测试请求包与响应包是否相等。如果不相等,远端的介质或互连设备(网桥、路由器等)就有可能是容量问题或有故障。丢帧也是电缆故障之一。比如:UTP布线中的线对串绕和同轴缆由线的环地故障。如果怀疑有丢帧就进行电缆测试。测试接在反应慢的工作站的电缆,也要测一下服务器方向的电缆。
(四)软件故障
使用协议分析仪运行网络统计测试,如果是高流量,低碰撞,而且有一点错误帧,就先确定发出错误帧的站点。也可以由繁忙站点测试来找出有问题的站点。到该站点现场来查看该用户在做什么。要问明在非高峰时间用户在干什么或把这个用户移到其它网段上,以改善本网段上的其它用户工作情况。
如果利用率、碰撞、错误帧都低,要询问抱怨网络性能不好的用户是使用哪个服务器和哪个应用软件。检查该服务器是否处在高负载状况下,它和网络的利用率是不同的概念。要找到使用这个服务器资源最多的用户,这可以用服务器上的用户监测功能或协议分析仪来完成。
无论是网络流量高或低时发生的问题,如果是碰撞很少而且是没有帧错误,这类问题多出自应用软件或与文件服务器有关。服务器可能是Cache设置的太小,保留的缓冲不足,服务器内存不够,服务器硬盘所余空间有限,8-bit网卡等等,这也可能是另一类软件问题,他们可能造成不正常的“网络磁盘请求”,这时有必要将某一应用移到另一个服务器上,要么升级现有的服务器,要么再加入一个新的服务器。
故障3.升级以太网后速率慢
10Mbps的以太网速度慢,升级为100Mbps快速以太网后甚至不能连接上网。
对于UTP5类非屏蔽双绞线,用电缆测试仪验证其是否符合对应100Mbps传输速率的EIA/TIA-TSB67标准。某些在10Mbps以太网工作正常的电缆链路因为近端串扰太大在100Mbps以太网就不能正常工作。信号耦合到邻近线对引起高频信号传输失败。将UTP的线对分开甚至会使网络在达到一定流量时瘫痪。
解决问题-更换或停用不能连接的链路,故障清除后再全部测试处置过的链路。
小结
网络故障可能是很复杂的,很多问题会导致同样的故障表现不同。查找故障的基本方法是二分法。为了有效地解决故障,我们需要有网络的文档。了解在网络正常工作时的参数,要装备合理的测试工具以帮助我们找出网络的故障。有了这些工具,网络的管理者可以把问题隔离到一个小的范围内。在以太网中,所得到的数据取决于取数据时所在位置。从上述的两大类故障中可以看出,网络管理人员不仅需要网络的帧监测工具,也要有主动测试硬件和功能的能力,方便地找出网络中最常见故障的地址。
|