1、6.1 网卡6.2 交换机与集线器6.3 小结第第6章章 数据链路层故障诊断数据链路层故障诊断6.1 网网 卡卡 计算机与外界局域网的连接是通过网络适配器实现的。网络适配器又称为网络接口卡(NIC,Network Interface Card),简称网卡,如图6-1所示。图6-1 网卡随着集成度的不断提高,网卡上芯片的个数不断减少,虽然现在各厂家生产的网卡种类繁多,但其功能大同小异。网卡的主要功能有以下三个:(1)数据的封装与解封:发送时将上一层交下来的数据加上首部和尾部,成为以太网的帧;接收时将以太网的帧剥去首部和尾部,然后送交上一层。(2)链路管理:主要是CSMA/CD协议的实现。(3)编
2、码与译码:即曼彻斯特编码与译码。可被远程唤醒的计算机对硬件有一定的要求,主要表现在网卡、主板和电源上:1.网卡能否实现远程唤醒,其中最主要的一个部件就是支持WOL的网卡。远端被唤醒计算机的网卡必须支持WOL,而用于唤醒其他计算机的网卡则不必支持WOL。另外,当一台计算机中安装有多块网卡时,只将其中的一块设置为可远程唤醒。2.主板主板也必需支持远程唤醒,可通过查看CMOS的“Power Management Setup”菜单中是否拥有“Wake on LAN”项而确认。另外,支持远程唤醒的主板上通常都拥有一个专门的3芯插座,以给网卡供电(PCI 2.1标准)。现在的主板通常支持PCI 2.2标准
3、,可以直接通过PCI插槽向网卡提供+3.3V Standby电源,即使不连接WOL电源线也一样能够实现远程唤醒,因此,可能不再提供3芯插座。主板是否支持PCI 2.2标准,可通过查看CMOS的“Power Management Setup”菜单,看是否拥有“Wake on PCI Card”项。3.电源欲实现远程唤醒,计算机安装的必须是符合ATX 2.01标准的ATX电源,+5V Standby电流至少应在600 mA以上。6.1.2 网卡常见故障诊断网卡常见故障诊断1.网络连通性故障将计算机连接至网络,无法在“网上邻居”中看到其他计算机,也无法ping通任何计算机,只能看到并ping通自己。
4、检查该计算机网卡时,LED指示灯熄灭。在使用网卡指示灯判断连通性时,一定要注意先将集线器或交换机的电源打开,保证它们处于正常运行状态。10/100 Mb/s网卡通常都有3个LED指示灯。但是,不同品牌的网卡,其指示灯所代表的意义有所不同。例如,Accton 10270分别表示当前的连接速率(Link/10 Mb/s或Link/100 Mb/s)指示灯和是否正在通信(ACT)指示灯,而D-Link 530TX则分别表示连接速率(100 Mb/s)指示灯、是否正在通信(Link)指示灯和全双工状态(FULL)指示灯。当相应的指示灯亮时,即表示处于该状态下。2.无法给无盘站安装网卡在采用联想逐日10
5、00计算机作无盘站时,无法安装EN1688网卡。经过检查,该批计算机使用GA-6LA7或QDI LEGEND 7主板。有些网卡的BOOT ROM缺省的起始地址为C800H,容易与AGP显卡等部件所占用的地址资源产生冲突而导致安装失败。需要修改网卡的BOOT ROM默认起始地址和其他资源占用。建议将网卡设置为:中断3,I/O 300H,BOOT ROM地址为D800H,并在Setup中把A驱打开。实践表明,DE220P、EN1688等网卡均可正常无盘使用 3.网卡导致死机在有些计算机上,安装网卡后经常死机。网卡的安装与P&P开关有关。当把网卡的P&P功能打开后计算机配置过程中会出现死机,这种现象
6、只发生在部分计算机上。将P&P开关关掉,手工加入(或者先进入安全模式,后手工加入网卡,再重新正常引导),系统则可以正常识别。4.网络连接不稳定在网卡工作正常的情况下,网卡的指示灯是长亮的,而在传输数据时,会快速地闪烁。如果出现时暗时明,且网络连接总是不通的情况,最可能的原因就是网卡和PCI插槽接触不良。频繁将网线从网卡中插入或拔出,都有可能使网卡与插槽的位置出现偏离,导致插槽无法紧密地固定网卡。此外,环境温度的变化、操作计算机时发出的各种振动,都有可能导致网卡松动现象发生。一旦网卡有松动现象发生,网络连接肯定会时断时续,甚至无任何反应。5.驱动程序出现故障是否正确安装网卡驱动程序,直接影响着网
7、卡性能。而网卡驱动程序的最新版本可能会包含更多的网络连接功能,能更准确、高效地将网络性能发挥出来。因此,应该及时从网上下载最新的网卡驱动程序,同时确保下载的驱动程序与网卡型号一致,尽量不用相近的网卡驱动程序来代替。6.IRQ中断引起故障现在PCI网卡均支持即插即用,在安装驱动时会自动分配中断(IRQ)资源。如果预定的IRQ资源被声卡、Modem、显卡等设备占用,而系统又不能给网卡重新指定另外的IRQ资源,就会发生设备冲突,导致设备不能使用。如Realtek RT8029 PCI Ethernet网卡就容易和显卡发生冲突(均使用IRQ10)。解决方法很简单,我们可以查找一下主板说明书中对PCI插
8、槽优先级部分的说明,将冲突的设备更换到优先级更高的PCI插槽上(一般来说,越靠近AGP插槽的PCI插槽,优先级别就越高),并进行调换,直到两冲突设备不再冲突为止。这种方法很简单,但相对来说比较繁琐。除此之外,我们还可以在网卡的设备属性中,手动为网卡重新分配IRQ值:(1)按Ctrl+Pause快捷键打开“系统属性”,再依次单击“硬件设备管理”打开设备管理器。(2)在设备管理器中,展开“网络适配器”,双击网卡设备,打开网卡的设备属性,并在“资源”选项卡的“资源设置”列表中选择“中断请求”,然后取消“使用自动的设置”复选框。(3)单击“更改设置”按钮,重新为网卡分配一个IRQ值,直到“冲突设备列表
9、”显示为“没有冲突”即可,如图6-2所示。图6-2 网卡没有IRQ冲突7.磁场导致故障网卡与其他电子产品一样,很容易受到磁场干扰而发生故障,它需要一个良好的工作环境。倘若网卡全身遍布灰尘,或在电磁干扰非常严重的环境下工作时,网卡也有可能出现无法反应的故障。因此,网卡和网络布线时,就要采用屏蔽性强的网线和网卡设备。同时,尽可能地避开微波炉、电冰箱、电视机等大功率强磁场设备,降低网卡发生故障的概率。当然,必须确保网卡工作在干净、整洁,没有灰尘的环境中。8.CMOS设置错误使用旧式的ISA网卡可以正常工作,而换为PCI网卡后网络时断时续,该故障十有八九是由于CMOS配置不当造成的。此时,可以按下面的
10、方法,重新设置CMOS参数。首先,重新启动计算机系统,进入CMOS参数设置界面,打开“PNP/PCI Configuration”设置页面,检查其中的“IRQ5”参数,看设置是否正确。9.网络参数是否正常要想让网卡正常工作,还应该仔细检查一下网卡参数的设置是否正确。在设置网卡参数时,应该先查看TCP/IP协议是否已经安装,然后再查看IP地址、DNS服务器、网关地址等参数的设置是否正确。如果希望网卡支持局域网共享传输,还必须正确安装“Microsoft 网络客户”以及“文件与打印机共享”。6.2 交换机与集线器交换机与集线器6.2.1 交换机与集线器概述交换机与集线器概述交换机(Switch)是
11、集线器的升级换代产品,从外观上来看,它与集线器基本上没有多大区别,都是带有多个端口的长方体,如图6-3所示。交换机是按照通信两端传输信息的需要,用人工或设备自动完成的方法,把要传输的信息送到符合要求的相应路由上的技术的统称。广义的交换机就是一种在通信系统中完成信息交换功能的设备。图6-3 交换机 交换机与集线器的区别主要体现在如下几个方面:(1)在OSI参考模型中的工作层次不同。交换机和集线器在OSI模型中对应的层次就不一样,集线器是同时工作在第一层(物理层)和第二层(数据链路层),而交换机至少是工作在第二层,更高级的交换机可以工作在第三层(网络层)和第四层(传输层)。(2)交换机的数据传输方
12、式不同。集线器的数据传输方式是广播方式,而交换机的数据传输有明确目的性,数据只对目的节点发送,只是在自己的MAC地址表中找不到的情况下第一次使用广播方式发送。在首次发送之后,因为交换机具有MAC地址学习功能,第二次以后就不再是广播发送了,又是有目的的发送。这样的好处是数据传输效率提高,不会出现广播风暴,在安全性方面也不会出现其他节点侦听的现象。(3)带宽占用方式不同。在带宽占用方面,集线器所有端口是共享集线器的总带宽,而交换机的每个端口都具有自己的带宽。这样,交换机实际上每个端口的带宽比集线器端口可用带宽要高许多,也就决定了交换机的传输速度比集线器要快许多。(4)传输模式不同。集线器只能采用半
13、双工方式进行传输,因为集线器是共享传输介质的。这样,在上行通道上集线器一次只能传输一个任务,要么是接收数据,要么是发送数据。而交换机则不一样,它是采用全双工方式来传输数据的,在同一时刻可以同时进行数据的接收和发送。这不但使数据的传输速度大大加快,而且在整个系统的吞吐量方面,交换机比集线器至少要快一倍以上,因为接收和发送可以同时进行。实际上还远不止一倍,因为端口带宽方面,一般交换机比集线器带宽也要宽许多倍。总之,交换机和集线器是基于MAC地址识别,能完成封装转发数据包功能的网络设备。目前,由于交换机的价格越来越低,所以集线器已经基本被淘汰。6.2.2 交换机故障诊断方法交换机故障诊断方法在安装完
14、一台交换机后,交换机的每个半双工端口就构成了一个冲突域。如果该端口连接了一个集线器,集线器下面连接若干站点,那么冲突域会扩大。但随着交换产品价格的下跌,现在大多数新建的网络每个交换端口都只连接一个站点。因此,在半双工连接情况下,冲突域仅针对一个单独的电缆链路。交换机通常是一个独立广播域的一部分,包括串联或者并联的任意数目的其他交换机。如果使用了OSI模型3层的功能,就可以创建多广播域,广播域的数目与VLAN数目相等。最极限的情况,如果交换机功能允许,每个端口可以配置为一个独立的广播域,可以把这种情况描述为路由到桌面。为每个端口创建一个独立的广播域后,故障诊断就会严格受限。但是如果我们把每个端口
15、设置为一个单独的广播域,交换机在转发流量时,每个端口都需要路由服务,这会占用交换机CPU的有限资源。在网络环境中,对每个单独的端口进行路由请求和应答是非常困难的,我们应该避免这样的配置。不幸的是,这种情况在实际情况中非常常见。网络中经常发现服务器全部在一个子网或者广播域中,所有的客户在另外的子网或者广播域中。在这种情况下,所有的请求都必须路由。如果维护行为限制在一个单独的服务器群里,那么考虑把服务器放进单独的VLAN里,然后把使用这台服务器的用户放到同一个VLAN。这样就可以使用2层交换的桥接方式来交换流量,只有很少的请求需要路由。如果服务器支撑多于一个用户区,可以在服务器上多装一块网卡来实现
16、到用户的2层交换连接。可以采取5种基本方式来透视交换机。每一种方法都不同,都有积极或者消极的一面。类似在网络中遇到的其他问题一样,没有一个最好的答案。最合适的方案往往取决于手中可以利用到的资源(什么工具可以使用,或者以前安装过什么工具),而且使用这些技术有可能造成服务中断。即使把这些方式组合起来,也不能监测到所连接的网络,在交换环境中,也不像集线器那样方便监测。我们几乎不可能看到通过一个交换机的全部流量。大多数的故障诊断会假设流量在站点和所连接的服务器之间,或经过故障诊断交换机Uplink口通过。而实际上如果2台主机直接传输信息的话,就不会使用交换机的Uplink口,或者任何其他的端口来交换流
17、量。除非知道具体用到哪个端口,否则是监测不到的。举个例子,如图6-4所示,一台服务器接入一台交换机。在反映有问题的用户中,一部分是直接与这台交换机相连,另外一部分用户是由这台交换机的Uplink口从其他路由器或者交换机连接上来的。故障报告是访问服务器“慢”,这样的故障报告对技术支持工程师来说基本上没有任何价值。图6-4 最基本的交换机环境下面介绍交换机故障诊断方法。1.通过Telnet或者串行口接入服务器高级网络技术支持工程师,或其他知道交换机密码的人在进行故障诊断时,可以选择通过Telnet或者交换机的串口登录,来检查交换机的配置,如图6-5所示。图6-5 使用RS-232 控制端口交换机配
18、置可以通过上面提到的两种方法查看,虽然问题不一定是配置引起的。不管问题是操作系统有BUG还是配置不完善,都不能从配置列表中轻易查看出。配置信息在定位交换机是否像预期的那样运行方面比较有用,但对故障诊断不一定有效。为了验证交换机的配置,往往需要综合使用多种交换机故障诊断方法。很多交换机都带有实时的故障诊断工具,因为交换机生产厂家和型号不同,这些故障解决工具的特征也各不相同。但是要使用好这些工具,必须依靠一定的理论知识和实际经验。2.连接到一个空闲端口最简单的故障诊断方法是在交换机的空闲端口接入一个监测工具(如图6-6所示),例如协议分析仪。图6-6 从任意端口监测把监测工具接入交换机的一个空闲端
19、口,不用中断服务就可以查看所属广播域。该监测工具与广播域里的其他站点一样有相同的权限。不幸的是,交换机(作为一个多端口的桥接设备)几乎不转发流量到监测端口。因为桥接设备就是这样设计的,流量只转发到所属的目的端口,不会去其他的端口(如图6-7所示)。协议分析仪因此几乎监测不到流量。图6-7 交换机在源端口和目的端口之间转发流量非常少的流量会转到其他端口。站点和服务器之间可能每秒钟会转发几千帧,但是监测端口每分钟只能看到几帧。转发到监测端口的流量几乎全部都是广播,包含一些零星的目的地址不明的帧。这些零星的帧是由于路由转发表老化的结果,经常是目的端口不明的帧。一些经验不够的技术人员看到这么高的广播(
20、接近100%),却没有注意到端口利用率很低,就误判网络出现了广播风暴,其实不是。这样查看交换网络几乎没有用,因为监测工具必须获取流量。获得的流量对广播域的查询、对网络搜索和发现其他类型问题是很有帮助的,但对解决用户连接慢的问题并没有多大的帮助。对大多数交换机来说,都有一个更好的选择,可以把需要监测的端口流量备份到一个专门的空闲口。这种技术通常称为端口镜像。大多数交换机厂家都提供备份或镜像流量的功能,可以把监测工具接入交换机一个专门配置过的端口。老的交换机必须指定一个专门的监测口作为镜像口,但现在大多数新的交换机可以指定任何一个端口作为镜像口。虽然交换机厂家实现镜像的方式各不相同,但是有些监测选
21、项是基本相同的。值得注意的是,几乎在所有的情况下,交换机在转发流量到镜像口的时候,同时把错误都过滤掉了。对于故障诊断来说,这意味着同时过滤掉了有用的信息。此外,实际操作当中需要我们通过控制口(交换机的RS-232端口),或者Telnet进程来配置镜像。这意味着除了监测工具之外,我们通常还需要带一台计算机或者终端来对交换机进行配置。镜像端口经常只是一个监听端口,不过很多交换机厂家允许把该端口配置成全双工的。配置了镜像口,监测工具就可以查看报告连接慢的主机和服务器之间的实际流量的备份。镜像口可以只监测交换机的任意一个端口,甚至可以是Uplink口,也可以同时监测交换机的多个端口。但是同时监测的端口
22、很多的话,过高的流量就有可能超过镜像口的接收能力。监测端口的输出能力是一个很重要的问题。镜像口可以接收,也可以发送。在配置的时候,经常关掉了镜像口发送的功能。但不管有没有关掉镜像口发送的功能(不管镜像口是否是全双工),镜像口的接收能力都是有限制的。如果被监测的全双工端口的速率和镜像口的一样,交换机在转发流量的时候很容易就会丢包,但是交换机不会通知您。3.在链路上接入集线器使用集线器很具有战略意义。对很多网络来说,大多数发送和接收的流量都来源于文件服务器之类的共享设备。如图6-8所示,在交换机端口和文件服务器中间接入一个集线器,再把分析仪接入集线器,实际上就把分析仪和文件服务器接入了同一个广播域
23、。使用这种方法,技术支持人员就可以看到文件服务器所有进出的流量,帮助技术支持人员解决一系列的问题,包括用户登录失败、性能低效、连接丢失等。图6-8 使用集线器监测交换机端口4.使用一个监测接口盒或者分流器这种方法类似于加了一个共享集线器,不同点是监测接口盒(TAP)链路只是接收流量,不允许监测工具发出流量。TAP和分流器这两个词有时候可以互换,虽然分流器通常应用于光纤链路。在光纤链路上,分流器会把光在初始路径和监测路径上进行分光。典型的分光比率包括80 20、70 30以及50 50。以80 20为例,80%的光通过分光器继续传送到原始路径,20%的光转发到监测路径。5.用SNMP查询交换机对
24、一个交换网络进行故障诊断的最有效办法,是通过直接询问交换机来查看网络的状况。这可以通过SNMP或者连接到交换机的控制口实现,如图6-9所示。显然,直接连接到交换机的控制口不是理想的办法,因为这就需要对网络中的每台交换机都有物理上的连接。稍微理想一点的替代方法是搭建连接到交换机控制口的终端服务器。图6-9 使用SNMP监测交换机支持SNMP的交换机有不同的管理信息库(MIB,Management Information Base)。每一种MIB都不同。除某些对自己的交换机提供支持的私有MIB库外,标准的MIB库对交换网络的监测也非常有用。下面是对故障诊断非常有用的一些MIB库:RFC 1213
25、MIB;RFC 1643 Ethernet-Like Interface MIB;RFC 2819 RMON Ethernet;RFC 2021 RMON 2;RFC 2613 SMON。6.2.3 交换机常见故障诊断交换机常见故障诊断1.端口模式不匹配一个刚刚建起的小型局域网,有一台服务器和10台工作站,使用一台交换机作为接入设备,连接线路为六类双绞线。主要故障表现为网内计算机的传输速度较慢,从任意一台工作站到服务器上复制一个25 MB的文件,竟然需要6分钟的时间。即使是相邻的两个工作站,也是这样慢。分析这种故障,可以列举出如下几种可能:黑客攻击或蠕虫病毒;线路故障;交换机超载;网络适配器故障。小小 结结 在链路层故障诊断中,由于中低端网络产品可靠性的因素,加之这些产品涉及的客户范围和施工环节过多,中低端网络产品遇到的问题往往非常繁杂,问题的定位和解决存在一定难度,这就要求维护人员必须在日常工作中不断总结,不断提高。