Re: [6lo] draft-ietf-6lo-fragment-recovery: Send a FULL bitmap when datagram is complete?

Martine Lenders <m.lenders@fu-berlin.de> Wed, 23 October 2019 13:14 UTC

Return-Path: <m.lenders@fu-berlin.de>
X-Original-To: 6lo@ietfa.amsl.com
Delivered-To: 6lo@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8D5D11208DC for <6lo@ietfa.amsl.com>; Wed, 23 Oct 2019 06:14:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.198
X-Spam-Level:
X-Spam-Status: No, score=-4.198 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=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 U-VH19IQBWjM for <6lo@ietfa.amsl.com>; Wed, 23 Oct 2019 06:14:05 -0700 (PDT)
Received: from outpost1.zedat.fu-berlin.de (outpost1.zedat.fu-berlin.de [130.133.4.66]) (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 6D8761208D8 for <6lo@ietf.org>; Wed, 23 Oct 2019 06:14:05 -0700 (PDT)
Received: from inpost2.zedat.fu-berlin.de ([130.133.4.69]) by outpost.zedat.fu-berlin.de (Exim 4.85) for 6lo@ietf.org with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (envelope-from <m.lenders@fu-berlin.de>) id <1iNGSh-003Z7L-K9>; Wed, 23 Oct 2019 15:14:03 +0200
Received: from mail-ot1-f41.google.com ([209.85.210.41]) by inpost2.zedat.fu-berlin.de (Exim 4.85) for 6lo@ietf.org with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (envelope-from <m.lenders@fu-berlin.de>) id <1iNGSh-001Wb7-2B>; Wed, 23 Oct 2019 15:14:03 +0200
Received: by mail-ot1-f41.google.com with SMTP id g13so17334421otp.8 for <6lo@ietf.org>; Wed, 23 Oct 2019 06:14:03 -0700 (PDT)
X-Gm-Message-State: APjAAAXKn3GVHjQgYwmpUSlvhgwVg6QYQ5crd/SpxNty1DL22mehHyoA hh1KuNA5+XwQOFjVEiCUff9I7bAe6bZYLTSAA0o=
X-Google-Smtp-Source: APXvYqyE8+HaMCAZvZXlxakyJqg/j8Mz3o8YrIlgBo4hZMqimf2Ez5SKRBWkZymldvGIAVyQuXo7HUjbOJYrtybnxnA=
X-Received: by 2002:a9d:7d92:: with SMTP id j18mr7377043otn.37.1571836441773; Wed, 23 Oct 2019 06:14:01 -0700 (PDT)
MIME-Version: 1.0
References: <CALHmdRzhXsz1pNzc-cJ=+ufE3ioCXtRGkAugBSZSuyGNXE1wNg@mail.gmail.com> <515A623D-07D8-4DFD-9F8E-EB527B73EDAB@cisco.com> <CALHmdRwhO9_rwA5Q86x-m_4YKLaJ6D636wqBcshm+1SjEpiwZg@mail.gmail.com> <MN2PR11MB35655D6C1EF3E6F8915178C5D86B0@MN2PR11MB3565.namprd11.prod.outlook.com>
In-Reply-To: <MN2PR11MB35655D6C1EF3E6F8915178C5D86B0@MN2PR11MB3565.namprd11.prod.outlook.com>
From: Martine Lenders <m.lenders@fu-berlin.de>
Date: Wed, 23 Oct 2019 15:13:24 +0200
X-Gmail-Original-Message-ID: <CALHmdRw_6mBft-raVbOSdYZjZbjN++Yj7127bNagM_U+GSJ_ng@mail.gmail.com>
Message-ID: <CALHmdRw_6mBft-raVbOSdYZjZbjN++Yj7127bNagM_U+GSJ_ng@mail.gmail.com>
To: "Pascal Thubert (pthubert)" <pthubert@cisco.com>
Cc: "6lo@ietf.org" <6lo@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000c1ccf8059593b0e4"
X-Originating-IP: 209.85.210.41
X-ZEDAT-Hint: A
Archived-At: <https://mailarchive.ietf.org/arch/msg/6lo/w8tFxCyFuTgf46IrhB4WRTFC1wE>
Subject: Re: [6lo] draft-ietf-6lo-fragment-recovery: Send a FULL bitmap when datagram is complete?
X-BeenThere: 6lo@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Mailing list for the 6lo WG for Internet Area issues in IPv6 over constrained node networks." <6lo.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/6lo>, <mailto:6lo-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/6lo/>
List-Post: <mailto:6lo@ietf.org>
List-Help: <mailto:6lo-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/6lo>, <mailto:6lo-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 23 Oct 2019 13:14:08 -0000

Hi Pascal,

Sorry, I noticed this in your original mail, but forgot to mention it, now
it is also in the draft:

> […] Acknowledgment on the reverse path with a FULL bitmap, and harms a
> short timer to absorb packets that are still in flight for that […]

Do you mean "arms a short timer"?

Best regards,
Martine

Am Mi., 23. Okt. 2019 um 14:52 Uhr schrieb Pascal Thubert (pthubert) <
pthubert@cisco.com>:

> Cool : )
>
>
>
> I published 07, please see the diffs.
>
>
>
> All the best;
>
>
>
> Pascal
>
>
>
> *From:* 6lo <6lo-bounces@ietf.org> *On Behalf Of *Martine Lenders
> *Sent:* mercredi 23 octobre 2019 14:46
> *To:* Pascal Thubert (pthubert) <pthubert@cisco.com>
> *Cc:* 6lo@ietf.org
> *Subject:* Re: [6lo] draft-ietf-6lo-fragment-recovery: Send a FULL bitmap
> when datagram is complete?
>
>
>
> Hi,
>
>
>
> Am Mi., 23. Okt. 2019 um 14:43 Uhr schrieb Pascal Thubert (pthubert) <
> pthubert@cisco.com>:
>
> Hello Martine
>
>
>
> I meant fragments. It can be expected that a few fragments are still in
> flight after everything is received because of end to end fragment retries
> or L2 ARQ. So the receiver must keep a state to drop them silently. But is
> it gets “too much “ of that it may be an error and the receiver should
> abort the flow.
>
>
>
> That “too much” decision is left to implementation.
>
>
>
> Thank, now it is clearer!
>
>
>
> Regards,
>
> Martine
>
>
>
>
>
>
>
> Regards,
>
>
>
> Pascal
>
>
>
> Le 23 oct. 2019 à 14:29, Martine Lenders <m.lenders@fu-berlin.de> a
> écrit :
>
> 
>
> Hi Pascal,
>
>
>
> Am Mo., 21. Okt. 2019 um 18:14 Uhr schrieb Pascal Thubert (pthubert) <
> pthubert@cisco.com>:
>
> Hello Again
>
>
>
> I reread the text and it appears that the receiver operation is too
> implicit. I suggest to add this in the last fragment processing:
>
>
>
>     When all the fragments are received, the receiving endpoint
> reconstructs
>
>     the packet, passes it to the upper layer, sends a RFRAG Acknowledgment
> on
>
>     the reverse path with a FULL bitmap, and harms a short timer to absorb
>
>     packets that are still in flight for that datagram without creating a
> new
>
>     state and abort the communication if it keeps going.
>
>
>
> Does that help?
>
>
>
> If this goes somewhere in section 6, yes I think that makes it far more
> understandable.
>
>
>
> Note that there’s room for an implementation to decide if it absorbs
> silently a few packets and for how long, and when it decides to reset the
> flow. The all 1 (to be renamed throughout to FULL)  does not help more than
> the reset.
>
>
>
> By packets you mean fragments or reassembled datagrams. I don't really
> understand what you mean by that.
>
>
>
> Best regards,
>
> Martine
>
>
>
>
>
> Pascal
>
>
>
>
>
> *From:* Pascal Thubert (pthubert)
> *Sent:* lundi 21 octobre 2019 17:29
> *To:* Martine Lenders <m.lenders@fu-berlin.de>; 6lo@ietf.org
> *Subject:* RE: [6lo] draft-ietf-6lo-fragment-recovery: Send a FULL bitmap
> when datagram is complete?
>
>
>
> Sorry I missed that Martine!
>
>
>
> The ALL 1s was already sent when the last fragment was received. This text
> happens later.
>
>
>
> It is supposed to have been processed along the way back. The receiving
> end node maintains a state for a “short” time after the message processing
> to absorb packets that may still be in flight. During that “short” time it
> is capable to recognize redundant packets and drop them as opposed to
> create a new state and expect the full fragment. For legitimate packets
> still in flight the good thing would be to stay silent. If the Ack with a
> FULL (All 1s) bitmap was lost then sending it again would be OK as you
> point out.
>
>
>
> But there might also be error conditions, like a weird situation that the
> FULL bitmap did not fix on its way back where the sender keeps sending. If
> the FULL bitmap failed then retrying it may fail again. The reset is a
> clearer indication to drop everything regardless and move to the next.
>
>
>
> Works? Should we massage text?
>
>
>
> All the best
>
>
>
> Pascal
>
>
>
> Am Di., 1. Okt. 2019 um 16:31 Uhr schrieb Martine Lenders <
> m.lenders@fu-berlin.de>:
>
> Hi,
>
>
>
> draft-ietf-6lo-fragment-recovery states in section 6.3
>
>
>
> [the] might need to abort the process of a fragmented packet for internal
> reasons, for instance if it […] considers that this packet is already fully
> reassembled and passed to the upper layer. In that case, the receiver
> SHOULD indicate so to the sender with a NULL bitmap in a RFRAG
> Acknowledgment.
>
>
>
> The given example seems to me the perfect instance to set a FULL bitmap
> instead. There is no other instance were a FULL bitmap is specified to be
> sent, except for the case that the datagram incidentally fills out the
> whole value space of the sequence number field.
>
>
>
> Or am I missing something?
>
>
>
> Kind regards,
>
> Martine
>
>