Re: [EToSat] Interop runner with satellite links

Christian Huitema <huitema@huitema.net> Sat, 26 February 2022 02:40 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 57E273A0ED8 for <quic@ietfa.amsl.com>; Fri, 25 Feb 2022 18:40:01 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.602
X-Spam-Level:
X-Spam-Status: No, score=-7.602 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, NICE_REPLY_A=-0.714, RCVD_IN_DNSWL_HI=-5, SPF_HELO_NONE=0.001, T_SPF_PERMERROR=0.01, URIBL_BLOCKED=0.001] autolearn=unavailable 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 OxZQyTWUylrC for <quic@ietfa.amsl.com>; Fri, 25 Feb 2022 18:39:55 -0800 (PST)
Received: from mx36-out10.antispamcloud.com (mx36-out10.antispamcloud.com [209.126.121.30]) (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 49F253A0ECE for <quic@ietf.org>; Fri, 25 Feb 2022 18:39:55 -0800 (PST)
Received: from xse369.mail2web.com ([66.113.197.115] helo=xse.mail2web.com) by mx256.antispamcloud.com with esmtp (Exim 4.92) (envelope-from <huitema@huitema.net>) id 1nNmzu-000Ek9-Te for quic@ietf.org; Sat, 26 Feb 2022 03:39:53 +0100
Received: from xsmtp21.mail2web.com (unknown [10.100.68.60]) by xse.mail2web.com (Postfix) with ESMTPS id 4K59pX1sKKzC8v for <quic@ietf.org>; Fri, 25 Feb 2022 18:39:48 -0800 (PST)
Received: from [10.5.2.15] (helo=xmail05.myhosting.com) by xsmtp21.mail2web.com with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.92) (envelope-from <huitema@huitema.net>) id 1nNmzs-0002xS-3h for quic@ietf.org; Fri, 25 Feb 2022 18:39:48 -0800
Received: (qmail 32342 invoked from network); 26 Feb 2022 02:39:47 -0000
Received: from unknown (HELO [192.168.1.105]) (Authenticated-user:_huitema@huitema.net@[172.58.43.140]) (envelope-sender <huitema@huitema.net>) by xmail05.myhosting.com (qmail-ldap-1.03) with ESMTPA for <Chi-Jiun.Su=40hughes.com@dmarc.ietf.org>; 26 Feb 2022 02:39:47 -0000
Message-ID: <1f27c94e-e9ca-e93e-f158-b696fc2e82a8@huitema.net>
Date: Fri, 25 Feb 2022 18:39:44 -0800
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.6.1
Content-Language: en-US
To: "Su, Chi-Jiun" <Chi-Jiun.Su=40hughes.com@dmarc.ietf.org>, Sebastian Endres <basti.endres@fau.de>, "etosat@ietf.org" <etosat@ietf.org>, "quic@ietf.org" <quic@ietf.org>
Cc: "joerg.deutschmann@fau.de" <joerg.deutschmann@fau.de>
References: <2572762.KRHqeOQrTU@7b74a564-70da-4baa-82f8-b74434554dd0> <2321206.ElGaqSPkdT@7b74a564-70da-4baa-82f8-b74434554dd0> <BL1PR11MB53038951CA6E71DC10A7F6E5CE3A9@BL1PR11MB5303.namprd11.prod.outlook.com>
From: Christian Huitema <huitema@huitema.net>
Subject: Re: [EToSat] Interop runner with satellite links
In-Reply-To: <BL1PR11MB53038951CA6E71DC10A7F6E5CE3A9@BL1PR11MB5303.namprd11.prod.outlook.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 7bit
X-Originating-IP: 66.113.197.115
X-Spampanel-Domain: xsmtpout.mail2web.com
X-Spampanel-Username: 66.113.197.0/24
Authentication-Results: antispamcloud.com; auth=pass smtp.auth=66.113.197.0/24@xsmtpout.mail2web.com
X-Spampanel-Outgoing-Class: unsure
X-Spampanel-Outgoing-Evidence: Combined (0.15)
X-Recommended-Action: accept
X-Filter-ID: Pt3MvcO5N4iKaDQ5O6lkdGlMVN6RH8bjRMzItlySaT9WLQux0N3HQm8ltz8rnu+BPUtbdvnXkggZ 3YnVId/Y5jcf0yeVQAvfjHznO7+bT5x6h2yQpzTslcOqazQkKtAFKj/EwzSHE5FGYwwjsNRPCLt8 xnqBcOM9esdJeAj4mynmD6wdmZPcItWbGe10hXJtXL4FsauCVkDjmcYJdU3yWp7KuHNaaKdg7iBE ZefdsNUFWKwa/wzJUjmazeC7ImcaClrOPv/kGQfy70V7LFfeSRQ6V51u76v35b1wNe/MvdIASZp0 7mnQqdezZCtq+A712+J9PgaoF8SQHto3le4zsHTaeQtlKubP6iUTjj6yPARK6buALVaA782LKxg6 vRmng8N1aLhXqdc+jC1RcnVud53D5caUhbVtvqItBqoizkEt9O20UjkwI0v+LOlw05G4BS+iyyNq bT8dUMXMJ4tUCMj6G37ZfAMLceP5aNHPt26RBupu5v1nytoNnc138GfEJRQ2qC7jjynPIHPNqSn4 QTXUjLjYWQt1/5xnQymMoPsgr/U0flMcy2Vi/IcBgY4arPaiJ1W6hAyiRC61jekdwIcXNugoOEbH RyFULpSjm7hMIABpqqRGKyDs8xujM3cqKtEyjRS48tkuSWBkVvcslL3yHsS9UQ5V1vMoqoDzW9ye O73nTk87hlWAXHHQXTakEnFzsC48bTEFY06/YbB87Ww8G0LoS8V3Mt1pta8qAcLtCB3G1CwpaI3Z 4ESkMWDVJEenxBoIht3V0nekAoxXAryvYfviYRZ6cp6q6CvgtQuyuLfHqAnAj7rgKH7+eCmmR4dS srIkyrRodSe9XB9qx1ShcA6Xvva2QAVEjpqzANbJ1UfXmet2cbFKoyT/OdZL2Nv/HwjXBNdJ9kOe aFfSR20AuXq0T17woJo3avKeADIsy647Mn0zwmGzAi3Zn+YdthRNgs7Ig4l/XErpYn3glZTKFuaT l19W3ISq9+1KiLsESGU+y+fjdgjudZxiTPi+MG1QP35nsYfP84c+RFK3KiZuZ5OAUoGBziSYFLZu u6zX3xxsmqT8l9ARlsTalAaf
X-Report-Abuse-To: spam@quarantine11.antispamcloud.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/l3r2Vb-6hHrtwDhmLEc3msOogks>
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: Sat, 26 Feb 2022 02:40:02 -0000

