Re: Unrecoverable loss pattern

Christian Huitema <huitema@huitema.net> Mon, 26 February 2018 01:20 UTC

Return-Path: <huitema@huitema.net>
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 3096E127342 for <quic@ietfa.amsl.com>; Sun, 25 Feb 2018 17:20:12 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level:
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-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 dKJxTeDkeXVZ for <quic@ietfa.amsl.com>; Sun, 25 Feb 2018 17:20:10 -0800 (PST)
Received: from mx43-out1.antispamcloud.com (mx43-out1.antispamcloud.com [138.201.61.189]) (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 7034F127275 for <quic@ietf.org>; Sun, 25 Feb 2018 17:20:09 -0800 (PST)
Received: from xsmtp24.mail2web.com ([168.144.250.190] helo=xsmtp04.mail2web.com) by mx3.antispamcloud.com with esmtps (TLSv1:AES256-SHA:256) (Exim 4.89) (envelope-from <huitema@huitema.net>) id 1eq7SX-0003bC-DW for quic@ietf.org; Mon, 26 Feb 2018 02:20:06 +0100
Received: from [10.5.2.49] (helo=xmail11.myhosting.com) by xsmtp04.mail2web.com with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.63) (envelope-from <huitema@huitema.net>) id 1eq7SP-000834-Rt for quic@ietf.org; Sun, 25 Feb 2018 20:20:01 -0500
Received: (qmail 14928 invoked from network); 26 Feb 2018 01:19:55 -0000
Received: from unknown (HELO [192.168.1.103]) (Authenticated-user:_huitema@huitema.net@[172.56.42.158]) (envelope-sender <huitema@huitema.net>) by xmail11.myhosting.com (qmail-ldap-1.03) with ESMTPA for <quic@ietf.org>; 26 Feb 2018 01:19:55 -0000
To: quic@ietf.org
References: <CAOYVs2q1QSpvZjPRfbJmKhhQ6eApwLSSFSbbOBt2J-PAeqVELQ@mail.gmail.com> <CABkgnnWuXJb2_BcfU4N=ODwy5JDZKBBd6TyhFmXLbPgVrvCoEA@mail.gmail.com> <CAOYVs2q0q6YrFfipd7UEENoz2ht2Mr0fPqnvy5pJRz-bPxCJpw@mail.gmail.com>
From: Christian Huitema <huitema@huitema.net>
Message-ID: <059bc7c6-a8cb-c46b-c971-333b9051c222@huitema.net>
Date: Sun, 25 Feb 2018 17:19:52 -0800
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <CAOYVs2q0q6YrFfipd7UEENoz2ht2Mr0fPqnvy5pJRz-bPxCJpw@mail.gmail.com>
Content-Type: multipart/alternative; boundary="------------DECB6CD3F32DDBD8B2F0FD86"
Content-Language: en-US
Subject: Re: Unrecoverable loss pattern
X-Originating-IP: 168.144.250.190
X-AntiSpamCloud-Domain: xsmtpout.mail2web.com
X-AntiSpamCloud-Username: 168.144.250.0/24
Authentication-Results: antispamcloud.com; auth=pass smtp.auth=168.144.250.0/24@xsmtpout.mail2web.com
X-AntiSpamCloud-Outgoing-Class: unsure
X-AntiSpamCloud-Outgoing-Evidence: Combined (0.13)
X-Recommended-Action: accept
X-Filter-ID: EX5BVjFpneJeBchSMxfU5ged1JwBGrDWcAnK04Awqb1602E9L7XzfQH6nu9C/Fh9KJzpNe6xgvOx q3u0UDjvO37pNwwF1lRXh5rzvPzo9Jts1ujulqUFmMITHM77eiViy65yv2CxhMjFzyLlDHN6887i TvJ2/ZGzVWB9scFAaCdIFaUvXN+CI+RGy3Me16pBiuj1YIZWyGteeTEbAD/lb/vRa7MR4hgRIg8N 1QlY4G7x1YBTEs55LirRLgpsvCFtid7SQi4NE/job5y2wAN3GZxznd8NXwc/vKJtfZaXo5QAJAfA 9MMVcQ9WVjD1q+Rbd9IPG/DQ2p+GU04sTuYFs91jhnM/Mbva2XLV/LIEzaKyLm0zESXAkIAT8ZKA DvsGI5uh86ZVnyOrYkLMWyEaRt9fxN2oReTDHAyOynaY0ClKHhIXfDbmhz3DoftFSAfVIRFsicyJ MEhQFtD8PLoiniWmsFByBoXAuCZEyg59LM81CaOu2xwDQxDsUgSvK+nII1IRruUYLOgUnyoTu5lV X1MKVprlQYwN+KHznEQNFP39x9CAjlzRZaienerOS9C0xK1xc9LrTkd4h33gwBLx3gfG/OGabeQO D+JyvmSUpW+ZQTl/k5oRlt1ErWfaEWxe22o4BNBy+bVfxj88zI41K1O7B0jvACHkMSS0WCQUO4Da Q6mrvkz1ms5n2i5GFAoJSGG/BQd7r2NVEaNhWos5pvROZI5izAILJU7ATFpkuBoccBIk1Sag4dKi qCrF8eZZeNMTAWyxeqt3BjCO03tBtkqah8tX/yBccUywZq2FP6SBi6owqeb+h1kbxIVWYdC7N1zg 8T9ahw4hquQDupK1jleqv/VOJZnHunWcIBzbsDrLaeA4pl20N4bgeYf9w8whIRFsicyJMEhQFtD8 PLoinpgjWjpMfsxmWdg884icSQEZwRvSfvkJh2VafuDhMcA1uHlEIbR8fMtAowK0FL525g==
X-Report-Abuse-To: spam@quarantine5.antispamcloud.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/jp998VOxptqJPikFhBc2B4IMvJg>
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: Mon, 26 Feb 2018 01:20:12 -0000

On 2/25/2018 4:58 PM, Marten Seemann wrote:

> @Nick: The server did get all handshake packets, please see 1. in my
> description. It's the server's ACK for the FINISHED message that is
> lost, not the FINISHED message itself.
> @Martin: Yes, it is, but I don't think there's anything problematic
> about the language in this paragraph. Since the server received ACKs
> for all the handshake messages it sent, it makes sense to not open
> unencrypted packets any more.

See https://github.com/quicwg/base-drafts/issues/829 and
https://github.com/quicwg/base-drafts/issues/1018 for  discussion of
related issues.

Picoquic manages these issues by handling "ACK of ACK". Normally, it
will send ACK frames that acknowledge all packets received so far,
potentially with a long list of ACK ranges. So if an ACK is lost, the
next ACK will repeat the information that it carried. The list is only
pruned when an "ACK of ACK" is received.

In your example, if the FINISHED message is not acknowledged, the client
will retransmit the stream zero data containing the FINISHED message in
a new Handshake packet. The server will have to send an ACK of that
packet, and the ACK range will also cover the previous packet. There is
no problem for sending that ACK. You cannot acknowledge a protected
packet in a clear text message, but nothing prevents you from
acknowledging clear text packets in protected messages.

-- Christian Huitema