Re: [Roll] Adoption of draft-goyal-roll-rpl-compression as a new ROLL WG document

Philip Levis <pal@cs.stanford.edu> Sat, 10 September 2011 21:15 UTC

Return-Path: <pal@cs.stanford.edu>
X-Original-To: roll@ietfa.amsl.com
Delivered-To: roll@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 69F3621F8906 for <roll@ietfa.amsl.com>; Sat, 10 Sep 2011 14:15:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.599
X-Spam-Level:
X-Spam-Status: No, score=-6.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
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 OH9sQpxa3kUt for <roll@ietfa.amsl.com>; Sat, 10 Sep 2011 14:15:26 -0700 (PDT)
Received: from cs-smtp-1.Stanford.EDU (cs-smtp-1.Stanford.EDU [171.64.64.25]) by ietfa.amsl.com (Postfix) with ESMTP id DDF0321F88A0 for <roll@ietf.org>; Sat, 10 Sep 2011 14:15:21 -0700 (PDT)
Received: from [76.14.66.110] (helo=[192.168.0.103]) by cs-smtp-1.Stanford.EDU with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.76) (envelope-from <pal@cs.stanford.edu>) id 1R2UvO-0000gG-Uz; Sat, 10 Sep 2011 14:17:19 -0700
Mime-Version: 1.0 (Apple Message framework v1084)
Content-Type: text/plain; charset="us-ascii"
From: Philip Levis <pal@cs.stanford.edu>
In-Reply-To: <36101A99-F6FC-4E94-A7D2-DD7EAB6CEBA3@thomasclausen.org>
Date: Sat, 10 Sep 2011 14:17:20 -0700
Content-Transfer-Encoding: quoted-printable
Message-Id: <902899BD-1A87-4BB5-99FE-748B4860254D@cs.stanford.edu>
References: <F5B32366-FB72-4B70-B5D1-C2212214CCAE@cisco.com> <36101A99-F6FC-4E94-A7D2-DD7EAB6CEBA3@thomasclausen.org>
To: Thomas Heide Clausen <IETF@ThomasClausen.org>
X-Mailer: Apple Mail (2.1084)
X-Scan-Signature: 8577cc8f8d13cb4ae2b02fc82e253015
Cc: roll WG <roll@ietf.org>
Subject: Re: [Roll] Adoption of draft-goyal-roll-rpl-compression as a new ROLL WG document
X-BeenThere: roll@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
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: Sat, 10 Sep 2011 21:15:27 -0000

On Aug 30, 2011, at 2:10 AM, Thomas Heide Clausen wrote:

> All,
> 
> Let me reiterate what I said at the Quebec meeting at the microphone: I find it incomprehensible if - before the ink is dry on the RPL RFC and before an RFC number has even been assigned to the specification - the working group finds it necessary to invent a "compression mechanism" for RPL. 
> 
> After all, RPL was supposed to have been designed for networks with (among other characteristics) a small MTU.
> 
> If this document is necessary, then the logical conclusion would have to be that the initial design of (at least) the packet format of RPL was insufficient, and that therefore this document should either or both of "Updates/Obsoletes" RPL?
> 
> If this document is not intended to either or both of "Updates/Obsoletes" RPL, then I do not see any justification for the document being adopted.
> 
> Respectfully Yours,
> 
> Thomas

Thomas,

Apologies for the tardy response: I just returned from an (unheard of for Americans!) two week vacation with no email contact.

I fear that you might be misrepresenting the situation: RPL does not have an RFC number not because of uncertainty on its content, but rather for procedural reasons. Specifically, it references several other documents that are in the queue and its number can't be assigned until those dependencies are resolved.

That being said, you comment is totally valid: if compression is a big deal, why isn't it in the core spec? There was a lot of tension in writing the RPL document on completeness versus simplicity, with many people taking different positions. Some thought it should be split into three: the core spec, storing mode, and non-storing mode. Others thought up and down should be separate. Others still thought it should include more, such as the Trickle algorithm. After a lot of back-and-forth, I had though that we as a working group reached consensus that the one submitted to the IESG was a reasonable compromise between all of the different proposed approaches. That being said, I can assure you that if we'd added another X pages on compression, someone would have suggested we remove it and put it in a separate document.

Compression places a tradeoff between computational cost and code size/complexity versus packet size. Because it's a tradeoff, it seems like a mistake to mandate it; correspondingly, it's an optional approach, which practice, use and deployment will evaluate and validate or discard. So necessitating it in the core spec seems like a mistake to me. What do you think?

BTW, apologies I couldn't make Quebec, it would have been nice to catch up.

Phil