Subject: [core] #126: Drop Lifetime

From: "core issue tracker" <[email-masked]>
Date: Fri, 11 Mar 2011 11:42:48 -0000

#126: Drop Lifetime

 It seems to be possible to simplify the observation mechanism by dropping
 the Observation Lifetime, i.e. the need for the client to refresh an
 observation relationship from time to time if it wants to kept notified of
 state changes.

 Without Lifetime, an observation relationship is ended under the following
 conditions:

   - The server sends a notification response with a non-success response
 code (4.xx or 5.xx).
   - The client rejects a confirmable notification with a RST message.
   - The last attempt of transmitting a confirmable notification to the
 client times out.

 It also seems beneficial giving the server license to drop all observation
 relationships to a client when one response times out.

 Dropping the Lifetime requires a new mechanism that enables a client to
 detect the reordering of notifications. A simple solution is to have the
 server keep a single N-bit integer variable for all observations. The
 variable is incremented every second (wrapping around every 2**N seconds).
 The server includes the current value of the variable each time it sends a
 notification. The client can decide if a notification is newer than
 another by comparing the value included by the server and the timestamp of
 the two notifications (so it needs to remember only the latest
 notification per observation relationship).

-- 
----------------------------------+-----------------------------------------
 Reporter:  hartke@…              |       Owner:  hartke@…      
     Type:  protocol enhancement  |      Status:  new           
 Priority:  major                 |   Milestone:                
Component:  observe               |     Version:                
 Severity:  -                     |    Keywords:                
----------------------------------+-----------------------------------------

Ticket URL: <http://trac.tools.ietf.org/wg/core/trac/ticket/126>
core <http://tools.ietf.org/core/>

---

From: Zach Shelby <[email-masked]>
Date: Fri, 11 Mar 2011 13:51:25 +0200

> observation relationship from time to time if it wants to kept notified of

This is a good solution for reducing state required by a server. 

>   - The last attempt of transmitting a confirmable notification to the

WFM

> relationships to a client when one response times out.

Agreed.

> notification per observation relationship).

Is this really a necessary feature of the observe mechanism itself? We could instead simply document that observe does not including a mechanism for detecting the order of notifications, and recommend that applications needing this functionality should deal with it in the representation of the resource by including e.g. a sequence number or timestamp. 

Zach  

> _______________________________________________
> core mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/core

-- 
Zach Shelby, Chief Nerd, Sensinode Ltd.
http://zachshelby.org  - My blog "On the Internet of Things"
http://6lowpan.net - My book "6LoWPAN: The Wireless Embedded Internet"
Mobile: +358 40 7796297

---

From: "core issue tracker" <[email-masked]>
Date: Mon, 14 Mar 2011 12:36:37 -0000

#126: Drop Lifetime

Changes (by hartke@…):

  * status:  new => closed
  * resolution:  => fixed

Comment:

 Done in observe-02.

-- 
----------------------------------+-----------------------------------------
 Reporter:  hartke@…              |        Owner:  hartke@…      
     Type:  protocol enhancement  |       Status:  closed        
 Priority:  major                 |    Milestone:                
Component:  observe               |      Version:                
 Severity:  -                     |   Resolution:  fixed         
 Keywords:                        |  
----------------------------------+-----------------------------------------

Ticket URL: <http://trac.tools.ietf.org/wg/core/trac/ticket/126#comment:1>
core <http://tools.ietf.org/core/>