IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 2021-07-13 -> 正文阅读

[嵌入式]2021-07-13

AT SSL连接时间优化

一、问题描述

  • 应用场景是做一个支付盒子,需求是连接到服务器,发送 post请求给服务器,收到服务器的数据回复,整个过程时间要求达到 3s 内,目前仅测试 SSL 连接已经达到了3s,询问如何优化这部分时间。
    硬件:ESP8285
    AT 版本: release2.2.0.0

二、测试验证与分析

  • 测试指令如下:
 [2021-07-07 05:56:32.877]收AT+ CIPSTART=“SSL”,“pay
 [2021-07-07 05:56:32.893]收.echase.cn”,443

 [2021-07-07 05:56:35.667]收:CONNECT

 OK
  • 实际测试与客户提供的结果相差不大,确实耗时达到 3s 左右

三.结果分析

  • SSL 连接时间过长的原因, 主要是因为 ESP8266 内存受限,自身性能也不是很好,所以SSL 连接过程中加密计算会比较慢,耗时会比较长。

四、优化方案

  1. 由于 ESP8266 本身性能确实没有 ESP32 强,建议可以将 SSL 连接中加密计算这部分操作放在 MCU 端做,ESP8266 仅负责数据的传输(也就是透传数据) ,MCU 负责数据的加解密, 客户可以找对应平台提供 SSL 库,这种优化方式下 SSL 连接时间可以优化到 0.5s 内左右。

  2. 如果客户确实不愿意在 MCU 端实现,可以建议客户参考下面方式在 ESP8266 端做优化。
    1)在 menuconfig 中关闭掉应用中不需要的指令, 由于客户的应用场景中只用到了 wifi 和 SSL 连接指令,所以可以关闭掉的指令还是比较多的。
    在这里插入图片描述2)将 full cache 打开
    在这里插入图片描述
    按照上述的方式后, 测试结果如下:
    在这里插入图片描述可以看到在 menuconfig 中关闭掉不用的指令,以及 enable full cache 之后,时间还是有明显的提升,优化后的 SSL 连接时间大概是 1.2s 左右。

五、注意事项

对于优化方案2,我们需要考虑到内存是否够用,关闭掉一些不用的指令之后,内存会省出来一些,但是由于Full cache enable 之后,会从最开始的 16KB 的cache 内存增加到 32KB ,性能会提升很多,但需要注意的是,此时内存有可能出现不够用的情况。

可以使用 AT+SYSRAM?指令查看下SSL 连接前和连接后剩余内存情况, 同时还需要客户根据自己的应用场景做大量的测试,确保 AT SSL 连接,通信是稳定的。

ssl 连接前,系统内存剩余情况 +SYSRAM:37004, 33132
在这里插入图片描述
ssl 连接后,系统内存剩余情况 +SYSRAM:31892,9812
在这里插入图片描述
这个内存也只能说刚够用, 如果更小的话会用风险的,建议最好还是根据自己的应用场景做大量测试,确保环境是稳定的。

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-07-14 11:05:27  更:2021-07-14 11:05:39 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/6 12:47:41-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码