On 2/21/2022 10:16 AM, Su, Chi-Jiun wrote:
> Hi Sebastian,
>
> Thanks for the great work.
> Some comments/questions.
>
>    *   Sec. IV,D, 5: Interesting to know "picoquic" does speculative retransmission. As you argue, this may not always help. Did you confirm with the author?

This is indeed supported in picoquic. There are APIs that allows the 
implementation to turn the feature on or off: 
`picoquic_set_preemptive_repeat_policy(quic_context, do_repeat)` is used 
to set the policy per Quic context, i.e., for all new connections; 
`picoquic_set_preemptive_repeat_per_cnx(connection_context, do_repeat)` 
is used to set the policy for a specific connection.

The speculative retransmission happens at the lowest priority, i.e., 
only happens if there is nothing else to send. It is subject to 
congestion control and rate limiting. The "nothing to send" rule means 
that it will only kick after all data of a stream and the FIN mark have 
been sent. The selection of data for speculative retransmission is based 
on stream level acknowledgements. The code deduces the acknowledged 
parts of a data stream from the packet acknowledgements. It will look at 
data that has been sent, but not yet acknowledged.

As you say, this does not always help. If the packet loss rate is low, 
most of the preemptively repeated packets will be useless. On the other 
hand, when sending a file over a lossy link, the application may wait a 
long time for retransmission of packets lost in the last RTT. If loss 
rate and data rates are high enough, some of these packets will have to 
be repeated twice, or maybe three times. So we have a tradeoff: waste 
bandwidth, or waste time. The API allows the application to consider 
that tradeoff and decide whether it is useful or not.

