Re: [Anima] Genart last call review of draft-ietf-anima-constrained-join-proxy-09

Michael Richardson <mcr+ietf@sandelman.ca> Mon, 11 April 2022 18:05 UTC

Return-Path: <mcr+ietf@sandelman.ca>
X-Original-To: anima@ietfa.amsl.com
Delivered-To: anima@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2386B3A1767; Mon, 11 Apr 2022 11:05:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.908
X-Spam-Level:
X-Spam-Status: No, score=-1.908 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 daAjFUl3Tsex; Mon, 11 Apr 2022 11:04:54 -0700 (PDT)
Received: from tuna.sandelman.ca (tuna.sandelman.ca [IPv6:2607:f0b0:f:3:216:3eff:fe7c:d1f3]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7D6A13A1762; Mon, 11 Apr 2022 11:04:52 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by tuna.sandelman.ca (Postfix) with ESMTP id 0B45B38CD3; Mon, 11 Apr 2022 14:16:21 -0400 (EDT)
Received: from tuna.sandelman.ca ([127.0.0.1]) by localhost (localhost [127.0.0.1]) (amavisd-new, port 10024) with LMTP id tBGrPAmSihJX; Mon, 11 Apr 2022 14:16:19 -0400 (EDT)
Received: from sandelman.ca (unknown [172.30.2.21]) by tuna.sandelman.ca (Postfix) with ESMTP id BB18D38CD2; Mon, 11 Apr 2022 14:16:19 -0400 (EDT)
Received: from localhost (localhost [IPv6:::1]) by sandelman.ca (Postfix) with ESMTP id 9F5C43F; Mon, 11 Apr 2022 14:04:48 -0400 (EDT)
From: Michael Richardson <mcr+ietf@sandelman.ca>
To: stokcons@bbhmail.nl, Ines Robles <mariainesrobles@googlemail.com>, gen-art@ietf.org, last-call@ietf.org, draft-ietf-anima-constrained-join-proxy.all@ietf.org, anima@ietf.org
In-Reply-To: <c71d7e5321ab3cd405404310ccfa4264@bbhmail.nl>
References: <164944447343.23391.8037239810344111375@ietfa.amsl.com> <c71d7e5321ab3cd405404310ccfa4264@bbhmail.nl>
X-Mailer: MH-E 8.6+git; nmh 1.7+dev; GNU Emacs 27.1
X-Face: $\n1pF)h^`}$H>Hk{L"x@)JS7<%Az}5RyS@k9X%29-lHB$Ti.V>2bi.~ehC0; <'$9xN5Ub# z!G,p`nR&p7Fz@^UXIn156S8.~^@MJ*mMsD7=QFeq%AL4m<nPbLgmtKK-5dC@#:k
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-="; micalg="pgp-sha512"; protocol="application/pgp-signature"
Date: Mon, 11 Apr 2022 14:04:48 -0400
Message-ID: <2920.1649700288@localhost>
Archived-At: <https://mailarchive.ietf.org/arch/msg/anima/-U80IWRoC3_oZJSyRE0o_Ccea4M>
Subject: Re: [Anima] Genart last call review of draft-ietf-anima-constrained-join-proxy-09
X-BeenThere: anima@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Autonomic Networking Integrated Model and Approach <anima.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/anima>, <mailto:anima-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/anima/>
List-Post: <mailto:anima@ietf.org>
List-Help: <mailto:anima-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/anima>, <mailto:anima-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 11 Apr 2022 18:05:01 -0000

    > The document defines a mechanism to assign a Device (Pledge) to a
    > (anima) domain, represented by a Registrar, using an intermediate node
    > (e.g. 6LR) called constrained Joint Proxy. Once that the Pledge is
    > enrolled to the network, it can take the role of a Joint Proxy.

While what you write is not false: once enrolled, a node can take on the role
of join proxy.
But, it makes it sound like the purpose of enrollment is to become a join
proxy.  The purpose of enrollment is to carry out the revenue generating
portion of the network...   becoming a join proxy is a burden, it's about
"paying it forward"  https://en.wikipedia.org/wiki/Pay_it_forward

    > Additional Comments/Questions:

    > 	* Which are the differences between a "Circuit-proxy" and a "stateful
    > constrained join Proxy"? I understand that both are stateful join proxy

Mostly they are two terms for almost the same thing.
Properly implemented, they are indistinguishable from outside.
Internally, a circuit proxy involves two actual sockets, with an application
space loop to copy A->B and B->A.  For TCP, there are some complexities if
you chose to implement TCP urgent alerts.
A stateful xxx proxy would be NAT44, occuring at the network rather than
application layer.

    >  NEW

    > This document standardizes the CoAP/DTLS (method 4). The specified
    > constrained Join Proxy extends the circuit proxy by using coaps DTLS
    > ports, by choosing the DTLS destination address and by specifying a
    > stateful and a stateless mode. The stateful and stateless modes have
    > the same purpose as the storing and non_storing Modes of Operations
    > (MOP) of RPL {{RFC6550}}.

    > Is this OK?

I think that this is a bit of a Ines-specific answer.
I'm not sure that making allusions to RFC6550 here is helpful for the general
reader.

Maybe: 
    The stateful and stateless modes differ in the way that they store
    the state required to forward the return packet to the pledge.
    Similar to the difference between storing and non_storing Modes of
    Operations (MOP) in RPL {{RFC6550}}. In the stateful method, the
    return forward state is stored in the join proxy.  In the stateless
    method, the return forward state is stored in the network.

-- 
]               Never tell me the odds!                 | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works        |    IoT architect   [
]     mcr@sandelman.ca  http://www.sandelman.ca/        |   ruby on rails    [