书城计算机小型局域网组建与维护
8918700000019

第19章 认识计算机网络——网络协议(7)

(3)排除故障:当隔离了问题后,应该计划采取相关正确操作以排除故障,采取多种且相互独立的操作,每次做少许的改变进行细致的观察以及评估故障排除结果。通过执行、测试和存档解决方案来排除已明确的问题。排除故障并验证故障确实被排除,做好记录备用。

(三)故障排除方法

在网络环境中,必须通过特别有效的方法来解决问题。基于ISO/OSI层次网络模型的故障排除方法主要是:自上而下、自下而上和分而治之。故障排除方法用于快速排除故障的可能性并对其他可能性进行测试。

(1)自下而上(Bottom-Uptrou bleshooting):总是从物理层开始逐层向上进行故障排查,直到发现故障所在的层次并解决问题。常用于怀疑问题发生在物理层,或在处理复杂网络问题时使用。比较适合复杂的案例,是相对较慢却可靠的方法,当问题是应用层或上层的问题时,需要花很长的时间。

(2)自上而下(Top-Downtrou bleshooting):总是从应用层沿着OSI模型向下开始排除故障直到发现故障层次并解决问题,适合简单的或应用层或上层问题,当问题在低层相关时,将会在应用层花费大量时间和精力。选择此方法是因为可以判断问题最有可能发生在应用层或OSI模型高层部分。

(3)分而治之(Divide-and-Conquertrou bleshooting):根据反映的问题的情况和经验,选择OSI模型的特定层(数据链路层、网络层、传输层)开始故障处理,可以决定在任何一次开始并沿OSI某一层向上或向下。比较适合经历过的问题或有着明显的症状的问题,确定问题是在该层、上层还是下层,它可以比其他方法更快地找出故障层次。具有丰富经验的人员才可以有效地使用这种方法。

(四)层次化故障诊断

1.物理层故障诊断

物理层是建立在通信媒体的基础上,实现系统和通信媒体的物理接口,为数据链路实体之间进行透明传输,为建立、保持和拆除计算机和网络之间的物理连接提供服务。

物理层故障指的是设备或线路损坏、插头松动、线路受到严重电磁干扰等情况。故障主要表现在设备的物理连接方式是否恰当;连接电缆是否正确;MODEM、CSU/DSU等设备的配置及操作是否正确。

物理层故障诊断内容主要有以下几个方面:在线缆方面,如电缆测试中存在不连通、开路、短路、衰减等问题,如光缆测试中存在熔接或光缆弯曲等问题;在端口设置方面,存在两端设备对应的端口类型不统一问题;在端口自身或中间设备方面;集中器等硬件设备的故障等;在电源方面,故障现象表现为掉电、超载、欠压等。

2.数据链路层故障诊断

数据链路层的主要任务是使网络层无须了解物理层的特征而获得可靠的传输。数据链路层为通过链路层的数据进行封装和解封装、差错检测和一定的校正,并协调共享介质。在数据链路层交换数据之前,协议关注的是形成帧和同步设备。

查找和排除数据链路层的故障,需要查看设备的配置,检查连接端口共享的同一数据链路层的封装情况。每对接口要和与其通信的其他设备有相同的封装。通过查看设备的配置检查其封装,或者使用相关命令查看相应接口的封装情况。

数据链路层故障诊断主要有数据帧的帧错发、帧重发、丢帧和帧碰撞等,流量控制问题,链路层地址的设置问题,链路协议建立的问题,同步通信的时钟问题,以及数据终端设备链路层驱动程序的加载问题。

3.网络层故障诊断

网络层提供逻辑寻址、路由选择等服务。网络层故障主要有路由协议没有加载或路由设置错误,IP地址或子网掩码设置错误,以及IP和DNS不正确的绑定等。

排除网络层故障的基本方法是:沿着从源到目标的路径,查看路由器路由表,同时检查路由器接口的IP地址。如果路由没有在路由表中出现,应该通过检查来确定是否已经输入适当的静态路由、默认路由或者动态路由。然后手工配置一些丢失的路由,或者排除一些动态路由选择过程的故障,包括RIP或者IGRP路由协议出现的故障。例如,对于IGRP路由选择信息只在同一自治系统号(AS)的系统之间交换数据,查看路由器配置的自治系统号的匹配情况。

4.传输层和应用层故障诊断

传输层故障诊断主要有数据包的重发、流量控制、传输确认、通信拥塞或上层协议在网络层协议上的捆绑问题或防火墙、路由器访问列表配置有误,过滤限制了服务连接等。

在传输层包括TCP和UDP。其中TCP提供面向连接的服务,UDP则提供面向无连接的服务。当传输层的连接失败,首先确定传输协议是TCP还是UDP。如果是UDP应确定无连接的服务是否能适应该应用程序的执行。如果可以,则诸如多次重发之类的问题可能是考虑了传输的机制所导致。如果是TCP,除了要校验端口号之外,还要查找TCP连接过程中出现的事件。

应用层故障诊断主要考虑操作系统的系统资源,如CPU、内存、I/O、核心进程等的运行状况是否正常;应用服务是否开启,服务器配置是否合理;安全管理、用户管理是否存在问题等。

在应用层上,用户通过与主机间的交互操作来完成用户的工作。如果应用层出现故障,检查所使用的应用程序。因为应用层为了适应各种不同用户的需求而提供了大量的选择项,包括不同的文件类型或数据传输参数。首先确定此次端到端的连接操作是否能使数据到达所需的目的地。如果不能则应该确定问题出在网络接口层、网络层或者是传输层的哪一处,并对故障进行检测和修复。

目前,有许多应用程序来监视和分析应用层中出现的问题。如netstat可以报告TCP连接和统计数据;nslookup用于检测DNS服务器或域名解析。简而言之,应当通过参考包含在操作系统中的应用软件和管理工具来诊断高层协议中出现的问题。

(五)故障排除与网络管理

在管理员进行网络诊断和排除时,通常使用包括局域网或广域网分析仪在内的多种工具。如,路由器诊断工具;网络管理工具和其他故障诊断工具。大量的网络诊断工具可以实现绝大多数网络故障排除,ipconfig、arp、ping、tracert、nslookup等命令及Cisco IOS提供的show、debug、ping、traceroute、telnet等命令都是获取故障诊断有用信息的网络工具。

通常可以使用相关的命令以收集相应的信息,而在特定情况下,需要确定使用什么命令获取相关的信息。譬如,通过IP协议来测定设备是否可达到的常用方法是使用ping命令。

ping从源点向目标发出ICMP信息包,如果成功的话,返回的ping信息包就证实从源点到目标之间所有物理层、数据链路层和网络层的功能都运行正常。

然而在大型网络中,应该如何在网络运行后了解它的信息,了解网络是否正常运行,监视和了解网络在正常条件下运行细节,了解出现故障的情况。这种环境下,通常需要使用网络管理协议,它主要是由构成网络的硬件所组成。包括工作站、服务器、网卡、路由器、网桥和集线器等等。这些设备具有网络管理的功能,通过远程轮询以获得设备的运行状态,同样能够让它们在有一种特定类型的事件发生时能够向你发出警告。

当前具有代表性的简单网络管理协议(SNMP)首先是由IETF研究小组为了解决Inter-net上的路由器管理问题而提出的。SNMP被设计成与协议无关,所以它可以在IP、IPX、Apple Talk、OSI以及其他用到的传输协议上被使用。SNMP是一系列协议组和规范,它们提供了一种从网络上的设备中收集网络管理信息的方法。SNMP也为设备向网络管理工作站报告问题和错误提供了一种方法。

四、实践操作

背景知识/准备工作

在本实验操作中,使用PC、交换机、路由器,规划并创建一个简单的TCP/IP网络。

通过Packet Tracer模拟器模拟TCP/IP的通信过程中的故障类型,使用PING、TRACERT网络连接性测试软件,结合路由器及交换机中的SHOW、DEBUG命令实现简单的网络故障检测及故障排除。验证故障排除方法。本实验需要以下资源:

安装有网卡的WindowsXP系统的主机、Packet Tracer模拟器软件;

交换机两台;

路由器两台;

以太网交叉电缆一根,直通线四根、反转线缆一根。

(一)故障排除实例

网络故障诊断以网络原理、网络配置和网络运行的知识为基础。根据网络故障的现象通过网络诊断工具为手段获取诊断信息,确定网络故障点,查找问题的根源,排除故障,恢复网络正常运行。

网络故障通常有以下几种可能:物理层中物理设备相互连接失败或者硬件及线路本身的问题;数据链路层的网络设备的接口配置问题;网络层网络协议配置或操作错误;传输层的设备性能或通信拥塞问题;网络应用程序错误。

网络故障以某种症状表现出来,故障症状包括一般性的(如用户不能接入某个服务器)和较特殊的(如路由器不在路由表中)。对每一个症状使用特定的故障诊断工具和方法都能查找出一个或多个故障原因。一般故障排除模式可以有以下几点:

(1)分析网络故障时,首先要清楚故障现象。应该详细说明故障的症状和潜在的原因。

因此,要确定故障的具体现象,然后确定造成这种故障现象的原因的类型。例如,主机不响应客户请求服务,可能的故障原因是主机配置问题、接口卡故障或路由器配置命令丢失等。

(2)收集需要的信息,用于帮助隔离可能的故障。通过向用户、网络管理员、管理者和其他关键人员询问一些和故障相关的问题,广泛地从网络管理系统、协议分析跟踪、路由器诊断命令的输出报告或软件说明书中收集有用的信息。

(3)根据收集到的信息,考虑可能的故障原因。根据有关的信息排除某些故障原因,设法减少可能产生故障的原因,尽快的设计出有效的故障诊断计划。

(4)根据最终可能产生故障的原因,建立一个诊断计划。开始仅用一个最可能的故障原因进行诊断,这样可以容易恢复到故障的原始状态。如果一次同时考虑一个以上的故障原因,试图恢复故障原始状态就困难的多。

(5)执行诊断计划,认真做好每一步测试和观察,直到故障症状消失。

(6)每改变一个参数都要确认其结果。分析结果确定问题是否解决,如果没有解决,继续下去,直到解决。

(二)网络连接性测试

Ping是一个用于验证指定的IP地址是否存在以及是否可以接受连接请求的基础程序。

PING是一个Internet标准,通过向目标主机发送数据报文,请求目标主机应答接收到回复,以确认目标主机的存在。

ping命令的工作是发送一个特定的IP协议数据报文,这个报文被称为ICMP(Internet Control Message Protocol因特网络控制信息协议)请求回显,到一个特定的目标主机。