I would very much like to replace the current implementation of 
preemptive repeat by some version of FEC. FEC in general is a poor fit 
for transmission of big files, because it is always less bandwidth 
efficient than just repeating the packets that are lost. But if the 
application knows that the file transmission is almost complete, because 
there is just one CWIN worth of data left, it could turn own FEC for the 
the duration of the last RTT. It will "waste" a modest number of FEC 
packets, while drastically reducing the impact of packet losses on the 
duration of the file transfer. We could even imagine only sending the 
FEC packets after the FIN mark has been sent, making sure that FEC does 
not increase the duration of transfer if there were no errors.

-- Christian Huitema


>    *    The results show loss-based CC does not perform well compared to BBR
>    *   Production software performs well more like picoquic or not ?
>       *   how big difference is between production vs these implementations in the test?
>    *   Any Time-Offset graphs for EUTELSAT case ?
>    *   Research overview page: additional column on emulated or real Sat link will be helpful
>
> Good useful work.
> thanks.
> cj
> ________________________________
> From: QUIC <quic-bounces@ietf.org> on behalf of Sebastian Endres <basti.endres@fau.de>
> Sent: Friday, February 18, 2022 7:02 AM
> To: etosat@ietf.org <etosat@ietf.org>; quic@ietf.org <quic@ietf.org>
> Cc: joerg.deutschmann@fau.de <joerg.deutschmann@fau.de>
> Subject: Re: [EToSat] Interop runner with satellite links
>
> **EXTERNAL EMAIL**
>
> Dear all,
>
> we've published a pre-print of our paper in which we present the QUIC-Interop-runner extended to include satellite scenarios and our measurement results using numerous publicly available QUIC implementations:
>
> https://urldefense.com/v3/__https://arxiv.org/abs/2202.08228__;!!Emaut56SYw!mFvp0jheUG95wMrw7L6ZHr3AUjZZgp63MEXhAZnEYvwEkQITw9uIFauoKkW-JRj-Kg$
>
> Best regards,
>
> Sebastian
>
> On Mittwoch, 29. September 2021 21:38:05 CET Sebastian Endres wrote:
>> Dear all,
>>
>> for my master's thesis we ran measurements of all publicly available QUIC implementations over an emulated satellite link. The results are available online: https://urldefense.com/v3/__https://interop.sedrubal.de/__;!!Emaut56SYw!mFvp0jheUG95wMrw7L6ZHr3AUjZZgp63MEXhAZnEYvwEkQITw9uIFauoKkUlf0EgaQ$
>>
>> A click on the results also shows time-offset plots, but are not available for every combination.
>>
>> In general, the performance of QUIC over high latency (e.g., geostationary satellites) is rather poor, especially if there is packet loss.
>>
>> Would it make sense to add such tests with challenging link characteristics to the official QUIC interop runner?
>>
>> Best regards,
>>
>> Sebastian
>>
>>
>> _______________________________________________
>> EToSat mailing list
>> EToSat@ietf.org
>> https://urldefense.com/v3/__https://www.ietf.org/mailman/listinfo/etosat__;!!Emaut56SYw!mFvp0jheUG95wMrw7L6ZHr3AUjZZgp63MEXhAZnEYvwEkQITw9uIFauoKkXTZO8rhQ$
>>
>
>
>
> _______________________________________________
> EToSat mailing list
> EToSat@ietf.org
> https://www.ietf.org/mailman/listinfo/etosat