Network Working Group                                         A. Bierman
Request for Comments: 3395                                      C. Bucci
Updates: 2895                                        Cisco Systems, Inc.
Category: Standards Track                                       R. Dietz
                                                              Hifn, Inc.
                                                                A. Warth
                                                          September 2002
        
Network Working Group                                         A. Bierman
Request for Comments: 3395                                      C. Bucci
Updates: 2895                                        Cisco Systems, Inc.
Category: Standards Track                                       R. Dietz
                                                              Hifn, Inc.
                                                                A. Warth
                                                          September 2002
        

Remote Network Monitoring MIB Protocol Identifier Reference Extensions

远程网络监控MIB协议标识符参考扩展

Status of this Memo

本备忘录的状况

This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.

本文件规定了互联网社区的互联网标准跟踪协议,并要求进行讨论和提出改进建议。有关本协议的标准化状态和状态,请参考当前版本的“互联网官方协议标准”(STD 1)。本备忘录的分发不受限制。

Copyright Notice

版权公告

Copyright (C) The Internet Society (2002). All Rights Reserved.

版权所有(C)互联网协会(2002年)。版权所有。

Abstract

摘要

This memo defines extensions to the Protocol Identifier Reference document for the identification of application verb information. It updates the Protocol Identifier Reference document but does not obsolete any portion of that document. In particular, it describes the algorithms required to identify protocol operations (verbs) within the protocol encapsulations managed with MIBs such as the Remote Network Monitoring MIB Version 2, RFC 2021.

本备忘录定义了协议标识符参考文档的扩展,用于识别应用程序动词信息。它更新协议标识符参考文件,但不废弃该文件的任何部分。特别是,它描述了识别使用MIB管理的协议封装(如远程网络监控MIB版本2 RFC 2021)中的协议操作(动词)所需的算法。

Table of Contents

目录

   1. The SNMP Network Management Framework ..........................2
   2. Overview .......................................................3
   2.1 Protocol Identifier Framework .................................3
   2.2 Protocol Identifier Extensions for Application Verbs ..........4
   2.3 Terms .........................................................4
   2.4 Relationship to the RMON-2 MIB ................................5
   2.5 Relationship to the RMON MIB Protocol Identifier Reference.....5
   3. Definitions ....................................................5
   3.1 Verb Identifier Macro Format ..................................5
   3.1.1 Lexical Conventions .........................................6
   3.1.2 Extended Grammar for the PI Language ........................6
   3.1.3 Mapping of the Parent Protocol Name .........................7
   3.1.4 Mapping of the DESCRIPTION Clause ...........................7
        
   1. The SNMP Network Management Framework ..........................2
   2. Overview .......................................................3
   2.1 Protocol Identifier Framework .................................3
   2.2 Protocol Identifier Extensions for Application Verbs ..........4
   2.3 Terms .........................................................4
   2.4 Relationship to the RMON-2 MIB ................................5
   2.5 Relationship to the RMON MIB Protocol Identifier Reference.....5
   3. Definitions ....................................................5
   3.1 Verb Identifier Macro Format ..................................5
   3.1.1 Lexical Conventions .........................................6
   3.1.2 Extended Grammar for the PI Language ........................6
   3.1.3 Mapping of the Parent Protocol Name .........................7
   3.1.4 Mapping of the DESCRIPTION Clause ...........................7
        
   3.1.5 Mapping of the REFERENCE Clause .............................7
   3.1.6 Mapping of the Verb List Clause .............................7
   3.1.6.1 Mapping of the Verb Name Field ............................8
   3.1.6.2 Mapping of the Verb Enum Field ............................8
   3.2 Protocol Directory Requirements ...............................8
   3.2.1 Mapping of the Verb Layer Numbering Space ...................8
   3.2.2 Mapping of the ProtocolDirID object .........................9
   3.2.3 Mapping of the ProtocolDirParameters object .................9
   3.2.4 Mapping of the ProtocolDirLocalIndex object ................10
   3.2.5 Mapping of the protocolDirDescr object .....................10
   3.2.6 Mapping of the protocolDirType object ......................10
   3.2.7 Mapping of the protocolDirAddressMapConfig object ..........10
   3.2.8 Mapping of the protocolDirHostConfig object ................10
   3.2.9 Mapping of the protocolDirMatrixConfig object ..............10
   3.2.10 Mapping of the protocolDirOwner object ....................11
   3.2.11 Mapping of the protocolDirStatus object ...................11
   4. Implementation Considerations .................................11
   4.1 Stateful Protocol Decoding ...................................11
   4.2 Packet Capture ...............................................11
   4.3 RMON-2 MIB Collections .......................................12
   5. Intellectual Property .........................................12
   6. Acknowledgements ..............................................13
   7. Normative References ..........................................13
   8. Informative References ........................................14
   9. IANA Considerations ...........................................15
   10. Security Considerations ......................................15
   Appendix A: Usage Examples .......................................16
   A.1 FTP Example ..................................................16
   A.2 POP3 Example .................................................17
   A.3 SNMP Example .................................................18
   A.4 HTTP Example .................................................18
   A.5 SMTP Example .................................................19
   Authors' Addresses ...............................................20
   Full Copyright Statement..........................................21
        
   3.1.5 Mapping of the REFERENCE Clause .............................7
   3.1.6 Mapping of the Verb List Clause .............................7
   3.1.6.1 Mapping of the Verb Name Field ............................8
   3.1.6.2 Mapping of the Verb Enum Field ............................8
   3.2 Protocol Directory Requirements ...............................8
   3.2.1 Mapping of the Verb Layer Numbering Space ...................8
   3.2.2 Mapping of the ProtocolDirID object .........................9
   3.2.3 Mapping of the ProtocolDirParameters object .................9
   3.2.4 Mapping of the ProtocolDirLocalIndex object ................10
   3.2.5 Mapping of the protocolDirDescr object .....................10
   3.2.6 Mapping of the protocolDirType object ......................10
   3.2.7 Mapping of the protocolDirAddressMapConfig object ..........10
   3.2.8 Mapping of the protocolDirHostConfig object ................10
   3.2.9 Mapping of the protocolDirMatrixConfig object ..............10
   3.2.10 Mapping of the protocolDirOwner object ....................11
   3.2.11 Mapping of the protocolDirStatus object ...................11
   4. Implementation Considerations .................................11
   4.1 Stateful Protocol Decoding ...................................11
   4.2 Packet Capture ...............................................11
   4.3 RMON-2 MIB Collections .......................................12
   5. Intellectual Property .........................................12
   6. Acknowledgements ..............................................13
   7. Normative References ..........................................13
   8. Informative References ........................................14
   9. IANA Considerations ...........................................15
   10. Security Considerations ......................................15
   Appendix A: Usage Examples .......................................16
   A.1 FTP Example ..................................................16
   A.2 POP3 Example .................................................17
   A.3 SNMP Example .................................................18
   A.4 HTTP Example .................................................18
   A.5 SMTP Example .................................................19
   Authors' Addresses ...............................................20
   Full Copyright Statement..........................................21
        
1. The SNMP Network Management Framework
1. SNMP网络管理框架

The SNMP Management Framework presently consists of five major components:

SNMP管理框架目前由五个主要组件组成:

o An overall architecture, described in RFC 2571 [RFC2571].

o RFC 2571[RFC2571]中描述的总体架构。

o Mechanisms for describing and naming objects and events for the purpose of management. The first version of this Structure of Management Information (SMI) is called SMIv1 and is described in STD 16, RFC 1155 [RFC1155], STD 16, RFC 1212 [RFC1212] and

o 为管理目的描述和命名对象和事件的机制。这种管理信息结构(SMI)的第一个版本称为SMIv1,在STD 16、RFC 1155[RFC1155]、STD 16、RFC 1212[RFC1212]和

RFC 1215 [RFC1215]. The second version, called SMIv2, is described in STD 58, RFC 2578 [RFC2578], RFC 2579 [RFC2579] and RFC 2580 [RFC2580].

RFC 1215[RFC1215]。第二个版本称为SMIv2,在STD 58、RFC 2578[RFC2578]、RFC 2579[RFC2579]和RFC 2580[RFC2580]中进行了描述。

