【发布时间】:2021-08-14 11:59:54
【问题描述】:
我设法用 DTLS 创建了一个安全连接(使用 PSK 或证书),我的客户端每 3 秒连续发送一次请求。 到目前为止的代码工作正常,但是,当我重新启动服务器时,连接丢失并且不会重新连接,我检查了日志文件并且连接是客户端/服务器握手中的堆栈。
我的问题是,如何让客户端和服务器在每次丢失时重新建立 dtls 连接。
注意:当我使用正常的 UDP 连接(无 DTLS(没有 psk 或证书))时,与服务器的连接会重新建立,我会继续接收数据。
这里是重启服务器后的日志文件
May 26 09:42:21.079 DEBG created UDP endpoint [::]:5683
May 26 09:42:21.079 DEBG created DTLS endpoint [::]:5684
May 26 09:42:21.079 DEBG created TCP endpoint [::]:5683
May 26 09:42:21.079 DEBG created TLS endpoint [::]:5684
May 26 09:42:24.992 DEBG ***[::ffff:127.0.0.1]:5684 <-> [::ffff:127.0.0.1]:53057 (if1) DTLS: new incoming session
May 26 09:42:24.992 DEBG * [::ffff:127.0.0.1]:5684 <-> [::ffff:127.0.0.1]:53057 (if1) DTLS: received 271 bytes
May 26 09:42:24.993 DEBG * [::ffff:127.0.0.1]:5684 <-> [::ffff:127.0.0.1]:53057 (if1) DTLS: sent 60 bytes
May 26 09:42:29.995 DEBG ***[::ffff:127.0.0.1]:5684 <-> [::ffff:127.0.0.1]:43399 (if1) DTLS: new incoming session
May 26 09:42:29.995 DEBG * [::ffff:127.0.0.1]:5684 <-> [::ffff:127.0.0.1]:43399 (if1) DTLS: received 271 bytes
May 26 09:42:29.995 DEBG * [::ffff:127.0.0.1]:5684 <-> [::ffff:127.0.0.1]:43399 (if1) DTLS: sent 60 bytes
May 26 09:42:34.998 DEBG ***[::ffff:127.0.0.1]:5684 <-> [::ffff:127.0.0.1]:36123 (if1) DTLS: new incoming session
May 26 09:42:34.998 DEBG * [::ffff:127.0.0.1]:5684 <-> [::ffff:127.0.0.1]:36123 (if1) DTLS: received 271 bytes
May 26 09:42:34.998 DEBG * [::ffff:127.0.0.1]:5684 <-> [::ffff:127.0.0.1]:36123 (if1) DTLS: sent 60 bytes
May 26 09:42:39.999 DEBG ***[::ffff:127.0.0.1]:5684 <-> [::ffff:127.0.0.1]:53973 (if1) DTLS: new incoming session
May 26 09:42:39.999 DEBG * [::ffff:127.0.0.1]:5684 <-> [::ffff:127.0.0.1]:53973 (if1) DTLS: received 271 bytes
May 26 09:42:39.999 DEBG * [::ffff:127.0.0.1]:5684 <-> [::ffff:127.0.0.1]:53973 (if1) DTLS: sent 60 bytes
【问题讨论】: