什么是DTLS+?
【摘要】 特性定义DTLS+(Datagram Transport Layer Security,数据报传输层安全性协议)是华为物联网平台采用的数据报传输层安全协议。
特性定义
DTLS+(Datagram Transport Layer Security,数据报传输层安全性协议)是华为OceanConnectdmp物联网平台采用的数据报传输层安全协议,相比传统DTLS协议,在会话协商等方面做了优化,减少了终端与物联网平台通信过程中的握手次数,从而延长终端电池的使用寿命。
特性价值
对行业:优化后的DTLS+安全传输,相比采用DTLS协议的终端来说,终端功耗可节约50%。
对运营商:减少无线消息,提升联接容量。
应用场景
用于保障NB-IoT NAT(Network Address Translation 网络地址转换)场景下终端设备和IoT平台之间的应用数据、管理数据的安全。
约束与影响
NB-IoT终端必须使用华为芯片,同时要求支持DTLS+协议。
每个NB-IoT终端设备出厂时预置PSK。
实现原理
NB-IoT设备和IoT平台之间采用DTLS协议对应用/管理数据进行保护。DTLS连接由Client和Server握手建立,建立成功后,双方使用五元组(源/目的IP地址、源/目的端口号、协议类型)唯一标识一条DTLS连接(如下图)。因此Client、Server后续发送报文只需在报文头携带上述五元组,对方收到报文后就可以根据五元组找到DTLS安全上下文。
标准DTLS在NB-IoT NAT场景中问题:
在NB-IoT的NAT场景下,因NB-IoT终端发包周期长导致NAT表项过期,NAT老化后会给终端分配新的源IP地址/端口,因此终端每次发包所带IP地址/端口都会不同,导致IoT平台无法根据报文头的五元组找到原来的DTLS上下文,必须重新协商。
DTLS正常协商需要交互6个报文,利用Session ID快速握手也需要5条消息,对终端功耗影响很大(覆盖等级2的情况下,功耗增加60%以上),需要优化。
DTLS与DTLS+的对比
对比项 |
标准DTLS |
DTLS+ |
---|---|---|
通信过程 |
|
|
传输消息量 |
每次传输数据需要7条消息(握手消息6条,传输数据消息1条)。 |
第一次传输数据需要7条消息(握手消息6条,传输数据1条),后面传输数据,无需进行握手(只需要1条传输数据消息),从而减少了终端与平台之间的消息传输。 |
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
该昵称已存在2020/09/30 06:53:301楼编辑删除举报