Subject: Re: [core] CoAP over TCP

From: Ben Kinsella <[email-masked]>
Date: Thu, 26 Feb 2015 08:55:45 -0600

Hi.

Apologies for resurrecting this thread, but I haven't seen any updates on this topic since November.

>> 3) CoAP over TCP.  draft-bormann-core-coap-tcp-01 is a summary of the
>> design choices. draft-tschofenig-core-coap-tcp-tls selects one option
>> without explaining why.
>
>draft-tschofenig-core-coap-tcp-tls describes what we (ARM and Zebra)
>have implemented and deployed.

draft-bormann-core-coap-tcp expired in January, and draft-tschofenig-core-coap-tcp-tls is due to expire next week.
Please excuse my ignorance of how the IETF process works, but my understanding was that the IETF would standardise on one approach for CoAP over TCP.
Is this still going to happen?

My interest is in the use of CoAP and LWM2M over cellular networks, and I have some concerns over the use of UDP in scenarios which do not support VPNs or private APNs.
Can anyone provide real-world examples of the successful use of CoAP over UDP in this type of environment?
For example, my understanding is that LWM2M already makes a slight modification to CoAP in order to get around the cellular NAT issue: the device initiates the connection to the head-end.
Is UDP as the transport simply not an issue, and therefore there is no real motivation for CoAP over TCP?

I was hoping that IETF standardisation of CoAP over TCP would also trigger changes in OMA's LWM2M spec.
For example, if I adopt the ARM approach outlined in draft-tschofenig-core-coap-tcp-tls, I presume I cannot use a standard LWM2M server?
In what scenarios is the ARM/Zebra approach used?

Alternatively, I know that there are also efforts underway to add an MQTT binding to LWM2M, as an alternative to CoAP.
Which is likely to reach standardisation first: CoAP over TCP, or LWM2M over MQTT?

Regards,
Ben.

Ben Kinsella | Senior Engineer
B+B SmartWorx | Westlink Commercial Park, Oranmore, Co. Galway, Ireland
Office: +353 91 792444 | 
Email: [email-masked] | bb-smartworx.com
Skype: ben.kinsella | ie.linkedin.com/in/benkinsella/

Hannes Tschofenig | 11 Nov 00:33 2014
Re: CoAP over TCP

Hi Carsten,

thanks for the write-up.

On 10/24/2014 06:11 PM, Carsten Bormann wrote:
> In alternative transports, I believe we have three hot topics:
> 
> 1) General issues.  draft-silverajan-core-coap-alternative-transports
> is a good basis for this and we will do the call for adoption soon.
> 
> 2) CoAP over SMS.  This is also related to the question of DTLS over
> SMS.  We have a good draft for the former, which is mostly waiting
> for (1).  draft-fossati-dtls-over-gsm-sms merits some discussion.

Thanks for mentioning draft-fossati-dtls-over-gsm-sms; I am happy to
briefly describe what we had been working on.

> 
> 3) CoAP over TCP.  draft-bormann-core-coap-tcp-01 is a summary of the
> design choices. draft-tschofenig-core-coap-tcp-tls selects one option
> without explaining why.

draft-tschofenig-core-coap-tcp-tls describes what we (ARM and Zebra)
have implemented and deployed.

Our use case is firewall traversal in enterprise networks. Our goal was
to use our existing CoAP over UDP implementation. Doing optimizations to
CoAP when we already add all the complexity of TCP didn't seem
worthwhile to us.

Ciao
Hannes

---

From: Simon Lemay <[email-masked]>
Date: Thu, 26 Feb 2015 11:54:01 -0600

Hi, 

I would say thank you for resurrecting this thread :)

We are currently working on new version draft-tschofenig-core-coap-tcp-tls in order to have out asap so we can move forward on standerdizing CoAP over TCP.  And you are correct, it is the goal of IETF to make it standards, and was identify as a priority 

I would say that it should come out soon, we are writing up the final corner case in the RFC and it will put is out for review very soon.

Thanks for raising the the question :)

Simon Lemay

> On Feb 26, 2015, at 8:55 AM, Ben Kinsella <[email-masked]> wrote:
> 
> Hi.
> 
> _______________________________________________
> core mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/core

---

From: "weigengyu" <[email-masked]>
Date: Fri, 27 Feb 2015 12:03:47 +0800

Hi Ben,

> My interest is in the use of CoAP and LWM2M over cellular networks, and I 
> have some concerns over the use of UDP in scenarios which do not support 
> VPNs or private APNs.
I try to give my comments.

If you use the SMS in celluler networks, it seems not to have the problem of 
mobile IP, NAT or VPN.
If you use IP over GPRS, EDGE, WCDMA or LTE, you need to concern the 
problems about Moblile IP, NAT and/or VPN.

RFC 3519 handls the problem on mobile IP and NAT.
In RFC3519 "Mobile IP Traversal of Network Address Translation (NAT) 
Devices"
"1.2 Problem description
       A basic assumption that Mobile IP [10] makes is that mobile nodes and
   foreign agents are uniquely identifiable by a globally routable IP
   address.  This assumption breaks down when a mobile node attempts to
   communicate from behind a NAT. "

OpenVPN use UDP tunnel as default for VPN, the UDP tunnel conveys IP ESP 
[RFC3948].
Probably the problem is that OpenVPN is based on TLS of OpenSSL.

So, in pricinple it is required just to to replace TLS by DTLS for 
supporting CoAP and OMA LWM2M.

Regards,

Gengyu WEI
Network Technology Center
School of Computer
Beijing University of Posts and Telecommunications
-----原始邮件----- 
From: Ben Kinsella
Sent: Thursday, February 26, 2015 10:55 PM
To: [email-masked]
Subject: Re: [core] CoAP over TCP

Hi.

Apologies for resurrecting this thread, but I haven't seen any updates on 
this topic since November.

>have implemented and deployed.

draft-bormann-core-coap-tcp expired in January, and 
draft-tschofenig-core-coap-tcp-tls is due to expire next week.
Please excuse my ignorance of how the IETF process works, but my 
understanding was that the IETF would standardise on one approach for CoAP 
over TCP.
Is this still going to happen?

My interest is in the use of CoAP and LWM2M over cellular networks, and I 
have some concerns over the use of UDP in scenarios which do not support 
VPNs or private APNs.
Can anyone provide real-world examples of the successful use of CoAP over 
UDP in this type of environment?
For example, my understanding is that LWM2M already makes a slight 
modification to CoAP in order to get around the cellular NAT issue: the 
device initiates the connection to the head-end.
Is UDP as the transport simply not an issue, and therefore there is no real 
motivation for CoAP over TCP?

I was hoping that IETF standardisation of CoAP over TCP would also trigger 
changes in OMA's LWM2M spec.
For example, if I adopt the ARM approach outlined in 
draft-tschofenig-core-coap-tcp-tls, I presume I cannot use a standard LWM2M 
server?
In what scenarios is the ARM/Zebra approach used?

Alternatively, I know that there are also efforts underway to add an MQTT 
binding to LWM2M, as an alternative to CoAP.
Which is likely to reach standardisation first: CoAP over TCP, or LWM2M over 
MQTT?

Regards,
Ben.

Hi Carsten,

thanks for the write-up.

Ciao
Hannes