1、第10章 计算机网络管理,本章提纲,10.1网管的功能和标准 10.1.1对网络管理的理解 10.1.2网络管理重要概念 10.1.3网络管理标准 10.2网管模型 10.2.1ISO网管模型 10.2.2Internet网管模型 10.3网管协议 10.3.1SNMP 10.3.2CMIS/CMIP 10.3.3CMOT 10.3.4LMMP,续,10.4网管系统 10.4.1 HP的OpenView 10.4.2IBM的NetView 10.4.3 SUN的Sun Net Manager 10.4.4Cabletron的SPECTRUM 10.5网络日常管理和维护 10.5.1 VLAN管
2、理 10.5.2 WAN接入管理 10.5.3网络故障诊断和排除 10.5.4 网络管理工具,本章提要,网络建成之后交付给用户使用,在使用中网络能否发挥其功能,除了先期的规划设计、设备系统选型以及施工质量水平等原因以外,网络管理是另一个非常重要的因素。缺乏管理或者管理不完善的网络系统是不能满足用户需求,是不能产生效益的。 随着计算机网络的应用,广大用户也意识到网络管理的重要性。但是,很多用户不能深入理解网络管理的原理和工具,尽管他们很熟悉网络技术和网络系统的使用。 本章内容旨在揭开网络管理的“神秘面纱”,向读者简要介绍网络管理的功能、模型、协议和网管系统。,10.1网管的功能和标准,由于TCP
3、/IP协议的开放性,1990年代以来逐渐得到网络制造商的支持,获得了广泛的应用,已经成为事实上的互联网标准。在TCP/IP网络中有一个简单的管理工具Ping程序。用Ping 发送探测报文可以确定通信目标的连通性及传输时延。如果网络规模不是很大,互连的设备不是很多,这种方法还是可行的。但是当网络的互连规模很大时这种方法就不适用了。这是因为一方面Ping返回的信息很少,无法获取被管理设备的详细情况;另一方面用Ping程序对很多设备逐个测试检查,工作效率很低。在这种情况下出现了用于TCP/IP网络管理的标准简单网络管理协议SNMP。这个标准适用于任何支持TCP/IP的网络,无论是哪个厂商生产的设备,
4、或是运行哪种操作系统的网络。,与此同时,国际标准化组织也推出了OSI系统管理标准CMIS/CMIP。从长远看,OSI系统管理更适合结构复杂规模庞大的异构型网络,但由于其技术开发缓慢而尚没有进入实用阶段,也许它代表了未来网络管理发展的方向。网络管理标准的成熟,刺激了制造商的开发活动。近年来市场上陆续出现了符合国际标准的商用网络管理系统。这些系统有的是主机厂家开发的通用网络管理系统开发软件(例如IBM NetView, HP OpenView),有的则是网络产品制造商推出的与硬件结合的网管工具(例如Cisco Works2000, Cabletron Spectrum)。这些产品都可以称之为网络管
5、理平台,在此基础上开发适合用户网络环境的网络管理应用软件,才能实施有效的网络管理。,有了统一的网络管理标准和适用的网络管理工具,对网络实施有效的管理,就可以减少停机时间,改进响应时间,提高设备的利用率,同时还可以减少运行费用。管理工具可以很快地发现并消灭网络通信瓶颈,提高运行效率。为及时采用新技术,我们也需要有方便适用的网络配置工具,以便及时修改和优化网络的配置,使网络更容易使用,可以提供多种多样的网络业务。在商业活动日益依赖于互联网的情况下,人们还要求网络工作得更安全,对网上传输的信息要保密,对网络资源的访问要有严格的控制,以及防止计算机病毒和非法入侵者的破坏等。这些需求必将进一步促进网络管
6、理工具的研究和开发。,10.1.1对网络管理的理解,当前还没有对网络管理的精确定义。对于公共交换网,网络管理往往指实时网络监控,以便在不利的条件下(如过载、故障)使网络的性能仍能达到最佳。 狭义的网络管理仅仅是指网络的通信平台管理,而广义的网络管理是指网络的系统管理,例如管理Windows 2000网络的用户、资源、服务等。本章讨论的是狭义的网络管理。 通常,网络管理(Network Management)的功能可概括为OAM&P,即网络的运行(Operation)、处理(Administration)、维护(Maintenance)、服务提供(Provisioning)等所需要的各种活动。,
7、OAM&P的含义,运行:网络的计费和通信量管理。 处理:包括从收集和分析设备利用率、通信量以及网络资源使用率,直到做出相应的控制,以优化网络资源的使用率等各个方面。 维护:报警和性能监控、测试和故障修复等。 服务提供:向用户提供新业务和通过增加网络设备和设施来提高网络性能。,10.1.2网络管理重要概念,网络元素(network element):网络中具体的通信设备或逻辑实体,又称网元。 对象:通信和信息处理范畴里可标识的且拥有一定信息特征的资源。 被管对象(managed object):被管对象指可使用管理协议进行管理和控制的网络资源的抽象表示。例如,一个层的实体或一个实体。,管理信息库
8、(Management Information Base,MIB),MIB是网络管理系统中的重要构件。它由一个系统内的许多被管对象及其属性组成。MIB象是一个数据库,它提供有关被管理网络元素的信息,而这些信息由管理进程和各个代理进程共享。MIB由管理进程和各个代理进程共同使用。,综合网络管理(Integrated Network Management,INM),用统一的方法在一个异构网络中管理多厂商生产的计算机硬件和软件资源,也称为一体化网络原理。,代理进程和管理进程,在被管系统中直接管理被管对象的是代理进程(agent),简称代理。它所代理的进程是管理进程。管理进程利用通信手段通过代理来管理
9、各个被管对象。管理进程与代理进程的通信关系一般采用客户/服务器模式。客户(管理进程)发出请求,服务器(代理进程)做出应答。 上述概念在网络中的分布如图10-1所示。,图10-1网络管理主流模式,10.1.3网络管理标准,ISO9595,它定义了公共管理信息服务(Common Management Information Services,CMIS)。 ISO9596,它说明了公共管理信息协议(Common Management Information Protocol,CMIP)。,系统管理的五个功能域,故障管理(Fault Management) 配置管理(Configuration Man
10、agement) 计费管理(Accounting Management) 性能管理(Performance Management) 安全管理(Security Management),故障管理(Fault Management),对网络中被管对象的检测、定位和排除。故障并非一般的差错,而是指网络已经无法正常运行,或出现了过多的差错。网络中的每一个设备都必须有一个预先设定好的故障门限(此门限能够调整),以便确定是否出了故障。,配置管理(Configuration Management),用来定义、识别、初识化、监控网络中的被管对象,改变被管对象的操作特征,报告被管对象的状态变化。,计费管理(Ac
11、counting Management),记录用户使用网络资源的情况并核收费用,同时也统计网络的利用率。,性能管理(Performance Management),以网络性能为准则,保证在使用最少网络资源和具有最小时延的前提下,网络能提供可靠、连续的通信能力。,安全管理(Security Management),保证网络不被非法使用。,说明,这五个管理功能域简称为FCAPS,基本上覆盖了整个网络管理的范围。其中前2个功能域是最基本的。前面讲到的OAM& P或OAM一般用来描述传统电信网的网络管理功能。 实际上OAM和FCAPS的内容差不多,只是考虑问题的角度不同而已。它们之间存在一定的对应关系
12、,如图10-2所示。,图10-2 OAM与FCAPS之间的关系,FCAPS的功能域之间相关的联系,如图10-3所示。,图10-3 FCAPS功能域之间的联系,10.2网管模型,网管模型是指网管系统的组成结构模型。网管模型解决管理进程和代理进程等管理实体在网络元素中如何分布的问题。网管模型决定了网管系统的结构。 当前,网管模型有2个有代表性的模型,即ISO模型和Internet模型。,10.2.1 ISO网管模型,ISO的网管模型由管理系统和被管系统组成(如图10-4所示)。其中管理进程和管理信息数据库MIB构成管理系统,代理进程和被管对象构成被管系统。管理进程和代理进程之间通过网络管理协议交换
13、管理命令和搜集管理信息。,图10-4ISO网管模型,10.2.2Internet网管模型,Internet的网管模型由网控中心和被管网元组成(如图10-5所示)。其中网控中心的主体是网络管理进程,管理代理和被管对象构成被管网元。管理代理就是代理进程。同样地,管理进程和管理代理之间通过网络管理协议交换管理命令和搜集管理信息。,图10-5 Internet 网管模型,说明,从两个模型的示意图来看,ISO和Internet网管系统的组成似乎差异很大。实际上,它们的结构在本质上是基本一致的。,10.2.3 网络管理系统体系结构,1网络管理系统的层次结构,网络管理系统组织成如图10.6所示的层次结构。在
14、网络管理站中最下层是操作系统和硬件。操作系统之上是支持网络管理的协议簇,例如OSI,TCP/IP等通信协议,以及专用于网络管理的SNMP、CMIP协议等。协议栈上面是网络管理框架(Network Management Framework),这是各种网络管理应用工作的基础结构。各种网络管理框架的共同特点如下: 管理功能分为管理站(Manager)和代理(Agent)两部分;,l 为存储管理信息提供数据库支持,例如关系数据库或面向对象的数据库;l 提供用户接口和用户视图(View)功能,例如管理信息浏览器;l 提供基本的管理操作,例如获取管理信息,配置设备参数等操作过程;网络管理应用是用户根据需要
15、开发的软件,这种软件运行在具体的网络上,实现特定的管理目标,例如故障诊断和性能优化,或者业务管理和安全控制等。网络管理应用的开发是目前最活跃的领域。,图10.6把被管理资源画在单独的框中,表明被管理资源可能与管理站处于不同的系统中。网络管理涉及到监视和控制网络中的各种硬件,固件和软件元素,例如网卡、集线器、中继器、处理机、外围设备、通信软件、应用软件和实现网络互连的软件等。有关资源的管理信息由代理进程控制,代理进程通过网络管理协议与管理站对话。,图10.6 网络管理系统的层次结构,2网络管理系统的配置 网络管理系统的配置如图10.7所示。每一个网络结点都包含一组与管理有关的软件,叫做网络管理实
16、体(Network Management Entity,NME)。网络管理实体完成下面的任务:l 收集有关网络通信的统计信息:l 对本地设备进行测试,记录设备状态信息: l 在本地存储有关信息:l 响应网络控制中心的请求,发送管理信息:l 根据网络控制中心的指令,设置或改变设备参数:,图10.7 网络管理系统配置,网络中至少有一个结点(主机或路由器)担当管理站的角色(Manager),除过NME之外,管理站中还有一组软件,叫做网络管理应用(Network Management Application,NMA)。NMA提供用户接口,根据用户的命令显示管理信息,通过网络向NME发出请求或指令,以便
17、获取有关设备的管理信息,或者改变设备配置。网络中的其他结点在NME的控制下与管理站通信,交换管理信息。这些结点中的NME模块叫做代理模块,网络中任何被管理的设备(主机、网桥、路由器或集线器等)都必需实现代理模块。所有代理在管理站监视和控制下协同工作,实现集成的网络管理。这种集中式网络管理策略的好处是管理人员可以有效地控制整个网络资源,根据需要平衡网络负载,优化网络性能。,然而对于大型网络,集中式的管理往往显得力不从心,正在让位于分布式的管理策略。这种向分布式管理演化的趋势与集中式计算模型由向分布式计算模型演化的总趋势是一致的。图10.8提出一种可能的分布式网络管理配置方案。,图10.8分布式网
18、络管理系统,图10.6和图10.7的系统要求每个被管理的设备都能运行代理程序,并且所有管理站和代理都支持相同的管理协议。这种要求有时是无法实现的。例如有的老设备可能不支持当前的网络管理标准;小的系统可能无法完整实现NME的全部功能;甚至还有一些设备(例如Modem和多路器等)根本不能运行附加的软件,我们把这些设备叫做非标准设备。在这种情况下,通常的处理方法是用一个叫做委托代理的设备(Proxy)来管理一个或多个非标准设备。委托代理和非标准设备之间运行制造商专用的协议,而委托代理和管理站之间运行标准的网络管理协议。这样,管理站就可以用标准的方式通过委托代理得到非标准设备的信息,委托代理起到了协议
19、转换的作用,如图10.9所示。,图10.9 委托代理,10.2.4 网络管理软件的结构,这里说的网络管理软件包括用户接口软件、管理专用软件和管理支持软件,如图10.9,大约相当于图10.6中管理站的上三层。用户通过网络管理接口与管理专用软件交互作用,监视和控制网络资源。接口软件不但存在于管理站上,而且也可能出现在代理系统中,以便对网络资源实施本地配置、测试和排错。有效的网络管理系统需要统一的用户接口,而不论主机和设备出自何方厂家,运行什么操作系统。这样才可以方便地对异构型网络进行监控。接口软件还要有一定的信息处理能力,对大量的管理信息要进行过滤、统计、汇总和化简,以免传递的信息量太大而阻塞网络
20、通道。最后,理想的用户接口应该是图形用户接口,而非命令行或表格。,图10.9 网络管理软件的结构,管理支持软件包括MIB访问模块和通信协议栈。代理中的管理信息库(Management Information Base,MIB)包含反映设备配置和设备行为的信息,以及控制设备操作的参数。管理站的MIB中除过保留本地结点专用的管理信息外,还保存着管理站控制的所有代理的有关信息。MIB访问模块具有基本的文件管理功能,使得管理站或代理可以访问MIB,同时该模块还能把本地的MIB格式转换为适于网络管理系统传送的标准格式。通信协议栈支持结点之间的通信。由于网络管理协议位于应用层,原则上任何通信体系结构都能胜
21、任,虽然具体的实现可能有特殊的通信要求。,10.3网管协议,网管协议用于在管理进程和代理进程之间传送管理信息。 目前,常用的网管协议有2个,一个是Internet制定的简单网络管理协议(Simple Network Management Protocol,SNMP),别一个是ISO的CMIP。,发展背景,SNMP发布于1988年,很快就得到了广泛的支持,成为了事实上的计算机网络管理标准。 CMIP的提出是为了替代SNMP,因为SNMP的功能不够强大。但是由于CMIP过于复杂,所需的系统资源约是SNMP的10倍,有悖于网络管理的其本原则,即若要给某个对象添加软件或硬件,则必须对原有对象的影响尽量
22、小。因此,CMIP的应用不如SNMP广泛。 Internet也有替代SNMP的计划,即CMOT(Common Management information service and protocol Over TCP/IP)。CMOT使用了ISO的CMIS和CMIP,但现在还未得到实际应用。,10.3.1SNMP,1 SNMPv1TCP/IP网络管理最初使用的是1987年11月提出的简单网关监控协议(Simple Gateway Monitoring Protocol,SGMP),在此基础上改进成简单网络管理协议第一版(Simple Network Management Protocol,SNM
23、Pv1),陆续公布在1990年和1991年的几个RFC(Request For Comments)文档中,即RFC 1155(SMI)、RFC 1157(SNMP)、RFC 1212(MIB定义)和RFC 1213 (MIB-2规范)。由于其简单性和易于实现,SNMPv1得到了许多制造商的支持和广泛的应用。,当初提出SNMP的目的是将其作为弥补网络管理协议发展阶段之间空缺的一种临时性措施。SNMP出现后显示了许多优点,最主要的的优点是简单,容易实现,而且基于人们熟悉的SGMP(Simple Gateway Monitoring Protocol)协议,已有相当多的操作经验。因此在1988年,为
24、了适应当时紧迫的网络管理需要,确定了网络管理标准开发的双轨制策略。,(1) SNMP可以满足当前的网络管理需要,用于管理配置简单的网络,并且在将来可以平稳地过渡到新的网络管理标准。(2) OSI网络管理(CMIP Over TCP/IP,CMOT)作为长期的解决办法,可以应付未来的更复杂的网络配置,提供更全面的管理功能,但是需要较长的开发过程以及开发商和用户接受的过程。,然而这个双轨制策略很快就停止了实施,其原因主要是:(1) 原来的想法是SNMP的MIB应该是OSI MIB的子集,以便顺利地过渡到CMOT。但是OSI定义的管理信息库是相当复杂的面向对象模型,在此基础上实现SNMP几乎是不可能
25、的。所以人们很快放弃了这个想法,让SNMP使用简单的标量MIB。这样,SNMP向OSI管理过渡就很困难了。(2) OSI系统管理标准和符合OSI标准的网络管理产品的开发进展缓慢,而在此期间SNMP却得到了制造商的广泛支持,出现了许多SNMP产品,并得到广大用户的接受。,2 SNMPv2,为了修补SNMP的安全缺陷,1992年7月出现了一个新标准-安全SNMP(S-SNMP),这个协议增强了以下安全方面的功能: 用报文摘要算法MD5保证数据完整性和进行数据源认证; 用时间戳对报文排序; 用DES算法提供数据加密功能。,但是S-SNMP没有改进SNMP在功能和效率方面的其他缺点。几乎与此同时有人又
26、提出了另外一个协议SMP(Simple Management Protocol),这个协议由8个文件组成,它对SNMP的扩充表现在以下4个方面: 适用范围:SMP可以管理任意资源,不仅包括网络资源,还可用于应用管理、系统管理;可实现管理站之间的通信,也提供了更明确、更灵活的描述框架;可以描述一致性要求和实现能力;在SMP中管理信息的扩展性得到了增强。 复杂程度、速度和效率:保持了SNMP的简单性,更容易实现,并提供了数据块传送能力,因此速度和效率更高。, 安全设施:结合了S-SNMP提供的安全功能。 兼容性:可以运行在TCP/IP网络上,也适合OSI系统和运行其他通信协议的网络。在对S-SNM
27、P和SMP讨论的过程中,Internet研究人员之间达成了如下共识:必须扩展SNMP的功能并增强其安全设施,使用户和制造商尽快地从原来的SNMP过渡到第二代SNMP。于是S-SNMP被放弃,决定以SMP为基础开发SNMP第2版,即SNMPv2。,IETF组织了两个工作组,一个组负责协议功能和管理信息库的扩展,另一组负责SNMP的安全方面,1992年10月正式开始工作。这两个组的工作进展非常之快,功能组的工作在1992年12月完成,安全组在1993年1月完成。1993年5月它们发布了12个RFC(14411452)文件作为草案标准。后来有一种意见认为SNMPv2基于参加者的高层管理框架和安全机制
28、实现起来太复杂,对代理的配置很困难,限制了网络发现能力,失去了SNMP的简单性。又经过几年的实验和论证,后来人们决定丢掉安全功能,把增加的其他功能作为新标准颁布,并保留了SNMPv1的报文封装格式,称其为基于团体的SNMP(Community-based SNMP),简称SNMPv2C。新的RFC(19011908)文档于1996年1月发布。表4.1列出了有关SNMPv2和SNMPv2C的RFC文件。,表10.1 有关SNMPv2和SNMPv2C的RFC文件,3 SNMPv3由于SNMPv2没有达到“商业级别”的安全要求(提供数据源标识、报文完整性认证、防止重放、报文机密性、授权和访问控制、远
29、程配置和高层管理能力等),因而SNMPv3工作组一直在从事新标准的研制工作,终于在1999年4月发布了SNMPv3新标准。SNMPv3工作组的目标是:产生一组必要的文档,作为下一代SNMP核心功能的单一标准。要求尽量使用已有的文档,使新标准:, 能够适应不同管理需求的各种操作环境; 便于已有的系统向SNMPv3过渡; 可以方便地建立和维护管理系统。,根据以上要求,工作组于1998年1月发表了5个文件,作为安全和高层管理的建议标准(Proposed Standard),这5个文件是: RFC 2271描述SNMP管理框架的体系结构; RFC 2272简单网络管理协议的报文处理和调度; RFC 2
30、273SNMPv3应用程序; RFC 2274SNMPv3基于用户的安全模型; RFC 2275SNMPv3基于视图的访问控制模型。,后来在此基础上又进行了修订,终于在1999年4月公布了一组文件,作为SNMPv3的新标准草案(DRAFT STANDARD): RFC 2570Internet标准网络管理框架第3版引论; RFC 2571SNMP管理框架的体系结构描述(标准草案,代替RFC 2271); RFC 2572简单网络管理协议的报文处理和调度系统(标准草案,代替RFC 2272); RFC 2573SNMPv3应用程序(标准草案,代替RFC 2273);, RFC 2574SNMPv
31、3基于用户的安全模型(USM) (标准草案,代替RFC 2274); RFC 2575SNMPv3基于视图的访问控制模型(VACM)(标准草案,代替RFC 2275); RFC 2576SNMP第1、2、3版的共存问题(标准建议,代替RFC 2089,2000年3月发布)。,另外,对SNMPv2的管理信息结构(SMIv2)的有关文件也进行了修订,作为正式标准公布: RFC 2578管理信息结构第2版(SMIv2) (正式标准STD 0058,代替RFC 1902); RFC 2579对于SMIv2的文本约定(正式标准STD 0058,代替RFC 1903); RFC 2580对于SMIv2的一
32、致性说明(正式标准STD 0058,代替RFC 1904)。SNMPv3不仅在SNMPv2C的基础上增加了安全和高层管理功能,而且能和以前的标准(SNMPv1和SNMPv2)兼容,也便于以后扩充新的模块,从而形成了统一的SNMP新标准。,4. SNMP网管系统组成,管理站(management station) 管理信息库MIB 管理信息结构SMI以及SNMP本身,管理站,它是网管系统的控制中心,管理进程在管理站上运行。 代理进程在被管对象(主机、路由器等)上运行。 管理进程和代理进程之间利用SNMP报文进行通信(SNMP报文用UDP来传送)。 MIB由管理站维护。 SNMP网管系统如图10-
33、11所示。,图10-11 SNMP配置,委托代理,有时网络管理协议无法控制某些网络元素。例如,该网络元素使用的是另一种网络管理协议。这时可使用委托代理(proxy agent)。 委托代理能提供如协议转换和过滤操作的汇集功能。然后通过委托代理来对被管对象进行管理。 图10-12表示委托管理的配置情况。,图10-12 委托管理的配置,5.管理信息库MIB,MIB指明了网络元素所维护的变量。变量是指能够被管理进程查询和设置的信息。 MIB给出了一个网络中所有可能的被管对象的集合的数据结构。SNMP的MIB采用树形结构,最上面是根,根没有名字。 MIB的一部分如图10-13所示,它又称为对象命名树(
34、object naming tree)。,对象命名树的顶级对象,ISO ITUT 这2个组织的联合体,mib管理的信息类别,如表10-2所示。现在的mib-2已经超过40个。,表10-2 最初的结点MIB管理的信息类别,值得指出的是,MIB的定义与具体的网络管理协议无关。为了帮助理解MIB的意义,表10-3给出了若干MIB变量的例子。,表10-3 MIB变量的例子,6.SNMP报文,SNMP规定了5种报文,用于在管理进程和代理之间交换信息。 信息交换通过2种基本的操作实现的,即 读:用get报文来检测各被管对象的状况。 写:用set报文来设置各被管对象的状况。 SNMP的操作是基于轮询机制的,
35、即SNMP管理进程定时向被管设备周期性地发送查询信息。 另外,SNMP也可以基于陷阱(trap)机制,即允许没被轮询到的被管设备发送某些信息。此时,往往是发生了某些事件,从而触发信息的发送。,SNMP报文的名称和用途,如表10-4所示。,表10-4 SNMP定义的报文,SNMP报文在层次结构中的位置,如图10-14所示。,图10-14 SNMP在网络中的位置,SNMP使用UDP服务,从图中可以看出,SNMP报文由UDP运输。SNMP使用UDP服务的过程如图10-15所示。,图10-15 SNMP使用UDP服务,SNMP报文通用结构,SNMP报文由公共头部、头部类型以及变量关联(variable
36、-bindings)组成 结构如图10-16所示。,图10-16 SNMP报文结构,get/set报文的公共头部,版本:其值比SNMP版本值小1,例如,当SNMP的版本是1时,版本字段的值=0。 共同体(community):它是一个字符串,作为管理进程和代理进程之间的明文口令。常用的是6个字符:public。 PDU类型:指明5个报文中的一个。值的分配如表10-3所示。,头部类型有2种情况,get/set头部或trap头部。当报文类型是03时,是get/set头部。当报文类型是4时,它是trap头部。,get/set头部组成,请求标识符(request ID):它是由管理进程设置的一个整数值
37、。代理进程在发送get-response报文时也要返回此请求标识符。由于管理进程可同时向许多代理发出get报文,因此,请求标识符可以区别响应报文是与哪个请求报文对应的。,问题,如果SNMP使用TCP服务,还用定义请求标识符吗?,get/set头部组成,差错状态(error status):由代理进程回答时填入05中的一个数字。数字代表的状态如表10-5所示。,表10-5 差错状态描述,trap头部组成,企业(enterprise):填入产生trap报文的网络设备的对象标识符。此标识符肯定是在图10-8对象命名树上的enterprise节点1.3.6.1.4.1下面的一棵子树上。 trap类型(
38、generic-trap):如表10-6所示。,表10-6trap类型描述,trap头部组成,特定代码(specific-code):指明代理自定义的事件(若trap类型为6),否则为0。 时间戳(timestamp):指明从代理进程的初始化到trap报告的事件发生所经历的时间,单位为10ms。例如,时间戳为100表明在代理进程初始化后1000ms后发生了该事件。,变量关联,指明一个或多个变量的名字和对应的值。在get或get-next报文中,变量的值应忽略。,7.管理信息结构SMI,管理信息结构(Structure of Management Information,SMI)是SNMP的另一
39、个重要的组成部分。 SMI定义了MIB变量必须遵照的抽象语法记法1(Abstract Syntax Notation One ,ASN.1)。ANS.1使MIB变量定义不会存在任何可能的二义性。 ASN.1包括两个标准,即抽象语法记法(ASN.1)本身(ISO8824)和ASN.1的基本编码规则(Basic Encoding Rule,BER)(ISO 8825)。,SNMP get-request 报文,SNNP-Message:=SEQUENCE -“:=”表示定义为 version INTEGERversion-1(0), -整数取值为0,表示 version 1 community O
40、CTET STRING, -共用体的名字 data ANY -数据部分放入各种PDU Get-request-PDU:=0 IMPLICIT PDU -0表示上下文类,编号为0 PDU:SEQUENCE request-id INTEGER, -变量request-id的类型是INTEGER error-status INTEGERnoError(o), -0表示没错误tooBig(1), -1表示tooBig noSuchName(2), - 2表示noSuchnamebadValue(3), -3表示badValueeadOnly(4), -4表示readOnlygenErr(5), -5
41、表示genErr(具体含义见表10-7所示) error-index INTEGER, variable-bindings VarBindList VarBindList:=SEQUENCE OF VarBind VarBind:=SEQUENCEname objectName, value ObjectSyntax,说明:,上述定义的整体结构依据图10-16所示的报文结构展开。可以看出,一个SNMP报文被定义为一个包含版本、共同体以及数据的序列,而数据可以是任何一种PDU。 定义中的大写单词相当于高级程序语言的保留字,具有特含义和用途。例如表明数据类型的INTEGER。 ASN.1使用的数据
42、类型包括简单类型和构造类型。简单类型如INTEGER,构造类型如保留的SEQUECE和自定义的VarBindlist、VarBind。,SNMP所用到的ASN.1的部分类型 名称及其主要特点,如表10-7所示。,表10-7SNMP所用到的ASN.1的部分类型名称及其主要特点,说明,在表10-7中的第二列是标记(tab)。ASN.1规定每一个数据类型应当有一个能够唯一被识别的标记,以便能无二义性地标识各种数据类型。标记有两个分量,一个分量是标记的类(class),另一个分量是非负整数。,标记分类,通用类(Universal):由ASN.1分配给所定义的最常用的一些数据类型,它与具体的应用无关。表
43、10-6中的类型都是通用类。 应用类(Application-wide):与某个特定应用相关的类型(被其他标准所定义)。 上下文类(Context-specific):上下文定义的类型,它属于应用类的一个子集。 专用类(Private):保留为一些厂家所定义类型,在ASN.1标准中未定义。 另外,Get-request-PDU定义中还涉及了IMPLICIT、ObjectName和ObjectSyntax,其含义此处从略。,BER,BER采用TLV方法进行编码,T标识数据的类型(Type),L标识数据的长度(Length),V标识的数据值(Value)。 T、L、V字段都是八位位组(octet)
44、。TLV编码结构如图10-18所示。,图10-18 TLV编码,8.SNMP v2和SNMP v3,上面介绍的SNMP是它的第一版本。SNMP v1非常简单,因此得到广泛的使用。但它存在以下缺点: 不能有效地传送大块的数据; 不能将网络管理的功能分散化; 安全性不够好。,续,为解决上述问题,IETF在1996年发布了SNMP v2RFC19011908。但SNMP v2安全方面的设计过于复杂。SNMP v2增加了一个get-bulk-request的命令,可以一次从路由表中读取多行信息(而不象SNMP v1那样,只要有一个变量值不能返回,get就会被拒绝),这样可以减少网络通信量。,续,当网络
45、的规模扩大时,只用一个网络管理站对全网集中管理是不适宜的。SNMP v2采用了较好的分散化的管理方法。在一个网络中可以有多个顶级管理站,叫做管理服务器(management server)。每一个这样的管理服务器管理网络中的一部分代理进程,并指派若干个代理进程使之具有管理其他代理进程的功能。这种进程称为中间管理进程(intermediate manager),或网元管理进程(element manager)、管理进程/代理进程(manager/agent)。这种结构分散了处理功能,使网络总的通信量明显地降低。,续,为了支持这样的配置,SNMP v2增加了一个inform命令和一个管理进程到管理
46、进程的MIB(manager-to-manager MIB)。使用inform命令可以使管理进程之间交换必要的事件信息而不需要经过请求。管理进程到管理进程MIB就用于存储这些信息。,续,1996年9月,IETF成立了一个委员会研究SNMP的安全问题。SNMP v3由W-SNMP v3工作组负责。SNMP v3要解决的问题就是SNMP的安全问题。 SNMP v3具有三种安全功能,即鉴别、保密和存取控制。SNMP v3可以做到,只有授权的人员才有资格执行网络管理的功能(如关闭某一条链路)和读取有关网络管理的信息(如读取一个配置文件的内容)。,10.3.2CMIS/CMIP,CMIS/CMIP是IS
47、O制定的网络管理协议族。CMIS定义了每个网络组成部分提供的网络管理服务,CMIP则是实现CMIS服务的协议。 SNMP是按照简单和易于实现的原则设计的,而CMIS/CMIP出于通用性考虑,要提供一个完整的网络管理方案所需的功能。,续,为此,CMIS/CMIP的整体结构建立在ISO网络参考型基础上,具体讲 网络管理应用进程使用应用层服务 CMIP作为应用层协议,CMIS应用使用CMIP通过公共管理信息服务单元(CMIS Element,CMISE)提供的接口。 与CMIP协同工作的还有两个应用层实体 关联控制服务单元(Association Control Services Element,A
48、CSE) 远程操作服务单元(Remote Operation Service Element,ROSE)。 ACSE在应用程序之间建立和关闭关联,而ROSE则处理应用之间的请求和响应交互。,值得注意的是,ISO没有在应用层下特别为网络管理定义协议,而只有CMIP一个。 CMIP有11种类型的PDU,而且它的变量具有很复杂的数据结构。 CMIP重要的一个特点就是它的变量不但可以传递信息,而且可以完成某项任务,这对SNMP来说是不可能的。例如:当网络中的一个计算机经过事先设置的时间后仍无法与某个服务器进行通信,则CMIP就能发出一个事件通知网络管理人员,但SNMP则对此无能为力。,SNMP v1与
49、CMIP的比较,如表10-8表示。,表10-8SNMP v1与CMIP比较,CMIS/CMIP的功能结构,如图10-19所示。,图10-19 CMIS/CMIP结构,10.3.3CMOT,前面讲到,CMIS/CMIP是建立在OSI基础上的。 CMOT的思想是要在TCP/IP模型上实现CMIS服务,目的是将CMIS的优点移植到Internet上来。 CMOT仍然使用CMISE、ACSE和ROSE。而且,为了使用TCP和UDP服务,CMOT增加了轻量表示协议(Light Presentation Protocol,LPP),LPP提供访问TCP和UDP的接口。 CMOT虽然在TCP/IP网络管理中引入了更强的功能,但由于许多重要的研发商把注意力集中到SNMP方面,因此,虽然CMOT已经定义,但其发展缓慢。,10.3.4LMMP,局域网个人管理协议LMMP试图为LAN环境提供一个网络管理方案。 LMMP以前被称为IEEE802 LLC上的公共管理信息服务与协议(CMIS Over LLC,CMOL)。由于该协议直接位于LLC上,它可以不依赖于任何特定的上层协议,因此,比其他协议易于实现。 但不使用网络层协议,使之缺乏路由功能,只能在桥接局域网中应用。 为了扩展LMMP的应用,LMMP引入信息转换代理技术,可以克服局域网的限制。,