Wi-Fi、蓝牙、ZigBee等多类型无线连接方式的安全物联网网关设计

本文主要是介绍Wi-Fi、蓝牙、ZigBee等多类型无线连接方式的安全物联网网关设计,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

随着物联网和云计算技术的飞速发展.物联网终端的数量越来越多,终端的连接方式也更趋多样化,比如 Wi-Fi蓝牙和 ZigBee 等。现有的物联网网关大多仅支持一种或者几种终端的接人方式。无法满足终端异构性的需求。同时,现有的物联网网关与终端设备之间普遍采用明文传输的模式无法满足安全需求较高的应用。

1、物联网网关系统整体设计

Wi-Fi、蓝牙、ZigBee

物联网网关系统整体结构包括物联网网关模拟Wi-Fi终端模拟蓝牙终端和模拟 ZigBee 终端.

物联网网关主要包括最小系统Wi-Fi、蓝牙模块、ZigBee模块可以同时支持 Wi-Fi 终端蓝牙终端和 ZigBee 终端的接人。Wi-Fi 终端蓝牙终端和ZigBee 终端可以分别向网关上传明态或密态数据.并且能够收到网关返回的响应。

2、物联网网关设计

2.1物联网网关功能需求分析

物联网网关设备为了满足不同类型终端的连接请求.需要能够同时支持多种类型终端的接入。另外,终端采集的某些信息需要安全地上传到物联网网关.因此网关需要同时支持明态和密态数据的接收并向终端返回响应。基于以上分析,物联网网关的功能应该包括:

(1)支持多种类型的无线接入方式。现有的短距离无线通信技术主要包括 Wi-Fi 蓝牙和ZigBee 技术。因此,为了满足终端异构性接人的需求,网关需要同时支持 Wi-Fi 蓝牙和 ZigBee等不同类型的接人请求

(2)支持明密态切换。为了满足某些终端数据安全上传的需求,终端数据需要加密后再上传到网关,网关解密后获取数据,然后向终端返回响应。

基于上述功能需求,本文设计了同时支持Wi-Fi 蓝牙和 ZigBee 终端接人的网关设备终端可以向网关发送明态数据或者经SM4 算法加密后的密文数据.网关收到数据后.向终端返回响应。

2.2网关的硬件设计

物联网网关

为了提高网关的整体性能.设计中采用了四核 Corle-A9 1.6GHz 处理器Wi-Fi 和蓝牙模块采用板载RTL8723U,通过串口外接 ZigBee 模块ZA2530-2591。

微处理器模块的主要作用是连接主板与RTL8723U 模块ZA2530-2591 模块同时进行数据处理。为了满足性价比高和方便的要求.我们采用了三星Exynos4412 四核 Corle-A9 1.6GHz处理器。Corlex-A9 处理器其有性能强功耗低等特点.同时支持灵活设计和扩展功能。

无线通信模块包括 Wi-Fi/蓝牙模块 ZigBee模块。三星Exynos4412开发板板载 RTL8723U该芯片是针对 Wi-Fi 和蓝牙技术推出的集成解决方案其内部集成了Reallek 8723BUWi-Fi模块和 Reallek 8723BU 蓝牙模块,并且预留接口可供软件设计部分直接调用。

ZigBee模块以ZA2530-259集成芯片为核心,通过串口供软件设计部分调用。该模块基于高性能、低功耗的 2.4GHZ 射频收发芯片CC2530和大功率低噪声射频前端芯片CC2591,具有易使用、全透明 稳定性强等特点能实现超低功耗超远距离超大规模的 ZigBee无线传感网络组网功能3.6V_5.0V 电源分别提供 ZigBee 模块Wi-Fi/蓝牙模块和主控模块使用。硬件看门狗模块在设定时间内复位程序使其进入正常工作状态存储器模块主要用来存储终端节点和网关之间交互的数据信息

2.3网关的软件设计

软件设计部分主要包括 Wi-Fi 终端蓝牙终端和 ZigBee 终端连接网关,终端向网关上传明态或密态数据以及网关向终端返回响应等步骤。以下将分别介绍 Wi-Fi 通信、蓝牙通信和ZigBee 通信

