Re: [6lowpan] Datagram tag size (draft-ietf-6lowpan-format-00a.txt)

Vipul Gupta <Vipul.Gupta@Sun.COM> Mon, 24 October 2005 00:27 UTC

Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org) by megatron.ietf.org with esmtp (Exim 4.32) id 1ETqBA-0003Ag-MH; Sun, 23 Oct 2005 20:27:08 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org) by megatron.ietf.org with esmtp (Exim 4.32) id 1ETqB9-0003Ab-MB for 6lowpan@megatron.ietf.org; Sun, 23 Oct 2005 20:27:07 -0400
Received: from ietf-mx.ietf.org (ietf-mx [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id UAA03147 for <6lowpan@ietf.org>; Sun, 23 Oct 2005 20:26:54 -0400 (EDT)
Received: from brmea-mail-3.sun.com ([192.18.98.34]) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1ETqNm-0004JX-1U for 6lowpan@ietf.org; Sun, 23 Oct 2005 20:40:12 -0400
Received: from esunmail ([129.147.156.34]) by brmea-mail-3.sun.com (8.12.10/8.12.9) with ESMTP id j9O0R43F020676 for <6lowpan@ietf.org>; Sun, 23 Oct 2005 18:27:04 -0600 (MDT)
Received: from fe7 (esunmail [129.147.156.34]) by edgemail1.Central.Sun.COM (iPlanet Messaging Server 5.2 HotFix 2.02 (built Oct 21 2004)) with ESMTP id <0IOU000EU993E5@edgemail1.Central.Sun.COM> for 6lowpan@ietf.org; Sun, 23 Oct 2005 18:27:04 -0600 (MDT)
Received: from [192.168.10.4] ([71.131.82.117]) by mail.sun.net (iPlanet Messaging Server 5.2 HotFix 2.02 (built Oct 21 2004)) with ESMTPSA id <0IOU00A5R99110@mail.sun.net> for 6lowpan@ietf.org; Sun, 23 Oct 2005 18:27:02 -0600 (MDT)
Date: Sun, 23 Oct 2005 17:26:57 -0700
From: Vipul Gupta <Vipul.Gupta@Sun.COM>
Subject: Re: [6lowpan] Datagram tag size (draft-ietf-6lowpan-format-00a.txt)
In-reply-to: <20051023204034.14774.qmail@web81909.mail.mud.yahoo.com>
To: 6lowpan@ietf.org
Message-id: <4cc207196fc03aa1c6e8c1ce16df24e1@sun.com>
MIME-version: 1.0
X-Mailer: Apple Mail (2.623)
Content-type: text/plain; charset="US-ASCII"; format="flowed"
Content-transfer-encoding: 7bit
References: <20051023204034.14774.qmail@web81909.mail.mud.yahoo.com>
X-Spam-Score: 0.0 (/)
X-Scan-Signature: c54bc2f42d02429833c0ca4b8725abd7
Content-Transfer-Encoding: 7bit
X-BeenThere: 6lowpan@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: Working group discussion for IPv6 over LowPan networks <6lowpan.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/6lowpan>, <mailto:6lowpan-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/6lowpan>
List-Post: <mailto:6lowpan@ietf.org>
List-Help: <mailto:6lowpan-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/6lowpan>, <mailto:6lowpan-request@ietf.org?subject=subscribe>
Sender: 6lowpan-bounces@ietf.org
Errors-To: 6lowpan-bounces@ietf.org

If we assume that the LowPAN design this group comes up
with will only need to be revised when a new lower layer
is designed, then yes there is no need for version numbers.

However, if there's even a small chance that, based on
deployment experience, we may revise the LowPAN
header format while still wanting to run it on top of the
same lower layer then I don't see how the recipient
would figure out how to interpret the received packet
without a version number. From what I can tell, there is
no place in the 802.15.4 header to describe the higher
protocol type (ethernet, in contrast, does have such a
field).

Perhaps the following example will make things clearer.
Because SSL includes a version number, the IETF was
able to define TLS and now TLS 1.1 without requiring
a new underlying protocol (all versions of SSL and
TLS run atop TCP).

It seems like a prudent tradeoff to me to spend 2 bits
for the ability to later revise LowPAN (based on deployment
experience) without requiring a new lower layer.

As for the tag size, I think 7 bits is still too low (based on
the previously posted analysis). If the general consensus
is to bump it to 10 and wait for deployment experience
before changing it to a higher value, that's fine (at current
data rates, 10 bits would allow for a reassembly timeout of
around 8 seconds which might be ok).

In terms of saving bits, supporting short addresses
provides the biggest bang for the buck -- instead
of carrying two 8-byte addresses across each hop
(for a multihop pkt), carrying two 2-byte addresses
saves 96 bits. Compared to this, the extra few
bits spent on the version or the tag are minuscule.

vipul

On Oct 23, 2005, at 1:40 PM, gabriel montenegro wrote:

> Hi Samita,
>
> --- Samita Chakrabarti <samita.chakrabarti@eng.sun.com> wrote:
>> I am not quite clear on the need of version for lowpan layer ; how 
>> are other
>> ipv6 over protocol foo defined in this respect?
>
> Good question, you might want to look over those specs, but I don't 
> recall
> ever seeing a version number. If a future rev of 15.4 (e.g.,
> 15.4-on-steroids) ever makes it obvious that a new adaptation layer
> is needed, then instead of handling this via version numbers on the
> current spec, one could simply issue another document specifically
> for 'IP-over-15.4-on-steroids". Achieves the same thing without wasting
> bits on version numbers.
>
>> Also,  datagram tag size  increament  to 16bits does not seem to be a
>> clear need to me.  I am not sure if  there is a need for  
>> fragmentation
>> tax. Today folks run IP datagram over 10Gb/s ethernet, but  IP
>> identification
>> fileld size is not changing.
>
> Good point, I don't see a need for this to grow much either.
>
>> We need to be very sure that the datagram tag
>> rollover is an issue before  increasing  bit numbers in the lowpan 
>> header.
>
> This is the main issue, yes, let's not get too aggressive on 
> over-engineering
> in advance.
>
>> BTW,  currently protocol field is 11 bits - we should reduce that 
>> number
>> to 8 bits.
>
> Ok, let's do this.
>
>> We may want to use 1 bit  (8bit +1)  in highest order bit, to
>> indicate
>> private or standard protocol-type if  folks think that might be 
>> useful.
>
> I don't think this is useful. Private or proprietary encapsulations 
> are the
> majority (and will continue to be so according to some folks) and 
> these precisely
> couldn't care less about interoperability with anybody cuz they have 
> their own
> isolated network. This bit would remain unused.
>
> As for interoperability with zigbee, I'm thinking that the fact that 
> most of these
> applications will (hopefully) use some link-layer (15.4) security, 
> means that as long
> as you don't use the same keys for both lowpan and zigbee, you won't 
> even get a chance
> of being confused. This multiplexing will be achieved by traffic 
> separation due to
> different
> keying. So I'm thinking that there isn't much to do here either.
>
>> IMHO, we need more discussion and input from folks before changing
>> the tagsize to 16bits. My recommendation would be to start with  the 
>> current
>> size and change later if needed based on implementations input , ie, 
>> when
>> we have more experience with IPv6 over lowpan.
>
> Looking at the previous proposed formats I sent on this thread,
> how about using the 2 bits from the "Ver" field and assigning them to
> the tag size (to grow it from 8 to 10 bits)? This is what I propose:
>
> prot_type: 8 bits
> datagram_size: 11 bits
> datagram_tag: 10 bits
> datagram_offset: 8 bits (offsets expressed in increments of 8 octets)
>
> Format 1 (unfragmented):
>                         1                   2                   3
>     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
>    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>    | LF|  prot_type    |M| rsv     |Payload (or Mesh Delivery Hdr)...
>    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>
> Format 2 (first fragment):
>                         1                   2                   3
>     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
>    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>    | LF|  prot_type    |M|   datagram_size     | datagram_tag      |
>    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>    | Payload (or Mesh Delivery Hdr)...
>    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>
> Format 3 (middle or last fragment):
>                         1                   2                   3
>     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
>    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>    | LF|datagram_offset|M|   datagram_size     | datagram_tag      |
>    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>    | Payload (or Mesh Delivery Hdr)...
>    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>
> This is what I'll put into the draft before submission, unless I hear
> strong opposition, ok?
>
> -gabriel


_______________________________________________
6lowpan mailing list
6lowpan@ietf.org
https://www1.ietf.org/mailman/listinfo/6lowpan