Re: [6lowpan] (cutting overhead) RE: LoWPAN simple fragment Recovery

"Pascal Thubert (pthubert)" <pthubert@cisco.com> Wed, 17 June 2009 15:03 UTC

Return-Path: <pthubert@cisco.com>
X-Original-To: 6lowpan@core3.amsl.com
Delivered-To: 6lowpan@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 2ADDD28C0E2 for <6lowpan@core3.amsl.com>; Wed, 17 Jun 2009 08:03:42 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -9.422
X-Spam-Level:
X-Spam-Status: No, score=-9.422 tagged_above=-999 required=5 tests=[AWL=0.577, BAYES_00=-2.599, J_CHICKENPOX_14=0.6, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ke+MsunXXo8B for <6lowpan@core3.amsl.com>; Wed, 17 Jun 2009 08:03:41 -0700 (PDT)
Received: from ams-iport-1.cisco.com (ams-iport-1.cisco.com [144.254.224.140]) by core3.amsl.com (Postfix) with ESMTP id 1A75C3A6ADE for <6lowpan@ietf.org>; Wed, 17 Jun 2009 08:03:34 -0700 (PDT)
X-IronPort-AV: E=Sophos;i="4.42,236,1243814400"; d="scan'208";a="43033071"
Received: from ams-dkim-1.cisco.com ([144.254.224.138]) by ams-iport-1.cisco.com with ESMTP; 17 Jun 2009 15:03:22 +0000
Received: from ams-core-1.cisco.com (ams-core-1.cisco.com [144.254.224.150]) by ams-dkim-1.cisco.com (8.12.11/8.12.11) with ESMTP id n5HF3M6R027209; Wed, 17 Jun 2009 17:03:22 +0200
Received: from xbh-ams-331.emea.cisco.com (xbh-ams-331.cisco.com [144.254.231.71]) by ams-core-1.cisco.com (8.13.8/8.13.8) with ESMTP id n5HF3Mwq019765; Wed, 17 Jun 2009 15:03:22 GMT
Received: from xmb-ams-337.cisco.com ([144.254.231.82]) by xbh-ams-331.emea.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Wed, 17 Jun 2009 17:03:22 +0200
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Date: Wed, 17 Jun 2009 17:03:12 +0200
Message-ID: <7892795E1A87F04CADFCCF41FADD00FC07A4CF6D@xmb-ams-337.emea.cisco.com>
In-Reply-To: <473C2CD540AC5141858AD4D50149C4B3AB14FC@EX41.exchserver.com>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [6lowpan] (cutting overhead) RE: LoWPAN simple fragment Recovery
Thread-Index: AcnvE/8kJCaRMuJTRyO8jU2VvjoVRAABJ6EwAA12A/AAAXMdYAABqk4w
References: <473C2CD540AC5141858AD4D50149C4B3AB14FC@EX41.exchserver.com>
From: "Pascal Thubert (pthubert)" <pthubert@cisco.com>
To: Rene Struik <rstruik@certicom.com>, 6lowpan@ietf.org
X-OriginalArrivalTime: 17 Jun 2009 15:03:22.0480 (UTC) FILETIME=[C1D59700:01C9EF5C]
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; l=6840; t=1245251002; x=1246115002; c=relaxed/simple; s=amsdkim1002; h=Content-Type:From:Subject:Content-Transfer-Encoding:MIME-Version; d=cisco.com; i=pthubert@cisco.com; z=From:=20=22Pascal=20Thubert=20(pthubert)=22=20<pthubert@ci sco.com> |Subject:=20RE=3A=20[6lowpan]=20(cutting=20overhead)=20RE=3 A=20=20LoWPAN=20simple=20fragment=20Recovery |Sender:=20; bh=nClqmdsK5HR9wBWVUG9lti3o/Q13HmivnbfKAgf5Te4=; b=mWGUACaWlY/Wvw7NEwTrsFNa/qEeRRmHCnBx7Zunt5Op9jJvEmSidDsCt7 WJh8Zkx9w0A7rQthRIUI+froLVs6CSehYTdiLQtlJkKGuIVHIt1PyWrL06hL UuvX7RIY/v;
Authentication-Results: ams-dkim-1; header.From=pthubert@cisco.com; dkim=pass ( sig from cisco.com/amsdkim1002 verified; );
Subject: Re: [6lowpan] (cutting overhead) RE: LoWPAN simple fragment Recovery
X-BeenThere: 6lowpan@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Working group discussion for IPv6 over LowPan networks <6lowpan.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/6lowpan>, <mailto:6lowpan-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/6lowpan>
List-Post: <mailto:6lowpan@ietf.org>
List-Help: <mailto:6lowpan-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/6lowpan>, <mailto:6lowpan-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 17 Jun 2009 15:03:42 -0000

Hi René;

This seems great in principle but my layer violation flag raised in full red. How can L2 know that this is a subsequent L3 fragment? Seems to me we need a mac layer support to do what compress/expand at mac layer.

What I'd really love to see that might enable this is a form of mac extension for mac layer label switching.
Any new packet would be given a new label that is locally significant for a hop A -> B created by A and unique in (A->B). MAC states could be associated at hop by hop and 6LoWPAN states end to end for that flow. In particular we could forward fragments that way as opposed to recompose hop by hop.

At least some of this does not belong to us. What are they doing at 4E?

Pascal

>-----Original Message-----
>From: 6lowpan-bounces@ietf.org [mailto:6lowpan-bounces@ietf.org] On Behalf Of Rene Struik
>Sent: mercredi 17 juin 2009 16:03
>To: 6lowpan@ietf.org
>Subject: [6lowpan] (cutting overhead) RE: LoWPAN simple fragment Recovery
>
>Hi Pascal:
>
>If one does fragmentation and has multiple frames, one should be able to compress 802.15.4 headers for the
>subsequent frames.
>
>One could proceed as follows:
>a) first frame could use full header;
>b) subsequent frames would use truncated MAC header overhead (under assumption that this can be faithfully
>reconstructed at recipient's end (who stores header intelligence if frame pending bit is set).
>c) crypto overhead (message authentication tag) can be seriously shortened for typical frames.
>
>This would potentially lead to the following:
>a) first frame has full header;
>b) subsequent frames: 5 octets of non payload fields total;
>- reduced MAC header: 3 octets (sFCF: 1 octet; DSN: 1 octet; Header fields: 0 octets; AuxSecHeader: 1 octet);
>- reduced crypto expansion: 2 octets (typically - if realizing what I dubbed "Frame Security Dream");
>- elided CRC-16: 0 octets (if one uses authenticity tag (with default key if no security)).
>Thus, with frame fragmentation, all but the first frame may have payload field of up to 122 octets.
>
>This is not always possible with 802.15.4-2006 techniques, but intention is that 802.15.4e amendment enables
>this.
>For further info, cf. IEEE 802.15.4e document: 15-08-0828-08-004e-security-and-efficiency-enhancements.ppt
>
>I should remember to take this into account when writing up the draft text for overhead reduction techniques
>for 802.15.4e, making sure to make the link to frame pending stuff.
>
>Any comments appreciated.
>
>Best regards,
>
>Rene
>
>-----Original Message-----
>From: 6lowpan-bounces@ietf.org [mailto:6lowpan-bounces@ietf.org] On Behalf Of Pascal Thubert (pthubert)
>Sent: Wednesday, June 17, 2009 5:17 AM
>To: Carsten Bormann
>Cc: draft-thubert-6lowpan-simple-fragment-recovery@tools.ietf.org; 6lowpan@ietf.org; Fred Baker (fred)
>Subject: Re: [6lowpan] LoWPAN simple fragment Recovery
>
>Hi Carsten:
>
>I love your suggestions. Thanks a lot :)
>
>Since there is no additional data in the FRACK we could deduce the size
>of the ack bitmap from the packet length, but I would not go that way.
>
>Let's see what we have on the table
>
>
>A) As you say we could elide trailing zeroes.
>We'd use the first 2 bits to say how many bytes in the bitmap, trail all
>zeroes.
>
>
>Acknowledging within the first  6 fragments takes one octet coded as
>00xxxxxx
>Acknowledging within the first 14 fragments takes one octet coded as
>01xxxxxx xxxxxxxx
>Acknowledging within the first 22 fragments takes one octet coded as
>10xxxxxx xxxxxxxx xxxxxxxx
>Acknowledging within the first 30 fragments takes one octet coded as
>11xxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
>
>B) Or we could use an encoding similar to the LOWPAN_NHC in the header
>compression draft.
>
>Acknowledging within the first 7 fragments takes one octet coded as
>0xxxxxxx
>Acknowledging within the first 14 fragments takes 2 octets coded as
>10xxxxxx xxxxxxxx
>Acknowledging within the first 21 fragments takes 3 octets coded as
>110xxxxx xxxxxxxx xxxxxxxx
>Acknowledging within the first 28 fragments takes 3 octets coded as
>1110xxxx xxxxxxxx xxxxxxxx xxxxxxxx
>
>Theoretically that could lead us as far as we care to go but it seems
>that 28 is enough.
>Also we might want to write right to left to avoid shifting bits around.
>
>Conclusion:
>
>A) gives us up to 30 fragments and a very simple encoding as opposed to
>28 for B
>B) is more efficient in that it saves one octet for the 7th fragment
>whereas A saves on octet on the 22nd, which is probably a much rarer
>occasion.
>
>I'd be more inclined to use B) for the slightly better compression but
>I'd appreciate opinions on this.
>
>Opinions? Votes are:
>
>A, B, or B+read right to left.
>
>Pascal
>
>>-----Original Message-----
>>From: Carsten Bormann [mailto:cabo@tzi.org]
>>Sent: mercredi 17 juin 2009 08:22
>>To: Pascal Thubert (pthubert)
>>Cc: Fred Baker (fred);
>draft-thubert-6lowpan-simple-fragment-recovery@tools.ietf.org;
>6lowpan@ietf.org
>>Subject: Re: [6lowpan] LoWPAN simple fragment Recovery
>>
>>On Jun 17, 2009, at 07:54, Pascal Thubert (pthubert) wrote:
>>
>>> 80 bytes
>>
>>Well.
>>
>>MAC frame mac: 127 bytes
>>MAC header/trailer: 5 bytes
>>Adresses (usually, if EUI-64 is used): 18 bytes
>>Security Header: 0..14 bytes (depending e.g. on key identifier)
>>Security Trailer (MIC): 0/4/8/16 bytes
>>
>>Depending on how security is being used, the MAC payload may be as low
>>as 74 bytes.
>>With 6 bytes of fragment header overhead, we are at 68; with rounding
>>to a multiple of 8, we are at 64.
>>1280/64 = 20.
>>
>>The first fragment may have some additional header overhead (somewhat
>>unlikely, but possible), so I'd say:
>>
>>21 fragments
>>
>>This is without a mesh header.
>>If a mesh header in the current worst case configuration is needed,
>>make that 28 (!).
>>
>>I think rounding up to 32 is about right.
>>5 bits for the sequence number also happens to match up with the 11
>>bits needed for the datagram size.
>>
>>Spending a bit or two of those for some form of huffman/rice coding
>>might be the more appropriate way to save bytes in the FRACK packet,
>>if that is a concern, because many packets will fit into much fewer
>>(eg., 7 or less, 14 or less) fragments.  Or, simpler, trailing zeroes
>>might be suppressed in the FRACK.
>>
>>All this pesky bit fiddling...  But someone has to do it.
>>
>>Gruesse, Carsten
>
>_______________________________________________
>6lowpan mailing list
>6lowpan@ietf.org
>https://www.ietf.org/mailman/listinfo/6lowpan
>_______________________________________________
>6lowpan mailing list
>6lowpan@ietf.org
>https://www.ietf.org/mailman/listinfo/6lowpan