Re: [6lowpan] hc-01

"Pascal Thubert (pthubert)" <pthubert@cisco.com> Wed, 08 October 2008 23:30 UTC

Return-Path: <6lowpan-bounces@ietf.org>
X-Original-To: 6lowpan-archive@megatron.ietf.org
Delivered-To: ietfarch-6lowpan-archive@core3.amsl.com
Received: from [127.0.0.1] (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 482BA3A6BEC; Wed, 8 Oct 2008 16:30:51 -0700 (PDT)
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 1FC8F3A6BEC for <6lowpan@core3.amsl.com>; Wed, 8 Oct 2008 16:30:50 -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=[AWL=0.000, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
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 WXiTjYKRxueT for <6lowpan@core3.amsl.com>; Wed, 8 Oct 2008 16:30:48 -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 4B42E3A6BE4 for <6lowpan@ietf.org>; Wed, 8 Oct 2008 16:30:48 -0700 (PDT)
X-IronPort-AV: E=Sophos;i="4.33,381,1220227200"; d="scan'208";a="22032165"
Received: from ams-dkim-1.cisco.com ([144.254.224.138]) by ams-iport-1.cisco.com with ESMTP; 08 Oct 2008 23:31:29 +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 m98NVTnW012006; Thu, 9 Oct 2008 01:31:29 +0200
Received: from xbh-ams-332.emea.cisco.com (xbh-ams-332.cisco.com [144.254.231.87]) by ams-core-1.cisco.com (8.13.8/8.13.8) with ESMTP id m98NVTmR025402; Wed, 8 Oct 2008 23:31:29 GMT
Received: from xmb-ams-337.cisco.com ([144.254.231.82]) by xbh-ams-332.emea.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Thu, 9 Oct 2008 01:31:28 +0200
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Date: Thu, 09 Oct 2008 01:31:21 +0200
Message-ID: <7892795E1A87F04CADFCCF41FADD00FC06577440@xmb-ams-337.emea.cisco.com>
In-Reply-To: <38F26F36EAA981478A49D1F37F474A86020D01F8@xmb-ams-33d.emea.cisco.com>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: hc-01
Thread-Index: AckpXZk/lBapnJ/tRry1ROKZRsoesgAOK0KA
References: <38F26F36EAA981478A49D1F37F474A86020D01F8@xmb-ams-33d.emea.cisco.com>
From: "Pascal Thubert (pthubert)" <pthubert@cisco.com>
To: "Julien Abeille (jabeille)" <jabeille@cisco.com>, Jonathan Hui <jhui@archrock.com>
X-OriginalArrivalTime: 08 Oct 2008 23:31:28.0886 (UTC) FILETIME=[FD0CF960:01C9299D]
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; l=5989; t=1223508689; x=1224372689; 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=20hc-01 |Sender:=20; bh=D3/YO/KbpwGIT+DTzxb6GDUP4hdc2imcFaUGECe6dp0=; b=s/KO0W/G49goejO14kTdf26tV1Hwnxot2EyOgFzJCdQmOIq0iITmeK1Ahy KVItmnbo5MEJHeft19jltiQEFKINf3eAeeAJKEydZg704TS5E0OH8YlYY3EQ 47f4lbCHja;
Authentication-Results: ams-dkim-1; header.From=pthubert@cisco.com; dkim=pass ( sig from cisco.com/amsdkim1002 verified; );
Cc: 6lowpan@ietf.org
Subject: Re: [6lowpan] hc-01
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/pipermail/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>
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Sender: 6lowpan-bounces@ietf.org
Errors-To: 6lowpan-bounces@ietf.org

Hi Julien:

I think you're right, we need to dig a little bit more.

So starting from Jonathan's encoding, maybe we can refine was was CTX


     0   1   2   3   4   5   6   7   8   9   0   1   2   3   4   5
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
   | 0 | 1 | 0 | 0 | 1 |  DDF  |  TF   |NH | HLIM  |  SAM  |  DAM  |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+

- Dispatch: 8-15
- DDF: Destination dependant fiels
  - 00: Destination is global (or ULA), no context byte after the HC field
  - 01: Destination is global (or ULA), one byte context byte after the HC field
  - 10: Destination is Link local
  - 11: Destination is multicast scoped address

- TF: Traffic Class, Flow Label
  - 00: 4-bit Pad + Traffic Class + Flow Label (4 bytes)
  - 01: ECN + 2-bit Pad + Flow Label (3 bytes)
  - 10: Traffic Class (1 byte)
  - 11: No Traffic Class and Flow Label

- NH: Next Header compression

- HLIM: Hop Limit
  - 00: uncompressed
  - 01: 1
  - 10: 64
  - 11: 255

When destination is link local:
-------------------------------
prefix is FC80::/64 when compressed

- SAM: Source Address Mode - prefix is link-local, when compressed
  - 00: 128 bits
  - 01: 64 bits
  - 10: 16 bits 
  - 11: 0 bits
- DAM: Destination Address Mode - prefix is link-local, when compressed
  - 00: 128 bits
  - 01: 64 bits
  - 10: 16 bits
  - 11: 0 bits 

When destination is multicast:
-------------------------------
prefix is FF02::/64 when compressed

- SAM: Source Address Mode
  - 00: 0 bits, unspecified address
  - 01: 64 bits, prefix is link local
  - 10: 16 bits, prefix is link local
  - 11: 0 bits, derived from the IID, prefix is link local
- DAM: Destination Address Mode - prefix is link-local, when compressed
  - 00: 8 bits,  prefix is compressed, suffix is 7 octets of zeroes, then this octet
  - 01: 24 bits, prefix is compressed, suffix is 4 octets of zeroes, then one octet 0xFF then this octet
  - 10: 16 bits. 4 bits flags, 4 bits scope, 1 byte suffix.
Prefix as defined in RFC 4291, suffix is 7 octets of zeroes, then this suffix octet
  - 11: 24 bits  4 bits flags, 4 bits scope, 2 bytes suffix 
Prefix as defined in RFC 4291, suffix is 6 octets of zeroes, then those suffix octets 

When destination is ULA or global: 
-------------------------------
The prefix is found from the context table. 
If there is no context octet after the HC field then this is the default prefix.

- SAM: Source Address Mode
  - 00: 128 bits
  - 01: 64 bits
  - 10: 16 bits
  - 11: 0 bits
- DAM: Destination Address Mode
  - 00: 128 bits
  - 01: 64 bits
  - 10: 16 bits
  - 11: 0 bits

Notes:

With this change, the 16 bits format of Link local and ULA and global really means the last 16 bits ( apposed to 15 in http://tools.ietf.org/html/draft-ietf-6lowpan-hc-00 2.2.  IPv6 Unicast Address Compression. 

With this change, we have the most useful mcast cases covered:
DAM of 00 compresses FF02::XX, so you get all routers on link, etc...
DAM of 01 compresses FF02::FFXX:YYZZ, sollicited node mcast address
DAM of 10 and 11 compress all permanently-assigned multicast addresses defined today for all scopes

What do you think?

Pascal
________________________________________
From: Julien Abeille (jabeille) 
Sent: mercredi 8 octobre 2008 17:51
To: Jonathan Hui
Cc: Pascal Thubert (pthubert)
Subject: hc-01

Hi Jonathan,
 
I send unicast because my thought will not be clear, and to make a quick presentation and bind it to "cisco sensor team".
I did my master thesis in 2005 at Cisco in Sophia Antipolis. My project manager was Patrick Wetterwald (IPSO president) and I worked with Pascal on tree discovery and bubbles protocols. I joined Cisco as employee in july last year, and have been working on sensors with Patrick as project manager, Pascal and a few others as engineers. I met JP Vasseur a year ago and we have frequent calls and meetings, as he recently moved 150km from switzerland where my office is. I work most closely with Mathilde Durvy whom you met for IPSO interop calls.
 
after discussion with Pascal about address compression, I try to clarify my thoughts:
- 64 last bits compression in unicast address compression is only feasible if last 64 bits are based on IID (either 64 bit MAC address or PAN ID+0+16bit address). I thought it would be nice to be able to compress as well addresses with bytes 8 to 13 = 0. (e.g. a::1)
- could be nice as well to compress the IID only when the prefix is not compressable?
- for multicast address compression, i thought stateless compression could be nice. This works well with permanently assigned addresses (Pascal, the link i promissed: http://www.iana.org/assignments/ipv6-multicast-addresses), as many bytes are 0 after the two first ones
- for multicast again, it would be nice to be able to compress addresses with more than 9-bit non 0 (a few permanently assigned ones apply there, like all-dhcp-agents)
- regarding the 16-bit compressed format, i would prefer not having one bit or more in the compressed field with a special meaning (first bit 0 = unicast, 3 first bits 101 = multicast), but keep all these bits in the encoding
- I was wondering if assuming flags are 0 cannot be an issue. 
 
These are just thoughts, as i am not extremely clear on the important scenarios where we want to compress (e.g. solicited node multicast compression might not be needed as with ND optimizations, there will not be many NS), and am not clear either about multicast addresses except permanently assigned ones. More preciely i do not know if we want to support unicast prefix based multicast addresses or rendez vous point addresses, and what they look like.
 
hope this helps in the discussion,
regards,
Julien
 
_______________________________________________
6lowpan mailing list
6lowpan@ietf.org
https://www.ietf.org/mailman/listinfo/6lowpan