Kovatsch Matthias | 1 Nov 2011 02:28
Picon

Re: Uri-Path and -Query segmentation

> Fixed:
> 	http://tools.ietf.org/html/draft-bormann-coap-misc-09#section-2

Thanks!

> See the upcoming coap-misc-09 for a strawman.  Not sure I like what I'm writing there, though.

I definitely like the opinion on the artificial limitations :)
I would, however, vote for a consistent rule, as described in my previous mail: "all ones -> additional
length/count byte following" (with arbitrarily many additional length/count bytes). Also in
preference over the more efficient 2-byte solution of Figure 5.

Best regards
Matthias
Carsten Bormann | 1 Nov 2011 06:47
Favicon
Gravatar

Re: Uri-Path and -Query segmentation

> I definitely like the opinion on the artificial limitations :)

Indeed, this should now be common knowledge about system (and protocol) design.
The interesting question is where the "painless" threshold is.

> I would, however, vote for a consistent rule, as described in my previous mail: "all ones -> additional
length/count byte following" (with arbitrarily many additional length/count bytes). Also in
preference over the more efficient 2-byte solution of Figure 5.

Ah, you are a fan of unary encoding (base 255) :-)

Re the number of options, I now have yet another proposal (too late for the draft deadline):

2.1.4.  Alternative: Going to a delimiter model

   Another alternative is to spend the additional byte not as an
   extended count, but as an option terminator.

   In this proposal setting OC to 15 means that the number of options is
   no longer given explicitly.  Instead, the sequence of options is
   terminated by a byte with a special interpretation, 0xF0.  (Note that
   the option _delta_ of 15 is made special, not any specific option
   number.)  The next byte is then the first byte of the payload.

     0                   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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |Ver| T |  15   |      Code     |          Message ID           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   Options ...
(Continue reading)

Carsten Bormann | 1 Nov 2011 23:48
Favicon
Gravatar

IETF82 CoRE agenda

I have uploaded a drafty agenda at:

	http://www.ietf.org/proceedings/82/agenda/core.txt

I mainly tried to cover the drafts we should be looking at -- did I miss any?
The resulting shopping list is still short on objectives for most agenda items.

Those who want to achieve progress on specific drafts -- please send me the objectives for the slot I have put
your draft under, and please tell me who will be presenting/leading the discussion.

The agenda is way too full, and I probably even missed a lot of things we also need to do, so we won't keep slots
that don't have very specific, credible objectives for this meeting.

I plan to have a v2 agenda out 24 h from now.

Grüße, Carsten

Kerry Lynn | 3 Nov 2011 00:22
Picon

Re: IETF82 CoRE agenda

Hi Carsten,


I will be presenting the slides for draft-vanderstok-core-bc-05 on Peter's
behalf and feel it would be better placed adjacent to the Naming and
Discovery discussions on Friday.

Thanks, -K-


On Tue, Nov 1, 2011 at 6:48 PM, Carsten Bormann <cabo <at> tzi.org> wrote:
I have uploaded a drafty agenda at:

       http://www.ietf.org/proceedings/82/agenda/core.txt

I mainly tried to cover the drafts we should be looking at -- did I miss any?
The resulting shopping list is still short on objectives for most agenda items.

Those who want to achieve progress on specific drafts -- please send me the objectives for the slot I have put your draft under, and please tell me who will be presenting/leading the discussion.

The agenda is way too full, and I probably even missed a lot of things we also need to do, so we won't keep slots that don't have very specific, credible objectives for this meeting.

I plan to have a v2 agenda out 24 h from now.

Grüße, Carsten

_______________________________________________
core mailing list
core <at> ietf.org
https://www.ietf.org/mailman/listinfo/core

<div>
<p>Hi Carsten,</p>
<div><br></div>
<div>I will be presenting the slides for draft-vanderstok-core-bc-05 on Peter's</div>
<div>behalf and feel it would be better placed adjacent to the Naming and</div>
<div>Discovery discussions on Friday.</div>
<div><br></div>
<div>Thanks, -K-≤/div>
<div>
<br><br><div class="gmail_quote">On Tue, Nov 1, 2011 at 6:48 PM, Carsten Bormann <span dir="ltr">&lt;<a href="mailto:cabo <at> tzi.org">cabo <at> tzi.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote">
I have uploaded a drafty agenda at:<br><br>
 &nbsp; &nbsp; &nbsp; &nbsp;<a href="http://www.ietf.org/proceedings/82/agenda/core.txt" target="_blank">http://www.ietf.org/proceedings/82/agenda/core.txt</a><br><br>
I mainly tried to cover the drafts we should be looking at -- did I miss any?<br>
The resulting shopping list is still short on objectives for most agenda items.<br><br>
Those who want to achieve progress on specific drafts -- please send me the objectives for the slot I have put your draft under, and please tell me who will be presenting/leading the discussion.<br><br>
The agenda is way too full, and I probably even missed a lot of things we also need to do, so we won't keep slots that don't have very specific, credible objectives for this meeting.<br><br>
I plan to have a v2 agenda out 24 h from now.<br><br>
Gr&uuml;&szlig;e, Carsten<br><br>
_______________________________________________<br>
core mailing list<br><a href="mailto:core <at> ietf.org">core <at> ietf.org</a><br><a href="https://www.ietf.org/mailman/listinfo/core" target="_blank">https://www.ietf.org/mailman/listinfo/core</a><br>
</blockquote>
</div>
<br>
</div>
</div>
Kerry Lynn | 3 Nov 2011 00:49
Picon

Re: draft-arkko-core-dev-urn-01

Hi Jari,


May I assume that you mean "device" in the conventional sense (a.k.a
host, node, etc.) as the physical object that embodies functionality like
server?  If so, do you intend that there should be a 1:1 correspondence
between device and DEV URN?  I am thinking about devices that may
have more than one i/f, and hence more than one MAC address.  Would
this device be known variously by more than one DEV URN, or is there
a canonical way to select one from possibly many equivalent intrinsic
identifiers?

Thanks, -K-
<div>
<p>Hi Jari,</p>
<div><br></div>
<div>May I assume that you mean "device" in the conventional sense (a.k.a</div>
<div>host, node, etc.) as the physical object that embodies functionality like</div>
<div>server? &nbsp;If so, do you intend that there should be a 1:1 correspondence</div>
<div>between device and DEV URN? &nbsp;I am thinking about devices that may</div>
<div>have more than one i/f, and hence more than one MAC address. &nbsp;Would</div>
<div>this device be known variously by more than one DEV URN, or is there</div>
<div>a canonical way to select one from possibly many equivalent intrinsic</div>
<div>identifiers?</div>
<div><br></div>
<div>Thanks, -K-≤/div>
</div>
Alper Yegin | 3 Nov 2011 14:49

draft-yegin-coap-security

Folks,

Please note the draft Zach and I produced for securing CoAP.

http://tools.ietf.org/html/draft-yegin-coap-security-options-00

Comments are very welcome.

Alper

Carsten Bormann | 3 Nov 2011 16:58
Favicon
Gravatar

Re: IETF82 CoRE agenda

On Nov 1, 2011, at 23:48, Carsten Bormann wrote:

> 	http://www.ietf.org/proceedings/82/agenda/core.txt
> 
> I plan to have a v2 agenda out 24 h from now.

Updated with the info I received so far.

If your draft is listed, but there are no objectives and/or no presenter listed, please get that info to me
now, because for v3 I'll have to clean up some drafts from the Friday to make that meeting a bit more
realistic schedulewise.

Grüße, Carsten

Dijk, Esko | 4 Nov 2011 12:00
Picon

Re: Status of Blockwise Transfers

Thank you both for your comments.

> The author of the server implementations will just arbitrarily pick a status code, which still has no meaning.
> A badly written client then might misinterpret that intermediate status. I think, it only creates a
source of errors.

Still, it's not "arbitrarily pick a status code". Even though the intermediate per-block status codes are
not the status for the final operation, they're still needed. E.g. if the Nth block of a blockwise PUT
returns 4.13 or 5.00 the client knows to stop sending further blocks.
We could look at it in another way: in essence the 2.01 and 2.04 codes from core-coap are re-used by
core-block as per-block status codes slightly different meanings:

        2.01  Will Be Created after successfully completing this blockwise operation, Please Continue
        2.04    Will Be Changed after successfully completing this blockwise operation, Please Continue

at least for atomic blockwise PUT/POST. So the codes have some flavour of HTTP 100 Continue as well and an
early indication of what would happen.

regards,
Esko

-----Original Message-----
From: Kovatsch Matthias [mailto:kovatsch <at> inf.ethz.ch]
Sent: Monday 31 October 2011 20:24
To: Likepeng; Dijk, Esko; core <at> ietf.org
Subject: RE: [core] Status of Blockwise Transfers

Thanks for the responses!

> > The current spec seems to already take this "most likely to happen" meaning
> > for the status code in the examples, e.g. blockwise PUT returns 2.04 each
> > time but if a block is missing the final result could still be 2.04 or 4.00 or 4.08.
> > POST could do the same?

But what is most likely to happen?
The author of the server implementations will just arbitrarily pick a status code, which still has no meaning.
A badly written client then might misinterpret that intermediate status. I think, it only creates a source
of errors.

