-
Notifications
You must be signed in to change notification settings - Fork 404
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Does Californium PR 2088 harm Leshan? #1499
Comments
Until now, nobody report issue about it. If I'm not wrong this was added in Californium 3.8 ? Leshan depends to Californium 3.8 only since v2.0.0-M11) which is pretty recent and so maybe not so used. @JaroslawLegierski do you know if you face issue about that with Leshan 2.0.0-M11 or 2.0.0-M12 ? Maybe you are using About blockwise we are just using transparent blockwise transfer, so I'm not sure what could be specific to Leshan. My first guess if there is a problem this is not limited to LWM2M use case. |
That's good the read.
No, the Californium transparent blockwise transfer doesn't use the token to related the transfer's requests. |
It breaks some lwm2m clients (for sure, the Zephyr one) |
Hm, but that should be only the case, when Californium is the CoAP client and initiates the blockwise transfer. |
"lwm2m clients" not "coap clients" Exactly, when the LWM2M server pushes a large content to the LWM2M client (POST or PUT), the LWM2M server acts as a CoAP client. I think the Zephyr client uses the token as a way to reassemble all the packets in a "single" transaction, and if you don't do so, how you can be sure you are assembling blocks of the same transaction? |
Let's forward that question to IETF Constrained Application Protocol (CoAP): Corrections and Clarifications. And see, what we get as answer. |
AFAIK, on the coap-client side, that's defined by the etag in the response. |
At least, I didn't find any reference to Etag in LWM2M v1.0.2, v1.1.1 and v1.2.1 |
If LwM2M refers to RFC7252 and RFC7959,it refers to the etag. |
Anyway, details about RFC 7252, 7641, 7959 are in my opinion best discussed at the IETF/CORE. |
I just wanted to say that LWM2M says nothing about using etag or not using it. If etag is needed for some COAP blockwise, FETCH or observe, this is more RFC/IETF concerns. (Not specific to LWM2M) |
We are using the default implementation with |
Thanks a lot. |
AFAIK, the zephyr client has addressed that issue. |
I guess we can close it too. Thx for let us know. |
Question
Please read the comment by SeppoTakalo.
This explains, that using different token for an blockwise transfer seems to break some function in leshan.
I'm not sure, about that, but maybe someone checks the leshan implementation. If that breaks leshan, as short term solution please adjust the application specific default value for
COAP.BLOCKWISE_REUSE_TOKEN
totrue
.In my understanding of CoAP RFC7252, the freedom of the client to choose the token implies, that the server doesn't make assumptions about the token and the server must not bind state to it (the second part is my interpretation).
If leshan requires to bind server-side state to the token, I would appreciate, if that could be discussed in the IETF core mail list or the IETF Constrained Application Protocol (CoAP): Corrections and Clarifications.
The text was updated successfully, but these errors were encountered: