ConnectivityFoundry / AwaLWM2M

Awa LWM2M is an implementation of the OMA Lightweight M2M protocol in C.
BSD 3-Clause "New" or "Revised" License
102 stars 66 forks source link

Lack of dtls retransmission during handshake. #274

Open Lisek73 opened 8 years ago

Lisek73 commented 8 years ago

There is no retransmission on dtls protocol layer during handshake. Probably the issue is common for dtls abstraction, checked against tinydtls and gnutls.

For example: tinydtls has a callback dtls_check_retransmit() which should be run periodically in application main loop for at least not connected peers. It is never used in AwaLWM2M project.

Reproduction steps: To simple simulate datagram drop run secure client when server is offline, after couple seconds run server. There is one dtls packet "client_hello" sent, no retransmission. After 32 seconds registration timeout on high protocol lever can be observed.

I think that it is good to have full functional dtls layer with retransmit working. It improves connectivity.

delmet commented 8 years ago

You are right at the moment you would have to wait for the registration timeout for it to try again. As this will cause DTLS_Reset to be called.