第一章 网络基础知识与网络管理概论
第一节 网络基础知识
一、计算机网络的定义
随着计算机网络的发展,关于计算机网络的定义也在不断发展和完善。目前,大多数人比较认同的计算机网络的定义为:计算机网络是将分布在不同地理位置上的具有独立和自主功能的计算机、终端及其附属设备,利用通信设备和通信线路连接起来,并配置网络软件(如网络协议、网络操作系统、网络应用软件等)以实现信息交换和资源共享的一个复合系统。图1-1为简单的计算机网络示意图。
图1-1 计算机网络示意图
从以上定义可以看出,计算机网络建立在通信网络的基础之上,以资源共享和在线通信为基本目的。利用计算机网络,我们就不必花费大量的资金为每台计算机配置打印机,因为网络使共享打印机成为可能。利用计算机网络,使用者不但可以利用多台计算机处理数据、文档、图像等各种信息,而且可以和其他人分享这些信息。如今,从政府机关、企事业单位,到一个家庭,随处都可以看到网络的存在,随处都可以享受到网络给生活带来的便利。
计算机网络是计算机技术和通信技术相结合而形成的,它们之间相互渗透、相互促进,通信网络为计算机网络提供了信息传输的信道,而计算机和计算机网络促进了通信技术的发展。
计算机网络的主要功能体现在以下几个方面。
1.实现网上资源的共享
资源共享是计算机网络最基本的功能之一。用户所在的单机系统,无论硬件资源还是软件资源总是有限的。单机用户一旦连入网络,在网络操作系统的控制下,该用户可以使用网络中其他计算机的资源来处理自己的问题,还可以使用网上的高速打印机打印报表、文档,也可以使用网络中的大容量存储器存放自己的数据信息。对于软件资源,用户则可以共享使用各种程序、数据库系统等。
2.实现数据信息的快速传递
计算机网络是现代通信技术与计算机技术结合的产物,分布在不同地域的计算机系统可以及时、快速地传递各种信息,极大地缩短了不同地点计算机之间数据传输的时间,因此,对于股票和期货交易、电子函件、网上购物、电子贸易而言,计算机网络是必不可少的传输平台。
3.提高可靠性
在一个计算机系统内,单个部件或计算机的暂时失效是可能发生的,因此希望能够通过改换资源的办法来维持系统的继续运行。建立计算机网络后,针对重要资源可以通过网络在多个地点互做备份,并使用户可以通过几条路由来访问网内的某种资源,从而有效避免单个部件、单台计算机或通信链路的故障对系统正常运行造成的影响。
4.提供负载均衡与分布式处理能力
负载均衡是计算机网络的一大特长。举个典型的例子:一个大型ICP(Internet内容提供商)为了支持更多的用户访问他的网站,在全世界多个地方放置了相同内容的www服务器,通过一定技巧使不同地域的用户看到放置在离他最近的服务器上的相同页面,这样可以实现各服务器的负荷均衡,同时也方便了用户。
分布处理是把任务分散到网络中不同的计算机上并行处理,而不是集中在一台大型计算机上,从而使整个计算机网络具有解决复杂问题的能力,大大提高了效率和降低了成本。
5.集中管理
对于那些地理位置上分散的组织或部门的事务,可以通过计算机网络来实现集中管理。如飞机与火车订票系统、银行通存通兑业务系统、证券交易系统、数据库远程检索系统、军事指挥决策系统等,由于这些业务或数据分散于不同的地区,且又需要对数据信息进行集中处理,单个计算机系统是无法解决的,此时就必须借助于网络完成集中管理和信息处理。
6.综合信息服务
网络的一大发展趋势是多维化,即在一套系统上提供集成的信息服务,包括来自政治、经济、文化、生活等各方面的信息资源,同时还提供如图像、语言、动画等多媒体信息。
二、计算机网络的分类
一个计算机网络可以从地域范围、拓扑结构、信息传输交换方式或协议、网络组建属性、用途等不同角度加以分类。
1.按地域范围分类
按计算机系统之间互连距离和网络分布地域范围的角度,分为局域网LAN、城域网MAN、广域网WAN等。
2.按拓扑结构分类
网络拓扑结构是从网络拓扑的观点来讨论和设计网络的特性,也就是讨论网络中的通信节点和通信线路或信道的连接所构成的各种网络几何构形,用以反映出网络各组成成分之间的结构关系,从而反映整个网络的整体结构外貌。实际上,考虑得更多的是通信子网的拓扑结构问题。一般来讲,通信子网可以设计成两种信道类型:点对点信道(Point-to-Point)和广播信道(Broadcast)。
1)点对点信道
其特点是一条线路连接一对节点,两台主机常常通过几个节点相连接,信息的传输采用存储转发方式。这种信道构成的通信子网常见的拓扑结构有:①星形;②树形;③回路形;④相交回路形;⑤全连接形;⑥不规则形,如图1-2所示。
图1-2 点对点信道构成的通信子网拓扑
2)广播信道
其特点是只有一条供各个节点共享的通信信道,任一节点所发出的信息报文可被所有其他节点接收。当然,这需要信道有一定的访问控制机制。由这种信道构成的通信子网的拓扑结构可有三种形式:①总线形;②环形;③卫星或无线广播,如图1-3所示。
图1-3 广播信道构成的通信子网拓扑
3.按信息传输交换方式分类
根据信息在网内传输交换方式,可分为电路交换和存储/转发交换(图1-4)。
4.按网络组建属性分类
根据网络组建属性,可以分为公用网和专用网两类。
公用网是由国家电信部门组建、经营管理、提供公众服务。任何单位、部门的计算机和终端都可以接入公用网,利用公用网提供的数据通信服务设施来开展本单位的业务。专用网往往是由某个政府部门或公司等组建经营,未经许可,其他部门和单位不得使用,在组网时可以利用公用网提供的“虚拟网”功能或自行架设的通信线路。
三、计算机网络的组成
计算机网络要完成数据处理与数据通信两大基本功能,那么,它在结构上必然也可以分成两个部分:负责数据处理的计算机与终端;负责数据通信的通信控制处理机(CCP)与通信线路。因此从计算机网络结构和系统功能来看,计算机网络可以分为资源子网和通信子网两部分,其结构如图1-5所示。
图1-5 计算机网络的组成
1.资源子网
资源子网负责全网的数据处理业务,并向网络用户提供各种网络资源和网络服务。资源子网由主计算机、终端以及相应的I/O设备、各种软件资源和数据资源构成(图1-6)。
主计算机简称主机(Host),它可以是大型机、中型机、小型机、工作站或微型机。主机是资源子网的主要组成单元,它们除了为本地用户访问网络中的其他主机与资源提供服务外,还要为网络中的远程用户共享本地资源提供服务。主机通过高速通信线路与通信子网中的通信控制处理机相连。
终端(Terminal)是用户进行网络操作时所使用的末端设备,它是用户访问网络的接口。终端可以是简单的输入/输出设备,如显示器、键盘、打印机、传真机,也可以是带有微处理器的智能终端,如可视电话、手机、数字摄像机等。智能终端除了基本的输入/输出功能外,本身还具有信息存储与处理能力。终端设备可以通过主机连入网内,也可以通过终端控制器或通信控制处理机连入网内。
图1-6 资源子网
2.通信子网
通信子网负责为资源子网提供数据传输和转发等通信处理能力,主要由通信控制处理机、通信链路及其他通信设备(如调制解调器等)组成,如图1-7所示。
图1-7 通信子网
通信控制处理机(CCP)是一种处理通信控制功能的计算机,按照其功能和用途,可以分为存储转发处理机、网络协议变换器和报文分组组装/拆卸设备等。通信控制处理机的主要功能如下。
(1)网络接口功能:实现资源子网和通信子网的接口功能。
(2)存储/转发功能:对进入网络传输的数据信息提供转发功能。
(3)网络控制功能:为数据提供路径选择、流量控制等功能。
通信链路用于为通信控制处理机之间、通信控制处理机与主机之间提供通信信道,一般来说,通信子网中的链路属于高速线路,所用的信道类型可以是有线信道或无线信道。
通信设备主要指数据通信和传输设备,包括调制解调器、集中器、多路复用器、中继器、交换机和路由器等设备。
随着计算机网络的发展,特别是微型计算机和路由设备的广泛使用,现代网络中的通信子网与资源子网内部已经发生了显著的变化。在资源子网中,大量的微型计算机通过局域网(包括校园网、企业网或ISP提供的接入网)连入广域网;在通信子网中,用于实现广域网与广域网之间互连的通信控制处理机普遍采用了被称为核心路由器的路由设备,在资源子网和通信子网的边界,局域网与广域网之间的互连也采用了路由设备,并将这些路由设备称为接入路由器或边界路由器。现代计算机网络结构如图1-8所示。
图1-8 现代计算机网络结构示意图
从系统组成的角度来看,计算机网络由计算机网络硬件和计算机网络软件两部分构成。在网络系统中,除了包括各种网络硬件设备外,还应该具备网络的软件。因为在网络上,每一个用户都可以共享系统中的各种资源,系统该如何控制和分配资源、网络中各种设备以何种规则实现彼此间的通信、网络中的各种设备该如何被管理等,都离不开网络的软件系统。因此,网络软件是实现网络功能必不可少的软环境。通常,网络软件包括以下几种。
(1)网络协议软件:实现网络协议功能,比如TCP/IP、IPX/SPX等。
(2)网络通信软件:用于实现网络中各种设备之间进行通信的软件。
(3)网络操作系统:实现系统资源共享,管理用户的应用程序对不同资源的访问。常见的网络操作系统有UNIX、Linux、Windows 98、Windows 2000、Windows 2003、Windows XP、Netware等。
(4)网络管理软件和网络应用软件:网络管理软件是用来对网络资源进行管理以及对网络进行维护的软件;而网络应用软件是为网络用户提供服务的,是网络用户在网络上解决实际问题的软件。
四、网络传输基本概念
数据通信:是指通过数据通信系统将数据以某种信号的方式从一处安全、可靠地传送到另一处。
数据编码技术:是指为了便于数据的传输和处理,将数据表示成适当的信号形式的技术。主要的数据编码技术有数字数据的模拟信号编码、数字数据的数字信号编码、模拟数据的数字信号编码。
传输速率:指每秒能传输的位数,用B/s表示。
多路复用技术:在数据传输系统中,传输介质的带宽大于传输单一信号所需的带宽,为了有效地提高传输系统的利用率,通常采用多路复用技术以同时携带多路信号来高效地使用传输介质。常用的多路复用技术如下。
频分多路复用(FDM):传输介质的可用带宽必须超过各路信号所需带宽的总和。将这几路信号中的每路信号都以不同的载波频率进行调制,而且各路的载波频率之间都有一定的间隔,使各路信号带宽不会相互重叠,这些信号可以同时在介质上传输。
时分多路复用(TDM):传输介质能到达的数据传输率必须超过各路信号所需数据传输率的总和。每个信号按照时间先后轮流交替地使用单一信道,多个数字信号可以在宏观上同时进行传输。
五、通信操作方式
一个通信系统至少由三部分组成:发送器、传输介质、接收器。发送器产生信号,经过传输介质传送给接收器,再由接收器接收这个信号,就完成了信号从一端到另一端的传送。根据信号传输方向和时间的关系,可以将通信操作方式分成以下三种。
单工通信:发送器和接收器之间只有一个传输通道,信息单方向从发送器传送到接收器;如火警,只是将警报发给消防队,而不需要从消防队接收什么消息。
半双工通信:发送器和接收器之间有两个传输通道,信息只能轮流进行双向的传送,在某一时刻只能沿单方向从发送器传送到接收器。如大楼内的保安通过对讲机传递消息,一位完成讲话,必须释放对讲机的传送键,以便另一位保安能够发出响应。
全双工通信:发送器和接收器之间有两个传输通道,信息可以同时进行双向的传送。如打电话,交谈的双方任何时候都可以说话。
六、传输同步方式
在计算机通信中,一个最基本的要求是发送端和接收端之间以某种方式保持同步,接收端必须知道它所接收的每一位数据流的开始时间和结束时间,以确保数据接受的正确性,因此,通信双方必须遵循同一通信规程,使用相同的同步方式进行数据传输。同步方式可以分成两种。
异步传输:以字符为单位的数据传输。由于每个字符都要附加1位起始位和1位停止位,以标记字符的开始和结束,因此传输效率低。
同步传输:以数据块为单位的数据传输。每个数据块的头部和尾部都要附加一个特殊的字符或比特序列,标志一个数据块的开始和结束。常用同步传输方式有两种:面向字符的同步传输、面向位流的同步传输。
七、差错控制
计算机通信系统的基本任务是高效而无差错地传送数据,但任何通信线路上都存在噪声,使发送的数据和接收的数据不一致,造成传输差错。
差错的检测和纠正也称为差错控制,对所传输的数据进行抗干扰编码,并以此来检测和校正传输中的错误。其主要方法如下。
反馈重发纠错法:接收端将不知传输得正确与否的信息作为应答反馈给发送方,发送端根据反馈信号确定是否重发。
前向纠错法:接收端发现错误后,通过数学方法进行自动校正。
八、网络传输介质
传输介质是计算机网络最基础的通信设施,其性能的好坏直接影响到网络的性能。传输介质可分为两类:有线传输介质(如双绞线、同轴电缆、光缆)和无线传输介质(如无线电波、微波、红外线、激光)。
衡量传输介质性能的主要技术指标有传输距离、传输带宽、衰减、抗干扰能力、价格、安装等。下面介绍几种有线传输介质。
双绞线(Twisted Pairware,TP):是计算机网络中最常用的传输介质,按其抗干扰能力分为屏蔽双绞线(Shielded TP,STP)、非屏蔽双绞线(Unshielded TP,UTP)。在EIA/TIA 568A标准中,UTP共分为1~5类,计算机网络常用的是3类和5类UTP,如10BASE-T以太网、100BASE-T快速以太网、IBM的令牌网。
同轴电缆:广泛用于有线电视网(CATV)和总线型以太网。常用的有75Ω和50Ω的同轴电缆。75Ω的电缆用于CATV;总线型以太网用的是50Ω的电缆,分为细同轴电缆和粗同轴电缆。
光缆:目前广泛应用于计算机主干网,可分为单模光纤和多模光纤。单模光纤具有更大的通信容量和传输距离。常用的多模光纤是62.5μm芯/125μm外壳和50μm芯/125μm外壳。
第二节 网络体系结构
计算机网络的发展,特别是Internet在全球取得的巨大成功,使得计算机网络已经成为一个海量的、多样化的复杂系统。计算机网络的实现需要解决很多复杂的技术问题,如支持多厂商和异种机互连、支持多种业务、支持多种通信介质等。现代计算机网络的设计正是按高度结构化方式分层处理以满足上述种种需求,其中网络体系结构是关键。
自IBM在20世纪70年代推出SNA系统网络体系结构以来,很多公司也纷纷建立自己的网络体系结构,这些体系结构的出现大大加快了计算机网络的发展。但由于这些体系结构的着眼点往往是各自公司内部的网络连接,没有统一的标准,因而它们之间很难互连起来。在这种情况下,国际标准化组织(International Standard Organization,ISO)制定开发了开放系统互连参考模型(Open System Interconnection Reference Mode,OSI参考模型)。利用OSI参考模型的目的是为了使两个不同的系统能够较容易地通信,而不需要改变底层的硬件或软件的逻辑。
一、OSI参考模型
OSI将整个通信分成七层,不同系统中同一层的实体之间进行通信;同一系统中,相邻层之间通过原语交换信息,下层实体向上层实体提供服务。由于每一层之间的通信由该层的协议进行管理,因此对本层的修改不会影响到其他层,方便对通讯进行修改和组合。OSI参考模型的网络体系结构具有开放性,所谓“开放”是指任何遵守该参考模型和有关标准的系统之间都能互连。
OSI参考模型是设计网络系统的分层次的框架,能保证各种类型网络技术的兼容性、互操作性,有了这个开放的模型,各网络设备厂商就可以遵照共同的标准来开发网络产品,最终实现彼此的兼容。
1.OSI七层网络结构
OSI参考模型只是定义了一种抽象的结构,而不对具体实现方法进行描述,即在OSI参考模型中的每一层,都只涉及层的功能定义,而不提供关于协议与服务的具体实现方法。OSI参考模型描述了信息或数据是如何通过网络从一台计算机的一个应用程序到达网络中另一台计算机的另一个应用程序的。当信息在一个OSI模型中逐层传送的时候,它越来越不像人类的语言,变为只有计算机才能明白的数字(0和1)。
图1-9 OSI参考模型
OSI参考模型如图1-9所示,由下至上共有七层,分别为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层,也依次称为OSI第一层、第二层、……、第七层。
OSI参考模型的核心包含三大层次。高三层由应用层、表示层和会话层组成,面向信息处理和网络应用;低三层由网络层、数据链路层和物理层组成,面向通信处理和网络通信;中间层次为传输层,为高三层的网络信息处理应用提供可靠的端到端通信服务。
实际上,当两个通信实体通过一个通信子网进行通信时,必然会经过一些中间节点,一般来说,通信子网中的节点只涉及到低三层,图1-10表示设备A将一个报文发送到设备B时所涉及到的一些层。
2.OSI各层的功能概述
1)物理层(Physical Layer)
物理层位于OSI参考模型的最底层,协调在物理媒体中传送比特流所需的各种功能。物理层涉及到接口和传输媒体的机械及电气的规约,定义了这些物理设备和接口为所发生的传输所必须完成的过程和功能,以便于不同的制造厂家能够根据公认的标准各自独立地制造设备,从而使各个厂家的产品能够互相兼容。
2)数据链路层(Data Link Layer)(www.xing528.com)
在物理层发送和接收数据的过程中,会出现一些自己不能解决的问题。例如,当两个节点同时试图在一条共享线路上同时发送数据时该如何处理;节点如何知道它所接收的数据是否正确;如果噪声改变了一个报文的目标地址,节点如何察觉它丢失了本应收到的报文。这些都是数据链路层所必须负责的工作。
图1-10 两个通信实体间的层次结构
数据链路层涉及相邻节点之间的可靠数据传输,它将物理层的比特流组织成数据链路层的协议数据单元(帧)进行传输,帧中包含地址、控制、数据及校验码等信息,通过校验、确认和反馈重传等手段,将不可靠的物理链路改造成对网络层表现为一条无差错的数据传输链路。数据链路层还要协调收发双方的数据传输速率,即进行流量控制。
3)网络层(Network Layer)
网络层负责分组从源端交付到目的端,中间可能要经过许多中间节点甚至不同的通信子网。网络层的任务就是在通信子网中选择一条合适的路径,使源计算机发送的数据能够通过所选择的路径到达目的计算机。
为了实现路径选择,网络层必须使用寻址方案来确定存在哪些网络以及设备在这些网络中所处的位置,不同网络层协议所采用的寻址方案是不同的。在确定了目标节点的位置后,网络层还要负责引导数据包正确地通过网络,找到通过网络的最优路径,即进行路由选择。如果子网中同时出现过多的分组,它们将相互阻塞通路并可能形成网络瓶颈,因此网络层还要提供拥塞控制机制以避免此类现象的出现。另外,网络层还要解决异构网络互连问题。
4)传输层(Transport Layer)
传输层负责将完整的报文进行源端到目的端的交付。但计算机往往在同一时间运行多个程序,因此,从源端到目的端的交付并不是从某个计算机交付到下一个计算机,同时还指从某个计算机上的特定进程(运行着的程序)交付到另一个计算机上的特定进程(运行着的程序)。而网络层监督单个分组的端到端的交付,独立地处理每个分组,就好像每个分组属于独立的报文那样,而不管是否真的如此。
传输层所提供的服务有可靠与不可靠之分。为了向会话层提供可靠的端到端进程之间的数据传输服务,传输层还需要使用确认、差错控制和流量控制等机制来弥补网络层服务质量的不足。
5)会话层(Conversation Layer)
就像它的名字一样,会话层的功能是建立、管理和终止应用程序进程之间的会话和数据交换,允许数据进行单工、半双工和全双工的传送,并使这些通信系统同步。
6)表示层(Expression Layer)
表示层保证一个系统应用层发出的信息能被另一个系统的应用层读出。如有必要,表示层用一种通用的数据表示格式在多种数据表示格式之间进行转换。它包括数据格式变换、数据加密与解密、数据压缩与恢复等功能。
7)应用层(Application Layer)
应用层是OSI参考模型中最靠近用户的一层,它为用户的应用程序提供网络服务,将用户接入到网络,提供对多种服务的支持,如电子邮件、文件传输、共享的数据库管理,以及其他种类的分布式信息服务。
3.OSI模型中的数据封装与传递
在OSI参考模型中,对等实体间所传输的数据被称为协议数据单元(Protocol Data Unit,PDU)。如图1-11所示,假设计算机A上的某个应用程序要发送数据给计算机B,则该应用程序把数据交给应用层,应用层在数据前面加上应用层的报头H7,形成一个应用层的数据包。报头(Header)及报尾(Tailer)是对等层之间为了实现有效的相互通信所需而添加的控制信息,添加报头、报尾的过程称为封装。封装后得到的应用层数据包被称为应用层协议数据单元(APDU)。封装完成后应用层将该APDU交给下面的表示层。
表示层接到应用层传下来的APDU后,并不关心APDU中哪一部分是用户数据,哪一部分是报头,它只在收到的APDU前面加上包含表示层控制信息的报头H6,构成表示层的协议数据单元PPDU,再交给会话层。
会话层接到表示层传下来的PPDU后,也不关心PPDU中哪一部分是用户数据,哪一部分是报头,它只在收到的PPDU前面加上包含会话层控制信息的报头H5,构成会话层的协议数据单元SPDU,再交给传输层。以此类推,这一过程重复进行直到数据抵达物理层。
数据在传输层封装后得到的协议数据单元称为分段(Segment),在网络层被封装后得到的协议数据单元被称为分组(Packet),在数据链路层被封装后得到的协议数据单元被称为帧(Frame)。而物理层在收到数据链路层传下来的帧以后,并不像其他层那样再加上本层的控制信息,而是直接将其转换为电或光信号通过传输介质送到接收端,因此在物理层没有专用的协议数据单元名称,但习惯上将这些在传输介质中传送的信号称为原始比特流(Bit Stream)。
在接收端,当数据逐层向上传递时,各种报头及报尾将被一层一层地剥去。例如,数据链路层在将数据交给网络层之前要去掉相应的帧头与帧尾,网络层则在将数据交给传输层之前要去掉分组报头,以此类推,最后数据以APDU形式到达接收方的应用层。
图1-11 OSI的数据传输
二、TCP/IP体系结构
1.TCP/IP体系结构的层次划分
网络互连是目前网络技术研究的热点之一,在诸多网络互连协议中,TCP/IP协议是一个使用非常普遍的网络互联标准协议。TCP/IP协议是美国国防部高级计划研究局(DARPA)为实现ARPANET(后来发展为Internet)而开发的,也是很多大学和研究所多年的研究及商业化的结果。目前,众多网络厂家的产品都支持TCP/IP协议,TCP/IP协议已成为一个事实上的工业标准。
其实TCP/IP是一组协议的代名词,它还包括许多别的协议,组成了TCP/IP协议簇。一般来说,TCP提供传输层服务,而IP提供网络层服务。
与OSI参考模型不同,TCP/IP体系结构将网络划分为应用层(Application Layer)、传输层(Transport Layer)、网际层(Internet Layer)和网络访问层(Network Interface Layer)四层,与OSI参考模型有一定的对应关系,如图1-12所示。
2.TCP/IP体系结构中各层的功能
1)网络访问层
在TCP/IP分层体系结构中,网络访问层是其最底层,负责接收从网际层交下来的IP数据报并将其通过底层物理网络发送出去,或者从底层物理网络上接收物理帧,抽出IP数据包,交给网际层。在网络访问层,TCP/IP并没有定义任何特定的协议,它支持所有标准的和专用的协议。在TCP/IP互联网中的网络可以是局域网、城域网或广域网。
2)网际层
网际层是TCP/IP体系结构的第二层,它实现的功能相当于OSI参考模型网络层的无连接网络服务。网际层负责将源主机的报文分组发送到目的主机,源主机与目的主机可以在一个网上,也可以在不同的网上。
图1-12 OSI和TCP/IP层次结构的对应关系
网际层的主要功能如下。
(1)处理来自传输层的分组发送请求。在收到分组发送请求之后,将分组装入IP数据报,填充报头,选择发送路径,然后将数据报发送到相应的网络输出。
(2)处理接收的数据报。在接收到其他主机发送的数据报之后,检查目的地址,如需要转发,则选择发送路径,转发出去;如目的地址为本节点地址,则除去报头,将分组送交传输层处理。
(3)处理互联的路径、流控与拥塞问题。
3)传输层
传输层位于网际层之上,它的主要功能是负责应用进程之间的端—端通信。为了标识参与通信的传输层对等实体,传输层提供了关于不同进程的标识。为了适应不同的网络应用,传输层提供了面向连接的可靠传输与无连接的不可靠传输两类服务。
4)应用层
在TCP/IP体系结构中,传输层之上是应用层,应用层为用户提供网络服务,并为这些应用提供网络支撑服务,它包括了所有的高层协议。
3.TCP/IP模型中的各层主要协议
TCP/IP是伴随Internet发展起来的网络模型,因此在这个模型中包括了一系列行之有效的网络协议,目前有一百多个。这些协议被用来将各种计算机和数据通信设备组成实际的TCP/IP计算机网络。TCP/IP模型中的一些重要协议如图1-13所示。
1)网络访问层
在网络访问层中,TCP/IP体系结构并未对网络接口层使用的协议作强硬的规定,它允许主机连入网络时使用多种现成的和流行的协议,包括各种现有的主流物理网络协议与技术,例如局域网中的以太网、令牌环网、FDDI、无线局域网和广域网中的帧中继(Frame Relay)、ISDN、ATM、X.25和SDH等。
2)网际层
网际层包括多个重要的协议,其中互联网络协议(Internet Protocol,IP)是最核心的协议,该协议规定网际层数据分组的格式;因特网控制消息协议(Internet Control Message Protocol,ICMP)用于实现网络控制和消息传递功能;地址解释协议(Address Resolution Protocol,ARP)用于提供IP地址到MAC地址的映射;反向地址解释协议(Reverse Address Resolution Protocol,RARP)则提供了MAC地址到IP地址的映射。
图1-13 TCP/IP模型中各层使用的协议
3)传输层
传输层提供了两个协议,分别是传输控制协议(Transport Control Protocol,TCP)和用户数据报协议(User Datagram Protocol,UDP)。TCP提供面向连接的可靠传输,通过确认、差错控制和流量控制等机制来保证数据传输的可靠性,经常用于有大量数据需要传送的网络应用。UDP提供无连接的不可靠传输服务,主要用于不要求数据顺序和可靠到达的网络应用。
4)应用层
应用层包括了众多的应用协议与应用支撑协议。常见的应用协议有超文本传输协议(HTTP)、简单邮件传输协议(SMTP)、简单文件传输协议(TFTP)、文件传输协议(FTP)、虚拟终端协议(Telnet);常见的应用支撑协议包括域名服务(DNS)和简单网络管理协议(SNMP)。
(1)HTTP:用来在浏览器和www服务器之间传送超文本的协议。
(2)SMTP:用于实现电子邮件传输的应用协议。
(3)FTP:用于实现文件传输服务的协议。通过FTP用户可以方便地连接到远程服务器上,可以查看、删除、移动、复制、更改远程服务器上的文件内容,并能进行上传文件和下载文件等操作。
(4)TFTP:用于提供小而简单的文件传输服务。从某个意义上来说,TFTP是对FTP的一种补充,特别是在文件较小并且只有传输需求时该协议显得更加有效率。
(5)Telnet:实现虚拟或仿真终端的服务,允许用户把自己的计算机当做远程主机上的一个终端连接到远程计算机,并使用基于文本界面的命令控制和管理远程主机上的文件及其他资源。
为了使用户更加可靠、高效地访问网络应用服务,TCP/IP模型的应用层还提供了一些专门的应用支撑协议,如域名服务系统(DNS)、简单网络管理协议(SNMP)等。
(1)DNS:用于实现域名和IP地址之间的相互转换。
(2)SNMP:由于Internet结构复杂,拥有众多的操作者,因此需要好的工具进行网络管理,以确保网络运行的可靠性和可管理性,而SNMP提供了一种监控和管理计算机网络的有效方法,它已成为计算机网络管理的事实标准。
4.TCP/IP编址
使用TCP/IP协议的互联网使用三个等级的地址:物理地址、Internet地址(即IP地址)以及端口地址。每一种地址属于TCP/IP体系结构中的特定层。
1)物理地址
物理地址也叫做链路地址,是节点的地址,由它所在的局域网或广域网定义。物理地址含在数据链路层使用的帧中。物理地址是最低一级的地址。
物理地址直接管理网络(局域网或广域网)。这种地址的长度和格式是可变的,取决于网络,例如,以太网使用写在网络接口卡(NIC)上的6字节(48位)的物理地址。
物理地址可以是单播地址(一个接收者)、多播地址(一组接收者)或广播地址(由网络中的所有系统接收)。
2)Internet地址
Internet地址对于通用的通信服务是必需的,这种通信服务与底层的物理网络无关。在互联网的环境中仅使用物理地址是不合适的,因为不同网络可以使用不同的地址格式。因此,需要一种通用的编址系统来唯一地标识每一个主机,而不管底层是使用什么样的物理网络。Internet地址就是为此目的而设计的。目前Internet的地址是32位地址,可以用来标识连接在Internet上的每一个主机。在Internet上没有两个主机具有同样的IP地址。
Internet地址也可以是单播地址(一个接收者)、多播地址(一组接收者)或广播地址(由网络中的所有系统接收)。
3)端口地址
对于从源主机将许多数据传送到目的主机来说,IP地址和物理地址是必须使用的。但是到达目的主机并非在Internet上进行数据通信的最终目的。一个系统若只能从一台计算机向另一台计算机发送数据,是很不够的。今天的计算机是多进程设备,即可以在同一时间运行多个进程。Internet通信的最终目的是使一个进程能够和另一个进程通信。例如,计算机A和计算机C使用Telnet进行通信,与此同时,计算机A还和计算机B使用FTP通信。为了能够同时发生这些事情,我们需要有一种方法对不同的进程打上标号。换言之,这些进程需要有地址。在TCP/IP体系结构中,给一个进程指派的标号叫做端口地址。TCP/IP中的端口地址是16位长。
第三节 网络管理基本概念
现在网络上有各种网络互连设备和程序处于运行状态,实现对各种硬件平台、各种软件操作系统中运行程序的统一管理成为一种迫切的需求。对这些程序的管理的主要任务就是向它们发送命令和数据,以及从它们那里取得数据和状态信息。这样,系统需要一个管理者的角色和被管理对象(Managed Object,MO)。由于一般程序都有多种对象需要被管理(对应一组不同的网络资源),因此,我们可以用一个程序作为代理(Agent),将这些被管理对象全部包装起来,实现对管理者的统一交互。
要实现对被管理程序(代理)的管理,管理者需要知道被管理程序中的信息模型(实际上就是代理包含的被管理对象的信息模型)。为了这些信息的传送,人们就必须在管理者和被管理者之间规定一个网络协议。我们知道,不同的平台对于整数、字符有不同的编码,为了让不同平台下的应用程序读懂对方的数据,还必须规定一种没有二义性、统一的数据描述语法和编码格式。所以,国际电信联盟(International Telecommunication Union,ITU)规定了信息模型定义的语法(Guidelines for Definition of Managed Objects,GDMO)、OSI应用层的协议(Common Management Information Protocol,CMIP)、标准的数据描述语言(Abstract Syntax Notation One,ASN.1)。
GDMO语法主要用来描述各种网络中需要被管理的具体和抽象的资源。一般厂商的设备都需要用这种语法将该设备的信息模型描述出来,以方便用户或者别的厂商实现对该设备的管理。CMIP的下层协议一般使用OSI的协议堆栈,主要用来实现对GDMO定义对象的各种操作,如创建、删除对象实例与属性读写等。由于硬件不同,软件平台上的数据格式(编码格式、字长、结构内部寻址边界等)不同,电信管理网(Telecommunication Management Network,TMN)的管理者和被管理者必须通过统一的数据描述语言ASN.1,保证对接收的数据作出正确的解析。
ASN.1不仅是一种数据描述语言,它还为通信的双方规定了同一种数据编码格式,例如BER(Basic Encoding Rule)。在一个管理程序和被管理程序之间,用标准的GDMO定义信息模型,用ASN.1定义交互数据,用CMIP实现交互操作,这三点实现以后,我们就可以认为设备之间遵从了TMN中功能模块间的Q3接口(Reference Point)标准。当然,ITU还规定了别的接口,如Qx、X等,这些接口可以认为是为Q3服务的。
一、网络管理
从广义上讲,任何一个系统都需要管理,只是根据系统的大小、复杂性的高低,管理在系统中的重要性有重有轻。网络是一个复杂系统,也需要进行有效的管理。追溯到19世纪末,当时的电信网络就已有相应的管理系统——电话话务员,他就是整个电话网络系统的管理员,尽管他能管理的内容非常有限。而计算机网络的管理,可以说是伴随着1969年世界上第一个计算机网络——ARPANET的产生而产生的。随后的一些网络结构,如IBM的SNA、DEC的DNA、Apple的Apple Talk等,也都有相应的管理系统。虽然网络管理很早就有,但是却一直没有得到应有的重视。这是因为当时的网络规模较小、复杂性不高,一个简单的专用网络管理系统就可满足网络正常工作的需要,因而对其研究较少。但随着网络的发展,规模增大、复杂性增加,以前的网络管理技术已不能适应网络的迅速发展。特别是以往的网络管理系统往往是厂商在自己的网络系统中开发的专用系统,很难对其他厂商的网络系统、通信设备软件等进行管理,这种状况很不适应网络异构互连的发展趋势。20世纪80年代初期Internet的出现和发展更使人们意识到了这一点。
研究开发者们迅速展开了对网络管理的研究,并提出了多种网络管理方案,包括HEMS(High Level Entity Management Systems)、SGMP(Simple Gateway Monitoring Protocol)、CMIS/CMIP(Common Management Information Service/Protocol)、Net View、Lan Manager等。到1987年底,Internet的核心管理机构因特网结构委员会(Internet Activities Board, IAB)意识到需要在众多的网络管理方案中进行选择,以便集中对网络管理进行研究。IAB要选择适合于TCP/IP网络、特别是Internet的管理方案。在1988年3月的会议上,IAB制定了Internet管理的发展策略,即采用SGMP作为短期的Internet管理解决方案,并在适当的时候转向CMIS/CMIP。其中,SGMP是在NYSERNET和SURANET上开发应用的网络管理工具,而CMIS/CMIP是20世纪80年代中期国际标准化组织(ISO)和国际电报电话咨询委员会(CCITT)联合制定的网络管理标准。同时,IAB还分别成立了相应的工作组,对这些方案进行适当的修改,使它们更适于Internet的管理。
这些工作组随后相应推出了SNMP(1988)和CMIP/CMIS(1989),但实际情况的发展并非如IAB所计划的那样。SNMP一推出就得到了广泛的应用和支持,而CMIS/CMIP的实现却由于其复杂性和实现代价太高而遇到了困难。当ISO不断修改CMIP/CMIS使之趋于成熟时,SNMP在实际应用环境中得到了检验和发展。1990年互联网工程任务组(Internet Engineering Task Force,IETF)在RFC1157中正式公布了SNMP,1993年4月又发布了SNMPv2(RFC 1441)。当ISO的网络管理标准终于趋向成熟时,SNMP已经得到了数百家厂商的支持,其中包括IBM、HP、Fujitsu、SunSoft等大公司和厂商。目前,SNMP已成为网络管理领域中事实上的工业标准,并被广泛支持和应用,大多数网络管理系统和平台都是基于SNMP的。
由于实际应用的需要,对网络管理的研究很多,并已成为涉及通信和计算机领域的全球性热门课题。IEEE通信学会下属的网络营运与管理专业委员会(Committee of Network Operation and Management,CNOM)从1988年起每两年举办一次网络营运与管理专题讨论会(Network Operation and Management Symposium,NOMS)。国际信息处理联合会(IFIP)也从1989年开始每两年举办一次综合网络管理专题讨论会。还有一个OSI网络管理论坛(OSI/NMFORUM),专门讨论网络管理的有关问题。近几年来,又有一些厂商和组织推出了自己的网络管理解决方案。比较有影响的有网络管理论坛的OMNI Point和开放软件基金会(OSF)的DME(Distributed Management Environment)。另外,各大计算机与网络通信厂商已经推出了各自的网络管理系统,如HP的OpenView、IBM的NetView系列、Fujitsu的Net-Walker及SunSoft的Sunnet Manager等。它们都已在各种实际应用环境下得到了一定的应用,并已有了相当的影响。
网络近几年来在中国得到了迅速的发展,特别是在一些大中型企业、银行金融部门、邮电行业等领域,应用更为广泛,但网络管理仅处于起步阶段。由于网络管理系统对一个网络系统的高效运行非常重要,因此在我国大力推广网络管理系统的研究与应用非常迫切。我们的观点是,在应用方面要采取引进与自己开发相结合的方式。一方面,国内对网络管理的研究与应用刚刚开始,与国外先进水平有一定的差距,完全自己开发是不太现实的;另一方面,仅仅依靠国外的产品也并不好,国外的网络管理产品并不一定适合我国的网络应用环境,而且这对我们自己的网络管理研究也不利。在研究方面,应尽可能跟踪国外的先进技术,并开展自己的研究。
二、网络管理的功能
ISO在ISO/IEC 7498-4文档中定义了网络管理的五大功能,并被广泛接受,这五大功能如下。
1.故障管理(Fault Management)
故障管理是网络管理中最基本的功能之一。用户都希望有一个可靠的计算机网络,当网络中某个组成失效时,网络管理器必须迅速查找到故障并及时排除。通常不大可能迅速隔离某个故障,因为网络故障的产生原因往往相当复杂,特别是当故障是由多个网络组成共同引起时,在此情况下,一般先将网络修复,然后再分析网络故障的原因。分析故障原因对于防止类似故障的再发生相当重要。网络故障管理包括故障检测、隔离和纠正三方面,应包括以下典型功能:维护并检查错误日志,接受错误检测报告并作出响应,跟踪、辨认错误,执行诊断测试,纠正错误。
对网络故障的检测依据对网络组成部件状态的监测。不严重的故障通常被记录在错误日志中,并不作特别处理;而严重的故障则需要通知网络管理器,网络管理器会根据有关信息进行处理,排除故障。当故障比较复杂时,网络管理器应能执行一些诊断测试来辨别故障原因。
2.计费管理(Accounting Management)
计费管理记录网络资源的使用,目的是控制和监测网络操作的费用和代价。它对一些公共商业网络尤为重要。它可以估算出用户使用网络资源可能需要的费用和代价,以及已经使用的资源。网络管理员还可规定用户可使用的最大费用,从而控制用户过多占用网络资源,这也提高了网络的效率。另外,当用户为了一个通信目的需要使用多个网络中的资源时,计费管理应可计算总计费用。
3.配置管理(Configuration Management)
配置管理初始化网络并配置网络,以使其提供网络服务。配置管理是一组用来辨别、定义、控制、监视一个通信网络的对象所必需的功能,目的是为了实现某个特定功能或使网络性能达到最优,这包括:设置开放系统中有关路由操作的参数、对被管对象和被管对象组名字的管理、初始化或关闭被管对象、根据要求收集系统当前状态的有关信息、获取系统重要变化的信息、更改系统的配置。
4.性能管理(Performance Management)
性能管理包括估价系统资源的运行状况及通信效率等系统性能,其能力包括监视和分析被管网络及其所提供服务的性能机制。性能分析的结果可能会触发某个诊断测试过程或重新配置网络以维持网络的性能。性能管理收集分析有关被管网络当前状况的数据信息,并维持和分析性能日志。性能管理的典型功能包括:收集统计信息、维护并检查系统状态日志、确定自然和人工状况下系统的性能、改变系统操作模式以进行系统性能管理的操作。
5.安全管理(Security Management)
安全性一直是网络的薄弱环节之一,而用户对网络安全的要求又相当高,因此网络安全管理非常重要。网络中主要存在以下安全问题:网络数据的私有性(保护网络数据不被侵入者非法获取)、授权(防止侵入者在网络上发送错误信息)、访问控制(控制访问控制,控制对网络资源的访问)。相应的,网络安全管理应包括对授权机制、访问控制机制、加密和加密关键字的管理,另外还要维护和检查安全日志,包括创建、删除、控制安全服务和机制,与安全相关信息的分布,与安全相关事件的报告。
三、网络管理系统
网络系统的复杂性越来越强,所以针对网络管理而开发的各类管理系统也越来重要,历史上比较重要的网络管理系统主要有以下几种。
1.NetView
IBM公司早在20世纪70年代末就推出了一系列网络管理工具,经过不断地修改和扩充,在1986年正式推出NetView。起初这个网管工具主要被用在SNA网络中,经过十多年的改进,终于演变成能够支持多种协议、能满足局域网和广域网管理需要、功能强大的网络管理工具。
2.SunNet Manager
SunSoft公司的网络管理系统SunNet Manager运行在X Windows上,用于管理TCP/IP网络,完整地支持SNMP协议。它的功能元素主要有管理应用程序、代理和委托代理程序等,管理应用程序收集和管理网络中各个结点的信息;而代理和委托代理则接受管理应用程序的检索请求,报告所管理节点的有关数据。委托代理还有两种与代理不同的特别功能:一是它使用远程过程调用(RPC)技术响应、管理应用程序的请求,因而可以处理多种协议;二是它可以管理多个站,形成局部的集中式管理,很适合站点密集型局域网应用。
管理控制台是用户管理应用交互作用的工具。这个软件运行在管理站上,可以用图形、图表或记录格式显示来自代理的数据报告,还可以把数据存储在磁盘文件中,供以后分析用。当代理发来用户定义的事件报告(例如设备启动)时,管理应用程序接收后以E-mail报文和声音警告的形式显示在管理控制台上。
管理数据库包含各种信息,例如关于节点的定义信息(名字可响应的请求)、关于代理的定义信息(属性和配置)等。所有信息存储在缓冲池中,任何时候缓冲池中保存的都是有关网络元素最新的信息集合,就像网络元素的“快照”一样。
SunNet Manager的管理应用程序接口(API)提供了各种实用程序和库函数,可供用户开发自己的管理应用程序。
3.OpenView
OpenView是HP公司的网络管理系统。由于HP公司一贯支持UNIX和TCP/IP的传统,因而OpenView原本是用来管理TCP/IP网络的,但是今天的OpenView已经演变为能管理多种网络(无论是局域网或广域网)、多种协议的功能强大的软件包。
4.基于Web的网络管理——JMAPI
基于Web的网络管理系统是目前网络管理发展的一种趋势。SunSoft公司提供了一组Java编程接口,供用户开发基于Web浏览器的网络管理应用,这一组编程接口统称JMAPI。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。