首页 文章

使用ESP8266 TCP客户端永久保持TCP连接

提问于
浏览
0

我正在使用带有SMING框架的wifi芯片ESP8266 .

我能够 Build TCP连接作为远程服务器的客户端 . 启动客户端与服务器连接的代码很简单 .

tcpClient.connect(SERVER_HOST, SERVER_PORT);

不幸的是,连接将在空闲一段时间后关闭 . 我想永久保持这种联系 . 如何才能做到这一点?

1 回答

  • 1

    您实际上需要监视连接状态并在失败时重新连接 . 您的协议将需要跟踪另一方实际收到的内容并重新传输 .

    在任何无线网络中,您的链接可能由于某种原因而断开,如果您需要维持长期连接,则需要将其置于TCP本身以上的层中 .

    只要双方都允许TCP(它们都没有断开连接)并且链路上没有错误,TCP将继续连接,在这种情况下,发送keepalive实际上可能导致断开连接,因为keepalive可能一次失败但是链接可能恢复,如果你没有keepalive链接会熬夜 .

相关问题