繁体   English   中英

连接到 ESP32 https 服务器时,是否可以限制创建的 tls sockets(Android)的数量?

[英]Is it possible to limit the number of tls sockets created (Android) when connecting to ESP32 https server?

我们有以下设置:

  • ESP32 启动了一个 https 服务器,并发限制为 6 个 TCP socket 连接
  • Xamarin 应用程序运行在 Android 上,使用 javax.net.ssl 作为 TLS 客户端

观察结果是,该应用程序打开 6 sockets。不幸的是,我们在 ESP32 上有 memory 限制。 大约有 160kb 的堆可用,对于每个套接字,每个 SSL session 上下文我们需要大约 30kb。 是否可以限制Android tls客户端创建的sockets个数?

澄清一下,该应用程序是由供应商提供的。 对于通信,使用了 xamarin httpclient,它不提供对 sockets 的低级别访问。观察与 wireshark 的.network 通信,它表明客户端在 4-6 个套接字连接之间自动使用。 这似乎符合 http 协议,以加快页面加载速度。 例如看

https://www.oreilly.com/library/view/http-the-definitive/1565925092/ch04s04.html

把它留在这里以防其他人偶然发现类似的要求“限制连接数”。

HttpClientHandler 有一个属性 MaxConnectionsPerServer,它设置每个端点的连接限制。

可以找到完整的文档do.net-maxconnections

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM