Subject: [clue] Mark's WGLC comments on protocol-04

From: "Duckworth, Mark" <[email-masked]>
Date: Fri, 17 Jul 2015 11:26:20 -0700

Hi,
I see no major issues, I just have these minor comments and questions.

section 1 uses terms MP and MC which aren't defined, maybe should spell it out here, and define abbreviations in section 2.

section 2 - what's the difference between CLUE Participant and CLUE-capable device?  The sound the same to me.  Can we just make CLUE Participant a synonym for CLUE-capable device?  Or describe better what the difference is? Also should define abbreviation CP.

section 4 - clueId - "the identifier of the CP" - this isn't clear to me. How/where should this identifier be assigned?  Can it be just any string?  Is this meant to be just a name for the CP, administratively assigned?

"Each CP should manage up to three streams of sequence numbers" - Do we need to define more rules for sequence numbers?  such as:

-          do they always start at 0 or 1?

-          do they always increment by 1 for each successive message?

-          if sender is re-sending a message due to timeout or error, does it use same sequence number or a new one?

-          any special rules for handling rollover of the 32 bit value?

-          there is mention of 401 Invalid Sequencing error code for "out of date" sequence number.  How does the receiver detect this, taking rollover into account?

-          Is there any problem if the receiver detects a gap in sequence numbers?  Seems to me this doesn't have to be treated as an error.

page 11 typo "whithin" -> "within"

section 4.3 para 2 - should also mention simultaneous sets in the list of elements.

section 4.5 - ack within configureMessage - if it is included in the message, does that imply a 200 Success response code always? I think the document should say that.

"The <ack> element SHOULD not be present at all if an ACK message has been already sent back to the MP" - Can we make this MUST instead of SHOULD?

section 4.7 response code table
Is "reason string" and "response string" supposed to be the same thing?  If so, can we use "reason string" consistently, to match the reasonString element within Ack message?

Section 5 - "Over such a channel there are typically two CLUE streams...".  I suggest change to "Over such a channel there are typically two CLUE protocol streams..." to avoid confusion between media streams.  Section 2 says "stream" is a capture encoding, but that is not what we are talking about here.

Section 6 state machine - are the timeout values and retry count thresholds defined anywhere, or is an implementer free to choose anything?

section 7 - "Such a schema is the one included in the yet to come RFC" - it is included in this document section 9

section 10 Examples - should this section be non-normative?

Mark