Re: [homenet] Benoit Claise's Discuss on draft-ietf-homenet-dncp-09: (with DISCUSS and COMMENT)

Benoit Claise <bclaise@cisco.com> Thu, 17 September 2015 16:23 UTC

Return-Path: <bclaise@cisco.com>
X-Original-To: homenet@ietfa.amsl.com
Delivered-To: homenet@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 621F41B2CFA; Thu, 17 Sep 2015 09:23:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.511
X-Spam-Level:
X-Spam-Status: No, score=-14.511 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id K1kHG_39ssSt; Thu, 17 Sep 2015 09:23:04 -0700 (PDT)
Received: from aer-iport-4.cisco.com (aer-iport-4.cisco.com [173.38.203.54]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BC0411AD0B6; Thu, 17 Sep 2015 09:22:58 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=7633; q=dns/txt; s=iport; t=1442506979; x=1443716579; h=subject:to:references:cc:from:message-id:date: mime-version:in-reply-to:content-transfer-encoding; bh=QehsI4IauCkue7Oa7S9XRjiCSB53HGtKrJBtPAw4Rc8=; b=RUvjubiphJQUben27kIsbsxyuj/DsmkiSxkVHNktbVCE9NA4N+EN6Hic /s6s9uKM59Q6S7A2v09KYS2ZV/sBBZpdUiAVqcoZPAFn6wrwjcuv3ibWP t2AAAuWNSNWH6+VubmwO653nrXMWtzS/jnMkFFm65KPpLQeoBzrObadMK M=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0C/BgDC5/pV/xbLJq1dg3Vpv0uFPToCgg8BAQEBAQGBC4QkAQEEIw8BBTQCCgEQCxgCAgUWCwICCQMCAQIBRQYNBgIBAYgqDbcnlEEBAQEBAQEBAQEBAQEBAQEBAQEBFQSBIoVRhH2FDQeCaYFDAQSHNIVIiGWFEYd1gU2HNI4sg21jghAdFoFAPDMBAQECiiUBAQE
X-IronPort-AV: E=Sophos;i="5.17,548,1437436800"; d="scan'208";a="607070595"
Received: from aer-iport-nat.cisco.com (HELO aer-core-4.cisco.com) ([173.38.203.22]) by aer-iport-4.cisco.com with ESMTP; 17 Sep 2015 16:22:56 +0000
Received: from [10.60.67.87] (ams-bclaise-8916.cisco.com [10.60.67.87]) by aer-core-4.cisco.com (8.14.5/8.14.5) with ESMTP id t8HGMtcY022302; Thu, 17 Sep 2015 16:22:56 GMT
To: Markus Stenberg <markus.stenberg@iki.fi>
References: <20150917091111.14753.45178.idtracker@ietfa.amsl.com> <A5116A52-2B60-4C99-8B9F-F02A22E8F42A@iki.fi>
From: Benoit Claise <bclaise@cisco.com>
Message-ID: <55FAE8DF.9020308@cisco.com>
Date: Thu, 17 Sep 2015 18:22:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0
MIME-Version: 1.0
In-Reply-To: <A5116A52-2B60-4C99-8B9F-F02A22E8F42A@iki.fi>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/homenet/DmX_qKrhaPEIg9vyY0iy8xr9h7A>
Cc: homenet-chairs@ietf.org, Mark Townsley <mark@townsley.net>, victor@jvknet.com, draft-ietf-homenet-dncp.shepherd@ietf.org, The IESG <iesg@ietf.org>, draft-ietf-homenet-dncp@ietf.org, homenet@ietf.org, draft-ietf-homenet-dncp.ad@ietf.org
Subject: Re: [homenet] Benoit Claise's Discuss on draft-ietf-homenet-dncp-09: (with DISCUSS and COMMENT)
X-BeenThere: homenet@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: IETF Homenet WG mailing list <homenet.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/homenet>, <mailto:homenet-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/homenet/>
List-Post: <mailto:homenet@ietf.org>
List-Help: <mailto:homenet-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/homenet>, <mailto:homenet-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Sep 2015 16:23:06 -0000

Markus,

Instead of focusing on the specific questions/answers, the key message is.
The applicability section doesn't answer my questions: when to (re-)use 
this protocol?

Regards, Benoit
> On 17.9.2015, at 12.11, Benoit Claise <bclaise@cisco.com> wrote:
>> ----------------------------------------------------------------------
>> DISCUSS:
>> ----------------------------------------------------------------------
>>
>> Other ADs focused on the protocol specific points. So let me focus on
>> something else.
>> The applicability section doesn't answer my questions: when to (re-)use
>> this protocol?
>> Note that the write-up mentioned ANIMA.
>>
>> I see the protocol description:
>>
>>    DNCP is designed to provide a way for each participating node to
>>    publish a set of TLV (Type-Length-Value) tuples, and to provide a
>>    shared and common view about the data published by every currently or
>>    recently bidirectionally reachable DNCP node in a network.
>>
>> I see, under the applicability section, under which conditions to use
>> it.
>> Basically, suitable to exchange any TLV tuples, infrequently.
> This is the gist of it. Even more frequently is ok, but then you have extra complexity without gaining from it.
>
> _That_ is what you have to determine if you want to use it; do you want to synchronize a small set of TLV tuples, communicating efficiently, across a set of nodes.
>
>> However, this applicability section doesn't tell me when to re-use DNCP
>> (or define a profile for it).
>> What about the environment: home network versus LAN versus WAN? How big
>> can the network be?
>> Does the technology matter?
>> Regarding transport, it's basically any transport, unicast or multicast,
>> right? (DNCP can be used in networks where only unicast transport is
>> available.  While DNCP uses the least amount of bandwidth when multicast
>> is utilized)
> Guesses are correct, but given it is more of an algorithm than concrete protocol, your questions are hard to respond in a generic way.
>
>> All devices in a DNCP network must be DNCP node?
> It is actually definition of DNCP network ; a set of DNCP nodes.
>
>> I have a DNCP network with profile 1, can I use the same DNCP network
>> with profile 2?
> If the profiles’ transport details match and use a shared IANA TLV space, then yes.
>
>> IANA and enterprise specific TLVs?
> I am not sure what you mean by this; ultimately actually used TLVs are matter of (DNCP profile specific) IANA sub-registry, which should reserve the space. While DNCP itself reserves some space for DNCP-specific extensions (so far considered fragmentation, delta synchronization, authentication/confidentiality of multicast traffic using PSKs, and few other things), and leaves most of space open (for e.g. to be used as bits later on), the rest is up to profile.
>
>> UDP is fine as a transport?
> There is another DISCUSS on this, I will reply to it there.
>
>> What if I know my topology already (I see later: "may use multicast for
>> Trickle-based shared state dissemination and topology discovery")
>> etc.
> You can define a protocol that is solely TCP unicast based, for example, and make it’s definition of peer liveliness depend only on the TCP connections +- knowledge of topology graph changing.
>
> (This assuming you know which nodes need to communicate with each other.)
>
>> Just reading the intro and the applicability, I scratched my head: it's
>> so generic, should I even consider it for ANIMA?
> Funny, I get the opposite impression reading ANIMA mailing list, as I wonder if it is too generic for DNCP.
>
> E.g. what if someone wants to share a DVD image to upgrade their routers using the protocol? DNCP is _not_ the way. URL + hash of content, or magnet link, perhaps, but not the image.
>
>> A few paragraphs, somewhere in the document, would solve my DISCUSS:
>> - this protocol should be used to exchange the following type of data
>> ...
> See edit of first sentence of introduction in [1]. Still work in progress, but emphasizing that a) set of TLVs published by a node is small, and b) it has hard cap of 64kb.
>
>> - it's envisioned that this generic state synchronization protocol will
>> be used in the following environments …
>> - potential DNCP-based protocols include …
> I do not really see where to stick these or what the exact content would be;
>
> ‘anywhere you can use _a_ transport protocol’, ’to synchronize stuff (home automation? configuration? cache synchronization? routing? you name it, this can do it, although not necessarily well, and all have _already been done_ although not necessarily documented in the IETF)’
>
>> ----------------------------------------------------------------------
>> COMMENT:
>> ----------------------------------------------------------------------
>>
>> - I would agree with Alvaro, when he wrote: "In general, I found the text
>> not straight forward or easy to understand." Potentially due to the
>> structure.
> Structure has been rewritten more than once due to various reviews too.
>
>> - I hope that a document about manageability considerations (see
>> https://tools.ietf.org/html/rfc5706#appendix-A) will follow.
> Hm, I see value of having one for particular DNCP-based protocols but not really DNCP itself.
>
>> - As reported by Victor, part of his OPS DIR review:
>> Found In Nits:
>>
>> (https://tools.ietf.org/idnits?url=https://tools.ietf.org/id/draft-ietf-homenet-dncp-09.txt)
>>
>>     - Use of lower case not with SHOULD statement (see Paragraph 2,
>>     Section 4.5)
> Fixed in [1].
>
>>     - Flagged spacing items (Lines 197, 252, 256 and 260)
> In terminology. Fixing if someone tells me how, as I think it is just idnits not understanding the extra spaces between (multi-line) term being explained and it’s description.
>
>> Section 3: Overview
>>
>>     paragraph 2: their addresses may be manually configured or they may
>>
>>        be found by some other means defined in a later specification
>>
>>     ** This text is not quite clear.  Is it the author’s intention that
>>     the reader assume the other means will be part of a specific DNCP
>>     profile specification, a revision of the DNCP document or a
>>     different type of document.? ***
> Addressed in [1]. The text is not actually clear at all, as it should REALLY say that that can be specified in a particular DNCP profile.  Rewrote and gave an example. Is it better?
>
>> Section 4.2: Data Transport
>>
>>     Paragraph 4 / Part “Multicast+Unicast”
>>
>>      <old> It is used to send Network State TLVs every now and
>>
>>           then, as specified in Section 4.3
>>
>>     <suggested> It is used to send Network State TLVs
>>     periodically, as specified in Section 4.3
>>
>>     <reason>  Avoids using an idiom to express sending frequency
>>     in text.
> Thanks, fixed. [1]
>
>> Section 8.1 Pre-Shared Kay Trust Method
>>
>>     ** Would it be within the DNCP document to discuss how PSKs are
>>     stored (as to not be externally accessed) or would it be to the
>>     profile to defined that level? ***
> That is entirely implementation matter; I do not think any other protocols that employ DTLS or TLS documents specify how that is done either.
>
> (Given counter-example, I do not mind copying text.)
>
> Cheers,
>
> -Markus
>
> [1] https://github.com/fingon/ietf-drafts/commit/6ba8c1b73e49d64667ae1dabc1113ce5c6673e34 - to be published as dncp-10 at some point once we have DISCUSSes addressed.
>
> .
>