Re: [Roll] WGLC for draft-thubert-6man-flow-label-for-rpl-03

Philip Levis <pal@cs.stanford.edu> Thu, 31 July 2014 22:11 UTC

Return-Path: <pal@cs.stanford.edu>
X-Original-To: roll@ietfa.amsl.com
Delivered-To: roll@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8463F1A01D6; Thu, 31 Jul 2014 15:11:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.201
X-Spam-Level:
X-Spam-Status: No, score=-4.201 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-0.001] autolearn=ham
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 uQ0FDCJq_YdI; Thu, 31 Jul 2014 15:11:27 -0700 (PDT)
Received: from smtp2.cs.Stanford.EDU (smtp2.cs.Stanford.EDU [171.64.64.26]) (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 085831A01CB; Thu, 31 Jul 2014 15:11:27 -0700 (PDT)
Received: from [76.14.66.110] (port=50440 helo=[192.168.0.103]) by smtp2.cs.Stanford.EDU with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.80.1) (envelope-from <pal@cs.stanford.edu>) id 1XCyZH-00082Z-0U; Thu, 31 Jul 2014 15:11:24 -0700
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 6.6 \(1510\))
From: Philip Levis <pal@cs.stanford.edu>
In-Reply-To: <53D84C2C.9050709@gmail.com>
Date: Thu, 31 Jul 2014 15:11:21 -0700
Content-Transfer-Encoding: quoted-printable
Message-Id: <140F7EAF-B3B2-4F39-B676-5901457BF494@cs.stanford.edu>
References: <CAP+sJUeLa9r2otVv41ezg1Om--XzM84w3MOvCyn7bawDA7Oqgw@mail.gmail.com> <69656203-C009-4ABE-BCAD-17622058FEB9@cs.stanford.edu> <53D84C2C.9050709@gmail.com>
To: Brian E Carpenter <brian.e.carpenter@gmail.com>
X-Mailer: Apple Mail (2.1510)
X-Scan-Signature: 3912120d3a1bcf28d29a6770933a4e79
Archived-At: http://mailarchive.ietf.org/arch/msg/roll/IPTO2d3w2u-0qPtDS4mh2Fo5oc4
X-Mailman-Approved-At: Thu, 31 Jul 2014 15:13:01 -0700
Cc: Brian Haberman <brian@innovationslab.net>, "ipv6@ietf.org" <ipv6@ietf.org>, Michael Richardson <mcr+ietf@sandelman.ca>, roll <roll@ietf.org>, Ines Robles <mariainesrobles@googlemail.com>, Bob Hinden <bob.hinden@gmail.com>, Ole Troan <otroan@cisco.com>
Subject: Re: [Roll] WGLC for draft-thubert-6man-flow-label-for-rpl-03
X-BeenThere: roll@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
Reply-To: Routing Over Low power and Lossy networks <roll@ietf.org>
List-Id: Routing Over Low power and Lossy networks <roll.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/roll>, <mailto:roll-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/roll/>
List-Post: <mailto:roll@ietf.org>
List-Help: <mailto:roll-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/roll>, <mailto:roll-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 31 Jul 2014 22:11:30 -0000

On Jul 29, 2014, at 6:36 PM, Brian E Carpenter <brian.e.carpenter@gmail.com> wrote:

> On 30/07/2014 12:02, Philip Levis wrote:
> ...
>> "This specification suggests that energy-saving is another
>> compelling reason for a violation to the aforementioned
>> rule."
>> 
>> makes the assumption that the energy saving is significant.
>> Breaking the end-to-end nature of the flow label for some
>> tiny saving seems like a mistake. 
> 
> I can't evaluate whether the energy saving is significant.
> However, I don't have any deep faith in the e2e-ness of the
> flow label. The reality (as RFC 6437 tries to recognise)
> is that it's a mutable field, and is therefore untrustworthy
> for e2e use. It has value for load balancing if all packets
> of a given flow have the same label, whether the label is
> set by the source or by a border device. For that reason,
> I think the usage proposed in this draft is OK.
> 
> However, I do agree that at least a hand-waving estimate of
> the % energy saving would be useful.
> 
>    Brian Carpenter

*shrug* My thoughts are pretty simple. I'm sure you know all this (as one of the authors!) but I'll revisit for everyone else's sake. 6437 states

"A forwarding node MUST either leave a non-zero flow label value unchanged or change it only for compelling operational security reasons as described in Section 6.1."

So, this is a MUST. Either the RPL flow label draft contradicts 6437 (and should say so explicitly), or there should be an explicit update to 6437. In fact, the current draft is misleading and incorrect. It says

"but the RFC also indicates a violation to the rule can be accepted for compelling reasons, and that security is a case justifying such a violation.  This specification suggests that energy-saving is another compelling    reason for a violation to the aforementioned rule."

This is *not* what 6437 says. It says for compelling operational security reasons, not compelling reasons, of which one case is security.

Having been researching, implementing, and deploying low-power protocols for over a decade, I've become exceedingly skeptical when someone proposes a protocol with energy as a motivation without quantifying it. For example, there are tons of protocols in the research literature which talk about using transmission power control to save energy (trading off range for power). But almost all of these papers ignore the fact that (unlike mobile/cellular systems, which the authors have been publishing in for years) RF is a tiny sliver of power in low-power networks. So reducing your transmission (RF) power by 99% only reduces your radio power by 50%. Generally a losing proposition. This is the same reason why power saving in WiFi involves synchronization on AP beacons and not adjusting transmit power. If someone doesn't quantify the potential benefit based on real hardware and protocols, then it could be based on mistaken assumptions.

I mean, it doesn't take much here. Start with a working low-power RPL network. Send packets with sizes following a reasonable distribution based on an actual application. In one experiment send just those packets. In another add the 8 bytes. In a third add 8 + the IP-in-IP encapsulation. Measure the energy cost.

And, generally speaking, if you can't demonstrate the problem very easily, then perhaps it isn't a real problem at all.

All that being said, I think using the flow label in this way is a good idea, and definitely valuable. But as it is now, doing so violates 6437, and so the assumptions implementers make when reading 6437. I think the bar for doing so should be high, higher than vague suggestions and hand waving which might not be correct.

Phil