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

RE: Getting the features chart going



>I think it's up to the implementation.  You may wish to abort the
>transaction if you receive an attribute that you don't support, or you may
>wish to attempt to continue.

>A non-standard attribute would be in the private range.  I think that most
>implementations would simply ignore attributes from the private range that
>they don't understand.

Leaving the response to unknown attributes up to the 
implementation could cause interoperability problems. 
For example, how am I to know whether the attribute relates
to security, in which case it will be mandatory, or whether it relates
to configuration of a parameter, in which case it can be ignored if it
is not understood? 

If it can be assumed that an implementation will ignore unknown attributes,
then it makes sense to offer all the non-mandatory attributes that can
be understood without having to know whether the other implementation
can accept them. However, if some implementations abort the transaction
then the two approaches will not interoperate when they support
a common subset of options, even though they both conform to the
spec. 

There are several possible solutions to this. One is to allow the initiator
and responder to send capabilities attributes defining what they can do
and whether they require that certain attributes be understood. The
capabilities attribute would be a list of supported attributes with an
indication of mandatory/optional. 

Another solution is to define all attributes in the spec as mandatory,
and all private attributes as optional and define the ranges of values
corresponding to mandatory and optional for new attributes. This should
eliminate ambiguities.   

>The draft is still evolving, any suggestions should be brought up to the
>editor.

I'd suggest that the IANA considerations section deal with the mandatory/
optional issue. At the least, the spec for a new attribute should state
whether the attribute is required or not. However, I'd prefer to see a
clear prescription as to which attributes are optional (private?) and
which will be mandatory (spec-defined?). 


References: