最近研究了一些物联网平台技术资料,以做选型参考。脑子里积累大量信息,便想写出来做一些普及。作为科普文章,力争通俗易懂,不确保概念严谨性。我会给考据癖者提供相关英文链接,以便深入研究。
―― 冯立超 HiwebFrank
3. 连 接
从物理连接的角度,有大量的底层技术,包括网线、WiFi、GPRS、3G / 4G / 4.5G、Bluetooth、Zigbee、RFID 以及正吵的 NB-IoT、LiTRA 等等,此不赘述。
对于协议,一般都主流支持 MQTT, HTTP, WebSockets。具体细节可点击:
MQTT ;
由于物联网各种设备所处环境复杂,如室内、井下、隧道、甚至月球火星,很难保证链接的可靠性和持续性。这对应用系统的开发和使用带来挑战,于是,大家想出来一个办法(我估计是亚马逊先想出来的,因为我喜欢亚马逊方案的完备性和文档的完整易读性(什么逻辑)),就是在云平台上把设备最新的状态数据缓存起来,设备和缓存交互,而应用程序只和这个缓存的数据打交道。这样,应用程序就可以假设设备是永远在线的了。
这个缓存数据,其实就是一个JSON文件,而亚马逊给其取了一个好听的名字:设备影子 Device Shadow;
微软嘛,好吧,你叫 Shadow,我就另想一个名字吧,嗯――,设备孪生 Device twins ,(亏你想的出来)
IBM西装革履职业一些,老老实实,就叫 设备最后事件缓存 Device last event cache 。
这是一个很好的思路,这个影子孪生缓存设备,可以使应用系统更加高效、设置比设备更多的元数据及属性、预置设备状态、处理长时间工作流业务等等。
对于物联网设备连接到云端,需要解决很多问题,包括设备到云/云到设备的通信,如消息传送、文件传输、请求响应方法;消息路由;设备元数据存储检索及设备状态信息同步;通信安全与访问控制;设备连接性监控及设备标识管理等等。各家都有自己的解决方案。
微软比较清晰地提出一个专门的服务:IoT Hub,对海量物联网设备与云端解决放案之间提供可靠、安全的双向通信。
微软给出的 IoT Hub 概念示意图如下,供参考:
下一讲,我们谈谈平台。
本文出自 “Hiweb Cloud BigData IoT” 博客,请务必保留此出处http://hiweb.blog.51cto.com/3355462/1922572