CN111427664B - 基于容器的协议解析方法、装置、系统以及存储介质 - Google Patents
基于容器的协议解析方法、装置、系统以及存储介质 Download PDFInfo
- Publication number
- CN111427664B CN111427664B CN202010217063.8A CN202010217063A CN111427664B CN 111427664 B CN111427664 B CN 111427664B CN 202010217063 A CN202010217063 A CN 202010217063A CN 111427664 B CN111427664 B CN 111427664B
- Authority
- CN
- China
- Prior art keywords
- protocol analysis
- analysis program
- edge
- container
- cloud
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004458 analytical method Methods 0.000 title claims abstract description 27
- 238000000034 method Methods 0.000 claims abstract description 70
- 238000012544 monitoring process Methods 0.000 claims description 24
- 230000006870 function Effects 0.000 claims description 7
- 238000013507 mapping Methods 0.000 claims description 6
- 230000000977 initiatory effect Effects 0.000 claims description 4
- 230000015654 memory Effects 0.000 description 16
- 238000013461 design Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 12
- 238000004590 computer program Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 238000007654 immersion Methods 0.000 description 3
- 239000000779 smoke Substances 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- RXIUMAOXORBRCY-UHFFFAOYSA-N 2-[(6-phenyl-2,3,4,9-tetrahydro-1h-carbazol-1-yl)amino]ethanol Chemical compound OCCNC1CCCC(C2=C3)=C1NC2=CC=C3C1=CC=CC=C1 RXIUMAOXORBRCY-UHFFFAOYSA-N 0.000 description 1
- 244000035744 Hura crepitans Species 0.000 description 1
- 108010015780 Viral Core Proteins Proteins 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000000306 component Substances 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
Abstract
本发明提供一种基于容器的协议解析方法、装置、系统以及存储介质,该方法,包括:边缘设备确定所需的目标协议解析程序;向云端设备发送镜像下载请求,镜像下载请求中包括请求下载的协议解析程序的标识;云端设备接收边缘设备发送的镜像下载请求;根据标识在协议解析镜像库中确定相匹配的目标协议解析程序;将目标协议解析程序发送给边缘设备。边缘设备接收云端设备发送的与标识匹配的目标协议解析程序。实现了云端设备与边缘设备解耦协议解析程序之间的联系,从而实现了工业物联网环境中海量异构数据采集的有效性和高效性,还可以使边缘设备更加灵活的设置,以适用不同的工业物联网环境,具有更加广泛的实用性。
Description
技术领域
本发明涉及物联网技术领域,尤其涉及一种基于容器的协议解析方法、装置、系统以及存储介质。
背景技术
随着云计算的快速发展,越来越多的边缘设备向企业或服务提供商核心网络提供入口点,不仅可以支持将一种网络协议转换为另一种网络协议,还可以提供运营商和服务提供网络的连通性。
然而海量异构数据源的接入为不同物联网工业环境的监控提出了巨大挑战,海量异构数据源不仅体现在众多的不同数据源类型,例如各类传感器、控制器、驱动器等,也体现在这些数据源具有众多的品牌和众多支持的通信协议。
现有技术往往只能针对特定的环境监控,设计定制化硬件,通过配置表对冗余硬件资源和固化的软件程序进行配置,然而当现有技术面对海量异构数据源对应的应用场景时,不仅需要特定的程序设计,配置工作量巨大,而且无法彻底解耦协议解析程序之间的联系,进而无法实现海量定制化需求的动态数据协议解析。
发明内容
本发明提供一种基于容器的协议解析方法、装置、系统以及存储介质,以实现云端设备与边缘设备解耦协议解析程序之间的联系,从而实现了工业物联网环境中海量异构数据采集的有效性和高效性,还可以使边缘设备更加灵活的设置,以适用不同的工业物联网环境,具有更加广泛的实用性。
第一方面,本发明实施例提供的一种基于容器的协议解析方法,包括:
云端设备接收边缘设备发送的镜像下载请求,所述镜像下载请求中包括请求镜像的协议解析程序的标识;
所述云端设备根据所述标识在协议解析镜像库中确定相匹配的目标协议解析程序;
所述云端设备将所述目标协议解析程序发送给所述边缘设备。
在一种可能的设计中,所述云端设备接收边缘设备发送的镜像下载请求之后,还包括:
所述云端设备确定发送镜像下载请求的所述边缘设备中的资源情况是否符合预设的镜像下载条件;若符合,则在所述镜像库中确定相匹配的目标协议解析程序。
在一种可能的设计中,所述边缘设备的资源包括以下至少一种:内存容量,数字输入输出模块,模拟量输入模块、模拟量输出模块,以及网络接口。
在一种可能的设计中,所述方法还包括:所述云端设备存储所述边缘设备与所述目标协议解析程序的映射关系。
在一种可能的设计中,所述方法还包括:所述云端设备监听所述镜像库中各协议解析程序是否存在更新;
若确定所述目标协议解析程序存在更新,则向所述边缘设备发起更新所述目标协议解析程序消息。
第二方面,本发明实施例提供的一种基于容器的协议解析方法,包括:
边缘设备确定所需的目标协议解析程序;
所述边缘设备箱云端设备发送镜像下载请求,所述镜像下载请求中包括请求下载的协议解析程序的标识;
所述边缘设备接收所述云端设备发送的与所述标识匹配的目标协议解析程序。
在一种可能的设计中,所述方法还包括:
所述边缘设备运行容器引擎,根据所述目标协议解析程序建立目标容器。
在一种可能的设计中,所述边缘设备确定所需目标协议解析程序之前,还包括:所述边缘设备确定本地必要内置容器和使用频率超过阈值的内置容器之外的其他容器。
在一种可能的设计中,所述方法还包括:所述边缘设备从所述云端设备镜像更新后的所述目标协议解析程序,并根据所述目标协议解析程序更新所述目标容器。
第三方面,本发明实施例提供的一种云端设备,包括:
第一接收模块,用于接收边缘设备发送的镜像下载请求,所述镜像下载请求中包括请求镜像的协议解析程序的标识;
匹配模块,用于根据所述标识在协议解析镜像库中确定相匹配的目标协议解析程序;
第一发送模块,用于将所述目标协议解析程序发送给所述边缘设备。
第四方面,本发明实施例提供的一种边缘设备,包括:
确定模块,用于确定所需的目标协议解析程序;
第二发送模块,用于向云端设备发送镜像下载请求,所述镜像下载请求中包括请求下载的协议解析程序的标识;
第二接收模块,用于接收所述云端设备发送的与所述标识匹配的目标协议解析程序。
第五方面,本发明实施例提供的一种存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序用于执行第一方面所述的方法。
第六方面,本发明实施例提供的一种存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序用于执行第二方面所述的方法。
本发明提供一种基于容器的协议解析方法、装置、系统以及存储介质,该方法,包括:边缘设备确定所需的目标协议解析程序;所述边缘设备向云端设备发送镜像下载请求,所述镜像下载请求中包括请求下载的协议解析程序的标识;云端设备接收边缘设备发送的镜像下载请求,所述镜像下载请求中包括请求镜像的协议解析程序的标识;所述云端设备根据所述标识在协议解析镜像库中确定相匹配的目标协议解析程序;所述云端设备将所述目标协议解析程序发送给所述边缘设备。所述边缘设备接收所述云端设备发送的与所述标识匹配的目标协议解析程序。实现了云端设备与边缘设备解耦协议解析程序之间的联系,从而实现了工业物联网环境中海量异构数据采集的有效性和高效性,还可以使边缘设备更加灵活的设置,以适用不同的工业物联网环境,具有更加广泛的实用性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一典型应用场景图;
图2为本发明实施例提供的一种基于容器的协议解析方法流程图一;
图3为本发明数据协议解析过程的示意图;
图4为本发明实施例提供的一种基于容器的协议解析方法流程图二;
图5为本发明实施例提供的一种基于容器的协议解析方法流程图三;
图6为本发明实施例提供的基于容器协议解析系统的组成示意图;
图7为本发明实施例提供的一种云端设备的结构示意图;
图8为本发明实施例提供的一种边缘设备的结构示意图;
图9为本发明实施例提供的一种基于容器的协议解析系统的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
下面以具体地实施例对本发明的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。
基于边云协同架构,物联网中产生大量的数据,数据都上传到云端进行处理,为分担云端设备的压力,边缘设备可以负责自己范围内的数据计算和存储工作。同时大多数的数据并不是一次性数据,有些数据经过处理仍然需要从边缘设备汇集到云端设备。因此现有技术针对特定环境监控,可以设计定制化硬件,通过配置冗余硬件资源和固化软件程序实现数据采集,然而随着工业物联网的不断发展,海量异构的数据源接入为不同的工业环境提出巨大的挑战。海量异构不仅体现在众多不同的数据源类型,例如包括各类传感器、控制器、驱动器等,也体现在数据源具有众多的品牌和众多支持的通信协议。在面对海量异构应用场景时,采用现有技术不仅带来大量的工作量来设计、配置特定的程序,而且由于没有彻底解耦协议解析程序之间的联系,使得无法实现海量定制化的动态数据协议解析。
其中,云端设备:在网络中为其它客户机(如PC机、智能手机、ATM等终端设备)提供计算或者应用服务,且具有高速的CPU运算能力、长时间的可靠运行、强大的I/O外部数据吞吐能力以及更好的扩展性。
边缘设备:向企业或服务提供商核心网络提供入口点的设备。它们例如:路由器、路由交换机、集成接入设备(IAD)、多路复用器,以及各种城域网(MAN)和广域网(WAN)接入设备,支持将一种类型的网络协议转换为另一种类型的网络协议。
容器:开源应用,可以打包对应的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux机器或Windows机器上,也可以实现虚拟化,通过本地容器引擎根据镜像生成可实际运行的容器实例,容器是完全使用沙箱机制,相互之间不会有任何接口。
协议解析为一个设备通过解码网络协议头部和尾部来获得数据及其分组内部协议压缩信息的过程。
随着工业监控环境的多样化,边缘设备的功能也越来越多样化。例如针对动环监控物联网场景、智慧能耗管控物联网场景、智慧电力监测等物联网场景,通过采集数据进行存储分析并连接至云端设备。参考图1,图1为本发明一典型应用场景图,如图1所示,云端设备可以协助多个边缘设备实现动态特征,例如边缘设备1、边缘设备2、……边缘设备x。本发明边缘设备可以根据不同的监控环境实现定制化数据采集,例如可以包括多个工作场合,每个工作场合环境具有多个传感器。边缘设备可以为云端设备分担数据压力,也可以从云端设备通过协议解析配置除必要容器和经常使用容器之外的其他容器,实现不同监控环境的定制化数据采集。在安装初期,通过云端设备设置协议解析程序配置表或者使用已有协议解析程序配置表并下发到边缘设备,边缘设备获取该配置表后向云端设备发送镜像下载请求。之后一旦云端设备有镜像更新,则将更新镜像下载到边缘设备。
图2为本发明实施例提供的一种基于容器的协议解析方法流程图一,如图2所示,本实施例中的方法可以包括:
S201、边缘设备确定所需的目标协议解析程序。
本实施例基于边云协同架构,具有一个云端设备和多个边缘设备,如图1所示,云端设备协助边缘设备实现动态特征。本发明边缘设备可以根据不同的监控环境实现定制化数据采集,例如可以包括多个工作场合,每个工作场合环境具有多个传感器等,可以根据边缘设备需求从云端设备通过协议解析配置除必要容器和经常使用容器之外的其他容器,以实现边缘设备的不同功能,从而实现不同监控环境的定制化数据采集,即实现多个边缘设备在不同的工业环境下可以根据需求实现不同的容器配置,当然也可以实现相同的容器配置。
例如,边缘设备根据不同环境将多余的容器进行删除,进而确定所需的目标协议解析程序,以从云端设备配置所需的容器。
S202、边缘设备向云端设备发送镜像下载请求,镜像下载请求中包括请求下载的协议解析程序的标识;
本实施例中,镜像是文件存储形式,是冗余的一种类型,边缘设备有关容器的数据在云端设备上存储有完全相同的全部数据,故边缘设备向云端设备发送镜像下载请求,该镜像请求中包括请求下载的协议解析程序的标识,例如包括边缘设备需要使用的解析协议的ID、协议名字以及协议程序的大小等等。本实施例中边缘设备通过MQTT(MessageQueuing Telemetry Transport,消息队列遥测传输协议)协议向云端设备发送镜像下载请求。
S203、云端设备接收边缘设备发送的镜像下载请求,镜像下载请求中包括请求镜像的协议解析程序的标识;
本实施例中云端设备接收边缘设备发送的镜像下载请求,该镜像下载请求中包括请求镜像的协议解析程序的标识。云端设备存储有边缘设备与目标协议解析程序的映射关系,故云端设备可以根据协议解析程序的标识获得相匹配的目标协议解析程序。同样的本实施例中云端设备通过MQTT协议接收边缘设备发送的镜像下载请求。
S204、云端设备根据标识在协议解析镜像库中确定相匹配的目标协议解析程序;
本实施例在云端设备的协议解析镜像库中存储有协议解析程序配置表,该配置表中可以包含边缘设备ID、协议的ID、协议名字,以及协议程序的大小。云端设备可以根据协议解析程序的标识在协议解析镜像库中确定相匹配的目标协议解析程序。在一种可选的实施例中,协议解析程序的标识与协议解析配置表中的协议ID、协议名字或者协议程序大小相匹配,同时边缘设备ID相匹配,则云端设备在协议解析镜像库中确定相匹配的目标协议解析程序。
S205、云端设备将目标协议解析程序发送给边缘设备。
本实施例中云端设备将目标协议解析程序发送给边缘设备。以便后续边缘设备接收云端设备发送的与标识相匹配的目标协议解析程序。
S206、边缘设备接收云端设备发送的与标识匹配的目标协议解析程序。
本实施例中边缘设备接收云端设备发送的与标识匹配的目标协议解析程序,以使边缘设备根据目标协议解析程序建立目标容器。
本实施例参考图3,图3为本发明数据协议解析过程的示意图,如图3所示,边缘设备可以通过FTP(File Transfer Protocol,文件传输协议)或本地容器引擎向云端设备发送镜像下载请求,镜像下载请求中包括请求下载的协议解析程序标识,云端设备根据该标识在协议解析镜像库中确定相匹配的目标协议解析程序,并发送至边缘设备,从而使边缘设备根据目标协议解析程序建立目标容器,例如五边形,以实现不同监控环境的定制化数据集采集。
在上述实施例的基础上,下面对云端设备如何确定目标协议解析程序进行说明,图4为本发明实施例提供的一种基于容器的协议解析方法流程图二,本申请实施例以云端设备为执行主体对本实施例的方法进行说明,如图4所示,在上述实施例的基础上,该方法可以包括:
S301、云端设备接收边缘设备发送的镜像下载请求,镜像下载请求中包括请求镜像的协议解析程序的标识;
S302、云端设备根据标识在协议解析镜像库中确定相匹配的目标协议解析程序;
S303、云端设备将目标协议解析程序发送给边缘设备。
步骤S301~步骤S303的技术名词、技术效果、技术特征,以及可选实施方式,可参照图2所示的步骤S203~步骤S205理解,对于重复的内容,在此不再累述。
在一种可选的实施例中,云端设备接收边缘设备发送的镜像下载请求之后,还包括步骤S304(未示出):云端设备确定发送镜像下载请求的边缘设备中的资源情况是否符合预设的镜像下载条件;若符合,则在镜像库中确定相匹配的目标协议解析程序。
具体的边缘设备中的资源包括以下至少一种,例如内存容量,数字输入输出模块,模拟量输入模块、模拟量输出模块,以及网络接口。
其中,内存(Memory)由半导体器件制成,其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。只要计算机在运行中,操作系统就会把需要运算的数据从内存调到CPU中进行运算,当运算完成后CPU再将结果传送出来,内存的运行也决定了计算机的稳定运行。其大小采用内存容量来表示。
数字量输入和输出模块(I/O模块)是每个可编程逻辑控制器的关键元件。具体来说承担着控制、通信和致动功能。数字量输入输出信号可表示开关量信号,1或0。
模拟量是表示在一定范围内连续变化的任意取值,跟数字量是相对立的一个状态表示。通常模拟量用于采集和表示事物的电压电流或者频率等参数。模拟量输入模块可以采集模拟量(如电压,电流,热电偶,热电阻,温度等数值)通过485总线传输到智能模块。其通信协议采用MODBUS RTU协议。
模拟量输出模块是指驱动硬件输出和相关数据通路,按照运行方式选择当前的设定值,也可根据需要反向并提供结果给硬件输出或软件输出。模块可以设置为CAS_IN和RCAS_IN自动方式。SP经选择器(SPSELECTOR)对CASIN、SPLOCAL(本机设定)和RCASIN以及反馈值进行选择后输出设定值。
云端设备确定发送镜像下载请求的边缘设备中的资源情况符合上述预设的镜像下载条件;则在镜像库中确定相匹配的目标协议解析程序。
在一种可选的实施例中,云端设备存储有边缘设备与目标协议解析程序的映射关系。
本实施例中云端设备存储有边缘设备与目标协议解析程序的映射关系。例如根据边缘设备ID、协议ID、协议名字,以及协议的大小,在云端设备存储有包含上述边缘设备ID等的协议解析程序配置表,具体参考如下表1。
表1
设备ID | 协议ID | 协议名称 | 协议大小 |
0x01 | 0x01 | 核心程序 | 4348581 |
0x01 | 0x02 | 水浸 | 4033817 |
0x01 | 0x02 | 水浸 | 4033817 |
0x01 | 0x02 | 水浸 | 4033817 |
0x01 | 0x03 | 烟感 | 4034860 |
0x01 | 0x03 | 烟感 | 4034860 |
0x01 | 0x03 | 烟感 | 4034860 |
0x01 | 0x04 | 红外 | 4033769 |
0x01 | 0x04 | 红外 | 4033769 |
0x01 | 0x04 | 红外 | 4033769 |
0x01 | 0x05 | 温湿度 | 4045170 |
0x01 | 0x05 | 温湿度 | 4045170 |
0x01 | 0x05 | 温湿度 | 4045170 |
0x01 | 0x06 | 蓄电池组 | 4025048 |
0x01 | 0x06 | 蓄电池组 | 4025048 |
0x01 | 0x07 | 开关电源 | 4098924 |
0x01 | 0x08 | 无线模块 | 4053410 |
0x01 | 0x09 | 非智能门禁 | 4058715 |
云端设备接收边缘设备发送的镜像下载请求,其中镜像下载请求中包括请求镜像的协议解析程序的标识;云端设备根据标识在协议解析镜像库中确定相匹配的目标协议解析程序;具体的可以在表1所示的协议解析程序配置表确定与镜像下载请求相匹配的目标协议解析程序,然后云端设备将目标协议解析程序发送给边缘设备。
在一种可选的实施例中,云端设备监听镜像库中的各协议解析程序是否存在更新;若确定目标协议解析程序存在更新,则向边缘设备发起更新目标协议解析程序消息。
具体的云端设备可以设置侦听线程,监听镜像库中的各协议解析程序是否存在更新,若确定目标协议解析程序存在更新,则云端设备可以调用轮询线程,依次向边缘设备发起更新目标协议解析程序的消息,以使边缘设备中的容器可以实时更新,保证了物联网工业环境监测的及时性和有效性,更加实现了海量异构数据的采集。
在上述实施例的基础上,下面对边缘设备如何确定目标协议解析程序进行说明,图5为本发明实施例提供的一种基于容器的协议解析方法的流程图三,本申请实施例以边缘设备为执行主体对本实施例的方法进行说明,如图5所示,在上述实施例的基础上,该方法可以包括:
步骤S401、边缘设备确定所需的目标协议解析程序;
步骤S402、边缘设备向云端设备发送镜像下载请求,镜像下载请求中包括请求下载的协议解析程序的标识;
步骤S403、边缘设备接收云端设备发送的与标识匹配的目标协议解析程序。
步骤S401~步骤S402、步骤S403的技术名词、技术效果、技术特征,以及可选实施方式,可参照图2所示的步骤S201~步骤S202、步骤S206理解,对于重复的内容,在此不再累述。
在一种可选的实施例中,边缘设备运行容器引擎,根据目标协议解析程序建立目标容器。
具体的,边缘设备可以包括基础架构、主操作系统、容器引擎以及各类容器四层,具体参考图6,图6为本发明实施例提供的基于容器协议解析系统的组成示意图,如图6所示,每个容器中具有支撑基本运行所需的二进制文件和库文件以及特定的协议解析程序。每个边缘设备运行的协议解析容器可以不同。
其中,基础架构可以基于websocket RPC实现base Service,为了面向多种App的应用,RPC格式采纳了rpcjson格式。baseService中实现了数据流远程调用(StreamingRPC),从而提高了App消息传递的效率。
边缘设备运行容器引擎,该容器引擎可以由许多专用的工具协同工作,从而可以根据目标协议解析程序创建容器和运行容器。其中容器引擎可以由LXC和Docker daemon两大核心组件构成,LXC提供了对诸如命名空间和控制组等基础工具的操作能力,它们是基于Linux内核的容器虚拟化技术。Docker daemon是单一的二进制文件,包含诸如Docker客户端、Docker API、容器运行时、镜像构建等。
在一种可选的实施例中,边缘设备确定所需的目标协议解析程序之前,还包括:边缘设备确定本地必要内置容器和使用频率超过阈值的内置容器;边缘设备删除本地除必要内置容器和使用频率超过阈值的内置容器之外的其他容器。
具体的,在边缘设备确定所需的目标协议解析程序之前,还包括边缘设备确定本地必要内置容器和使用频率超过阈值的内置容器,例如,边缘设备中包括容器A、容器B,以及容器C,确定其中容器A为本地必要内置容器,容器B为使用频率超过阈值的内置容器;进而边缘设备可以删除本地除必要内置容器和使用频率超过阈值的内置容器之外的其他容器,例如将容器C删除。以便边缘设备可以腾出更多的存储空间,可以根据不同的工业环境在需要时从云端设备定制获取设置相关容器,进而可以实现更加海量异构的数据采集。
在一种可选的实施例中,方法还包括:边缘设备接收云端设备发起的更新目标协议解析程序消息;边缘设备从云端设备镜像更新后的目标协议解析程序,并根据目标协议解析程序更新目标容器。
具体的,云端设备可以与边缘设备通过FTP进行传递,云端设备监听、确认目标协议解析程序库存在更新时,向边缘设备发起更新目标协议解析程序消息。例如边缘设备1接收云端设备发起的更新目标协议解析程序消息,并更新目标协议解析程序以更新目标容器。
图7为本发明实施例提供的一种云端设备的结构示意图,包括:
第一接收模块,用于接收边缘设备发送的镜像下载请求,镜像下载请求中包括请求镜像的协议解析程序的标识;
匹配模块,用于根据标识在协议解析镜像库中确定相匹配的目标协议解析程序;
第一发送模块,用于将目标协议解析程序发送给边缘设备。
在一种可能的设计中,云端设备接收边缘设备发送的镜像下载请求之后,还包括:
云端设备确定发送镜像下载请求的边缘设备中的资源情况是否符合预设的镜像下载条件;若符合,则在镜像库中确定相匹配的目标协议解析程序。
在一种可能的设计中,边缘设备的资源包括以下至少一种:内存容量,数字输入输出模块,模拟量输入模块、模拟量输出模块,以及网络接口在一种可能的设计中,方法还包括:云端设备存储边缘设备与目标协议解析程序的映射关系。
在一种可能的设计中,方法还包括:云端设备监听镜像库中各协议解析程序是否存在更新;
若确定目标协议解析程序存在更新,则向边缘设备发起更新目标协议解析程序消息。
本实施例的云端设备,可以执行图2、图4所示方法中的技术方案,其具体实现过程和技术原理参见图2、图4所示方法中的相关描述,此处不再赘述。
图8为本发明实施例提供的一种边缘设备的结构示意图,如图8所示,本实施例的边缘设备可以包括:
确定模块,用于确定所需的目标协议解析程序;
第二发送模块,用于向云端设备发送镜像下载请求,镜像下载请求中包括请求下载的协议解析程序的标识;
第二接收模块,用于接收云端设备发送的与标识匹配的目标协议解析程序。
在一种可选的实施例中,方法还包括:
边缘设备运行容器引擎,根据目标协议解析程序建立目标容器。
边缘设备确定所需目标协议解析程序之前,还包括:边缘设备确定本地必要内置容器和使用频率超过阈值的内置容器之外的其他容器。
在一种可选的实施例中,方法还包括:边缘设备从云端设备镜像更新后的目标协议解析程序,并根据目标协议解析程序更新目标容器。
本实施例的边缘设备,可以执行图2、图5所示方法中的技术方案,其具体实现过程和技术原理参见图2、图5所示方法中的相关描述,此处不再赘述。
图9为本发明实施例提供的一种基于容器的协议解析系统的结构示意图,如图9所示,本实施例的基于容器的协议解析系统70可以包括:处理器71和存储器72。
存储器72,用于存储计算机程序(如实现上述基于容器的协议解析方法的应用程序、功能模块等)、计算机指令等;
上述的计算机程序、计算机指令等可以分区存储在一个或多个存储器72中。并且上述的计算机程序、计算机指令、数据等可以被处理器71调用。
处理器71,用于执行存储器72存储的计算机程序,以实现上述实施例涉及的方法中的各个步骤。
具体可以参见前面方法实施例中的相关描述。
处理器71和存储器72可以是独立结构,也可以是集成在一起的集成结构。当处理器71和存储器72是独立结构时,存储器72、处理器71可以通过总线73耦合连接。
此外,本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当用户设备的至少一个处理器执行该计算机执行指令时,用户设备执行上述各种可能的方法。
其中,计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于用户设备中。当然,处理器和存储介质也可以作为分立组件存在于通信设备中。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种基于容器的协议解析方法,其特征在于,包括:
云端设备接收边缘设备发送的镜像下载请求,所述镜像下载请求中包括请求镜像的协议解析程序的标识;所述边缘设备用于根据不同的监控环境实现定制化数据采集,具体包括:根据所述边缘设备需求从所述云端设备通过协议解析配置除必要容器和经常使用容器之外的其他容器,以实现所述边缘设备的不同功能;其中,所述边缘设备在不同监控环境下的容器配置不同;所述协议解析程序的标识是所述边缘设备根据不同监控环境将多余的容器进行删除确定的;
所述云端设备根据所述标识在协议解析镜像库中确定相匹配的目标协议解析程序;
所述云端设备将所述目标协议解析程序发送给所述边缘设备。
2.根据权利要求1所述的方法,其特征在于,所述云端设备接收边缘设备发送的镜像下载请求之后,还包括:
所述云端设备确定发送所述镜像下载请求的所述边缘设备中的资源情况是否符合预设的镜像下载条件;若符合,则在所述镜像库中确定相匹配的目标协议解析程序。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述云端设备存储所述边缘设备与所述目标协议解析程序的映射关系。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
所述云端设备监听所述镜像库中的各协议解析程序是否存在更新;
若确定所述目标协议解析程序存在更新,则向所述边缘设备发起更新所述目标协议解析程序消息。
5.一种基于容器的协议解析方法,其特征在于,包括:
边缘设备确定所需的目标协议解析程序;
所述边缘设备向云端设备发送镜像下载请求,所述镜像下载请求中包括请求下载的协议解析程序的标识;所述边缘设备用于根据不同的监控环境实现定制化数据采集,具体包括:根据所述边缘设备需求从所述云端设备通过协议解析配置除必要容器和经常使用容器之外的其他容器,以实现所述边缘设备的不同功能;其中,所述边缘设备在不同监控环境下的容器配置不同;所述协议解析程序的标识是所述边缘设备根据不同监控环境将多余的容器进行删除确定的;
所述边缘设备接收所述云端设备发送的与所述标识匹配的目标协议解析程序。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
所述边缘设备运行容器引擎,根据所述目标协议解析程序建立目标容器。
7.根据权利要求5或6所述的方法,其特征在于,所述边缘设备确定所需的目标协议解析程序之前,还包括:
所述边缘设备确定本地必要内置容器和使用频率超过阈值的内置容器;
所述边缘设备删除本地除所述必要内置容器和使用频率超过阈值的内置容器之外的其他容器。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
所述边缘设备接收所述云端设备发起的更新所述目标协议解析程序消息;
所述边缘设备从所述云端设备镜像更新后的所述目标协议解析程序,并根据所述目标协议解析程序更新所述目标容器。
9.一种云端设备,其特征在于,包括:
第一接收模块,用于接收边缘设备发送的镜像下载请求,所述镜像下载请求中包括请求镜像的协议解析程序的标识;所述边缘设备用于根据不同的监控环境实现定制化数据采集,具体包括:根据所述边缘设备需求从所述云端设备通过协议解析配置除必要容器和经常使用容器之外的其他容器,以实现所述边缘设备的不同功能;其中,所述边缘设备在不同监控环境下的容器配置不同;所述协议解析程序的标识是所述边缘设备根据不同监控环境将多余的容器进行删除确定的;
匹配模块,用于根据所述标识在协议解析镜像库中确定相匹配的目标协议解析程序;
第一发送模块,用于将所述目标协议解析程序发送给所述边缘设备。
10.一种边缘设备,其特征在于,包括:
确定模块,用于确定所需的目标协议解析程序;
第二发送模块,用于向云端设备发送镜像下载请求,所述镜像下载请求中包括请求下载的协议解析程序的标识;所述边缘设备用于根据不同的监控环境实现定制化数据采集,具体包括:根据所述边缘设备需求从所述云端设备通过协议解析配置除必要容器和经常使用容器之外的其他容器,以实现所述边缘设备的不同功能;其中,所述边缘设备在不同监控环境下的容器配置不同;所述协议解析程序的标识是所述边缘设备根据不同监控环境将多余的容器进行删除确定的;
第二接收模块,用于接收所述云端设备发送的与所述标识匹配的目标协议解析程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010217063.8A CN111427664B (zh) | 2020-03-25 | 2020-03-25 | 基于容器的协议解析方法、装置、系统以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010217063.8A CN111427664B (zh) | 2020-03-25 | 2020-03-25 | 基于容器的协议解析方法、装置、系统以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111427664A CN111427664A (zh) | 2020-07-17 |
CN111427664B true CN111427664B (zh) | 2024-04-12 |
Family
ID=71548685
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010217063.8A Active CN111427664B (zh) | 2020-03-25 | 2020-03-25 | 基于容器的协议解析方法、装置、系统以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111427664B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114095541A (zh) * | 2020-07-29 | 2022-02-25 | 阿里巴巴集团控股有限公司 | 数据处理系统及方法、边缘设备、协议管理设备及服务器 |
CN112272234B (zh) * | 2020-10-23 | 2023-02-21 | 杭州卷积云科技有限公司 | 一种实现边云协同智能即服务的平台管理系统及方法 |
CN113179269B (zh) * | 2021-04-27 | 2023-04-28 | 深圳市麦斯杰网络有限公司 | 基于物联网的协议数据解析方法、系统、介质 |
CN113485257B (zh) * | 2021-06-02 | 2023-03-03 | 杭州电子科技大学 | 一种工业协议解析内置程序优化方法 |
CN113435368B (zh) * | 2021-06-30 | 2024-03-22 | 青岛海尔科技有限公司 | 监控数据的识别方法和装置、存储介质及电子装置 |
CN113805957B (zh) * | 2021-08-13 | 2024-02-13 | 广东省安心加科技有限公司 | 边缘端程序动态加载方法及装置 |
CN113746851B (zh) * | 2021-09-08 | 2023-08-18 | 上海幻电信息科技有限公司 | 一种支持实时解析grpc请求的代理系统和方法 |
CN114153468A (zh) * | 2021-11-04 | 2022-03-08 | 云镝智慧科技有限公司 | 工业协议的适配方法、装置、边缘设备及云端服务器 |
CN114827293A (zh) * | 2022-04-20 | 2022-07-29 | 广东省工业边缘智能创新中心有限公司 | 边缘智能网关管理方法及边缘智能网关 |
CN115277482B (zh) * | 2022-06-10 | 2023-08-22 | 浙江清捷智能科技有限公司 | 一种工业边缘设备的在线检测方法 |
CN115442374B (zh) * | 2022-11-07 | 2023-03-31 | 阿里巴巴(中国)有限公司 | 信令传输方法及设备 |
CN115550472B (zh) * | 2022-11-22 | 2023-03-28 | 浙江大华技术股份有限公司 | 异构数据处理方法及装置 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105511943A (zh) * | 2015-12-03 | 2016-04-20 | 华为技术有限公司 | 一种Docker容器运行方法和装置 |
CN107016059A (zh) * | 2017-03-10 | 2017-08-04 | 北京聚睿智能科技有限公司 | 一种数据库集群部署方法、装置及物理服务器 |
WO2017143548A1 (zh) * | 2016-02-25 | 2017-08-31 | 华为技术有限公司 | 用于应用自动化部署的方法和云管理节点 |
CN107835178A (zh) * | 2017-11-13 | 2018-03-23 | 北京奇艺世纪科技有限公司 | 一种多协议服务通信方法、装置以及电子设备 |
CN108521458A (zh) * | 2018-03-30 | 2018-09-11 | 新华三云计算技术有限公司 | 应用平台访问方法及装置 |
CN109302483A (zh) * | 2018-10-17 | 2019-02-01 | 网宿科技股份有限公司 | 一种应用程序的管理方法及系统 |
WO2019095936A1 (zh) * | 2017-11-15 | 2019-05-23 | 腾讯科技(深圳)有限公司 | 容器镜像的构建方法、系统、服务器、装置及存储介质 |
CN109840103A (zh) * | 2017-11-27 | 2019-06-04 | 西门子(中国)有限公司 | 应用程序容器的更新方法、装置和存储介质 |
CN110390246A (zh) * | 2019-04-16 | 2019-10-29 | 江苏慧中数据科技有限公司 | 一种边云环境中的视频分析方法 |
CN110417766A (zh) * | 2019-07-22 | 2019-11-05 | 深圳市酷达通讯有限公司 | 一种协议解析的方法和装置 |
CN110532075A (zh) * | 2019-08-09 | 2019-12-03 | 济南浪潮数据技术有限公司 | 有状态负载的实现方法及装置 |
-
2020
- 2020-03-25 CN CN202010217063.8A patent/CN111427664B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105511943A (zh) * | 2015-12-03 | 2016-04-20 | 华为技术有限公司 | 一种Docker容器运行方法和装置 |
WO2017143548A1 (zh) * | 2016-02-25 | 2017-08-31 | 华为技术有限公司 | 用于应用自动化部署的方法和云管理节点 |
CN107016059A (zh) * | 2017-03-10 | 2017-08-04 | 北京聚睿智能科技有限公司 | 一种数据库集群部署方法、装置及物理服务器 |
CN107835178A (zh) * | 2017-11-13 | 2018-03-23 | 北京奇艺世纪科技有限公司 | 一种多协议服务通信方法、装置以及电子设备 |
WO2019095936A1 (zh) * | 2017-11-15 | 2019-05-23 | 腾讯科技(深圳)有限公司 | 容器镜像的构建方法、系统、服务器、装置及存储介质 |
CN109840103A (zh) * | 2017-11-27 | 2019-06-04 | 西门子(中国)有限公司 | 应用程序容器的更新方法、装置和存储介质 |
CN108521458A (zh) * | 2018-03-30 | 2018-09-11 | 新华三云计算技术有限公司 | 应用平台访问方法及装置 |
CN109302483A (zh) * | 2018-10-17 | 2019-02-01 | 网宿科技股份有限公司 | 一种应用程序的管理方法及系统 |
CN110390246A (zh) * | 2019-04-16 | 2019-10-29 | 江苏慧中数据科技有限公司 | 一种边云环境中的视频分析方法 |
CN110417766A (zh) * | 2019-07-22 | 2019-11-05 | 深圳市酷达通讯有限公司 | 一种协议解析的方法和装置 |
CN110532075A (zh) * | 2019-08-09 | 2019-12-03 | 济南浪潮数据技术有限公司 | 有状态负载的实现方法及装置 |
Non-Patent Citations (3)
Title |
---|
Matteo Nardelli.et al.Elastic Provisioning of Virtual Machines for Container Deployment.ICPE '17 Companion: Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion.2017,第5-10页. * |
一种最大化内存共享与最小化运行时环境的超轻量级容器;张礼庆等;计算机研究与发展;20190715;第1545-1555页 * |
探析容器技术应用下的虚拟化云桌面系统应用;殷童晶;电脑迷;20190527;第33页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111427664A (zh) | 2020-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111427664B (zh) | 基于容器的协议解析方法、装置、系统以及存储介质 | |
EP3798833A1 (en) | Methods, system, articles of manufacture, and apparatus to manage telemetry data in an edge environment | |
CN108028833B (zh) | 一种nas数据访问的方法、系统及相关设备 | |
KR101923100B1 (ko) | Plc 히스토리언과 통합된 분산 임베디드 데이터 및 지식 관리 시스템 | |
CN112632566B (zh) | 漏洞扫描方法和装置、存储介质及电子设备 | |
Jain et al. | Taxonomy of edge computing: Challenges, opportunities, and data reduction methods | |
Petrolo et al. | The design of the gateway for the cloud of things | |
CN110716744A (zh) | 一种数据流处理方法、系统和计算机可读存储介质 | |
US11381463B2 (en) | System and method for a generic key performance indicator platform | |
CN110413845B (zh) | 基于物联网操作系统的资源存储方法及装置 | |
Mouradian et al. | NFV based gateways for virtualized wireless sensor networks: A case study | |
CN114584614A (zh) | 用于智能终端与采集终端之间的信息交互方法 | |
CN114969199A (zh) | 遥感数据的处理方法、装置、系统以及存储介质 | |
WO2019114972A1 (en) | Communications with constrained devices | |
CN110719303B (zh) | 一种容器化nrf的方法及系统 | |
Azzara et al. | Architecture, functional requirements, and early implementation of an instrumentation grid for the IoT | |
Martins et al. | Network-wide programming challenges in cyber-physical systems | |
CN116910568B (zh) | 图神经网络模型的训练方法及装置、存储介质及电子装置 | |
Manjushree et al. | Data Streaming Framework on Cloud Platform for Surveillance of Unmanned Sensors | |
KR101532263B1 (ko) | 프런트 엔드 어플리케이션 라이브러리를 이용한 클라우드 스토리지 서비스 방법 및 시스템 | |
Swarnalatha et al. | A cloud platform for the internet of things | |
Timilsina | A Framework for Location Independent Data and Compute for Data Intensive Science | |
PEREPELKIN et al. | MODERN INFORMATION TECHNOLOGIES AND IT-EDUCATION | |
Kontopoulos et al. | Machine Learning driven road safety over smart Networks based on Electroencephalography data analysis | |
Pathak et al. | IoT Design Methodology: Architectures and Protocols |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |