CN113867931A - 雾网络中的应用建模与资源管理 - Google Patents
雾网络中的应用建模与资源管理 Download PDFInfo
- Publication number
- CN113867931A CN113867931A CN202110718909.0A CN202110718909A CN113867931A CN 113867931 A CN113867931 A CN 113867931A CN 202110718909 A CN202110718909 A CN 202110718909A CN 113867931 A CN113867931 A CN 113867931A
- Authority
- CN
- China
- Prior art keywords
- fog
- application
- network
- resource
- micro
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- 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/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3433—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3447—Performance evaluation by modeling
-
- 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/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Mathematical Physics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Computer And Data Communications (AREA)
Abstract
本公开涉及网络中的应用建模与资源管理。提出了一种用于在具有多个雾节点的雾网络中分配雾应用的方法。该方法包括:‑提供应用模型;‑提供反映雾网络属性的雾网络图像;‑在雾网络图像上执行应用模型的资源使用测试,并且接收针对雾网络的资源要求;‑基于应用模型创建具体应用模型,其中具体应用模型包含接收到的资源要求;以及‑在雾网络的雾节点中的一个或多个雾节点上执行具体应用模型的分配。
Description
技术领域
本公开一般涉及雾计算网络,并且特别涉及在自动系统上实现的雾网络的应用建模。
背景技术
物联网(IoT)的出现正在将网络计算和资源的可用性扩展到先前被排除在数据联网环境之外的各种设备和系统。彼此独立工作并且手动编程的设备现在可以一起工作并且彼此交互。复杂系统包括作为自动化系统协同工作的多个设备,该自动化系统与其环境做出反应并且与之交互。
这样做的目标是通过使得具有各种复杂性和目的的机器能够在不依赖于人工干预和/或通过经由接口的机器的手动编程的交互的情况下进行通信来实现更高水平的自动化。以这种方式启用网络的大多数设备、传感器和致动器(“物”)通常将被包括在提供新形式自动化的更大系统中。工业自动化系统变得“更智能”,并且雾计算可以有助于提高工程效率。
雾计算通过将集中式云的计算、联网和存储能力移近机器和设备来帮助启用这些更大系统。鉴于这样的系统的预计规模,预期对雾节点资源的需求会很高。
先前可用的云解决方案(例如,计算和存储)具有很多缺点和限制,这些缺点和限制妨碍了先前可用的云解决方案满足IoT应用的性能需求。例如,先前可用的云解决方案在以下方面的性能不足:满足低时延阈值;支持高度移动的端点设备;以及提供实时数据分析和决策。
雾计算网络(或雾网络或雾环境)正在被开发作为满足IoT应用的性能需求的解决方案。雾网络提供更接近网络边缘的计算和存储资源,而不是先前可用的云解决方案的远程和集中式集群。雾网络的端点客户端设备和近用户端点设备被配置为在靠近寻求资源的事物的网络边缘处协同服务客户端应用。
雾计算网络(或雾网络或雾环境)正在被开发作为满足IoT应用的性能需求的解决方案。雾网络提供更接近网络边缘的计算和存储资源,而不是先前可用的云解决方案的远程和集中式集群。雾网络的端点客户端设备和近用户端点设备被配置为在靠近寻求资源的事物的网络边缘处协同服务客户端应用。
雾网络中应用的分配需要基于模型进行计算。通常,如果雾网络发生变化或者如果应用第一次在网络上使用,则应用模型被手动适配。雾网络使得能够在底层自动化系统的设备上运行分布式应用。雾计算的一个关键特征是应用的部署、更新和删除需要最少的手动工作。
相应的,存在着改进雾网络中资源管理、应用分配以及自动化的需求。
发明内容
提出了一种用于在具有多个雾节点的雾网络中分配雾应用的方法。该方法包括:-提供应用模型;-提供反映雾网络属性的雾网络图像;-在雾网络图像上执行应用模型的资源使用测试,并且接收针对雾网络的资源要求;-基于应用模型创建具体应用模型,其中具体应用模型包含所接收到的资源要求;以及-在雾网络的一个或多个雾节点上执行具体应用模型的分配。
提出了一种在具有多个雾节点的雾网络中分配雾应用的方法。该方法包括:-利用微雾模板的清单提供通用应用模型,其中微雾模板包括如何部署和执行一个或多个微雾的规格,以及针对微雾的托管的要求,和/或针对微雾的期望的可观测性,期望的可观测性指示微雾实例应当跨系统传播有多广泛;-提供具有多个设备的自动化系统,在该系统上实现具有多个雾节点的雾网络;-基于通用应用模型、自动化系统和雾网络来创建具体应用模型,其中具体应用模型包括微雾的清单,并且针对至少一个微雾针对托管微雾的雾节点要求和/或针对多个微雾跨雾节点的最大传播;-在一个或多个雾网络的雾节点上执行具体应用模型的微雾的分配,其中雾节点满足对应于微雾的雾节点要求,和/或其中跨雾节点的传播少于跨雾节点的最大传播。
用于管理雾网络的资源容量的方法,其中雾网络在包括多个自动化设备的自动化系统上实现,其中多个自动化设备的一个或多个设备操作雾节点,该方法包括:-提供一个或多个雾代理,其中每个雾代理是在一个自动化设备上操作的软件,其中每个雾代理取回关于对应自动化设备的可用资源容量的信息;以及-由雾代理基于取回的雾代理信息,管理一个或多个雾节点对对应自动化设备的资源容量的访问。
本公开还提出了具有多个雾节点的雾网络,其中,雾网络被配置为执行如本文所描述的方法的各种实施例。还提出了自动化系统,其中自动化系统包括多个计算设备,其中计算设备托管雾网络,该雾网络被配置为执行本文所描述方法的各种实施例。
本领域技术人员将在阅读以下具体描述并且查看附图时认识到附加的特征和优势。
附图说明
图1图示了具有多个设备的自动化系统的示例。雾网络被这些设备所托管。
图2图示了根据本公开的用于分配应用模型的方法的流程图的示例。
图3图示了根据本公开的用于分配应用模型的方法的流程图的另一示例。
图4图示了根据本公开的用于管理雾网络资源的方法的示例。
具体执行方式
在下面的详细描述中,参考形成其一部分的附图,并且附图中通过说明方式示出了本发明的特定实施例。
如本文中使用的,术语“具有(having)”、“包含(containing)”、“包括(including)”、“包括(comprising)”等是开放式术语,其指示所述元素或特征的存在,但不排除附加元素或特征。
应当理解,可以使用其他实施例,并且可以在不脱离本发明的范围的情况下进行结构或逻辑改变。因此,以下详细描述不应当被视为限制性的,并且本发明的范围由所附权利要求限定。本文中描述的实施例使用特定语言,其不应当被解释为限制所附权利要求的范围。除非明确指出相反,否则如此定义的每个实施例和每个方面可以与任何其他实施例或任何其他方面组合。
图1示出了在多个设备上实现的分布式控制系统(DCS)的示例性实施例。图1中的DCS是雾网络。雾计算也称为边缘计算或雾化。雾计算促进了终端设备与云计算数据中心之间的计算、存储和网络服务的运行。一些现有技术文件描述了雾计算与边缘计算之间的差异。然而,本申请没有区分雾计算和边缘计算的概念,并且至少在本发明的概念中认为这两者是相同的。因此,对雾计算的任何引用都可以是对边缘计算的引用,对雾应用的任何引用都可以是对边缘应用的引用,等等。
物理系统可以是自动化系统。经由例如传感器或致动器与其环境交互的任何系统都被视为自动化系统。自动化系统可以包括大量异构设备。该设备有时被称为“物”,并且事物彼此连接和彼此通信的概念也被称为“物联网”。
图1示出了可以形成自动化系统的多个设备。示出了雾网络、可选的远程服务中心和云。雾网络可以连接到云。云可以提供附加的计算资源容量,如存储器或CPU容量。可以收集设备的生成数据并且将其传输给云端以进行分析。虽然云提供了可扩展性的便利,但将越来越多的计算从自动化系统推入云的方法存在局限性,并且通常在技术上或经济上不可行。大量数据传输会产生自动化系统的时延阈值、可用带宽和延迟的实时反应等问题。
设备可以具有计算资源容量,例如CPU容量、存储器容量和/或带宽容量。一些设备的资源容量在图1中示例性地示出,以示出与该设备相对应的饼图,其中满资源容量为完整圆圈,空闲资源容量为圆圈的未填充部分,使用中的资源容量为圆圈的已填充部分。
一些设备被认为是“智能”设备,而一些设备被认为是“哑”设备。智能设备可以托管雾节点和/或可以提供资源容量。智能设备的一些示例是工业4.0设备、自动化机器、机器人系统、用户接口、网络设备、路由器、交换机、网关设备、服务器和类似设备。有些设备可能不托管雾节点,或者可能只有非常简单的任务,如“只读”设备或“零资源容量”设备。然而,这些“哑”设备仍然可以与雾网络交互,尽管它们不为除主要功能之外的其他任务提供资源容量,例如简单的传感器、简单的致动器或其他类似设备。
图1示出了具有少量设备的自动化系统的简单示例,以用于说明性。然而,其他自动化系统可以包括更多数目的设备。自动化系统通常可以是包括任何数目的设备的工厂或工业场所。自动化系统的设备可以是异构的并且可以提供不同资源容量。
雾网络包括多个雾节点。图1中的雾网络是雾节点网络,雾节点驻留在设备场与云之间的任何地方的很多设备上。雾节点为雾运行时和微雾提供执行环境。雾运行时是被配置为验证微雾的管理应用。
此外,雾网络包含在各种组件上分配和执行以管理雾网络并且实现如下所述的功能的软件。雾网络可以部署和运行潜在的分布式雾应用。基于应用模型,它可以决定哪个应用部分(所谓的微雾)应当部署在哪个雾节点上。因此,它分配应用部分(微雾)以遵守给定约束并且根据应用的要求来优化一个或多个目标,如下面进一步解释的。此外,雾网络可以能够将雾节点纳入云中,但不应当依赖于云。
雾节点在设备上实现。一个设备可以托管一个或多个雾节点。如果雾应用运行在与非雾应用共享的设备上,则雾应用不应当干扰这些应用(所谓的主要功能)。因此,雾节点可以使用托管设备的预定最大资源容量。然而,在一些示例中,最大资源容量也可以是可变的。雾节点可以与设备的主要功能并行托管。在一些实施例中,雾节点可以托管在设备上的虚拟机(VM)上。
图1所示的“雾编排”是可以被包括在雾网络中并且可以在一个或多个雾节点上运行的基本软件组件的概念图解。软件组件可以包括:
雾监测器,其取回关于雾节点和所部署的雾应用的信息。雾网络和应用分配的结果模型可以被提供给雾控制器和雾管理器中的一者或两者;。
包括雾分配器的雾控制器,其计算应用的部分(微雾)到雾节点的映射,使得数据传输被最小化。然后,其部署计算出的映射和微雾;
雾管理器,其可以提供用于选择和配置雾应用的用户界面,以允许用户部署/更新/删除应用,显示关于雾网络和所部署的应用的信息。雾管理器根据用户的部署/更新/删除请求来触发雾控制器的相应功能。
根据本公开的一个方面,微雾是雾网络中的部署、执行和管理单元。雾应用通常由一组微雾组成,微雾一起形成附加值功能。换言之,微雾是应用组件。微雾是指应用的特定功能(例如,模块)、以及如何部署和执行它,例如,微雾配置。这样的应用模块是雾应用的构建块。
微雾的分配可以使用分配算法,该分配算法基于具体的应用模型来计算微雾到雾节点的分配。例如,该算法可以实现以特定优化目标为目标的启发式或精确线性程序解决方案,例如,最小化跨网络链路的数据传输。基于应用的模型和应用应当部署到其上的雾网络,分配算法(分配器)计算应用部分(微雾)到雾节点的映射。从而,分配算法可以具有多个优化目标,例如,它应当最小化所需要的网络带宽,最小化时延,满足网络带宽约束和对数据流时延的约束,并且满足在应用模型中指示的特定要求。
根据实施例,提出了在具有多个雾节点的雾网络中分配雾应用的方法,该方法包括:-提供应用模型;-提供反映雾网络属性的雾网络图像;-在雾网络图像上执行应用模型的资源使用测试,并且接收针对雾网络的资源要求;-基于应用模型创建具体应用模型,其中具体应用模型包含所接收到的资源要求;以及-在雾网络的一个或多个雾节点上执行具体应用模型的分配。该方法的一个示例在图2示出。
描述具体应用模型的创建的方法可以被用于以(近)最优方式(分别)分配应用的微雾到雾网络的雾节点(或设备)。根据一方面,分配包括将微雾指派到一个或多个雾节点并将该微雾部署到一个或多个雾节点。在图2中,单独图示了部署该微雾。
由自动化系统托管的大多数分布式控制系统(DCS)(特别是雾网络)依据设备、设备数目、配置,和/或网络拓扑而彼此不同。雾应用可以根据本公开被适配/配置以(更佳地)在给定的雾网络上运行。
应用作为应用模型被提供。应用模型可以是描述独立于给定雾网络的应用的通用应用模型。通用应用模型包括针对给定雾网络的需要从具体应用模型得出的信息。具体应用模型包含基于将在之后详细解释的使用测试的资源要求。应用模型也可以包括针对雾网络的资源要求,这意味着应用模型不需要被测试,这也会在之后解释。
为确保微雾具有充足的可用资源以实现它们的功能,在硬件调节尺寸期间基于所声明的估计资源使用模型来为它们保留资源。在现有技术中,针对给定雾网络,应用模型需要被手动编程。为了确定雾节点不会过载,基于通用硬件信息,资源要求已被手动设置或估计。通常的,这些资源需求值被高估以避免在恶劣环境中的饥饿状态。结果,资源未被充分利用。所公开的方法以资源使用测试替代了手动估计。本公开提出了针对微雾改进资源要求的估计的方法。
雾网络图像被提供以反映雾网络的属性。根据一方面,通过在雾网络图像上执行应用模型的资源使用测试,针对雾网络的资源要求被接收。雾网络图像反映当前雾网络的具体环境。例如,雾网络图像可以是雾网络(其本身)、雾网络的物理或数字孪生、或雾网络的其他仿真版本。
根据某方面,用于满足应用或微雾的功能所需要的资源是应用模型或微雾的资源要求。资源要求可以包括CPU负载、存储器使用、带宽或其组合中的一项。
具体地,资源要求可以是针对每个微雾的最大资源要求,这指需要最大资源(例如,在某时间点或在某时间段期间的最大资源)的(最坏情况)配置的最大消耗,。这确保雾节点不会过载并且空闲资源得到使用。资源要求不仅由给定的硬件估计,也由在雾网络图像上对应用模型进行的资源使用测试期间的测试被估计。
具体地,如果系统安全允许,资源使用测试可以在实际的“实况”系统中进行,在该情况下,所部署系统的物理或数字孪生应该被用于提供目标雾网络的上下文。资源使用测试和模型推导可以通过使用代表性测试套件来实现,或者通过使用关于目标系统的相关历史系统数据来实现。取决于雾之下的具体平台,对CPU负载、存储器使用等的测量可以利用标准工具实现,诸如Linux的“top”,Docker stats,Kubernetes,Kubernetes Metrics API。例如,资源要求可以在用于CPU使用的MIPS(每秒百万个指令)中被指示,或者在用于存储器要求的字节中被指示。
根据一个方面,具体应用模型包括一个或多个微雾,其中资源要求包括针对具体应用模型的每个微雾的CPU负载、存储器使用、带宽或其组合中的一项。
该方法可以还包括:-接收雾节点的当前资源状态。此外,分配还可以基于雾节点的所接收的当前资源状态。当前资源状态可以包括空闲资源容量。如果资源要求等于或少于空闲资源容量,微雾可以在雾节点上被分配和部署。
如图2所示例性图示,该方法可以包括:-在具体应用模型的分配之后,监测雾网络的雾节点上的应用的资源消耗。在图2中,该监测被图示为“资源使用测量”,其取回最坏情况测量并且可以提供这些测量以创建改进的具体应用模型。在完美系统中,资源要求绝不会在应用模型的执行期间被超出。然而,系统可能改变,例如,随着时间变化,设备可以被改变,或者可以操作恶化。相应的,改方法可以包括:-报告新监测到的最坏情况测量。
监测的资源消耗可以包括CPU负载、存储器使用、带宽或其组合中的一项。
该方法还可以包括:-将监测的资源消耗与接收的具体应用模型的资源要求进行比较。如果实际监测的资源消耗(新观察到的最坏情况测量)超过具体应用模型的资源要求,则可能有必要改进应用模型。该方法可以还包括:-如果监测的资源消耗超过接收的资源要求,则基于具体应用模型和监测的资源消耗来创建改进的具体应用模型。
如果相同的应用连续地被分配到雾网络中,或者如果相同类型的另一应用已经被分配到雾网络中,则改进的具体应用模型可以特定地被使用。该方法还包括:-在雾网络的一个或多个雾节点上执行改进的具体应用的分配。具体地,分配微雾可以包括将微雾从一个雾节点重新定位到另一雾节点。
图2还图示了如果已经利用应用模型完成了测试,应用模型可以不在使用测试中被测试。资源使用测试可以被视为寻找资源要求的初始测试,并且对资源消耗的监测可以被视为连续地监测和改进循环。该方法可以还包括:-确定具体应用模型对于所提供的应用和雾网络是否为已知的;以及-决定:
如果具体应用模型对于所提供的应用和雾网络是已知的:
-在雾网络的一个或多个雾节点上执行具体应用模型的分配;或者如果具体应用模型对于雾网络是未知的:
-在雾网络图像上执行应用的资源使用测试,并且接收针对雾网络的资源要求;基于应用模型创建具体应用模型,其中具体应用模型包含接收的资源要求;在雾网络的一个或多个雾节点上执行具体应用模型的分配。
换言之,一旦应用模型知道资源要求,应用模型的执行就会启动,并且应用模型的生命周期被管理。应用管理包括在雾节点或设备故障的情况下进行监控和适配。。
该方法可以还包括:-如果雾网络改变,则更新雾网络图像。雾网络图像应该反映雾网络的当前状态。它应该包含关于雾网络在其上运行的设备的信息和运行在雾网络中的其他应用的信息。为了确保图像和雾网络之间的一致性,雾节点和托管的应用部分(或者由它们分别使用的资源)应该被监测;并且雾网络图像应该在任何改变时进行更新。
本公开还提出了具有多个雾节点的雾网络,其中雾网络被配置为执行如本文所述的方法。还提出了自动化系统,其中自动化系统包括多个计算设备,其中计算设备托管雾网络,该雾网络被配置为执行如本文所述的方法。
图3图示了根据本公开的方法的示例性流程图。该方法用于在具有多个雾节点的雾网络中分配雾应用,该方法包括:-利用微雾模板的清单提供通用应用模型,其中微雾模板包括如何部署和执行一个或多个微雾的规格,以及针对微雾的托管的要求,和/或针对微雾的期望的可观测性,期望的可观测性指示了微雾实例应当跨系统传播有多广泛;-提供了具有多个设备的自动化系统,在该系统上具有多个雾节点的雾网络被实现;-基于通用应用模型、自动化系统和雾网络创建具体应用模型,其中具体应用模型包括微雾的清单,以及针对至少一个微雾的用于托管微雾的雾节点要求、和/或针对多个微雾的跨雾节点的最大传播;-在一个或多个雾网络的雾节点上执行具体应用模型的微雾的分配,其中雾节点满足对应微雾的雾节点要求,和/或其中跨雾节点的传播少于跨雾节点的最大传播。
创建具体应用模型基于通用应用模型、自动化系统以及雾网络。雾网络的状态可以由图3中所示出的雾监测器取回。雾监测器创建用于针对具体化模型和针对分配的雾网络的结果模型。相应的,创建具体应用模型可以基于由雾管理器创建的雾网络的模型。
微雾模板包括如何部署和执行一个或多个微雾的规格。在一些示例中,微雾模板可以由容器图像表示,从容器库被下载到雾节点。容器实例是微雾实例,或者简称微雾,可互换。通常,微雾模板可以造成多个微雾,这些微雾可以跨一个或多个雾节点被执行。
该方法通过提供独立于特定雾网络的通用应用模型来改进自动化。一旦关于目标雾网络的信息可用,然而应用模型被自动转换为具体应用模型。
通用应用模型包含得出具体模型所需要的信息,诸如微雾模板的清单。微雾模板可以包括针对微雾托管的要求,和/或针对微雾的期望的可观测性,该望的可观测性指示了微雾实例跨场所应当传播有多广泛。针对微雾托管的要求可以是硬件要求,例如特定传感器(温度、压力、湿度、距离)、特定致动器、蓝牙模块,和/或最小资源要求的可用性。资源要求可以包括CPU负载、存储器使用、带宽或其组合中的一项。
创建具体应用模型可以附加地基于关于自动化系统和雾网络的最新信息,特别是关于雾节点的数目、雾节点的托管设备的硬件配置、雾节点的资源容量和/或其组合。
通用应用模型包含特定于系统和雾网络的要求。基于当前雾网络的最新信息,具体地,基于每个雾节点提供的特征和雾节点的资源容量,模型具体化计算针对每个微雾模板的微雾的具体数目。当前雾网络的最新信息可以由雾监测器监测。相应的,该方法的雾网络可以被表征为“最新雾网络”。
在一个示例中,针对每个微雾模板的微雾的具体数目可以在模型具体化期间被确定为满足以下不等式x的最大值:
xmin≤x≤x*
其中x*是微雾的期望数目,以及xmin是微雾的最小可接受数目。x*和xmin两者都取决于每个雾节点上所提供的特征和可用的资源,并且使用当前雾网络得出。
微雾模板不能被分配。具体应用模型中的微雾可被分配给雾节点。根据一个方面,微雾仅可以被分配给单个雾节点。然而,雾节点可以在同一时间执行多个微雾。
根据一个方面,通用应用模型可以经由云服务器被提供。作为优点,通用应用模型可以利用不同的雾网络被提供给多个不同的自动化系统。按照本文公开的方法,通用应用模型被自动地转换为特定雾网络的具体应用模型。这将人工工作量减少到最小。新的应用可以轻易的在多个工厂中铺开,这些工厂包括自动化系统而无需针对每个个体工厂进行手动适配。
图4示出了本公开的另一方面。提出了一种用于管理雾网络的资源容量的方法,其中雾网络在包括多个自动化设备的自动化系统上被实现,其中多个自动化设备的一个或多个设备操作雾节点。方法包括:-提供一个或多个雾代理,其中雾代理是在一个自动化设备上操作的软件,其中雾代理取回关于对应自动化设备的可用资源容量的信息;-提供由相同自动化设备托管的雾节点;-通过雾代理基于获取的信息来管理雾节点对自动化设备的资源容量的访问。例如,可用资源容量可以包括自动化设备可以提供给雾节点的CPU容量和/或存储器
图4示出了方法能够在其中执行的系统的示例。自动化系统10被示出。自动化系统10可以包括一个或多个服务器2、一个或多个网关或者管理型交换机3,一个或多个控制器4、子控制器4、传感器或致动器6、管理型交换机8、以及以太网设备7。这些设备的一些或全部可以托管雾节点。
雾托管设备示例性的示出于图4气泡中。在图4中,雾托管设备可以是服务器10、管理型交换机3或者控制器4。然而,雾托管设备可以是能将资源容量提供给雾网络的雾网络的任何设备。
雾托管设备执行主要功能和雾节点。微雾可以由雾节点执行。雾代理是附加的软件,其管理雾节点对自动化设备(雾托管设备)的资源容量的访问。这由虚线指示。
雾代理取回关于对应自动化设备的可用资源容量的信息。具体地,雾代理可以取回对应自动化设备的主要功能的资源要求。相应的,该方法可以包括:雾代理基于取回的信息来管理雾节点对自动化设备的资源容量的访问,其中雾节点对资源容量的访问是设备全部资源容量减去对应自动化设备的主要功能的资源要求再减去预定的缓冲资源容量。例如,该预定的缓冲资源容量可以是全部容量的0到10%之间。
Claims (15)
1.一种用于在具有多个雾节点的雾网络中分配雾应用的方法,所述方法包括:
-提供应用模型;
-提供反映所述雾网络的属性的雾网络图像;
-在所述雾网络图像上执行所述应用模型的资源使用测试,并且接收针对所述雾网络的资源要求;
-基于所述应用模型创建具体应用模型,其中所述具体应用模型包含接收到的所述资源要求;以及
-在所述雾网络的所述雾节点中的一个或多个雾节点上执行所述具体应用模型的分配。
2.根据权利要求1的所述方的法,其中所述雾网络图像是所述雾网络、所述雾网络的物理或数字孪生、或者所述雾网络的其他仿真版本。
3.根据前述权利要求中任一项所述的方法,其中所述资源要求包括以下中的一项:CPU负载、存储器使用、带宽或其组合。
4.根据前述权利要求中任一项所述的方法,其中所述具体应用模型包括一个或多个微雾,并且其中针对所述具体应用模型的每个微雾,所述资源要求包括以下中的一项:CPU负载、存储器使用、带宽或其组合。
5.根据前述权利要求中任一项所述的方法,还包括:
-在所述具体应用模型的所述分配之后,监测在所述雾网络的所述雾节点上的所述应用的所述资源消耗。
6.根据权利要求5所述的方法,还包括:
-将监测的所述资源消耗与所述具体应用模型的接收到的所述资源要求进行比较。
7.根据权利要求6所述的方法,还包括:
-如果监测的所述资源消耗超过所述资源使用测试的接收的所述资源要求,则基于所述具体应用模型和监测的所述资源消耗来创建改进的具体应用模型;以及
-在所述雾网络的所述雾节点中的一个或多个雾节点上执行所述改进的具体应用模型的分配。
8.根据权利要求7所述的方法,还包括:
-确定具体应用模型对于所提供的应用和所述雾网络是否为已知的;以及
-决定:
如果具体应用模型对于所提供的应用和所述雾网络是已知的:
-在所述雾网络的所述雾节点中的一个或多个雾节点上执行所述具体应用模型的分配;或者
如果具体应用模型对于所述雾网络是未知的:
-在所述雾网络图像上执行所述应用的资源使用测试,并且接收针对所述雾网络的资源要求,
-基于所述应用模型创建具体应用模型,其中所述具体应用模型包含接收的所述资源要求,
-在所述雾网络的所述雾节点中的一个或多个雾节点上执行所述具体应用模型的分配。
9.根据权利要求5至8中任一项所述的方法,其中监测的所述资源消耗包括以下中的一项:CPU负载、存储器使用、带宽或其组合。
10.根据权利要求5至9中任一项所述的方法,其中所述具体应用模型包括一个或多个微雾,并且其中针对所述具体应用模型的每个微雾,监测的所述资源消耗包括以下中的一项:CPU负载、存储器使用、带宽或其组合中。
11.一种具有多个雾节点的雾网络,其中所述雾网络被配置为执行根据前述权利要求中任一项所述的方法。
12.一种用于在具有多个雾节点的雾网络中分配雾应用的方法,所述方法包括:
-利用微雾模板的清单提供通用应用模型,其中所述微雾模板包括如何部署和执行一个或多个微雾的规格,以及针对微雾托管的要求,和/或针对微雾期望的可观测性,所述期望的可观测性指示所述微雾实例应当跨所述系统被传播有多广泛;
-提供具有多个设备的自动化系统,具有多雾节点的雾网络在所述系统上被实现;
-基于所述通用应用、所述自动化系统并且在所述雾网络上创建具体应用模型,其中所述具体应用模型包括:微雾的清单、以及针对至少一个微雾的用于托管微雾的雾节点要求、和/或针对多个微雾的跨雾节点的最大传播;
-在所述雾网络的所述雾节点的一个或多个雾节点上执行所述具体应用模型的所述微雾的分配,其中所述雾节点满足对应微雾的所述雾节点要求,和/或其中跨所述雾节点的传播少于跨雾节点的所述最大传播。
13.根据权利要求12所述的方法,其中所述通用应用模型经由云服务器被提供。
14.一种用于管理雾网络的资源容量的方法,其中所述雾网络在包括多个自动化设备的自动化系统上被实现,其中所述多个自动化设备中的一个或多个设备操作雾节点,所述方法包括:
-提供一个或多个雾代理,其中每个雾代理是在一个自动化设备上操作的软件,其中每个雾代理取回关于对应自动化设备的可用资源容量的信息;
-由所述雾代理基于所述雾代理的取回的所述信息来管理一个或多个雾节点对所述对应自动化设备的资源容量的访问。
15.根据权利要求14所述的方法,其中所述可用资源容量包含所述自动化设备能够提供给所述雾节点的CPU容量和/或存储器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP20183264.9A EP3933584A1 (en) | 2020-06-30 | 2020-06-30 | Application modelling and resource management in fog networks |
EP20183264.9 | 2020-06-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113867931A true CN113867931A (zh) | 2021-12-31 |
Family
ID=71409250
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110718909.0A Pending CN113867931A (zh) | 2020-06-30 | 2021-06-28 | 雾网络中的应用建模与资源管理 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20210409482A1 (zh) |
EP (1) | EP3933584A1 (zh) |
CN (1) | CN113867931A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11163921B1 (en) * | 2020-09-01 | 2021-11-02 | TeleqoTech | Managing a smart city |
CN112073542B (zh) * | 2020-11-12 | 2021-02-05 | 腾讯科技(深圳)有限公司 | 雾节点调度方法、装置、计算机设备和存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11562176B2 (en) * | 2019-02-22 | 2023-01-24 | Cisco Technology, Inc. | IoT fog as distributed machine learning structure search platform |
-
2020
- 2020-06-30 EP EP20183264.9A patent/EP3933584A1/en not_active Withdrawn
-
2021
- 2021-06-24 US US17/356,700 patent/US20210409482A1/en active Pending
- 2021-06-28 CN CN202110718909.0A patent/CN113867931A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP3933584A1 (en) | 2022-01-05 |
US20210409482A1 (en) | 2021-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7321684B2 (ja) | 高パフォーマンス制御サーバシステム | |
CN112153700B (zh) | 一种网络切片资源管理方法及设备 | |
Gandhi et al. | Adaptive, model-driven autoscaling for cloud applications | |
JP5662057B2 (ja) | データ・センタのバッチ・ジョブのサービスの質コントロール | |
US8799431B2 (en) | Virtual systems management | |
CN105432040A (zh) | 分布式云中的工作负载迁移下的基于属性的sla保证 | |
CN107615792B (zh) | 用于mtc事件的管理方法与系统 | |
CN112540578A (zh) | 工业控制系统超融合架构 | |
US20080115143A1 (en) | Job Execution Method, Job Execution System, and Job Execution Program | |
JP6380110B2 (ja) | リソース制御システム、制御パターン生成装置、制御装置、リソース制御方法及びプログラム | |
CN113867931A (zh) | 雾网络中的应用建模与资源管理 | |
CN113867930A (zh) | 调节机器学习模型的方法和调节机器学习模型的系统 | |
Taami et al. | Experimental characterization of latency in distributed iot systems with cloud fog offloading | |
Baresi et al. | PAPS: A Framework for Decentralized Self-management at the Edge | |
CN115167980A (zh) | 一种容器资源调整方法、装置、电子设备及存储介质 | |
JP7368143B2 (ja) | サービス配備制御システム、サービス配備制御方法及び記憶媒体 | |
Batista et al. | Load balancing in the fog of things platforms through software-defined networking | |
Benedetti et al. | Reinforcement learning applicability for resource-based auto-scaling in serverless edge applications | |
CA3190966A1 (en) | Automatic node fungibility between compute and infrastructure nodes in edge zones | |
CN111143033B (zh) | 基于可伸缩操作系统的操作执行方法及装置 | |
De Grande et al. | Measuring communication delay for dynamic balancing strategies of distributed virtual simulations | |
CN113867932A (zh) | 检测系统问题的方法和分配微雾的方法 | |
De Grande et al. | Decreasing communication latency through dynamic measurement, analysis, and partitioning for distributed virtual simulations | |
Soltane et al. | A self-adaptive agent-based system for cloud platforms | |
Wanis et al. | Modeling and pricing cloud service elasticity for geographically distributed applications |
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 |