阳光网驿-企业信息化交流平台【DTC零售连锁全渠道解决方案】

 找回密码
 注册

QQ登录

只需一步,快速开始

扫描二维码登录本站

手机号码,快捷登录

手机号码,快捷登录

老司机
查看: 1741|回复: 4

[转帖] 使用OSI模型来排查网络故障

[复制链接]
  • TA的每日心情
    开心
    2012-3-7 10:15
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    发表于 2012-2-4 09:36:02 | 显示全部楼层 |阅读模式
    当网络、程序出现问题的时候,是根据以往经验来处理,还是通过google来搜索答案?其实只要能弄明白网络数据是怎么传输的,那么大部分的问题都可以迎刃而解。

    打个比方:当你不能上网的时候,你使用 ping 公网的方法来测试,这用到了OSI模型的那一层?

    当你不能打开网页,而又能登陆QQ的时候,就可以判断是DNS解析出了问题,那么这个结论是如何得到的?
    为什么可以登录QQ又不能打开网页?
    其实端口的问题与IP地址的问题,是2个不同问题,不能混淆,因为端口属于第四层,而IP属于第三层。

    所以,要做到解决了问题,而又知道问题出在哪里,这可是很难的。

    前言:当出现网络连接问题时,可通过多种方法诊断问题所在。其中,较常用的是利用分层方法来排查故障。要使用分层式方法,网络技术人员必须熟悉其原理,了解网络中的网络设备和主机如何创建、传递和解释报文。

    数据在网络上的传输过程具有高度结构化的特点。OSI 模型(开放式系统互连模型)的七个层次清晰直观地阐释了这一点。OSI 模型将网络通信细分为多个过程,每个过程都是大型任务的一个组成部分。

    例如,在汽车制造厂中,组装整车的任务无法由一个人完成。车辆沿着流水线在各个装配点间移动,每个装配点都有专门的团队负责装配各种零件。各个装配点装上他们所负责的零件后,便将车辆移交给下一个装配点。通过将车辆组装工作系统性地拆分为多个可管理的环节,便可较为轻松地实现整车的生产。当制造过程中出现问题时,人们可以界定故障是在哪一环节产生的,从而加以修正。

    与此类似,在诊断和解决网络故障时,我们也使用 OSI 模型来作为参照。

    OSI 模型的七个层次可分为两个部分:上层和下层。

    有时人们使用“上层”来指代任何位于 OSI 模型传输层以上的层次。OSI 模型的上层处理应用程序功能,一般仅在软件中实现。最高的一层也是最接近最终用户的一层为应用层 。

    OSI 模型的下层处理数据传输功能。物理层和数据链路层通过硬件和软件实现。物理层最靠近物理网络介质(即网络布线)。物理层实际上将信息交给介质传输。

    终端(例如客户端和服务器)通常会用到所有七个层次。网络设备则只关心下层。集线器工作在第 1 层上,交换机位于第 1 和第 2 层,路由器位于第 1 至第 3 层,防火墙则涉及第1、2、3、4 层。

    1246869826230.jpg

    使用 OSI 模型排查故障时,必须了解每一层执行的功能,以及了解执行这些功能的设备和软件程序涉及的网络信息。以电子邮件为例,邮件从客户端成功传送到服务器的过程便涉及多个环节。下面,我们来看看 OSI 模型是如何将发送与接收邮件这一常见任务划分为多个不同的步骤。

    步骤 1:上层生成数据。

    用户发送电子邮件时,邮件中的字母数字字符需要转换为能够在网络上传输的数据。第 7、第 6 和第 5 层负责确保邮件的格式能够为目的主机上运行的应用程序所理解,此过程称为编码。然后,上层将编码后的邮件发送给下层,并通过网络将邮件传送出去。电子邮件能否传送到正确的服务器取决于用户提供的配置信息,在应用层出现的故障通常是因为用户软件程序配置错误而引起。

    步骤 2:第 4 层封装数据以进行端到端传输。

    在第 4 层,构成电子邮件消息的数据被封装以供网络传输。第 4 层将邮件划分为较小的数据段,每个数据段都添加一个报头,指示与正确应用层应用程序对应的 TCP 或 UDP 端口号。传输层中的功能指示传送服务的类型。电子邮件采用 TCP 数据段,因而目的主机会对收到的数据包加以确认。第 4 层的功能由源主机和目的主机上运行的软件执行。不过,防火墙通常使用 TCP 和 UDP 端口号来过滤通信量。因此,发生在第 4 层上的问题可能是由于防火墙过滤列表配置错误所导致的。

    步骤 3:第 3 层添加网络 IP 地址信息。

    从传输层收到的电子邮件数据会被放入数据包中,数据包的报头包含源和目的地的逻辑 IP 地址。路由器按照目的地址,沿着正确的路径将数据包通过网络传送出去。如果源或目的地系统上的 IP 地址信息配置错误,则可能导致第 3 层上发生故障。由于路由器也会用到 IP 地址信息,因此路由器配置错误也会导致这一层发生故障。

    步骤 4:第 2 层添加数据链路层报头和报尾。

    从源设备到目的设备的路径中,每台网络设备(包括发送端主机)都会将数据包封装为帧。帧包含链路中下一台直接相连网络设备的物理地址。选定网络路径中的每台设备都需要使用帧来连接到下一台设备。交换机和网络接口卡 (NIC) 借助帧中的信息将消息发送到正确的目的设备。网卡驱动程序错误、接口卡本身的故障或交换机的硬件故障都可导致第 2 层出错。

    步骤 5:第 1 层将数据转换为可以传输的比特。

    为了在介质上传输,帧被转换为只包含 1 和 0 的比特流。在这些比特数据沿着介质传输时,设备通过时钟功能来进行区分。源设备与目的设备之间可能包括多种类型的传输介质。例如,电子邮件可能来自以太网 LAN,然后穿过光纤校园主干和串行 WAN 链路,最后到达另一个远程以太网 LAN 上的目的地。导致第 1 层故障的原因包括:电缆松脱、电缆类型错误、接口卡故障或电子干扰等。

    在接收端主机处,步骤 1 至 5 的过程与上述过程刚好相反,因为消息是从下层开始逐层向上传输,最后抵达适当的应用程序。

    1246870333505.jpg

    进入正题

    第一:如何使用 OSI模型来排查网络故障。
    作为一种理论模型,OSI 模型定义了在七个层上工作的协议、硬件和其它规范。

    此外,OSI 模型也为排查网络故障提供了系统化基础。无论排查哪种故障,其基本的故障解决程序都包括以下方面:
    1. 确定问题
    2. 鉴别出问题原因
    3. 解决问题

    确定候选的解决方案及其优先顺序
    选择一个解决方案
    实施解决方案
    评估解决方案

    如果实施的方案无法解决问题,则撤消所有更改,并尝试使用其它解决方案。重复上述操作,直到将问题解决。
    除了基本的问题解决程序外,OSI 模型还可用作排查故障时的指导原则。在任何故障排查情况中,最好都从最简单的事项入手。有了 OSI 模型,技术人员可以更快地确定问题并找出原因。

    1246871905660.jpg


    技术人员通常有一份标准的核对表或操作规程,在排查故障时他们便会遵照其上的内容进行操作。其中一种故障排查方法是从最低层开始往上排查,我们称之为自下而上法。

    第 1 层故障排查:
    技术人员应首先从第 1 层着手。记住,第 1 层负责处理网络设备的物理连接。第 1 层故障通常涉及布线和电源问题,而这两者也正是造成大量帮助台来电的原因。比较常见的第 1 层故障包括:

    设备电源未打开
    设备电源未接通
    网络电缆松脱
    电缆类型错误
    网络电缆故障

    要排查第 1 层的故障,请检查所有设备的供电是否正常,设备是否打开。这些看起来是很显而易见的事,但是报告问题的人员往往会忽略掉源与目的地之间网络路径中的设备。如果有显示连接状态的 LED 指示灯,向客户确认这些灯的显示是否正常。如果技术人员位于客户现场,则下一步是目视检查网络布线并重新连接电缆,确保其正常连接。如果是远程排查故障,则指导来电者执行每个步骤,告诉他们每项操作的目的,以及找到错误后应该如何处理。如果所有第 1 层的问题都已检查完毕,则可沿 OSI 模型向上进入第 2 层。

    第 2 层故障排查:

    网络交换机和主机网卡执行第 2 层的功能。造成第 2 层故障的原因包括设备故障、设备驱动程序错误以及交换机配置错误等。如果是远程排查故障,则较难确诊第 2 层的故障。

    现场技术人员可以检查网卡的安装及运作是否正常。重新安装网卡,或者用正常的网卡替换怀疑有故障的网卡可帮助诊断问题。此方法也适用于任意类型的网络交换机。

    第 3 层故障排查:
    在第 3 层,技术人员需要调查网络中使用的逻辑寻址,例如 IP 地址方案。如果网络使用 IP 寻址,技术人员便需要确认设备的设置是否正确,例如:

    IP 地址属于所分配的网络
    子网掩码正确
    默认网关正确
    其它设置符合要求,如 DHCP 或 DNS
    在第 3 层,可利用许多实用程序来协助进行故障排查。三种最常用的命令行工具是:

    ipconfig - 显示计算机上的 IP 设置
    ping - 测试基本网络连接
    traceroute - 确定源与目的地之间的路由路径是否可用

    大多数网络问题都可通过上述第 1、第 2 和第 3 层的故障排查技巧得到解决。

    第 4 层故障排查:

    如果第 1 至 3 层看上去都运行正常,而且技术人员能成功 ping 通远程服务器的 IP 地址,则需要检验更高的层次。例如,如果沿途有网络防火墙,则需要检查应用程序的 TCP 或 UDP 端口是否打开,确保没有任何过滤列表在拦截流经该端口的通信量。

    第 5 层至第 7 层故障排查

    技术人员还应检查应用程序配置。例如,排查电子邮件故障时,需确保为应用程序配置的发送和接收电子邮件服务器信息正确无误。此外,还需确保域名解析服务运作正常。

    对于远程技术人员,可通过其它网络实用工具来检查较高层次的问题,例如可使用数据包嗅探器来查看网络上的通信量。另外,也可使用 Telnet 之类的网络应用程序来查看配置。

    尽管自下而上的方法适用于许多情况,但也可选择使用自上而下的方法。自上而下的方法只是逆转了检查顺序,从应用层着手检查。

    另外,还可以使用分治法。在此方法中,技术人员可选择从中间层(例如网络层)开始故障排查过程,然后沿着 OSI 模型向上或向下检验,具体取决于当前层的故障诊断结果。

    1246872440081.jpg


    1246872427296.jpg

    楼主热帖
    启用邀请码注册,提高发帖质量,建设交流社区
  • TA的每日心情
    开心
    2024-7-31 08:38
  • 签到天数: 434 天

    [LV.9]以坛为家II

    发表于 2012-6-21 11:03:33 | 显示全部楼层
    很不错的教材,楼主辛苦了真的不错
    启用邀请码注册,提高发帖质量,建设交流社区
  • TA的每日心情
    奋斗
    2017-11-20 08:36
  • 签到天数: 2032 天

    [LV.Master]伴坛终老

    发表于 2012-7-8 10:19:39 | 显示全部楼层
    讲得很明了,谢谢楼主分享!!!!
    启用邀请码注册,提高发帖质量,建设交流社区
  • TA的每日心情
    奋斗
    2017-11-20 08:36
  • 签到天数: 2032 天

    [LV.Master]伴坛终老

    发表于 2012-7-9 21:43:06 | 显示全部楼层
    很不错的教材,楼主辛苦了!!!!!!
    启用邀请码注册,提高发帖质量,建设交流社区
  • TA的每日心情
    开心
    2017-10-26 11:55
  • 签到天数: 41 天

    [LV.5]常住居民I

    发表于 2012-7-12 14:23:10 | 显示全部楼层
    这个是很好的教材啊, 学习了!!!
    启用邀请码注册,提高发帖质量,建设交流社区
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    快速回复 返回顶部 返回列表