Subject: [Anima-signaling] First cut at GRASP draft -08

From: Brian E Carpenter <[email-masked]>
Date: Mon, 17 Oct 2016 15:58:10 +1300

Hi,

I've worked through Michael R's comments and fixed the "easy" ones.
I've attached the txt and HTML diffs, and if you want the xml,
it's a work in progress at https://github.com/becarpenter/animaproto/

Many thanks again to Michael.

So now I have some open issues. If nobody has anything more to say here,
I will formulate them properly for the WG list in a day or two:

-------------------------------

MR: I wonder if we shouldn't just send discovery messages on
always-up TCP connections from GRASP_LISTEN_PORT<->GRASP_LISTEN_PORT.

BC: Yes, if the ACP could give me an API call for that. But at the moment
all we can rely on is standard sockets, and in the 'no ACP mode'
that's what we have anyway.

-------------------------------

MR: Given that CBOR has only 1,2, and 4 byte uintegers, why do we have a 24-bit
session-id?

BC: Well, it's a hangover from the pre-CBOR TLV format. But I think it's true that we'd
increase the average message size by making it 32 bits, since there are a lot more random
numbers between 2^24 and 2^32 than between 1 and 2^24.

MR: okay, hangover that you'd like to save a byte.
But CBOR doesn't let you save that byte, so just make it uint32?

BC: CBOR sends 1, 2 or 4 bytes according to need, as I understand it. No
big deal, though.

--------------------------------

MR: What does one do with an invalid msgtype?  Options are:
     1) ignore (drop msg)
     2) die: drop TCP connection
     3) reply with ???-M_INVALID or something.

BC: I'm inclined to add M_INVALID as a MAY, or possibly a SHOULD,
but with a rule that you MUST NOT reply to M_INVALID with M_INVALID.
And the reason is indeed that we could use this to discover that
a peer doesn't understand a new (or obsolete) message or option.

-------------------------------

MR: I'm also a bit concerned that we have no statement about maximum message size.

BC: Me too. I coded my prototype with recvfrom limited to 2048 bytes, but we probably
need to specify something. On the other hand, Michael B wants to send infinitely long
Intents, I think.

--------------------------------

Regards
   Brian