分享
 
 
 

RFC1303 - A Convention for Describing SNMP-based Agents

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

Network Working Group K. McCloghrie

Request For Comments: 1303 Hughes LAN Systems

M. Rose

Dover Beach Consulting

February 1992

A Convention for Describing SNMP-based Agents

Status of This Memo

This memo provides information for the Internet community. It does

not specify an Internet standard. Distribution of this memo is

unlimited.

Abstract

This memo suggests a straight-forward approach towards describing

SNMP-based agents.

Table of Contents

1. The Network Management Framework ............................ 2

2. Objects ..................................................... 2

3. Describing Agents ........................................... 3

3.1 Definitions ................................................ 4

3.2 Mapping of the MODULE-CONFORMANCE macro .................... 5

3.2.1 Mapping of the LAST-UPDATED clause ....................... 6

3.2.2 Mapping of the PRODUCT-RELEASE clause .................... 6

3.2.3 Mapping of the DESCRIPTION clause ........................ 6

3.2.4 Mapping of the SUPPORTS clause ........................... 6

3.2.4.1 Mapping of the INCLUDES clause ......................... 6

3.2.4.2 Mapping of the VARIATION clause ........................ 6

3.2.4.2.1 Mapping of the SYNTAX clause ......................... 6

3.2.4.2.2 Mapping of the WRITE-SYNTAX clause ................... 7

3.2.4.2.3 Mapping of the Access clause ......................... 7

3.2.4.2.4 Mapping of the CREATION-REQUIRES clause .............. 7

3.2.4.2.5 Mapping of the DEFVAL clause ......................... 7

3.2.4.2.6 Mapping of the DESCRIPTION clause .................... 7

3.3 Refined Syntax ............................................. 7

3.4 Usage Example .............................................. 8

4. Acknowledgements ............................................ 11

5. References .................................................. 11

6. Security Considerations...................................... 12

7. Authors' Addresses........................................... 12

1. The Network Management Framework

The Internet-standard Network Management Framework consists of

three components. They are:

RFC1155 [1] which defines the SMI, the mechanisms used for

describing and naming objects for the purpose of management.

RFC1212 [2] defines a more concise description mechanism,

which is wholly consistent with the SMI.

RFC1213 [3] which defines MIB-II, the core set of managed

objects for the Internet suite of protocols.

RFC1157 [4] which defines the SNMP, the protocol used for

network access to managed objects.

The Framework permits new objects to be defined for the

purpose of eXPerimentation and evaluation.

2. Objects

Managed objects are accessed via a virtual information store,

termed the Management Information Base or MIB. Within a given

MIB module, objects are defined using RFC1212's OBJECT-TYPE

macro. At a minimum, each object has a name, a syntax, an

access-level, and an implementation-status.

The name is an object identifier, an administratively assigned

name, which specifies an object type. The object type

together with an object instance serves to uniquely identify a

specific instantiation of the object. For human convenience,

we often use a textual string, termed the OBJECT DESCRIPTOR,

to also refer to the object type.

The syntax of an object type defines the abstract data

structure corresponding to that object type. The ASN.1[5]

language is used for this purpose. However, RFC1155

purposely restricts the ASN.1 constructs which may be used.

These restrictions are explicitly made for simplicity.

The access-level of an object type defines whether it makes

"protocol sense" to read and/or write the value of an instance

of the object type. (This access-level is independent of any

administrative authorization policy.)

The implementation-status of an object type indicates whether

the object is mandatory, optional, obsolete, or deprecated.

3. Describing Agents

When a MIB module is written, it is divided into units of

conformance termed groups. If an agent claims conformance to

a group, then it must implement each and every object within

that group. Of course, for whatever reason, an agent may

implement only a subset of the groups within a MIB module. In

addition, the definition of some MIB objects leave some

ASPects of the definition to the discretion of an implementor.

Practical experience has demonstrated a need for concisely

describing the capabilities of an agent with regards to the

MIB groups that it implements. This memo defines a new macro,

MODULE-CONFORMANCE, which allows an agent implementor to

describe the precise level of support which an agent claims in

regards to a MIB group, and to bind that description to the

sysObjectID associated with the agent. In particular, some

objects may have restricted or augmented syntax or access-

levels.

If the MODULE-CONFORMANCE invocation is given to a

management-station implementor, then that implementor can

build management applications which optimize themselves when

communicating with a particular agent. For example, the

management-station can maintain a database of these

invocations. When a management-station interacts with an

agent, it retrieves the agent's sysObjectID. Based on this,

it consults the database. If an entry is found, then the

management application can optimize its behavior accordingly.

This binding to sysObjectId may not always suffice to define

all MIB objects to which an agent can provide access. In

particular, this situation occurs where the agent dynamically

learns of the objects it supports, for example, an agent

supporting SMUX peers via the SMUX protocol [6]. In these

situations, additional MIB objects beyond sysObjectID must be

used to name other invocations of the MODULE-CONFORMANCE macro

to augment the description of MIB support provided by the

agent. For example, if an agent's sysObjectID indicates that

it supports the SMUX MIB, then each instance of smuxPidentity

will indicate another MODULE-CONFORMANCE invocation which is

dynamically being supported by the agent.

3.1. Definitions

RFC-1303 DEFINITIONS ::= BEGIN

IMPORTS

ObjectName, ObjectSyntax

FROM RFC1155-SMI

DisplayString

FROM RFC1213-MIB;

MODULE-CONFORMANCE MACRO ::=

BEGIN

TYPE NOTATION ::=

"LAST-UPDATED"

value(update UTCTime)

"PRODUCT-RELEASE"

value(release DisplayString)

"DESCRIPTION"

value(description DisplayString)

ModulePart

VALUE NOTATION ::= -- agent's sysObjectID --

value(VALUE ObjectName)

ModulePart ::= Modules

empty

Modules ::= Module

Modules Module

Module ::= -- name of module --

"SUPPORTS" ModuleName

"INCLUDES" "{" Groups "}"

VariationPart

ModuleName ::= identifier ModuleIdentifier

ModuleIdentifier ::=

value (moduleID OBJECT IDENTIFIER)

empty

Groups ::= Group

Groups "," Group

Group ::= value(group OBJECT IDENTIFIER)

VariationPart ::= Variations

empty

Variations ::= Variation

Variations Variation

Variation ::= "VARIATION" value(object ObjectName)

Syntax WriteSyntax Access

Creation DefaultValue

"DESCRIPTION"

value(limitext DisplayString)

-- must be a refinement for object's SYNTAX

Syntax ::= "SYNTAX" type(SYNTAX)

empty

-- must be a refinement for object's SYNTAX

WriteSyntax ::= "WRITE-SYNTAX" type(WriteSYNTAX)

empty

Access ::= "ACCESS" AccessValue

empty

AccessValue ::= "read-only"

"read-write"

"write-only"

"not-accessible"

Creation ::= "CREATION-REQUIRES" "{" Cells "}"

Cells ::= Cell

Cells "," Cell

Cell ::= value(cell ObjectName)

DefaultValue ::= "DEFVAL"

"{" value (defval ObjectSyntax) "}"

empty

END

END

3.2. Mapping of the MODULE-CONFORMANCE macro

It should be noted that the expansion of the MODULE-CONFORMANCE macro

is something which conceptually happens during implementation and not

during run-time.

3.2.1. Mapping of the LAST-UPDATED clause

The LAST-UPDATED clause, which must be present, contains the date and

time that this definition was last edited.

3.2.2. Mapping of the PRODUCT-RELEASE clause

The PRODUCT-RELEASE clause, which must be present, contains a textual

description of the product release which includes this agent.

3.2.3. Mapping of the DESCRIPTION clause

The DESCRIPTION clause, which must be present, contains a textual

description of this agent.

3.2.4. Mapping of the SUPPORTS clause

The SUPPORTS clause, which need not be present, is repeatedly used to

name each MIB module for which the agent claims a complete or partial

implementation. Each MIB module is named by its module name, and

optionally, by its associated OBJECT IDENTIFIER as well. (Note that

only a few MIB modules have had OBJECT IDENTIFIERs assigned to them.)

3.2.4.1. Mapping of the INCLUDES clause

The INCLUDES clause, which must be present for each use of the

SUPPORTS clause, is used to name each MIB group associated with the

SUPPORT clause, which the agent claims to implement.

3.2.4.2. Mapping of the VARIATION clause

The VARIATION clause, which need not be present, is repeatedly used

to name each MIB object which the agent implements in some variant or

refined fashion.

3.2.4.2.1. Mapping of the SYNTAX clause

The SYNTAX clause, which need not be present, is used to provide a

refined SYNTAX for the object named in the correspondent VARIATION

clause. Note that if this clause and a WRITE-SYNTAX clause are both

