On 26/05/2017 07:37, Michael Richardson wrote:
>
> Joe Touch <[email protected]> wrote:
> > Version support is recommended by IANA (see RFC7506, Sec 7.5).
>
> > Extensibility is a separate issue and doesn't replace the benefit of
> > version support.
>
> > The goal is to avoid needing to assign a new port number for GRASPv2 in
> > the future.
>
> > IMO, all messages (including NOOP) should start with a version number,
> > and I'd suggest at least 2 bits (if not 4).
>
> Everything is CBOR encoded, so we have no dependancy upon encoded bits on the
> wire changing.
> {Should CBOR change in an incompatible way, we'd need a new port number, true}
>
> Otherwise, we could obsolete any of the M_ operations trivially.
> We currently expect to encode the "first" layer as a CBOR array (which
> creates the record boundary for TCP as well).
>
> We could even decide that "version 2" would start with [M_GRASP2, [stuff]]
> costing us perhaps two bytes, which is about the same as inserting a version
> would cost, but I'm still not convinced we'd ever need to do that.
You're right. If we had stuck to the original TLV model I would have agreed
that a version number is needed, but the nature of CBOR means that it
really isn't useful. Even the limit MESSAGE_TYPE = 0..255 in the syntax
isn't restrictive; a message type >255 or <0 would just kick back an M_INVALID
with old code, and would be happily accepted by new code, if we increased
the valid range.
Brian
_______________________________________________
Anima mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/anima