[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
open issues list
We (Frank and Juergen) compiled a list of open issues to discuss
during the SMIng WG meeting in London. Since we were once again
beating objectives in London, we did not really get to discuss any of
these issues. I am posting this list here now to keep people informed
where we are and to solicit comments.
SMIng Open Issues
-----------------
* 4.1.6 Accessibility
- Need to distinguish between max/min access of the modelled
attribute and whether the protocol allows direct access to
it. (INDEX objects are usually not-accessible even though you can
read the value.) SMIv2 currently has inconsistent rules which
leads to the fact that one can't define compliance statements.
* 4.1.10 Namespace Control
SMI module names must be globally unique.
Right now, SMIng does not address this issue directly. The idea is
to delegate this issue to a guidelines document which should
establish rules that minimize the risk of name clashes and to not
add new syntax to module names.
* 4.1.19 Discriminated Unions
* 4.2.2 Unions
Some MIBs (DISMAN) seriously need discriminated unions of the SMI
base types (CHOICE for ASN.1 folks).
- InetAddress, TAddress are actually unions of the various address
types that all map to the same base type.
- InetAddress requires to have a separate InetAddressType attribute
which serves as the discriminator. The registration order is used
to identify the InetAddressType for a given InetAddress. There
could be a language construct which explicitly identifies the
discriminator.
- <draft-perkins-smi-addition-00.txt> proposes a discriminated union
where the discriminator is part of the type itself. Access to the
union and the discriminator is always atomic. Some interesting
constructions are necessary to make it work in DISMAN MIBs.
We can either (a) add a union type and a language construct to define
the discriminator for the union or (b) adopt an approach where the
discriminator is part of the union type itself.
* 4.1.16 Translation to Other Data Definition Languages
- Not yet defined - who is going to work on this?
* 4.1.30 Single Inheritance
- SMIng supports inheritance although it is questionable when this
is actually useful and when to use inheritance and when augmentation.
- There is a risk to mis-use inheritance (extending the ifEntry with
an Ethernet specific attribute and instantiating the whole thing
in a separate table).
- Is it possible to restrict inheritance somehow to the "useful"
cases?
- Is inheritance needed for information modeling or is it just a
useful tool for doing protocol mappings?
* 4.1.31 Reusable vs. Final Attribute Groups
- Classifying attributes as final or reusable allows to constrain
how others can reuse definitions. Currently there are no language
constructs for this in SMIng.
* 4.1.33 Creation/Deletion
- How to specify "create" and "delete" access? This is to some
degree related to the EOS work on row operations. Also, SPPI
introduces the concept of INSTALL-ERRORS which must be supported.
- SMIng currently has no constructs to define "constructors" or
"destructors".
* 4.1.39 Compliance and Conformance
- Currently only in the protocol mappings. Needs to be extended to
also cover the protocol independent definitions.
* 4.1.43 Instance Naming
- SPPI requires that all instances are identified by a small unique
integer while SMI allows complex instance identifier.
- The simplest approach would be to allow assume complex instance
identifier as COPS-PR uses OIDs and thus should be happy with it.
- The alternative would be to handle differences in the instance
naming in the protocol mapping, which however adds some complexity
especially for attributes that are pointers.
* 4.2.1 Methods
- SMIng does currently not allow to define methods as this requires
protocol support.
* 4.2.5 Referencing Tagged Rows
- Example how things work for SPPI:
+-------------------------------+ (PIB-TAG)
v |
|...| <A> | ...| |...| <B> |...|
================ ===============
o | | 2 | | | | 2 | |
o | | 2 | | ---------------
| | 3 | | ^
---------------- TagReferenceId
^
TagId
- The SNMP world has similar types (SnmpTagList, SnmpTagValue) but
no way to express the association between the columns.
- SMIng currently has no language support for defining tag
relationships.
* 4.2.6 Arrays
- SMIng does not provide arrays (SEQUENCE OF for ASN.1
folks). Several issues:
- Is access to arrays atomic or do arrays map to additional tables
in the protocol mappings?
- Are arrays size limited or of arbitrary size?
/js