物联网通信架构总结

本文从宏观上介绍IoT的通信架构,让大家都日渐频繁的物联网设备工作原理有一个初步的理解,主要分为了直连、网关、云三种模式。

1. 直连模式(direct integration pattern)

通常我们使用的小米手环等物联网设备,和手机就是直连模式,但其使用的是蓝牙,并不能提供通用的接口来访问;解决这一问题的方法是使用已经成熟多年的Web技术,所以也有人提出了Web of Things的概念。

如果设备支持HTTP和TCP/IP,并且能够直接连接互联网,比如使用Wi-Fi,那么可以使用这种直连模式。通常设备需要较为强大的处理能力,并且有持续的电源,比如智能家居等。要通过Web直接控制设备,其自身需要实现类似下图的功能,从硬件控制、RESTFUL API的设计到HTTP服务器的实现。

2. 网关模式 (gateway integration pattern)

如果设备的资源受限,或者不能直接接入互联网(比如仅仅支持蓝牙、ZigBee),它们可以通过接入功能强大的网关(gateway)来实现通过Web访问;网关将其他类型的协议转换成统一的对外接口(如将设备的CoAP转换为HTTP提供给用户),同时还可以提供安全认证、集成、临时数据存储、对设备的语义描述等功能。开源的网关项目有Open Hab [2],此外很多大厂商也有自己的网关来支持自己的设备。

3. 云模式 (cloud integration pattern)

云模式可以看做网关模式的扩展,只不过网关在云端,提供协议的转换、数据处理等云服务,最大的特点在于可以通过外网访问各种设备。目前已经出现了各种提供物联网云服务的平台,如AWS、阿里、微软等巨头,还有专门的平台如Xively、机智云等,百家争鸣,但是他们大都采用类似下图的结构,通过MQTT协议来管理各种设备,云端有虚拟设备来保存设备状态,存储管理设备产生的数据,使用秘密的API KEY通过REST API来发送管理指令等。

4. 总结

通过云的模式往往使指令传输很慢,所以一个物联网设备可能同时允许上述几种操作模式。使用Web来控制设备,还可以轻松的使用IFTTT这样的第三方自动化平台,来设计条件自动化的执行一些功能,并于常用App如Twitter互动。最后,盗几张书中对协议介绍的图,来方便理解物联网中涉及的各种协议,如蓝牙、MQTT、ZigBee、Apple Homekit等。

原文链接:https://www.cnblogs.com/ascii0x03/p/7562498.html

转发

原文发布于微信公众号 - 人人都是极客(rrgeek)

原文发表时间:2018-08-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Linyb极客之路

初识分布式架构

集群 小饭店原来只有一个厨师,切菜洗菜备料炒菜全干。后来客人多了,厨房一个厨师忙不过来,又请了个厨师,两个厨师都能炒一样的菜,这两个厨师的关系是集群。

1081
来自专栏JAVA高级架构

深入浅出 RPC - 浅出篇

近几年的项目中,服务化和微服务化渐渐成为中大型分布式系统架构的主流方式,而 RPC 在其中扮演着关键的作用。在平时的日常开发中我们都在隐式或显式的使用 RPC,...

1313
来自专栏程序员宝库

两年 PHP程序员 聊下架构

前言 2016年很有幸参与了公司内部系统架构3.0的升级,我们把公司的业务进行了四大板块的拆分,分别是应用服务、内容服务、电商服务、支付服务。其他和业务无关的功...

55613
来自专栏黑白安全

苹果公布 macOS Mojave 即将更新的隐私和安全保护特性详情

在WWDC期间,苹果在面向开发者的主题日活动Platforms State of the Union Event中,公布了更多关于将在 macOS Mojave...

1154
来自专栏web前端教室

vue的火热不是没有道理的,确实容易上手 &&电商作业检查 -- 王x

今天给同学们讲解了vue.js的相关入门知识,主要集中在模板语法、条件、循环、计算、样式还有事件处理等相关知识,以及它的双向绑定。 用的时候没什么感觉,但在讲的...

2415
来自专栏顾宇的研习笔记

Serverless 微服务架构案例无服务器架构 (Serverless Architectures) 简介 AWS Lambda 的编程模型Amazon API Gateway + AWS Lamb

Serverless 架构最早可以追溯到 Ken Fromm 发表的文章《Why The Future Of Software And Apps Is Serv...

2291
来自专栏Linux Python 加油站

Python自动化测试框架有哪些?

来源:马哥教育链接:https://mp.weixin.qq.com/s/PvlaRmPmGc5b1XIMqMMslA令开发者万分高兴的是,开发自己的测试框架的...

1694
来自专栏13blog.site

大型网站技术架构(四)--核心架构要素

2958
来自专栏程序员的知识天地

Python自动化测试框架不知道有哪些?我都给你收集好了

随着技术的进步和自动化技术的出现,市面上出现了一些自动化测试框架,你可以使用这些框架,在调整特定测试适用性和效率参数后,测试你项目的任何模块。这节省了时间,而且...

1334
来自专栏云计算D1net

云端虚拟机故障切换遭遇的重重挑战

故障切换到远程站点是一项成熟的技术,云存储也是一项成熟的技术。但是如果用户们在遇到故障后想把虚拟环境切换到云端,他们就面临独特的挑战。 虽然这两个过程都用到复制...

3278

扫码关注云+社区

领取腾讯云代金券