[6tsch] priority and priority
Thomas Watteyne <watteyne@eecs.berkeley.edu> Fri, 08 March 2013 07:34 UTC
Return-Path: <twatteyne@gmail.com>
X-Original-To: 6tsch@ietfa.amsl.com
Delivered-To: 6tsch@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 36DE121F85D9 for <6tsch@ietfa.amsl.com>; Thu, 7 Mar 2013 23:34:45 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.751
X-Spam-Level:
X-Spam-Status: No, score=-2.751 tagged_above=-999 required=5 tests=[AWL=0.225, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id hIu-M+-KLyVr for <6tsch@ietfa.amsl.com>; Thu, 7 Mar 2013 23:34:44 -0800 (PST)
Received: from mail-pa0-f42.google.com (mail-pa0-f42.google.com [209.85.220.42]) by ietfa.amsl.com (Postfix) with ESMTP id 759AF21F85D4 for <6tsch@ietf.org>; Thu, 7 Mar 2013 23:34:44 -0800 (PST)
Received: by mail-pa0-f42.google.com with SMTP id kq12so1114786pab.29 for <6tsch@ietf.org>; Thu, 07 Mar 2013 23:34:44 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:sender:date:x-google-sender-auth:message-id :subject:from:to:content-type; bh=iTHzEy+7mFHeX3wbvU3pcgVmNsocHpVT6aivz3oHN2o=; b=u+ko4/HpHxY+2uyPWxLQsHKST5V+PWaToVG1GeE6qCz5mGqy+kzTBandc2Ug4/xtzQ DLehfGC77CLZgOrH5YktHccFTg0m1NKepPQr1XRBt104txl5k5ooVJIpGK/Buc2uCADR 7m/CfzuFxQAz07qCGShcKi1O3F5Uw/E1sB8shS9jP9iD8XM2bFsIGack36pV2pmeAnk5 zkVNqyj3sUz9DOQKcxK1tpzPoMR+IMoys47dUEk1CkGSoemuWaxMGdVvAoBqMmxWnwbi SqG5/pO+cWLbHhcXrIPEt1b2RjU6V7OXvU+a8zrhCnzbypklwaoEhQv0xIP0i2XHobHn OnPg==
MIME-Version: 1.0
X-Received: by 10.66.227.196 with SMTP id sc4mr2694926pac.38.1362728084279; Thu, 07 Mar 2013 23:34:44 -0800 (PST)
Sender: twatteyne@gmail.com
Received: by 10.68.227.71 with HTTP; Thu, 7 Mar 2013 23:34:44 -0800 (PST)
Date: Thu, 07 Mar 2013 23:34:44 -0800
X-Google-Sender-Auth: bZ4k9hgNKyDk3PZKx_h-iqBxzpQ
Message-ID: <CADJ9OA_Kz0mKovU=EQgNHiT=FcnWtLsiAWC7gAo9A-f1Tj8SEA@mail.gmail.com>
From: Thomas Watteyne <watteyne@eecs.berkeley.edu>
To: IETF 6TSCH <6tsch@ietf.org>
Content-Type: multipart/alternative; boundary="047d7b15aa8f639c1304d764dbed"
Subject: [6tsch] priority and priority
X-BeenThere: 6tsch@ietf.org
X-Mailman-Version: 2.1.12
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" <6tsch.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/6tsch>, <mailto:6tsch-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/6tsch>
List-Post: <mailto:6tsch@ietf.org>
List-Help: <mailto:6tsch-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/6tsch>, <mailto:6tsch-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2013 07:34:45 -0000
All, I believe that we have been discussing two different notions of priority: - *Packet Priority*: Assuming an existing data flow in a network, some packets are marked as "high priority", the rest as "low priority". All packets are part of the same flow, but high priority packets are treated with more urgency that low priority packets. This translates into a set of queuing rules. This is the notion illustrated by Pascal in his "traffic lights in a city" analogy (where high priority packets are police cars passing other vehicles) and used in Qin's mux/i-mux. - *Flow Priority*, which is slightly different. In a network, multiple classes of traffic co-exist. This results in multiple data flows. Different data flows have a different combination of destination, priority, bandwidth and latency. A network-wide policy defines whether data flows are entirely independent, or if some over-flowing is allowed. In TSCH, a flow translated into a slotframe. In case of contention (e.g. at a given slot a mote can send a packet from each flow), flow priority arbitrates which packet goes first. Note that this is entirely within the TSCH spec. These two definitions are complementary: different flows can exist in a network, but inside a flow, some high priority packets can "pass" other packets. The network policy defines how those two interact; e.g. a highest-priority packet can be allowed to "jump" into another flow, if needed. We need to define how this materializes in a network. Here is a proposal: Each data flow turns into a TSCH slotframe. The scheduling entity populates the slots in the slotframe in such as way that the slots "point to" some destination. In a typical case, slots in a slotframe are equivalent: to end up at mote A, take any slot in slotframe 1. This allows us to use label-switching approach, which I'm sure will pop up in some future draft. We can end up with different slotframes for different destinations, or for different types of traffic to the same destination. Optionally, packets can contain some priority field (probably DSCP, as per http://tools.ietf.org/html/draft-svshah-tsvwg-lln-diffserv-recommendations-00?) which serves as the "high priority" marker. A policy then regulates how this translates to queuing and flow equivalence rules. DSCP can also be used by the higher layer to indicate to which flow this packet pertains, and with what (optional) priority. Upon receiving a packet from a higher layer, the 6tsch layer could inspect the DSCP and some set of rules would tell him which flow to send it on. Once it is in a flow, the full DSCP is not needed, and there is lots of opportunity to elide some information while the packet is on the LLN. I'm hoping that Shitanshu a.o. can help decide on the applicability of this. Thomas
- Re: [6tsch] how to handle different classes of tr… Thomas Watteyne
- Re: [6tsch] how to handle different classes of tr… Pascal Thubert (pthubert)
- Re: [6tsch] how to handle different classes of tr… Michael Richardson
- Re: [6tsch] how to handle different classes of tr… Pascal Thubert (pthubert)
- Re: [6tsch] how to handle different classes of tr… Xavier Vilajosana
- Re: [6tsch] how to handle different classes of tr… Michael Richardson
- Re: [6tsch] how to handle different classes of tr… Xavier Vilajosana
- [6tsch] fraglets Tom Phinney
- Re: [6tsch] how to handle different classes of tr… Michael Richardson
- Re: [6tsch] what to call "flow" with different pr… Michael Richardson
- Re: [6tsch] what to call "flow" with different pr… Timothy J. Salo
- Re: [6tsch] how to handle different classes of tr… Kris Pister
- [6tsch] how to handle different classes of traffic Michael Richardson
- Re: [6tsch] what to call "flow" with different pr… Pascal Thubert (pthubert)
- [6tsch] what to call "flow" with different priori… Michael Richardson
- Re: [6tsch] priority and priority Kris Pister
- Re: [6tsch] priority and priority Shitanshu Shah (svshah)
- Re: [6tsch] priority and priority Shitanshu Shah (svshah)
- Re: [6tsch] priority and priority Kris Pister
- Re: [6tsch] priority and priority Tom Phinney
- Re: [6tsch] priority and priority Shitanshu Shah (svshah)
- Re: [6tsch] priority and priority Kris Pister
- Re: [6tsch] priority and priority Tom Phinney
- Re: [6tsch] priority and priority Kris Pister
- Re: [6tsch] priority and priority Tom Phinney
- Re: [6tsch] priority and priority Thomas Watteyne
- Re: [6tsch] priority and priority Michael Richardson
- [6tsch] R: priority and priority Alfredo Grieco
- [6tsch] priority and priority Thomas Watteyne