← Prev in month ← Prev in thread

Re: [mqtt] CONNECT Will Msg in context of KeepAlive timeout

From
Dave Locke <>
Date
2013-03-27T11:52:12+00:00
ID
Thread
Re: [mqtt] CONNECT Will Msg in context of KeepAlive timeout
For the server to detect a Keepalive timeout
 it must not have seen a PINGREQ (or other MQTT activity from the
client) for a minimum of the keepalive interval.  Once the server
has detected a keepalive timeout  the MQTT connection is deemed to
be broken and the server will initiate a shutdown of the connection including
sending the LWAT if one was requested.

The PINGREQ is always initiated from
the client.  If the client does not receive a PINGRESP within the
keepalive interval it deems the connection to be broken and should shutdown
the connection.   

All the best 

Dave 

  

From:      
 "Mr. Allan Cornish"
<>

To:      
 ,

Date:      
 27/03/2013 00:26

Subject:    
   [mqtt] CONNECT
Will Msg in context of KeepAlive timeout

Sent by:    
   <>

This is probably a dumb question, but i would like
to clarify the following sequence:

Client sends MQTT CONNECT + 'Will' msg, +ve KeepAlive

Server sends MQTT CONNACK

Keep Alive timeout occurs

Server sends MQTT PINGREQ, no response from client.

Server drops TCP connection.

Section 2.2 Will flag specifies 'Sending a Will message is not triggered
by the server receiving a DISCONNECT message from the client.'

Section 2.2 Keep Alive timer specifies 'If the server does not receive
... it disconnects the client as if the client had sent a DISCONNECT message.'

Does this mean that if a client fails to respond and the server drops the
TCP connection, the Will message is not published?

Unless stated otherwise above:

IBM United Kingdom Limited - Registered in England and Wales with number
741598. 

Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6
3AU
← Prev in month ← Prev in thread