Subject: [core] observe #69 (new): Notifying temporarily unresponsive clients

From: "core issue tracker" <[email-masked]>
Date: Tue, 09 Nov 2010 17:00:18 -0000

#69: Notifying temporarily unresponsive clients

 In the context of CoAP-observe, it is undesirable to transmit the
 representation of a resource state that has already been replaced by a new
 resource state long ago.

 So what we need is some strategy that deals with the case when a resource
 state changes and the observer hasn't acknowledged the last confirmable
 notification.

 There are many reasons why an observer might not have acknowledged the
 last confirmable notification:

     * there's a short interruption in message delivery,
     * the client's battery has run out of charge,
     * the client can't keep up with processing the notifications,
     * the network is congested,
     * etc.

 We want a server to end a subscription when the client is gone, but we
 don't want to end a subscription just because there's a short hiccup in
 the network.

 There are several possible solutions, including:

     * (a) Set MAX_RETRANSMIT for confirmable notifications to 1.

     * (b) Do not allow any notifications while a confirmable notification
 is pending.

     * (c) Cancel pending confirmable notifications when the next
 confirmable notification is to be sent.

     * (d) Do not transmit a snapshot, but a representation of the state
 that is current at the instant of the retransmission.

     * (e) Cancel the pending confirmable notification and send the new
 confirmable notification with MAX_RETRANSMIT set to the number of attempts
 remaining from the canceled notification.

 draft-ietf-core-observe-00 recommends (d). This ticket proposes to
 recommend (e).

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

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