网络管理系统的层次结构如下图所示。在网络管理站中,最下层是操作系统和硬件。操作系统之上的是支持网络管理的协议簇,如OSI、TCP/IP等通信协议,以及专用于网络管理的SNMP、CMIP协议。协议栈上边是网络管理框架,这是各种网络管理应用工作的基础结构。各种网络管理框架的共同特点如下。
网络管理应用是用户根据需要开发的软件,这种软件运行在网络上,实现特定的管理目标,如故障诊断、性能优化、业务管理和安全控制等。网络管理应用的开发是目前最活跃的领域。
网络管理系统配置如图所示。每一个网络节点都包含一组与管理有关的软件,叫作网络管理实体。网络管理实体完成一以下任务。
用户通过网络管理接口与管理专用软件交互作用,监视和控制网络资源。
图
网络监控系统主要解决以下三个方面:
有用的网络监控管理信息可以分为以下3类:
对监视器有用的管理信息是由代理收集和存储的,如何把这些信息传送给监视器呢?有两种技术可用于代理与监视器之间的通讯,一种叫作轮询,另一种叫作事件报告。
在已有的各种网络监控系统中都设置了轮询和事件报告两种通信机制,但强调的重点有所不同。传统的通信管理网络主要依赖于事件报告,而SNMP强调轮询方法,OSI系统管理则采取了与这两种方法都不同的中间道路。无论是这两种还是某些专用的管理系统,都允许用户根据具体情况决定使用何种通信方式。影响通信方式选择的主要因素如下。
网络管理有五大功能领域,即故障管理、配置管理、计费管理、性能管理和安全管理,简写为FCAPS。传统上,性能、故障和计费属于网络监视功能,另外两种属于网络控制功能。
网络监视中最终要的事性能监视,然而要准确地测量出对网络管理有用的性能参数却是不容易的。
对网络管理有用的两类性能指标分别是面向服务的性能指标和面向效率的性能指标(具有较高的优先级)。下面简单介绍三个面向服务的性能指标和两个面向效率的性能指标。
A = MTBF/(MTBF+MTTR)
//平均无故障时间(MTBF)
//失效后的平均维修时间(MTTR)
响应时间
响应时间是指从用户输入请求到系统在终端上返回计算结果的时间间隔。从用户角度看,这个时间要和人们的思考时间(等于两次输入之间的最小间隔时间)配合,越是简单的工作(例如数据录入)要求响应时间越短。然而从实现角度看,响应时间越短,实现的代价越大。研究表明,系统响应时间对人的生产率影响是很大的。在交互式应用中,响应时间大于15秒,对大多数人是不能容忍的。响应时间大于4秒时,人们的短期记忆会受到影响,工作的连续性会被破坏。尤其是对数据录入来说,这种情况下击键的速度将会严重受挫,只是在输入完一个段落后,才可以有比较大的延迟(譬如4秒以上)。越是注意力高度集中的工作,要求响应时间越短。
特别对于需要记住以前的响应、根据前边的响应决定下一步的输入时,延迟时间应该小于2秒。在用鼠标器点击图形或进行键盘输入时,要求的响应时间更小,可能在0.1秒以下。这样人们会感到计算机是同步工作的,几乎没有等待时间。图1.9表示应用CAD进行集成电路设计时生产率(每小时完成的事务处理数)与响应时间的关系。可以看出,当响应时间小于1秒时事务处理的速率明显加快,这和人的短期记忆以及注意力集中的程度有关。
下图是系统响应时间与生产率的关系。
网络系统的响应时间由系统各个部分的处理延迟时间组成,分解系统响应时间的成分对于确定系统瓶颈有用。图1.10表示出系统响应时间RT由7部分组成:
入口终端延迟:指从终端把查询命令送到通信线路上的延迟。终端本身的处理时间是很短的,这个延迟主要是由从终端到网络接口设备(例如PAD设备或网桥)的通信线路引起的传输延迟。假若线路数据速率为2400b/s=300字符/s,则每个字符的时延为3.33μs。又假如平均每个命令含100个字符,则输入命令的延迟时间为0.33 s。
系统响应时间的组成。
l 入口排队时间:即网络接口设备的处理时间。接口设备要处理多个终端输入,还要处理提交给终端的输出,所以输入的命令通常要进入缓冲区排队等待。接口设备越忙,排队时间越长。
l入口服务时间:指从网络接口设备通过传输网络到达主机前端的时间,对于不同的网络,这个传输时间的差别是很大的。如果是公共交换网,这个时延是无法控制的;如果是专用网、租用专线或用户可配置的设备,则这个时延还可以进一步分解,以便按照需要规划和控制网络。
· 入口服务时间:指从网络接口设备通过传输网络到达主机前端的时间,对于不同的网络,这个传输时间的差别是很大的。如果是公共交换网,这个时延是无法控制的;如果是专用网、租用专线或用户可配置的设备,则这个时延还可以进一步分解,以便按照需要规划和控制网络。
· CPU处理延迟:前端处理机、主机和磁盘等设备处理用户命令、做出回答需要的时间。这个时间通常是管理人员无法控制的。
·出口排队时间:在前端处理机端口等待发送到网络上去的排队时间。这个时间与入口排队时间类似,其长短取决于前端处理机繁忙的程度。
·出口服务时间:通过网络把响应报文传送到网络接口设备的处理时间。
·出口终端延迟:终端接收响应报文的时间,主要是由通信延迟引起的。
响应时间是比较容易测量的,是网络管理中重要的管理信息。
正确性
这是指网络传输的正确性。由于网络中有内置的纠错机制,所以通常用户不必考虑数据传输是否正确。但是监视传输误码率可以发现瞬时的线路故障,以及是否存在噪声源和通信干扰,以便及时采取维护措施。
吞吐率
吞吐率是面向效率的性能指标,具体表现为一段时间内完成的数据处理的数量,或接受用户会话的数量,或处理的呼叫的数量等。跟踪这些指标可以为提高网络传输效率提供依椐。
网络响应时间与负载的关系—
利用率
利用率是指网络资源利用的百分率,它也是面向效率的指标。这个参数与网络负载有关,当负载增加时,资源利用率增大,因而分组排队时间和网络响应时间变长,甚至会引起吞吐率降低。当相对负载(负载/容量)增加到一定程度时,响应时间迅速增长,从而引发传输瓶颈和网络拥挤。图1.11表示响应时间随相对负载成指数上升的情况。特别值得注意的是实际情况往往与理论计算结果相左,造成失去控制的通信阻塞,这是应该设法避免的,所以需要更精致的分析技术。
我们介绍一种简单而有效的分析方法,可以正确地评价网络资源的利用情况。基本的思想是观察链路的实际通信量(负载),并且与规划的链路容量(数据速率)比较,从而发现哪些链路使用过度,而哪些链路利用不足。分析方法使用了会计工作中常用的成本分析技术,即计算实际的费用占计划成本的比例,从而发现实际情况与理想情况的偏差。对于网络分析来说,就是计算出各个链路的负载占网络总负载的百分率(相对负载),以及各个链路的容量占网络总容量的百分率(相对容量),最后得到相对负载与相对容量的比值。这个比值反映了网络资源的相对利用率。
网络利用率分析-
假定有图1.12(a)的简单网络,由5段链路组成。表1.1中列出了各段链路的负载和各段链路的容量,并且计算出了各段链路的负载百分率和容量百分率,图1.12(b)是对应的图形表示。可以看出,网络规划的容量(400 Kb/s)比实际的通信量(200 Kb/s)大得多,而且没有一条链路的负载大于它的容量。但是各个链路的相对利用率(相对负载/相对容量)不同,有的链路使用得太过分(例如链路3,25/15=1.67),而有的链路利用不足(例如链路5,25/45=0.55)。这个差别是有用的管理信息,它可以指导我们如何调整各段链路的容量,获得更合理的负载分布和链路利用率,从而减少资源浪费,提高性能价格比。
网络负载和容量分析
收集到的性能参数组织成性能测试报告,以图形或表格的形式呈现给网络管理员。对于局域网来说,性能测试报告应包括以下内容。
● 主机对通信矩阵:一对源主机和目标主机之间传送的总分组数、数据分组数、数据字节数以及它们所占的百分比;
● 主机组通信矩阵:一组主机之间通信量的统计,内容与上一条类似;
● 分组类型直方图:各种类型的原始分组(例如广播分组、组播分组等)的统计信息,用直方图表示;
● 数据分组长度直方图:不同长度(字节数)的数据分组的统计;
● 吞吐率-利用率分布:各个网络结点发送/接收的总字节数和数据字节数的统计;
● 分组到达时间直方图:不同时间到达的分组数的统计;
● 信道获取时间直方图:在网络接口单元(NIU)排队等待发送、经过不同延迟时间的分组数的统计;
● 通信延迟直方图:从发出原始分组到分组到达目标的延迟时间的统计;
● 冲突计数直方图:经受不同冲突次数的分组数的统计;
● 传输计数直方图:经过不同试发送次数的分组数的统计。
1.4.2 故障监视
故障监视就是要尽快地发现故障,找出故障原因,以便及时采取补救措施。在复杂的系统中,发现和诊断故障是不容易的。首先是有些故障很难观察到,例如分布处理中出现的死锁就很难发现。其次是有些故障现象不足以表明故障原因,例如发现远程结点没有响应,但是否为低层通信协议失效不得而知。更有些故障现象具有不确定性和不一致性,引起故障的原因很多,使得故障定位复杂化。例如终端死机、线路中断、网络拥塞或主机故障都会引起同样的故障现象,到底问题出在哪儿,需要复杂的故障定位手段。故障管理可分为以下3个功能模块。
1) 故障检测和报警功能
故障监视代理要随时记录系统出错的情况和可能引起故障的事件,并把这些信息存储在运行日志数据库中。在采用轮询通信的系统中,管理应用程序定期访问运行日志记录,以便发现故障;为了及时检测重要的故障问题,代理也可以主动向有关管理站发送出错事件报告。另外,对出错报告的数量、频率要进行适当的控制,以免加重网络负载。
2) 故障预测功能
对各种可以引起故障的参数建立门限值,并随时监视参数值变化,一旦超过门限值,就发送警报。例如由于出错产生的分组碎片数超过一定值时发出警报,表示线路通信恶化,出错率上升。
3) 故障诊断和定位功能
对设备和通信线路进行测试,找出故障原因和故障地点。例如可以进行下列测试:
● 连接测试;
● 数据完整性测试;
● 协议完整性测试;
● 数据饱和测试;
● 连接饱和测试;
● 环路测试;
● 功能测试;
● 诊断测试。
1.4.3 计费监视
计费监视主要是跟踪和控制用户对网络资源的使用,并把有关信息存储在运行日志数据库中,为收费提供依据。不同的系统,对计费功能要求的详尽程度也不一样。在有些提供公共服务的网络中,要求收集的计费信息很详细、很准确,例如要求对每一种网络资源、每一分钟的使用、传送的每一个字节数都要计费,或者要求把费用分摊给每一个账号、每一个项目甚至每一个用户。而有的内部网络就不一定要求这么详细,只要求把总的运行费用按一定比例分配给各个部门就可以了。需要计费的网络资源包括:
● 通信设施:LAN、WAN、租用线路或PBX的使用时间;
● 计算机硬件:工作站和服务器机时数;
● 软件系统:下载的应用软件和实用程序的费用;
● 服务:包括商业通信服务和信息提供服务(发送/接收的字节数)。
计费数据组成计费日志,其记录格式应包括下列信息:
● 用户标识;
● 连接目标的标识符;
● 传送的分组数/字节数;
● 安全级别;
● 时间戳;
● 指示网络出错情况的状态码;
● 使用的网络资源。
1.5.1 配置控制
配置管理是指初始化、维护和关闭网络设备或子系统。被管理的网络资源包括物理设备(例如服务器、路由器)和底层的逻辑对象(例如传输层定时器)。配置管理功能可以设置网络参数的初始值或默认值,使网络设备初始化时自动形成预定的互联关系。当网络运行时,配置管理监视设备的工作状态,并根据用户的配置命令或其他管理功能的请求改变网络配置参数。例如,若性能管理检测到响应时间延长,并分析出性能降级的原因是由于负载失衡,则配置管理将通过重新配置(例如改变路由表)改善系统响应时间。又例如故障管理检测到一个故障,并确定了故障点,则配置管理可以改变配置参数,把故障点隔离,恢复网络的正常工作。配置管理应包含下列功能模块:
● 定义配置信息;
● 设置和修改设备属性;
● 定义和修改网络元素间的互联关系;
● 启动和终止网络运行;
● 发行软件;
● 检查参数值和互联关系;
● 报告配置现状。
1. 定义配置信息
配置信息描述网络资源的特征和属性,这些信息对其他管理功能是有用的。网络资源包括物理资源(例如主机、路由器、网桥、通信链路和Modem等)和逻辑资源(例如定时器、计数器和虚电路等)。设备的属性包括名称、标识符、地址、状态、操作特点和软件版本。配置信息可以有多种组织方式。简单的配置信息组织成由标量组成的表,每一个标量值表示一种属性值,SNMP采用这种方法。在OSI系统管理中,管理信息定义为面向对象的数据库。对象的值表示被管理设备的特性,对象的行为(例如通知)代表了管理操作,对象之间的包含关系和继承关系则规范了它们之间的互相作用。另外,还有一些系统用关系数据库表示管理信息。
管理信息存储在与被管理设备最接近的代理或委托代理中,管理站通过轮询或事件报告访问这些信息。网络管理员可以在管理站提供的用户界面上说明管理信息值的范围和类型,用以设置被管理资源的属性。网络控制功能还允许定义新的管理对象,在指定的代理中生成需要的管理对象或数据元素。产生新数据的过程可以是联机的、动态的,或是脱机的、静态的。
2. 设置和修改属性
配置管理允许管理站远程设置和修改代理中的管理信息值,但是修改操作要受到两种限制:
● 只有授权的管理站才可以施行修改操作,这是网络安全所要求的;
● 有些属性值反映了硬件配置的实际情况,是不可改变的,例如主机CPU类型、路由器的端口数等。
对配置信息的修改可以分为以下3种类型:
● 只修改数据库:管理站向代理发送修改命令,代理修改配置数据库中的一个或多个数据值。如果修改操作成功,则向管理站返回肯定应答,否则返回否定应答,这个交互过程中不发生其它作用。例如管理站通过修改命令改变网络设备的负责人(姓名、地址、电话等)。
● 修改数据库,也改变设备的状态:除了修改数据值之外,还改变了设备的运行状态。例如把路由器端口的状态值置为“disabled”,则所有网络通信不再访问该端口。
● 修改数据库,同时引起设备的动作:由于现行网络管理标准中没有直接指挥设备动作的命令,因而通常用管理数据库中的变量值控制被管理设备的动作。当这些变量被设置成不同的值时,设备随即执行对应的操作过程。例如路由器数据库中有一个初始化参数,可取值为TRUE或FALSE。若设置此参数值为TRUE,则路由器开始初始化,过程结束时重置该参数为FALSE。
3. 定义和修改关系
关系是指网络资源之间的联系、连接以及网络资源之间相互依存的条件,例如拓扑结构、物理连接、逻辑连接、继承层次和管理域等。继承层次是管理对象之间的继承关系,而管理域是被管理资源的集合,这些网络资源具有共同的管理属性或者受同一管理站控制。
配置管理应该提供联机修改关系的操作,即用户在不关闭网络的情况下可以增加、删除或修改网络资源之间的关系。例如在LAN中,结点之间逻辑链路控制子层(LLC)的连接可以由管理站来修改。一种LLC连接叫做交换连接,即结点的LLC实体接受上层软件的请求或者响应终端用户的命令与其他结点建立的SAP之间的连接;另外管理站还可以建立固定(或永久)连接,管理软件也可以按照管理命令的要求释放已建立的固定连接或交换连接,或者为一个已有的连接指定备份连接,以便在主连接失效时替换它。
4. 启动和终止网络运行
配置管理给用户提供启动/关闭网络和子网的操作。启动操作包括验证所有可设置的资源属性是否已正确设置。如果有设置不当的资源,则要通知用户;如果所有的设置都正确无误,则向用户发回肯定应答。同时,关闭操作完成之前应允许用户检索设备的统计信息或状态信息。
5. 发行软件
配置管理还提供向端系统(主机、服务器和工作站等)和中间系统(网桥、路由器和应用网关等)发行软件的功能,即给系统装载指定的软件、更新软件版本和配置软件参数等功能。除了装载可执行的软件之外,这个功能还包括下载驱动设备工作的数据表,例如路由器和网桥中使用的路由表。如果出于计费、安全或性能管理的需要,则路由决策中的某些特殊情况不能仅根据数学计算的结果处理,可能需要人工干预,因此还应提供人工修改路由表的用户接口。
1.5.2 安全控制
1. 安全威胁的类型
为了理解对计算机网络的安全威胁,我们首先定义安全需求。计算机和网络需要以下3方面的安全性。
● 保密性(Secrecy):计算机网络中的信息只能由授予访问权限的用户读取(包括显示、打印等,也包含暴露“信息存在”这样的事实);
● 数据完整性(Integrity):计算机网络中的信息资源只能被授予权限的用户修改;
● 可用性(Availability):具有访问权限的用户在需要时可以利用计算机网络资源。
所谓对计算机网络的安全威胁,就是破坏了这3方面的安全性要求。下面从计算机网络提供信息的途径来分析安全威胁的类型。通常从源到目标的信息流动的各个阶段都可能受到威胁,图1.13画出了信息流被危害的各种情况。
图1.13 对网络通信的安全威胁
2. 对计算机网络的安全威胁
图1.14画出了对计算机网络的各种安全威胁,分别解释如下。
● 对硬件的威胁:主要是破坏系统硬件的可用性,例如有意或无意地损坏甚至盗窃网络器材等。小型的PC、工作站和局域网的广泛使用增加了这种威胁的可能性。
● 对软件的威胁:操作系统、实用程序和应用软件可能被改变、损坏甚至被恶意删除,从而不能工作,失去可用性。特别是有些修改使得程序看起来似乎可用,但其实是在进行其他工作,这正是各种计算机病毒的特长。另外,软件的非法拷贝是一个至今没有解决的问题,因此软件本身也不安全。
图1.14 对计算机网络资源的安全威胁
● 对数据的威胁:数据可能被非法访问,破坏了保密性;数据可能被恶意修改或者假冒,破坏了完整性;数据文件可能被恶意删除,从而破坏了可用性。甚至在无法直接读取数据文件的情况下(例如文件被加密),还可以通过分析文件大小或者文件目录中的有关信息推测出数据的特点,这种分析技术是一种更隐蔽的计算机犯罪手段,被网络黑客们乐而为之。
● 对网络通信的威胁:可分为被动威胁和主动威胁两类,如图1.15所示。被动威胁并不改变数据流,而是采用各种手段窃取通信线路上传输的信息,从而破坏了保密性。例如偷听或监视网络通信,从而获知电话谈话、电子邮件和文件的内容;还可以通过分析网络通信的特点(通信的频率、报文的长度等)猜测出传输的信息。由于被动威胁不改变信息的内容,因而是很难检测的,数据加密是防止这种威胁的主要手段。与其相反,主动威胁则可能改变信息流或者生成伪造的信息流,从而破坏了数据的完整性和可用性。主动攻击者不必知道信息的内容,但可以改变信息流的方向,或者使传输的信息被延迟、重放、重新排序,可能产生不同的效果,这些都是对网络通信的窜改。
主动攻击还可能影响网络的正常使用,例如改变信息流传输的目标,关闭或破坏通信设施,或者以垃圾报文阻塞信道,这种手段叫做拒绝服务。假冒(或伪造)者则可能利用前两种攻击手段之一,冒充合法用户以博取非法利益。例如攻击者捕获了合法用户的认证报文,不必知道认证码的内容,只需重放认证报文就可以冒充合法用户使用计算机资源。要完全防止主动攻击是不可能的,只能及时地检测它,在它还没有造成危害或没有造成大的危害时挫败它。
图1.15 计算机网络的被动威胁和主动威胁
3. 对网络管理的安全威胁
由于网络管理是分布在网络上的应用程序和数据库的集合,因而以上讨论的各种威胁都可能影响网络管理系统,造成管理系统失灵,甚至发出错误的管理指令,破坏计算机网络的正常运行。对于网络管理,特别有以下3方面的安全威胁值得提出。
● 伪装的用户:没有得到授权的一般用户企图访问网络管理应用和管理信息;
● 假冒的管理程序:无关的计算机系统可能伪装成网络管理站实施管理功能;
● 侵入管理站和代理间的信息交换过程:网络入侵者通过观察网络活动窃取了敏感的管理信息,更严重的危害是可能窜改管理信息,或中断管理站和代理之间的通信。
1) 安全信息维护
网络管理中的安全管理是指保护管理站和代理之间信息交换的安全。安全管理使用的操作与其他管理使用的操作相同,差别在于使用的管理信息的特点不同。有关安全的管理对象包括密钥、认证信息、访问权限信息以及有关安全服务和安全机制的操作参数信息等。安全管理要跟踪进行中的网络活动和试图发动的网络活动,以便检测未遂的或成功的攻击,并挫败这些攻击,恢复网络的正常运行。细分一下,对于安全信息的维护可以列出以下功能:
● 记录系统中出现的各类事件(例如用户登录、退出系统,文件拷贝等);
● 追踪安全审计试验,自动记录有关安全的重要事件,例如非法用户持续试验不同口令字企图登录等;
● 报告和接收侵犯安全的警示信号,在怀疑出现威胁安全的活动时采取防范措施,例如封锁被入侵的用户账号或强行停止恶意程序的执行等;
● 经常维护和检查安全记录,进行安全风险分析,编制安全评价报告;
● 备份和保护敏感的文件;
● 研究每个正常用户的活动形象,预先设定敏感资源的使用形象,以便检测授权用户的异常活动和对敏感资源的滥用行为。
2) 资源访问控制
一种重要的安全服务就是访问控制服务,这包括认证服务和授权服务,以及对敏感资源访问授权的决策过程。访问控制服务的目的是保护各种网络资源,这些资源中与网络管理有关的是:
● 安全编码;
● 源路由和路由记录信息;
● 路由表;
● 目录表;
● 报警门限;
● 计费信息。
3) 加密过程控制
安全管理能够在必要时对管理站和代理之间交换的报文进行加密。安全管理也能够使用其他网络实体的加密方法。此外,加密过程控制也可以改变加密算法,具有密钥分配能力。
TCP/IP网络管理最初使用的是1987年11月提出的简单网关监控协议(Simple Gateway Monitoring Protocol,SGMP),在此基础上改进成简单网络管理协议第一版(Simple Network Management Protocol,SNMPv1),陆续公布在1990和1991年的几个RFC(Request For Comments)文件中,即RFC 1155(SMI)、RFC 1157(SNMP)、RFC 1212(MIB定义)和RFC 1213(MIB-2规范)。由于其简单性和易于实现,SNMPv1得到了许多制造商的支持和广泛应用,几年以后在第一版的基础上改进其功能和安全性,又产生了SNMPv2(RFC 1902~1908,1996)和SNMPv3(RFC 2570~2575,1999)。
在同一时期,用于监控局域网通信的标准——远程网络监控RMON(Remote Monitoring)也出现了,这就是RMON-1(1991)和RMON-2(1995)。这一组标准定义了监视网络通信的管理信息库,是SNMP管理信息库的扩充,与SNMP协议配合可以提供更有效的管理性能,也得到了广泛应用。
另外,IEEE定义了局域网的管理标准,即IEEE 802.1b LAN/MAN管理。这个标准用于管理物理层和数据链路层的OSI设备,因而叫做CMOL(CMIP over LLC)。
为了适应电信网络的管理需要,ITU-T在1989年发布了电信管理网络(Telecommunications Management Network,TMN)的M.30建议(蓝皮书),定义了电信管理网的总体结构、管理功能和管理业务等标准,用于支持电信网和电信业务的规划、配置、安装、操作及组织工作。