首页 / 专利库 / 电信 / 即时通信 / 边缘计算网关安全通信方法、系统、终端设备及服务器

边缘计算网关安全通信方法、系统、终端设备及服务器

阅读:30发布:2020-05-13

专利汇可以提供边缘计算网关安全通信方法、系统、终端设备及服务器专利检索,专利查询,专利分析的服务。并且本 申请 属于 物联网 技术领域,尤其涉及一种边缘计算网关安全通信方法、系统、终端设备及 服务器 。所述方法按照预设的结构化设计对数据进行结构化处理,通过预设的各种 接口 生成和解析结构化数据;构建边缘计算网关与服务器之间的安全网络通道,对数据进行鉴权和加解密处理;对MQTT接口进行优化,并将优化后的MQTT接口作为边缘计算网关与服务器之间的 通信接口 ;基于预设的轻量文本通信协议进行边缘计算网关与服务器之间的 即时通信 ;利用通信系统进行资源监测调度,根据边缘计算网关的计算能 力 对 传感器 原始数据进行处理;通过自动读取外部文件来进行设备程序模 块 切换,以及设备参数和通信参数配置,为智慧交通场景的信息交互提供安全实时可靠的服务保证。,下面是边缘计算网关安全通信方法、系统、终端设备及服务器专利的具体信息内容。

1.一种边缘计算网关安全通信方法,其特征在于,包括:
按照预设的结构化设计对数据进行结构化处理,通过预设的各种接口生成和解析结构化数据;
构建边缘计算网关与服务器之间的安全网络通道,对数据进行鉴权和加解密处理;
对MQTT接口进行优化,并将优化后的MQTT接口作为边缘计算网关与服务器之间的通信接口
基于预设的轻量文本通信协议进行边缘计算网关与服务器之间的即时通信
利用通信系统进行资源监测调度,根据边缘计算网关的计算能传感器原始数据进行处理;
通过自动读取外部文件来进行设备程序模切换,以及设备参数和通信参数配置。
2.根据权利要求1所述的边缘计算网关安全通信方法,其特征在于,所述按照预设的结构化设计对数据进行结构化处理,通过预设的各种接口生成和解析结构化数据包括:
输入各种原始的数据元素;
使用JSON函数连接所述数据元素构成字符串;
判断所述字符串是否合法;
若所述字符串合法,则输出结构化数据。
3.根据权利要求2所述的边缘计算网关安全通信方法,其特征在于,所述按照预设的结构化设计对数据进行结构化处理,通过预设的各种接口生成和解析结构化数据还包括:
输入接收数据;
判断所述接收数据是否为合法的JSON字符串;
若所述接收数据为合法的JSON字符串,则从所述JSON字符串中提取各种数据元素;
根据头元素判断所述接收数据是否归属当前设备;
若所述接收数据归属当前设备,则执行接收指令。
4.根据权利要求1所述的边缘计算网关安全通信方法,其特征在于,所述构建边缘计算网关与服务器之间的安全网络通道,对数据进行鉴权和加解密处理包括:
边缘计算网关使用服务器提供的用户名和密码,向服务器请求登录;
服务器在验证通过后,生成随机的字符串标签,并将所述字符串标签发送至边缘计算网关;
开始交互数据,发送方,边缘计算网关或服务器每次发送数据,使用SM2算法加密密文,在密文头部添加标签FLAG;
接收方,边缘计算网关或服务器,首先判断头部标签是否正确,正确则接收,开始SM2解密密文,不正确则丢弃。
5.根据权利要求1所述的边缘计算网关安全通信方法,其特征在于,所述利用通信系统进行资源监测调度,根据边缘计算网关的计算能力对传感器原始数据进行处理包括:
确定第一能力等级和第二能力等级,所述第一能力等级为边缘计算网关当前的计算能力等级,所述第二能力等级为处理传感器原始数据所需的计算能力等级;
若所述第一能力等级大于或等于所述第二能力等级,则由边缘计算网关对传感器原始数据进行处理;
若所述第一能力等级小于所述第二能力等级,则边缘计算网关将传感器原始数据发送至服务器,由服务器对传感器原始数据进行处理,并将处理结果发送至边缘计算网关。
6.一种边缘计算网关安全通信系统,其特征在于,包括:
数据结构化模块,用于按照预设的结构化设计对数据进行结构化处理,通过预设的各种接口生成和解析结构化数据;
数据安全处理模块,用于构建边缘计算网关与服务器之间的安全网络通道,对数据进行鉴权和加解密处理;
接口优化模块,用于对MQTT接口进行优化,并将优化后的MQTT接口作为边缘计算网关与服务器之间的通信接口;
协议通信模块,用于基于预设的轻量文本通信协议进行边缘计算网关与服务器之间的即时通信;
资源调度模块,用于利用通信系统进行资源监测调度,根据边缘计算网关的计算能力对传感器原始数据进行处理;
自动配置模块,用于通过自动读取外部文件来进行设备程序模块切换,以及设备参数和通信参数配置。
7.根据权利要求6所述的边缘计算网关安全通信系统,其特征在于,所述数据安全处理模块包括:
登录请求单元,用于使用服务器提供的用户名和密码,向服务器请求登录;
字符串标签生成单元,用于生成随机的字符串标签,并将所述字符串标签发送至边缘计算网关;
字符串标签添加单元,用于在数据头部添加所述字符串标签,并将数据发送至服务器;
数据鉴权单元,用于在接收到密文数据后,判断密文数据头部的所述字符串标签是否正确,若正确,则接收密文数据,若不正确,则丢弃密文数据;
数据加密单元,用于在数据鉴权单元之后,交互双方即边缘计算网关与服务器,在发送时,使用SM2对数据加密成密文数据,在接收时,使用SM2对密文数据解密成明文数据。
8.根据权利要求6所述的边缘计算网关安全通信系统,其特征在于,所述资源调度模块包括:
能力等级确定单元,用于确定第一能力等级和第二能力等级;
第一处理单元,用于若所述第一能力等级大于或等于所述第二能力等级,则对传感器原始数据进行处理;
第二处理单元,用于若所述第一能力等级小于所述第二能力等级,则将传感器原始数据发送至服务器。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5中任一项所述的边缘计算网关的功能。
10.一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5中任一项所述的服务器的功能。

