Editor's note:  These minutes have not been edited.


SMI Documentation BOF

26 June 1996 at Montreal IETF
Chaired by Christian Huitema
Reported by Keith McCloghrie

The BOF began with an introduction by Christian Huitema, explaining
that this BOF was a direct result of the IAB's resolution of the Appeal
against the progression of the SNMPv2 SMI as a Draft Internet
Standard.

Dave Perkins then made a presentation. While some of Dave's
presentation was of a tutorial nature, a number of his slides invoked
discussion. In particular, it was observed that SNMPv2's SMI is based
on the 1987 version of ASN.1 together with an addendum from 1988.
This set of documents is no longer available from the normal sources of
ISO standards documents. It was agreed that the SMI is an adapted
subset of ASN.1, in that ASN.1's rules and the SMI's rules overlap but
the latter contains some extensions not allowed in ASN.1. While the
macros used in the SMI can't be compiled as ASN.1, the consensus felt
that this was irrelevant, since the SMI is not a direct subset of ASN.1,
and because their purpose is to document the SMI's syntax rules, not to
be compiled. The important question is whether the SMI's syntax rules
are made sufficiently clear by RFC 1902-1904. It was observed that
these RFCs are the clearest documentation of the SMI to date, and that
it is impossible, and potentially undesirable, to make every last detail
absolutely clear. The recent use of an INDEX clause with the same
object appearing twice with different semantics was cited as an
example.

Dave questioned whether a MIB-compiler can be written just from the
information contained in the RFCs. It was suggested that it could if the
compiler is "liberal in what it accepts, conservative in what it
expects." The liberal part is easy, but the conservative part is harder.
It was observed that a specification of the SMI syntax rules in BNF had
been proposed to the SNMPv2 WG during its deliberations, and would
have been welcomed, but no actual BNF was submitted prior to (nor
since) the WG deadline.

During further discussion, the following problems/questions were cited:

- does the presence of ASN.1 comments count as whitespace, - forward
references are allowed but not supported by some MIB compilers, -
hyphens are no longer allowed but exist in many existing MIBs, - can
the SMI's reserved keywords be used as descriptors/names, - what is
the maximum length of character, hexidecimal and bit strings, - when
are IMPORTS statements required,
- clarification sought on the use of value notation in DEFVAL clauses, -
more explanation needed on identifying MIB modules, - the built-in OSI
descriptors should expand to include { itu xx } - just how much
"creativity" is allowed with the INDEX clause. - the ASN.1 usage in
the definition of the BITS construct is questionable.

It was decided that two new documents would be potentially useful:

1. a document to capture those rules used by the SMI, for which the
ASN.1 documentation is no longer obtainable, and to provide
additional text where the existing RFCs are incomplete. 2. a user's
guide to writing MIB compilers.

It was agreed that the first of these documents is the more urgent, and
that Dave Perkins will write a first draft of it. A number of people will
provide review, including Jeff Case and Keith McCloghrie, and that
Christian Huitema and Randy Presuhn would review any ASN.1 text.
There was consensus that to be useful, the documents should be specific,
to the point, and as concise as possible, without explanation/tutorial
information. A rough schedule was for Dave Perkins to send the first
draft to the SNMPv2 WG mailing-list by the end of July, and to aim to
have the document complete by the December IETF meeting.