present, then this clause only applies when instances of the object

named in the correspondent VARIATION clause are read.

Consult Section 3.3 for more information on refined syntax.

3.2.4.2.2. Mapping of the WRITE-SYNTAX clause

The WRITE-SYNTAX clause, which need not be present, is used to

provide a refined SYNTAX for the object named in the correspondent

VARIATION clause when instances of that object are written.

Consult Section 3.3 for more information on refined syntax.

3.2.4.2.3. Mapping of the ACCESS clause

The ACCESS clause, which need not be present, is used to provide a

refined ACCESS for the object named in the correspondent VARIATION

clause.

3.2.4.2.4. Mapping of the CREATION-REQUIRES clause

The CREATION-REQUIRES clause, which need not be present, is used to

name the columnar objects of a conceptual row to which values must be

explicitly assigned, by a SNMP Set operation, before the agent will

create new instances of objects in that row. This clause must not be

present unless the object named in the correspondent VARIATION clause

is a conceptual row, i.e., has a syntax which resolves to a SEQUENCE

containing columnar objects. The objects named in the value of this

clause usually will refer to columnar objects in that row. However,

objects unrelated to the conceptual row may also be specified.

The absence of this clause for a particular conceptual row indicates

that the agent does not support the creation, via SNMP operations, of

new object instances in that row.

3.2.4.2.5. Mapping of the DEFVAL clause

The DEFVAL clause, which need not be present, is used to provide a

refined DEFVAL value for the object named in the correspondent

VARIATION clause. The semantics of this value are identical to those

of the OBJECT-TYPE macro's DEFVAL clause [2].

3.2.4.2.6. Mapping of the DESCRIPTION clause

The DESCRIPTION clause, which must be present for each use of the

VARIATION clause, contains a textual description of the variant or

refined implementation.

3.3. Refined Syntax

The SYNTAX and WRITE-SYNTAX clauses allow an object's Syntax to be

refined. However, not all refinements of syntax are appropriate. In

particular,

(1) the object's primitive or application type (as defined in

the SMI [1]) must not be changed;

(2) an object defined with an SMI type of OBJECT IDENTIFIER,

IpAddress, Counter, or TimeTicks cannot be refined; and,

(3) an object defined to have a specific set of values (e.g.,

an INTEGER with named values) cannot have additional

values defined for it.

3.4. Usage Example

Consider how one might document the 4BSD/ISODE "Secure" SNMP

agent:

FourBSD-ISODE DEFINITIONS ::= BEGIN

IMPORTS

MODULE-CONFORMANCE

FROM RFC-1303

-- everything --

FROM RFCxxxx-MIB

-- everything --

FROM RFC1213-MIB

-- everything --

FROM UNIX-MIB

-- everything --

FROM EVAL-MIB;

fourBSD-isode-support MODULE-CONFORMANCE

LAST-UPDATED "9201252354Z"

PRODUCT-RELEASE "ISODE 7.0 + 'Secure' SNMP

upgrade for SunOS 4.1"

DESCRIPTION "4BSD/ISODE 'Secure' SNMP"

SUPPORTS RFCxxxx-MIB -- SNMP Party MIB --

INCLUDES { partyPublic, partyPrivate }

SUPPORTS RFC1213-MIB

INCLUDES { system, interfaces, at, ip, icmp,

tcp, udp, snmp }

VARIATION atEntry

CREATION-REQUIRES { atPhysAddress }

DESCRIPTION "Address mappings on 4BSD require

both protocol and media addresses"

VARIATION ifAdminStatus

SYNTAX INTEGER { up(1), down(2) }

DESCRIPTION "Unable to set test mode on 4BSD"

VARIATION ifOperStatus

SYNTAX INTEGER { up(1), down(2) }

DESCRIPTION "Information limited on 4BSD"

VARIATION ipDefaultTTL

SYNTAX INTEGER { maxttl(255) }

DESCRIPTION "Hard-wired on 4BSD"

VARIATION ipInAddrErrors

ACCESS not-accessible

DESCRIPTION "Information not available on 4BSD"

VARIATION ipInDiscards

ACCESS not-accessible

DESCRIPTION "Information not available on 4BSD"

VARIATION ipRouteEntry

CREATION-REQUIRES { ipRouteNextHop }

DESCRIPTION "Routes on 4BSD require both

destination and next-hop"

VARIATION ipRouteType

SYNTAX INTEGER { direct(3), indirect(4) }