Wi-Fi 通信主要采用 Sockel 和TCP/IP 协议实现数据传输。TCP/IP 协议是一种可靠的网络协议,通过在通信两端各建立一个 Socket,从而在通信双方之间形成虚拟的网络链路。一旦建立了虚拟的网络链路,两端的程序就可以通过虚拟链路来进行通信。Java 语言对TCP 网络通信提供了良好的封装,可以令 Socket 对象代表两的通信端口,并通过 Sockel 产生 I/O 流进行网络通信。

出处:北京电子科技学院学报

原标题:一种支持多类型无线连接方式的安全物联网网关设计

作者:胡荣磊 陈雷 王乐背 丁安邦 何楚策

参考资料

https://www.hooketech.com/wifi-bluetooth-zigbee.html

这篇关于Wi-Fi、蓝牙、ZigBee等多类型无线连接方式的安全物联网网关设计的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/538807

相关文章

SpringBoot中@Value注入静态变量方式

《SpringBoot中@Value注入静态变量方式》SpringBoot中静态变量无法直接用@Value注入,需通过setter方法,@Value(${})从属性文件获取值,@Value(#{})用... 目录项目场景解决方案注解说明1、@Value("${}")使用示例2、@Value("#{}"php

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建

HTTP 与 SpringBoot 参数提交与接收协议方式

《HTTP与SpringBoot参数提交与接收协议方式》HTTP参数提交方式包括URL查询、表单、JSON/XML、路径变量、头部、Cookie、GraphQL、WebSocket和SSE,依据... 目录HTTP 协议支持多种参数提交方式,主要取决于请求方法(Method)和内容类型(Content-Ty

Python中Json和其他类型相互转换的实现示例

《Python中Json和其他类型相互转换的实现示例》本文介绍了在Python中使用json模块实现json数据与dict、object之间的高效转换,包括loads(),load(),dumps()... 项目中经常会用到json格式转为object对象、dict字典格式等。在此做个记录,方便后续用到该方

504 Gateway Timeout网关超时的根源及完美解决方法

《504GatewayTimeout网关超时的根源及完美解决方法》在日常开发和运维过程中,504GatewayTimeout错误是常见的网络问题之一,尤其是在使用反向代理(如Nginx)或... 目录引言为什么会出现 504 错误?1. 探索 504 Gateway Timeout 错误的根源 1.1 后端

使用shardingsphere实现mysql数据库分片方式

《使用shardingsphere实现mysql数据库分片方式》本文介绍如何使用ShardingSphere-JDBC在SpringBoot中实现MySQL水平分库,涵盖分片策略、路由算法及零侵入配置... 目录一、ShardingSphere 简介1.1 对比1.2 核心概念1.3 Sharding-Sp

Spring创建Bean的八种主要方式详解

《Spring创建Bean的八种主要方式详解》Spring(尤其是SpringBoot)提供了多种方式来让容器创建和管理Bean,@Component、@Configuration+@Bean、@En... 目录引言一、Spring 创建 Bean 的 8 种主要方式1. @Component 及其衍生注解

python中的显式声明类型参数使用方式

《python中的显式声明类型参数使用方式》文章探讨了Python3.10+版本中类型注解的使用,指出FastAPI官方示例强调显式声明参数类型,通过|操作符替代Union/Optional,可提升代... 目录背景python函数显式声明的类型汇总基本类型集合类型Optional and Union(py

MySQL中查询和展示LONGBLOB类型数据的技巧总结

《MySQL中查询和展示LONGBLOB类型数据的技巧总结》在MySQL中LONGBLOB是一种二进制大对象(BLOB)数据类型,用于存储大量的二进制数据,:本文主要介绍MySQL中查询和展示LO... 目录前言1. 查询 LONGBLOB 数据的大小2. 查询并展示 LONGBLOB 数据2.1 转换为十

Linux系统管理与进程任务管理方式

《Linux系统管理与进程任务管理方式》本文系统讲解Linux管理核心技能,涵盖引导流程、服务控制(Systemd与GRUB2)、进程管理(前台/后台运行、工具使用)、计划任务(at/cron)及常用... 目录引言一、linux系统引导过程与服务控制1.1 系统引导的五个关键阶段1.2 GRUB2的进化优