Re: Proposed extension for delayed acknowledgments
Maxime Piraux <maxime.piraux@uclouvain.be> Wed, 29 January 2020 13:14 UTC
Return-Path: <maxime.piraux@uclouvain.be>
X-Original-To: quic@ietfa.amsl.com
Delivered-To: quic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1D490120108 for <quic@ietfa.amsl.com>; Wed, 29 Jan 2020 05:14:00 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 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_NONE=-0.0001, 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=uclouvain.be
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 rm4JtjCzaMZ8 for <quic@ietfa.amsl.com>; Wed, 29 Jan 2020 05:13:57 -0800 (PST)
Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2098.outbound.protection.outlook.com [40.107.20.98]) (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 064FB1200F5 for <quic@ietf.org>; Wed, 29 Jan 2020 05:13:56 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BHJMYIFTBi3/weK69va+LrnCdb/N/uFjYISvrFeIsN8xLvvqO3FsGoSl17djKUPcrTPOv4cuOAvuQ9YcuhLgX+WJbyMiUk4d395dJ7BXOHDJXineYfwVyRmcFAzBIbqEfW6josYlyfiHLLC7uCiYqdgmEILe6Np7mt2NUPtJ2EZGLV1qAGrI8y3uxltz0s+JH71+tqSGSpyT6GXPDE6Bd9VPkQ/dl/+UoFvWHfNYGS3cI29sJymCb4bbWaD8tdw0l8DITxnQQlEZ/06gUNB6Dfc50CAvGNF8sY5CpTT5nC/bSuNEddTgVPtJULzgqvM9R65WAIMp0oeSdr50WW3Erg==
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=IxEhwowfbuMsgIUHxXfH69VpYoUXuWs6+Ia3X1vEpxs=; b=GiRPxHab2TAj9nooTzErYY6czqQvsl4pz24EOwVh4GJyfdzGSZtx6DLLQNrP+sgIhqKMGWU9qKJLbjHknZP8bUCyFXdxzKFA05OwgStSkmSREpHoGV1KtVgFIDOo2Dvz+jCjtbZJnew3yY6HIBzRPItuuWW7JAu5X0EaQu7lPtzkKMFmWdD+t7jjunWQxjae412v5+rzZutXUxJchOoemW2XRG+gly9OEV0TRUAGsJzrhbGxjERA/JSdl9/JHgZWk+NZrfz3b7dTkuTKRPfa+WiGlAJZ1rsiIwL0by6qYAMSw5Mf8jPFHxhXloLhTEAH5qkdOlgh8rWyMm6FxFTIjA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=uclouvain.be; dmarc=pass action=none header.from=uclouvain.be; dkim=pass header.d=uclouvain.be; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=uclouvain.be; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IxEhwowfbuMsgIUHxXfH69VpYoUXuWs6+Ia3X1vEpxs=; b=QFObYht1lwd5ydoWrajGaiWEtqK0EAvd9Ibo0ZNRQ0IxIbo5crBiXSMddmC1SIsqkmTfDrnmMjPVaap7CMYCRpj9ZvawqE4791WDgV/d5dD3HndtKfI7EWmniqEkXHJArlFC/wXxdFBaCz6WI4FA3om+zNGe7jN3EG5CgnmfLxs=
Received: from DBBPR03MB5429.eurprd03.prod.outlook.com (20.179.47.84) by DBBPR03MB5319.eurprd03.prod.outlook.com (10.255.79.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2665.20; Wed, 29 Jan 2020 13:13:54 +0000
Received: from DBBPR03MB5429.eurprd03.prod.outlook.com ([fe80::6550:1c7b:a3d4:1900]) by DBBPR03MB5429.eurprd03.prod.outlook.com ([fe80::6550:1c7b:a3d4:1900%3]) with mapi id 15.20.2665.027; Wed, 29 Jan 2020 13:13:53 +0000
Received: from localhost.localdomain (2001:6a8:308f:2:612c:e2ac:628e:2eff) by AM4PR0202CA0003.eurprd02.prod.outlook.com (2603:10a6:200:89::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2665.22 via Frontend Transport; Wed, 29 Jan 2020 13:13:53 +0000
From: Maxime Piraux <maxime.piraux@uclouvain.be>
To: Jana Iyengar <jri.ietf@gmail.com>, QUIC WG <quic@ietf.org>
CC: Ian Swett <ianswett@google.com>
Subject: Re: Proposed extension for delayed acknowledgments
Thread-Topic: Proposed extension for delayed acknowledgments
Thread-Index: AQHV1qXzb2L6VlCCGkS6+mdvrbU2yA==
Date: Wed, 29 Jan 2020 13:13:53 +0000
Message-ID: <68718285-f3f5-9e69-b87f-7f047f820d65@uclouvain.be>
References: <CACpbDcdaGPZN1MpxE8GRV64dO8OK64xbCoUvxHPmCoCk9R-MOg@mail.gmail.com>
In-Reply-To: <CACpbDcdaGPZN1MpxE8GRV64dO8OK64xbCoUvxHPmCoCk9R-MOg@mail.gmail.com>
Accept-Language: fr-FR, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-clientproxiedby: AM4PR0202CA0003.eurprd02.prod.outlook.com (2603:10a6:200:89::13) To DBBPR03MB5429.eurprd03.prod.outlook.com (2603:10a6:10:dc::20)
authentication-results: spf=none (sender IP is ) smtp.mailfrom=maxime.piraux@uclouvain.be;
x-ms-exchange-messagesentrepresentingtype: 1
x-originating-ip: [2001:6a8:308f:2:612c:e2ac:628e:2eff]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 3cdd4f56-7643-43c1-b3b4-08d7a4bd16f2
x-ms-traffictypediagnostic: DBBPR03MB5319:
x-microsoft-antispam-prvs: <DBBPR03MB5319C2232C9F41738993CB509F050@DBBPR03MB5319.eurprd03.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-forefront-prvs: 02973C87BC
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(4636009)(136003)(39860400002)(376002)(396003)(366004)(346002)(189003)(199004)(6486002)(31696002)(4326008)(478600001)(966005)(31686004)(86362001)(5660300002)(6512007)(16526019)(71200400001)(52116002)(36756003)(2906002)(6506007)(81166006)(81156014)(69590400006)(66476007)(66556008)(64756008)(66446008)(66946007)(786003)(8676002)(44832011)(2616005)(8936002)(316002)(110136005)(186003)(66574012); DIR:OUT; SFP:1102; SCL:1; SRVR:DBBPR03MB5319; H:DBBPR03MB5429.eurprd03.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1;
received-spf: None (protection.outlook.com: uclouvain.be does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: aD4EONwkCd4L9JtRLgnsTTfmGqPhCzv9VE3k+RGzy0kchlvBNVXgcc+ULcAsqfYTSWGWDou6HsQY3uIfcWettHjNR27YTHq91LzA3mR3y1sS3vNmVD2qAyV3MpP+TM5nF4qiLsJzhuD0HNSVrN2ZHhy6MUldfFLqKBuVyMiE6Nymhi95UKBrcIaMDqSHKqrLFpgvefsjXxYJzZW6n86SkkpXtMRlv/P08ZQIVYcFWB6bHXAvJ+fNowGdgIgz3WuJgDZmDmjLIG1fedFCZqsOfa6Ty5hXp3bodZZbGFDBshvRTLXWAFZvn8lWkZylhCsuMXmjzLLpJxPpsTd5xVeHLB1z7HPOlf39hkeb6kSdBzvGB6T8oY6oIgG7/S2jsdBpt2azWuVapnoDDiFxKqTT9yNBCvPpCJSMetyRtHpKRHB+VOcG0Cs/QZqagFC5EDWUxwH3F4YTpO26ajvg2Nc2Sy+QtSOxU6/t9CCRiMNnqAjxPFtkpUg5d0Q+hU3gHWJtf+ICJz1ZvRFyysdUWysVR0eLwW1G6CCi8f2CfA7O4QLbLMKDzYpoWELSq0yzNav2icqUuKnMVIPHhkZe13cRj75ACDV6jYtIcFUvi7cXWDIthn4+DWBl+qH3o3/6i8dN
x-ms-exchange-antispam-messagedata: Up0afiznOL8i+NwoPuOE9s2ROaQZncmGzTl4TGL3qobkCN7yKKTPbUMDvVos9yTIT2ZoQLelKI3EdnaoZWY+MOT5TWvJ7TNmWAeT5mJd9R+fSxvJVIVyZQBUalnu7G9fVyVtxnmXjN/tDV28OtG8Z/OA4CRrc9X7bASskX7ehOuegDCyvfiIY8FZHaNYpg7G9npNpw9CzeGdYc47cdIkFA==
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="utf-8"
Content-ID: <290ECE7CEC9ED9499160B344534C4D44@eurprd03.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: uclouvain.be
X-MS-Exchange-CrossTenant-Network-Message-Id: 3cdd4f56-7643-43c1-b3b4-08d7a4bd16f2
X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Jan 2020 13:13:53.9221 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 7ab090d4-fa2e-4ecf-bc7c-4127b4d582ec
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: /1BDLm2cGea7v5Awukj76oiJUMMgudHVdKUEzzUASaVhI2tIxCO8/ip9oNxui3OoPR7Xx5bkJ0q3Rg90lsxobvLDqXBlJK3bFwCzOHACUN8=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR03MB5319
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/jpprBcjKcT62ZYdLSQCKVrtDgEs>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Main mailing list of the IETF QUIC working group <quic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic>, <mailto:quic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic/>
List-Post: <mailto:quic@ietf.org>
List-Help: <mailto:quic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic>, <mailto:quic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 29 Jan 2020 13:14:00 -0000
Hi Jana, Enabling sender-side control of the receiver behaviour is also part of our efforts with PQUIC <pquic.org>. We propose a new paradigm for deploying new extensions to QUIC. For some use-cases, instead of defining a standard wire format enabling the control of specific mechanisms, we propose to directly inject code that implements the required feature. More concretely, adding a custom ack policy requires replacing a single function (aka protocol operation) in PQUIC. The protocol operation is_ack_needed determines whether sending an ack is required. An example of the code that could be injected to change the packet tolerance to 10 and the max ack delay to 10ms can be found below. /* The function returns whether an ack is needed for a given packet context */ protoop_arg_t is_ack_needed(picoquic_cnx_t *cnx) { uint64_t current_time = (uint64_t) cnx->protoop_inputv[0]; /* Current time in microsec */ picoquic_packet_context_enum pc = (picoquic_packet_context_enum) cnx->protoop_inputv[1]; picoquic_path_t *path_x = (picoquic_path_t*) cnx->protoop_inputv[2]; picoquic_packet_context_t *pkt_ctx = &path_x->pkt_ctx[pc]; protoop_arg_t ack_needed = 0; uint64_t packet_tolerance = 10; /* 10 packets */ uint64_t max_ack_delay = 10000; /* 10 ms */ if (pkt_ctx->ack_needed) { if (pkt_ctx->highest_ack_sent + packet_tolerance <= pkt_ctx->first_sack_item.end_of_sack_range || pkt_ctx->highest_ack_time + max_ack_delay <= current_time) { ack_needed = 1; } } return ack_needed; } Our approach can also be used to deploy an extension defining new frames as explained in [PQUIC]. Every time that there will be an interest in enabling the dynamic modification of a particular QUIC mechanism, having a common interface to inject code will shorten the time to deploy and experiment with those modifications. [PQUIC]: Quentin De Coninck, François Michel, Maxime Piraux, et al. Pluginizing QUIC. SIGCOMM 2019. https://dl.acm.org/authorize?N680239 Maxime Le 23/01/20 à 22:50, Jana Iyengar a écrit : > Hi all, > > Ian and I have proposed an extension to enable sender-side control of > acknowledgement frequency: draft-iyengar-quic-delayed-ack-00 > <https://datatracker.ietf.org/doc/draft-iyengar-quic-delayed-ack/>. > > The problem this extension solves was originally discussed in #1978 > <https://github.com/quicwg/base-drafts/issues/1978>, where we agreed that > this might be best done in an extension. The desire to reduce the frequency > of acknowledgements was more recently brought up and discussed in #3304 > <https://github.com/quicwg/base-drafts/issues/3304>, where it seemed clear > that there was interest in working on this now. This proposed extension is > a result. > > This is an individual draft. Please feel free to use the following github > repo, which is NOT the working group's repo, for filing issues and > discussion pertaining to the draft: > https://github.com/janaiyengar/ack-frequency > > - jana >
- Proposed extension for delayed acknowledgments Jana Iyengar
- Re: Proposed extension for delayed acknowledgments Ian Swett
- Re: Proposed extension for delayed acknowledgments Matt Joras
- Re: Proposed extension for delayed acknowledgments Christian Huitema
- Re: Proposed extension for delayed acknowledgments Jana Iyengar
- Re: Proposed extension for delayed acknowledgments Dmitri Tikhonov
- Re: Proposed extension for delayed acknowledgments Dmitri Tikhonov
- Re: Proposed extension for delayed acknowledgments Jana Iyengar
- Re: Proposed extension for delayed acknowledgments Lucas Pardue
- Re: Proposed extension for delayed acknowledgments Jana Iyengar
- Re: Proposed extension for delayed acknowledgments Lucas Pardue
- Re: Proposed extension for delayed acknowledgments Jana Iyengar
- Re: Proposed extension for delayed acknowledgments Matt Joras
- Re: Proposed extension for delayed acknowledgments Lucas Pardue
- Re: Proposed extension for delayed acknowledgments Dmitri Tikhonov
- RE: Proposed extension for delayed acknowledgments Mike Bishop
- Re: Proposed extension for delayed acknowledgments Jana Iyengar
- Re: Proposed extension for delayed acknowledgments Maxime Piraux
- Re: Proposed extension for delayed acknowledgments Dmitri Tikhonov
- Re: Proposed extension for delayed acknowledgments Ian Swett
- Re: Proposed extension for delayed acknowledgments Christian Huitema
- Re: Proposed extension for delayed acknowledgments David Schinazi
- Re: Proposed extension for delayed acknowledgments Dmitri Tikhonov
- Re: Proposed extension for delayed acknowledgments Lucas Pardue
- Re: Proposed extension for delayed acknowledgments Ian Swett
- Re: Proposed extension for delayed acknowledgments Lucas Pardue
- Re: Proposed extension for delayed acknowledgments Ian Swett