Hi,
I am working with Secure Transport for DTLS and I am facing an issue with packet loss. Our underlying transport is non-blocking. DTLS handshake works fine with normal network condition but mostly fails when I enable Very Bad Network using Network Link Conditioner on iOS devices.
So the question is how does Secure Transport handles packet loss and retransmission of the handshake packets? As of now we are calling 'SSLHandshake' and wait for the response from the server if we get the response then we call ' SSLHandshake' and repeat this until the handshake is successful.
But in case of packet loss I observe that sometimes when iOS receives 'Hello verify Req' from server it never calls 'Client Hello' again and handshake stalls. Do we need to keep on calling SSLHandshake to trigger the retransmission due to DTLS timer or it is taken care by Secure Transport? How shoule we use non-blocking transport in this case?
Thanks and regards!