SNMP协议-共同体

SNMP定义了管理进程(manager)和管理代理(agent)之间的关系,这个关系称为共同体(community)。描述共同体的语义是非常复杂的,但其句法却很简单。位于网络管理工作站(运行管理进程)上和各网络元素上利用SNMP相互通信对网络进行管理的软件统统称为SNMP应用实体。若干个应用实体和SNMP组合起来形成一个共同体,不同的共同体之间用名字来区分,共同体的名字则必须符合Internet的层次结构命名规则,由无保留意义的字符串组成。此外,一个SNMP应用实体可以加入多个共同体。

SNMP的应用实体对Internet管理信息库中的管理对象进行操作。一个SNMP应用实体可操作的管理对象子集称为SNMP MIB授权范围。SNMP应用实体对授权范围内管理对象的访问仍然还有进一步的访问控制限制,比如只读、可读写等。SNMP体系结构中要求对每个共同体都规定其授权范围及其对每个对象的访问方式。记录这些定义的文件称为“共同体定义文件”。

SNMP的报文总是源自每个应用实体,报文中包括该应用实体所在的共同体的名字。这种报文在SNMP中称为“有身份标志的报文”,共同体名字是在管理进程和管理代理之间交换管理信息报文时使用的。管理信息报文中包括以下两部分内容:
1)共同体名,加上发送方的一些标识信息(附加信息),用以验证发送方确实是共同体中的成员,共同体实际上就是用来实现管理应用实体之间身份鉴别的;

(2)数据,这是两个管理应用实体之间真正需要交换的信息。

在第三版本前的SNMP中只是实现了简单的身份鉴别,接收方仅凭共同体名来判定收发双方是否在同一个共同体中,而前面提到的附加倍息尚未应用。接收方在验明发送报文的管理代理或管理进程的身份后要对其访问权限进行检查。访问权限检查涉及到以下因素:

(1)一个共同体内各成员可以对哪些对象进行读写等管理操作,这些可读写对象称为该共同体的“授权对象”(在授权范围内);

(2)共同体成员对授权范围内每个对象定义了访问模式:只读或可读写;

(3)规定授权范围内每个管理对象(类)可进行的操作(包括get,get-next,set和trap);

(4)管理信息库(MIB)对每个对象的访问方式限制(如MIB中可以规定哪些对象只能读而不能写等)。

管理代理通过上述预先定义的访问模式和权限来决定共同体中其他成员要求的管理对象访问(操作)是否允许。共同体概念同样适用于转换代理(Proxy agent),只不过转换代理中包含的对象主要是其他设备的内容。

2.SNMP实现方式为了提供遍历管理信息库的手段,SNMP在其MIB中采用了树状命名方法对每个管理对象实例命名。每个对象实例的名字都由对象类名字加上一个后缀构成。对象类的名字是不会相互重复的,因而不同对象类的对象实例之间也少有重名的危险。

在共同体的定义中一般要规定该共同体授权的管理对象范围,相应地也就规定了哪些对象实例是该共同体的“管辖范围”,据此,共同体的定义可以想象为一个多叉树,以词典序提供了遍历所有管理对象实例的手段。有了这个手段,SNMP就可以使用get-next操作符,顺序地从一个对象找到下一个对象。get-next(object-instance)操作返回的结果是一个对象实例标识符及其相关信息,该对象实例在上面的多叉树中紧排在指定标识符;bject-instance对象的后面。这种手段的优点在于,即使不知道管理对象实例的具体名字,管理系统也能逐个地找到它,并提取到它的有关信息。遍历所有管理对象的过程可以从第一个对象实例开始(这个实例一定要给出),然后逐次使用get-next,直到返回一个差错(表示不存在的管理对象实例)结束(完成遍历)。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值