1.本发明涉及工业互联网技术领域,尤其涉及一种
应用层确定性控制方法和系统。
背景技术:
2.工业互联网将企业内网中的各种要素连接起来并形成数字化、智能化生产模式,它是工业系统、网络技术、计算技术、传感技术等领域深度融合的结果。企业内部网络中存在大量功能各异的
设备,“网边端云”主要指确定性网络、边缘计算设备、工业终端设备和云平台。传统工业网络中,一般只存在“网络-终端”之间的资源协调和“边缘计算-云平台”的资源协调,不支持依赖关系复杂的、涵盖多个设备应用的控制闭环。当应用任务需要依据一定的次序在“网边端云”中实现复杂的控制闭环时,现有架构无法实现各类设备之间的深度协同与联合确定性配置。当“网边端云”中多个应用之间存在依赖关系,控制链涉及边缘计算或者云计算平台时,现有架构不能根据应用确定性需求调整相关资源,不能保证复杂计算应用的处理时延。
技术实现要素:
3.本发明提供一种应用层确定性控制方法和系统,解决现有工业互联网网络的“网边端云”控制确定性不闭环和动态协同控制难问题,尤其适用于企业互联网。
4.为解决上述问题,本发明是这样实现的:
5.第一方面,本发明提出一种应用层确定性控制方法,用于包含工业终端设备、网络控制设备、边缘计算设备、云计算中心的网络,包含以下步骤:将工业终端设备、网络控制设备、边缘计算设备和或云计算中心的确定性应用在网络应用层上进行注册;在网络应用层,根据各所述确定性应用之间的协同关系,构建应用依赖图,所述应用依赖图是描述多个设备上的确定性应用间关联的数据结构;在网络应用层,对确定性应用提出的确定性需求采用先分配网络资源、再分配边缘资源、再分配云资源的优先顺序进行策略初始化配置。
6.优选地,所述应用层确定性控制方法,还包含:在网络应用层,对确定性网络中开启的应用进行监测:若发现新事件,根据事件类别和事件参数进行具体操作决策;若存在确定性应用之间通信的
数据流,则根据控制数据流、应用层确定性数据流、2-3层确定性数据流和普通数据流的优先级顺序,进行数据流处理。
7.优选地,将工业终端设备、网络控制设备和边缘计算设备的确定性应用在网络应用层上进行注册的步骤,进一步包含:将所述网络控制设备的确定性应用在网络应用层进行注册到,并对网络控制设备的确定性应用和网络应用层进行时钟同步配置;判断需要添加注册的设备类型是工业终端设备还是边缘计算设备,分别将工业终端设备和边缘计算设备的确定性应用在网络应用层进行注册,对两个设备分别建立不同的参数列表,参数列表至少包含设备自身基本信息;将网络应用层的时钟同步到添加注册的设备。
8.优选地,在网络应用层,根据各所述确定性应用之间的协同关系,采用自动学习方法构建全局应用依赖图,具体为:通过已完成注册的确定性应用向网络应用层发起预运行
流程,上报预运行信息,所述预运行信息至少包含应用层确定性业务编号、时间戳、确定性需求信和状态符;通过网络应用层对收到的所述预运行信息根据五元组和应用层确定性业务编号建立独立的应用依赖图数据结构,按照时间戳进行排序、按照地址信息决定数据结构中的父节点和子节点,形成有向无环图;通过网络应用层定期监听网络事件,若收到新的确定性应用上传的预运行信息,则动态更改应用依赖图。
9.或者,优选地,在网络应用层,根据各所述确定性应用之间的协同关系,,采用人工输入方法构建全局应用依赖图。
10.优选地,所述方法还包含:响应于确定性业务出现事件,通过识别到事件的设备上传该事件到网络应用层,通过网络应用层对发生变化的确定性业务进行资源调度和重新配置。
11.优选地,所述根据事件类别和事件参数进行具体操作决策的步骤,进一步包含:对发现的新事件判断事件类别:若是控制事件,通过网络应用层识别控制事件的事件参数,采用对应的策略,获取对应的决策结果;若是敏感业务事件,识别是应用层确定性事件还是2-3层确定性事件,针对每个事件的分布特征,确定是周期性事件还是突发性事件,对周期性事件实施增量式系统配置更新,对突发性事件实施变更网络配置;若是监测事件,通过网络应用层采用预先设定的策略变更网络配置。
12.优选地,所述进行数据流处理的步骤,进一步包含:优先判断该数据流是否属于控制数据流,若属于控制数据流,优先采用上传通道上传到网络应用层,并在该数据流对应的设备上更新统计数据;若不属于控制数据流,再判断是否属于敏感性业务数据流,如果属于敏感性业务数据流,则采用网络设备的确定性技术处理方法;若不属于敏感性业务数据流,再判断是否处于监测数据流或普通数据流,根据对应的流表条目进行处理。
13.优选地,预运行信息的五元组和应用层确定性业务编号已存在于应用层确定性控制链,且预运行信息对应的状态符是开始状态符,所述动态更改应用依赖图的步骤,包含:当该预运行信息的五元组和应用层确定性业务编号已存在于已存在的应用层确定性控制链,且该预运行信息对应的状态符是开始状态符时,根据该预运行信息生成新的第一集合连接,所述预运行信息包括协议字段信息、应用主动填写的信息、仿真数据中的至少一项;如果已存在的应用层确定性控制链没有状态符为开始状态符的第一集合连接,则新建一个单向通信元数据,提取该预运行信息的载荷,更新单向通信元数据的确定性服务质量参数,再将单向通信元数据添加到已存在的应用层确定性控制链的应用依赖图中,所述确定性服务质量参数包括应用所需的时延、带宽、丢包率、计算复杂度、优先级信息中的至少一项;如果已存在的应用层确定性控制链中有状态为开始状态符的第一集合连接,则与已存在的状态为开始状态符的第一集合连接比较时间戳,保留时间戳数值较小的单向通信元数据,再提取该预运行信息的载荷,更新单向通信元数据的确定性服务质量参数。
14.优选地,预运行信息的五元组和应用层确定性业务编号已存在于应用层确定性控制链,且预运行信息对应的状态符是结束状态符,所述动态更改应用依赖图的步骤,包含:从预运行信息队列中提取任意一个预运行信息中的五元组和应用层确定性业务编号;当该预运行信息的五元组和应用层确定性业务编号已存在于ci,且该预运行信息对应的状态符是结束状态符时,将该预运行信息的源设备应用和目的设备应用中不重复的应用层确定性控制链添加进ci对应的应用依赖图,根据该预运行信息生成第二集合,将该第二集合添加
进e
com
,完成应用依赖图更改,提取该预运行信息的载荷,更新ei的确定性服务质量参数。
15.优选地,预运行信息的五元组和应用层确定性业务编号已存在于应用层确定性控制链,且预运行信息对应的状态符是中继状态符,所述动态更改应用依赖图的步骤,包含:从预运行信息队列中提取任意一个预运行信息中的五元组和应用层确定性业务编号;当该预运行信息的五元组和应用层确定性业务编号已存在于ci,且该预运行信息对应的状态符是中继状态符时,将该预运行信息的源设备应用和目的设备应用中不重复的应用层确定性控制链添加进ci对应的应用依赖图,根据该预运行信息生成第三集合,将该第三集合添加进e
com
,提取该预运行信息的载荷,更新ei的确定性服务质量参数。
16.优选地,预运行信息的五元组和应用层确定性业务编号构成的唯一识别信息不存在于任何应用层确定性控制链,所述动态更改应用依赖图的步骤,包含:从预运行信息队列中提取任意一个预运行信息中的五元组和应用层确定性业务编号;当该预运行信息的五元组和应用层确定性业务编号中至少一个不存在于任何已存在的ci,先在建立一个新的应用层确定性控制链,再将该预运行信息的源设备应用和目的设备应用添加进新的应用层确定性控制链对应的应用依赖图,再根据该预运行信息生成第四集合,将第四集合添加进e
com
。
17.其中,ci是现有的应用层确定性控制链集合中、应用层确定性业务编号为i的应用层确定性控制链,i是元素编号,ei是编号为i的单向通信元数据,e
com
是两个设备间的一次单向通信的集合。
18.第二方面,本发明实施例还提供一种应用层确定性中间件服务器,用于实现本发明实施例任一项方法,包含:第一发送模块,向工业终端设备、网络控制设备、边缘计算设备和或云计算中心的确定性应用发送注册成功信息;第一确定模块,用于将工业终端设备、网络控制设备、边缘计算设备和或云计算中心的确定性应用在网络应用层上进行注册;根据各所述确定性应用之间的协同关系,构建应用依赖图;对确定性应用提出的确定性需求采用先分配网络资源、再分配边缘资源、再分配云资源的优先顺序进行策略初始化配置;第一接收模块,用于接收工业终端设备、网络控制设备、边缘计算设备和或云计算中心的确定性应用发送的注册请求信息。
19.第三方面,本发明实施例还提供一种应用层确定性中间件代理设备,用于实现本发明实施例任一项方法,第二发送模块,用于向应用层确定性中间件服务器发送注册请求信息;第二确定模块,用于获取确定性应用的配置信息;第二接收模块,用于接收应用层确定性中间件服务器发送的注册成功信息。
20.第四方面,本发明实施例还提供一种应用层确定性控制系统,使用本发明任一项实施例所述应用层确定性中间件服务器和本发明任一项实施例所述应用层确定性中间件代理设备。
21.本技术还提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本技术中任一实施例所述的方法。
22.进一步地,本技术还提出一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,所述处理器执行所述计算机程序时实现如本技术任一实施例所述的方法。
23.本技术实施例采用的上述至少一个技术方案能够达到以下有益效果:本发明提供一种面向“网边端云”协同的应用层确定性控制方法和系统,一是可以为解决目前“网边端
云”应用无法实现全网一致性的服务质量保障的问题;二是可以自动构建应用层确定性控制链,建立应用之间的关联;三是动态将应用需求拆解为全网调度方案及其配置,实现“网边端云”动态协同控制。
附图说明
24.此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
25.图1为本发明方法流程实施例;
26.图2为应用注册流程实施例;
27.图3为应用依赖图生成方法流程实施例;
28.图4为应用层确定性系统事件处理方法流程实施例;
29.图5为数据流处理方法流程实施例;
30.图6为本发明系统实施例。
具体实施方式
31.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明具体实施例及相应的附图对本发明技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
32.工业互联网将企业内网中的各种要素连接起来并形成数字化、智能化生产模式,它是工业系统、网络技术、计算技术、传感技术等领域深度融合的结果。企业内部网络中存在大量功能各异的设备,“网边端云”主要指确定性网络、边缘计算设备、工业终端设备和云平台。
33.其中,确定性网络是给承载的业务提供确定性业务保证的网络,以tsn(time-sensitive network,时间敏感网络)、dip(deterministic ip,确定性ip网络)等为代表。在这类网络中传输的数据包(帧)具有严格的时延、时延抖动、丢包率、可靠性和吞吐量。边缘计算设备是指在靠近生产线或数据源头一侧的终端设备,具备网络、计算、存储、应用等核心能力,以边缘网关、边缘控制器、边缘一体机为代表,其应用程序提供较云平台更快的服务。工业终端设备是在生产过程中,对生产线各个环节执行检测、控制、分析中一种或多种操作的设备。云平台是指云计算平台,云服务商提供的云基础设施及其上的服务软件的集合。确定性控制链是指在工业生产过程中,“网边端云”中多个应用之间发生多次通信与计算,形成固定、确定的业务流程,在该流程中所有控制与反馈构成的行为集合。
34.传统工业网络中,一般只存在“网络-终端”之间的资源协调和“边缘计算-云平台”的资源协调,当应用任务需要依据一定的次序在“网边端云”中实现复杂的控制闭环时,现有架构无法实现各类设备之间的深度协同与联合确定性配置。“网边端云”协同需要实现这些设备之间的监测和控制接口,在此基础之上,通过专用设备实现企业内网全局视图及管理,能够制定并执行“网边端云”控制链的资源调度策略。本专利提出一种应用层确定性集中式控制架构,采用应用层确定性策略中间件进行企业内网的“网边端云”协同,统一进行状态同步和控制信令下发,针对网络中的重要事件进行动态决策。
35.确定性是指保证业务的低时延、低抖动、零丢包率、高可靠性。以确定性网络为例,实现全网设备的同步调度需要时间同步、集中控制、资源预留等机制。然而现有确定性网络主要是2-3层的技术。虽然网络部分可以保障传输过程的确定性指标,当多个应用之间存在依赖关系,控制链涉及边缘计算或者云计算平台时,如果不能根据应用确定性需求调整相关资源,就不能保证复杂计算应用的处理时延。随着工业互联网业务越来越复杂,目前企业内网的应用协同控制不闭环。具体来说存在以下缺点:
36.第一、缺少覆盖工业终端、确定性网络、边缘计算和云计算的所有存在关联应用的服务协商机制,无法实现全网一致性的服务质量保障。
37.第二、不存在“网边端云”协同的全局服务,现有框架仅依据优先级进行应用分类及数据流调度,不存在基于应用之间关联的识别、存储、决策手段。
38.第三、不存在“网边端云”的多种应用的状态监控与调度控制的闭环控制链,计算任务的延时不可控,导致面向业务确定性要求无法落地。
39.本发明的创新点在于:本发明创新性提出一种面向“网边端云”协同的应用层确定性控制系统,用以解决工业互联网网络中“网边端云”控制不闭环的问题。第一、本发明通过应用层确定性中间件对“网边端云”的各设备统一制定策略,解决现有方法无法实现全网一致性的服务质量保障的问题;第二、本发明通过动态调整应用依赖图,对设备的每一个确定性需求建立应用层确定性控制链,实时应用闭环管理;第三、本发明动态将应用需求拆解为全网调度方案及其配置,实现“网边端云”动态协同控制。
40.以下结合附图,详细说明本发明各实施例提供的技术方案。
41.图1为本发明方法流程实施例。
42.一种应用层确定性控制方法,用于包含工业终端设备、网络控制设备、边缘计算设备和队列的网络,具体包含以下步骤101~103:
43.步骤101、将工业终端设备、网络控制设备、边缘计算设备和云计算中心中一种或多种设备的确定性应用在网络应用层上进行注册。
44.在步骤101中,一种应用层确定性中间件架构,组成设备包括一个集中式的应用层确定性中间件及各类“网边端云”设备,工业终端设备、网络控制设备、边缘计算设备和队列等所有设备通过确定性网络互联。在各设备安装应用层确定性代理(agent)后,将各个工业设备上运行的工业应用注册到中间件。所有应用的数据流会根据应用层确定性数据流、2-3层确定性数据流、普通业务数据流进行分类调度。每个应用层确定性控制链会在正式运行业务前进行预运行,通过业务流编号、时间戳、设备地址构建应用依赖关系。
45.在步骤101中,应用层确定性是指在网络的应用层上,将涵盖各种设备应用的复杂控制链的服务质量进行约束,使之在时延、吞吐量、可靠性等关键指标上具有确定的上下界,在系统使用期间这些关键指标不随应用数据量及其计算量的变化发生足以影响业务运行的变化。
46.在步骤101中,由工业终端设备、网络控制设备、边缘计算设备和云计算中心的确定性应用通过应用层确定性中间件服务器向网络应用层主动发起注册,通过各设备自身的应用层确定性代理,即各应用层确定性代理设备向应用层确定性中间件服务器报备自身基本信息,包括但不限于应用名称、应用任务编号、应用确定性需求和时间戳。
47.在步骤101中,将工业终端设备、网络控制设备、边缘计算设备和云计算中心的确
定性应用注册到应用层确定性中间件服务器,将所有支持确定性的应用和任务的基本信息登记,从而确保所有的应用和任务都能被识别。在应用层确定性控制系统中只对注册的应用进行确定性管理,非确定性应用则不受应用层确定性中间件管理。
48.步骤102、根据各所述确定性应用之间的协同关系,构建应用依赖图。
49.在步骤102中,应用依赖图,是一种描述多个设备上应用间关联的数据结构,一个应用可以并行拥有多个应用依赖图。每个应用依赖图描述一个应用控制链,应用控制链是闭环的。应用依赖图由具有时序关系的单向通信集合和“网边端云”节点集合组成,通过单向通信的编号及时间戳唯一描述一个通信流程。本发明实施例中的应用依赖图是一种全局应用依赖图。
50.在步骤102中,可通过所述应用层确定性中间件服务器,根据各所述确定性应用之间的协同关系,采用人工输入方法构建全局应用依赖图。
51.例如,用户输入应用层确定性控制链中的单向通信集合,并编辑相关通信次序。添加所有单向通信的目标节点,设置节点次序和节点上的任务。
52.在步骤102中,还可采用自动学习方法构建全局应用依赖图,由已完成注册的应用发起预运行流程,所有中继节点向应用层确定性中间件服务器上传预运行信息,从而自动形成应用控制链对应的应用依赖图。在系统运行过程中,中间件定期通过监听系统中的事件,动态更改应用依赖图。
53.在步骤102中,在完成应用注册之后,根据应用之间的调用关系构建相应的应用依赖图。在应用层确定性中间件全面记录应用之间的关系后,才能够进一步去进行全局性的规划,否则各个设备本身无法得到全局的应用依赖关系。在构建应用依赖图时,将从某一个任务的发起应用出发,每经过一个设备就上传相应的事件,在收到最终的终止事件之后,就可以开启步骤104中对应用及任务的监测。
54.步骤103、在网络应用层,对确定性应用提出的确定性需求采用先分配网络资源、在分配边缘资源、再分配云资源的优先顺序进行策略初始化配置。
55.在步骤103中,采用先分配网络资源、再分配边缘资源、最后分配云资源的优先顺序。依据应用层确定性中间件服务器下发的配置进行策略初始化。优先采用已有应用及任务的配置。在发生严重事件时,更新配置,每种设备的代理具有专用的配置接口及参数。
56.在步骤103中,在完成应用依赖图的描述后,根据某一个业务的确定性需求,需要确定每一个单向通信的确定性配置和每一个设备节点的确定性配置。策略初始化配置采用先分配网络资源、再分配边缘资源、最后分配云资源的优先顺序,具体如下:
57.步骤103a、对事件进行分类判断,只有涉及到设备或应用的配置初始化或重配置时,进入如下流程。
58.步骤103b、更新应用依赖图和系统状态。
59.步骤103c、将业务的应用依赖图与数据库中已有配置进行比对,选择已有策略进行配置。
60.步骤103d、如果不存在类似配置,则根据目前网络资源调度情况,分析各链路可以支持的业务等级,根据网络演算的模型分析网络最坏性能,如果网络能够满足确定性需求的要求,优先分配不影响已有业务的最高优先级。
61.步骤103e、将应用任务的确定性需求翻译为网络控制器cnc(集中式网络配置)或
cuc(集中式用户配置)的配置,下发至网络控制设备,接收网络控制设备的执行结果反馈。
62.步骤103f、如果网络控制设备反馈配置成功,计算确定性需求对应设备的服务要求,将相关控制参数下发至边缘计算设备,并据此调整计算任务优先级和配置。否则,取消之前的配置,返回步骤103d,根据配置结果调整策略权重或者参数,重新计算配置。接收边缘计算设备的执行结果反馈。
63.步骤103g、如果边缘计算设备也配置成功,则查应用依赖图,判断是否需要配置云计算设备,将剩余指标要求翻译成云计算设备任务要求。
64.需要说明的是,具体翻译算法可采用现有技术中的翻译算法。
65.在步骤103中,进一步地,当确定性业务出现事故时,通过识别到事故的设备上传该事故到所述应用层确定性中间件,通过所述应用层确定性中间件对发生变化的确定性业务进行资源调度和重新配置。
66.具体地,出现应用层确定性业务的开启、关闭、变更、异常、或错误出现时,由识别关键指标的设备上的应用层确定性代理触发一个事件,并将该事件上传至应用层确定性中间件,应用层确定性中间件根据事件对发生变化的业务进行资源调度、重新配置,如果资源充分,则仅初始化或重配置控制链涉及到的业务配置。如果在若干设备上发生严重的资源抢占,则本着最小化原则将多个控制链进行重配置。
67.步骤104、在网络应用层,对确定性网络中开启的应用进行监测。
68.在步骤104中,通过应用层确定性中间件服务器对确定性网络中开启的应用进行监测。
69.在步骤104中,若发现新事件,根据事件类别和事件参数进行具体操作决策;若存在确定性应用之间通信的数据流,则根据控制数据流、应用层确定性数据流、2-3层确定性数据流和普通数据流的优先级顺序,进行数据流处理。
70.在步骤104中,应用层确定性控制系统中的典型事件,包括但不限于控制事件、敏感业务事件、和或监测事件,各设备对应的应用层确定性代理发现事件并上传,应用层确定性中间件接收并处理事件,依据确定性管理策略控制各类设备的配置更新。
71.在步骤104中,对于应用层确定性控制系统的数据流处理优先级,网络方面,按应用层确定性数据流、2-3层确定性数据流、普通数据流分类处理。通过增加应用层确定性数据流的标志方法,实现控制链精细化地管理和调度。计算方面,在收到计算任务后,依据任务的确定性需求,通过调整处理器、进程数、gpu等手段,在确定的服务质量要求下完成计算任务。
72.在步骤104中,优先判断该数据流是否属于控制数据流,若属于控制数据流,优先采用上传通道上传到所述应用层确定性中间件,并在该数据流对应的设备上更新统计数据。上传通道可以是专用线路、vpn或以太网;若不属于控制数据流,再判断是否属于敏感性业务数据流,如果属于敏感性业务数据流,则采用网络设备的确定性技术处理方法。在同时存在应用层确定性数据流、2层时间敏感网络数据流、3层确定性网络数据流,则层数越高的业务数据流优先级越高;若不属于敏感性业务数据流,再判断是否处于监测数据流或普通数据流,根据对应的流表条目进行处理。
73.在步骤104中每收到一个具体的事件之后,应用层确定性中间件会进行处理,除非应用关系依赖图被删除,或者相应的任务完全终止,否则发现事件并处理事件的过程将不
断监听和循环。
74.本发明目的在于通过一种面向“网边端云”协同的应用层确定性中间件,实现“网边端云”协同所需的工业网络部署、应用层确定性软件注册、网络事件监测、应用层确定性决策、网络配置下发,为后续实现复杂应用的全局协同提供有效基础架构和技术手段。
75.图2为应用注册流程实施例。
76.在完成确定性网络中所有网络设备的部署后,可进行应用层确定性的其他设备的部署。为了保障整个系统的灵活扩展性和安全性,由各类终端设备主动注册到应用层确定性中间件,在应用层确定性中间件审核批准后,再将应用列入到确定性应用表。
77.各类终端设备注册的过程包含以下步骤201~210:
78.步骤201、搭建确定性网络,运行cuc或cnc。
79.在步骤201中,工业终端设备、边缘计算设备、网路控制设备和云计算中心都是通过确定性网络互联,那么根据确定性网络的能力水平,应用层确定性中间件服务器可以选择直接使用cnc或cuc的接口进行控制,可以进一步与现有网络兼容。
80.步骤202、运行应用层确定性中间件服务器,采用配置模块初始化应用层确定性中间件。
81.在步骤202中,在应用层确定性中间件服务器上运行应用层确定性中间件(软件),采用配置模板初始化应用层确定性中间件,可以在应用层确定性中间件中预置几种典型的模板,从而加快部署的效率。配置模块会搜索本地或者云平台存储的模板,依据分类或者匹配算法选择合乎要求的模板进行配置。
82.步骤203、将cuc或cnc注册到应用层确定性中间件。
83.步骤204、完成应用层确定性中间件和网络控制设备时钟同步和配置同步。
84.在步骤203和204中,先将网络控制设备注册到应用层确定性中间件,在完成相关的注册之后,将完成应用层确定性中间件和网络控制设备的时钟同步与配置同步,相关的接口遵循网络控制器的相关参数。
85.步骤205、判断是否存在需要添加到应用层确定性中间件服务器的应用清单、参与端网边协同的设备。
86.在步骤205中,如果判断是否再添加边缘计算设备或工业终端设备,这时将根据生产线规模添加设备,并针对工业终端设备或者边缘计算设备分别进行处理。
87.步骤206a、若需要添加参与端网边协同的设备是工业终端设备,配置工业终端设备,安装对应的应用层确定性中间件代理。
88.步骤207a、将新添加的工业终端设备的确定性应用注册到应用层确定性中间件。
89.步骤206b、若需要添加参与端网边协同的设备是边缘计算设备,配置边缘计算设备,安装对应的应用层确定性中间件代理。
90.步骤207b、将新添加的边缘计算设备的确定性应用注册到应用层确定性中间件。
91.在步骤205、206a、206b、207a、207b中,判断需要添加注册的设备类型是工业终端设备还是边缘计算设备,分别将工业终端设备和边缘计算设备的确定性应用注册到所述应用层确定性中间件,对两个设备分别建立不同的参数列表,参数列表至少包含设备自身基本信息、应用基本信息、应用确定性需求、任务确定性需求。如果同一应用的所有任务都是同样的类别,则任务确定性需求为缺省值。如果同一应用的任务存在服务质量上的差异,则
需要在每一个任务创建时,提供在性能指标上不低于应用确定性需求的任务确定性需求。
92.在步骤206b和步骤207b中,确定性应用注册到应用层确定性中间件后,每一个具体的业务会上传自身的基本信息和确定性需求。边缘计算设备和工业终端设备会分别采用不同的参数列表,用以描述各类设备的资源、功能和服务。
93.步骤208、完成应用层确定性中间件和新添加设备的时钟同步和配置同步。
94.在步骤208中,将应用层确定性中间件的时钟同步到新添加的各设备,将中间件的基本信息下发至各设备,提供初始的配置协调。
95.步骤209、判断是否还有未注册的设备。
96.在步骤209中,若还有未注册的设备,则进入步骤205继续添加设备。
97.步骤210、若没有未注册的设备,完成应用层确定性的应用注册
98.在步骤210中,同时也会开启对新添加设备的监听工作。
99.图3为应用依赖图生成方法流程实施例。
100.在本发明实施例中,为了实现应用层确定性,需要构建完整的多个应用参与的应用层确定性控制链集合,其中每一个控制链对应一个应用的一个任务,从而对整个应用层确定性控制链做闭环的服务质量管理。构建应用依赖图可以采用人工输入和自动学习两种方法,本发明实施例采用自动学习方法构建应用依赖图。
101.首先,通过已完成注册的确定性应用向所述应用层确定性中间件发起预运行流程,上报预运行信息,所述预运行信息至少包含应用层确定性业务编号、时间戳、确定性需求信和状态符。
102.在运行应用层确定性服务之前,由应用层确定性应用发起预运行流程,每一个涉及到的已注册应用会上传消息到应用层确定性中间件,中间件将消息添加到预运行信息队列中。
103.其次,通过所述应用层确定性中间件对收到的所述预运行信息根据五元组和应用层确定性业务编号建立独立的应用依赖图数据结构,按照时间戳进行排序、按照地址信息决定数据结构中的父节点和子节点,形成有向无环图。
104.最后,通过所述应用层确定性中间件定期监听网络事件,若收到新的确定性应用上传的预运行信息,则动态更改应用依赖图。
105.具体地,在运行正式的生产活动前通过预运行环节上报应用层确定性控制链的全过程。在所有设备在注册到中间件服务器上后,会将收到的预运行信息上报至应用层确定性中间件,预运行信息采用专门的数据结构,包含负载估计信息。应用层确定性控制链的发起设备可以是工业终端设备、边缘计算设备、云化设备中的某一个。预运行消息将发送模拟的业务数据,数据中的载荷部分需要包括但不限于应用层确定性业务编号、时间戳、确定性需求信息、状态符,根据业务特征可以增加额外信息。对于任意的下一条设备,在收到预运行信息后,需要将该信息上报给应用层确定性中间件服务器。应用层确定性中间件服务器监听这些上报信息,根据五元组(本文件以太网为例,五元组包括目的mac、源mac、目的ip、源ip、端口号)建立一个独立的应用依赖图数据结构,该应用依赖图与五元组匹配的应用唯一对应,每收到一个新的上报信息后,根据时间戳进行排序,根据应用层确定性业务编号决定更新的应用层确定性控制链,在结合源设备和目的设备更新数据结构中的父节点和子节点。最终形成一个有向无环图,由于工业生产线的业务相对固定,因此该应用层确定性控制
链可以长期执行。待应用层确定性控制链收到状态符为终止的信息后,会将该应用层确定性控制链的需求进行转化、拆解和下发。
106.假设创建一个新的应用依赖图g
app
,g
app
={e
com
,v
dev
},其中e
com
是两个设备间的一次单向通信元数据的集合,单向通信元数据是对两个应用间有向通信的抽象表达,描述包括但不限于这次通信的确定性需求、业务类型、sla信息和通信开销。e
com
={e1,e2......,em},每个单向通信的附加信息中描述确定性服务质量约束要求,e1,e2......,em是集合中包含的具体的单向通信元数据,分别是编号为1的单向通信元数据,编号为2的单向通信元数据,
……
,编号为m的单向通信元数据,m是集合中单向通信元数据个数,v
dev
是工业终端设备和边缘计算设备的集合。
107.目前企业内部网络中的应用层确定性控制链集合c
app
={c1,c2......,cn},一个应用层确定性控制链对应一个应用的一个任务,由一个应用依赖图表达,某个应用层确定性控制链ci的确定性业务编号为i,用于记录应用业务i的跨应用控制流程,n是应用层确定性控制链集合中应用层确定性控制链的总数。每一个控制链都有一个对应的g
app
,即ci={hi,i,g
app
},其中hi是应用层确定性控制链对应的应用的五元组信息。
108.当应用层确定性中间件服务器收到一个新的上传数据包p
in
时,触发应用依赖图生成或更新算法。
109.即,从所述应用层确定性中间件的预运行信息列队中遍历并按顺序提取预运行信息,提取该预运行信息中的五元组h
in
和应用层确定性业务编号;判断该预运行信息中的h
in
是否与c
app
中已存在的某个ci一致,且该预运行信息的应用层确定性业务编号是否等于i。
110.若二者均一致,则判断该预运行信息的状态符:如果已存在的应用层确定性控制链没有状态符为开始状态符的第一集合连接,则新建一个单向通信元数据ei,提取该预运行信息的载荷,更新单向通信元数据的确定性服务质量参数,再将单向通信元数据ei添加到已存在的应用层确定性控制链的应用依赖图中,所述确定性服务质量参数包括应用所需的时延、带宽、丢包率、计算复杂度、优先级信息中的至少一项。如果已存在的应用层确定性控制链中有状态为开始状态符的第一集合连接,则与已存在的状态为开始状态符的第一集合连接比较时间戳,保留时间戳数值较小的单向通信元数据,再提取该预运行信息的载荷,更新单向通信元数据ei的确定性服务质量参数。
111.当状态符是结束状态符时,将该预运行信息的源设备应用和目的设备应用中不重复的应用层确定性控制链添加进ci对应的应用依赖图,根据该预运行信息生成第二集合,将该第二集合添加进e
com
,通知所述应用层确定性中间件完成应用依赖图更改,提取该预运行信息的载荷,更新ei的确定性服务质量参数。
112.当状态符是s
rly
时,将该预运行信息的源设备应用和目的设备应用中不重复的应用层确定性控制链添加进ci对应的应用依赖图,根据该预运行信息生成第三集合,将该第三集合添加进e
com
,提取该预运行信息的载荷,更新ei的确定性服务质量参数。当状态符是不是以上三种状态时,通过所述应用层确定性中间件记录未知状态符。
113.否则,若二者中至少一个不相同,先建立一个新的应用层确定性控制链,再将该预运行信息的源设备应用和目的设备应用添加进新的应用层确定性控制链对应的应用依赖图,再根据该预运行信息生成第四集合,将第四集合添加进e
com
。
114.其中,e
com
是两个设备间的一次单向通信的集合,ci是现有的应用层确定性控制链
集合中、应用层确定性业务编号为i的应用层确定性控制链,i是应用层确定性业务编号,s
rly
是预运行过程中,中继节点上报信息携带的状态符,即中继状态符,ei是编号为i的单向通信元数据。
115.在本发明实施例中,上述应用依赖图生成算法,具体包含以下步骤301~322:
116.步骤301、从信息队列中提取一个预运行信息p
in
。
117.步骤302、从p
in
中提取五元组h
in
,提取应用层确定性业务编号id。
118.在步骤301和302中,从所述应用层确定性中间件的预运行信息队列中遍历并按顺序提取预运行信息,提取该预运行信息中的五元组和应用层确定性业务编号。
119.需要说明的是,步骤301~322是循环执行步骤,需从预运行信息队列中遍历所有预运行消息,先按顺序提取第一个预运行消息。
120.步骤303、判断h
in
是否存在于c
app
中的ci,且id是否和i相等。
121.步骤304、若满足h
in
是存在于c
app
中的ci,且id和i相等,则继续识别状态符。
122.步骤305、自步骤304,识别到状态符是s
start
。
123.在步骤305中,s
start
是预运行开始的第一条上报信息携带的状态符,即开始状态符。
124.步骤306、根据p
in
生成第一集合连接e1。
125.在步骤306中,第一集合连接是两个设备间的一次单向通信的集合。
126.步骤307、如果ci中没有状态为s
start
的e1连接,添加入ci对应的g
app
,直接进入步骤318。
127.在步骤307中,s
start
表示预运行开始的第一条上报信息携带的状态符。
128.步骤308、如果ci中有状态为s
start
的e1连接,与现有状态为为s
start
的e1连接比较时间戳,保留时间戳较小的e1连接,直接接入步骤318。
129.步骤309、自步骤304,识别到状态符是s
end
。
130.在步骤309中,s
end
是代表预运行结束的终止状态符,即结束状态符。
131.步骤310、将p
in
的源设备应用和目的设备应用中不重复的添加进ci对应的g
app
。
132.步骤311、根据p
in
生成第二集合e2,将e2添加进e
com
。
133.步骤312、通知应用层确定性中间件ci已完成,进入步骤318。
134.步骤313、自步骤304,识别到状态符是s
rly
。
135.在步骤313中,s
rly
表示是预运行过程中,中继节点上报信息携带的状态符。
136.步骤314、将p
in
的源设备应用和目的设备应用中不重复的添加进ci对应的g
app
。
137.步骤315、根据p
in
生成第三集合e3,将e3添加进e
com
。进入步骤318。
138.步骤316、自步骤304,识别到状态符是未知状态符。
139.步骤317、记录未知状态符。进入步骤318。
140.步骤318、提取p
in
的时间戳。
141.步骤319、遍历ci的e
com
,到时间戳最大的集合ej。
142.步骤320、若满足以下至少一项:h
in
不是存在于c
app
中的ci,id和i不相等,则新建一个新的应用层确定性控制链c
new
。
143.步骤321、将p
in
的源设备应用和目的设备应用中不重复的添加进c
new
对应的g
app
。
144.步骤322、根据p
in
生成第四集合e4,将e4添加进e
com
。
145.图4为应用层确定性系统事件处理方法流程实施例。
146.在本发明实施例中,应用层确定性中间件会不断侦听整个系统中出现的所有事件,当收到一个新的事件之后,要判断事件的类别。
147.对发现的新事件判断事件类别:若是控制事件,通过所述应用层确定性中间件识别控制事件的事件参数,采用对应的策略,获取对应的决策结果;若是敏感业务事件,识别是应用层确定性事件还是2-3层确定性事件,针对每个事件的分布特征,确定是周期性事件还是突发性事件,对周期性事件实施增量式系统配置更新,对突发性事件实施变更网络配置;若是监测事件,通过所述应用层确定性中间件采用预先设定的策略变更网络配置。
148.应用层确定性中间件会不断侦听整个系统中出现的所有事件,当收到一个新的事件之后,应用层确定性系统事件处理方法,具体包含以下步骤401~408:
149.应用层确定性中间件会不断侦听整个系统中出现的所有事件,当收到一个新的事件之后,要判断事件的类别。在本系统中主要分三类事件,具体包括控制事件、敏感业务事件和监测事件,每一类事件代表着一种不同的消息类型。
150.步骤401、判断事件的类别。
151.步骤402、自步骤401,识别到是控制事件。
152.在步骤402中,控制事件包含以下至少一个状态:预运行、注册或响应、状态同步、时钟同步、配置下发。
153.步骤403、通过分类器识别控制事件的状态。
154.步骤404、针对控制事件的每种状态具体决策。
155.在步骤401~404中,控制事件主要是针对网络中的运行,注册响应状态同步等进行管理。在收到事件信息之后,应用层确定性中间件根据事件类型和事件参数决策具体的操作与配置,通过分类器来识别不同的事件,根据事件对应的应用层确定性中间件策略,来决定每种事件的决策结果。
156.步骤405、自步骤401,识别到是敏感业务事件。
157.在步骤405中,敏感业务事件包含:应用层确定性事件或2-3层确定性事件。
158.步骤406、判断敏感业务事件的分布特征。
159.步骤407、对周期性事件实施增量式系统配置更新。
160.步骤408、对突发性事件实施变更网络配置。
161.在步骤405~408中,一共包含两类敏感业务事件,一类是应用层确定性事件,另外一类是2-3层的确定性事件,将针对每个事件的分布特征,进一步分成周期性的事件和突发性事件。周期性事件是定期上报的信息,不会对整个网络带来巨大的变化,所以将实施增量式的系统配置更新。突发性的事件比较离散,代表网络中的设备应用或者是数据发生了突然变化,所以就需要进一步考虑大范围变更网络配置。
162.步骤409、自步骤401,识别到是监测事件。
163.在步骤409中,监测事件,包含:来自网络设备监测、边缘计算设备监测和应用监测。
164.步骤410、对监测事件变更网络配置。
165.在步骤409~410中,监测事件是对网络中的各类设备及应用进行检测,处理方式主要取决于中间件采用的策略,一般不需要进行重新配置。
166.图5为数据流处理方法流程实施例。
167.若相同设备或不同设备的确定性应用之间存在通信,确定性应用之间通信的数据流报文将根据控制数据流、应用层确定性数据流、2-3层确定性数据流和普通数据流的分类进行处理。
168.优先判断该数据流是否属于控制数据流,若属于控制数据流,优先采用上传通道上传到所述应用层确定性中间件,并在该数据流对应的设备上更新统计数据。若不属于控制数据流,再判断是否属于敏感性业务数据流,如果属于敏感性业务数据流,则采用网络设备的确定性技术处理方法。若不属于敏感性业务数据流,再判断是否处于监测数据流或普通数据流,根据对应的流表条目进行处理。
169.确定性应用数据流处理方法,具体包含以下步骤501~507:
170.步骤501、判断数据流是否是控制数据流。
171.步骤502、若是控制数据流,采用上传通道传输控制数据流,并更新统计数据。
172.步骤503、若不是控制数据流,继续判断数据流是否是敏感业务数据流。
173.步骤504、若是敏感业务数据流,采用网络设备采用的确定性技术处理。
174.步骤505、若也不是敏感业务数据流,判断数据流是否是监测数据流。
175.步骤506、若是监测数据流,根据监测数据流的流表条目处理数据包。
176.步骤507、若不是监测数据流,则按普通数据流处理,根据普通数据流的流表条目处理数据包。
177.在步骤501~507中,在组建应用层确定性控制系统之后,各种事件采用自描述的方法解释如何去处理不同设备的上报事件,事件数据和通信数据独立处理,在应用层确定性系统中增加了应用层确定性的通信数据,因此需要重新对不同类型数据的优先级进行规范。
178.在收到一个数据流的数据后,优先判断这个数据流是否是属于控制数据流,因为从数量与概率分布的角度来看,控制数据相对较少,同时它的重要性和实时性都比较高。可以采用sketch、bloom等过滤器分类处理。控制类数据优先采用上传通道传到应用层确定性中间件。同时在这个对应设备上更新相应的统计数据。
179.如果不是控制类数据流,那将判断它是否是敏感的业务数据流,如果是,则采用网络设备的确定性技术处理。如果是tsn则采用门控手段,如果是dip则进行相应的一些数据封装。
180.如果不是敏感业务数据流,再判断是否是监测数据流,或者是普通数据流,这两类都将根据网络设备上的流表条目进行处理,两者在优先级qos(quacity of service,服务质量)保障等方面将分别进行配置。
181.图6为本发明系统实施例,是用于实现“网边端云”之间确定性控制链的工业互联网应用层确定性系统。
182.一种应用层确定性控制系统,使用本发明实施例任一项所述方法,包含:应用层确定性中间件服务器1、工业终端设备2、网络控制设备3、边缘计算设备4和云计算中心5。
183.所述应用层确定性中间件服务器和所述工业终端设备、网络控制设备、边缘计算设备和队列之间通过确定性网络建立连接;所述工业终端设备、网络控制设备、边缘计算设备和云计算中心之间通过确定性网络建立连接。
184.所述应用层确定性中间件服务器,用于加载应用层确定性中间件,通过所述应用层确定性中间件,对工业终端设备、网络控制设备、边缘计算设备和云计算中心的确定性应用实现注册,构建全局应用依赖图和进行策略初始化配置。
185.进一步地,应用层确定性中间件服务器包含:
186.第一发送模块,向工业终端设备、网络控制设备、边缘计算设备和或云计算中心的确定性应用发送注册成功信息;
187.第一确定模块,用于将工业终端设备、网络控制设备、边缘计算设备和或云计算中心的确定性应用在网络应用层上进行注册;根据各所述确定性应用之间的协同关系,构建应用依赖图;对确定性应用提出的确定性需求采用先分配网络资源、再分配边缘资源、再分配云资源的优先顺序进行策略初始化配置;
188.第一接收模块,用于接收工业终端设备、网络控制设备、边缘计算设备和或云计算中心的确定性应用发送的注册请求信息。
189.在本发明实施例中,工业终端设备网络控制设备、边缘计算设备和云计算中心都是应用层确定性中间件代理设备,每个设备上安装有应用层确定性中间件代理软件。
190.例如,用于实现工业终端设备功能的应用层确定性中间件代理设备,包含:第二发送模块,用于向应用层确定性中间件服务器发送注册请求信息;第二确定模块,用于获取确定性应用的配置信息;第二接收模块,用于接收应用层确定性中间件服务器发送的注册成功信息。
191.需要说明的是,用于实现边缘计算设备和云计算中心的应用层确定性中间件代理设备,与用于实现工业终端设备功能的应用层确定性中间件代理设备功能相同,这里不赘述。
192.在本发明实施例中,所述应用层确定性控制系统通过集中控制架构实现,包含应用层确定性中间件与各应用层确定性代理的系统。
193.应用层确定性中间件负责策略管理、状态显示、数据管理等功能,可实现应用注册管理,决策闭环调度,状态同步,数据流监测,规约转换,配置更新和消息队列。所述应用层确定性代理监测应用及设备的状态,可通过主被动相结合的方式定期上报资源信息,在接收应用层确定性配置后,调用应用执行相关操作。所有“网边端云”设备安装各自的应用层确定性代理后,通过应用层确定性代理注册到中间件,上传基本信息和确定性需求。
194.应用层确定性中间件服务器包含应用依赖模块,基于有向无环图生成应用依赖图,用来描述应用的确定性应用层确定性控制链,动态维护应用之间的依赖关系。依据每一个业务的确定性需求,基于“网边云端”设备的应用层确定性控制链,由应用层确定性中间件统一制定策略,拆分为“网边云端”设备确定性配置,并下发至所有设备。
195.在工业互联网网络架构中,确定性网络,用于确保各设备间确定性单对设备间确定性通信的网络,包括但不限于采用tsn、dip等网络实现。
196.应用层确定性中间件服务器:该设备提供应用层确定性服务,维护应用注册表,建立并管理应用层确定性控制链。该服务器是整个架构中的时钟同步主设备。定时同步被管理设备的状态信息,接收网络控制器上传的网络监测结果。针对整个应用层确定性控制链,将每个应用的确定性规约转换为各设备的配置信息,再通过中间件接口下发至目标设备。
197.工业终端设备:该类设备控制、监测生产线,其上承载的应用一般是面向具体生产
任务的专用程序。在安装应用层确定性代理后,将向应用层确定性中间件发送确定性服务需求说明。该类设备给自身发起的确定性应用分配一个标识,用于建立应用层确定性业务并在全网中被唯一识别。一般情况下,该类设备作为确定性控制链的发起方。
198.网络控制设备:该类设备管理确定性网络,维护网络全局视图,并调度网络设备如交换机、路由器上的转发表和转发队列。
199.边缘计算设备:该类设备接收工业终端设备的请求、数据,在经过算法处理后反馈给其他设备,提供计算资源与存储资源。
200.云计算中心:该类平台提供云基础设施及其上的服务软件,视边缘计算设备的算力补充和存储补充。
201.应用层确定性代理:该类软件被安装到所有参与应用层确定性控制链的设备,负责提出注册申请,定期上报设备状态和应用信息,维护时钟同步,在宿主设备上接收并执行确定性配置。
202.本技术还提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本技术中任一实施例所述的方法。
203.进一步地,本技术还提出一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,所述处理器执行所述计算机程序时实现如本技术任一实施例所述的方法。
204.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
205.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
206.还需说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
207.以上所述仅为本发明的实施例而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。
技术特征:
1.一种应用层确定性控制方法,用于包含工业终端设备、网络控制设备、边缘计算设备、云计算中心的网络,其特征在于,包含以下步骤:将工业终端设备、网络控制设备、边缘计算设备和或云计算中心的确定性应用在网络应用层上进行注册;在网络应用层,根据各所述确定性应用之间的协同关系,构建应用依赖图,所述应用依赖图是描述多个设备上的确定性应用间关联的数据结构;在网络应用层,对确定性应用提出的确定性需求采用先分配网络资源、再分配边缘资源、再分配云资源的优先顺序进行策略初始化配置。2.如权利要求1所述应用层确定性控制方法,其特征在于,还包含:在网络应用层,对确定性网络中开启的应用进行监测:若发现新事件,根据事件类别和事件参数进行具体操作决策;若存在确定性应用之间通信的数据流,则根据控制数据流、应用层确定性数据流、2-3层确定性数据流和普通数据流的优先级顺序,进行数据流处理。3.如权利要求1所述应用层确定性控制方法,其特征在于,将工业终端设备、网络控制设备和边缘计算设备的确定性应用在网络应用层上进行注册的步骤,进一步包含:将所述网络控制设备的确定性应用在网络应用层进行注册,并对网络控制设备的确定性应用和网络应用层进行时钟同步配置;判断需要添加注册的设备类型是工业终端设备还是边缘计算设备,分别将工业终端设备和边缘计算设备的确定性应用在网络应用层进行注册,对两个设备分别建立不同的参数列表,参数列表至少包含设备自身基本信息;将网络应用层的时钟同步到添加注册的设备。4.如权利要求1所述应用层确定性控制方法,其特征在于,在网络应用层,根据各所述确定性应用之间的协同关系,采用自动学习方法构建全局应用依赖图,具体为:通过已完成注册的确定性应用向网络应用层发起预运行流程,上报预运行信息,所述预运行信息至少包含应用层确定性业务编号、时间戳、确定性需求信和状态符;通过网络应用层对收到的所述预运行信息根据五元组和应用层确定性业务编号建立独立的应用依赖图数据结构,按照时间戳进行排序、按照地址信息决定数据结构中的父节点和子节点,形成有向无环图;通过网络应用层定期监听网络事件,若收到新的确定性应用上传的预运行信息,则动态更改应用依赖图。5.如权利要求1所述应用层确定性控制方法,其特征在于,在网络应用层,根据各所述确定性应用之间的协同关系,采用人工输入方法构建全局应用依赖图。6.如权利要求1所述应用层确定性控制方法,其特征在于,所述方法还包含:响应于确定性业务出现事件,通过识别到事件的设备上传该事件到网络应用层,通过网络应用层对发生变化的确定性业务进行资源调度和重新配置。7.如权利要求2所述应用层确定性控制方法,其特征在于,所述根据事件类别和事件参数进行具体操作决策的步骤,进一步包含:对发现的新事件判断事件类别:若是控制事件,通过网络应用层识别控制事件的事件参数,采用对应的策略,获取对应
的决策结果;若是敏感业务事件,识别是应用层确定性事件还是2-3层确定性事件,针对每个事件的分布特征,确定是周期性事件还是突发性事件,对周期性事件实施增量式系统配置更新,对突发性事件实施变更网络配置;若是监测事件,通过网络应用层采用预先设定的策略变更网络配置。8.如权利要求2所述应用层确定性控制方法,其特征在于,所述进行数据流处理的步骤,进一步包含:优先判断该数据流是否属于控制数据流,若属于控制数据流,优先采用上传通道上传到网络应用层,并在该数据流对应的设备上更新统计数据;若不属于控制数据流,再判断是否属于敏感性业务数据流,如果属于敏感性业务数据流,则采用网络设备的确定性技术处理方法;若不属于敏感性业务数据流,再判断是否处于监测数据流或普通数据流,根据对应的流表条目进行处理。9.如权利要求4所述应用层确定性控制方法,其特征在于,预运行信息的五元组和应用层确定性业务编号已存在于应用层确定性控制链,且预运行信息对应的状态符是开始状态符,所述动态更改应用依赖图的步骤,包含:从预运行信息队列中提取任意一个预运行信息中的五元组和应用层确定性业务编号;当该预运行信息的五元组和应用层确定性业务编号已存在于应用层确定性控制链,且该预运行信息对应的状态符是开始状态符时,根据该预运行信息生成新的第一集合连接,所述预运行信息包括协议字段信息、应用主动填写的信息、仿真数据中的至少一项;如果已存在的应用层确定性控制链没有状态符为开始状态符的第一集合连接,则新建一个单向通信元数据,提取该预运行信息的载荷,更新单向通信元数据的确定性服务质量参数,再将单向通信元数据添加到已存在的应用层确定性控制链的应用依赖图中,所述确定性服务质量参数包括应用所需的时延、带宽、丢包率、计算复杂度、优先级信息中的至少一项;如果已存在的应用层确定性控制链中有状态为开始状态符的第一集合连接,则与已存在的状态为开始状态符的第一集合连接比较时间戳,保留时间戳数值较小的单向通信元数据,再提取该预运行信息的载荷,更新单向通信元数据的确定性服务质量参数。10.如权利要求4所述应用层确定性控制方法,其特征在于,预运行信息的五元组和应用层确定性业务编号已存在于应用层确定性控制链,且预运行信息对应的状态符是结束状态符,所述动态更改应用依赖图的步骤,包含:从预运行信息队列中提取任意一个预运行信息中的五元组和应用层确定性业务编号;当该预运行信息的五元组和应用层确定性业务编号已存在于c
i
,且该预运行信息对应的状态符是结束状态符时,将该预运行信息的源设备应用和目的设备应用中不重复的应用层确定性控制链添加进c
i
对应的应用依赖图,根据该预运行信息生成第二集合,将该第二集合添加进e
com
,完成应用依赖图更改,提取该预运行信息的载荷,更新e
i
的确定性服务质量参数;其中,c
i
是已存在的应用层确定性控制链集合中、应用层确定性业务编号为i的应用层确定性控制链,i是元素编号,e
i
是编号为i的单向通信元数据,e
com
是两个设备间的一次单
向通信的集合。11.如权利要求4所述应用层确定性控制方法,其特征在于,预运行信息的五元组和应用层确定性业务编号已存在于应用层确定性控制链,且预运行信息对应的状态符是中继状态符,所述动态更改应用依赖图的步骤,包含:从预运行信息队列中提取任意一个预运行信息中的五元组和应用层确定性业务编号;当该预运行信息的五元组和应用层确定性业务编号已存在于c
i
,且该预运行信息对应的状态符是中继状态符时,将该预运行信息的源设备应用和目的设备应用中不重复的应用层确定性控制链添加进c
i
对应的应用依赖图,根据该预运行信息生成第三集合,将该第三集合添加进e
com
,提取该预运行信息的载荷,更新e
i
的确定性服务质量参数;其中,c
i
是已存在的应用层确定性控制链集合中、应用层确定性业务编号为i的应用层确定性控制链,i是元素编号,e
i
是编号为i的单向通信元数据,e
com
是两个设备间的一次单向通信的集合。12.如权利要求4所述应用层确定性控制方法,其特征在于,预运行信息的五元组和应用层确定性业务编号构成的唯一识别信息不存在于任何应用层确定性控制链,所述动态更改应用依赖图的步骤,包含:从预运行信息队列中提取任意一个预运行信息中的五元组和应用层确定性业务编号;当该预运行信息的五元组和应用层确定性业务编号中至少一个不存在于任何已存在的c
i
,先在建立一个新的应用层确定性控制链,再将该预运行信息的源设备应用和目的设备应用添加进新的应用层确定性控制链对应的应用依赖图,再根据该预运行信息生成第四集合,将第四集合添加进e
com
;其中,c
i
是已存在的应用层确定性控制链集合中、应用层确定性业务编号为i的应用层确定性控制链,i是元素编号,e
com
是两个设备间的一次单向通信的集合。13.一种应用层确定性中间件服务器,用于实现权利要求1~12任一项所述方法,其特征在于,包含:第一发送模块,用于向工业终端设备、网络控制设备、边缘计算设备和或云计算中心的确定性应用发送注册成功信息;第一确定模块,用于将工业终端设备、网络控制设备、边缘计算设备和或云计算中心的确定性应用在网络应用层上进行注册;根据各所述确定性应用之间的协同关系,构建应用依赖图;对确定性应用提出的确定性需求采用先分配网络资源、再分配边缘资源、再分配云资源的优先顺序进行策略初始化配置;第一接收模块,用于接收工业终端设备、网络控制设备、边缘计算设备和或云计算中心的确定性应用发送的注册请求信息。14.一种应用层确定性中间件代理设备,用于实现权利要求1~12任一项所述方法,其特征在于,包含:第二发送模块,用于向应用层确定性中间件服务器发送注册请求信息;第二确定模块,用于获取确定性应用的配置信息;第二接收模块,用于接收应用层确定性中间件服务器发送的注册成功信息。15.一种应用层确定性控制系统,其特征在于,包含:权利要求13所述的应用层确定性中间件服务器和权利要求14所述的应用层确定性中间件代理设备。
16.一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1~12任意一项所述的方法。17.一种电子设备,其特征在于,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1~12任意一项所述的方法。
技术总结
本发明公开一种应用层确定性控制方法,用于包含工业终端设备、网络控制设备、边缘计算设备和云计算中心的网络,包含以下步骤:将工业终端设备、网络控制设备、边缘计算设备和云计算中心的确定性应用在网络应用层进行注册;在网络应用层,根据各所述确定性应用之间的调用关系,构建应用依赖图;在网络应用层,对确定性应用提出的确定性需求采用先分配网络资源、再分配边缘计算资源、再分配云资源的优先顺序进行调度和配置。本申请还包含使用应用层确定性方法的系统。本发明解决现有工业互联网网络的“网边端云”控制确定性不闭环和动态协同控制难问题,尤其适用于企业互联网。尤其适用于企业互联网。尤其适用于企业互联网。
技术研发人员:
付韬 张恒升 段世惠 陈洁 朱瑾瑜
受保护的技术使用者:
中国信息通信研究院
技术研发日:
2022.09.05
技术公布日:
2022/12/8