Re: [6lowpan] Re: Some comments about draft-ietf-6lowpan-format-04

Mario Mao <mariomao@gmail.com> Thu, 07 September 2006 12:25 UTC

Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com) by megatron.ietf.org with esmtp (Exim 4.43) id 1GLIwp-0006gm-Nf; Thu, 07 Sep 2006 08:25:35 -0400
Received: from [10.91.34.44] (helo=ietf-mx.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1GLIwo-0006gh-Cn for 6lowpan@ietf.org; Thu, 07 Sep 2006 08:25:34 -0400
Received: from py-out-1112.google.com ([64.233.166.183]) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1GLIwn-00021s-Aa for 6lowpan@ietf.org; Thu, 07 Sep 2006 08:25:34 -0400
Received: by py-out-1112.google.com with SMTP id e30so236284pya for <6lowpan@ietf.org>; Thu, 07 Sep 2006 05:25:33 -0700 (PDT)
DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:to:cc:references:subject:date:mime-version:content-type:x-priority:x-msmail-priority:x-mailer:x-mimeole:from; b=Jz8lTjdVdLMvSUm6/mPPrb1imXVI0gRLf8idD0jXo2gDwE/ey3/9Tlhw5a401P7rGiB3MHyCMxb1aAYtdZetnUP+ruU4sg5YPQ1VngyNW93y1DIzYb0DNl6KmdCRoYKOcU1dh5+pV0qtvBsA2eiPwuCa/mQRmaCWc/BlDV5RGZY=
Received: by 10.35.84.12 with SMTP id m12mr601015pyl; Thu, 07 Sep 2006 05:25:32 -0700 (PDT)
Received: from Maoer ( [211.144.102.60]) by mx.gmail.com with ESMTP id m2sm643402nzf.2006.09.07.05.25.30; Thu, 07 Sep 2006 05:25:32 -0700 (PDT)
Message-ID: <007001c6d279$90ade8b0$7fc0a8c0@netlab.cs.ecnu.edu.cn>
To: gabriel montenegro <gabriel_montenegro_2000@yahoo.com>
References: <20060907084238.60898.qmail@web81908.mail.mud.yahoo.com>
Subject: Re: [6lowpan] Re: Some comments about draft-ietf-6lowpan-format-04
Date: Thu, 07 Sep 2006 20:31:34 +0800
MIME-Version: 1.0
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1807
x-mimeole: Produced By Microsoft MimeOLE V6.00.2800.1807
From: Mario Mao <mariomao@gmail.com>
X-Spam-Score: 1.2 (+)
X-Scan-Signature: 2fe944273194be3112d13b31c91e6941
Cc: 6lowpan@ietf.org
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>
Content-Type: multipart/mixed; boundary="===============0718994183=="
Errors-To: 6lowpan-bounces@ietf.org

Hi Gabriel,

Sorry for the delay, here are some comments about the newly modified Broadcast field, thanks.

About the option #4, I think it is a good way to solve the confusion. In addition, here is the way we used, hope it could do some help, thanks.

I remember I had suggested a way of introducing a "M" bit which indicates Mesh Broadcast or Multicast Delivery Field immediately following the LoWPAN header. The "M" will use one of the 4 rsv bits in fixed header and not affect the alignment.

                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|B| rsv   |Payload (Mesh B/M Field)...
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

When encountering adaptation layer fragment, no more bit are free for the special bit. However, we find it's a nightmare to broadcast fragments in actual 802.15.4 network. The working channel would be full of broadcast fragments even using kinds of optimized algorithm and the result is high possibility of discarding and re-transmitting, and high energy-cost . So, to avoid such situation, we decide to disable broadcast when the packet need to be fragmented into several frames (ugly but useful way). With this strategy, no modification to the fragment encapsulation header format is needed too.

At last, I find some problem when impliment IPv6 header compression. Please note Traffic Class and Flow Label bit in HC1. If we don't compress the two field, 28 bits (that is three and half bytes) are sent. However, how to send the half byte? As I know, most hardware could only transmit data in unit of BYTE. Should we need 4 bits pending data? The workdaround we used is combining the Traffic Class and Flow Label with Version field. So, the Traffic Class and Flow Label bit becomes Version, Traffic Class and Flow Label bit. Please see following as detail.

Version, Traffic Class and Flow Label (bit 4):
0: not compressed, full 4 bits for Version, 8 bits for Traffic Class and 20 bits for Flow Label are sent
1: Traffic Class and Flow Label are zero

Best Regards,

Mario Mao
  ----- Original Message ----- 
  From: gabriel montenegro 
  To: gabriel montenegro ; Mario Mao 
  Cc: 6lowpan@ietf.org 
  Sent: Thursday, September 07, 2006 4:42 PM
  Subject: Re: [6lowpan] Re: Some comments about draft-ietf-6lowpan-format-04


  Since there has been no feedback on this, I will go with option #4 below unless I hear otherwise within the next few
  days. We can always revisit this during IETF LC. But if we make no decision we will never get to IETF LC.

  -gabriel


  ----- Original Message ----
  From: gabriel montenegro <gabriel_montenegro_2000@yahoo.com>
  To: Mario Mao <mariomao@gmail.com>
  Cc: 6lowpan@ietf.org
  Sent: Tuesday, August 8, 2006 8:56:24 AM
  Subject: [6lowpan] Re: Some comments about draft-ietf-6lowpan-format-04


  Good point, yes. The confusion is that upon reception it is not easy to determine which of the two following mesh header formats is being used because
  the fixed part of the header does not tell us:


                           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      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+      |O|F| Hops Left |            Originator Address...      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         ...Final Destination Address      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                      Figure 10: Mesh Delivery
 Field

                           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      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+      |O|F| Hops Left |Sequence Number|     Originator Address...      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         ...Final Destination Address      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+           Figure 11: Mesh Broadcast or Multicast Delivery FieldWe could put the indication in the fixed part of the header by :

  1. adding a bit field to distinguish. Two alternatives: (a) We could add one bit and move everything after it over one bit. Not that our alignment was
      great to begin with, but this would make it uglier. (b) We could make this bit field larger than 1 bit, in which case we'd be able 
      to distinguish between the two current formats and leave some bit patterns reserved in case we end up defining other .
      mesh headers in the future.
  2. adding a bit by stealing one from, say, hops_left. This means we'd have a max of 32 hops instead of the current 64. I still think this
      is enough. This would not alter whatever alignment we now have.
  3. Grow the 'F' field by one more bit, and assign bit patterns for 64 bit address, 16-bit address and 16-bit bcast/mcast address (as per
      the current draft). 
      This would leave one bit pattern reserved.
  4. Move the distinguishing field, "Final Destination Address" into the fixed part of the header (right after hops_left). Sequence number and originator
      address would relocate after final destination address. This does not waste any bits, but is esthetically unpleasant. But we may not care about such
      things.

  Any others?

  Comments? Would the folks who are implementing this please express their opinions?

  -gabriel


  ----- Original Message ----
  From: Mario Mao <mariomao@gmail.com>
  To: gabriel montenegro <gabriel_montenegro_2000@yahoo.com>
  Cc: 6lowpan@ietf.org
  Sent: Saturday, August 5, 2006 2:52:52 AM
  Subject: Some comments about draft-ietf-6lowpan-format-04


  Hi Gabriel,

  There is some comments about the last draft, thanks.

  In Section 11, the draft mentions that a special format of "Mesh Delivery" field should be used when Broadcast or Multicast. This kind of field is called as Mesh Broadcast or Multicast Delivery Field and a "Sequence Number" is added.

  For Source Node, it will be clear that which kind of format it should use. But for Destination Node or Relay Node, looks like there will be some confusion when they trying to explain this format.

  The cause of such confusion is the way inbound Node identifying such kind of field format. As the draft mentioned, the destination address is the identification of such kind of field. However, for the Final Destination Address is behind the Sequence Number, the inbound Node will be unaware of the existence of this field before it check the Final Destination Address. If inbound Node handle all Broadcast Delivery Field as the normal "Mesh Delivery" field, when it begins to check the Final Destination Address, there will be 8-bits shift of the right position. This scenario must lead to an mistake.

  There is also another way to identify the Broadcast Delivery Field. That is checking the destination MAC address in the IEEE 802.15.4 header (0xFFFF). But in practice, an IEEE 802.15.4 broadcast frame can't be delivered to every END DEVICE (RFD). This is because the END DEVICE disable its transceiver during CAP when there is no frame directly sent to it.

  To avoid such incorrect scenario, one flag may be needed in the fixed filed (in Adaptation Header). That make all node could recognize the special Broadcast Delivery Field in right way.

  Regards,


  Mario Mao
  MarioMao@Gmail.com
                                         


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

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