o Message protocols for transferring management information. The first version of the SNMP message protocol is called SNMPv1 and is described in STD 15, RFC 1157 [RFC1157]. A second version of the SNMP message protocol, which is not an Internet standards track protocol, is called SNMPv2c and is described in RFC 1901 [RFC1901] and RFC 1906 [RFC1906]. The third version of the message protocol is called SNMPv3 and is described in RFC 1906 [RFC1906], RFC 2572 [RFC2572] and RFC 2574 [RFC2574].

o 用于传输管理信息的消息协议。SNMP消息协议的第一个版本称为SNMPv1,在STD 15、RFC 1157[RFC1157]中进行了描述。SNMP消息协议的第二个版本不是Internet标准跟踪协议,称为SNMPv2c,在RFC 1901[RFC1901]和RFC 1906[RFC1906]中进行了描述。消息协议的第三个版本称为SNMPv3,在RFC 1906[RFC1906]、RFC 2572[RFC2572]和RFC 2574[RFC2574]中进行了描述。

o Protocol operations for accessing management information. The first set of protocol operations and associated PDU formats is described in STD 15, RFC 1157 [RFC1157]. A second set of protocol operations and associated PDU formats is described in RFC 1905 [RFC1905].

o 访问管理信息的协议操作。STD 15、RFC 1157[RFC1157]中描述了第一组协议操作和相关PDU格式。RFC 1905[RFC1905]中描述了第二组协议操作和相关PDU格式。

o A set of fundamental applications is described in RFC 2573 [RFC2573]. The view-based access control mechanism is described in RFC 2575 [RFC2575].

o RFC 2573[RFC2573]中描述了一组基本应用。RFC 2575[RFC2575]中描述了基于视图的访问控制机制。

A more detailed introduction to the current SNMP Management Framework can be found in RFC 2570 [RFC2570].

有关当前SNMP管理框架的更详细介绍,请参见RFC 2570[RFC2570]。

Managed objects are accessed via a virtual information store, termed the Management Information Base or MIB. Objects in the MIB are defined using the mechanisms defined in the SMI.

托管对象通过虚拟信息存储(称为管理信息库或MIB)进行访问。MIB中的对象是使用SMI中定义的机制定义的。

This memo does not specify a MIB module.

此备忘录未指定MIB模块。

2. Overview
2. 概述

There is a need for a standardized way of identifying the protocol operations defined for particular application protocols. Different protocol operations can have very different performance characteristics, and it is desirable to collect certain metrics at this level of granularity. This memo defines extensions to the existing protocol identifier structure [RFC2895] and is intended to update, not obsolete, the existing protocol identifier encoding rules.

需要一种标准化的方法来识别为特定应用协议定义的协议操作。不同的协议操作可能具有非常不同的性能特征,因此需要在此粒度级别收集某些度量。本备忘录定义了对现有协议标识符结构[RFC2895]的扩展,旨在更新而非废弃现有协议标识符编码规则。

2.1 Protocol Identifier Framework
2.1 协议标识符框架

The RMON Protocol Identifier (PI) structure [RFC2895] allows for a variable number of layer identifiers. Each layer contributes 4 octets to the protocolDirID OCTET STRING and one octet to the

RMON协议标识符(PI)结构[RFC2895]允许可变数量的层标识符。每层向protocolDirID八位字节字符串贡献4个八位字节,向protocolDirID八位字节字符串贡献一个八位字节

protocolDirParameters OCTET STRING. These two MIB objects comprise the index in the protocolDirTable [RFC2021] and represent a globally unique identifier for a particular protocol encapsulation (or set of encapsulations if the wild-card base layer is used).

protocolDirParameters八位组字符串。这两个MIB对象构成protocolDirTable[RFC2021]中的索引,并表示特定协议封装(或封装集,如果使用通配符基本层)的全局唯一标识符。

2.2 Protocol Identifier Extensions for Application Verbs
2.2 应用程序谓词的协议标识符扩展

The existing RMON protocol identifier architecture requires that an application verb be represented by one additional protocol layer, appended to the protocol identifier for the parent application. Since some application verbs are defined as strings which can exceed 4 octets in length, an integer mapping must be provided for each string. This memo specifies how the verb layer is structured, as well as a verb identifier macro syntax for specification of verb name to integer mappings.

现有的RMON协议标识符体系结构要求应用程序谓词由附加到父应用程序的协议标识符的一个附加协议层表示。由于某些应用程序谓词定义为长度超过4个八位字节的字符串,因此必须为每个字符串提供整数映射。此备忘录指定谓词层的结构,以及用于指定谓词名称到整数映射的谓词标识符宏语法。

2.3 Terms
2.3 条款

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119].

本文件中的关键词“必须”、“不得”、“要求”、“应”、“不应”、“应”、“不应”、“建议”、“可”和“可选”应按照RFC 2119[RFC2119]中所述进行解释。

This document uses some terms defined in the RMON Protocol Identifier Reference document [RFC2895] and some new terms that need introduction here.

本文件使用了RMON协议标识符参考文件[RFC2895]中定义的一些术语,以及需要在此介绍的一些新术语。

Application Verb Also called simply 'verb'. Refers to one of potentially many protocol operations that are defined by a particular application protocol.

应用程序动词也称为“动词”。指由特定应用程序协议定义的潜在多个协议操作之一。

Note that an application verb is not equivalent to an application protocol sub-command or opcode within a packet containing a PDU for the application. An application verb is a transaction type and may involve several PDU types within the application protocol (e.g., SNMP Get-PDU and Response-PDU). In some applications, a verb may encompass protocol operations pertaining to more than one protocol entry in the protocol directory (e.g., ftp and ftp-data).

请注意,应用程序谓词并不等同于包含应用程序PDU的数据包中的应用程序协议子命令或操作码。应用程序动词是一种事务类型,可能涉及应用程序协议中的几种PDU类型(例如,SNMP Get PDU和Response PDU)。在某些应用程序中,动词可能包含与协议目录中的多个协议条目(例如ftp和ftp数据)相关的协议操作。

Connect Verb The special application verb associated with connection or session setup and tear-down traffic, and not attributed to any other verb for the application. This verb is assigned the enumeration value of zero, and the verb 'connect(0)' is implicitly defined for all application protocols.

连接动词与连接或会话设置和中断通信相关联的特殊应用程序动词,不属于应用程序的任何其他动词。此谓词的枚举值为零,并且为所有应用程序协议隐式定义了谓词“connect(0)”。

Parent Application One of potentially many protocol encapsulations which identifies a particular application protocol. This term refers generically to any or all such encapsulations for a given set of application verbs.

父应用程序标识特定应用程序协议的潜在多个协议封装之一。该术语泛指给定应用程序谓词集的任何或所有此类封装。

Verb Layer The portion of the protocol identifier octet string which identifies the application verb.

谓词层协议标识符八位字节字符串中标识应用程序谓词的部分。

Verb Set The group of verbs enumerated for a particular application protocol. The list of verb strings within a particular verb-identifier macro invocation is also called the verb set for that verb identifier.

谓词集为特定应用程序协议枚举的谓词组。特定谓词标识符宏调用中的谓词字符串列表也称为该谓词标识符的谓词集。

2.4 Relationship to the RMON-2 MIB
2.4 与RMON-2 MIB的关系

The RMON-2 MIB [RFC2021] contains the protocolDirTable MIB objects used to identify all protocol encapsulations that can be monitored by a particular RMON agent.

RMON-2 MIB[RFC2021]包含protocolDirTable MIB对象,用于标识可由特定RMON代理监控的所有协议封装。

This memo describes how these MIB objects are mapped by an implementation for entries which identify application verbs. This document does not define any new MIB objects to identify application verbs. The applicability of the definitions in this document is not limited to the RMON-2 MIB. Other specifications which utilize the RMON-2 protocolDirTable and/or the protocol identifier macros which it represents can also utilize the application verb macro definitions contained in this document.

此备忘录描述了这些MIB对象是如何由一个用于标识应用程序谓词的条目的实现映射的。本文档不定义任何新的MIB对象来标识应用程序谓词。本文件中定义的适用性不限于RMON-2 MIB。使用RMON-2 protocolDirTable和/或其代表的协议标识符宏的其他规范也可以使用本文档中包含的应用程序动词宏定义。

2.5 Relationship to the RMON MIB Protocol Identifier Reference
2.5 与RMON MIB协议标识符引用的关系

The RMON MIB Protocol Identifier Reference [RFC2895] defines the RMON Protocol Identifier Macro Specification Language as well as the encoding rules for the ProtocolDirID and protocolDirParameters OCTET STRINGs. This memo defines extensions to the Protocol Identifier Reference for the identification of application verb information. It does not obsolete any portion of the Protocol Identifier Reference document.

RMON MIB协议标识符参考[RFC2895]定义了RMON协议标识符宏规范语言以及ProtocolDirID和protocolDirParameters八位字符串的编码规则。本备忘录定义了协议标识符参考的扩展,用于识别应用程序动词信息。它不会废弃协议标识符参考文档的任何部分。

3. Definitions
3. 定义
3.1 Verb Identifier Macro Format
3.1 动词标识符宏格式

The following example is meant to introduce the verb-identifier macro. This macro-like construct is used to represent protocol verbs for a specific parent application.

下面的示例旨在介绍谓词标识符宏。此类似宏的构造用于表示特定父应用程序的协议谓词。

3.1.1 Lexical Conventions
3.1.1 词法约定

The following keyword is added to the PI language:

将以下关键字添加到PI语言中:

VERB-IDENTIFIER

动词标识符

3.1.2 Extended Grammar for the PI Language
3.1.2 PI语言的扩展语法

The following is the extended BNF notation for the grammar with starting symbol <piFile>. It is for representing verb identifier macros. Note that only the term <piFile> is actually modified from the definition in [RFC2895]. The <piDefinition> syntax is not reproduced here, since this memo is intended to extend that definition, not replace it.

以下是起始符号为<piFile>的语法的扩展BNF表示法。它用于表示动词标识符宏。请注意,实际上只有术语<piFile>根据[RFC2895]中的定义进行了修改。此处不复制<piDefinition>语法,因为本备忘录旨在扩展该定义,而不是取代该定义。

       -- a file containing one or more
       -- Protocol Identifier (PI) definitions
       <piFile> = [ <piDefinition> | <piVerbDefinition> ]...
        
       -- a file containing one or more
       -- Protocol Identifier (PI) definitions
       <piFile> = [ <piDefinition> | <piVerbDefinition> ]...
        
       -- a PI definition
       <piVerbDefinition> =
         [<wspace>] <parentProtoName> <wspace> "VERB-IDENTIFIER"
               <wspace> "DESCRIPTION" <wspace> string
             [ <wspace> "REFERENCE" <wspace> string ]
             [<wspace>] "::=" [<wspace>]
             "{" [<wspace>] <verbList> [<wspace>] "}" [<wspace>]
        
       -- a PI definition
       <piVerbDefinition> =
         [<wspace>] <parentProtoName> <wspace> "VERB-IDENTIFIER"
               <wspace> "DESCRIPTION" <wspace> string
             [ <wspace> "REFERENCE" <wspace> string ]
             [<wspace>] "::=" [<wspace>]
             "{" [<wspace>] <verbList> [<wspace>] "}" [<wspace>]
        
       -- a list of verb identifier string
       <verbList> = <verbId> [ [<wspace>] "," [<wspace>] <verbId> ]...
        
       -- a list of verb identifier string
       <verbList> = <verbId> [ [<wspace>] "," [<wspace>] <verbId> ]...
        
       -- a verb identifier string
       <verbId> = <verbName> [<wspace>] "(" [<wspace>]
                 <verbEnum> [<wspace>] ")" [<wspace>]
        
       -- a verb identifier string
       <verbId> = <verbName> [<wspace>] "(" [<wspace>]
                 <verbEnum> [<wspace>] ")" [<wspace>]
        
       -- a protocol name
       <parentProtoName> = <protoName>
        
       -- a protocol name
       <parentProtoName> = <protoName>
        
       -- a verb name
       <verbName> = <lcname>
        
       -- a verb name
       <verbName> = <lcname>
        
       -- a verb enumeration
       <verbEnum> = <posNum>
        
       -- a verb enumeration
       <verbEnum> = <posNum>
        

-- a positive integer <posNum> = any integer value greater than zero and less than 16,777,216

--正整数<posNum>=大于零且小于16777216的任何整数值

-- <piDefinition> syntax is defined in [RFC2895]

--[RFC2895]中定义了语法

       -- <protoName> syntax is defined in [RFC2895]
       -- <wspace> syntax is defined in [RFC2895]
       -- <lcname> syntax is defined in [RFC2895]
        
       -- <protoName> syntax is defined in [RFC2895]
       -- <wspace> syntax is defined in [RFC2895]
       -- <lcname> syntax is defined in [RFC2895]
        
3.1.3 Mapping of the Parent Protocol Name
3.1.3 父协议名称的映射

The "parentProtoName" value, called the "parent protocol name", SHOULD be an ASCII string consisting of 1 to 64 characters. (These names are intended to appear in IETF documentation, so the use of UTF-8 is not appropriate.) The encoding rules are exactly as specified in section 6.2.4 of [RFC2895] for the mapping of the protocol name field. The value for <parentProtoName> (which is called the "parent protocol name") MUST be the value of a protocol identifier defined as specified for <protoName> in section 3.2.4 of [RFC2895]. The value of <parentProtoName> MUST specify a <protoName> defined in the <piFile>.

“parentProtoName”值,称为“父协议名”,应该是由1到64个字符组成的ASCII字符串。(这些名称旨在出现在IETF文档中,因此使用UTF-8是不合适的。)编码规则与[RFC2895]第6.2.4节中关于协议名称字段映射的规定完全相同。<parentProtoName>(称为“父协议名”)的值必须是[RFC2895]第3.2.4节中为<protoName>定义的协议标识符的值。<parentProtoName>的值必须指定在<piFile>中定义的<protoName>。

A protocol identifier macro SHOULD exist in the <piFile> for at least one encapsulation of the parent application protocol if any verb identifier macros referencing that parent application are present in the <piFile>.

如果在<piFile>中存在引用父应用程序的任何谓词标识符宏,则对于父应用程序协议的至少一个封装,<piFile>中应存在协议标识符宏。

3.1.4 Mapping of the DESCRIPTION Clause
3.1.4 描述子句的映射

The DESCRIPTION clause provides a textual description of the protocol verb set identified by this macro. It SHOULD NOT contain details about items covered by the REFERENCE clause. The DESCRIPTION clause MUST be present in all verb-identifier macro declarations.

DESCRIPTION子句提供此宏标识的协议谓词集的文本描述。不应包含参考条款所涵盖项目的详细信息。DESCRIPTION子句必须出现在所有动词标识符宏声明中。

3.1.5 Mapping of the REFERENCE Clause
3.1.5 引用子句的映射

If a publicly available reference document exists for this set of application protocol verbs, it SHOULD be listed here. Typically this will be a URL, otherwise it will be the name and address of the controlling body.

如果存在这组应用程序协议谓词的公开参考文档,则应在此处列出。通常这将是一个URL,否则它将是控制机构的名称和地址。

The REFERENCE clause is optional but SHOULD be present if an authoritative reference exists which specifies the application protocol verbs defined in the <verbList> section of this macro.

REFERENCE子句是可选的,但如果存在指定在此宏的<verbList>部分中定义的应用程序协议谓词的权威引用,则应该存在REFERENCE子句。

3.1.6 Mapping of the Verb List Clause
3.1.6 动词列表子句的映射

The verb list clause MUST be present. It is used to identify a list of application verb names and associate a numeric constant with each verb name. At least one verb MUST be specified and a maximum of 16,777,215 (2^^24 - 1) verbs MAY be specified. This enumerated list SHOULD be densely numbered (i.e., valued from '1' to 'N', where 'N' is the total number of verbs defined in the macro).

