Re: [tcpm] [EXTERNAL] Questions on HyStart++ draft 02

Yi Huang <huanyi@microsoft.com> Thu, 02 April 2020 00:04 UTC

Return-Path: <huanyi@microsoft.com>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E12A63A14A8 for <tcpm@ietfa.amsl.com>; Wed, 1 Apr 2020 17:04:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, HTTPS_HTTP_MISMATCH=0.1, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=microsoft.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 gJOgcX2mQAyJ for <tcpm@ietfa.amsl.com>; Wed, 1 Apr 2020 17:04:37 -0700 (PDT)
Received: from NAM06-BL2-obe.outbound.protection.outlook.com (mail-eopbgr650132.outbound.protection.outlook.com [40.107.65.132]) (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 C349A3A14A6 for <tcpm@ietf.org>; Wed, 1 Apr 2020 17:04:36 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aWVruidcVHvTIcPKh2zypCQN76P6iID2mo7r77GqJGJSyUxpnE5brkJeKn+v2Ty2pHaa8wB1gMBx7DHsiEetqF6PcGAIDzXEzz/VOyL9ChmZztq7XwGHL7ezGQo8LHhU9R/jP+ty9jD3sxMF5uWctOXGjEc0VF7pIESWwCmFNA2v+wOe7lbEDmyR7xpcAX0AP1wEMpfO8jX6JkXU539UqU2HywPxDkryHfBUyfYFecgFS4csx6+aNiBmsUNP/dhLwMbb+9YtCbE6Sf05nRkqDgE+yVPIHwWUlpb6HacsybwR+yIfnYPian+DZEIkcuF/QW+7nXhzjTEiot/LGs4DLw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=mzr6nP3Q7RSC2MN4sofK7CWSdBLnTWXOe1kvaXPm704=; b=D3nTN72z6lZYujFH+2u5H2vHz8ptn1hrsvPVMfQVfm8r4+sVZ/fFRYLHBcaXhpRBezL9XynTBE1wKvaL0CbQHF3nEL16U/fJfk7Z5aIHUiEEmSW9mOuWjy1+4suk0CayDhNE3sy0boLjd/PHLFNwvkXdd4CZBkf0hxiwclQeUbpgf2/R6QXtV3sBCmme9Ak7wxGunILNKOsDf9KvWg0+UA5Z5iYoelA+fORMjX7knvtpgpZ9pmOPjucicazOLGUbymFgOXiXBd9IXZBGHP/9QXwZVHuikQthUL97/38Yo52U0lDUnuU9mpRTJn58kG9cGys/Chmqwqvx9jcttAUWvw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=microsoft.com; dmarc=pass action=none header.from=microsoft.com; dkim=pass header.d=microsoft.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=mzr6nP3Q7RSC2MN4sofK7CWSdBLnTWXOe1kvaXPm704=; b=EtLj7zRngkwfEVFp+/FB+C/TqgqejrjEU1XKleuhYkk/v9o0ro/U3X7D65EZgxIphyorq1Nw2XQHqP/6lVFvMKeI27lxzZdS6QufwBzczhjBjP4YLP3eqcmZewTE3uVV5VynOXDz3MJvLH6VHXez07qCpySz//znEf3sJHGQZKk=
Received: from SN2PR00MB0077.namprd00.prod.outlook.com (2603:10b6:804:18::21) by SN6PR00MB0448.namprd00.prod.outlook.com (2603:10b6:805:d::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2912.0; Thu, 2 Apr 2020 00:04:33 +0000
Received: from SN2PR00MB0077.namprd00.prod.outlook.com ([fe80::4453:8dfd:2003:1482]) by SN2PR00MB0077.namprd00.prod.outlook.com ([fe80::4453:8dfd:2003:1482%8]) with mapi id 15.20.2918.000; Thu, 2 Apr 2020 00:04:33 +0000
From: Yi Huang <huanyi@microsoft.com>
To: Junho Choi <junho.choi@gmail.com>, Praveen Balasubramanian <pravb@microsoft.com>
CC: "tcpm@ietf.org" <tcpm@ietf.org>
Thread-Topic: [EXTERNAL] Questions on HyStart++ draft 02
Thread-Index: AQHWCHuVjeyKxI/TR0GdAjicR50BCqhk60fw
Date: Thu, 02 Apr 2020 00:04:33 +0000
Message-ID: <SN2PR00MB00778599FB58D63C89C88BCCC3C60@SN2PR00MB0077.namprd00.prod.outlook.com>
References: <CAJ5e+HAtU=-Dy+rEtQ2cLDCj72nzpMymn7DDxc2+fuXr2cWzPw@mail.gmail.com>
In-Reply-To: <CAJ5e+HAtU=-Dy+rEtQ2cLDCj72nzpMymn7DDxc2+fuXr2cWzPw@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
msip_labels: MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Enabled=True; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SiteId=72f988bf-86f1-41af-91ab-2d7cd011db47; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Owner=huanyi@microsoft.com; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SetDate=2020-04-02T00:04:31.5387818Z; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Name=General; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Application=Microsoft Azure Information Protection; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ActionId=74b96d98-bd77-427a-8f1a-a1f9958b76a9; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Extended_MSFT_Method=Automatic
authentication-results: spf=none (sender IP is ) smtp.mailfrom=huanyi@microsoft.com;
x-originating-ip: [2601:600:877f:ac89:a428:b855:ae0b:b40e]
x-ms-publictraffictype: Email
x-ms-office365-filtering-ht: Tenant
x-ms-office365-filtering-correlation-id: 4c0d1ce1-ddd9-402d-2049-08d7d6996cb7
x-ms-traffictypediagnostic: SN6PR00MB0448:|SN6PR00MB0448:
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <SN6PR00MB0448FCA079EEE622BEF7B4F5C3C60@SN6PR00MB0448.namprd00.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-forefront-prvs: 0361212EA8
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SN2PR00MB0077.namprd00.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(10019020)(6029001)(4636009)(366004)(346002)(136003)(376002)(396003)(39860400002)(33656002)(76116006)(110136005)(478600001)(10290500003)(8990500004)(316002)(53546011)(7696005)(186003)(6506007)(86362001)(55016002)(52536014)(81156014)(66946007)(66476007)(66556008)(9686003)(64756008)(66446008)(6636002)(5660300002)(8676002)(4326008)(9326002)(82950400001)(82960400001)(8936002)(71200400001)(81166006)(2906002); DIR:OUT; SFP:1102;
received-spf: None (protection.outlook.com: microsoft.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 0N7uppLf3KESBCpcNSmE0MH726/YWoXdPAofqGpnx6PmGPX1dAWKWdUk8+ERMMNCes5UOGEg+8uLofVJfz2QKNBB0xBVXm3zhszL17PFatLiINIdFjgk/wbwlspOqDzQ7Xznp5NbcJJu1LODn/xYvJjoGVDIz9TdUw8FCVa5Kv7K/LII14AdqT8Q4oxBu8pPwIHl4D0+APekhDMpJEi733G0FQRuNWpm5THlsJ46eBuk6mv+LizoTIDV4G77tX8GpiRvcEverZhDG7g/KZN2eEwx2KlJaHQdL3lfJLO4LlGel9LrzVimmJAY4+Wlupvnl/x+UlDR/ssN67s0kdP4B55d68H47l4KQOIs4ki1+5POcpNFXQpsLLSGjHWthjhFwprW4SqwSMsBxTwNu3oVR2RzzE7p4cBICpfBKtT5prKC8OjWGpaoF5VoZpyVL6bvYUdJFs+fD5PWUrqHz+9xdUKq55VB59lmj5vlt4wwHDgxXnQ4celUDSLd5zKRZ3QG7sdb4GWv0/2WVPTDdEHjfw==
x-ms-exchange-antispam-messagedata: IDx6cehcst+vBQ2CCEZU66t65IEVAWALCiGmLFFL44jzYFbL9XoPTrlUvDRfBHABxhV+Asq+//9Ce5KTl6qlHob40TYzUPH+WFD0RdZLW71I5VEQLrNnys+mGdXjJnZJAJr3zwdPaVKEx0XIzNpnYSTx6Ln2LwiPycUj0LQmY6sfWa07Cm7rGNZ3SF59HixN7sBO8QiAA0iOBaCTwDGBLQ==
Content-Type: multipart/alternative; boundary="_000_SN2PR00MB00778599FB58D63C89C88BCCC3C60SN2PR00MB0077namp_"
MIME-Version: 1.0
X-OriginatorOrg: microsoft.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4c0d1ce1-ddd9-402d-2049-08d7d6996cb7
X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Apr 2020 00:04:33.6456 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: B88Lji40i4VqMvNvKw2QA+YPILujG9IGptsg4HqO2H/lR/L1ONwXKBUNAA9U7qODvk+B5HNFEt9IxhRZN/Ipfg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR00MB0448
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/4r3XRrxkO-VbsRtiN440aV8E6Kw>
Subject: Re: [tcpm] [EXTERNAL] Questions on HyStart++ draft 02
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tcpm/>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 02 Apr 2020 00:04:40 -0000

Hi Junho,

I have answered your questions inline. Thanks for considering Hystart++ in your QUIC implementation.

Thanks,

Yi

From: Junho Choi <junho.choi@gmail.com>
Sent: Wednesday, April 1, 2020 4:15 PM
To: Praveen Balasubramanian <pravb@microsoft.com>; Yi Huang <huanyi@microsoft.com>
Cc: tcpm@ietf.org
Subject: [EXTERNAL] Questions on HyStart++ draft 02

Hi,

I am working on QUIC implementation (https://github.com/cloudflare/quiche<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fcloudflare%2Fquiche&data=02%7C01%7Chuanyi%40microsoft.com%7Cf8e9cd15f09a44b7b48408d7d6929ab2%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637213797906475304&sdata=GWqLVWMGQjSDWIQ4SMRil6MPauBwSgSdXC15Zlwn%2F2s%3D&reserved=0>) at Cloudflare. While I am researching on hystart, I came across HyStart++ recently and I think this is a reasonable replacement of original hystart, so I started the work based on the hystartplusplus draft 02.

This is about quic implementation but it's more general questions, so I am posting here.

While I am implementing it, I have a few questions:

1. Section 4.2 -- each round is initialized as

   lastRoundMinRTT = currentRoundMinRTT
   currentRoundMinRTT = infinity
   rttSampleCount = 0

In the very beginning of the connection, what is "currentRoundMinRTT" when
there is no previous value?

I am using current rtt (or initial rtt value) and is it ok?

[Yi]: In our implementation, lastRoundMinRTT and currentRoundMinRTT are initialized to 0xffffffff as sentinel values. We only compare lastRoundMinRTT with currentRoundMinRTT when both of them are valid values. Using currRTT seems to essentially behave the same as assigning a sentinel value.

2. Section 4.2 -- When used with cubic, CA_cwnd() is based on cubic algorithm I think.
 This means I need to do cubic variables calculation during slow start
 such as K and W_cubic. When is considered as a start of
 congestion avoidance and what W_max will be?

 Currently I use a start of limited slow start as a beginning of congestion recovery
 and use cwnd at the time for W_max. Is my understanding correct?

[Yi]: Yes, that’s exactly what we do in Windows.

Best,

--
Junho Choi <junho dot choi at gmail.com<https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fgmail.com%2F&data=02%7C01%7Chuanyi%40microsoft.com%7Cf8e9cd15f09a44b7b48408d7d6929ab2%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637213797906485304&sdata=GqW%2ByDdGcke%2FkisS4va%2Fx%2F%2FT2b7HlXqrbHwUJymTs58%3D&reserved=0>>