Maximum COAP message resending buffer size limited to 255 bytes. Issue #4374

02 Aug 2017

Hello,

I have been using the mbed-os 5 CoAP module to move data between a C027 based device and a pc over a cellular network. The data transmission in my use case is unreliable and the application makes heavy use of the CoAP message resend capability to make sure all data gets transported over the network.

When programming the C027 device using the online compiler I noticed that although it is possible to set the maximum byte limit for the CoAP resending buffer used to store the messages that have not been acknowledged, it seems to be impossible to set it bigger than 255 bytes. This limit is very restrictive and limits the usability of the CoAP retransmission functionality to cases where your data rates are very low or your network is quite reliable so in my opinion it should be possible to set a bigger retransmission buffer if the microcontroller has the RAM to allow it.

There is currently an open issue about this in github but there hasn't been much activity there around it: https://github.com/ARMmbed/mbed-os/issues/4374

Is this something that will be solved sometime in the near future or is there a workaround I don't know about? It would seem unoptimal to implement a second buffer without this kind of limit to solve the issue in my program. More detail on this can be found from the github issue.