Re: [dtn] I-D Action: draft-ietf-dtn-tcpclv4-09.txt

"Burleigh, Scott C (312B)" <scott.c.burleigh@jpl.nasa.gov> Tue, 21 August 2018 19:42 UTC

Return-Path: <scott.c.burleigh@jpl.nasa.gov>
X-Original-To: dtn@ietfa.amsl.com
Delivered-To: dtn@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BA416130EC5 for <dtn@ietfa.amsl.com>; Tue, 21 Aug 2018 12:42:42 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Level:
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, 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 ArRcIZgBHxZi for <dtn@ietfa.amsl.com>; Tue, 21 Aug 2018 12:42:40 -0700 (PDT)
Received: from mail.jpl.nasa.gov (smtp.jpl.nasa.gov [128.149.139.106]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0F8EC130EBC for <dtn@ietf.org>; Tue, 21 Aug 2018 12:42:40 -0700 (PDT)
Received: from mail.jpl.nasa.gov (ap-embx16-sp20.jpl.nasa.gov [128.149.137.84]) by smtp.jpl.nasa.gov (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.1) with ESMTP id w7LJgaWt015081 (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128 bits) verified OK); Tue, 21 Aug 2018 12:42:36 -0700
Received: from ap-embx16-sp10.RES.AD.JPL (2002:8095:8953::8095:8953) by ap-embx16-sp20.RES.AD.JPL (2002:8095:8954::8095:8954) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1415.2; Tue, 21 Aug 2018 12:42:48 -0700
Received: from ap-embx16-sp10.RES.AD.JPL ([fe80::4:f430:47b5:767b]) by ap-embx16-sp10.RES.AD.JPL ([fe80::4:f430:47b5:767b%17]) with mapi id 15.01.1415.002; Tue, 21 Aug 2018 12:42:48 -0700
From: "Burleigh, Scott C (312B)" <scott.c.burleigh@jpl.nasa.gov>
To: Rick Taylor <rick@tropicalstormsoftware.com>, "simon.perreault@viagenie.ca" <simon.perreault@viagenie.ca>, "jo@netlab.tkk.fi" <jo@netlab.tkk.fi>, "dtn@ietf.org" <dtn@ietf.org>, "BSipos@rkf-eng.com" <BSipos@rkf-eng.com>
CC: "dtnrg-chairs@tools.ietf.org" <dtnrg-chairs@tools.ietf.org>, "marc.blanchet@viagenie.ca" <marc.blanchet@viagenie.ca>
Thread-Topic: [dtn] I-D Action: draft-ietf-dtn-tcpclv4-09.txt
Thread-Index: AQHUDAInVZoksxhJME6TIHiwtX2mkqS+5+iAgAwRyYD///ss4A==
Date: Tue, 21 Aug 2018 19:42:48 +0000
Message-ID: <fc7aadc2d813420b93a50942842bede0@jpl.nasa.gov>
References: <152987559341.21620.2355609223308009940@ietfa.amsl.com> <21a3a812-a874-245f-18de-b19ba02e28db@netlab.tkk.fi> <484be69f11a31a1537840e4bb65f44b95da0069e.camel@tropicalstormsoftware.com>
In-Reply-To: <484be69f11a31a1537840e4bb65f44b95da0069e.camel@tropicalstormsoftware.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [207.151.104.72]
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-Source-Sender: scott.c.burleigh@jpl.nasa.gov
X-AUTH: Authorized
Archived-At: <https://mailarchive.ietf.org/arch/msg/dtn/--a-KnQZSvf5xt2QfmYMvN5Y7Hw>
Subject: Re: [dtn] I-D Action: draft-ietf-dtn-tcpclv4-09.txt
X-BeenThere: dtn@ietf.org
X-Mailman-Version: 2.1.27
Precedence: list
List-Id: "Delay Tolerant Networking \(DTN\) discussion list at the IETF." <dtn.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dtn>, <mailto:dtn-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dtn/>
List-Post: <mailto:dtn@ietf.org>
List-Help: <mailto:dtn-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dtn>, <mailto:dtn-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 21 Aug 2018 19:42:43 -0000

I'm on vacation through Friday, but next week - if necessary - I could write a quick I-D for the Simplified TCP convergence-layer adapter that is available as an option in ION.  It is not as capable as TCLPL, but it's less complex while still being more reliable than UDP.

Scott

-----Original Message-----
From: dtn <dtn-bounces@ietf.org> On Behalf Of Rick Taylor
Sent: Tuesday, August 21, 2018 5:55 AM
To: simon.perreault@viagenie.ca; jo@netlab.tkk.fi; dtn@ietf.org; BSipos@rkf-eng.com
Cc: dtnrg-chairs@tools.ietf.org; marc.blanchet@viagenie.ca
Subject: Re: [dtn] I-D Action: draft-ietf-dtn-tcpclv4-09.txt

Hi Joerg,

Thanks for the detailed review.

As you are one of the authors, are you suggesting that the author team no longer considers the document ready for publication, and that the team wish to abort the WG Last Call to give you all time to address your comments?