说明书全文

边缘计算网关安全通信方法、系统、终端设备及服务器

技术领域

[0001] 本申请属于物联网技术领域,尤其涉及一种边缘计算网关安全通信方法、系统、终端设备及服务器。

背景技术

[0002] 随着技术的发展,智慧道路的建设逐渐从概念走向现实,在其具体应用中,普遍使用边缘计算技术,通过边缘计算网关在靠近数据源的一侧进行本地计算分析,从而获得更高的计算实时性。但在现有技术中,边缘计算网关与后台的服务器之间一般仍是使用传统的通信方法,存在较低的交互效率和较高的安全隐患的问题。发明内容
[0003] 有鉴于此,本申请实施例提供了一种边缘计算网关安全通信方法、系统、终端设备及服务器,以解决现有的边缘计算网关通信方法存在较低的交互效率和较高的安全隐患的问题。
[0004] 本申请实施例的第一方面提供了一种边缘计算网关安全通信方法,可以包括:按照预设的结构化设计对数据进行结构化处理,通过预设的各种接口生成和解析结构化数据;
构建边缘计算网关与服务器之间的安全网络通道,对数据进行鉴权和加解密处理;
对MQTT接口进行优化,并将优化后的MQTT接口作为边缘计算网关与服务器之间的通信接口
基于预设的轻量文本通信协议进行边缘计算网关与服务器之间的即时通信
利用通信系统进行资源监测调度,根据边缘计算网关的计算能传感器原始数据进行处理;
通过自动读取外部文件来进行设备程序模切换,以及设备参数和通信参数配置。
[0005] 本申请实施例的第二方面提供了一种边缘计算网关安全通信系统,可以包括:数据结构化模块,用于按照预设的结构化设计对数据进行结构化处理,通过预设的各种接口生成和解析结构化数据;
数据安全处理模块,用于构建边缘计算网关与服务器之间的安全网络通道,对数据进行鉴权和加解密处理;
接口优化模块,用于对MQTT接口进行优化,并将优化后的MQTT接口作为边缘计算网关与服务器之间的通信接口;
协议通信模块,用于基于预设的轻量文本通信协议进行边缘计算网关与服务器之间的即时通信;
资源调度模块,用于利用通信系统进行资源监测调度,根据边缘计算网关的计算能力对传感器原始数据进行处理;
自动配置模块,用于通过自动读取外部文件来进行设备程序模块切换,以及设备参数和通信参数配置。
[0006] 本申请实施例的第三方面提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一种边缘计算网关的功能。
[0007] 本申请实施例的第四方面提供了一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一种服务器的功能。
[0008] 本申请实施例与现有技术相比存在的有益效果是:本申请实施例按照预设的结构化设计对数据进行结构化处理,通过预设的各种接口生成和解析结构化数据;构建边缘计算网关与服务器之间的安全网络通道,对数据进行鉴权和加解密处理;对MQTT接口进行优化,并将优化后的MQTT接口作为边缘计算网关与服务器之间的通信接口;基于预设的轻量文本通信协议进行边缘计算网关与服务器之间的即时通信;利用通信系统进行资源监测调度,根据边缘计算网关的计算能力对传感器原始数据进行处理;通过自动读取外部文件来进行设备程序模块切换,以及设备参数和通信参数配置。具有数据结构化、通信安全、通信低开销、资源自动调度和服务快速配置的优点。在智慧道路的建设中,这种通信方式可以对智慧设备的各种数据进行快速安全的传输,为智慧交通设备与平台之间的信息交互提供安全实时可靠的服务。附图说明
[0009] 为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0010] 图1为本申请实施例提供的一种边缘计算网关安全通信系统的总体架构图;图2为生成结构化数据的流程示意图;
图3为解析结构化数据的流程示意图;
图4为加密算法的流程示意图;
图5为解密算法的流程示意图;
图6为MQTT协议通信的示意图;
图7为优化设计的MQTT通信流程的示意图;
图8为各种类型的API数据接口的示意图;
图9为本申请实施例中一种边缘计算网关安全通信系统的一个实施例结构图;
图10为本申请实施例中一种终端设备或服务器的示意框图

