Re: [6lowpan] How to find the mailbox? (related to "Advertizeon Behalf")

"Pascal Thubert (pthubert)" <pthubert@cisco.com> Thu, 31 March 2011 08:27 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 C293F3A6C1B for <6lowpan@core3.amsl.com>; Thu, 31 Mar 2011 01:27:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.394
X-Spam-Level:
X-Spam-Status: No, score=-10.394 tagged_above=-999 required=5 tests=[AWL=0.205, BAYES_00=-2.599, 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 p5deXoBzXg+z for <6lowpan@core3.amsl.com>; Thu, 31 Mar 2011 01:27:21 -0700 (PDT)
Received: from ams-iport-2.cisco.com (ams-iport-2.cisco.com [144.254.224.141]) by core3.amsl.com (Postfix) with ESMTP id 0D3643A6B2B for <6lowpan@ietf.org>; Thu, 31 Mar 2011 01:27:20 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=pthubert@cisco.com; l=3630; q=dns/txt; s=iport; t=1301560141; x=1302769741; h=mime-version:content-transfer-encoding:subject:date: message-id:in-reply-to:references:from:to:cc; bh=NA6JC1y1BggUuT21BwEOOJXf9B/wjX7G1Hsp37k6VYA=; b=QG9QuHlPifuPruXTL2vsx/W8gD0DcTljMkSSVb0KcfZo8S4OKA5S32ui jwOFfX18xDhLJk/VDwI/sl8Wd2SyiX+i5kkFZ0M7oekouydjXzCzrZRmu Vsuyt/yAIY2m/QFr0HN85FCe3JZhtLK2fIhhqOrks3o+JOluRy2Q6PrAV 8=;
X-IronPort-AV: E=Sophos;i="4.63,274,1299456000"; d="scan'208";a="23907550"
Received: from ams-core-4.cisco.com ([144.254.72.77]) by ams-iport-2.cisco.com with ESMTP; 31 Mar 2011 08:29:00 +0000
Received: from xbh-ams-201.cisco.com (xbh-ams-201.cisco.com [144.254.75.7]) by ams-core-4.cisco.com (8.14.3/8.14.3) with ESMTP id p2V8T02P030413; Thu, 31 Mar 2011 08:29:00 GMT
Received: from xmb-ams-107.cisco.com ([144.254.74.82]) by xbh-ams-201.cisco.com with Microsoft SMTPSVC(6.0.3790.4675); Thu, 31 Mar 2011 10:28:59 +0200
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: text/plain; charset="US-ASCII"
Content-Transfer-Encoding: quoted-printable
Date: Thu, 31 Mar 2011 10:28:55 +0200
Message-ID: <6A2A459175DABE4BB11DE2026AA50A5D043959FA@XMB-AMS-107.cisco.com>
In-Reply-To: <A9DD5C7E-9ED6-471A-8D1A-9939B7AE5A68@cisco.com>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [6lowpan] How to find the mailbox? (related to "Advertizeon Behalf")
Thread-Index: Acvu2uFtGgU15wTKQbijnLUO58oO0QAm/Qcw
References: <504410488.1444839.1301446046572.JavaMail.root@mail02.pantherlink.uwm.edu><6D9687E95918C04A8B30A7D6DA805A3E01AD48A2@zensys17.zensys.local><87bp0slqg0.fsf@kelsey-ws.hq.ember.com> <A9DD5C7E-9ED6-471A-8D1A-9939B7AE5A68@cisco.com>
From: "Pascal Thubert (pthubert)" <pthubert@cisco.com>
To: Jonathan Hui <jonhui@cisco.com>, Richard Kelsey <richard.kelsey@ember.com>
X-OriginalArrivalTime: 31 Mar 2011 08:28:59.0834 (UTC) FILETIME=[AF2159A0:01CBEF7D]
Cc: cabo@tzi.org, 6lowpan@ietf.org
Subject: Re: [6lowpan] How to find the mailbox? (related to "Advertizeon Behalf")
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: Thu, 31 Mar 2011 08:27:22 -0000

> >> As mentioned yesterday, there is a distinction between Frequently
> >> Listening (a.k.a duty cycled nodes) and what I call call-back
nodes,
> >> i.e. nodes that depend on a router holding a mailbox for that node.
> >> Whether that mailbox feature is provided by any router, a few
> >> specialiezed routers or the border router is a network
implementation
> >> decision.
> >
> > As you point out, there are lots of ways to do this.  No one
solution
> > is going to work for everyone.  At one extreme this can all be
handled
> > by the link layer.  It shouldn't matter to the higher layers if a
> > message is polled for, transmitted according to some known schedule,
> > or unicast immediately.
> >
> > At the other end of the spectrum, it can all be handled at the
> > application layer, with the application polling to some centralized
> > mailbox which may be anywhere.
> >
> > The middle ground, where ND and/or routing get involved, seems
> > dangerous to me, exactly because so many different approaches are
> > possible.
> 
> +1
> 
> Both extremes were represented at the mic yesterday and there were
> certainly concerns with the middle ground approach.  In some cases, I
think it
> will be a combination of both extremes.  The link layer knows best how
to
> contact a duty-cycled node, while the application layer specifies the
policy of
> what to do with packets that experience long communication latencies.
> Having another mechanism in the middle would only add complexity in
> having to combine the particular link layer properties and application
layer
> policies.
> 
+1

Considering only the one-hop problem of sleeping nodes seems to be the
recipe for uncontrolled congestion at - or close to - the sink. What we
really need is a congestion control operation that protects the network,
and that cannot be a one-hop operation.
Sleeping hops introduce latencies that need to be absorbed in outgoing
queues; something constrained devices do not exactly have aplenty.
Selective drops might help by intermediate nodes lack information for
doing that intelligently; in particular, dropping fragments actually
augments the load of the network.

ISA100.11a acknowledges that sleeping periods introduce latencies that
may be unusual in the classical internet, and mandates RFC 2988 for
calculating the retry timer-out interval (RTO). 
ISA100.11a supports ECN, and refers to RFC3168. ECN is always enabled:
it CANNOT be turned off. ECN is set by L2 over the LoWPAN and stamped
into the IPv6 header when HC is uncompressed.
ISA100.11a also tags the packets with a Discard Eligible indication -
mostly for buffered unidirectional publication. This indication is set
by the application for use of the L2 as part of congestion control.
For queued bidirectional communication (R/W, RMI) ISA100.11a is
consistent with the behavior described at the mic above (and Core). Acks
are app layer Acks over UDP, they may carry data, and they are sensitive
to ECN.

What this boils down to is:
- ISA100 has identified a need for congestion control in the LLN. The
congestion control has to be an interaction between the LLN and the
transport/app level. It is unclear how ECN can work with 6LoWPAN
fragments.
- Classical ECN that is designed in conjunction with TCP does not
address properly congestions due to sensor data publication over UDP.
There is a need for an additional mechanism that is not described in
6LoWPAN.

I hope that this can all be addressed in core, though I'm not fully sure
the charter allows that. 
 
Cheers,

Pascal