> > On your first point, concurrent Block1/Block2 usage, that seems only applicable to POST or doesn't it?
> From the spec, only concurrent POST is mentioned.

Yes, that is how I understand it as well. A successful PUT would always results in resource state, i.e., no
payload in the response.

> In the Size extension draft, I proposed to get the resource size by the Size option, and use concurrent GET
for blocks.
> http://www.ietf.org/id/draft-li-core-coap-size-option-02.txt

I would say an upper bound (sz attribute) is enough. Embedded devices usually avoid dynamic memory
allocation and those which use it probably have plenty of memory from a CoRE point of view.
For the concurrent GETs, one should be careful not to re-invent/implement TCP (sliding window for
messages in flight), I guess. If it is required, the devices should rather switch to another protocol,
shouldn't they?
I also saw that even for the server it can be hard to know the exact size in advance. With
content-negotiation, the representation is created on-the-fly from some variables. When including
on-demand sensor readings, the server cannot even do a "dry run" to pre-cache the sizes for each content-type.

Best regards
Matthias

________________________________
The information contained in this message may be confidential and legally protected under applicable
law. The message is intended solely for the addressee(s). If you are not the intended recipient, you are
hereby notified that any use, forwarding, dissemination, or reproduction of this message is strictly
prohibited and may be unlawful. If you are not the intended recipient, please contact the sender by return
e-mail and destroy all copies of the original message.

Salvatore Loreto | 4 Nov 2011 18:21
Picon
Favicon

Re: I-D Action: draft-ietf-core-observe-03.txt

Hi,

I have read the document, it is really in a good shape
some comments:

-in Section 1.1. Background

I don't think the comparison with WebSocket is appropriate
as COAP, differently from HTTP, has already natively the two-way communication between
clients and servers; in CoAP each element can act as client/server
So I would remove the last sentence in the last paragraph of the section:
or to enable general two-way communication between clients and servers [I-D.ietf-hybi-thewebsocketprotocol].


-in Section 1.3 Design Philosophy

I don't agree on the similitude inserted in bracket of the first paragraph:

(A server needs to keep track of the observers though, similar to how HTTP servers need to keep track of the TCP connections from their clients.)

 - more the last version of the draft introduces the Max-OFE,
I don't recall that the concept has been discussed in the mailing list before,
but most likely I have missed it.
It is not clear to me the advantage of introducing a Max-OFE value
versus to include directly the "optimistic freshness extension" time directly in the Max-Age:
instead of having Max-Age of 60seconds and a MAX-OFE of 10seconds
assigning directly to Max-Age a value of 70seconds


cheers
Salvatore

-- Salvatore Loreto www.sloreto.com


On 10/31/11 12:37 PM, internet-drafts <at> ietf.org wrote:
A New Internet-Draft is available from the on-line Internet-Drafts directories. This draft is a work item of the Constrained RESTful Environments Working Group of the IETF. Title : Observing Resources in CoAP Author(s) : Klaus Hartke Zach Shelby Filename : draft-ietf-core-observe-03.txt Pages : 27 Date : 2011-10-31 CoAP is a RESTful application protocol for constrained nodes and networks. The state of a resource on a CoAP server can change over time. This document specifies a simple protocol extension for CoAP that gives clients the ability to observe such changes. A URL for this Internet-Draft is: http://www.ietf.org/internet-drafts/draft-ietf-core-observe-03.txt Internet-Drafts are also available by anonymous FTP at: ftp://ftp.ietf.org/internet-drafts/ This Internet-Draft can be retrieved at: ftp://ftp.ietf.org/internet-drafts/draft-ietf-core-observe-03.txt _______________________________________________ core mailing list core <at> ietf.org https://www.ietf.org/mailman/listinfo/core


<div>
    Hi,<br><br>
    I have read the document, it is really in a good shape<br>
    some comments:<br><br>
    -in Section 1.1. Background<br><br>
    I don't think the comparison with WebSocket is appropriate<br>
    as COAP, differently from HTTP, has already natively the two-way
    communication between<br>
    clients and servers; in CoAP each element can act as client/server<br>
    So I would remove the last sentence in the last paragraph of the
    section:<br><blockquote>
      or to enable general two-way communication between clients
   and servers [<a href="http://tools.ietf.org/html/draft-ietf-core-observe-03#ref-I-D.ietf-hybi-thewebsocketprotocol">I-D.ietf-hybi-thewebsocketprotocol</a>].
    </blockquote>
    <br><br>
    -in Section 1.3 Design Philosophy <br><br>
    I don't agree on the similitude inserted in bracket of the first
    paragraph:<br><br><blockquote>
      (A server needs to keep track of the observers
   though, similar to how HTTP servers need to keep track of the TCP
   connections from their clients.)
    </blockquote>
    <br>
    &nbsp;- more the last version of the draft introduces the Max-OFE,<br>
    I don't recall that the concept has been discussed in the mailing
    list before,<br>
    but most likely I have missed it.<br>
    It is not clear to me the advantage of introducing a Max-OFE value <br>
    versus to include directly the "optimistic freshness extension" time
    directly in the Max-Age:<br>
    instead of having Max-Age of 60seconds and a MAX-OFE of 10seconds <br>
    assigning directly to Max-Age a value of 70seconds<br><br><br>
    cheers<br>
    Salvatore<br><br>-- 
