[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Proposal



Does the filter allow filtering only on the column being retrieved or on
any column? The filter idea looks good, but, I think it would need to
work any any column. Like "get ifInOctets and ifOutOctets" where
ifAdminStatus is up.

Carl

"David T. Perkins" wrote:
> 
> HI,
> 
> Following is a very rough draft of an updated "getCols" proposal:
> 
> 
>    Internet Draft                                      David T. Perkins
>    Document: draft-perkins-eos-gc-00.txt                       SNMPinfo
>    Expires: March 2003                                   September 2002
> 
> 
>                         SNMP Get Columns Operation
> 
> 
> Status of this Memo
> 
>    This document is an Internet-Draft and is in full conformance with
>    all provisions of Section 10 of RFC2026 [1].
> 
>    Internet-Drafts are working documents of the Internet Engineering
>    Task Force (IETF), its areas, and its working groups.  Note that
>    other groups may also distribute working documents as Internet-
>    Drafts.
> 
>    Internet-Drafts are draft documents valid for a maximum of six months
>    and may be updated, replaced, or obsoleted by other documents at any
>    time.  It is inappropriate to use Internet-Drafts as reference
>    material or to cite them other than as "work in progress."
> 
>    The list of current Internet-Drafts can be accessed at
>         http://www.ietf.org/ietf/1id-abstracts.txt
>    The list of Internet-Draft Shadow Directories can be accessed at
>         http://www.ietf.org/shadow.html.
> 
>    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 [RFC2119].
> 
> 
> Abstract
> 
>    This document describes a new operation for the SNMP protocol between
>    a command generator and a command responder. It is used to
>    efficiently retrieve specified columns from a table. The values are
>    returned grouped by rows. The operation returns the rows in
>    lexigraphical order to allow multiple operations to be used when all
>    data cannot be returned in a single response. The operation also
>    supports a simple filtering operation that allows the command
>    responder to eliminate data unwanted by the command generator.
> 
> 
> 1. Introduction
> 
>    The SNMPv1 protocol has GET and GETNEXT operations to retrieve data.
>    Version 2 of the SNMP protocol operations has GET and GETNEXT
>    operations, and in addition has the GETBULK operation. For tables the
>    have a few number of rows in a table, these operations allow for
>    efficient retrieval all rows of a table. However, for tables with
>    more than 50 to 100 rows, these operations do not provide the needed
>    efficiency. The result is sluggish or applications that are so slow
>    that they become unusable. The GETCOLS operation described in this
>    document in much more efficient than these existing operations, also
>    fits well when the maximum message size is increased from 1000 to
>    32000 octets. The SNMPv3 protocol allows new operations to be added
>    without any changes to the protocol definition any many components of
>    a manager or agent.
> 
> 2. New PDU Definitions
> 
>    GC-SNMP-PDU DEFINITIONS ::= BEGIN
>    IMPORTS
>        ObjectName, ObjectSyntax, Integer32
>            FROM SNMPv2-SMI;
> 
>    --
>    -- GETCOLS Request
>    --
>    GetColsRequest-PDU ::=
>     [XXX]                                -- 9?
>        SEQUENCE {
>            request-id
>                Integer32,
> 
>            max-rows                      -- 0 = all
>                Integer32,
> 
> 
> 
>                       SNMP Get Columns Operation        September 2002
> 
> 
> 
>            start-after-inst              -- 0 = none
>                CHOICE {
>                    beginning NULL,
>                    named      _ OID { 0 0 <encoded index value> }
>                        OBJECT IDENTIFIER }
> 
>            inst-filter Filter-spec,
> 
>            request-cols
>                SEQUENCE (0..max-bindings) OF Col-name
>        }
> 
>    Col-name ::= OBJECT IDENTIFIER        -- ID (name) of column
> 
>    Filter-spec ::= SEQUENCE OF Filter-item
> 
>    Filter-item ::= CHOICE {
>        val-int [0] INTEGER,
>        val-str [1] OCTET STRING,
>        val-oid [2] OBJECT IDENTIFIER,
>        val-inst [8] OBJECT IDENTFIER,
>        val-col [9] OBJECT IDENTIFIER,
>        op-eq [10] NULL,
>        op-neq [11] NULL,
>        op-and [12] NULL,
>        op-or [13] NULL,
>        op-gt [14] NULL,
>        op-ge [15] NULL,
>        op-lt [16] NULL,
>        op-le [17] NULL
>        }
> 
> 
> 
>    GetColsResponse-PDU ::=
>      [XXX]                               -- 10?
>        SEQUENCE {
>            request-id
>                Integer32,
> 
>            error-status                     -- 0 = all
>                Integer32,
> 
>            error-index                      -- 0 = none
>                Integer32,
> 
>            requested-values
>                RowList
>            }
> 
> 
>                       SNMP Get Columns Operation        September 2002
> 
> 
> 
> 
>    RowList ::= SEQUENCE (0..max-bindings) OF RowValues
> 
>    RowValues ::= SEQUENCE {
>        row-inst OBJECT-IDENTIFIER, -- values is { 0 0 <encoded-index> }
>        col-values SEQUENCE OF Object-Syntax
>        }
> 
>    }
> 
> 
> 
> Security Considerations
> 
>    Stuff here
> 
> 
> References
> 
> 
>    References here
> 
> 
> 
> Acknowledgments
> 
>    <Add any acknowledgements>
> 
> 
> Author's Addresses
> 
>    David T. Perkins
>    SNMPinfo
>    3600 Benton Street #24
>    Santa Clara, CA 95051
> 
>    Phone: 408 394-8702
>    Email: dperkins@dsperkins.com
> 
> 
> 
> 

-- 
Carl W. Kalbfleisch
NTT/VERIO
www.nttverio.com