动词列表子句必须存在。它用于标识应用程序谓词名称列表,并将数字常量与每个谓词名称关联。必须至少指定一个动词,最多可以指定16777215(2^^24-1)个动词。此枚举列表应密集编号(即,值从“1”到“N”,其中“N”是宏中定义的动词总数)。

3.1.6.1 Mapping of the Verb Name Field
3.1.6.1 动词名称字段的映射

The <verbName> field is case-sensitive and SHOULD be set to the most appropriate string name for each application verb. If such a descriptive string is defined in an authoritative document then that string SHOULD be used. If no such string exists then an appropriate but arbitrary string should be selected for this value.

<verbName>字段区分大小写,应该为每个应用程序谓词设置最合适的字符串名称。如果权威文档中定义了此类描述性字符串,则应使用该字符串。如果不存在此类字符串,则应为此值选择适当但任意的字符串。

Verb names MUST be unique for a particular parent application. Note that the special 'connect(0)' verb is implicitly defined for each application protocol. It is possible for an explicit definition of this verb (e.g., 'connect(8)' for http) to exist for a protocol, as well as the implicit 'connect(0)' verb.

特定父应用程序的谓词名称必须是唯一的。请注意,为每个应用程序协议隐式定义了特殊的“连接(0)”谓词。对于协议,可能存在此动词的显式定义(例如,http的“connect(8)”,以及隐式的“connect(0)”动词。

3.1.6.2 Mapping of the Verb Enum Field
3.1.6.2 谓词枚举字段的映射

The <verbEnum> field MUST be unique for all verbs associated with a particular parent application. This field SHOULD contain a value between '1' and '16,777,215' inclusive.

对于与特定父应用程序关联的所有谓词,<verbEnum>字段必须是唯一的。此字段应包含一个介于“1”和“16777215”之间(包括“1”)的值。

3.2 Protocol Directory Requirements
3.2 协议目录要求

This section defines how the protocolDirTable should be populated for any application verb identified with a verb-identifier macro.

本节定义如何为使用谓词标识符宏标识的任何应用程序谓词填充protocolDirTable。

An agent MUST implement all applicable protocolDirTable MIB objects on behalf of each supported application verb.

代理必须代表每个受支持的应用程序谓词实现所有适用的protocolDirTable MIB对象。

3.2.1 Mapping of the Verb Layer Numbering Space
3.2.1 动词层编号空间的映射

The verb layer consists of the 4 octets within the protocolDirID INDEX field which identify a particular application verb.

谓词层由protocolDirID索引字段中的4个八位字节组成,用于标识特定的应用程序谓词。

                     Figure 1
                 Verb Layer Format
                 -----------------
        
                     Figure 1
                 Verb Layer Format
                 -----------------
        
            protocolDirID string fragment
        ---+--------+--------+--------+--------+
           | resrvd |                          |
        .. | set to |  verb enumeration value  |
           | zero   |   (a)     (b)      (c)   |
        ---+--------+--------+--------+--------+ octet
           |    1   |             3            | count
        
            protocolDirID string fragment
        ---+--------+--------+--------+--------+
           | resrvd |                          |
        .. | set to |  verb enumeration value  |
           | zero   |   (a)     (b)      (c)   |
        ---+--------+--------+--------+--------+ octet
           |    1   |             3            | count
        

The first octet is reserved for future use and MUST be set to zero.

第一个八位字节保留供将来使用,必须设置为零。

The next three octets identify the <verbEnum> field used to enumerate the particular application verb represented by the <verbName> field. This field is a 24-bit unsigned integer, encoded in network byte order.

接下来的三个八位字节标识用于枚举由<verbName>字段表示的特定应用程序动词的<verbEnum>字段。此字段是一个24位无符号整数,按网络字节顺序编码。

The value zero is reserved to identify the special 'connect(0)' verb. This verb enumeration value (i.e., '0' part of 'connect(0)') MUST NOT be redefined in a verb identifier macro verb list. Note that the verb name 'connect' is not reserved and MAY be redefined in a verb list.

保留值0以标识特殊的“连接(0)”谓词。不得在谓词标识符宏谓词列表中重新定义此谓词枚举值(即“连接(0)”的“0”部分)。请注意,动词名称“connect”不是保留的,可以在动词列表中重新定义。

3.2.2 Mapping of the ProtocolDirID object
3.2.2 ProtocolDirID对象的映射

The protocolDirID OCTET STRING value for a particular application verb is represented by the protocolDirID value for the parent application, appended with the verb's layer identifier value.

特定应用程序谓词的protocolDirID八位字节字符串值由父应用程序的protocolDirID值表示,并附加谓词的层标识符值。

                        Figure 2
              ProtocolDirID Format for Verbs
              ------------------------------
        
                        Figure 2
              ProtocolDirID Format for Verbs
              ------------------------------
        
                protocolDirID string
           +--------+--------+--------+--------+
           |        parent            |  verb  |
           |    protocolDirID         | layer  |
           |        string            | value  |
           +--------+--------+--------+--------+ octet
           |   length of parent ID    |   4    | count
        
                protocolDirID string
           +--------+--------+--------+--------+
           |        parent            |  verb  |
           |    protocolDirID         | layer  |
           |        string            | value  |
           +--------+--------+--------+--------+ octet
           |   length of parent ID    |   4    | count
        

The protocolDirID object is encoded as the protocolDirID value of the parent application, followed by four additional octets representing the verb layer. The verb layer value is encoded as [0.a.b.c] where 'a' is the high order byte, 'b' is the middle order byte, and 'c' is the low order byte of the <verbEnum> field for the specific application verb value. A valid PI verb enumeration will be encoded in the range "0.0.0.0" to "0.255.255.255", where the special value "0.0.0.0" is reserved for the implicitly defined 'connect(0)' verb.

protocolDirID对象编码为父应用程序的protocolDirID值,后跟表示谓词层的四个附加八位字节。谓词层值编码为[0.a.b.c],其中“a”是高阶字节,“b”是中阶字节,“c”是特定应用程序谓词值的<verbEnum>字段的低阶字节。有效的PI谓词枚举将在“0.0.0.0”到“0.255.255.255”范围内编码,其中为隐式定义的“连接(0)”谓词保留特殊值“0.0.0.0”。

3.2.3 Mapping of the ProtocolDirParameters object
3.2.3 ProtocolDirParameters对象的映射

The protocolDirParameters OCTET STRING value for a particular application verb is represented by the protocolDirParameters value for the parent application, appended with one octet containing the value zero. Although not actually used, this field is included to conform to the encoding rules defined in the Protocol Identifiers Reference [RFC2895].

特定应用程序谓词的protocolDirParameters八位组字符串值由父应用程序的protocolDirParameters值表示,并附加一个包含值零的八位组。尽管未实际使用,但包含此字段是为了符合协议标识符参考[RFC2895]中定义的编码规则。

3.2.4 Mapping of the ProtocolDirLocalIndex object
3.2.4 ProtocolDirLocalIndex对象的映射

The agent MUST assign an appropriate protocolDirLocalIndex value for each application verb according to the encoding rules defined for this object in [RFC2021] and [RFC2895].

代理必须根据[RFC2021]和[RFC2895]中为此对象定义的编码规则,为每个应用程序谓词分配适当的protocolDirLocalIndex值。

3.2.5 Mapping of the protocolDirDescr object
3.2.5 protocolDirDescr对象的映射

The agent MUST convey the <verbName> value for a particular application verb in the protocolDirDescr object. This object SHOULD be encoded as the protocolDirDescr value for the parent application appended with a 'dot' character, followed by the exact text contained in the <verbName> field.

代理必须为protocolDirDescr对象中的特定应用程序谓词传递<verbName>值。此对象应编码为父应用程序的protocolDirDescr值,并附加一个“点”字符,后跟<verbName>字段中包含的确切文本。

3.2.6 Mapping of the protocolDirType object
3.2.6 protocolDirType对象的映射

The agent MUST set the protocolDirType object for each application verb to the value representing the empty bit set ( {} ).

代理必须将每个应用程序谓词的protocolDirType对象设置为表示空位集({})的值。

3.2.7 Mapping of the protocolDirAddressMapConfig object
3.2.7 protocolDirAddressMapConfig对象的映射

The agent MUST set the protocolDirAddressMapConfig object for each application verb to the value 'notSupported(1)'.

代理必须将每个应用程序谓词的protocolDirAddressMapConfig对象设置为值“notSupported(1)”。

3.2.8 Mapping of the protocolDirHostConfig object
3.2.8 protocolDirHostConfig对象的映射

The agent MUST set the protocolDirHostConfig object for each application verb present in the protocol directory according to the monitoring capabilities for each verb. The agent MAY set this object to the same value as configured in the parent application protocolDirHostConfig object. The agent MAY choose to transition this object from the value 'supportedOn(2)' to 'supportedOff(3)' if the parent application protocolDirHostConfig object first transitions from 'supportedOn(2)' to 'supportedOff(3)'.

代理必须根据每个谓词的监视功能,为协议目录中存在的每个应用程序谓词设置protocolDirHostConfig对象。代理可以将此对象设置为在父应用程序protocolDirHostConfig对象中配置的相同值。如果父应用程序protocolDirHostConfig对象首先从“supportedOn(2)”转换为“supportedOff(3)”,则代理可以选择将此对象从值“supportedOn(2)”转换为“supportedOff(3)”。

3.2.9 Mapping of the protocolDirMatrixConfig object
3.2.9 protocolDirMatrixConfig对象的映射

The agent MUST set the protocolDirMatrixConfig object for each application verb according to the monitoring capabilities for each verb. The agent MAY set this object to the same value as configured in the parent application protocolDirMatrixConfig object. The agent MAY choose to transition this object from the value 'supportedOn(2)' to 'supportedOff(3)' if the parent application protocolDirMatrixConfig object first transitions from 'supportedOn(2)' to 'supportedOff(3)'.

代理必须根据每个谓词的监视功能为每个应用程序谓词设置protocolDirMatrixConfig对象。代理可以将此对象设置为在父应用程序protocolDirMatrixConfig对象中配置的相同值。如果父应用程序protocolDirMatrixConfig对象首先从“supportedOn(2)”转换为“supportedOff(3)”,则代理可以选择将此对象从值“supportedOn(2)”转换为“supportedOff(3)”。

3.2.10 Mapping of the protocolDirOwner object
3.2.10 protocolDirOwner对象的映射

This object is encoded exactly the same for application verbs as for other protocolDirTable entries, according to the rules specified in the RMON-2 MIB [RFC2021].

根据RMON-2 MIB[RFC2021]中指定的规则,应用程序谓词对该对象的编码与其他protocolDirTable项的编码完全相同。

3.2.11 Mapping of the protocolDirStatus object
3.2.11 protocolDirStatus对象的映射

This object is encoded exactly the same for application verbs as for other protocolDirTable entries, according to the rules specified in RMON-2 MIB [RFC2021].

根据RMON-2 MIB[RFC2021]中指定的规则,应用程序谓词对该对象的编码与其他protocolDirTable项的编码完全相同。

4. Implementation Considerations
4. 实施考虑

This section discusses the implementation implications for agents which support verbs in the protocol directory and the RMON collections which utilize the protocol directory.

本节讨论支持协议目录中动词的代理和使用协议目录的RMON集合的实现含义。

4.1 Stateful Protocol Decoding
4.1 有状态协议解码

Implementations of the RMON-2 MIB for application layer and network layer protocols typically require little if any state to be maintained by the probe. The probe can generally decide whether to count a packet and its octets on the packet's own merits, without referencing or updating any state information.

应用层和网络层协议的RMON-2 MIB的实现通常只需要探测器维护很少的状态。探测器通常可以根据数据包自身的优点决定是否对数据包及其八位字节进行计数,而无需参考或更新任何状态信息。

Implementations of the RMON-2 MIB at the verb layer will, for many protocols, need to maintain state information in order to correctly classify a packet as "belonging" to one verb or another. The examples below illustrate this point.

对于许多协议来说,动词层的RMON-2 MIB实现将需要维护状态信息,以便正确地将数据包分类为“属于”一个动词或另一个动词。下面的例子说明了这一点。

For SNMP over UDP, a Response-PDU for an SNMP Get-PDU can't be distinguished from a Response-PDU for a Getnext-PDU. A probe would need to maintain state information in order to correlate a Response-PDU from B to A with a previous request from A to B.

对于UDP上的SNMP,无法将SNMP Get PDU的响应PDU与Getnext PDU的响应PDU区分开来。探测器需要维护状态信息,以便将从B到A的响应PDU与从A到B的先前请求关联起来。

For application protocols carried over a stream-based transport such as TCP, the information required to identify an application verb can span several packets. A probe would need to follow the transport-layer flow in order to correctly parse the application-layer data.

对于通过基于流的传输(如TCP)承载的应用程序协议,标识应用程序谓词所需的信息可以跨越多个数据包。为了正确解析应用层数据,探测器需要遵循传输层流。

4.2 Packet Capture
4.2 数据包捕获

For packet capture based on verb-layer protocol directory filtering, the decision to include a packet in the capture buffer may need to be deferred until the packet can be conclusively attributed to a

对于基于动词层协议目录过滤的数据包捕获,将数据包包括在捕获缓冲区中的决定可能需要延迟,直到该数据包可以最终归属于某个用户

particular verb. A probe may need to pre-buffer packets while deciding to include or exclude them from capture based on other packets that have not yet arrived.

特殊动词。探测器可能需要预先缓冲数据包,同时根据尚未到达的其他数据包决定将其包括或排除在捕获之外。

4.3 RMON-2 MIB Collections
4.3 RMON-2 MIB集合

Data collections such as the protocol distribution or Application Layer Host Table (alHostTable) require that each packet is counted only once, i.e., a given packet is fully classified as a single protocol encapsulation which resolves to a single leaf entry in the protocol directory. Also, octet counters related to protocol classification are incremented by the entire size of packet, not just the octets associated with a particular encapsulation layer.

协议分发或应用层主机表(alHostTable)等数据收集要求每个数据包仅计数一次,即,给定数据包完全分类为单个协议封装,解析为协议目录中的单个叶条目。此外,与协议分类相关的八位字节计数器将按数据包的整个大小递增,而不仅仅是与特定封装层相关的八位字节。

It is possible that particular application protocols will allow multiple types of verbs to be present in a single packet. In this case, the agent MUST choose one verb type, and therefore one protocol directory entry, in order to properly count such a packet.

特定的应用程序协议可能允许在单个数据包中存在多种类型的动词。在这种情况下,代理必须选择一种动词类型,并因此选择一个协议目录条目,以便正确计算这样的数据包。

It is an implementation-specific matter as to which verb type an agent selects to identify a packet in the event more than one verb type is present in that packet. Some possible choices include:

当一个数据包中存在多个动词类型时,代理选择哪个动词类型来标识该数据包是一个实现特定的问题。一些可能的选择包括:

- the first verb type encountered in the packet

- 数据包中遇到的第一个谓词类型

- the verb type with the most instances in the packet

- 数据包中实例最多的动词类型

- the verb type using the largest number of octets in the packet

- 使用数据包中最大八位字节数的动词类型

- the most 'interesting' verb type in the packet (based on knowledge of that application protocol).

- 数据包中最“有趣”的动词类型(基于该应用程序协议的知识)。

5. Intellectual Property
5. 知识产权

The IETF takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on the IETF's procedures with respect to rights in standards-track and standards-related documentation can be found in BCP-11. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification can be obtained from the IETF Secretariat.

IETF对可能声称与本文件所述技术的实施或使用有关的任何知识产权或其他权利的有效性或范围,或此类权利下的任何许可可能或可能不可用的程度,不采取任何立场;它也不表示它已作出任何努力来确定任何此类权利。有关IETF在标准跟踪和标准相关文件中权利的程序信息,请参见BCP-11。可从IETF秘书处获得可供发布的权利声明副本和任何许可证保证,或本规范实施者或用户试图获得使用此类专有权利的一般许可证或许可的结果。

The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to practice this standard. Please address the information to the IETF Executive Director.

IETF邀请任何相关方提请其注意任何版权、专利或专利申请,或其他可能涉及实施本标准所需技术的专有权利。请将信息发送给IETF执行董事。

6. Acknowledgements
6. 致谢

This memo is a product of the RMONMIB WG.

本备忘录是RMONMIB工作组的产品。

7. Normative References
7. 规范性引用文件

[RFC1905] SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M. and S. Waldbusser, "Protocol Operations for Version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1905, January 1996.

[RFC1905]SNMPv2工作组,Case,J.,McCloghrie,K.,Rose,M.和S.Waldbusser,“简单网络管理协议(SNMPv2)版本2的协议操作”,RFC 1905,1996年1月。

[RFC1906] SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M. and S. Waldbusser, "Transport Mappings for Version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1906, January 1996.

[RFC1906]SNMPv2工作组,Case,J.,McCloghrie,K.,Rose,M.和S.Waldbusser,“简单网络管理协议(SNMPv2)版本2的传输映射”,RFC 1906,1996年1月。

[RFC2021] Waldbusser, S., "Remote Network Monitoring MIB (RMON-2)", RFC 2021, January 1997.

[RFC2021]Waldbusser,S.,“远程网络监控MIB(RMON-2)”,RFC 20211997年1月。

[RFC2026] Bradner, S., "The Internet Standards Process -- Revision 3", BCP 9, RFC 2026, October 1996.

[RFC2026]Bradner,S.,“互联网标准过程——第3版”,BCP 9,RFC 2026,1996年10月。

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.

[RFC2119]Bradner,S.,“RFC中用于表示需求水平的关键词”,BCP 14,RFC 2119,1997年3月。

[RFC2571] Harrington, D., Presuhn, R. and B. Wijnen, "An Architecture for Describing SNMP Management Frameworks", RFC 2571, April 1999.

[RFC2571]Harrington,D.,Presohn,R.和B.Wijnen,“描述SNMP管理框架的体系结构”,RFC 2571,1999年4月。

[RFC2572] Case, J., Harrington D., Presuhn R. and B. Wijnen, "Message Processing and Dispatching for the Simple Network Management Protocol (SNMP)", RFC 2572, April 1999.

[RFC2572]Case,J.,Harrington D.,Presohn R.和B.Wijnen,“简单网络管理协议(SNMP)的消息处理和调度”,RFC 2572,1999年4月。

[RFC2573] Levi, D., Meyer, P. and B. Stewart, "SNMPv3 Applications", RFC 2573, April 1999.

[RFC2573]Levi,D.,Meyer,P.和B.Stewart,“SNMPv3应用”,RFC 2573,1999年4月。

[RFC2574] Blumenthal, U. and B. Wijnen, "User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3)", RFC 2574, April 1999.

[RFC2574]Blumenthal,U.和B.Wijnen,“简单网络管理协议(SNMPv3)第3版基于用户的安全模型(USM)”,RFC 2574,1999年4月。

[RFC2575] Wijnen, B., Presuhn, R. and K. McCloghrie, "View-based Access Control Model (VACM) for the Simple Network Management Protocol (SNMP)", RFC 2575, April 1999.

[RFC2575]Wijnen,B.,Presohn,R.和K.McCloghrie,“用于简单网络管理协议(SNMP)的基于视图的访问控制模型(VACM)”,RFC 2575,1999年4月。

[RFC2578] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M. and S. Waldbusser, "Structure of Management Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999.

[RFC2578]McCloghrie,K.,Perkins,D.,Schoenwaeld,J.,Case,J.,Rose,M.和S.Waldbusser,“管理信息的结构版本2(SMIv2)”,STD 58,RFC 2578,1999年4月。

[RFC2579] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M. and S. Waldbusser, "Textual Conventions for SMIv2", STD 58, RFC 2579, April 1999.

[RFC2579]McCloghrie,K.,Perkins,D.,Schoenwaeld,J.,Case,J.,Rose,M.和S.Waldbusser,“SMIv2的文本约定”,STD 58,RFC 2579,1999年4月。

[RFC2580] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M. and S. Waldbusser, "Conformance Statements for SMIv2", STD 58, RFC 2580, April 1999.

[RFC2580]McCloghrie,K.,Perkins,D.,Schoenwaeld,J.,Case,J.,Rose,M.和S.Waldbusser,“SMIv2的一致性声明”,STD 58,RFC 25801999年4月。

[RFC2895] Bierman, A., Bucci, C. and R. Iddon, "Remote Network Monitoring MIB Protocol Identifiers", RFC 2895, August 2000.

[RFC2895]Bierman,A.,Bucci,C.和R.Iddon,“远程网络监控MIB协议标识符”,RFC 28952000年8月。

8. Informative References
8. 资料性引用

[RFC1155] Rose, M. and K. McCloghrie, "Structure and Identification of Management Information for TCP/IP-based Internets", STD 16, RFC 1155, May 1990.

[RFC1155]Rose,M.和K.McCloghrie,“基于TCP/IP的互联网管理信息的结构和识别”,STD 16,RFC 1155,1990年5月。

[RFC1157] Case, J., Fedor, M., Schoffstall, M. and J. Davin, "Simple Network Management Protocol", STD 15, RFC 1157, May 1990.

[RFC1157]Case,J.,Fedor,M.,Schoffstall,M.和J.Davin,“简单网络管理协议”,STD 15,RFC 1157,1990年5月。

[RFC1212] Rose, M. and K. McCloghrie, "Concise MIB Definitions", STD 16, RFC 1212, March 1991.

[RFC1212]Rose,M.和K.McCloghrie,“简明MIB定义”,STD 16,RFC 1212,1991年3月。

[RFC1215] Rose, M., "A Convention for Defining Traps for use with the SNMP", RFC 1215, March 1991.

[RFC1215]Rose,M.,“定义用于SNMP的陷阱的约定”,RFC1215,1991年3月。

[RFC1901] SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M. and S. Waldbusser, "Introduction to Community-based SNMPv2", RFC 1901, January 1996.

[RFC1901]SNMPv2工作组,凯斯,J.,麦克洛赫里,K.,罗斯,M.和S.瓦尔德布瑟,“基于社区的SNMPv2简介”,RFC 19011996年1月。

[RFC2570] Case, J., Mundy, R., Partain, D. and B. Stewart, "Introduction to Version 3 of the Internet-standard Network Management Framework", RFC 2570, April 1999.

[RFC2570]Case,J.,Mundy,R.,Partain,D.和B.Stewart,“互联网标准网络管理框架第3版简介”,RFC 25701999年4月。

9. IANA Considerations
9. IANA考虑

At this time there are no application protocol verbs defined that require IANA registration, similar to the 'ianaAssigned' protocol identifiers found in RFC 2895. It is remotely possible that a future version of this document will contain application verb definitions which require assignment in the 'ianaAssigned' protocol identifier subtree.

目前没有定义需要IANA注册的应用程序协议谓词,类似于RFC 2895中的“IANAASigned”协议标识符。本文档的未来版本可能包含需要在“IANAASigned”协议标识符子树中赋值的应用程序动词定义。

10. Security Considerations
10. 安全考虑

This memo defines the structure of a portion of the Remote Monitoring MIB framework, but does not define any MIB objects or protocol operations. Instead, it defines algorithms for representing application protocol verbs in RMON Protocol Identifiers. It does not introduce any new security risks into a managed system.

此备忘录定义了远程监控MIB框架的一部分结构,但未定义任何MIB对象或协议操作。相反,它定义了在RMON协议标识符中表示应用程序协议谓词的算法。它不会给托管系统带来任何新的安全风险。

However, if an MIB collection is designed which utilizes this type of Protocol Identifier, then such a collection may expose which verbs in an application protocol are used in a network. Inclusion of this additional information may require more consideration for protection. MIB writers should address such considerations.

然而,如果设计的MIB集合使用这种类型的协议标识符,那么这样的集合可能会公开在网络中使用应用程序协议中的哪些谓词。包含此附加信息可能需要更多的保护考虑。MIB编写者应该解决这些问题。

Appendix A: Usage Examples

附录A:使用示例

The following examples are listed to demonstrate how RMON verb identifiers are declared.

下面列出的示例演示如何声明RMON谓词标识符。

A.1 FTP Example
A.1 FTP示例

This example defines verb enumeration values for the File Transfer Protocol as defined in RFC 959 and updated by RFC 2228 and RFC 2640. Note that verb name strings specified in the <verbName> field are not limited to 4 characters in length. In the FTP protocol, all the command names are 4 characters in length and the verb name string should match the official command name as closely as possible.

此示例定义了文件传输协议的谓词枚举值,如RFC 959中定义的,并由RFC 2228和RFC 2640更新。请注意,<verbName>字段中指定的动词名称字符串的长度不限于4个字符。在FTP协议中,所有命令名的长度均为4个字符,动词名称字符串应尽可能与官方命令名匹配。

   ftp VERB-IDENTIFIER
       DESCRIPTION
         "The set of verbs for FTP is derived from the list
          of commands defined for the File Transfer Protocol,
          which are identified by case-insensitive strings.
          The commands are simply listed in the order found
          in the FTP documentation."
       REFERENCE
         "File Transfer Protocol, RFC 959, Section 4.1;
          FTP Security Extensions, RFC 2228, Section 3;
          Internationalization of the File Transfer Protocol,
          RFC 2640, Section 4.1."
       ::= {
             user(1),     -- USER NAME
             pass(2),     -- PASSWORD
             acct(3),     -- ACCOUNT
             cwd(4),      -- CHANGE WORKING DIRECTORY
             cdup(5),     -- CHANGE TO PARENT DIRECTORY
             smnt(6),     -- STRUCTURE MOUNT
             rein(7),     -- REINITIALIZE
             quit(8),     -- LOGOUT
             port(9),     -- DATA PORT
             pasv(10),    -- PASSIVE
             type(11),    -- REPRESENTATION TYPE
             stru(12),    -- FILE STRUCTURE
             mode(13),    -- TRANSFER MODE
             retr(14),    -- RETRIEVE
             stor(15),    -- STORE
             stou(16),    -- STORE UNIQUE
             appe(17),    -- APPEND (with create)
             allo(18),    -- ALLOCATE
             rest(19),    -- RESTART
             rnfr(20),    -- RENAME FROM
             rnto(21),    -- RENAME TO
        
   ftp VERB-IDENTIFIER
       DESCRIPTION
         "The set of verbs for FTP is derived from the list
          of commands defined for the File Transfer Protocol,
          which are identified by case-insensitive strings.
          The commands are simply listed in the order found
          in the FTP documentation."
       REFERENCE
         "File Transfer Protocol, RFC 959, Section 4.1;
          FTP Security Extensions, RFC 2228, Section 3;
          Internationalization of the File Transfer Protocol,
          RFC 2640, Section 4.1."
       ::= {
             user(1),     -- USER NAME
             pass(2),     -- PASSWORD
             acct(3),     -- ACCOUNT
             cwd(4),      -- CHANGE WORKING DIRECTORY
             cdup(5),     -- CHANGE TO PARENT DIRECTORY
             smnt(6),     -- STRUCTURE MOUNT
             rein(7),     -- REINITIALIZE
             quit(8),     -- LOGOUT
             port(9),     -- DATA PORT
             pasv(10),    -- PASSIVE
             type(11),    -- REPRESENTATION TYPE
             stru(12),    -- FILE STRUCTURE
             mode(13),    -- TRANSFER MODE
             retr(14),    -- RETRIEVE
             stor(15),    -- STORE
             stou(16),    -- STORE UNIQUE
             appe(17),    -- APPEND (with create)
             allo(18),    -- ALLOCATE
             rest(19),    -- RESTART
             rnfr(20),    -- RENAME FROM
             rnto(21),    -- RENAME TO
        
             abor(22),    -- ABORT
             dele(23),    -- DELETE
             rmd(24),     -- REMOVE DIRECTORY
             mkd(25),     -- MAKE DIRECTORY
             pwd(26),     -- PRINT WORKING DIRECTORY
             list(27),    -- LIST
             nlst(28),    -- NAME LIST
             site(29),    -- SITE PARAMETERS
             syst(30),    -- SYSTEM
             stat(31),    -- STATUS
             help(32),    -- HELP
             noop(33),    -- NOOP
             auth(34),    -- AUTHENTICATION/SECURITY MECHANISM
             adat(35),    -- AUTHENTICATION/SECURITY DATA
             pbsz(36),    -- PROTECTION BUFFER SIZE
             prot(37),    -- DATA CHANNEL PROTECTION LEVEL
             ccc(38),     -- CLEAR COMMAND CHANNEL
             mic(39),     -- INTEGRITY PROTECTED COMMAND
             conf(40),    -- CONFIDENTIALITY PROTECTED COMMAND
             enc(41),     -- PRIVACY PROTECTED COMMAND
             lang(42)     -- LANGUAGE
      }
        
             abor(22),    -- ABORT
             dele(23),    -- DELETE
             rmd(24),     -- REMOVE DIRECTORY
             mkd(25),     -- MAKE DIRECTORY
             pwd(26),     -- PRINT WORKING DIRECTORY
             list(27),    -- LIST
             nlst(28),    -- NAME LIST
             site(29),    -- SITE PARAMETERS
             syst(30),    -- SYSTEM
             stat(31),    -- STATUS
             help(32),    -- HELP
             noop(33),    -- NOOP
             auth(34),    -- AUTHENTICATION/SECURITY MECHANISM
             adat(35),    -- AUTHENTICATION/SECURITY DATA
             pbsz(36),    -- PROTECTION BUFFER SIZE
             prot(37),    -- DATA CHANNEL PROTECTION LEVEL
             ccc(38),     -- CLEAR COMMAND CHANNEL
             mic(39),     -- INTEGRITY PROTECTED COMMAND
             conf(40),    -- CONFIDENTIALITY PROTECTED COMMAND
             enc(41),     -- PRIVACY PROTECTED COMMAND
             lang(42)     -- LANGUAGE
      }
        
A.2 POP3 Example
A.2 POP3示例

This example defines verb enumeration values for the Post Office Protocol, Version 3, as defined in RFC 1939 and updated by RFC 2449.

此示例定义了邮局协议版本3的动词枚举值,如RFC 1939中所定义,并由RFC 2449更新。

   pop3 VERB-IDENTIFIER
       DESCRIPTION
         "The set of verbs for POP3 is derived from the list
          of commands defined for the Post Office Protocol,
          which are identified by case-insensitive strings.
          The commands are simply listed in the order found
          in the POP3 command summary."
       REFERENCE
         "Post Office Protocol, Version 3, RFC 1939, Section 9;
          POP3 Extension Mechanism, RFC 2449, Section 5."
       ::= {
             user(1),
             pass(2),
             quit(3),
             stat(4),
             list(5),
             retr(6),
             dele(7),
             noop(8),
             rset(9),
        
   pop3 VERB-IDENTIFIER
       DESCRIPTION
         "The set of verbs for POP3 is derived from the list
          of commands defined for the Post Office Protocol,
          which are identified by case-insensitive strings.
          The commands are simply listed in the order found
          in the POP3 command summary."
       REFERENCE
         "Post Office Protocol, Version 3, RFC 1939, Section 9;
          POP3 Extension Mechanism, RFC 2449, Section 5."
       ::= {
             user(1),
             pass(2),
             quit(3),
             stat(4),
             list(5),
             retr(6),
             dele(7),
             noop(8),
             rset(9),
        

apop(10), top(11), uidl(12), capa(13) }

apop(10)、top(11)、uidl(12)、capa(13)}

A.3 SNMP Example
A.3 SNMP示例

This example defines verb enumeration values for the Simple Network Management Protocol, as defined in RFC 1905.

本例定义了RFC1905中定义的简单网络管理协议的动词枚举值。

   snmp VERB-IDENTIFIER
       DESCRIPTION
         "The set of verbs for SNMP is derived from the list
          of PDU transaction types in the Protocol Operations
          document for SNMPv2.  Note that the 'Response'
          and 'Report' PDUs are not considered verbs, but are
          classified as belonging to the transaction type
          associated with the request PDU."
       REFERENCE
         "Protocol Operations for Version 2 of the
          Simple Network Management Protocol (SNMPv2),
          RFC 1905, Section 3."
       ::= {
             get(1),
             get-next(2),
             get-bulk(3),
             set(4),
             inform-request(5),
             trap(6)
       }
        
   snmp VERB-IDENTIFIER
       DESCRIPTION
         "The set of verbs for SNMP is derived from the list
          of PDU transaction types in the Protocol Operations
          document for SNMPv2.  Note that the 'Response'
          and 'Report' PDUs are not considered verbs, but are
          classified as belonging to the transaction type
          associated with the request PDU."
       REFERENCE
         "Protocol Operations for Version 2 of the
          Simple Network Management Protocol (SNMPv2),
          RFC 1905, Section 3."
       ::= {
             get(1),
             get-next(2),
             get-bulk(3),
             set(4),
             inform-request(5),
             trap(6)
       }
        
A.4 HTTP Example
A.4 HTTP示例

This example defines verb enumeration values for the Hypertext Transfer Protocol, version 1.1, as defined in RFC 2616.

此示例定义了RFC 2616中定义的超文本传输协议版本1.1的动词枚举值。

http VERB-IDENTIFIER DESCRIPTION "The set of verbs for HTTP is derived from the list of methods defined for the Hypertext Transfer Protocol, which are identified by case-sensitive strings. The commands are simply listed in the order found in the HTTP/1.1 documentation. Methods commonly used in HTTP/1.0 are a proper subset of those used in HTTP/1.1. Both versions of the protocol are in current use." REFERENCE "Hypertext Transfer Protocol -- HTTP/1.1, RFC 2616,

http动词标识符描述HTTP的谓词集源自为超文本传输协议定义的方法列表,这些方法由区分大小写的字符串标识。这些命令只是按照HTTP/1.1文档中的顺序列出的。HTTP/1.0中常用的方法是HTTP/1.1中所用方法的适当子集。这两个版本的协议目前都在使用。“参考”超文本传输协议——HTTP/1.1,RFC 2616,

          Section 9; Hypertext Transfer Protocol -- HTTP/1.0, RFC
          1945, Section 8."
       ::= {
             options(1),
             get(2),
             head(3),
             post(4),
             put(5),
             delete(6),
             trace(7),
             connect(8)  -- reserved for future use by HTTP/1.1
       }
        
          Section 9; Hypertext Transfer Protocol -- HTTP/1.0, RFC
          1945, Section 8."
       ::= {
             options(1),
             get(2),
             head(3),
             post(4),
             put(5),
             delete(6),
             trace(7),
             connect(8)  -- reserved for future use by HTTP/1.1
       }
        
A.5 SMTP Example
A.5 SMTP示例

This example defines verb enumeration values for the Simple Mail Transfer Protocol as defined in RFC 2821.

此示例为RFC 2821中定义的简单邮件传输协议定义动词枚举值。

   smtp VERB-IDENTIFIER
       DESCRIPTION
       "The set of verbs for SMTP is derived from the set of commands
        defined for the protocol.  These commands are identified
        by case-insensitive strings.  Commands are listed in the
        order found in RFC 2821.  The special "xcmd" verb is defined
        here as a catch-all for private-use commands, which must
        start with the letter 'X'."
       REFERENCE
         "Simple Mail Transfer Protocol -- RFC 2821, sections 4.1.1
          and 4.1.5."
       ::= {
             ehlo(1),  -- Extended HELLO (4.1.1.1)
             helo(2),  -- HELLO (4.1.1.1)
             mail(3),  -- MAIL (4.1.1.2)
             rcpt(4),  -- RECIPIENT (4.1.1.3)
             data(5),  -- DATA (4.1.1.4)
             rset(6),  -- RESET (4.1.1.5)
             vrfy(7),  -- VERIFY (4.1.1.6)
             expn(8),  -- EXPAND (4.1.1.7)
             help(9),  -- HELP (4.1.1.8)
             noop(10), -- NOOP (4.1.1.9)
             quit(11), -- QUIT (4.1.1.10)
             xcmd(12)  -- Catch-all for private-use "X" commands (4.1.5)
       }
        
   smtp VERB-IDENTIFIER
       DESCRIPTION
       "The set of verbs for SMTP is derived from the set of commands
        defined for the protocol.  These commands are identified
        by case-insensitive strings.  Commands are listed in the
        order found in RFC 2821.  The special "xcmd" verb is defined
        here as a catch-all for private-use commands, which must
        start with the letter 'X'."
       REFERENCE
         "Simple Mail Transfer Protocol -- RFC 2821, sections 4.1.1
          and 4.1.5."
       ::= {
             ehlo(1),  -- Extended HELLO (4.1.1.1)
             helo(2),  -- HELLO (4.1.1.1)
             mail(3),  -- MAIL (4.1.1.2)
             rcpt(4),  -- RECIPIENT (4.1.1.3)
             data(5),  -- DATA (4.1.1.4)
             rset(6),  -- RESET (4.1.1.5)
             vrfy(7),  -- VERIFY (4.1.1.6)
             expn(8),  -- EXPAND (4.1.1.7)
             help(9),  -- HELP (4.1.1.8)
             noop(10), -- NOOP (4.1.1.9)
             quit(11), -- QUIT (4.1.1.10)
             xcmd(12)  -- Catch-all for private-use "X" commands (4.1.5)
       }
        

Authors' Addresses

作者地址

Andy Bierman Cisco Systems, Inc. 170 West Tasman Dr San Jose, CA USA 95134

安迪·比尔曼思科系统有限公司,美国加利福尼亚州圣何塞市西塔斯曼博士170号,邮编:95134

   Phone: +1 408-527-3711
   EMail: abierman@cisco.com
        
   Phone: +1 408-527-3711
   EMail: abierman@cisco.com
        

Chris Bucci Cisco Systems, Inc. 170 West Tasman Dr San Jose, CA USA 95134

Chris Bucci Cisco Systems,Inc.170美国加利福尼亚州圣何塞市西塔斯曼博士,邮编:95134

   Phone: +1 408-527-5337
   EMail: cbucci@cisco.com
        
   Phone: +1 408-527-5337
   EMail: cbucci@cisco.com
        

Russell Dietz Hifn, Inc. 750 University Ave Los Gatos, CA, USA 95032-7695

Russell Dietz Hifn,Inc.美国加利福尼亚州洛斯加托斯大学大道750号,邮编95032-7695

   Phone: +1 408-399-3623
   EMail: rdietz@hifn.com
        
   Phone: +1 408-399-3623
   EMail: rdietz@hifn.com
        

Albin Warth

阿尔宾沃思

   EMail: dahoss@earthlink.net
        
   EMail: dahoss@earthlink.net
        

Full Copyright Statement

完整版权声明

Copyright (C) The Internet Society (2002). All Rights Reserved.

版权所有(C)互联网协会(2002年)。版权所有。

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.

本文件及其译本可复制并提供给他人,对其进行评论或解释或协助其实施的衍生作品可全部或部分编制、复制、出版和分发,不受任何限制,前提是上述版权声明和本段包含在所有此类副本和衍生作品中。但是,不得以任何方式修改本文件本身,例如删除版权通知或对互联网协会或其他互联网组织的引用,除非出于制定互联网标准的需要,在这种情况下,必须遵循互联网标准过程中定义的版权程序,或根据需要将其翻译成英语以外的其他语言。

The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.

上述授予的有限许可是永久性的,互联网协会或其继承人或受让人不会撤销。

This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

本文件和其中包含的信息是按“原样”提供的,互联网协会和互联网工程任务组否认所有明示或暗示的保证,包括但不限于任何保证,即使用本文中的信息不会侵犯任何权利,或对适销性或特定用途适用性的任何默示保证。

Acknowledgement

确认

Funding for the RFC Editor function is currently provided by the Internet Society.

RFC编辑功能的资金目前由互联网协会提供。