具体实施方式

[0011] 为使得本申请的发明目的、特征、优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本申请一部分实施例,而非全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
[0012] 应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
[0013] 还应当理解,在本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
[0014] 还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
[0015] 如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0016] 另外,在本申请的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0017] 图1所示为本申请实施例提供的一种边缘计算网关安全通信系统的总体架构图,与现有技术相比,其所使用的安全通信方法可以包括以下技术内容:一、按照预设的结构化设计对数据进行结构化处理,通过预设的各种接口生成和解析结构化数据。
[0018] 在本申请实施例中,数据可以采用JSON这一文本化的字符串格式,为了能够达到很好的读取解析效果,使用者需要对字符串所代表的数据进行协商。
[0019] 以下所示为以16进制0X00进行传输的一个数据实例(心跳):包头:0xAA(字节数为1);
灯杆ID:10000001(字节数为13);
长度:0x02(字节数为1);
类型:0x00(字节数为1);
数据:0x01 0x02(字节数为2);
校验值:0x06(字节数为1);
包尾:0xBB(字节数为1)。
[0020] 若对其进行结构化处理,以JSON格式文本“string”进行传输,则其数据结构为:{"ID":"10000001", "type":"0", "data":{ "Keepalive":"keepalive"}}
对比上述两种数据结构,不难看出经过MQTT+JSON处理的数据层次结构更为简洁和清晰,易于双方进行数据的解析识别,也可以通过数据元素“ID”判断是否是该设备的数据,从而有效提高了信息交互的效率。
[0021] 图2所示为生成结构化数据的流程示意图。由图中可见,生成结构化数据可以包括以下步骤:输入各种原始的数据元素;使用JSON函数连接所述数据元素构成字符串;判断所述字符串是否合法;若所述字符串不合法,则返回执行所述使用JSON函数连接所述数据元素构成字符串的步骤,直至所述字符串合法为止;若所述字符串合法,则输出结构化数据(也即所述字符串)。
[0022] 图3所示为解析结构化数据的流程示意图。由图中可见,解析结构化数据可以包括以下步骤:输入接收数据;判断所述接收数据是否为合法的JSON字符串;若所述接收数据不是合法的JSON字符串,则丢弃所述接收数据;若所述接收数据为合法的JSON字符串,则从所述JSON字符串中提取各种数据元素;根据头元素判断所述接收数据是否归属当前设备;若所述接收数据归属当前设备,则执行接收指令;若所述接收数据不归属当前设备,则丢弃所述接收数据。
[0023] 通过这样的方式,为边缘计算网关设计了一种用于发送与接收解析判别结构化数据的交互创新方案,可以提供给其他设备参考。其中在基本接口上,增加了自行设计的判断字符串的合法性接口。利用这一方案流程,可以对网关设备数据进行结构化输出,以及对接收的数据进行合法解析和判别。
[0024] 二、构建边缘计算网关与服务器之间的安全网络通道,对数据进行鉴权和加解密处理。
[0025] 边缘计算网关与服务器之间的数据鉴权可以包括以下步骤:边缘计算网关使用服务器提供的用户名和密码,向服务器请求登录;服务器在验证通过后,生成随机的字符串标签(即FLAG),并将所述字符串标签发送至边缘计算网关;边缘计算网关和服务器开始交互数据,发送方即边缘计算网关或服务器,每次发送数据,使用SM2算法加密得到密文数据,在密文数据头部添加标签FLAG;接收方,即边缘计算网关或服务器,接收到数据,首先判断头部标签是否正确,正确则接收,开始SM2解密密文数据,不正确则丢弃密文数据。
[0026] 在本申请实施例中,优选采用非对称密码算法对数据进行加解密处理。非对称密码算法需要两个密钥:公开密钥和私有密钥。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密,加密强度高,保障了数据安全,适合边缘计算网关与服务器之间加密传输数据。
[0027] 心跳原始传输数据为:{"ID":"10000001", "type":"0", "data":{ "Keepalive":"keepalive"}}
本申请实施例中所采用非对称密码算法所使用的基础参数和主要函数可以包括:
曲线方程:y2=x3+ax+b;
私钥(PrivateKey)长度:32字节;
公钥(PubKey)长度:64字节;
加密内容:比明文多96字节;
解密内容:比密文少96字节;
密钥派生函数(KDF):用于密钥对生成,产生一对公私钥;
杂凑函数(hash函数):用于签名验签,产生杂凑值;
加密函数(encrypt函数):用于加密输出密文;
解密函数(decrypt函数):用于解密输出明文。
[0028] 在需要加密时,使用接收方公钥加密,公钥由一个曲线坐标点组成,在X.509证书中的共钥表示为04标记开始的2个32byte的BigInteger,即曲线点P(x,y)。本申请实施例中的公钥加密算法比RSA相对复杂,加密结果由3个部分组成,且在加密过程中使用了随机数,因此同样的明文数据每一次加密结果都不一样。
[0029] 如图4所示,加密算法流程可以包括如下步骤:1、产生随机数k,k的值从1到n-1;
2、计算椭圆曲线点C1=[k]G=(x1,y1),其中,G代表椭圆曲线的一个基点,其阶为素数,k为整数,[k]G表示k倍点,(x1,y1)表示所计算出的椭圆曲线点C1的坐标;
3、验证公钥PB,计算S=[h] PB;
判断S是否为无穷远点(O),若S是无穷远点,则报错并退出,若S不是无穷远点,则继续执行后续步骤;
4、计算(x2,y2)=[k] PB;
5、计算t=KDF(x2||y2, klen),其中,KDF是密钥派生函数,“||”表示将前后两数拼接,klen是明文长度;
判断t是否为全0,若t为全0,则返回步骤1,若t不为全0,则继续执行后续步骤;
6、计算C2=M^t,其中,M为明文消息,^为异或符号;
7、计算C3=Hash(x2||M||y2),其中,Hash表示哈希函数;
8、输出密文C=C1||C3||C2,C1和C3的长度是固定的,C1是64字节,C3是32字节,很方便从C中提取C1,C3和C2。
[0030] 如图5所示,解密算法流程可以包括如下步骤:1、从密文比特串C=C1||C3||C2中取出C1,将C1转换成椭圆曲线上的点;
验证C1是否满足曲线方程,若不满足,则报错并退出,若满足,则继续执行后续步骤;
2、计算S=[h] C1;
判断S是否为无穷远点,若S是无穷远点,则报错并退出,若S不是无穷远点,则继续执行后续步骤;
3、计算(x2,y2)=[dB] C1;
4、计算t=KDF(x2||y2, klen);
判断t是否为全0,若t为全0,则报错并退出,若t不为全0,则继续执行后续步骤;
5、从C=C1||C3||C2中取出C2,计算M’= C2^t;
6、计算u=Hash(x2||M’||y2);
判断u是否与C3相等,若不相等,则报错并退出,若相等,则继续执行后续步骤;
7、输出明文M’。
[0031] 上述的鉴权方式与加密算法进行结合使用,可以极大提高数据交互的安全性。
[0032] 三、对MQTT接口进行优化,并将优化后的MQTT接口作为边缘计算网关与服务器之间的通信接口。
[0033] MQTT,是一种基于发布/订阅(Publish/Subscribe)模式的轻量级通信协议。MQTT最大的优点在于可以以极少的代码和有限的带宽,能在不稳定的网络环境中,为远程设备提供实时可靠的消息服务。将其应用于边缘计算网关的物联网通信,能实现网络资源的低开销和低占用,并保障物联网通信的实时有效。
[0034] 如图6所示,实现MQTT协议需要客户端和服务器端通信完成,在通信过程中,MQTT协议中有三种身份:发布者(Publish)、代理(Broker)(服务器)、订阅者(Subscribe)。其中,消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。MQTT传输的消息分为:主题(Topic)和负载(payload)两部分:
(1)Topic,可以理解为消息的类型,订阅者订阅(Subscribe)后,就会收到该主题的消息内容(payload);
(2)payload,可以理解为消息的内容,是指订阅者具体要使用的内容。
[0035] 在MQTT协议中有三种消息发布服务质量(QoS):QoS=0:“至多一次”,消息发布完全依赖底层 TCP/IP 网络,因此可能会发生消息丢失或重复。这一级别可用于如下情况:环境传感器数据即使丢失一次也并无影响,因为不久后还会有第二次发送;
QoS=1:“至少一次”,确保消息到达,但消息重复可能会发生;
QoS=2:“只有一次”,确保消息到达一次。这一级别可用于如下情况:在计费系统中,消息重复或丢失会导致不正确的结果。
[0036] 一般MQTT的创建过程还是比较繁琐的,基础接口较多,而且需要配置各种参数。所以,为了方便操作和适用设备,要对现有的MQTT接口进行二次开发设计和改进,在本申请实施例中,提供了如图7所示的优化设计的MQTT通信流程:第1步:初始化设置参数,对应接口为int Setconfig( );
第2步:创建MQTT通信实例,对应接口为struct mosquitto * CreateMosq( );
第3步:设置用户和密码,对应接口为int UserPasswordset( );
第4步:请求连接,对应接口为int Connect( );
第5步:发布信息,对应接口为int Pub();订阅信息,对应接口为int Sub();
第6步:关闭连接,对应接口为void Close()。
[0037] 关于Setconfig:在本申请实施例中,针对晦涩难懂的参数以及复杂的配置过程,自行设计了具有自动读取并配置MQTT参数和初始化功能的接口,即int Setconfig( ),使用者只需要修改外部TXT文件中的简单参数,即可与不同服务器创建不同的即时通信。
[0038] 关于Pub和Sub:一般MQTT发送和接收由多个函数构成,而在本申请实施例中,进行了二次封装设计,直接将发送与接收各自设计为单独的一个接口,即int Pub()和int Sub(),适合插入系统程序,实现系统程序的低耦合性。
[0039] 关于Close:一般在断开连接的时候,需要清除各种配置参数和释放空间资源,这个过程也是比较繁琐的,在本申请实施例中,特地设计该接口来清除所有配置参数和释放占用的空间资源。
[0040] 通过使用这些优化的接口,简化了通信流程,也起到了方便后期操作修改和快速创建不同临时通信的作用。以客户端1为例,通过这种通信流程,就可以与服务器之间建立通信,在服务器上通过主题(topic)发布自己的信息,订阅其他客户端2、客户端3等多个客户端的信息,这样就实现了与其他客户端之间的便捷实时通信。
[0041] 四、基于预设的轻量文本通信协议进行边缘计算网关与服务器之间的即时通信。
[0042] 经过前面的数据结构设计和MQTT通信的基础铺垫之后,交互双方协商开发交互协议,协议中的结构如下所示:主题 消息内容
Topic 灯杆ID+数据类型(type)+数据(data)
其中,消息内容主要分为:灯杆ID+数据类型+数据内容。
[0043] 数据类型和主题(发布/订阅)可以汇总为:"type":"0":心跳包
"type":"1":探针数据包
"type":"2":视频数据包
"type":"3":环境数据包
"type":"4":光照强度数据包
"type":"5":紧急呼叫包
"type":"6":行人识别、人流量检测、车流量检测包
"type":"7":道路险情识别包
"type":"8":LED灯光等级调节包
"type":"9":网关接收FW升级接口包
"type":"10":网关接收软硬件版本包
"type":"11":设备状态上报接口包
"type":"12":人脸特征提取与识别包
"type":"14":行人属性标签包
"type":"15":系统日志包
"type":"16":设备控制接口包
现以心跳包和探针数据包的消息内容为例说明如下:
(1)心跳包
网关发送的数据报文的一个示例为:
{"ID":"10000001", "type":"0", "data":{ "Keepalive":"keepalive"}}
其中,灯杆发送心跳数据包,接收平台应答数据,即完成一次心跳,10秒交互一个心跳包。ID为边缘网关ID号,type为消息类型,data为心跳数据。
[0044] (2)探针数据包网关发送的数据报文的一个示例为:
{"ID":"10000001",
"type":"1",
"data":{"Signal":"0","RecvBroadcastsNumber":"0","BroadcastsTime":"0","
FirstTime":"20180712101630", "Time":"20180712101630"}
}
其中,传输数据为Signal信号强度+RecvBroadcastsNumber接收到的广播次数+
BroadcastsTime平均广播时间+FirstTime第一次扫描到的时间+Time上传时间,Time为表示年月日时分秒的字符串,共14个字符,如:20180709165030。
[0045] 其它类型的消息内容与之类似,可以根据具体情况对其进行设置,本申请实施例对此不再赘述。
[0046] 如图8所示,边缘计算网关根据开发的协议设计,能实现输出和接收以下各种类型的数据API接口,用于MQTT传输:心跳包、探针数据包、视频数据包、环境数据包、光照强度数据包、SOS紧急呼叫包、行人识别、人流量检测、车流量检测包、道路险情识别包、LED灯光等级调节包、网关接收FW升级接口包、网关接收软硬件版本包、设备状态上报接口包、人脸特征提取与识别包、行人属性标签包、系统日志包和设备控制接口包。
[0047] 五、利用通信系统进行资源监测调度,根据边缘计算网关的计算能力对传感器原始数据进行处理。
[0048] 在本申请实施例中,可以利用构建的通信系统,实现一种对计算资源监测和调度的机制,保障设备有效运行。
[0049] 首先,确定第一能力等级和第二能力等级,所述第一能力等级为边缘计算网关当前的计算能力等级(将其记为N),所述第二能力等级为处理传感器原始数据所需的计算能力等级(将其记为M)。
[0050] 若所述第一能力等级大于或等于所述第二能力等级,则由边缘计算网关对传感器原始数据进行处理;若所述第一能力等级小于所述第二能力等级,则边缘计算网关将传感器原始数据发送至服务器,由服务器对传感器原始数据进行处理,并将处理结果发送至边缘计算网关。
[0051] 在本申请实施例的一种具体实现中,可以将计算能力等级按照由低到高的顺序依次划分为9个等级,依次记为等级1、等级2、…、等级9。在对所述第二能力等级进行评估时,可以根据数据类别和计算数据所需的内存空间计算出等级M,以图像为例,图像所需存储空间=分辨率*占用位数(即常说的16或32位色)/8,或图像所需存储空间=分辨率*颜色信息占用的字节数。图像所需存储空间越大,则M值越大,反之,图像所需存储空间越小,则M值越小。在对所述第一能力等级进行评估时,可以根据边缘计算网关当前的内存空间计算出等级N,内存空间越大,则N值越大,内存空间越小,则N值越小。
[0052] 六、通过自动读取外部文件来进行设备程序模块切换,以及设备参数和通信参数配置。
[0053] 在边缘计算中,用户和终端设备的动态性的改变或增加,都会给系统的配置带来繁琐的工作。在一般的边缘计算系统中,一旦外接设备和通信的各种参数改变,就需要对系统内部进行重新调整和配置,就比如设备的更换和IP地址的改变,都需要对系统内部进行调整。针对这种繁杂的工作量,在本申请实施例中,可以使通过自动读取外部文件来切换设备程序模块、配置设备参数和通信参数,支持服务的快速配置。
[0054] 所需的条件包括:外部文件(一般为TXT文件)、可读取文件提取参数的程序接口、不同终端设备和服务的程序模块。在具体运行时,首先修改外部文件填写核心参数,然后根据参数切换内部程序模块,最后往程序模块输入读取的内部参数。
[0055] 其中,程序接口在进行读取文件参数时,首先读取标题[MQTT],然后读取关键行“=”左侧字符,若符合则返回右侧字符,内部程序切换可以根据读取的参数切换程序模块。
[0056] 综上所述,本申请实施例按照预设的结构化设计对数据进行结构化处理,通过预设的各种接口生成和解析结构化数据;构建边缘计算网关与服务器之间的安全网络通道,对数据进行鉴权和加解密处理;对MQTT接口进行优化,并将优化后的MQTT接口作为边缘计算网关与服务器之间的通信接口;基于预设的轻量文本通信协议进行边缘计算网关与服务器之间的即时通信;利用通信系统进行资源监测调度,根据边缘计算网关的计算能力对传感器原始数据进行处理;通过自动读取外部文件来进行设备程序模块切换,以及设备参数和通信参数配置。具有数据结构化、通信安全、通信低开销、资源自动调度和服务快速配置的优点。在智慧道路的建设中,这种通信方式可以对智慧设备的各种数据进行快速安全的传输,为智慧交通设备与平台之间的信息交互提供安全实时可靠的服务。
[0057] 应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
[0058] 对应于上文实施例所述的一种边缘计算网关安全通信方法,图9示出了本申请实施例提供的一种边缘计算网关安全通信系统的一个实施例结构图。
[0059] 本实施例中,一种边缘计算网关安全通信系统可以包括:数据结构化模块901,用于按照预设的结构化设计对数据进行结构化处理,通过预设的各种接口生成和解析结构化数据;
数据安全处理模块902,用于构建边缘计算网关与服务器之间的安全网络通道,对数据进行鉴权和加解密处理;
接口优化模块903,用于对MQTT接口进行优化,并将优化后的MQTT接口作为边缘计算网关与服务器之间的通信接口;
协议通信模块904,用于基于预设的轻量文本通信协议进行边缘计算网关与服务器之间的即时通信;
资源调度模块905,用于利用通信系统进行资源监测调度,根据边缘计算网关的计算能力对传感器原始数据进行处理;
自动配置模块906,用于通过自动读取外部文件来进行设备程序模块切换,以及设备参数和通信参数配置。
[0060] 进一步地,所述数据结构化模块可以包括结构化数据生成单元,所述结构化数据生成单元用于:输入各种原始的数据元素;使用JSON函数连接所述数据元素构成字符串;判断所述字符串是否合法;若所述字符串合法,则输出结构化数据。
[0061] 进一步地,所述数据结构化模块可以包括结构化数据解析单元,所述结构化数据解析单元用于:输入接收数据;判断所述接收数据是否为合法的JSON字符串;若所述接收数据为合法的JSON字符串,则从所述JSON字符串中提取各种数据元素;根据头元素判断所述接收数据是否归属当前设备;若所述接收数据归属当前设备,则执行接收指令。
[0062] 进一步地,所述数据安全处理模块可以包括:登录请求单元,用于使用服务器提供的用户名和密码,向服务器请求登录;
字符串标签生成单元,用于生成随机的字符串标签,并将所述字符串标签发送至边缘计算网关;
字符串标签添加单元,用于在数据头部添加所述字符串标签,并将数据发送至服务器;
数据鉴权单元,用于在接收到密文数据后,判断密文数据头部的所述字符串标签是否正确,若正确,则接收密文数据,若不正确,则丢弃密文数据;
数据加密单元,用于在数据鉴权单元之后,交互双方即边缘计算网关与服务器,在发送时,使用SM2对数据加密成密文数据。在接收时,使用SM2对密文数据解密成明文数据。
[0063] 进一步地,所述资源调度模块可以包括:能力等级确定单元,用于确定第一能力等级和第二能力等级,所述第一能力等级为边缘计算网关当前的计算能力等级,所述第二能力等级为处理传感器原始数据所需的计算能力等级;
第一处理单元,用于若所述第一能力等级大于或等于所述第二能力等级,则对传感器原始数据进行处理;
第二处理单元,用于若所述第一能力等级小于所述第二能力等级,则将传感器原始数据发送至服务器。
[0064] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置,模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0065] 在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0066] 图10示出了本申请实施例提供的一种终端设备的示意框图,如图10所示,该实施例的终端设备10包括:处理器100、存储器101以及存储在所述存储器101中并可在所述处理器100上运行的计算机程序102。所述处理器100执行所述计算机程序102时实现上述任一种边缘计算网关的功能。
[0067] 类似地,图10也可以为本申请实施例提供的一种服务器的示意框图,该实施例的服务器10包括:处理器100、存储器101以及存储在所述存储器101中并可在所述处理器100上运行的计算机程序102。所述处理器100执行所述计算机程序102时实现上述任一种服务器的功能。
[0068] 示例性的,所述计算机程序102可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器101中,并由所述处理器100执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序102在所述终端设备10中的执行过程。
[0069] 本领域技术人员可以理解,图10仅仅是终端设备10的示例,并不构成对终端设备10的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备10还可以包括输入输出设备、网络接入设备、总线等。
[0070] 所述处理器100可以是中央处理单元(Central Processing Unit,CPU),还可以是其它通用处理器、数字信号处理器  (Digital Signal Processor,DSP)、专用集成电路 (Application Specific Integrated Circuit,ASIC)、现场可编程阵列(Field-Programmable Gate Array,FPGA) 或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0071] 所述存储器101可以是所述终端设备10的内部存储单元,例如终端设备10的硬盘或内存。所述存储器101也可以是所述终端设备10的外部存储设备,例如所述终端设备10上配备的插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器101还可以既包括所述终端设备10的内部存储单元也包括外部存储设备。所述存储器101用于存储所述计算机程序以及所述终端设备10所需的其它程序和数据。所述存储器101还可以用于暂时地存储已经输出或者将要输出的数据。
[0072] 所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0073] 在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0074] 本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
[0075] 在本申请所提供的实施例中,应该理解到,所揭露的服务器/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的服务器/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0076] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0077] 另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0078] 所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的全部或部分步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
[0079] 以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