以下内容为本人的学习笔记,如需要转载,请声明原文链接微信公众号「englyf」https://mp.weixin.qq.com/s/tb5eOFNUZLtPPLipLAh3vA


本文大概 1435 个字,阅读需花 4 分钟
内容不多,但也花了一些精力
如要交流,欢迎评论区留言
谢谢你的点赞收藏分享

目前在家庭物联网这一块,绝大部分的电子消费品都是基于wifi联网的设备。从商家那里达到消费者手中之后,简单开机使用无法体现其全部价值,还是需要经过消费者给设备配网的过程,把设备从信息孤岛接入互联互通的世界。

什么是配网?

买回来的电子消费品如果需要基于wifi联网,那么用户就需要先通过指定APP告诉自己的设备如何连接wifi(用户名和密码),设备才基于获取的账户信息接入网络。

设备成功联网之后,距离能充分利用网络的功能还是有差距的。这些设备对于用户来说就是专用的联网设备,它不可以随心所欲一会连接百度,一会又连接抖音,它的才能需要专用的服务器来辅助发挥。

一般物联网设备,都需要在公网搭配专用服务器,基于这些服务器帮助用户实现对设备的随时随地访问,充分沟通用户和设备。因此,接入服务器是第二步。为了服务器和设备安全通信,令牌信息也不可或缺。

配网的一般过程

一般在配网的最开始阶段,APP 先从服务器请求一个令牌信息。获得令牌返回后,APP 可通过多种方式传递给设备,包括wifi SSID、密码和令牌。接着 APP 开始尝试从服务器获取已激活的设备信息列表。

然后,设备利用收到的相关信息连接路由器,路由器为接入的设备分配新 IP 地址,设备成功接入网络。

设备连接服务器,开始设备认证过程。设备将三元组信息接入服务器,服务器校验信息通过。令牌信息上传给服务器,完成安全激活。

服务器向 APP 返回已激活的设备信息列表,配网过程结束。

sequenceDiagram
participant APP
participant CloudServer
participant Device
participant Router

APP ->> CloudServer : 请求令牌(Token)
CloudServer ->> APP : 令牌(Token)返回

loop 各种传输手段
APP ->> Device : Token、SSID、Password
end

APP ->> CloudServer : 请求已激活设备列表

Device ->> Router : 连接路由器
Router ->> Device : 分配 IP 地址

Device ->> CloudServer : 请求激活
CloudServer ->> Device : 激活返回

CloudServer ->> APP : 返回已激活设备列表

配网归类

配网的主流方式有几种,比如热点配网、智能配网、蓝牙配网等。不同方式之间的主要差异就在于从 APP 传输信息给到设备的不同途径。

热点配网

热点配网属于 wifi 配网的一种,利用设置设备的 wifi 模组为热点模式,这样允许手机连接设备的热点,使得手机和设备处于同一局域网中,APP 即可把令牌、路由器的 SSID 和密码等信息加密后在局域网内广播。

设备通过接收局域网内的广播包来解析并解密,获取路由器的 SSID 和密码,然后再切换到 Station 模式去连接路由器,连接成功后则可向云端发起激活请求,完成绑定激活流程。

由于热点英文简称 AP,所以也叫 AP 模式。

热点配网流程:

sequenceDiagram
participant Device
participant APP

Device ->> Device : 开启热点
APP ->> APP : 连接热点
APP ->> Device : 广播配网信息:令牌、SSID、Password
Device ->> Device : 接收解析
APP --> Device : 剩余配网过程

智能配网

智能配网,利用设置设备的 wifi 模组为监听模式,不断抓取无线报文并对其进行解析,提取需要的信息。手机连接路由器,APP 把令牌、路由器的 SSID 和密码等信息按一定方式进行编码,通过组播或广播方式发射无线报文。

常用的编码方式有两种:

先用 UDP 数据包长度来编码,然后通过 UDP 广播发送。
先用 MAC 地址来编码,然后通过 UDP 组播发送。

智能配网也叫快速配网,有的简称 EZ 配网。

相比于 AP 配网,EZ 配网虽然也属于 wifi 配网的一种,但是对最终用户来说更加便捷。缺点是,EZ 配网对路由器和手机硬件有要求,所以兼容性不足,以及无线干扰产生丢包的问题会更明显,所以 EZ 配网无法保证 100% 成功。

智能配网流程:

sequenceDiagram
participant Device
participant Router
participant APP

APP ->> Router : 广播配网信息:令牌、SSID、Password
Router ->> Device : 广播配网信息:令牌、SSID、Password
Device ->> Device : 捕捉无线报文
Device ->> Device : 解析解密
APP --> Device : 剩余配网过程

蓝牙配网

蓝牙配网,意思就是手机 APP 通过蓝牙通道传输配网相关信息(令牌信息、路由器的 SSID 和密码等)给到设备,设备基于这些信息完成配网的过程。

流程是,设备首先是通过蓝牙广播暴露设备相关的信息,手机 App 接收并解析蓝牙广播包,如果广播包中包含指定服务,则 APP 发起扫描响应请求,进一步获取设备的详细信息,获取到设备完整的信息后在 App 显示待配网设备。当用户选择绑定设备时,App 与设备建立蓝牙连接,把配网相关信息通过蓝牙通道发送给设备,设备获取到配网信息,完成激活流程。

蓝牙配网的流程如下所示:

sequenceDiagram
participant Device
participant APP

Device ->> APP : 蓝牙广播
APP ->> APP : 接收解析
APP ->> Device : 扫描响应请求
Device ->> APP : 完整详细信息
APP ->> APP : 显示待配网设备
APP ->> Device : 建立蓝牙连接
APP ->> Device : 配网信息
APP --> Device : 剩余配网过程

sequenceDiagram
participant User
participant DeviceApplication
participant IOT_SDK

User ->> DeviceApplication : start config wifi
DeviceApplication ->> IOT_SDK : config wifi mode to AP or Smart
IOT_SDK ->> DeviceApplication : reboot process

物联网 IOT 设备如何脱离信息孤岛?的更多相关文章

  1. 安天透过北美DDoS事件解读IoT设备安全——Mirai的主要感染对象是linux物联网设备,包括:路由器、网络摄像头、DVR设备,入侵主要通过telnet端口进行流行密码档暴力破解,或默认密码登陆,下载DDoS功能的bot,运行控制物联网设备

    安天透过北美DDoS事件解读IoT设备安全 安天安全研究与应急处理中心(安天CERT)在北京时间10月22日下午启动高等级分析流程,针对美国东海岸DNS服务商Dyn遭遇DDoS攻击事件进行了跟进分析. ...

  2. IOT设备通讯,MQTT物联网协议,MQTTnet

    一.IOT设备的特性 硬件能力差(存储能力基本只有几MB,CPU频率低连使用HTTP请求都很奢侈) 系统千差万别(Brillo,mbedOS,RIOT等) 如使用电池供电,电量消耗敏感 如果是小设备, ...

  3. 【物联网】国内几大云计算厂商的物联网IOT解决方案-阿里云、腾讯、百度、华为、青云(转)

    一.前言随着万物互联时代的来临,IOT逐渐成为各大云计算厂商重点发力的方向,作为平台厂商,提供的是包含接入.存储.管理.计算.展示等多个方面的综合能力,我这里就根据它们各自的特点和能力,简单介绍下它们 ...

  4. IoT设备程序开发及编译环境搭建初体验

    引言 Mirai事件一经曝出,立即引领了一轮研究IoT设备的热潮.目前,对Mirai的报告大多只是在对其功能实现上的介绍,却很少提及如何实现IoT设备程序开发的测试环境.本文在对Mirai的源码研究的 ...

  5. MQTT是IBM开发的一个即时通讯协议,构建于TCP/IP协议上,是物联网IoT的订阅协议,借助消息推送功能,可以更好地实现远程控制

    最近一直做物联网方面的开发,以下内容关于使用MQTT过程中遇到问题的记录以及需要掌握的机制原理,主要讲解理论. 背景 MQTT是IBM开发的一个即时通讯协议.MQTT构建于TCP/IP协议上,面向M2 ...

  6. 基于华为物联网IOT的应用开发 --- 基于.net 的SDK封装

    最近,物联网的概念比较热门,一大批厂商抢着占领物联网的高低,包括有华为物联网.阿里云物联网.腾讯物联网.AWS物联网等等,无法一一列举,一般物联网包含设备侧开发.平台侧开发.应用侧开发,三个部分构成了 ...

  7. 基于华为物联网IOT的应用开发 ---界面管理开发

    在前面随笔<基于华为物联网IOT的应用开发 --- 基于.net 的SDK封装>介绍过IOT中应用侧SDK的封装,主要就是基于华为IOT的应用侧封装,以便在应用系统中进行调用.应用侧SDK ...

  8. 当小程序遇见物联网IoT,几行代码搞定智能插座控制

    在 5G 热潮的推动下,与其紧密结合的物联网(IoT)正日益成为个人和企业工作生活中的重要组成部分,它为企业和个人带来了操作流程的改进和更好的生活体验,随着人工智能(AI)技术的日趋成熟,IoT 与 ...

  9. OpenHarmony3.0如何轻松连接华为云IoT设备接入平台?

    摘要:本文主要介绍基于OpenHarmony 3.0版本来对接华为云IoT设备接入IoTDA,以小熊派BearPi-HM_Nano开发板为例,使用huaweicloud_iot_link SDK对接华 ...

  10. Win10 IoT C#开发 5 - 操作 IoT 设备内嵌 SQLite 数据库 CURD

    Windows 10 IoT Core 是微软针对物联网市场的一个重要产品,与以往的Windows版本不同,是为物联网设备专门设计的,硬件也不仅仅限于x86架构,同时可以在ARM架构上运行. 前几章我 ...

随机推荐

  1. 关于AWS-IAM-certificate-证书的说明

    AWS提供了证书管理的服务,可以使用IAM和ACM(位于Security & Identity IAM下的Certificate Manager)进行管理 在CloudFront和ALB中都可 ...

  2. java.lang.ClassNotFoundException:(新建的servlet无法找到class文件)的报错

    该问题有可能是IDEA的部署没有更新的问题 将out中的 删除,然后重新导入即可

  3. 分支结构之二:switch-case

    1.格式 switch(表达式){case 常量1: 执行语句1; //break; case 常量2: 执行语句2; //break; ... default: 执行语句n; //break; } ...

  4. 你的哪些骚操作会导致Segmentation Fault😂

    你的哪些骚操作会导致Segmentation Fault 前言 如果你是一个写过一些C程序的同学,那么很大可能你会遇到魔幻的segmentation fault,可能一时间抓耳挠腮,本篇文章主要介绍一 ...

  5. element-ui select可搜索下拉框无法在IOS或Ipad调起小键盘输入法

    参考:https://segmentfault.com/q/1010000021748033 原因:常规select是可以调起小键盘的.但是element-ui的select其实是input.并且这个 ...

  6. PHP cURL抓取网上图片

    cURL的底层是由一个命令行工具实现的,用于获取远程文件或传输文件,更多的情况是用来模拟get/post表单提交.也可以用户文件上传,爬取文件,支持FTP/FTPS,HTTP/HTTPS等协议,通俗来 ...

  7. 京东云开发者|ElasticSearch降本增效常见的方法

    Elasticsearch在db_ranking 的排名又(双叒叕)上升了一位,如图1-1所示;由此可见es在存储领域已经蔚然成风且占有非常重要的地位. 随着Elasticsearch越来越受欢迎,企 ...

  8. Android10 dex2oat实践

    最近看到一篇博客:Android性能优化之Android 10+ dex2oat实践,对这个优化很感兴趣,打算研究研究能否接入到项目中.不过该博客只讲述了思路,没有给完整源码.本项目参考该博客的思路, ...

  9. JS 学习笔记(一)常用的字符串去重方法

    要求:从输入框中输入一串字符,按回车后输出去重后的字符串 方法一: <body> <input type="text" id="input" ...

  10. 修改服务器ssh端口

    最近,访问公司虚拟机都需要通过堡垒机才能访问了,觉得麻烦.要想不受该规则限制,也有办法,可以通过修改虚拟机ssh端口解决. 下面做个介绍. 1. 通过堡垒机登录虚拟机 2. 修改虚拟机ssh端口 编辑 ...