干货|BAT物联云IoT协议例析
点击上方“中兴开发者社区”,关注我们
每天读一篇一线开发者原创好文
近年来,物联网(IoT,Internet of Things)已经从概念阶段走向大规模应用。据Gartner统计,全球物联设备总数量从2016年的60+亿增加到2017年的80+亿,预计2020年全球将达到至少300+亿物联设备。超大规模的设备联网必定离不开专业云计算服务的支持,诸多互联网及高科技公司都已推出自己的物联云平台,供终端设备厂商方便快捷地令其设备支持联网功能。我前段时间写过两篇文章(《MQTT协议例析》、《CoAP协议例析》)介绍了物联网主要的两个应用协议(MQTT、CoAP),自己搭建开发环境测试并基于Wireshark抓包,分析了该两协议的主要流程与功能要点。在本文中,我将介绍百度云IoT、阿里云IoT、腾讯云IoT三个物联云服务对IoT协议的支持情况,并分析抓包流量,对比差异,给出可能的DPI(Deep Packet Inspection)特征,以助读者更好了解。
百度云IoT
百度云IoT服务支持 MQTT、MQTT over TLS、MQTT over WSS (WSS即WebSocket Secure)三种物联网协议。百度云允许用户自定义实例名,并以该实例名作为用户独立DNS子域名,且形成三种协议的服务端URL。当设备端集成百度云IoT SDK时,需根据所选用的协议来填写对应的URL。对于DPI流量识别来说,百度云IoT的流量特征较为明显,可将 *.mqtt.iot.gz.baidubce.com 或其它同类域名用于识别百度云IoT流量。
阿里云IoT
阿里云IoT支持 MQTT over TLS、CoAP over DTLS、HTTPS 三种物联网协议。阿里云在用户自定义产品名时,会自动生成一个 ProductKey,并以该ProductKey作为用户独立DNS子域名。对于DPI流量识别来说,阿里云IoT的流量特征也较为明显,可将*.iot-as-mqtt.cn-shanghai.aliyuncs.com、*.iot-as-coap.cn-shanghai.aliyuncs.com 或其它同类域名用于识别阿里云IoT流量。
腾讯云IoT
腾讯云IoT支持 MQTT over TLS、CoAP over DTLS 两种物联网协议。与百度云IoT、阿里云IoT不同的是,腾讯云IoT的DNS域名并不是用户的独立子域名。腾讯云在用户自定义产品名/设备名时,会自动生成一个 productID,并将“productID+设备名称”在TLS的 ClientKeyExchange 消息、DTLS的 Client Certificate 消息中提供给云端。对于DPI流量识别来说,腾讯云IoT的流量特征也较为明显,可将 iotcloud-mqtt.gz.tencentdevices.com、iotcloud-coap.gz.tencentdevices.com 或其它同类域名用于识别腾讯云IoT流量。
物联云协议特征对比分析
每种物联云服务都可能提供给多个不同终端设备厂商使用,对于DPI流量识别来说,既应该支持识别不同物联云服务的流量,也应该支持某一种物联云服务内不同厂商终端设备的应用流量。
首先,按云服务识别:各物联云IoT服务,通常可根据DNS特征识别服务器IP地址,再根据IP地址识别相应流量。如因终端设备本地缓存DNS等情况而无法获取DNS的话,则可将SNI(Servcie Name Indication)或服务器证书CN(Common Name)作为补充特征。
其次,按终端应用业务细化识别:各物联云IoT服务,要么可通过DNS细化识别终端应用流量,要么可通过 Client Key Exchange 或 Client Certificate 消息细化识别终端应用流量。值得注意的是,百度云IoT较为特殊,支持明文方式MQTT协议,这时可通过 MQTT CONNECT 中 username 或 PUBLISH/SUBSCRIBE 消息中 Topic 作DPI特征,识别更加精细化的终端应用行为信息。
本文介绍了百度云IoT、阿里云IoT、腾讯云IoT三款国内主流物联网云服务的协议支持情况,通过流量对比分析,给出有效的DPI特征用于流量识别。希望可以帮助读者了解物联网云服务之概貌,以进一步学习了解IoT,了解万物互联。
参考资料:
1. 百度云 IoT https://cloud.baidu.com/solution/iot/index.html
2. 阿里云 IoT https://iot.aliyun.com/
3. 腾讯云 IoT https://cloud.tencent.com/product/iotsuite
干货|BAT物联云IoT协议例析相关推荐
- 临淄区青少年科技馆物联云创客项目
临淄区青少年科技馆物联云创客项目 一.科技馆物联云开发背景和所用技术 2 (一)为什么要学物联网? 2 (二).实现科技馆物联云所用到主流(芯片)技术 3 二.如果独立完成这个物联云创客平台,我们能做 ...
- 读懂千行百业,萤石物联云平台全新能力发布
音视频技术深刻改变着千行百业的管理效率,成为物联网应用的基础设施,萤石云作为亿级视频设备背后的物联网平台,通过十年的锤炼,聚"视"蓄能,逐步形成了完整的平台化能力.萤石打造全栈开放 ...
- 4G DTU接入平台系列教程(三):OneNet中移物联云平台接入教程详解
LTE-659 4G DTU系列 OneNet中移物联云平台连接教程 今天介绍物联设备 LTE-659 4G DTU如何接入OneNet中移物联云平台系列. LTE-659是一款Cat 1模块.物联网 ...
- 干货 | CoAP协议例析
点击上方"中兴开发者社区",关注我们 每天读一篇一线开发者原创好文 在物联网领域中,MQTT和CoAP是最主要的两个应用协议.MQTT(Message Queuing Teleme ...
- 贝壳物联平台通讯协议
贝壳物联平台通讯协议 贝壳物联平台通讯协议TCP.UDP.HTTP.Websocket说明,设备登录服务器,收发命令,发送实时数据,上传图片等协议. 首页 帮助文档 API文档 目录 一.概述 二.通 ...
- ESP8266 WiFi 模块连接乐为物联云实现PM2.5测试系统
ESP8266 WiFi 模块连接乐为物联云实现PM2.5测试系统 1.关于ESP8266 安信可科技推出的ESP8266 WiFi 模块可以以极低的成本把传统单片机系统接入物联网.内置WiFi前端和 ...
- android梦网物联卡信息,梦网物联云:实现智能穿戴只需一张物联网卡
近年来智能穿戴行业发展迅速,智能手环.智能手表.智能眼镜等智能穿戴设备日渐普及,不仅年轻人被智能穿戴设备吸引,老年人和小孩也慢慢用上了智能穿戴设备,智能穿戴设备正在悄无声息地对我们的生活产生影响. 据 ...
- android梦网物联卡信息,摘自TechWeb:梦网物联云:实现智能穿戴只需一张物联网卡...
近年来智能穿戴行业发展迅速,智能手环.智能手表.智能眼镜等智能穿戴设备日渐普及,不仅年轻人被智能穿戴设备吸引,老年人和小孩也慢慢用上了智能穿戴设备,智能穿戴设备正在悄无声息地对我们的生活产生影响. 据 ...
- 99物联REALTEK IOT模块选型表
99物联模组选型 技术支持:136-8683-2733 单模Wi-Fi 金手指模组AFW127PI 外接IPEX AFW125TO 低成本模组AFW211TI 推荐模组AFW121TI 多协议模组 2 ...
最新文章
- [USACO07NOV]Cow Relays
- 【数据结构】单调栈和单调队列 详解+例题剖析
- SQL优化常用方法31
- linux磁盘iops限制,linux – 我需要多少IOPS?我的工作量瓶颈是存储
- 2017安防市场新趋势:硬件免费 服务收费
- linux100台服务器免密,多台Linux服务器之间互相免密登陆,脚本同步免密
- logistics 与最大熵模型原理及python代码实现
- CentOS 6.2 mini安装桌面环境
- devc运行窗口不显示_编写Qt多窗口程序
- lopatkin俄大神精简中文系统Windows 8.1 Pro 19599 x86-x64 ZH-CN SM
- 运放放大倍数计算公式_运放选型速记指南
- shader函数整理
- 统计数字liuseroj.picp.io
- python中del的用法
- 区块链骗局盘点,有人暴富,有人破产
- 东京迪斯尼海洋乐园攻略_迪士尼乐园-软件工程师的观点
- 点到超平面的距离公式
- 华为机试 - 最大矩阵和
- 下载AE插件时出错,为什么?
- Hadoop:大数据的特征4V
热门文章
- Vue3 + Element-Plus upload组件封装限制上传数量,再次上传则覆盖
- revit输入序列号闪退_BIM软件小技巧:关于REVIT启动闪退的解决方法
- 手柄连接小米3,小米3连接小米盒子
- Typecho 主题更换
- MBB类似jquery.bxslider插件轮播效果
- 大数据-hadoop MapReduce
- 国内量化平台不完全汇总
- 吴恩达机器学习课程作业(一)基于python实现 详细解析(上篇)
- [2012黑莓赛] *.bar应用签名步骤 [大二THS_201]
- bilibili网站爬虫