基于策略以及SNMPv3的网络管理的融合
一、前言
网络的发展日新月异,新技术、新业务、新概念层出不穷,无论是规模,还是广度和深度,对人们生活的影响均非昔日可比。随着网络规模的扩大,管理问题日益突出,针对服务质量的保证以及业务管理,人们提出了基于策略的网络管理PBNM(Policy-Based Network Management)方案。基于策略的网络管理方案已经成为近几年迅猛发展的网管技术之一。
同时,由于网络装置变得愈来愈大、愈来愈复杂、愈来愈富于变化,使得网络的管理费用随之增加。为了控制费用,需要使用标准工具,使其能够应用于更多的产品类型,包括终端系统、网桥、路由器和电信设备以及可用于多供应商环境中的设备。正是为了满足这种需要,SNMP发展起来,它提供了一种对多供应商、可协同操作的网络管理工具。
本文对基于策略的网络管理和基于SNMPv3的网络管理如何融合,从而更好的发挥管理作用作了初步探讨。
二、基于策略的网络管理
所谓策略,目前对其定义和描述并无统一的标准,根据IETF的定义是指一系列管理规则的集合。每条规则的定义采用if/then结构,由条件(condition)和操作(action)构成,当网络环境满足规则的条件时,则执行规则定义的相应操作。也可以把策略看成影响主体(subject)与目标(target)的行为。这里的主体就是引用策略的对象,而目标就是受管对象,它们可以是管理员、用户或软硬件部件。
有两种类型的策略:授权策略和义务策略。授权策略定义了允许一个主体在一个对象上实施的操作。通常,一个授权策略可以是肯定的(即允许),可以是否定的(即禁止)。由于决定一个操作是否被允许以及实施操作的引用监控器与目标对象有关,因此称授权策略是基于目标的。义务策略定义了一个主体必须或不应实施的操作。由于主体负责解释策略并实施指定的操作,因此义务策略被称为是基于主体的。
随着网络规模的不断扩大,网络应用的增多,需要将整个网络划分成多个管理域,每个域实现各自的管理策略,但域之间存在着对等的或层次的关系。域可以理解为由被管对象构成的集合。域一般是按照地域、组织、管理策略或其它形式来划分的。各个域实现各自的管理方案,而且域内的管理也大大简化。
所谓基于策略的管理,是指网络自动根据已确定的策略,去实施信息存取、信息传输以及网络设备的监控与配置,提供优化网络所必须的各项服务:包括目录/策略服务、逐级信息流管理、虚拟专网和安全服务。基于策略的管理基本原理如图1所示。基于策略的管理系统将用户提出的服务要求或管理目标,经适当的检查及调整后转化为一定的策略(这些策略可包括授权代理,防火墙,质量服务管理)并将其存储在策略库中。基于策略的管理系统根据网络设备的策略服务请求,查询有关策略,通过计算,判定有关策略是否执行,最终将策略转化为面向具体设备的指令,对网络设备配置和操作,以满足有关的管理目标或服务要求;同时基于策略的管理系统通过监测网络性能变化检查策略的执行情况,来决定是否对有关策略进行修改。
图1 基于策略的管理原理示意图
基于策略的网络管理由四个核心组件构成:策略控制台-它是网络管理人员定义和编辑策略的一种管理工具;策略服务器(又称策略决策点PDP)-负责通知交换机和路由器该如何处理不同类型的流量;策略数据库-保存策略的目录服务器;策略执行点(PEP)-通过访问列表、队列管理算法和其它方式执行策略的网络设备,如被策略激活的交换机或路由器等。
三、基于SNMPv3的网络管理
SNMP(简单网络管理协议)实际上是指网络管理的一系列标准,包括协议、数据库结构定义和数据对象。它提供了最小但功能强大的一套方法,使用简单的SMI(管理信息结构)、MIB(管理信息库)和协议来直接监视和控制网络元素。
SNMPv3(SNMP第三版)提出了一个新的SNMP体系结构,这个体系结构为各种基于SNMP的管理系统提供了一个通用的实现模型。在这个体系结构中,提出了SNMP实体、SNMP引擎、分发器、消息处理子系统、安全子系统、访问控制子系统和SNMP应用等概念。
一个SNMP管理系统由若干包含SNMP实体的节点组成。在这些实体中,至少有一个实体包含命令产生者,和/或通告接收者的应用(对应以往的管理者),多个实体包含能够访问管理设备的命令执行者和通告产生者应用(对应以往的代理者)。实体间用管理通信协议传递管理信息。包含命令生成者和通告接收者应用的SNMP实体监测和控制被管设备。被管设备是指主机、路由器、终端服务器等设备。这些被管设备的监测和控制通过对它们的管理信息的访问实现。
SNMPv3最主要的功能是其安全性,它体现在SNMPv3定义的基于用户的安全模型(USM)和基于视图的访问控制模型(VACM)。VACM MIB包含了下面类别的信息:
1、vacmContextTable:按名称列出了本地可用的上下文。
2、vacmSecurityTogroupTable:为给定的securityModel和securityName提供了一个groupName。
3、vacmAccessTable:定义组的访问权限。
4、vacmViewTreeFamilyTabel:赋给组成一个视图的行的集合的名称。
访问控制子系统提供的服务由原语isAccessAllowed来定义。isAccessAllowed原语的定义规定输入参数为securityModel、securityName、securityLevel、viewType、contextName和variableName。图2提供了一种有效的方法来查看输入变量,显示了VACM MIB中各种表是怎样作出访问控制策略的。
图2 VACM逻辑
1、谁:securityModel和securityName的组合定义了该操作是谁;它识别一种给定的要素,该要素的通信由给定的securityNodel保护。在该SNMP引擎中,这种组合最多属于一个组。VacmSecurityToGroupTable提供groupName、securityModel和securityName。
浏览: