RE: Idea for packet numbers

"Swindells, Thomas (Nokia - GB/Cambridge, UK)" <thomas.swindells@nokia.com> Tue, 25 July 2017 14:46 UTC

Return-Path: <thomas.swindells@nokia.com>
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 8CC71131CE7 for <quic@ietfa.amsl.com>; Tue, 25 Jul 2017 07:46:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.92
X-Spam-Level:
X-Spam-Status: No, score=-1.92 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_PASS=-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=nokia.onmicrosoft.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 X0340vNEyvgB for <quic@ietfa.amsl.com>; Tue, 25 Jul 2017 07:46:31 -0700 (PDT)
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0133.outbound.protection.outlook.com [104.47.1.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1F3DD131CD0 for <quic@ietf.org>; Tue, 25 Jul 2017 07:46:31 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=hgDcT95fozCTTC5aBxsdDvhDZylxqfyWdfQK0B5h128=; b=RZA2Q6+N72abYbseCwmdj5US40smedI+DuVbvyiEKfnMgFApzsGjgANn7EATLV4sw7/MiwxlazfD3Ko/PNZ3lXvetqRWL9teGFQe3Jws+Hw8pYyd3OzXM9fFQ0sOuN3KYG2Y7JfRk2IboEM+5u7PJc9zJnUe7Oe/e3woe1AuM3A=
Received: from DB5PR07MB1237.eurprd07.prod.outlook.com (10.164.41.139) by DB5PR07MB0997.eurprd07.prod.outlook.com (10.161.200.155) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1304.10; Tue, 25 Jul 2017 14:46:27 +0000
Received: from DB5PR07MB1237.eurprd07.prod.outlook.com ([fe80::400b:454d:9821:a354]) by DB5PR07MB1237.eurprd07.prod.outlook.com ([fe80::400b:454d:9821:a354%13]) with mapi id 15.01.1304.014; Tue, 25 Jul 2017 14:46:27 +0000
From: "Swindells, Thomas (Nokia - GB/Cambridge, UK)" <thomas.swindells@nokia.com>
To: "MORTON, ALFRED C (AL)" <acmorton@att.com>, Ian Swett <ianswett@google.com>
CC: Magnus Westerlund <magnus.westerlund@ericsson.com>, Mikkel Fahnøe Jørgensen <mikkelfj@gmail.com>, IETF QUIC WG <quic@ietf.org>, Dmitri Tikhonov <dtikhonov@litespeedtech.com>
Subject: RE: Idea for packet numbers
Thread-Topic: Idea for packet numbers
Thread-Index: AQHTAT74Pm6HB4E+oUyHojrh9ct+26JcjwOAgAF4cgCAA8bLAIACsUOAgAAkBQCAAABhMA==
Date: Tue, 25 Jul 2017 14:46:27 +0000
Message-ID: <DB5PR07MB1237AD0D4933D12BC04749CB84B80@DB5PR07MB1237.eurprd07.prod.outlook.com>
References: <c7941a67-6eaa-cd58-d0e2-a764478aa5b0@ericsson.com> <CAN1APdfwCoEieon8H98TOXBmsiwoHQfpsknfMB4hteU5gi9sMg@mail.gmail.com> <20170721093732.GA31705@ubuntu-dmitri> <DB5PR07MB1237B7C130AE23585EFF4CB084B80@DB5PR07MB1237.eurprd07.prod.outlook.com> <CAKcm_gNNPC9eUMoBynXuz0p_YZHRsbK6ToaqoT7+u5NGAwf9sw@mail.gmail.com> <4D7F4AD313D3FC43A053B309F97543CF46BC67BC@njmtexg4.research.att.com>
In-Reply-To: <4D7F4AD313D3FC43A053B309F97543CF46BC67BC@njmtexg4.research.att.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=thomas.swindells@nokia.com;
x-originating-ip: [82.69.101.84]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB5PR07MB0997; 7:B3jrv/WYTWEZAnLnK8wYHapR/rcH1uWnjQiSLtn5XD7Cw2jOYjg/OZqr40uk5mreKqbdAMtE4PHAXF9F9U486LFyHmCvs1YBP9w2STMh5BzPT/33rIm1fcEFFiQXz2Ku0nfYKlJcUpAGvV2uO1WeygQsabTi7q3BfmTehHLQVEXX6xarwp3iVfU/xFsUdNpwXLKaSnX/BdOCuOYlD+JBcfo6BMuBqS2QwSlKcsszn/YH3XEqnSQ5STcfI+6pS/I/N22V8DNCg3gxfOZoDyX7wgiBIiMfqlbTk4LrcbpMAcW7OGDzE5R/T8fNIrqj0DV1HQEqaI7Qsk+n8Iz9hYSZUb3tgJvusmw0gCUm/Xxwyc6HtVE93xUkpqvX7rMEX4TpAD8VmR0YvpyNyN+uwj+fNB17k2u0h+gQS0WJ+IWjojBK0BxdkiK83Lp0HY2yApiPfeJJLa0qIM7r68xC4PqovJLeSCkSMzGhRevMWsA42IeH6WG1vPG2EoQ+05WVIRSFGBmSy5WrhMDTjIOnkdmYwoWd79hz5Ncx8lZod4uJq1pXP+Mou0v0uWYG1WyTuzdbqrrwHOy58u8uN3r5IFYiHkONXXRcbGf77+xZkODoqtyFQV2OkgPSJZwQ88W6xgl6ZtnxkFsk9QBeD59Z5Qom/qjMjmaLLSU+IjclWfl94jNDX7TYxNHZvwEbFq9FZA7TIztElk4hm3Z/oQMbYbpSbg0emBkMcAHlK2fu3iEeGsuX2f+sskv+AUJcRBCcoJ23lTKYSfDVtCRlYc3jfJ8V4RBZYeRXGJ93OTUqLOGh6sQ=
x-ms-office365-filtering-correlation-id: 6d2e2bb5-0ad7-4ddc-cda6-08d4d36bedf6
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254075)(300000503095)(300135400095)(48565401081)(2017052603031)(201703131423075)(201703031133081)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:DB5PR07MB0997;
x-ms-traffictypediagnostic: DB5PR07MB0997:
x-exchange-antispam-report-test: UriScan:(37575265505322)(82608151540597)(97927398514766)(211936372134217)(153496737603132)(21748063052155);
x-microsoft-antispam-prvs: <DB5PR07MB099746048C66B2E8E35DF49E84B80@DB5PR07MB0997.eurprd07.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93001095)(100000703101)(100105400095)(920507026)(6055026)(6041248)(20161123560025)(20161123558100)(20161123564025)(20161123555025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:DB5PR07MB0997; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:DB5PR07MB0997;
x-forefront-prvs: 03793408BA
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(39840400002)(39450400003)(39410400002)(39860400002)(39850400002)(39400400002)(377454003)(199003)(189002)(6436002)(53936002)(3480700004)(8936002)(93886004)(39060400002)(66066001)(33656002)(55016002)(81156014)(99286003)(68736007)(86362001)(81166006)(236005)(6246003)(478600001)(2950100002)(14454004)(54896002)(38730400002)(4326008)(54906002)(9686003)(97736004)(2906002)(3280700002)(3660700001)(25786009)(53546010)(105586002)(5250100002)(6506006)(74316002)(2900100001)(7736002)(34040400001)(101416001)(229853002)(106356001)(76176999)(189998001)(5660300001)(50986999)(8676002)(790700001)(6306002)(6116002)(102836003)(3846002)(7696004)(54356999); DIR:OUT; SFP:1102; SCL:1; SRVR:DB5PR07MB0997; H:DB5PR07MB1237.eurprd07.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en;
received-spf: None (protection.outlook.com: nokia.com does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_DB5PR07MB1237AD0D4933D12BC04749CB84B80DB5PR07MB1237eurp_"
MIME-Version: 1.0
X-OriginatorOrg: nokia.com
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Jul 2017 14:46:27.1446 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5d471751-9675-428d-917b-70f44f9630b0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR07MB0997
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/eBZRUQXwgzyYqLkE5HVHQomTXeo>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.22
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: Tue, 25 Jul 2017 14:46:35 -0000

That is partly my concern, if implementations/mechanisms are assuming a low level of reordering (such as middle boxes using a spin bit) how confident are we that those assumptions are accurate and a good thing to ossify?
With a multi-threaded multi-nic system I’m not certain it is actually that it is necessarily easy to (performantly) avoid re-ordering - even if the implementation doesn’t deliberately intend to introduce it.

One solution is to decide that spin bit and less complex lost packet tracking (and whatever else benefits from low amounts of packet reordering) are worthwhile properties and so mandate clearly that packet generation must be serialised and the egress of the packets strictly ordered as much as possible (e.g. each connection is locked to a nic with the packets sent in the correct order). I’ve no idea if this is a property current implementations actually have today or if multiple streams are encrypted on different threads with just the implicit assumption the output will end up in the right order.

Thomas

From: MORTON, ALFRED C (AL) [mailto:acmorton@att.com]
Sent: 25 July 2017 15:34
To: Ian Swett <ianswett@google.com>; Swindells, Thomas (Nokia - GB/Cambridge, UK) <thomas.swindells@nokia.com>
Cc: Magnus Westerlund <magnus.westerlund@ericsson.com>; Mikkel Fahnøe Jørgensen <mikkelfj@gmail.com>; IETF QUIC WG <quic@ietf.org>; Dmitri Tikhonov <dtikhonov@litespeedtech.com>
Subject: RE: Idea for packet numbers

Hi Ian, Thomas,

From: QUIC [mailto:quic-bounces@ietf.org] On Behalf Of Ian Swett
Sent: Tuesday, July 25, 2017 8:25 AM
To: Swindells, Thomas (Nokia - GB/Cambridge, UK)
Cc: Magnus Westerlund; Mikkel Fahnøe Jørgensen; IETF QUIC WG; Dmitri Tikhonov
Subject: Re: Idea for packet numbers

Some thoughts.

1) Sending packet numbers in order is not required, but the farther out of order packets get, the more acks the receiver is going to send, the larger they'll be, and the more complex loss detection is.  In particular, you won't be able to rely on QUIC's packet numbers being in time order.  TLDR; It's easier to send packets in order than it is to correctly deal with the implications of sending them out of order.
<snip>
[ACM]
Although this thread is on longer packet numbers,
I think it’s worth pointing out that
routine reordering at the Sender would have
implications for the single-bit alternate marking
(Spin-bit) approach. The boundary between
packets marked “0” and “1” would not be reliable;
there would appear to be very short RTTs along with longer RTTs:

  ... 0 0 0 1 1 0 1 1 1 1 1 ...
            ^ ^
   ^ = reordered
The single bit doesn’t have enough info to
restore order. Avoid reordering if possible.

Al