Re: [6tisch] Questions on TSCH CSMA-CA retransmission algorithm in IEEE 802.15.4-2015

Fabrice Théoleyre <theoleyre@unistra.fr> Thu, 14 June 2018 14:30 UTC

Return-Path: <theoleyre@unistra.fr>
X-Original-To: 6tisch@ietfa.amsl.com
Delivered-To: 6tisch@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5FF99130DC0 for <6tisch@ietfa.amsl.com>; Thu, 14 Jun 2018 07:30:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Level:
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, 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 aG0zQBkmTQ-t for <6tisch@ietfa.amsl.com>; Thu, 14 Jun 2018 07:30:48 -0700 (PDT)
Received: from mailhost.u-strasbg.fr (smr1.u-strasbg.fr [130.79.222.217]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 10B0A12777C for <6tisch@ietf.org>; Thu, 14 Jun 2018 07:30:48 -0700 (PDT)
Received: from local-mr.u-strasbg.fr (lmr3.u-strasbg.fr [172.30.21.3]) by smr1.u-strasbg.fr (Postfix) with ESMTP id 3526B60642; Thu, 14 Jun 2018 16:30:44 +0200 (CEST)
Received: from local-mr.u-strasbg.fr (localhost [127.0.0.1]) by antivirus (Postfix) with ESMTP id 1359F26C; Thu, 14 Jun 2018 16:30:44 +0200 (CEST)
Received: from minet.u-strasbg.fr (minet.u-strasbg.fr [130.79.91.198]) (Authenticated sender: theoleyre) by lmr3.u-strasbg.fr (Postfix) with ESMTPSA id D9392269; Thu, 14 Jun 2018 16:30:41 +0200 (CEST)
From: Fabrice Théoleyre <theoleyre@unistra.fr>
Message-Id: <4391DBCC-ABC5-4F39-9BC2-2BD9E184EE5F@unistra.fr>
Content-Type: multipart/alternative; boundary="Apple-Mail=_10E16BD0-91D3-40BD-AF8A-378FCDF7B991"
Mime-Version: 1.0 (Mac OS X Mail 11.4 \(3445.8.2\))
Date: Thu, 14 Jun 2018 16:30:41 +0200
In-Reply-To: <FC00A9BD-16FC-4E54-8B73-C76CAA035138@inria.fr>
Cc: 6tisch@ietf.org
To: Yasuyuki Tanaka <yasuyuki.tanaka@inria.fr>
References: <FC00A9BD-16FC-4E54-8B73-C76CAA035138@inria.fr>
X-Mailer: Apple Mail (2.3445.8.2)
X-Virus-Scanned: ClamAV using ClamSMTP
Archived-At: <https://mailarchive.ietf.org/arch/msg/6tisch/NVHYxa1zmCVyp8HRAbkKpqU5GvE>
Subject: Re: [6tisch] Questions on TSCH CSMA-CA retransmission algorithm in IEEE 802.15.4-2015
X-BeenThere: 6tisch@ietf.org
X-Mailman-Version: 2.1.26
Precedence: list
List-Id: "Discuss link layer model for Deterministic IPv6 over the TSCH mode of IEEE 802.15.4e, and impacts on RPL and 6LoWPAN such as resource allocation" <6tisch.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/6tisch>, <mailto:6tisch-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/6tisch/>
List-Post: <mailto:6tisch@ietf.org>
List-Help: <mailto:6tisch-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/6tisch>, <mailto:6tisch-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 14 Jun 2018 14:30:52 -0000

Hello Yatch,


> [1] What does it mean exactly by "the backoff window"?
> 
> There is no "backoff window" found in Figure 6-6 nor in the latter
> part of Section 6.2.5.3...
> 
> I think that "the backoff window"indicates BE (Backoff Exponent), but
> it's unclear…

the backoff window is selected randomly between 0 and 2^BE-1. 

> [2] Should we reset BE every time retransmission process starts?
> 
> Two conditions to reset the backoff window (BE?) are mentioned in page-64:
> 
> - "A successful transmission in a shared link resets the backoff window
>  to the minimum value."

If it corresponds to a retransmission, this means that the previous transmission has failed. 
So, this case does not correspond here.

> - "The backoff window is reset to the minimum value if the
>  transmission in a dedicated link is successful and the transmit
>  queue is then empty."

dedicated links > no collision / no backoff. 
You transmit it without delay 
(NB: you may have the first transmission during a shared link, and its retransmission in a dedicated one)

> In page-65, I see another condition if the backoff windows and BE are
> the same thing:
> 
> - "A device upon encountering a transmission failure in a shared link
>  shall initialize the BE to macMinBe."

According to figure 6.6, yes with TSCH: the packet has been dropped, it corresponds to a novel packet, and it enters in the condition "PCA=Y" after the first transmission  

> It seems the former conditions and the latter condition conflict each
> other.

they don’t actually correspond to the same thing.
You must make a distinction between shared and dedicated links, and you may use a succession of shared and dedicated links for the same packet (i.e. its different retransmissions)

> I'm not sure, after all the retransmissions for the last frame in
> shared links failed, the next retransmission process should reset BE or
> not. What about the case when the transmission for the last frame in a
> dedicated link was successful but the transmission queue was NOT
> empty?

If I understand correctly the standard, in that case, the dedicated link should not impact the BE value: the next packet will be picked in the queue, and transmitted with the same BE value as previously. 

Probably to combat unfairness: a transmitter with dedicated links would else succeed to transmit packets in its dedicated links => it would reset more frequently its BE  => more bandwidth than the nodes without dedicated links. 

> [3] Errors in Figure 6-6
> 
> I don't think Figure 6-6 is correct...
> 
> - In the frist transmission attempt (the right-most branch):
> 
>  o Boxes of "transmit frame" and "transmission acknowledged?" are
>    missing after "N" to "TschCca=On?"
>  o It says transmission fails when NB exceeds macMaxFrameRetries; but
>    I think, it would enter the retransmission process instead of
>    "Failure". Which is correct?

This part seems strange. It seems mixing the case "first transmission" and "no ack required". 
First transmission -> no backoff (the current description is correct)
no ack -> the first transmission is considered successful (the transmitter cannot have any feedback). Thus:
     => the box "transmission acknowledged?" is missing
     =>  the arrow after "NB > ** ?" should point to "retransmission?" instead of "Wait for the next TX link"
 
> - In the retransmission process without PCA (the middle branch):
> 
>  o "NB" is not initialized; should "NB=0" be there along with
>    "BE=macMinBe"?

no, this is a retransmission so, NB cannot be equal to 0 (to my mind)
"NB is the number of times the CSMA-CA algorithm was required to back off while attempting the current transmission"

>  o BE should be updated by "BE=min(BE+1, macMaxBe)" instead of
>    "BE=min(BE-1,macMinBe)", shouldn't it?

+1

I have also the same doubts as you for the figure 6.6….

Best regards,
Fabrice