WRITE-SYNTAX INTEGER { invalid(2), direct(3),

indirect(4) }

DESCRIPTION "Information limited on 4BSD"

VARIATION ipRouteProto

SYNTAX INTEGER { other(1), icmp (4) }

DESCRIPTION "Information limited on 4BSD"

VARIATION ipRouteAge

ACCESS not-accessible

DESCRIPTION "Information not available on 4BSD"

VARIATION ipNetToMediaEntry

CREATION-REQUIRES { ipNetToMediaPhysAddress }

DESCRIPTION "Address mappings on 4BSD require

both protocol and media addresses"

VARIATION ipNetToMediaType

SYNTAX INTEGER { dynamic(3), static(4) }

WRITE-SYNTAX INTEGER { invalid(2), dynamic(3),

static(4) }

DESCRIPTION "Information limited on 4BSD"

VARIATION tcpConnState

ACCESS read-only

DESCRIPTION "Unable to set this on 4BSD"

VARIATION tcpInErrs

ACCESS not-accessible

DESCRIPTION "Information not available on 4BSD"

VARIATION tcpOutRsts

ACCESS not-accessible

DESCRIPTION "Information not available on 4BSD"

SUPPORTS UNIX-MIB

INCLUDES { agents, mbuf, netstat }

SUPPORTS EVAL-MIB

INCLUDES { functions, expressions }

::= { fourBSD-isode 6 6 }

END

According to this invocation, an agent with a sysObjectID of

{ fourBSD-isode 6 6 }

supports four MIB modules.

From the SNMP Party MIB, all the objects contained in the partyPublic

and partyPrivate groups are supported, without variation.

From MIB-II, all groups except the egp group are supported. However,

the objects

ipInAddrErrors

ipInDiscards

ipRouteAge

tcpInErrs

tcpOutRsts

are not available, whilst the objects

ifAdminStatus

ifOperStatus

ipDefaultTTL

ipRouteType

ipRouteProto

ipNetToMediaType

have a restricted syntax, and the object

tcpConnState

is available only for reading. Note that in the case of the objects

ipRouteType

ipNetToMediaType

the set of values which may be read is different than the set of

values which may be written. Finally, when creating a new row in the

atTable, the set-request must create an instance of atPhysAddress.

Similarly, when creating a new row in the ipRouteTable, the set-

request must create an instance of ipRouteNextHop. Similarly, when

creating a new row in the ipNetToMediaTable, the set-request must

create an instance of ipNetToMediaPhysAddress.

From the UNIX-MIB, all the objects contained in the agents, mbuf, and

netstat groups are supported, without variation.

From the EVAL-MIB, all the objects contained in the functions and

expressions groups are supported, without variation.

4. Acknowledgements

The authors gratefully acknowledge the comments of Mark van der Pol

of Hughes LAN Systems, and David T. Perkins of SynOptics

Communications.

5. References

[1] Rose M., and K. McCloghrie, "Structure and Identification of

Management Information for TCP/IP-based internets", RFC1155,

Performance Systems International, Hughes LAN Systems, May 1990.

[2] Rose, M., and K. McCloghrie, Editors, "Concise MIB Definitions",

RFC1212, Performance Systems International, Hughes LAN Systems,

March 1991.

[3] McCloghrie K., and M. Rose, Editors, "Management Information

Base forNetwork Management of TCP/IP-based internets", RFC1213,

Performance Systems International, March 1991.

[4] Case, J., Fedor, M., Schoffstall, M., and J. Davin, "Simple

Network Management Protocol (SNMP), RFC1157, SNMP Research,

Performance Systems International, Performance Systems

International, MIT Laboratory for Computer Science, May 1990.

[5] Information processing systems - Open Systems Interconnection -

Specification of Abstract Syntax Notation One (ASN.1),

International Organization for Standardization, International

Standard 8824, December 1987.

[6] Rose, M., "SNMP MUX Protocol and MIB", RFC1227, Performance

Systems International, May 1991.

6. Security Considerations

Security issues are not discussed in this memo.

7. Authors' Addresses

Keith McCloghrie

Hughes LAN Systems

1225 Charleston Road

Mountain View, CA 94043

Phone: (415) 966-7934

EMail: kzm@hls.com

Marshall T. Rose

Dover Beach Consulting, Inc.

420 Whisman Court

Mountain View, CA 94043-2112

Phone: (415) 968-1052

EMail: mrose@dbc.mtview.ca.us

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有