Salvatore Loreto
<a class="moz-txt-link-abbreviated" href="http://www.sloreto.com">www.sloreto.com</a>
    <br><br><br>
    On 10/31/11 12:37 PM, <a class="moz-txt-link-abbreviated" href="mailto:internet-drafts <at> ietf.org">internet-drafts <at> ietf.org</a> wrote:
    <blockquote cite="mid:20111031113719.3103.79998.idtracker <at> ietfa.amsl.com" type="cite">
      A New Internet-Draft is available from the on-line Internet-Drafts directories. This draft is a work item of the Constrained RESTful Environments Working Group of the IETF.

	Title           : Observing Resources in CoAP
	Author(s)       : Klaus Hartke
                          Zach Shelby
	Filename        : draft-ietf-core-observe-03.txt
	Pages           : 27
	Date            : 2011-10-31

   CoAP is a RESTful application protocol for constrained nodes and
   networks.  The state of a resource on a CoAP server can change over
   time.  This document specifies a simple protocol extension for CoAP
   that gives clients the ability to observe such changes.

A URL for this Internet-Draft is:
<a class="moz-txt-link-freetext" href="http://www.ietf.org/internet-drafts/draft-ietf-core-observe-03.txt">http://www.ietf.org/internet-drafts/draft-ietf-core-observe-03.txt</a>

Internet-Drafts are also available by anonymous FTP at:
<a class="moz-txt-link-freetext" href="ftp://ftp.ietf.org/internet-drafts/">ftp://ftp.ietf.org/internet-drafts/</a>

This Internet-Draft can be retrieved at:
<a class="moz-txt-link-freetext" href="ftp://ftp.ietf.org/internet-drafts/draft-ietf-core-observe-03.txt">ftp://ftp.ietf.org/internet-drafts/draft-ietf-core-observe-03.txt</a>
_______________________________________________
core mailing list
<a class="moz-txt-link-abbreviated" href="mailto:core <at> ietf.org">core <at> ietf.org</a>
<a class="moz-txt-link-freetext" href="https://www.ietf.org/mailman/listinfo/core">https://www.ietf.org/mailman/listinfo/core</a>

    </blockquote>
    <br><br>

  </div>
Carsten Bormann | 4 Nov 2011 18:58
Favicon
Gravatar

Re: I-D Action: draft-ietf-core-observe-03.txt

> I have read the document, it is really in a good shape

After doing my review, I agree.

> I don't think the comparison with WebSocket is appropriate
> as COAP, differently from HTTP, has already natively the two-way communication between
> clients and servers; in CoAP each element can act as client/server
> So I would remove the last sentence in the last paragraph of the section:
> or to enable general two-way communication between clients
>    and servers [
> I-D.ietf-hybi-thewebsocketprotocol].

I agree that this text is not essential.

> -in Section 1.3 Design Philosophy 
> 
> I don't agree on the similitude inserted in bracket of the first paragraph:
> 
> (A server needs to keep track of the observers
>    though, similar to how HTTP servers need to keep track of the TCP
>    connections from their clients.)

I think this point is important, as people who think that HTTP is stateless always conveniently forget that
e.g., for a long-poll, connection state has to be kept for a long time at the server.  An observation
relationship is rather similar to this connection state, once you disregard the different layers.

So where do you see the limitations of that allegory?

>  - more the last version of the draft introduces the Max-OFE,
> I don't recall that the concept has been discussed in the mailing list before,
> but most likely I have missed it.
> It is not clear to me the advantage of introducing a Max-OFE value 
> versus to include directly the "optimistic freshness extension" time directly in the Max-Age:
> instead of having Max-Age of 60seconds and a MAX-OFE of 10seconds 
> assigning directly to Max-Age a value of 70seconds

I thought that, too, for a while.
One reason why it is useful to have both max-age and max-ofe is that, with a single value, there is no
indication when it would be a good time to start trying to get a new value -- at a time when the existing value
can still be used.
See RFC5861 (the, somewhat more complex, HTTP version of this concept) for more background.

Grüße, Carsten


Gmane