If so, can I impress upon you the urgency of getting at least one Convergence Layer document onto the Standards Track as soon as possible
- TCP-CL being the current best candidate.

To the WG: If someone has another interoperable Convergence Layer protocol that they wish to submit to the working group, it would be very welcome.  TCP-CL is not the 'One CL to rule them All' just what was seen as a simple first CL to publish alongside BPbis and BPSec. If another CL document was to appear in such a state that it could be quickly adopted and peer-reviewed then the TCP-CL authors would have more time to address any perceived short-comings in the draft, and the publication of BPbis would not be further delayed. 

Sorry for the top-post.

Cheers,

Rick

On Mon, 2018-08-13 at 22:36 +0200, Joerg Ott wrote:
> [Now including the DTN WG list]
> 
> Hi everybody,
> 
> I am guilty of having had less than adequate time lately to look at 
> the detailed evolution of this draft.  I did a detailed review that 
> yielded a number of comments.
> 
> As a meta note up front: I am not super-happy that the document more 
> than doubled in size, while the functionality did not grow that much 
> (luckily).  There seem to be lots of precautions taken for future- 
> proofing, while some of those could be addressed by another rev.
> I specifically also went back to v3 to compare the changes.
> 
> I am also puzzled about the generous choice of field sizes given that 
> the bundle protocol itself uses encodings that aim at wire efficiency.
> 
> I don't wanna bring up everything at once but here are a few bits that 
> I really think need to be fixed.  So let me keep the discussion 
> focused for now (we can look at nits later on):
> 
> 1. Section 4.3 seems to suggest on p21 (a node may adapt its operation
>     to an older version of the protocol) the two endpoints might 
> choose
>     using different protocols versions, which is surely problematic.
>     The outcome of this negotiation must be unambiguous.
> 
> 2. Section 4.4 discusses TLS but this isn't enough.  TLS has lots of
>     parameters, TLS clients may and servers must have certificates.
>     All this interaction needs to be spelled out.  What about the APN
>     to be used for TLS connection setup.  And, of course, we should 
> use
>     TLS 1.3.
> 
> 3. Splitting XFER_INIT from XFER_SEGMENT is not useful.  Nodes would 
> not
>     want to wait for a reply but use pipelining.  Hence, creating a
>     SEGMENT must follow INIT dependency appears unnecessarily complex
>     in terms of state space.
> 
>     Simple suggestion: Just keep session transfer but, if the S bit is
>     set, include the total bundle length field and the bundle transfer
>     id.  You achieve the same, save a few bytes, and the sender won't
>     wait transmitting anyway.  And one possible error condition goes
>     away.
> 
>     The only reason LENGTH was a separate message before is that we
>     needed/wanted to be backwards compatible to earlier versions of 
> the
>     draft and could not grow the header of the DATA_SEGMENT message.
> 
> 4. Section 5.1.1 Keep alive has lost its function.  According to the
>     current text, a keep-alive should be transmitted when the timer
>     expires.  Fine, but this too late because the other entity will
>     time out the connection.  The earlier guidance was that the 
> session
>     timeout occurs if no data was received for _twice_ the keep alive
>     interval.  But this part seems to have gone.  The text would need
>     to be explicit about when to schedule sending keep-alive messages
>     and when to time out.
> 
> 5. The extension items (both for setup and transfer) are generously
>     dimensioned but not a single one is defined.  I would say that
>     8 bits parameter space and 16 bits length should be sufficient.
>     It is also useful to define the encoding only in one place since
>     the two are largely identical.
> 
> 6. Echoing the SESS_TERM message as an ACK is a good idea.  Should
>     we include a nonce here to make sure that an ACK is different from
>     an independently issued SESS_TERM?
> 
> 7. Session termination in section 6.1 got more complicated.  The text
>     now alllows sending even more segments, whereas the v3 spec
>     essentially said that no data must follow afterwards.  If I 
> receive
>     a SESS_TERM, I should be sure that I can release data processing
>     resources.
> 
> 8. Why not always have the reason code and define one to be 
> unpsecified
>     in SESS_TERM rather than having two-stage processing?
> 
> 
> Major editorial:
> 
> We have too many terms and definitions.  Why are we discussing a TCPCL 
> entity with a complex figure 2, when there is nowhere inside the 
> document any need visible for discussing more than a single TCPCL 
> connection at a time.  This is rather confusing.
> 
> We have many state diagrams (fundamentally a good idea) but they are 
> hard to follow and sometimes very simple.  They are also not referred 
> to in the mandatory text.  Maybe we can have fewer states and a 
> stronger relation between text and diagrams?  Btw, not all acronyms 
> are defined here.
> 
> "CAN_TLS" is not the best name.
> 
> Cheers,
> Jörg
> 
> _______________________________________________
> dtn mailing list
> dtn@ietf.org
> https://www.ietf.org/mailman/listinfo/dtn
_______________________________________________
dtn mailing list
dtn@ietf.org
https://www.ietf.org/mailman/listinfo/dtn