Re: [iccrg] [Stackevo-discuss] New Version Notification for draft-welzl-irtf-iccrg-tcp-in-udp-00.txt

Dirceu Cavendish <dirceu_cavendish@yahoo.com> Sat, 26 March 2016 14:58 UTC

Return-Path: <dirceu_cavendish@yahoo.com>
X-Original-To: iccrg@ietfa.amsl.com
Delivered-To: iccrg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9999212D5DA for <iccrg@ietfa.amsl.com>; Sat, 26 Mar 2016 07:58:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.71
X-Spam-Level:
X-Spam-Status: No, score=-2.71 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yahoo.com
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 qmM4rjANRcTo for <iccrg@ietfa.amsl.com>; Sat, 26 Mar 2016 07:58:49 -0700 (PDT)
Received: from nm23-vm2.bullet.mail.gq1.yahoo.com (nm23-vm2.bullet.mail.gq1.yahoo.com [98.136.217.81]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DEF5812D193 for <iccrg@irtf.org>; Sat, 26 Mar 2016 07:58:48 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1459004328; bh=0yFU1kKBOn9Y6WHdzG7W82ELyHu+04Cy5TzOG6wT4dQ=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:From:Subject; b=ibzGCiFlRkPbuXMq81S2wz9Gh9k5aE5Fs6cBzwfDBnGpkxg6I4fKCJAgrTU2n2x0bsMMN1XOz0CcrKRgkXNSojG1PU9KN7fWpARSLvtNcv6Tiz2S178LheCHiz4Z/5Ez1LztJIlFHEla6Qd1iX2qZm5tnTL7J/FBff+bsS55jyigYi0XP9x+nAPHiFX/uuFyRVYTIoOIbN5g02Ne9++ULd9N2QM/qWf7ToIeuzZLjkLrfIQ5rmykEiyXpM84BzDDGT+KaoRy77qg7EQB3pmXVb45EdAOlo1ZTPEECELYfmwIQBQjXgK4y9FEvgoSFHEyvJmvBZXqyFmPTgj02h1iFw==
Received: from [98.137.12.175] by nm23.bullet.mail.gq1.yahoo.com with NNFMP; 26 Mar 2016 14:58:48 -0000
Received: from [98.137.12.215] by tm14.bullet.mail.gq1.yahoo.com with NNFMP; 26 Mar 2016 14:58:48 -0000
Received: from [127.0.0.1] by omp1023.mail.gq1.yahoo.com with NNFMP; 26 Mar 2016 14:58:48 -0000
X-Yahoo-Newman-Property: ymail-3
X-Yahoo-Newman-Id: 432954.82582.bm@omp1023.mail.gq1.yahoo.com
X-YMail-OSG: jF77Xr4VM1kDnN5fVCpG9uAhCsNIRYo7FDhdixuhE.lfpg3JzCh4tQCZVumjmzG crZfi2fXUSuY2bY5e_rO60.e823wr_Gavj.1l38_6.xK_aoDR3oaFtWTiZYknZKdkUXO3KmaEEVC kx5xAXraFJ7XNGSsavvVbrp.2NI.NFFYYTeqJOoVTbMAlnnK5ZLVBmnZzwhiNQlJOP7GMg4kDYQf 1xQX9brm.KiCQ9mDyHf5SCQx7nX9TGthgTrX.OeN8Xx2lslYkn.ON5arRr0T2n8r7v.ilqhfxjrB zMToxfTq_wwpNhTDvO1zp5.uo3weZJ3Xnrzn4AvEah4CMePxk7qjvh.ezZQttTwu8olPuAJpL8V2 .G9FNLKB59Vrt2yYe_nzzqDQ8jXrWONiTqj4KJCTVc8iFwF8RhFrqenW.a44nvfbayyXUfIXah30 WwJaMhsEbZ9pv9P0biFnfixhAK6uuHb9BJqmYy6Jg_bUbf_MVrDo64jEtCaMv2Kd3W5_KuxqUBRi s7WLhKhJ1YetF3QNonsEQL.ER5qX_hrICbSLB93WGIfT6cnWEbJjfD7IS8ZEXGwKx8G3T6XyJ6l8 4EYjvsGo-
Received: by 216.39.60.196; Sat, 26 Mar 2016 14:58:47 +0000
Date: Sat, 26 Mar 2016 14:58:37 +0000
From: Dirceu Cavendish <dirceu_cavendish@yahoo.com>
To: Michael Welzl <michawe@ifi.uio.no>, Alexandre Petrescu <alexandre.petrescu@gmail.com>
Message-ID: <1765345323.199429.1459004317731.JavaMail.yahoo@mail.yahoo.com>
In-Reply-To: <A12DD1D6-12C0-40E7-A9A8-5297209929C4@ifi.uio.no>
References: <A741874C-0E2C-4905-9FD3-D29B4B94A9C0@ifi.uio.no> <56F3212B.5020408@isi.edu> <20F3E6FF-DED4-46BD-BFD5-C76F8A6A8D40@ifi.uio.no> <56F32C47.6080707@isi.edu> <271375F3-2B9D-4C61-9C6E-468E6423A1A4@ifi.uio.no> <56F427D9.9030208@isi.edu> <C6E55B03-FD33-4EAB-B814-8A4C3E9657EA@ifi.uio.no> <56F5538D.3040408@gmail.com> <8669865D-1302-4221-A18A-806FEE8502ED@ifi.uio.no> <56F57258.1000203@gmail.com> <A12DD1D6-12C0-40E7-A9A8-5297209929C4@ifi.uio.no>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_Part_199428_1502216993.1459004317726"
Archived-At: <http://mailarchive.ietf.org/arch/msg/iccrg/GHigomGd7jks1l8MUPfLt7VdUng>
Cc: "iccrg@irtf.org" <iccrg@irtf.org>
Subject: Re: [iccrg] [Stackevo-discuss] New Version Notification for draft-welzl-irtf-iccrg-tcp-in-udp-00.txt
X-BeenThere: iccrg@irtf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: Dirceu Cavendish <dirceu_cavendish@yahoo.com>
List-Id: "Discussions of Internet Congestion Control Research Group \(ICCRG\)" <iccrg.irtf.org>
List-Unsubscribe: <https://www.irtf.org/mailman/options/iccrg>, <mailto:iccrg-request@irtf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/iccrg/>
List-Post: <mailto:iccrg@irtf.org>
List-Help: <mailto:iccrg-request@irtf.org?subject=help>
List-Subscribe: <https://www.irtf.org/mailman/listinfo/iccrg>, <mailto:iccrg-request@irtf.org?subject=subscribe>
X-List-Received-Date: Sat, 26 Mar 2016 14:58:51 -0000

I agree that TCP failure to utilize path capacity is related to its steady state sawtoothingbehavior (albeit Cubic improves on that). I've been experimenting with a path capacity 
estimated TCP for years, and I dont see a reason not to improve on sawtoothing.
Dirceu



    On Friday, March 25, 2016 10:44 AM, Michael Welzl <michawe@ifi.uio.no> wrote:
 

 
> On 25. mar. 2016, at 18.16, Alexandre Petrescu <alexandre.petrescu@gmail.com> wrote:
> 
> 
> 
> Le 25/03/2016 17:57, Michael Welzl a écrit :
>> Please discuss this draft on the ICCRG list. I’ll keep
>> stackevo-discuss in cc just this once as a reminder to folks here
>> that this has moved, but please remove it in your response. Let’s try
>> to cleanly transition to ICCRG if we can.
>> 
>> 
>> About your email, my general answer is: you seem to be reading more
>> into this than it is.
>> 
>> You mention reliability, applicability to video streaming, etc.: this
>> is still “normal” TCP.
> 
> Ok for TCP, but the question was of TCP-in-UDP applicability to
> video-streaming as opposed to UDP applicability in video-streaming.

It’s as applicable or non-applicable as TCP.


>> In fact a design goal was to minimize the changes that we need to do
>> to it, so it’s a relatively easy code change.
> 
> I can agree.
> 
>> The intention is only to be able to combine the congestion
>> controllers of multiple flows, as has been suggested before (CM,
>> Ensemble sharing, ..). The outcome is that multiple flows are closer
>> to being like one flow, and there should be some benefits there in
>> terms of new flows immediately being able to use a larger cwnd,
>> priority-based cwnd share assignment etc.
> 
> I guess you mean multiple TCP flows.

Yes


>> Since you mention tunnels, issues with traceroute, overlays, etc.:
>> this is an e2e encapsulation. Same TCP source and destination
>> endpoints as before.
> 
> But different couples of port numbers, right?  It would be
> transport-layer encapsulation similar to network-layer encapsulation
> which uses different couples of IP addresses.

Exactly: you have one UDP port number pair, using a well-known port, that encapsulates several separate TCP port number pairs.
To the TCP’s on both sides, its normal port numbers are still there - they’re preserved, by first exchanging them on the SYN / SYN-ACK and then just “compressing” them into a connection ID.


>> Does it require rendez-vous points: it requires a well-known UDP
>> port.
> 
> Ok, so the TCP and UDP endpoitns would be on a same machine.  I was
> thinking they were on different machines, and the machine owning the
> well-known UDP port (rdv point) would multiplex to other TCP-only
> machines which dont implement TCP-in-UDP.

Aha! Well yes indeed, on the same machine. We change the TCP code on the client, we change the TCP code on the server, we involve no extra system.


>> The idea is that a client checks using UDP if the server is
>> TCP-in-UDP capable (listening on the UDP port), and if not, falls
>> back to TCP.
> 
> There are a few questions here.
> 
> If a destination is not TCP-in-UDP capable will it tell it explicitely
> to the source?  This is hard to do.
> 
> Or will the source decide based on the reception of a "UDP Port
> Unreachable"?  If so, then you hit this need of the UDP layer to
> communicate to the TCP layer: if  UDP port number is unavailable then
> use this other TCP port number.  And there are so many ways to do that,
> that at some point one may think it's better to leave them alone
> separate, not one in the other.

The way we do it may not be optimal but it’s pretty simple, see below:


>> This is achieved by “happy eyeballing” (sending out packets of both
>> types in one go).
> 
> I didnt know.  I will look.

It’s described in section 4 of the draft:
https://tools.ietf.org/html/draft-welzl-irtf-iccrg-tcp-in-udp-00#section-4
The explanation begins under the bullet list, at the paragraph starting with "Unless it is known that…”.  Note to self: make a subsection for this in the next version…
We don’t wait for “UDP Port Unreachable”: we try both and use what comes back first.

Cheers,
Michael

_______________________________________________
iccrg mailing list
iccrg@irtf.org
https://www.irtf.org/mailman/listinfo/iccrg