Re: [LOOPS] Packet sequence numbers

"Morten V. Pedersen" <morten@steinwurf.com> Tue, 22 October 2019 06:18 UTC

Return-Path: <morten@steinwurf.com>
X-Original-To: loops@ietfa.amsl.com
Delivered-To: loops@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E4261120B03 for <loops@ietfa.amsl.com>; Mon, 21 Oct 2019 23:18:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.598
X-Spam-Level:
X-Spam-Status: No, score=-2.598 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_NONE=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 BnNvwzlJkNxj for <loops@ietfa.amsl.com>; Mon, 21 Oct 2019 23:18:15 -0700 (PDT)
Received: from mailout-taastrup.gigahost.dk (mailout-taastrup.gigahost.dk [46.183.139.199]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C2769120B04 for <loops@ietf.org>; Mon, 21 Oct 2019 23:18:15 -0700 (PDT)
Received: from mailout.gigahost.dk (mailout.gigahost.dk [89.186.169.112]) by mailout-taastrup.gigahost.dk (Postfix) with ESMTP id 8FBA01891FA2 for <loops@ietf.org>; Tue, 22 Oct 2019 06:18:05 +0000 (UTC)
Received: from smtp.gigahost.dk (smtp.gigahost.dk [89.186.169.109]) by mailout.gigahost.dk (Postfix) with ESMTP id C8CFA78320E for <loops@ietf.org>; Tue, 22 Oct 2019 06:18:11 +0000 (UTC)
Received: by smtp.gigahost.dk (Postfix, from userid 1000) id 55DB92721A80; Tue, 22 Oct 2019 06:18:05 +0000 (UTC)
X-Screener-Id: f8b5956341cafa01bc0fc2c7b7d4a245e1dff3de
Received: from [192.168.87.113] (unknown [85.218.152.21]) by smtp.gigahost.dk (Postfix) with ESMTPSA id 191472721A0E for <loops@ietf.org>; Tue, 22 Oct 2019 06:18:05 +0000 (UTC)
To: loops@ietf.org
References: <289BCF98-9F51-4E22-B8E2-50E17C1E8644@tzi.org> <D408889639FC5E4FADB4E00A3E01FA8FC6093104@nkgeml513-mbx.china.huawei.com> <3B1DB1C6-9E23-47C2-B7FA-A41079BF1490@ifi.uio.no> <72B131DC-5255-4310-A148-15BC7A5698D1@tzi.org>
From: "Morten V. Pedersen" <morten@steinwurf.com>
Message-ID: <f790df4e-7612-ec7d-6d23-74778fcf67df@steinwurf.com>
Date: Tue, 22 Oct 2019 08:18:12 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0
MIME-Version: 1.0
In-Reply-To: <72B131DC-5255-4310-A148-15BC7A5698D1@tzi.org>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/loops/qvSxqhsA4M-Qk9tdv1AEEioHUGA>
Subject: Re: [LOOPS] Packet sequence numbers
X-BeenThere: loops@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Local Optimizations on Path Segments <loops.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/loops>, <mailto:loops-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/loops/>
List-Post: <mailto:loops@ietf.org>
List-Help: <mailto:loops-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/loops>, <mailto:loops-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 22 Oct 2019 06:18:18 -0000

Hi all,
I'm not an expert on QUIC or such, but what was the motivation for 
continuously increasing sequence numbers there. I imagine they had some 
good reasons to go down that path.

 From a FEC and re-transmission standpoint continuously increasing 
sequence numbers yields simpler implementations from my point of view.

It is relatively easy for the FEC implementation to estimate the packet 
loss, and for a pure re-transmission scheme detection of "holes" is 
trivial without worrying about what data the packet carried i.e. if it 
was payload data or a re-transmission in itself. It can just report back 
and say I did not get packet X whatever it was.

All the best,
Morten


On 10/21/19 10:45 PM, Carsten Bormann wrote:
>> Even though I originally suggested the QUIC method of continuously increasing sequence numbers, I think this assessment of the trade-offs is very good, and now I tend to agree that, for LOOPS, repeating sequence numbers would be better.
> I think that this conclusion is a good basis for continuing the work.
> I made the necessary changes (I think) in https://github.com/loops-wg/gen-info/commit/2dd7634
>
> I also added some text about mitigating ACK ambiguity, which is facilitated if the ingress never sets “ACK desired” on a retransmission.
>
> There is currently no detailed text on how to decide to retransmit.  The current spec is mute (a.k.a. “flexible”) on the implementation strategy.  For hole-based retransmission triggering, re-using the PSD needs to include a hold-off for packets that have recently been retransmitted so another copy of block 2 information that just confirms the existing hole doesn’t trigger another retransmission.  For a time-based retransmission scheme (as in RACK), retransmission would simply move forward the packet into the then appropriate slot.
>
>> +1 on the need for more-than-once, for wireless links.
> Right.  I think that single retransmission is a nice implementation strategy for some applications, so we should continue to pay attention that we don’t inadvertently make it harder to do than it is now.
>
> Grüße, Carsten
>