⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc2257.txt

📁 中、英文RFC文档大全打包下载完全版 .
💻 TXT
📖 第 1 页 / 共 5 页
字号:
      - 0 or more processing entities called subagents, which are        "shielded" from the SNMP protocol messages processed by the        master agent, but which have access to management information.   The master and subagent entities communicate via AgentX protocol   messages, as specified in this memo.  Other interfaces (if any) on   these entities, and their associated protocols, are outside the scope   of this document.  While some of the AgentX protocol messages appear   similar in syntax and semantics to the SNMP, bear in mind that AgentX   is not SNMP.   The internal operations of AgentX are invisible to an SNMP entity   operating in a manager role.  From a manager's point of view, an   extensible agent behaves exactly as would a non-extensible   (monolithic) agent that has access to the same management   instrumentation.Daniele, et. al.            Standards Track                     [Page 6]RFC 2257                        AgentX                      January 1998   This transparency to managers is a fundamental requirement of AgentX,   and is what differentiates AgentX subagents from SNMP proxy agents.4.1.  AgentX Roles   An entity acting in a master agent role performs the following   functions:      - Accepts AgentX session establishment requests from subagents.      - Accepts registration of MIB regions by subagents.      - Sends and accepts SNMP protocol messages on the agent's        specified transport addresses.      - Implements the agent role Elements of Procedure specified        for the administrative framework applicable to the SNMP protocol        message, except where they specify performing management        operations.  (The application of MIB views, and the access        control policy for the managed node, are implemented by the        master agent.)      - Provides instrumentation for the MIB objects defined in RFC        1907 [5], and for any MIB objects relevant to any administrative        framework it supports.      - Sends and receives AgentX protocol messages to access        management information, based on the current registry of MIB        regions.      - Forwards notifications on behalf of subagents.   An entity acting in a subagent role performs the following functions:      - Initiates an AgentX session with the master agent.      - Registers MIB regions with the master agent.      - Instantiates managed objects.      - Binds OIDs within its registered MIB regions to actual        variables.      - Performs management operations on variables.      - Initiates notifications.Daniele, et. al.            Standards Track                     [Page 7]RFC 2257                        AgentX                      January 19984.2  Applicability   It is intended that this memo specify the smallest amount of required   behavior necessary to achieve the largest benefit, that is, to cover   a very large number of possible MIB implementations and   configurations with minimum complexity and low "cost of entry".   This section discusses several typical usage scenarios.   1) Subagents implement separate MIB modules--for example,      subagent A implements "mib-2", subagent b implements "host-      resources".      It is anticipated that this will be the most common subagent      configuration.   2) Subagents implement rows in a "simple table".  A simple table      is one in which row creation is not specified, and for which the      MIB does not define an object that counts entries in the table.      Examples of simple tables are rdbmsDbTable, udpTable, and      hrSWRunTable.      This is the most commonly defined type of MIB table, and probably      represents the next most typical configuration that AgentX would      support.   3) Subagents share MIBs along non-row partitions.  Subagents      register "chunks" of the MIB that represent multiple rows, due to      the nature of the MIB's index structure.  Examples include      registering ipNetToMediaEntry.n, where n represents the ifIndex      value for an interface implemented by the subagent, and      tcpConnEntry.a.b.c.d, where a.b.c.d represents an IP address on an      interface implemented by the subagent.   AgentX supports these three common configurations, and all   permutations of them, completely.  The consensus is that they   comprise a very large majority of current and likely future uses of   multi-vendor extensible agent configurations.   4) Subagents implement rows in "complex tables".  Complex tables      here are defined as tables permitting row creation, or whose MIB      also defines an object that counts entries in the table.  Examples      include the MIB-2 ifTable (due to ifNumber), and the RMON      historyControlTable.Daniele, et. al.            Standards Track                     [Page 8]RFC 2257                        AgentX                      January 1998   The subagent that implements such a counter object (like ifNumber)   must go beyond AgentX to correctly implement it.  This is an   implementation issue (and most new MIB designs no longer include such   objects).   To implement row creation in such tables, at least one AgentX   subagent must register at a point "higher" in the OID tree than an   individual row (per AgentX's dispatching procedure).  Again, this is   an implementation issue.   Scenarios in this category were thought to occur somewhat rarely in   configurations where subagents are independently implemented by   different vendors.  The focus of a standard protocol, however, must   be in just those areas where multi- vendor interoperability must be   assured.   Note that it would be inefficient (due to AgentX registration   overhead) to share a table among AgentX subagents if the table   contains very dynamic instances, and each subagent registers fully   qualified instances.  ipRouteTable could be an example of such a   table in some environments.4.3.  Design Features of AgentX   The primary features of the design described in this memo are:   1) A general architectural division of labor between master agent      and subagent: The master agent is MIB ignorant and SNMP      omniscient, while the subagent is SNMP ignorant and MIB omniscient      (for the MIB variables it instantiates).  That is, master agents,      exclusively, are concerned with SNMP protocol operations and the      translations to and from AgentX protocol operations needed to      carry them out; subagents are exclusively concerned with      management instrumentation; and neither should intrude on the      other's territory.   2) A standard protocol and "rules of engagement" to enable      interoperability between management instrumentation and extensible      agents.   3) Mechanisms for independently developed subagents to      integrate into the extensible agent on a particular managed node      in such a way that they need not be aware of any other existing      subagents.Daniele, et. al.            Standards Track                     [Page 9]RFC 2257                        AgentX                      January 1998   4) A simple, deterministic registry and dispatching algorithm.      For a given extensible agent configuration, there is a single      subagent who is "authoritative" for any particular region of the      MIB (where "region" may extend from an entire MIB down to a single      object-instance).   5) Performance considerations.  It is likely that the master      agent and all subagents will reside on the same host, and in such      cases AgentX is more a form of inter-process communication than a      traditional communications protocol.      Some of the design decisions made with this in mind include:         - 32-bit alignment of data within PDUs         - Native byte-order encoding by subagents         - Large AgentX PDU payload sizes.4.4  Non-Goals   1) Subagent-to-subagent communication.  This is out of scope,      due to the security ramifications and complexity involved.   2) Subagent access (via the master agent) to MIB variables.      This is not addressed, since various other mechanisms are      available and it was not a fundamental requirement.   3) The ability to accommodate every conceivable extensible      agent configuration option. This was the most contentious aspect      in the development of this protocol.  In essence, certain features      currently available in some commercial extensible agent products      are not included in AgentX.  Although useful or even vital in some      implementation strategies, the rough consensus was that these      features were not appropriate for an Internet Standard, or not      typically required for independently developed subagents to      coexist.  The set of supported extensible agent configurations is      described above, in Section 4.2.   Some possible future version of the AgentX protocol may provide   coverage for one or more of these "non-goals" or for new goals that   might be identified after greater deployment experience.5.  AgentX Encodings   AgentX PDUs consist of a common header, followed by PDU-specific data   of variable length.  Unlike SNMP PDUs, AgentX PDUs are not encoded   using the BER (as specified in ISO 8824 [1]), but are transmitted asDaniele, et. al.            Standards Track                    [Page 10]RFC 2257                        AgentX                      January 1998   a contiguous byte stream.  The data within this stream is organized   to provide natural alignment with respect to the start of the PDU,   permitting direct (integer) access by the processing entities.   The first four fields in the header are single-byte values.  A bit   (NETWORK_BYTE_ORDER) in the third field (h.flags) is used to indicate   the byte ordering of all multi-byte integer values in the PDU,   including those which follow in the header itself.  This is described   in more detail in Section 6.1, "AgentX PDU Header", below.   PDUs are depicted in this memo using the following convention (where   byte 1 is the first transmitted byte):   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   |  byte 1       |  byte 2       |  byte 3       |  byte 4       |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   |  byte 5       |  byte 6       |  byte 7       |  byte 8       |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   Fields marked "<reserved>" are reserved for future use and must be   zero-filled.5.1.  Object Identifier   An object identifier is encoded as a 4-byte header, followed by a   variable number of contiguous 4-byte fields representing sub-   identifiers.  This representation (termed Object Identifier) is as   follows:   Object Identifier   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   |  n_subid      |  prefix       |  include      |  <reserved>   |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   |                       sub-identifier #1                       |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   |                       sub-identifier #n_subid                 |   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   Object Identifier header fields:      n_subid         The number (0-128) of sub-identifiers in the object identifier.         An ordered list of "n_subid" 4-byte sub-identifiers follows the         4-byte header.Daniele, et. al.            Standards Track                    [Page 11]RFC 2257                        AgentX                      January 1998      prefix         An unsigned value used to reduce the length of object         identifier encodings.  A non-zero value "x" is interpreted as         the first sub-identifier after "internet" (1.3.6.1), and         indicates an implicit prefix "internet.x" to the actual sub-         identifiers encoded in the Object Identifier.  For example, a         prefix field value 2 indicates an implicit prefix "1.3.6.1.2".

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -