RE: [WoT IG]: Issues with bi-directional communication for CoAP and other IoT-related protocols

Hi Drasko,

Thanks for your response.

The issue I address is not about the need for TCP keep alives to keep TCP connections but instead the related to the ability for IoT devices to be able to receive REST calls from servers and/or other devices outside of the NAT/firewall. When a  NAT/firewall receives a message from a device within the network protected it keeps a tunnel open for a response to that message, i.e. a message using the same IP-address/portnbr quadraple (src IP-address, dest IP-address, src port, dest port), for a limited time. So a REST call to that device could only be sent to the device as long as the NAT/firewall is open. 

If we want an IoT device behind a NAT/firewal to be able to receive REST calls from the outside world "anytime" we need periodical keep alives to keep the NAT/firewall open.

BR
  Claes

________________________________________
From: Drasko DRASKOVIC [drasko.draskovic@gmail.com]
Sent: Thursday, October 29, 2015 12:06 PM
To: Nilsson, Claes1
Cc: public-wot-ig@w3.org
Subject: Re: [WoT IG]: Issues with bi-directional communication for CoAP and other IoT-related protocols

On Thu, Oct 29, 2015 at 11:50 AM, Drasko DRASKOVIC
<drasko.draskovic@gmail.com> wrote:
> Hi Nilsson,
>
> On Thu, Oct 29, 2015 at 3:12 AM, Nilsson, Claes1
> <Claes1.Nilsson@sonymobile.com> wrote:
>> Referring to previous maiol discussion on this topic I attach a few slides that I may show at our ongoing Sapporo TPAC meeting, e.g. at the TF-AP breal out session.
>
> Thanks for these slides.
>
> I have one question regarding CoAP (and WS) which I do not understand
> very well -for this scenario:
> 1) client (IoT device) initiates connection towards he cloud (WS or CoAP)
> 2) once the connection is established it stays open
>
> But how long does it stays open? Until the server handles the request?
> Until some TCP timeout? Unitl some server internal WebSocket timeout?

>From what I read here:
http://www.tcpipguide.com/free/t_TCPConnectionManagementandProblemHandlingtheConnec-3.htm,
TCP connection should never close, and keepalives on this level are
not even necessary.

On the application layer, if the WebsocketServer can keep connection
ON without closing it, then there is no need for keepalives from
device (nor from server). Connection will be idle, but open. Or am I
missing something?

BR,
Drasko

Received on Friday, 30 October 2015 00:26:41 UTC