假设现在是下午4点,你正坐在书桌旁,桌上摊开了3本书。你正在努力工作着,试图找出过去的8个小时中,你公司的文件服务器性能忽然下降的原因。在你公司的200名用户中,有将近100人已经打电话到公司投诉,抱怨连接速度太慢,总是处于等待状态。你现在压力很大,因为今天公司的首席执行官(CEO)也打电话过来了。公司的主要文件服务器(NetWare 5服务器)在过去一年中一直运行得很顺利,没有出现过任何问题。你检查了系统控制器、CPU使用率和缓存,确定它们都在正常工作范围内。你甚至还更新并注册了查毒程序,然后运行,以确保没有病毒。你现在只得求助于所有你一年前收起来的参考书。你拂去书上的灰尘,开始了苦读,预备用整夜的时间来找出问题的所在。
假如能够很轻易就找到问题所在就好了,就像打开台式机,运行一个应用程序来检查你的服务器与端口的连接。但是假如根据分析的结果,你发现可能是因为网卡太旧、设备震动或者错误操作所产生的问题,那么究竟是哪个影响了网络的连接呢?你甚至会惊奇地发现在你的内部网上,有些人“可能”正在向你的服务器发送“死亡之Ping”(Ping of Death),或者进行其他类型的拒绝式服务(Denial of Service,DoS)攻击。你怎样才能指出这些问题呢?非常简单,答案是——使用Network Associates公司的Sniffer Pro产品,这些就都可以实现了。
1.2 了解网络分析随着公司内的信息系统的发展,人们开始使用越来越多的网络设备,导致网络系统覆盖了很多领域。要这样的网络系统尽可能有效地运行是很重要的,因为故障停机时间既令资源不够有效地使用,也会增加公司的开支。
网络分析是一种技术范畴,网络工程师与设计人员可以用它来研究网络的性质,包括可连接性、容量与性能。网络分析可以用来估计当前网络的容量,了解它的性能,或者为将来使用的应用程序及其版本更新做出规划。
进行网络分析最好的一种工具是网络分析程序,比如Sniffer Pro。网络分析程序是一种设备,它可以为你提供非常好的思路,答应你逐个数据包查看通过网络的实际数据,从而了解网络的实际情况。典型的网络分析程序能理解很多协议,这使它可以显示网络上主机间进行的会话。
网络分析程序通常提供下述能力:
n 捕捉并解码网络上的数据
n 分析具有专门的协议的网络活动
n 生成并显示关于网络活动的统计结果
n 进行网络能力的类型分析。
网络分析基本知识你记得客户有多少次对你说网速太慢吗?或者程序设计人员说过多少次有网络问题?即使它并不是网络问题,但你怎样才能证实它不是呢?这就是网络分析涉及的内容了。
一个网络分析程序就是一个故障检修工具,可以用来发现并解决网络交流问题、规划网络容量,并进行网络优化。网络分析程序能捕捉所有通过你的网络流量,并把它们翻译出来进行解码,还可以翻译正在使用的不同协议。解码后的数据以一种轻易理解的格式显示。网络分析程序还可以只捕捉与过滤器定义的选择标准相符的流量数据。这就使技术人员可以仅仅捕捉与当前问题相关的数据。一个典型的网络分析程序可以在三个窗格中显示解码后的数据:
n 概要:显示一个帧所含最高级协议的概略性介绍,以及捕捉时间、来源与目的地址。
n 具体:提供帧中各层次的具体说明。
n; Hex:以十六进制形式显示捕捉的原始数据。
一个网络专家可以很轻易地使用这类界面分析数据。图1.1中给出了一个三窗格显示的例子。
网络分析程序可以更深入地提供建立显示过滤器的功能,这样网络专家就可以很快发现他在找什么了。
高级的网络分析程序提供类型分析能力。这种特性答应网络分析程序查看上千个数据包,然后发现问题。网络分析程序还可以提供这些问题可能出现的原因,以及如何解决问题的线索。
图1.1 ;Sniffer Pro解码屏幕的三窗格显示
Sniffe Pro有一种众所周知的特性——高级功能,它可以分析网络中的帧,根据协议与标准的数据再进行比较,然后发现网络中的潜在问题。Sniffer Pro的高级功能还提供出问题的可能原因以及可能的解决方法。你将在第3章中“深入了解Sniffer Pro界面”中,了解这一功能的有关内容。
故障检修方法成功检修故障的要害是要知道在正常情况下网络是如何进行工作的。这帮助网络专家迅速地发现不正常情况。使用网络故障检修策略,就可以系统地发现并解决问题,而且把对用户的影响降至最低。但不幸的是,有时甚至经验丰富的网络专家也没能把握故障检修的基本概念,花几分钟来评估症状就可以在解决错误问题时节省好几个小时。
一种好的解决问题的方法包括以下步骤:
1.了解症状并确定问题。
2.把问题单独分离出来并了解它们。
3.确定并测试产生问题的原因。
4.解决问题。
5.证实问题已经得到了解决。
故障检修中,进行研究是非常重要的一个部分。因特网是各种网络信息的有价值的来源,是提供指导性的材料、论坛和参考资料的访问途径。作为故障检修方法论的一部分,你可以用因特网作为一种工具,来对错误或者你网络上的一些症状进行研究。
要解决网络问题,第一步就是要先了解它们出现了哪些症状。你可以从不同的途径来了解问题的症状:终端用户会抱怨自己碰到了网络性能或者连接上的问题,同时网络治理器可能也会给你发出通知,向你通报网络问题。从各方面彻底了解了问题症状后,可以把这些症状与正常的运行情况进行比较,确定网络在出现问题之前有什么改变。另外,要确定你自己是否检修过类似问题,并写下具体的问题记录。
一旦确定了问题与症状,下一步就是要把问题单独分离出来,并了解问题。当症状出现时,你的责任是要收集数据用于分析,缩小问题存在的可能范围。缩小问题范围的最佳方法是用各个击破的方法。试着说明问题是否与网络的一个区段有关,或者与一个单独的工作站有关。确定问题是否会在网络的其他地方复制。
解决问题的第三步是要确定并测试问题产生的原因,还要测试你的假设是否成立。你可以使用网络分析程序和其他工具来分析网络传输的数据。在你建立了一个关于问题产生原因的理论之后,你必须要测试它是否合理。
一旦确定了问题的解决方案,应该马上付诸实施。方案中应该包括升级硬件或者软件。可能还需要增加LAN区段或者升级硬件来增加容量。
最后一步是要通过由终端用户进行测试,来确保所有的问题已经得到了解决。有时解决一个问题会产生一个新问题。另外一些时候,你解决了的问题其实是更深层次的问题的症状。假如这个问题确实解决了,你应该把解决步骤记录成文档。但是,假如问题仍然存在,解决问题的过程就必须重新重复一次。图1.2给出了解决问题的流程图。
否
是
问题的症状是否消失了?
记为文档
问题得到解决
证实问题的解决方案
解决问题
确定并测试问题产生的原因
把问题分离并了解问题
了解症状并确定问题
图1.2; 解决问题流程图
1.3 OSI模型、协议与设备(1)为了了解网络分析,学习网络的工作理论是非常重要的。要使网络能够工作,运行在网络中的计算机需要就一些规则达成共识。这样的一些规则被称为协议。协议在网络词汇中的作用与人类词汇中的语言很相似。两个使用不同协议的计算机要互相交谈的话,就像一个人想用日语同一个不懂日语的人交谈一样。那当然无法工作!
在今天,网络交流中存在着很多协议。在建立网络的早期,每个网络发展商都写自己的协议。最后发展出了一些标准,这样不同网络商的设备可以用统一的协议进行交流。这些协议包括传输控制协议/因特网协议(TCP/IP)、网间分组交换协议/顺序分组交换协议(IPX/SPX),以及AppleTalk。
要成为一个成功的网络故障检修员,你需要对网络协议有非常深入的了解。了解不同的协议与它们的特性,这将帮助你在网络运行不正常时能发现问题。
网络协议可以分为面向连接协议与无连接协议两种。面向连接协议在数据传输之前,在传输源与目的电脑之间建立了一个通道。这种协议保证了数据包以与传输顺序相同的次序到达接收数据的工作站。假如数据包在传输过程中丢失了,它会重新进行传输。目的主机对传输过来的数据做出响应。因为这些特性,面向连接协议还被称为可靠协议。无连接协议不保证数据一定会到达目的主机。它们提供Best-effort(尽力而为)的传输模式,不保证数据包一定到达,或者以什么顺序到达。这些具体问题由上一层的协议控制。无连接协议又被称为不可靠协议。但是,它们需要的费用少,而且通常比面向连接协议的传输更快。
本书将具体介绍如何捕捉、查看、解码、过滤和研究很多不同的可以使用Sniffer Pro网络分析程序的协议。
1.3.1; OSI模型与DOD模型
在20世纪80年代初,国际标准组织(ISO)建立了开放系统互连(OSI)模型,它描述了网络协议和组件是如何一起工作的。OSI参考模型把网络协议功能分成七个层次。每一层代表一组相关的规格、功能与活动。
图1.3中给出了OSI模型的这七个层次。OSI模型中的一个层次要向它上面的层次提供服务,而且都依靠于下一层提供给自己的服务。封装是一个过程,通过这个过程,模型中上层的信息可以被插入到下层的数据域中。当一条消息离开网络化工作站时,它要从第七层到第一层逐层通过。应用层产生的数据要传到表示层。表示层把数据从应用层带走,并给数据加上表示层的文件头与文件结束块。这些数据接着要到达会话层,这层也加上自己的文件头与文件结束块,并把它传递到传输层。这个过程不断重复,直到数据到达物理层为止。物理层不会考虑数据的含义。它知识把数据转换成字节,把它放入传输介质中。 QQRead.com 推出数据恢复指南教程 数据恢复指南教程 数据恢复故障解析 常用数据恢复方案 硬盘数据恢复教程 数据保护方法 数据恢复软件 专业数据恢复服务指南
从较高层次到较低层次的数据,包括较高层次的文件头与文件结束块,都被称做较低层次的负载。
当数据到达目的地时,接收工作站的物理层收到数据并进行相反的过程(也被称做解封装)。物理层把字节转换回原来的格式,并传递给数据链接层。数据链接层去掉自己的文件头与文件结束块,把数据传递给网络层。如此重复下去,直到数据到达了应用层为止。
图1.3; OSI参考模型的七个层次
OSI模型的各个层次为:
n 应用层; 这是OSI模型中的最高层次,它负责治理网络应用程序之间的交流。这一层并不是应用程序本身,尽管有一些应用程序可能会执行应用层的功能。应用层协议的例子包括文件传输协议(FTP)、超文本传输协议(HTTP)、简单邮件传送协议(SMTP)和Telnet。
n 表示层; 这层负责数据演示、加密与压缩。
n 会话层; 会话层负责建立并治理终端系统之间的对话。会话层协议在很多协议中都不使用。会话层协议的例子包括NetBIOS与远程过程调用(RPC)。
n 传输层; 这层负责程序或者过程之间的交流。端口或者插口的数目可以用来识别这些非凡的过程。传输层协议的例子包括传输控制协议(TCP)、用户数据报协议(UDP)和顺序分组交换协议(SPX)。
n 网络层; 这层负责从来源主机访问,并向目的主机传送的数据包。网络层从传输层得到数据,把它装在一个数据包或者数据报中。逻辑网址通常被分配给这层的主机。网络层协议的例子包括IP与IPX。
n 数据链接层; 这层负责在相同的物理区段中的网卡之间传输数据。数据链接层进行的对话通常都是基于硬件的地址进行的。数据链接层把来自网络层的数据包装到一个帧中。数据链接层协议的例子包括以太网、令牌环与点对点协议(PPP)。在这层运行的设备包括连接桥与交换机。
n 物理层; 这层定义了连接器和接线方式,还有关于电压和字节如何通过有线(或无线)介质传播的说明。这层的设备包括中继器、集中器和Hub。在物理层运行的设备不需要了解传输路径。
OSI模型适用性很广,可以用来解释任何的网络协议。因此,各种协议集都可以由OSI模型反映。对OSI模型的深入理解在网络分析、比较与故障检修中都会提供很多帮助。但是,也要记住并不是所有的协议都能用OSI模型很好地说明。例如,TCP/IP就要用美国国防部(DoD)模型来说明。
在20世纪70年代,美国国防部开发了一种四层模型。核心的因特网协议都附属于这个模型。DoD模型几乎是OSI模型的浓缩版本。它的四个层次是:
n 处理层; 这层定义了执行用户级别应用程序的协议,这些程序包括邮件发送、远程登录和文件传递。
n 主机对主机层; 这层处理连接、数据流治理和丢失数据的重新传输问题。
n 因特网层; 这层负责通过连接两台电脑的不同的一组物理网络,从来源主机向目的主机传送数据。
n 网络访问层; 这层处理通过非凡的硬件介质传送数据的问题。
TCP/IPTCP/IP由美国国防高级研究计划局(DARPA)开发,是现在应用最广泛的路由传送协议(routed protocol)。图1.4描述了TCP/IP的各个层次与OSI参考模型的七个层次的相互对应关系。
1
2
3
4
5
6
7
其他媒体访问控制协议
以太网/
IEEE 802.3
令牌环/
IEEE 802.5
IP
UDP
TCP
Telnet,FTP,SMTP,DNS,POP3,IMAP4及其他协议
图1.4; TCP/IP协议栈的各个层次
因特网协议(IP)是第三层协议,它包含有寻址与控制信息,可以确定数据包的路径。IP是一种无连接协议,因此,它提供不可靠但尽力而为的数据包传送服务。因为IP只提供尽力而为的数据传送,所以数据包可能会在传递过程中丢失。所有的IP数据包都包含有文件头与实际负载(来自上一层的数据)。图1.5给出了一个IP数据包的格式。
总长
标头长度
版本
服务类型
文件头检查和
协议
数据存活时间
标记
标识符
分割定位
选项+扩展位
目的地址
来源地址
数据
图1.5; IP数据包的格式
假如可靠的话,需要进行有保证的传输,IP要依靠TCP来提供这种功能。TCP是一种面向连接的协议,运行于IP上层,可以按顺序传输,并要求目的方的回应。
在TCP/IP的传输层,TCP与UDP是两个最常用的协议。它们的文件头都包括来源与目的端口号,用端口号来确定传输的应用或过程是由哪个TCP区段或者UDP数据报产生的,以及要传输到哪个TCP区段或者UDP数据报。TCP是一种面向连接的协议,而UDP是一种无连接协议。TCP的文件头包括顺序号码与回应序号,以便进行可靠的传送。TCP还可以使用拖动视窗原则。这种算法答应在应用程序与网络数据流之间放置缓冲装置。从网络接收到的数据被放在这个缓冲装置中,一直到应用程序来读取为止。视窗是在收到回应之前,可以放入缓冲装置的数据的数目。
使用TCP的应用程序包括FTP、Telnet、网络文件系统(NFS)、SMTP、HTTP、域名系统(DNS),以及网络新闻传输协议(NNTP)。使用UDP的应用程序包括DNS、路由信息协议(RIP)、NFS、简单网络治理协议(SNMP),以及动态主机配置协议/启动协议(DHCP/BOOTP)。可以看到,有些应用程序(比如DNS和NFS)两种协议都可以使用。
IP寻址TCP/IP使用IP地址来向正确的目的地发送消息。网络中的每台TCP/IP主机都需要有一个独特的IP地址与网卡相对应。IP地址由网络治理人员指定,或者是人工指定,或者是由反向地址解析协议(RARP)、BOOTP,或者DHCP这类动态寻址协议来指定。当前IP寻址机制(Ipv4)把IP地址定义为32位、二进制的数字——例如:
11000111 00011010 10101100 01010011
为了使它用起来更方便,IP地址被分成四组,每组8位:
11000111. 00011010. 10101100. 01010011
这些八位数据接着从二进制转化为十进制的数据,并写成如下形式(四个十进制数字分开表示):
199.26.172.83
在把数字输入电脑时,电脑自动把它转化成32位的二进制数字,不需要考虑单个数字是八位还是十进制数字。
一个IP地址有两部分,分别是网络ID和主机ID。网络ID与区段中的所有工作站共享,而且在整个工作过程中,必须是独特的。主机ID可以在区段中识别一个非凡的设备(主机),而且必须在非凡区段内保证自由。
在因特网协议第4版中,当今常用的IP系统被称做Ipv4。新系统Ipv6,或者又称为因特网协议第6版,目前已经开发出来,并在一些小型设备中使用。Ipv6通过把地址从32位增加到128位,以便容纳更多的地址。
类当早期的IP寻址机制建立起来时,IP地址被分成5类。通常分为A、B、C和D类的IP地址用于进行多点传送,而E类用来进行实验,预备将来使用。表1.1显示了IP地址各类。请注重在表中,N=网络,H=主机。
IP地址中最左面的四位的值决定了一个地址的类。例如,所有A类地址最左面的位都是0,但其余的31位可以是0或者1(这些位置上的值用x表示):
0xxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
这就决定了A类地址的范围是从0.0.0.0到127.255.255.255。B类地址最左面的位必须是1,相邻的位为0;所有其他的位可以变化:
10xxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
根据这个规则,B类地址的范围是从128.0.0.0到191.255.255.255。同样,C、D和E类地址分别设定第二位、第三位和第四位为1。
127.0.0.0属于A类地址,但是保留不用。127.0.0.1这个IP地址在TCP/IP主机上通常用于返回过程。0.0.0.0这个IP地址保留起来用做默认路径。
A、B和C类在各自范围中为地址各自定义了一个默认的子网掩码。A类子网掩码把网络的IP地址部分与主机部分分离开。在A类地址中,第一个八位数组代表网络ID,而后三个八位数组代表主机ID。在B类地址中,前两个八位数组代表网络ID,后两个八位数组代表主机ID。在C类地址中,前三个八位数组代表网络ID,最后一个八位数组代表主机ID。
表1.1; IP地址分类
类
最左面的八位数组
范围(第一个八位数组)
网络/主机部分
默认子网掩码
A
0xxxxxxx
0-127
N.H.H.H
255.0.0.0
B
10xxxxxx
128-191
N.N.H.H
255.255.0.0
C
110xxxxx
192-223
N.N.N.H
255.255.255.0
D
1110xxxx
224-239
未提供
未提供
E
1111xxxx
240-255
未提供
未提供
因特网中引入了无类别网络区域路由(CIDR),用来改进因特网路由系统的可测量性,并答应对地址进行更有效的分配。CIDR使用变长子网掩码(VLSMS),取消了分类网络(classful network)的概念。这就是无类别路由。
我们通常使用十进制计数系统,它是用10个数值(0,1,2,3,4,5,6,7,8,9)来代表数字。
计算机使用二进制计数系统来表示数据。二进制计数系统使用两个值,0和1,来代表数字。这是因为计算机只能识别两种状态:电荷存在或者不存在。即使计算机显示给你的是十进制的数字,但实际上电脑中进行了二进制数字的转换。一个单一的二进制数字(0或1)被称为一个二进制数的位。八位数组这个词被用来描述8位的一个单位。大多数现代计算机也用一个字节(字节)来表示8位。在计算机的早期,字节这个词还用来描述其他数目位的数组。大多数情况下,四位数组这个词与半个字节相同,因此是4位数。
十六进制使用16个值(0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F)来代表数字。十六进制系统很有用,因为一个字节(8位)可以只用两个十六进制数字来表示。这就使人们用十六进制格式时读取或者写入大的数字更轻易一些。
我们将学习如何把十进制数字转换为二进制。一种最常用的方法是把数字反复除以2。以十进制的数字35为例。图1.6显示了如何把这个十进制数字转换成二进制格式的过程。下面是过程的步骤:
1.把原始的数字除以2。余数作为二进制数中最末一位有效数字。
2.把第一步得到的结果除以2。余数作为二进制数中的倒数第二位有效数字。
3.重复除以2的过程,直到结果为0。采用各步的余数组成了二进制数。
图1.6; 十进制数字35转换成二进制格式
现在,我们来看看二进制向十进制的转换。这里我们简单地把二进制数字从右开始与2的乘方相乘。下面的步骤是把二进制数字101转换成十进制格式的步骤:
1.最右面的数字是1,所以你要把它与2的0次幂(1)相乘:1×1=1。
2.把左面的下一位数字(0)与2的一次幂(2)相乘:0×2=0。
3.再把左面的下一位数字(1)与2的二次幂(4)相乘:1×4=4。
4.现在,为了得到十进制数,你要把这些数加起来,1+0+4=5。因此,二进制数中的101等于十进制中的5。
十六进制向二进制的转换很轻易进行,只要把十六进制的每位数字先转为十进制,再把十进制数字转换成二进制。以十六进制数05DC为例:
1.把每位数字转换成十进制。结果分别位0,5,13和12。
2.把每个十进制数字转换成为4位的二进制数。得到了二进制的0000,0101,1101和1100。
3.把这些二进制数值排列起来。我们得到了0000010111011100。
假如要把二进制数转换成十六进制,把这个过程逆转过来就可以了。把二进制数每4位分成一组,把每组转换成十进制数。最后,用相应的十六进制数来代替十进制数。以二进制数1101101101010110为例:
1.把数值每4位分为一组,得到了1101,1011,0101和0110(图1.7中的第一行)。
2.把每组数转换成为十进制数。得到了13,11,5和6(图1.7中的第二行)。
3.把每个十进制数用相应的十六进制数代替。得到了最后的值DB56(图1.7中的第三行)。
图1.7; 把二进制数1101101101010110转换成十六进制格式
你会发现了解如何进行基底转换是网络分析人员工作中不可缺少的部分。计算机数据,包括网络协议,经常用二进制或者十六进制格式来表示。
网间分组交换/顺序分组交换(IPX/SPX)是一种Novell交流协议,由Xerox网络系统(XNS)协议衍生而来。图1.8给出了IPX/SPX协议与OSI参考模型的相对应关系。
IPX是一种第三层的无连接网络协议。尽管有多个Novell协议在第四层工作,SPX仍然是其中最常用的一种。SPX是一种可靠的面向连接的协议,由XNS顺序分组交换协议(SPP)衍生而来。网络核心协议(NCP)通过制定连接控制和服务请求/响应,提供客户端与服务器的交互作用。服务通告协议(SAP)答应服务器通报自己的地址和它们提供的服务。
图1.9给出了一个被Sniffer Pro捕捉的IPX数据包的例子。
7
6
5
4
3
2
1
ARCnet
FDDI
其他媒体访
问控制协议
令牌环/
IEEE 802.5
以太网/
IEEE 802.3
IPX
SPX
SAP
Netware核心协议
图1.8; IPX/SPX协议栈各层次
IPX寻址一个IPX地址由两部分组成:网络序号与节点序号。IPX地址有80位长,其中32位是表示网络序号,48位表示节点序号。IPX使第二层与第三层的对应关系更加简单,用第二层地址作为第三层地址的主机部分。因为IPX地址通常以十六进制数字用network. node格式书写,所以这样就不需要IP地址中地址解析协议(ARP)这样的协议了。
图1.9; 由Sniffer Pro捕捉的IPX数据包
不同于IP,IPX没有子网的概念。IPX网络序号由人工指定,必须每个网络区段都不同。对于指定的IPX网络区段,每个节点序号也都必须不同。
IPX支持多种以太网框架类型:以太网II,IEEE 802.3,IEEE 802.3 SNAP,和Novell 802.3 RAW(本章后面部分将具体讨论这些框架类型)。只要每种封装类型都制定了一个唯一的网络序号,它就可以对一个网络区段使用多种封装类型。一定要记住使用不同封装类型的主机之间不能直接进行交流。
节点序号在网络间可能会重复,因为网络序号和节点序号是一起来确定一个主机的。
内部网络编号与服务器地址IPX含有两类网络序号:内部网络序号与由局域网(LAN)和一些广域网(WAN)接口指定的网络序号(有时被称为外部网络序号)。一个内部网络序号确定了你的内部网络的外延,有时指虚拟网络区段。例如,假如你已经在运行IPX的工作站上配置了内部网络序号,路由器就会给工作站加一个附加的hop en路径。
使用内部网络序号可以改善网络的容错能力。IPX资源可以用指向IPX地址的SAP名称来定位。把内部网络序号作为SAP地址的一部分,这意味着一个特定的网络区段发生错误时,只有IPX路径会被调整,从而使用另一种路径,而SAP表不会受到影响。
内部网络序号是一个八位的十六进制数字,在0x1和0xFFFFFFFE之间,而且必须在整个IPX网络上是唯一的。尽管0xFFFFFFFE最初是作为一个地址来使用的,但在引入了网络连接服务协议(NLSP)后就产生了变化。NLSP和IPX RIP都经过了修正,把0xFFFFFFFE作为默认的路径。当你使用内部网络序号时,IPX地址的主机部分被设定为1。
如何翻译IPX地址图1.10更具体地描述了IPX地址。地址的前32位是网络序号,由网络治理人员进行分配。这个序号必须是在0x00000001和0xFFFFFFFD之间的一个十六进制数。这时,网络序号通常为十六进制数0xBEEE。地址的后48位与媒体访问控制(MAC)地址相同,都来自网卡。这时,网卡的MAC地址是00-20-E0-88-80-74,这也被用做IPX节点序号。
网络序号
节点序号
00-00-BE-EF-00-20-E0-88-80-74
图1.10; IPX地址的例子
IPX节点的默认行为是采纳网卡的MAC地址作为IPX节点序号。但是,一个网络治理人员可以选择通过为系统静态指定IPX节点序号,来覆盖这个序号。一定要小心!假如指定的节点序号在网络上不是唯一的,可能在网络上有两个系统就会使用同样的IPX节点序号。这样会导致产生严重的网络问题。你可以用Sniffer Pro软件来找到一个网络中重复指定的节点序号。
AppleTalk苹果公司开发了AppleTalk作为即插即用协议来使用Macintoshi计算机。AppleTalk的设计目的是为了答应在多个用户间共享资源,比如文件与打印机。任何附属于AppleTalk网络的设备都被称为节点。图1.11说明了AppleTalk协议栈与OSI参考模型之间的对应关系。
图1.11; AppleTalk协议栈的层次
AppleTalk支持四种媒体访问协议:
n ;EtherTalk:以太网上的AppleTalk。
n ;LocalTalk:电话线上的AppleTalk。
n ;TokenTalk:令牌环上的AppleTalk。
n ;FDDITalk:光纤分布式数据接口(FDDI)上的AppleTalk。
在数据链接层,每种物理媒体技术都有自己相应的连接媒体协议(LAP):EtherTalk LAP(ELAP)、LocalTalk LAP(LLAP),TokenTalk LAP(TLAP)和FDDITalk LAP(FLAP)。
在AppleTalk的网络层有两种协议:AppleTalk地址解析协议(AARP)与数据报传送协议(DDP)。AARP相当于TCP/IP中的ARP,而DDP则相当于TCP/IP中的IP。DDP负责传送与接受数据包,并提供节点之间端口对端口的连接。
在AppleTalk的传输层有5种要害的协议:
n ;AppleTalk回应协议(AEP) 这个协议负责测试网络节点的可达性。
n ;AppleTalk事务协议(ATP) 这个协议负责确保来源端口与目的端口之间进行没有任何数据丢失的交流与对话。
n ;名称匹配协议(NBP) 这个协议负责把对用户友好的实体名称与数字网络地址相对应。
n 路由选择表单维护协议(RTMP) 这个AppleTalk的距离向量路由选择协议是基于IP RIP的。
n ;AppleTalk基于更新的路由选择协议(AURP) 这个协议是RTMP的扩展,答应两个不连续的AppleTalk网络用UDP封装,通过IP把流量连接起来,彼此之间进行对话。
AppleTalk的会话层由四种协议组成:
n ;AppleTalk对话协议(ASP) 这个协议负责建立并维护客户端与服务器之间的逻辑连接。ASP运行在ATP之上。
n ;AppleTalk数据流协议(ADSP) 这个协议负责在两个节点之间建立了对话后,进行数据的可靠传输。ADSP直接在DDP之上运行。
n 区信息协议(ZIP) 这个协议保持网络到区序号之间的对应关系。
n 打印机访问协议(PAP) 这个协议用来在客户端与服务器(通常是打印机服务器)之间建立连接。PAP在ATP之上运行。
AppleTalk文件协议(AFP)安装在表示层与应用层,它答应文件和目录在网络上共享。AFP依靠于ASP、ATP和AEP而存在。
AppleTalk寻址与IP和IPX相似,AppleTalk用地址来识别并为网络上的设备定位。AppleTalk地址包含下面三个要素:
n 网络序号(2个字节) 网络序号表示一个唯一的AppleTalk网络的值。AppleTalk中,合法的网络序号是在1和65279之间的数字。0被保留作为本地网络的序号。网络序号65280到65534被保留用做启动过程。
n 节点序号(1个字节) 节点序号表示附属于某个特定网络的唯一的AppleTalk节点。合法的节点序号应该是从1到253的数字(255被保留用于广播,0和254是非法值)。
n 端口序号(1个字节) 端口序号表示在节点上运行的一个特定端口。AppleTalk中的端口与TCP/IP中的端口相似。它们都代表主机上的一个过程或者一种服务。端口地址有8位长;一个节点上最多可以有254个端口(端口号0和255保留)。端口1到127由静态指定,端口128到254由动态指定。
AppleTalk地址通常用三个十进制值表示(网络序号、节点序号、端口序号),这些序号用点隔开。例如,地址5.3.20代表网络5、节点3和端口20。
地址用 AARP来动态指定。当一个AppleTalk节点启用时,它会在网络上选择一个随机的节点序号。然后它发送一个AARP请求,看网络上其他的节点是否正在使用这个地址。假如没收到任何回应,这个节点就会使用这个地址。假如另一个节点已经在使用这个地址了,这个节点就会选择一个新的节点序号,再发送一次请求,来确定没有其他节点使用同样的节点序号。这个过程不断重复,直到不再收到AARP回应为止。一个AppleTalk设备可以用NVRAM存储最近一次使用的网络地址,下次启动时会尝试重新使用这个地址。AARP还用在AppleTalk节点与第二层地址的映射过程中,这与ARP在IP中的作用很相似。第三层到第二层地址的映射,用地址映射表(AMT)储存在一台AppleTalk主机上。图1.12说明了一个被Sniffer Pro捕捉的AppleTalk ARP数据包的例子。
图1.12; 被Sniffer Pro捕捉的一个AppleTalk数据包
有两类AppleTalk网络,阶段1与阶段2。阶段1网络(又称为非延伸性网络)在网络上只能有253个节点。阶段2网络(又称为延伸性网络)使用电缆范围这个概念,可以突破253个节点的限制。不同于阶段1中的单一网络序号,在阶段2中,一个区段可以被指定一个网络序号的顺序范围。这个网络序号范围作为一个单一的网络,被称为电缆范围。电缆范围中每个网络序号都有253个节点。电缆范围可以用加分隔连字符的一对网络序号来表示。例如,电缆范围4001-4004包括网络序号4001、4002、4003和4004。要注重电缆范围也可能只包含一个网络序号。例如,电缆范围4005-4005就只有一个网络序号4005。
区域与AppleTalk通讯AppleTalk中的区域由一个网络设备的逻辑组组成。它来自于使用户轻松为网络设备定位的概念。一个Apple Macintosh计算机上的选择程序能识别一个区域中的所有服务,并把它们列出来。区域名称由网络治理人员随机指定,通常都是基于地理或者组织边界来指定。一台主机可以只属于一个区域,而这台主机进行的所有服务都出现在这个区域中。
一个区域中可以有一个或者更多网络,多个区域也可以存在于一个网络中。区域信息协议(ZIP)在会话层进行操作,负责把网络与网络上的区域名称对应起来。当主机启动时,ZIP就会提供给主机一份区域名称清单。
以太网以太网就是今天使用最广泛的LAN技术。以太网与OSI模型的第一层和第二层相对应。1972年,Robert Metcalfe和David Boggs在Xerox帕洛阿尔托研究中心(PARC)工作,由他们开始最早使用以太网。1979年,人们认为应该为以太网建立一个标准;1980年,Digital、英特尔和Xerox一起发布了一个以太网标准。1982年,Digital、英特尔和Xerox(合称DIX)发布了新版以太网,被称作以太网二代。
每个以太网适配器都被指定了一个全球唯一的硬件地址。这个地址有很多名称:MAC地址、预烧硬件地址(BIA)、物理地址,或者简单来说就是以太网地址。这个地址是一个48位的二进制数,通常用12个十六进制的数字表示(六组,每组两个数字,组间以破折号或者冒号分开)。这个地址在网卡的生产过程中已经设定好了。
一些网卡答应网络治理人员覆盖原来的预烧MAC地址,而使用一个治理人员指定的MAC地址。
目的MAC地址的第一个字节的最末一位被称为个别/群体地址(I/G)位。假如这位被设为0,表示目的地址是一个工作站。假如I/G数设为1,表示目的地址是一组工作站。
MAC地址中第一个字节的倒数第二位被称作通用或者局域治理地址(U/L)位。假如它被设为0,那么这个地址就是在世界范围内进行治理的。这意味着这个地址由美国电子电气工程师学会(IEEE)指定,在全球范围内都是唯一的。假如这位被设为1,那么这个地址就是由一个网络治理人员选出来进行区域治理的(覆盖网卡的BIA地址)。
在网络的数据通信中,用到三种MAC地址:
n 单播 单播地址表示网络上一个唯一的网络适配器。
n 组播 组播地址表示网络上的一组网络适配器。一个发送到组播地址的帧由这个组播组中的所有网卡接收,而被不属于这个组播组的主机略过。
n 广播 这个目的地址全部是1(用十六进制表示就是ff:ff:ff:ff:ff:ff),它要保留用于广播。广播帧由以太网区段上的所有网卡接收。
CSMA/CD以太网是基于载波监听多路访问/冲突检测(CSMA/CD)协议而建立的。CSMA/CD定义了用以太网进行访问的方法。多路访问这个词是指许多工作站都附属于同样的电缆,它们有可能进行传输。每个工作站进行传输的机会相等;没有任何一个具有优先权。载波监听描述了一个以太网工作站如何在传输前监听网络通道情况的过程。工作站要确保在传输之前,通道中没有任何其他信号。一个以太网工作站在传输时进行监听,这样还可以确保没有其他的工作站同时传输数据。当两个工作站同时传输时,就会发生冲突。因为以太网工作站在传输时可以进行监听,所以它们能够通过冲突检测流程来确认是否存在其他工作站。假如发生了冲突,传输工作站就会暂停,随机地等待一段时间后再重新传输。这种功能被称为随机延迟。
以太网的运行通常是半双工的。这意味着一个工作站可以传输或者接收数据,但是不能同时做这两件事。根据CSMA/CD,假如区段上有不止一个工作站试图同时传输数据,就会发生冲突。当用交叉电缆来连接两个工作站,或者一个设备附属于一个交换机端口时,数据连接线上只有两个工作站需要传输或者接收数据。因此,冲突检测流程就没有必要了,所以电脑可以进入全双工的工作模式。这种模式答应电脑同时传输与接收数据,从而提高性能。
设置以太网的双工功能
自动选择是IEEE 802.3u标准中的一项可选功能,它答应直接连接在一起的以太网设备自动交换关于它们的速度与双工能力的信息。自动选择过程决定了操作的最佳速度与双工形式。过去,很多网络工程师都不推荐使用自动选择,因为它经常不起作用。但是,自动选择已经发展成为一项成熟技术了,现在正被当作一种优秀的技术在实际中使用。
10/100Mbps以太网连接的性能产生问题的一个最常见的原因就是双工形式不匹配。当两个工作站以同样的速度运行,但连接的一段以半双工形式工作,而另一段以全双工形式时,就会出现这种情况。这种设置会产生循环冗余校验(CRC)错误、校准错误,并产生残帧,所有这些都会导致网络性能出现显著的下降。关于自动选择的概念有一个常见的错误,就是手动设置一个连接端为100Mbps全双工,而在另一端用自动选择来设定,这样做的结果是两个主机都会以100Mbps全双工形式运行。
缺省时,大多数网卡和转接器的速度和双工参数都设为自动选择,建议你用这种方式进行设定。
以太网帧类型图1.13中描述了最初由DIX建立的以太网二代帧的格式,它由六个域组成:
以太类型
来源地址
目的地址
导头(Preamble)
FCS
数据
图1.13; 以太网二代的帧
1.导头 导头由8个字节组成,由全是0和全是1的字节交替组成,以11结束。这种顺序是用来标记帧的开头,使以太网区段上的所有工作站都能够识别。
2.目的地址 目的地址说明了帧将要被传送过去的下一个工作站的数据链接地址。一个目的地址假如全是1,说明这是一个广播帧,可以被所有以太网适配器读取。
3.来源地址 来源地址确定了传来帧的上一个工作站的数据链接地址。
4.以太类型 这个域用来确定封装在帧内的数据(协议)的类型。这样的例子包括IP(以太类型0x0800)、ARP(0x0806)和AppleTalk(0x809B)。
5.数据 这个域包含来自上一层的数据。在以太网二代中,这个域的长度必须在46到1500个字节之间。假如上一层生成的数据少于46个字节,就要加一些数字使它至少达到46个字节。假如数据多于1500个字节,就要进行分割,再以多个帧的形式传送。
6.FCS 帧中的最后4个字节代表了帧校正序列(FCS),也被称为循环冗余校正,或者CRC。传输数据的主机用以太网帧的所有位来计算CRC值,但是标头和CRC本身不计入其中。接收数据的适配器进行同样的计算,并把计算的校验和域帧的校验和相比较。假如两个值不匹配,帧就要被中止,记录下这个CRC错误,并取消这个帧。
1980年,IEEE组成了802标准委员会,开始为以太网开发一种国际标准。这个标准在1983年发布,名为IEEE 802.3。与以太网二代中的操作很相似,但IEEE 802.3标准还会修正帧的格式,使帧包括802.2 LLC标头(见图1.14)。这是Novell NetWare3.12版和更新的版本中使用的默认帧类型。
控制
SSAP
DSAP
FCS
数据
802.2 LLC标头
长度
来源地址
目的地址
SFD
标头
图1.14; IEEE 802.3帧
IEEE 802.3帧格式由下述域组成:
n 标头 IEEE决定把标头分成两部分。前7个字节由全部是0的字节和全部是1的字节交替组成。最后一个字节被称做起始帧定界符(SFD)。
n 起始帧定界符(SFD) 这个字节是10101011。
n 目的地址 与以太网二代的目的地址相同。
n 来源地址 与以太网二代的来源地址相同。
n 长度 说明了帧有多少个字节。这个域替换了以太网二代的帧中的以太类型域。这就产生了一个有趣的问题:假如一个在这里用的是长度值,另一个用的是以太类型,那么我们怎样识别以太网二代帧与IEEE 802.3帧?为了保证这两种帧可以兼容,所有的以太类型都用大于十六进制的05DC或者十进制的1500的数值表示。既然以太网中数据最大值为1500个字节,那么表示以太类型的数值与长度数值之间就不会有重复。假如来源地址后面的域中的数值多于1500个字节,它就被当做以太网二代帧,反之,它就是IEEE帧类型。
n ;802.2逻辑局域控制(LLC)标头 LLC标头的目的是要识别发送域接收协议。这个标头含有三个域:
QQRead.com 推出数据恢复指南教程 数据恢复指南教程 数据恢复故障解析 常用数据恢复方案 硬盘数据恢复教程 数据保护方法 数据恢复软件 专业数据恢复服务指南n 目的服务存取点(DSAP) DSAP只有一个字节,用来确定目的工作站的接收过程。
n 来源服务存取点(SSAP) SSAP是一个字节,用来确定来源工作站的发送过程。
n 控制 控制域有一个字节,用于存放各种控制信息,并识别LLC帧的类型。
n 数据 这个域包含来自上一层的数据。在802.3以太网帧中的数据长度必须在43到1497个字节之间。
n ;FCS 与以太网二代FCS相同。
1983年,Novell NetWare公诸于世,它使用基于IEEE 802.3原始版本的专有以太网帧格式(见图1.15)。这个帧格式只用来负载IPX流量,很轻易被识别,因为它的前两个字节数字通常都是FFFF。这种帧格式与IEEE 802.3很相似,但是没有LLC标头。这是Novell NetWare3.11版和更早的版本使用的默认帧类型。
长度
来源地址
目的地址
标头
FCS
FFFF后面加数据
图1.15; Novell 802.3的原始帧
IEEE很快就意识到8个字节不足以代表协议类型。为了解决这个问题,并与以太网二代标准兼容,它们创造了子网访问协议(SNAP)标头。尽管没能真正与以太网二代兼容,SNAP仍然还可以使用旧的以太类型域。IEEE 802.3 SNAP帧与IEEE 802.3很相似,但是引入了SNAP标头(见图1.16)。在802.3 SNAP帧中,LLC标头中的DSAP和SSAP域通常被设定为AA,这表示后面跟的是SNAP标头。SNAP标头引入了两个域:
n 供给商代码 这个域有三个字节,通常设定为来源地址的前三个字节的值。有时也设为0。
n 局域代码 这个域有两个字节,含有帧的以太类型。以太网二代通过这个代码来提供向后相容性。
数据
长度
来源地址
目的地址
SFD
标头
FCS
供给商代码
局域
代码
DSAP
SSAP
控制
SNAP
标头
802.2
LLC标头
图1.16; IEEE 802.3 SNAP帧
编码为了通过电缆来传递数据,数据的位必须转换成电压值。在10Mbps以太网中,这个转换过程用一种称为曼彻斯特编码的格式来进行。曼彻斯特编码中的转化过程发生在每个位周期中间。这种转换有两个目的:转换时钟与数据。由髙到低的转换为0,而由低到髙的转换过程相当于1。图1.17中显示了二进制数00101011如何用曼彻斯特编码来代表的例子。
1
1
0
1
0
1
0
0
图1.17; 曼彻斯特编码的例子
在每个位时间中都存在相互转化。有时是由低到髙;有时又是由髙到低。这种转换答应接收数据的适配器过程锁定数据中的标记,确定每一位的开始与结束。曼彻斯特编码能够在转换过程中检测错误。因为每个位周期中都要进行一次转换,所以没有进行转化就意味着发生了错误。例如,10Mbps以太网使用平衡标记方法,这样它就有两种状态,+5V和-5V。
高速以太网和超高速以太网以太网最初是在10Mbps下运行。IEEE 802.3u标准于1995年批准实行,它定义了一个系统来使以太网的速度达到100Mbps,比传统的10Mbps网络提高了10倍。另外,100Mbps以太网使用CSMA/CD算法,同10Mbps以太网使用同样的帧大小与格式。
100BaseTX用与10BaseT不同的编码格式;这种格式被称为多级转换3(MLT-3)编码。MLT-3使用三态交流波。与曼彻斯特编码相比,曼彻斯特编码提供两种状态,100Mbps以太网的MLT-3提供三种状态:它从-5V到0到+5V,回到0,然后是-5V,并重复这个过程。使用MLT-3时,根据电压的上一个值来表示一位的值。1会导致电压的状态变化,而0则不会引起任何电压的变化。因为1会产生电压变化而0不会,所以对于同样的二进制形式,可能编码方式会不同,这要看电压的起点如何。图1.18显示了MLT-3编码中字节形式位00101011的编码例子。上面一张图从0V开始,而下面一张图从+5V开始。
图1.18; MLT-3编码例子
1998年,IEEE 802.3z标准定义了超高速以太网,它在1000Mbps下运行。超高速以太网提供的性能是100Mbps以太网的10倍,而且可以以半双工或者全双工模式运行。
IEEE 802.3ae工作组正在制定一种通过光纤传输的万兆以太网。这个标准保留了802.3/以太网帧格式、IEEE 802.3 MAC协议,和IEEE 802.3帧的最小与最大尺寸。但是,不同于以前的各版本以太网,万兆以太网取消了CSMA/CD协议的使用,只提供全双工操作。
令牌环是首先由IBM在20世纪70年代开发的一种LAN协议,1985年作为IEEE 802.5被标准化。令牌环支持两种带宽:4Mbps和16Mbps。不同于以太网,令牌环是用来处理两个工作站同时传输时所产生的冲突问题。通过建立一个闭合的环,并使用电子“令牌”,从而解决冲突问题,电子“令牌”在环中的主机之间循环传递。只有持有令牌的主机才答应进行传输。当工作站捕捉到令牌时,它会把原本处于自由状态的令牌改变为工作状态中的令牌帧,这样数据就可以发送了。
有一种相对比较新的协议,被称为快速令牌环,能够以高达100Mbps的速度传输数据。快速令牌环使用多模式光纤来进行传输。Sniffer Pro不支持高速令牌环。
具体介绍帧一个处于自由状态的令牌帧由三个域组成,每个域都是一个字节:
n 启动符(SD); 标志着令牌帧的开始。
n 访问控制(AC); 含有优先域、保留域、一个令牌位和一个监控位。
n 结束符(ED); 标志着令牌帧的结束。
一个数据/命令(处于工作状态的令牌)帧格式如图1.19所示。
ED
FCS
数据
SA
DA
FC
AC
SD
FS
图1.19; 令牌环帧格式
一个处于工作状态的令牌帧中存在以下域:
n 启动符(SD) 一个有一个字节的域,标志着令牌帧的开始。
n 访问控制(AC) 一个有一个字节的域,含有优先域、保留域、一个令牌位和一个监控位。
n 帧控制(FC) 一个有一个字节的域,含有两个帧类型位(用来说明是MAC帧还是LLC帧),两个保留位(留做将来使用)和四个控制位(用来说明帧是通过正常的缓冲程序处理,还是由高度优先的缓冲程序处理)。
n 目的地址(DA) 一个有六个字节的域,表示帧要到达的网络适配器的地址。
n 来源地址(SA) 一个有六个字节的域,表示产生帧的网络适配器的地址。
n 数据。这个域中包含来自上层的数据。
n 帧校验顺序(FCS) 这个域有四个字节,对FC、DA、SA和数据进行CRC-32错误校验。这个域不在帧的结尾,因为ED和帧状态(FS)的内容可能会被工作站在传递环时改变。假如FCS是最后一个域,校验和(checksum)就必须由每个工作站重新计算,导致性能下降。
n 结束符(ED) 一个有一个字节的域,标志着令牌帧的结束。结束符还含有表示受损的帧的位,并且可以识别逻辑顺序上处于最末的帧。
n 帧状态(FS) 一个有一个字节的域,表示传输状态,说明这个帧是否被目的工作站复制了。它包含地址识别指示符(ARI)位、帧复制指示符(FCI)位和两个设为0的位。因为这个域不是用来计算CRC的,所以这个域的字节由这四位不断重复组成。
令牌环有两种不同的帧类型:LLC帧,用于使用数据,而MAC帧,用来进行适配器对适配器的通讯。MAC帧不需要通过桥连器、路由器、交换机和网关。MAC帧包括主动监控帧(Active Monitor Present)、环清除帧(Ring Purge)、备用监控帧(Standby Monitor Present)、令牌申请帧(Claim Token)和标记帧。LLC帧负载用户数据,包括含有上层协议数据的LLC标头。同前面讨论的以太网相似,LLC标头中包括DSAP、SSAP和控制域。
令牌传递当工作站需要传递帧时,它首先要等候令牌。一旦收到了令牌,它就会开始以工作状态传输数据。在数据通过令牌传输的同时,令牌会通过所有的工作站,直到到达目的工作站。每个工作站把帧复制到当地的缓冲器中,然后重新生成帧送到环上,等待下一个工作站来接收。当数据到达最终目的地时,数据被复制到令牌环卡的缓冲器上。目的工作站设定帧复制指示器域地址,识别指示器位为1,并把帧送回环上。帧继续通过令牌传递,直到回到来源工作站。来源工作站负责把帧移除,并向网络引入一个新的自由令牌。你可以设置可选选项,称为提早令牌释放。它答应令牌发送完数据帧后,马上由传输数据的工作站释放,而不用等到帧从目的工作站返回后再释放令牌。提早令牌释放答应一个环上有多个帧,因此提高了性能。
主动监控令牌环原本是进行内置治理的,定期监控并控制环的运行。通过环上一个特定的工作站来执行这项任务,这被称为主动监控。主动监控根据一个名为申请令牌过程的电子过程进行选择执行。一旦选定,主动监控就负责分析环上可能发生的错误,比如令牌和帧的丢失,或者时钟错误。主动监控的一个功能是可以从环上清除任何连续的浮动帧。假如一个设备已经把令牌放到了出错的网络上,帧可能会继续在环上永远循环下去。主动监控可以检测到这样的帧,把它从环上移除,并生成一个新的令牌。备用监控负责探测主动监控的错误,并启动监控冲突过程。
环清除通常在恢复操作后由主动监控器执行,比如监控器冲突,它在新令牌产生之前马上就会发生。主动监控器可能会发送一个环清除帧,目的是要重新设定帧的状态,但这样会导致环清除。任何接收环清除帧的工作站都会马上停止工作,重新设定定时器,并进入位重复模式。当环清除帧重新回到主动监控器时,主动监控器就知道环上每个工作站现都处于位重复模式了,可以等候令牌出现了。
标记用来分离默认域,这样恢复动作就可以进行了。标记过程包括每20分钟传输一次标记MAC帧,而不需要使用令牌。标记工作站根据自己的内部晶体振荡器来使用时钟,而不是接收端口恢复使用的时钟。当一个工作站收到一个标记MAC帧时,它或者进入标记重复模式,或者进入标记传输模式。一个处于插入过程的工作站将用错误来终止开发命令,并把自己从环中移除。
图1.20说明了一个令牌环帧中、主动监控帧的例子。主动监控器每7秒就向网络发送一个主动监控帧。分析这个帧,我们可以确定网络上的主动监控器是MAC地址为00-00-83-20-44-8c的工作站。
1.3.2; 其他协议网络通讯中用到了上百个协议,包括WAN协议(例如,帧延迟、T-1、HDLC、PPP、ISDN)、无线协议(802.11a、802.11b、HomeRF)和其他协议(DECnet、NetBEUI、SNA)。
DECnet数字设备公司(DEC)在1975年开发了DECnet协议。最早发布的DECnet版本是用来连接两个PDP-11微型计算机的。从那以后,DECnet的几个新版本陆续发布,提供了更多的功能。DECnet Phase IV是这个协议使用最广泛的版本。DECnet Phase IV是基于Phase IV数字网络结构(DNA)而开发的。DNA是一种复杂的分层网络结构,与OSI非常类似。但是,与OSI模型不同的是,Phase IV DNA使用了8个层次。图1.21说明了Phase IV DNA如何与OSI参考模型的各层相对应。
图1.20; 一个令牌环帧:主动监控状态
7
5
6
4
3
2
1
物理层
数据链接
结束通讯
路由选择
对话控制
网络应用程序
网络治理
用户
图1.21; DECnet Phase IV DNA
SNAIBM在20世纪70年代开发了系统网络结构(SNA)。这种协议最初是用来连接大型计算机的。SNA网络由节点和链接组成。在传统的SNA中,有四个物理实体:
n 主机 主机提供计算、程序执行、数据库访问、目录服务和网络治理功能。
n 前端处理器 前端处理器治理物理网络与通讯链接,它们通过网络选择数据的路径。
n 群集控制器 群集控制器控制附属与它们的设备的输入与输出操作。
n 终端 终端提供给用户访问网络的界面。
计算机工业在向对等网络方向发展,使用越来越小的网络计算机,同时SNA也发展成为可以支持对等网络的工作站。这种发展导致了高级对等网络(APPN)的发展。APPN答应动态地定位和制定资源与路径。这就答应在没有大型机地网络上的两个逻辑单元之间建立对话。
无线通讯IEEE 802.11委员会为无线LAN标准定义了物理层与数据链接层。这种协议的基本访问机制是基于有冲突的载波监听多路访问协议(CSMA/CA)而发展出来的。CSMA/CA操作与以太网上的操作很相似。但是,与有线网络不同的是,无线网络上的冲突探测机制并不是十分有效。冲突避免过程是用请求发送(RTS)和清除发送(CTS)帧来完成的。
对于无线网络来说,安全问题是至关重要的,因为它不需要用电缆与网络进行物理链接就可以捕捉到无线协议。在802.11网络中的密码编译是在数据链接层,用有线同等保密(WEP)来执行的。
1.3.3; Hub与MAU以太网最初是总线拓扑。电缆会从一台机器到下一台机器,再到下一台,一直连下去。这使以太网的电缆连接经常出现错误,假如某一点的有线连接出现了问题,就会导致整个网络产生问题。以太网的星型拓扑需要使用Hub。这个模型中的电缆从一个中心Hub连到每个工作站。这种布局消除了电缆连接中单个点出现问题就影响整体的可能性,但是使Hub本身成为出现失败的中心问题。然而,Hub不像电缆那么轻易出现问题。以太网Hub还可以作转发器使用,因此可以延伸你的以太网的距离。令牌环多站访问部件(MAUs)可以提供与Hub相同的功能,被用来在令牌环环境中提供物理的星型拓扑布局。
什么是Hub?Hub是一种设备,在OSI模型的物理层运行,使以太网可以很轻易地扩展。Hub答应任何媒体类型的多个以太网电缆区段连接起来,生成更大的网络,作为一个以太网LAN工作。因为Hub在物理层运行,所以它们没有来源地址和目的地址的概念。Hub把所有的位都放在端口用来接收数据,并让它们重新向所有其他端口广播。
当设备与Hub相连时,它们能收到与Hub相连的其他设备发送的数据,无论数据是否是要发送给它们的(见图1.22)。Hub有时还被称为多端口转发器。一组连接在一起的Hub被称为冲突域;在可以共享的以太网LAN上的所有主机都用CSMA/CD来竞争传输数据的优先权。
E
F
G
D
H
HUB
C
A
B
图1.22; Hub操作
在各种类型的Hub之间有很多不同之处。被动Hub重新广播数据,但是不会增强LAN的性能或者对故障检修过程有任何帮助。主动Hub具有与被动Hub相似的广播性能,但是可以提供更多的功能。主动Hub使用存储转发技术来在传输数据之间进行检查。它们能够修复某些受损的帧,并为其他帧的分配过程重新定时。尽管为帧的发送过程重新定时会降低整个网络的性能,但是当数据会丢失时,人们还是更愿意使用这种方法。假如一个主动Hub收到了一个很弱的信号,它会在广播之前重新生成这个信号。一些主动Hub还能够提供其他诊断功能。
智能化Hub可以通过执行SNMP来提供远程治理能力。这使网络工程师可以远程监控网络传输情况和性能,因此能够帮助对网络端口的故障检修。智能化Hub又被称为可治理Hub。
以太网连线问题
在以太网如何连接的问题上有很多限制。首先,有一些距离上的限制:
n ;10Base2; 最多185米。
n ;10BaseT; 最多100米。
n ;100BaseTX; 最多100米。
n ;100BaseFX; 最多412米(半双工),或者2000米(全双工)。
n ;1000BaseLX MMF; 最多316米(半双工)或者550米(全双工)。
n ;1000BaseLX SMF; 最多316米(半双工)或者5000米(全双工)。
n ;1000BaseSX; 最多316米(半双工)或者550米(全双工)。
在网络上任意两个工作站之间的转发器和电缆区段数目上也有一些限制。在任意两个以太网工作站之间,不能超过五个重复区段,也不能多于四个转发器。这种限制可以参见5-4-3规则(5个区段、4个转发器、3个密集区段)。换句话说,在两个工作站之间任何可能的路径都不能通过超过4个转发器或者Hub,也不能多于三个密集电缆区段。
一定要注重,一个不与其他区段重复的电缆区段上可以放置的网络设备数也有限制。在10Base2中,每个唯一的区段上只能放30台设备,T型连接器之间的距离不小于半米。在10BaseT、100BaseTx、100BaseFX、1000BaseLX和1000BaseSX中,最大设备数为1024台。
什么是MAU?多站访问部件(MAU)是一种为令牌环网络设计的非凡类型的Hub。MAU在星型拓扑布局中将令牌环工作站实际连接在一起,同时仍然在逻辑上保持原来的环结构还结构。令牌环网络中的一个问题是一个处于非工作状态的节点可能因为打破了环结构,从而破坏整个网络的工作。MAU就是针对这个问题工作的,它可以使非工作状态中的节点短路,因此可以维持环的完整性(见图1.23)。
未连接工作站
图1.23; 网络中有未连接的工作站时,MAU的操作情况
MAU可以连接在一起,组成菊花链外形的网络,以扩展网络上提供的端口的数目和距离。通常,MAU用ring-in和ring-out端口来与其他MAU相连。
常见的第一层设备的问题在第一层,可能发生很多问题,包括:
n 衰减 衰减是指信号强度减弱,通常发生在有信号通过电线传输的时候。在网络世界中,转发器负责在继续传递信号前,清除并重新生成信号。
n 交互干扰 交互干扰是来自相邻的电缆或者回路的信号造成的干扰。例如,缠在一起的线中的信号可能互相干扰。交互干扰通常可以用电缆上附加的屏蔽来避免。
n 阻抗 阻抗是阻止交流电通过的一种阻力。正确的网络操作要依靠于一个特征性的恒定阻抗。这个阻抗值忽然发生变化时,会导致信号传输出现问题。使用具有相同特征阻抗值的电缆和连接器,就可以避免阻抗问题的发生。
n 干扰 干扰可以是无线电频率干扰(RFI)或者电磁干扰(EMI)。干扰可能是由电缆四周
Greenfoot是一款简单易用的Java开发环境,该软件界面清爽简约,既可以作为一个开发框使用,也能够作为集成开发环境使用,操作起来十分简单。这款软件支持多种语言,但是默认的语言是英文,因此将该软件下载到电脑上的时候,会发现软件的界面语言是英文版本的,这对于英语基础较差的朋友来说,使用这款软件就会...
07-05
Egret UI Editor是一款开源的2D游戏开发代码编辑软件,其主要功能是针对Egret项目中的Exml皮肤文件进行可视化编辑,功能十分强大。我们在使用这款软件的过程中,可以将一些常用操作设置快捷键,这样就可以简化编程,从而提高代码编辑的工作效率。但是这款软件在日常生活中使用得不多,并且专业性...
07-05
KittenCode是一款十分专业的编程软件,该软件给用户提供了可视化的操作界面,支持Python语言的编程开发以及第三方库管理,并且提供了很多实用的工具,功能十分强大。我们在使用这款软件进行编程开发的过程中,最基本、最常做的操作就是新建项目,因此我们很有必要掌握新建项目的方法。但是这款软件的专业性...
07-05
Thonny是一款十分专业的Python编辑软件,该软件界面清爽简单,给用户提供了丰富的编程工具,具备代码补全、语法错误显示等功能,非常的适合新手使用。该软件还支持多种语言,所以在下载这款软件的时候,有时候下载到电脑中的软件是英文版本的,这对于英语基础较差的小伙伴来说,使用这款软件就会变得十分困难,...
07-05