掌桥专利:专业的专利平台
掌桥专利
首页

用于在物联网(IoT)环境中执行任务的系统、设备和方法

文献发布时间:2023-06-19 12:21:13


用于在物联网(IoT)环境中执行任务的系统、设备和方法

本公开涉及利用分布式计算资源执行任务。更特别地,本公开涉及在物联网(IoT)环境中管理任务的执行。

在物联网(IoT)环境中,存在多个设备,其范围从诸如传感器节点之类的小型现场设备到诸如智能电话之类的手持设备。在所述设备上执行的任务可能需要较小的计算或资源密集型计算。

为了管理资源需求,通常将任务/子任务转移到云平台。所述转移在步骤中执行,其中一个这样的步骤是任务分区,其中在传感器节点上执行的任务被分区以决定哪个分区要转移在云平台上。进一步地,执行应用的任务或子任务所需的二进制文件安装在云平台上。由于带宽要求、延时、隐私和安全问题,转移到云平台的该方法可能不是优选的。

鉴于上述情况,存在管理IoT环境中任务的执行的需要。

因此,本发明的目的是通过确保低延时和减少的带宽消耗来在IoT环境中执行任务。

本发明的目的通过一种在物联网(IoT)环境中执行一个或多个任务的方法来实现。如本文使用的,IoT环境指代具有多个具有不同计算资源的设备的分布式计算环境。这些设备是使能IoT的设备,诸如传感器、传感器节点、边缘设备等。使能IoT的设备经由互联网连接到IoT云平台和致动器。

如本文使用的,传感器指代能够被配置为测量物理量并将该物理量转换成信号的设备。传感器的示例包括温度传感器、视频相机、音频记录器、运动传感器、湿度传感器、烟雾检测器、各种气体传感器、辐射监视器和其他传感器。在一些方面中,传感器可以是使能IoT的智能传感器,其包括但不限于处理逻辑,诸如一个或多个控制器或处理器、存储器和通信接口。智能传感器可以连接到多个传感器,并被称为传感器节点。

如本文使用的,传感器节点设备通信地耦合到IoT环境中的多个传感器。传感器节点配备有处理能力,并且可以包括传感器。进一步地,传感器节点能够检测由传感器测量的物理量中的异常。传感器节点通信地耦合到边缘设备。边缘设备指代在一端连接到传感器和/或传感器节点并且在另一端连接到(一个或多个)远程服务器(诸如(一个或多个)计算服务器)或云平台的设备。边缘计算设备的网络被称为雾网络。

如本文使用的,任务或子任务指代可以被开发和部署来服务于一个目的的制品。示例性制品可以包括应用(用于监视工厂的应用)、模拟模型、工程配置、数字孪生模型、代码片段、API、安全应用、固件等。可以使用容器实例来开发和部署任务。容器实例是轻量级、独立的可执行应用包,其事实上可以在传感器节点或边缘设备上部署和执行。容器实例可以包括文件、环境变量和要执行的任务所必需的库。容器实例可以例如从云平台部署在边缘设备上。

在实施例中,该方法可以包括定义任务套件的结构,该任务套件包括要在IoT环境中执行的任务。任务套件包括分派给传感器节点的一个或多个任务。任务套件的结构被配置为使得任务是可分离的。因此,该方法有利地提供了IoT环境中传感器节点之间的任务划分。在另一个实施例中,该方法可以包括在任务套件中的任务之间建立通信,使得任务套件的结构在划分之后被重新定义。

该方法包括确定与IoT环境中第一传感器节点的过载或可能过载相关联的事件。该事件是基于第一传感器节点上实时可用的资源和基于针对在第一传感器节点处的执行待决的任务的数量来确定的。例如,该事件可以是来自边缘设备的执行一个或多个任务的请求。第一传感器节点有利地确定其计算资源是否存在或将存在潜在过载。

该方法可以进一步包括定义与同第一传感器节点过载相关联的事件相关联的过载参数。如本文使用的,过载参数由第一传感器节点上可用的资源、与一个或多个任务相关联的最小任务资源需求、任务的优先级和/或第一传感器节点上的预测资源来定义。如本文使用的,最小任务资源需求指示执行任务所需的最小资源。如本文使用的任务是由边缘设备或传感器节点执行/实行的基本工作包。

过载参数也由仅由第一传感器节点执行的不可转移任务所需的不可转移资源需求来定义。如本文使用的,不可转移任务是第一传感器节点上仅由第一传感器节点执行的现有任务。此外,新的不可转移任务是分派给第一传感器节点的仅由第一传感器节点执行的新的任务。

该方法可以包括基于不可转移资源需求来预测第一传感器节点上用于在第一传感器节点上执行所述一个或多个任务的资源。此外,该方法可以包括确定不可转移任务和新的不可转移任务的不可转移资源需求。在实施例中,在第二传感器节点上分派和部署所述一个或多个任务之前对预测的资源进行预测。在另一个实施例中,在第二传感器节点上执行所述一个或多个任务之前对预测的资源进行预测。第二传感器节点中预测资源的交错预测是有利的,因为考虑了第二传感器节点的资源可用性的改变。

该方法可以包括基于与所述一个或多个任务相关联的资源需求规范来确定用于执行所述一个或多个任务的最小任务资源需求。如本文使用的,资源需求规范指示实时执行所述一个或多个任务所需的最小资源。在实施例中,该方法可以包括从任务数据库获得与所述一个或多个任务相关联的资源需求规范。例如,任务数据库存储任务、相关联的现场设备和相关联的资源需求规范。该方法可以进一步包括将最小任务资源需求与第一传感器节点上的预测资源进行比较,以及确定可用资源是否少于、等于或多于最小任务资源需求。

该方法可以包括当第一传感器节点上可用的资源少于不可转移资源需求时,确定是否可以在第一传感器节点上释放一个或多个资源来执行新的不可转移任务。进一步地,该方法可以包括通过向第二传感器节点分派可转移任务和新的可转移任务之一来释放第一传感器节点上的一个或多个资源。

该方法包括标识可由第二传感器节点执行的一个或多个任务。所述一个或多个任务包括可转移任务、预测的可转移任务和新的可转移任务。可转移任务是分派给第一传感器节点以用于执行的现有任务。预测的可转移任务是可以常规地分派给第一传感器节点的预测任务。新的可转移任务指代被分派给第一传感器节点并且可以被执行给其他传感器节点以用于执行的新的任务。第一传感器节点有利地标识所述一个或多个任务之中的哪个任务最适合分派给第二传感器节点。

该方法可以包括当第一传感器节点上可用的资源少于最小任务资源需求时,向边缘设备传输过载消息。过载消息指示第一传感器节点无能力执行所述一个或多个任务。该方法可以进一步包括接收与IoT环境中能够执行所述一个或多个任务的传感器节点相关联的传感器节点数据库。传感器节点数据库存储传感器节点、相关联的现场设备和相关联的资源可用性。因此,第一传感器节点有利地能够基于传感器节点数据库标识第二传感器节点。

该方法可以包括标识能够执行所述一个或多个任务的第二传感器节点。第二传感器节点的标识可以基于第一传感器节点和第二传感器节点到与一个或多个任务相关联的现场设备(诸如致动器)的接近度来执行。第一传感器节点和第二传感器节点的接近度直接影响向现场设备传输信号所需的能量。因此,该方法通过处理接近现场设备的任务,有利地克服了延时和低效能耗的约束。

该方法进一步包括从第一传感器节点建立与 IoT环境中的第二传感器节点的通信。更进一步地,该方法包括将所述一个或多个任务分派给第二传感器节点,使得第二传感器节点执行所述一个或多个任务。该方法还可以包括从第二传感器节点到第一传感器节点接收所述一个或多个任务的执行结果。该方法有利地公开了一种传感器节点网络,所述传感器节点通信地耦合并且能够单独地和组合地执行任务。

本发明的目的通过在IoT环境中执行一个或多个任务的另一种方法来实现。该方法在边缘设备处执行,并且包括由边缘设备接收来自第一传感器节点的过载消息。该方法进一步包括基于第一传感器节点和第二传感器节点上可用的资源、与所述一个或多个任务相关联的最小任务资源需求、第一传感器节点上的预测资源以及第一传感器节点和第二传感器节点到与一个或多个任务相关联的现场设备的接近度来确定能够执行所述一个或多个任务的第二传感器节点。

该方法还包括当所述一个或多个任务从第一传感器节点被分派给第二传感器节点时,传输与所述一个或多个任务相关联的任务包。任务包包括执行所述一个或多个任务所需的二进制文件。该方法通过将任务包从边缘设备传输到传感器节点以用于执行一个或多个任务,有利地减少了存储在传感器节点的数据。

该方法可以进一步包括向第一传感器节点传输第二传感器节点的细节,以及确认第一传感器节点和第二传感器节点之间的通信的建立。例如,可以基于从第一传感器节点或从第二传感器节点接收到确认信号来进行通信建立的确认。该方法还可以包括当接收到确认时传输与所述一个或多个任务相关联的任务包。因此,该方法仅在确认之后有利地传输任务包,并且从而减少带宽消耗。

该方法可以包括当第一传感器节点和第二传感器节点之间的通信没有建立时,确定能够执行所述一个或多个任务的第三传感器节点。该方法可以进一步包括当所述一个或多个任务从第一传感器节点被分派给第三传感器节点时,传输与所述一个或多个任务相关联的任务包。因此,该方法有利地确保了IoT环境中一个或多个任务的执行。

本发明的目的通过IoT环境中的传感器节点来实现。传感器节点包括一个或多个处理器、耦合到处理器的存储器。该存储器包括资源模块,该资源模块被配置用于基于传感器节点上实时可用的资源来确定与IoT环境中传感器节点的过载相关联的事件。该存储器进一步包括分派模块,该分派模块被配置用于基于事件建立从传感器节点与IoT环境中能够执行一个或多个任务的第二传感器节点的通信。分派模块被配置用于标识要由第二传感器节点执行的一个或多个任务。分派模块进一步被配置用于当建立通信时,将所述一个或多个任务分派给第二传感器节点。

在优选实施例中,资源模块被配置用于定义与同传感器节点过载相关联的事件相关联的过载参数。过载参数由传感器节点上可用的资源、与所述一个或多个任务相关联的最小任务资源需求和传感器节点上的预测资源中的任何一个来定义。

在优选实施例的一个方面中,资源模块被配置用于确定不可转移任务的不可转移资源需求,并基于不可转移资源需求预测第一传感器节点上用于在第一传感器节点上执行一个或多个任务的资源。

在优选实施例的另一方面中,资源模块被配置用于基于与所述一个或多个任务相关联的资源需求规范来确定用于执行一个或多个任务的最小任务资源需求。资源需求规范指示实时执行所述一个或多个任务所需的最小资源。

在优选实施例的又一方面中,资源模块被配置用于将最小任务资源需求与第一传感器节点上的预测资源进行比较,以及确定可用资源是否少于、等于或多于最小任务资源需求。

根据本发明的传感器节点是智能传感器节点,其能够确定是否可以执行所述一个或多个任务。如果传感器节点不能执行,则传感器节点能够将所述一个或多个任务分派给其他传感器节点以用于执行。这样的传感器节点网络减少了针对执行一个或多个任务的边缘设备的依赖性。

本发明的目的进一步通过IoT环境中的边缘设备来实现。边缘设备包括操作系统和存储器。存储器包括传感节点数据库,其具有存储在其中的IoT环境中的传感器节点的二进制文件。如本文使用的,“二进制文件”指代包含处理传感器节点(例如,第一传感器节点)的任务所需的逻辑的可执行或单个制品/制品集。任务被假定是独立的模块,其可以根据二进制文件集进行处理。任务细节可作为任务包以可识别的格式转移到另一个节点(例如第二传感器节点)或边缘设备。

在另一个实施例中,IoT环境可以包括多个边缘设备。所述边缘设备中的每个包括存储器,用于存储连接到相应边缘设备的传感器节点的相关联的二进制文件。例如,传感器节点A连接到边缘设备A。传感器节点B连接到边缘设备B。与传感器节点A相关联的任务的二进制文件存储在边缘设备A处。与传感器节点B相关联的任务的二进制文件存储在边缘设备B处。在实施例中,一个或多个任务被从传感器节点A分派给传感器节点B。所述一个或多个任务的二进制文件从边缘设备A直接转移到传感器节点B或经由边缘设备B转移。二进制文件的分布被称为分布式任务储存库。

存储器进一步包括节点管理模块,该节点管理模块被配置用于从第一传感器节点接收过载消息。节点管理模块进一步被配置用于基于在第一传感器节点和第二传感器节点上可用的资源、与所述一个或多个任务相关联的最小任务资源需求、第一传感器节点上的预测资源以及第一传感器节点和第二传感器节点到与一个或多个任务相关联的现场设备的接近度来确定能够执行所述一个或多个任务的第二传感器节点。

该存储器还包括数据流模块,该数据流模块被配置用于将第二传感器节点的细节传输到第一传感器节点,以及确认第一传感器节点和第二传感器节点之间的通信的建立。数据流模块进一步被配置用于基于确认以及当所述一个或多个任务从第一传感器节点被分派给第二传感器节点时,传输与所述一个或多个任务相关联的任务包。边缘设备有利地促进在IoT环境中以最小的带宽消耗执行所述一个或多个任务。

在实施例中,存储器还可以包括恢复模块,用以恢复存储在存储器中的数据。恢复模块可以被配置为恢复时钟数据。恢复模块确保在从第一传感器节点向第二传感器节点分派一个或多个任务期间不丢失数据。

本发明的目的进一步通过计算机程序产品来实现,该计算机程序产品具有存储在其中的机器可读指令,所述机器可读指令当由处理器执行时,使得处理器执行上述方法步骤。处理器可以是传感器节点的处理器或边缘设备的处理器。

现在将参考本发明的随附附图来说明本发明的以上提及和其他的特征。说明的实施例旨在说明而非限制本发明。

下文参考附图中所示的说明实施例进一步描述本发明,其中:

图1是根据本发明实施例的物联网(IoT)环境的示意性表示;

图2是图1中IoT环境中传感器节点和边缘设备的操作的示意性表示;

图3是图1中IoT环境中边缘设备的示意性表示;

图4是图1中IoT环境中传感器节点的示意性表示;

图5是图示根据本发明实施例的在IoT环境中执行一个或多个任务的示例性方法的流程图;

图6是图示根据本发明另一实施例的在IoT环境中执行一个或多个任务的示例性方法的流程图;和

图7是根据本发明实施例的传感器节点和边缘设备的操作的示意性表示。

参考附图描述了各种实施例,其中相同的附图标号用于指代附图,其中相同的附图标号自始至终用于指代相同的元件。在以下描述中,出于解释的目的,阐述了许多具体细节,以便提供对一个或多个实施例的透彻理解。可以显而易见的是,这样的实施例可以在没有这些具体细节的情况下实践。

图1是根据本发明实施例的物联网(IoT)环境100的示意性表示。IoT环境100包括IoT云平台102、包括边缘设备116的工业工厂104、传感器节点112、114和传感器122-126和128-132的组以及现场设备106和108。现场设备106、108可以包括服务器、机器人、开关、自动设备、马达、阀门、泵、致动器、传感器和其他工业装备。尽管图1图示了连接到一个工业工厂104的云平台102,但是本领域技术人员可以设想,云平台102可以经由网络150连接到位于不同位置的几个工业工厂。进一步地,用户设备140A-N可以是能够经由云平台102访问工业工厂104的。

传感器122-126和128-132的每个组经由有线网络或无线网络连接到相应的传感器节点112和114。进一步地,传感器节点112和114经由低功率网络协议连接,所述低功率网络协议诸如是表述性状态传递(REST)、消息队列遥测传输(MQTT)和高级消息队列协议(AMQP)等。传感器节点112和114中的每个经由有线网络或无线网络连接到边缘设备116。边缘设备116经由网络150(例如,广域网)连接到IoT云平台102。

传感器122-126和128-132包括热传感器、湿度传感器、光传感器、振动传感器、接近度传感器等。传感器节点112和114分别包括传感器122-126和128-132。进一步地,传感器节点112和114包括处理器、存储器和通信单元(未示出)。传感器节点112和114被配置为对来自传感器122-126和128-132的传感器数据执行计算。计算可以被定义为一个或多个任务。传感器节点112和114被配置为决定一个或多个任务是否将使处理器和存储器过载。因此,传感器节点112和114是被配置为确定是否需要卸载工作负载的智能传感器节点。

与传感器节点112和114相比,边缘设备116被配置有更高的计算能力。边缘设备被配置为对由传感器节点112和114收集的传感器数据进行后处理,并且选择性地将处理的数据和传感器数据发送到云平台102。边缘设备116进一步被配置为维护连接到边缘设备116的传感器节点112和114的传感器节点数据库。边缘设备116还被配置为维护与一个或多个任务相关联的任务包。

IoT云平台102被配置为基于从边缘设备116发送的处理的数据和传感器数据来提供多个云服务。云服务可以包括调试工业工厂104、监视和控制工业工厂104、维护工业工厂104、升级工业工厂104等等。云服务还可以包括管理工业工厂104中的现场设备106和108,存储和分析经由边缘设备116从现场设备1006、108接收的工厂数据,向与工业工厂104相关联的人员可视化分析的数据,将软件/固件下载到现场设备106、108上,等等。

在图2中描述了卸载被分派给传感器节点112和114的一个或多个任务的方法。图2是IoT环境100中传感器节点112、114和边缘设备116的操作的示意性表示。边缘设备116包括传感器节点数据库250。传感器节点数据库250包括分别与传感器节点112和114相关联的二进制文件252和254。如本文使用的,“二进制文件”指代包含处理传感器节点(例如,传感器节点112)的任务所需的逻辑的可执行或单个制品/制品集。假定任务是独立的模块,其可以基于二进制文件集进行处理。任务细节可作为任务包以可识别的格式转移到其他节点(例如传感器节点114)或边缘设备(116)。

卸载任务的操作在步骤202至214中执行。在步骤202,传感器节点112确定与其资源的过载相关联的事件。传感器节点112基于该事件决定卸载任务。图5中解释了决定卸载任务的方法。

在步骤204,传感器节点112通过向边缘设备116发送过载消息来发起工作负载转移。在步骤206,边缘设备116确定传感器节点114是否能够执行任务。基于传感器节点114上可用的资源、与任务相关联的最小任务资源需求、传感器节点114上的预测资源以及传感器节点112和传感器节点114到与任务相关联的现场设备106、108的接近度来进行确定。在本实施例中,传感器节点114被选择用于卸载。

在步骤208,边缘设备116通知传感器节点114关于任务和转移。传感器节点114基于图5中提供的方法来确定它是否准备好进行任务。边缘设备116然后将与任务相关联的任务包转移到传感器节点114。进一步地,在步骤210,边缘设备116向传感器节点112通知传感器节点114已经被标识用于工作负载卸载。

在步骤212,传感器节点114向传感器节点112通知传感器节点114准备好进行任务分派。在步骤214,传感器节点112将任务分派给传感器节点114。在步骤216,传感器节点114执行该任务,并将执行结果传输给传感器节点112。

图3是IoT环境100中的边缘设备的示意性表示。出于图3的目的,边缘设备用数字300指代。边缘设备300包括操作系统302、存储器310和应用运行时320。进一步地,边缘设备300包括嵌入式传感器350和360。

操作系统302是嵌入式实时操作系统(OS),诸如Linux™操作系统。边缘操作系统302使得能够实现与传感器、现场设备以及与IoT云平台的通信。边缘操作系统302还允许运行部署在边缘设备300中的一个或多个软件应用322、324。应用运行时320是在其上实时安装和执行一个或多个软件应用322、324的层。安装软件应用322、324用于处理从传感器和现场设备收集的工厂数据。例如,软件应用322和324包括模拟和分析应用,诸如IoT环境中现场设备的状况监视和预测维护。

存储器310包括存储器,该存储器包括传感器节点数据库,其具有存储在其中的IoT环境中传感器节点的二进制文件。进一步地,存储器310包括任务数据库。例如,任务数据库存储任务、相关联的现场设备和相关联的资源需求规范。

存储器310还包括可在边缘设备300上执行的节点管理模块312和数据流模块314。节点管理模块312被配置用于从第一传感器节点(传感器节点112)接收过载消息,以及基于第二传感器节点上可用的资源、与一个或多个任务相关联的最小任务资源需求、第二传感器节点上的预测资源以及第一传感器节点和第二传感器节点到与一个或多个任务相关联的现场设备的接近度,来确定第二传感器节点(传感器节点114)是否能够执行一个或多个任务。

数据流模块314被配置用于将第二传感器节点的细节传输到第一传感器节点,以及确认第一传感器节点和第二传感器节点之间的通信的建立。进一步地,当所述一个或多个任务被分派给第二传感器节点时,数据流模块314基于确认传输与所述一个或多个任务相关联的任务包。任务包包括执行所述一个或多个任务所需的二进制文件。

图4是IoT环境100中传感器节点的示意性表示。出于图4的目的,传感器节点用数字400指代。传感器节点400包括通信单元402、处理器404和存储器410。通信单元402能够经由低功率网络协议传输和接收数据,所述低功率网络协议诸如是表述性状态传递(REST)、消息队列遥测传输(MQTT)和高级消息队列协议(AMQP)等。处理器404被配置成控制单元,以控制通信单元402和存储器410的操作。

存储器410包括资源模块412、分派模块414和任务日志416。处理器404执行模块412-416,使得执行图2中描述的操作。

资源模块412基于传感器节点400上实时可用的资源,确定与IoT环境中传感器节点400的过载相关联的事件。资源模块412基于针对在传感器节点400处的执行待决的任务的数量来确定事件。待决任务是从任务日志416确定的。

资源模块412进一步定义与事件相关联的过载参数。例如,过载参数由传感器节点上可用的资源、与一个或多个任务相关联的最小任务资源需求以及传感器节点上的预测资源中的任何一个来定义。例如,资源模块412监视处理器404的处理/计算可用性。此外,资源模块412监视存储器410中的存储可用性。

进一步地,资源模块412确定任务是否可转移。在本实施例中,当一个或多个任务包括可转移任务、预测的可转移任务和新的可转移任务之一时,执行所述一个或多个任务从传感器节点400到另一个传感器节点(图4中未示出)的分派。可转移任务是分派给传感器节点以用于执行的现有任务,并且新的可转移任务指代新分派的任务。资源模块412被配置为确定所述一个或多个任务是否可以在传感器节点400上执行或者是否需要被分派给另一个传感器节点。

更进一步地,资源模块412确定不可转移任务和新的不可转移任务的不可转移资源需求。不可转移任务是传感器节点上仅由第一传感器节点执行的现有任务,并且新的不可转移任务是分派给传感器节点的仅由传感器节点执行的新的任务。

此外,资源模块412基于不可转移资源需求预测传感器节点400上的资源,并确定执行一个或多个任务的最小任务资源需求。最小任务资源需求基于与所述一个或多个任务相关联的资源需求规范。资源需求规范指示实时执行所述一个或多个任务所需的最小资源。资源模块412将最小任务资源需求与传感器节点400上的预测资源进行比较。该比较用于确定可用资源是否少于、等于或多于最小任务资源需求。如果可用资源少于最小任务资源需求,则所述一个或多个任务被从传感器节点400分派给另一个传感器节点。

分派模块414建立从传感器节点400与IoT环境中能够执行所述一个或多个任务的其他传感器节点的通信。进一步地,分派模块414标识要由其他传感器节点执行的所述一个或多个任务。例如,分派模块414确定是要分派新的可转移任务还是要分派现有的可转移任务。当建立通信时,分派模块414然后将所述一个或多个任务分派给其他传感器节点。

图5是图示根据本发明实施例的在IoT环境中执行一个或多个任务的示例性方法500的流程图。该方法在步骤502通过如下开始:定义与同第一传感器节点过载相关联的事件相关联的过载参数。过载参数由第一传感器节点上可用的资源、与所述一个或多个任务相关联的最小任务资源需求以及第一传感器节点上的预测资源中的任何一个来定义。

在步骤504,基于第一传感器节点上实时可用的资源来确定与IoT环境中的第一传感器节点的过载相关联的事件,其中该事件是基于针对在第一传感器节点处的执行待决的任务的数量来确定的。

在步骤506,为不可转移任务和新的不可转移任务确定不可转移资源需求。不可转移任务是第一传感器节点上仅由第一传感器节点执行的现有任务。进一步地,新的不可转移任务是分派给第一传感器节点的仅由第一传感器节点执行的新的任务。

在步骤508,标识可由第二传感器节点执行的一个或多个任务。所述一个或多个任务包括可转移任务、预测的可转移任务和新的可转移任务之一。可转移任务是分派给第一传感器节点以用于执行的现有任务。新的可转移任务是分派给第一传感器节点以用于执行的新的任务。

在步骤510,基于不可转移资源需求来预测第一传感器节点上的资源可用性。预测的资源指示第一传感器节点上用于执行所述一个或多个任务的资源的可用性。

在步骤512,基于与所述一个或多个任务相关联的资源需求规范来确定用于执行所述一个或多个任务的最小任务资源需求。资源需求规范指示实时执行所述一个或多个任务所需的最小资源。

在步骤514,将最小任务资源需求与第一传感器节点上的预测资源进行比较。基于该比较,第一传感器节点确定可用资源是否少于、等于或多于最小任务资源需求。

在步骤516,对是否可以在第一传感器节点上释放一个或多个资源来用于执行新的不可转移任务进行确定。例如,当第一传感器节点上可用的资源少于不可转移资源需求时,第一传感器节点需要对资源进行优级先排序以支持新的不可转移任务。

在步骤518,通过将可转移任务和新的可转移任务之一分派给第二传感器节点,释放第一传感器节点上的一个或多个资源。

在步骤520,当第一传感器节点上可用的资源少于最小任务资源需求时,过载消息被传输到边缘设备。过载消息指示第一传感器节点无能力执行所述一个或多个任务。

在步骤522,第一传感器节点接收传感器节点数据库。传感器节点数据库提供IoT环境中能够执行所述一个或多个任务的传感器节点。在实施例中,第一传感器节点从传感器节点数据库中选择第二传感器节点。在另一个实施例中,第二传感器节点细节被提供在传感器节点数据库中,指示第二传感器节点准备好执行所述一个或多个任务。

在步骤524,第一传感器节点与IoT环境中的第二传感器节点建立通信。在步骤526,所述一个或多个任务被分派给第二传感器节点,使得第二传感器节点执行所述一个或多个任务。在步骤528,第一传感器节点从第二传感器节点接收所述一个或多个任务的执行结果。

图6是图示根据本发明另一实施例的在IoT环境中执行一个或多个任务的示例性方法600的流程图。方法600在步骤602通过如下开始:在边缘设备上从第一传感器节点接收过载消息。过载消息指示第一传感器节点无能力执行所述一个或多个任务。

在步骤604,确定能够执行所述一个或多个任务的第二传感器节点。该确定基于第一传感器节点和第二传感器节点上可用的资源、与所述一个或多个任务相关联的最小任务资源需求、第一传感器节点和第二传感器节点上的预测资源以及第一传感器节点和第二传感器节点到与一个或多个任务相关联的现场设备的接近度。该确定由边缘设备实时做出。

在步骤606,第二传感器节点的细节被传输到第一传感器节点。在步骤608,确认第一传感器节点和第二传感器节点之间的通信的建立。在步骤610,基于确认传输与所述一个或多个任务相关联的任务包。

在步骤612,当第一传感器节点和第二传感器节点之间的通信未建立时,确定能够执行所述一个或多个任务的第三传感器节点。在步骤614,当所述一个或多个任务被从第一传感器节点分派给第三传感器节点时,传输与所述一个或多个任务相关联的任务包。

图7是IoT环境700中传感器节点702和704以及边缘设备710和720的操作的示意性表示。边缘设备710和720每个分别包括传感器节点数据库712和722。传感器节点数据库包括与任务套件730和740相关联的二进制文件714和724。

任务套件730和740是分别分派给传感器节点702和704的任务集。任务套件730包括不可转移的任务730a和一个或多个可转移的任务730b。任务套件740包括可转移的任务740a和740b。

在传感器节点702过载的事件中,任务730b被转移到传感器节点704以用于执行。传感器节点704直接从边缘设备710接收与任务730b相关联的二进制文件。在另一个实施例中,边缘设备710经由边缘设备720将二进制文件传输到传感器节点704。

传感器节点704执行任务730b,并将结果传输到传感器节点704。进一步地,任务730a和730b彼此通信,使得在传感器节点704处执行任务730b之后,任务套件730被重新形成。

本发明可以采取计算机程序产品的形式,该计算机程序产品包括可从存储程序代码的计算机可用或计算机可读介质访问的程序模块,该程序代码由一个或多个计算机、处理器或指令执行系统使用或与其结合使用。出于本描述的目的,计算机可用或计算机可读介质可以是能够包含、存储、传送、传播或传输由指令执行系统、装置或设备使用或与其结合使用的程序的任何装置。该介质可以是电子、磁、光、电磁、红外或半导体系统(或装置或设备)或传播介质,在它们内部以及它们本身作为信号载体不包括在物理计算机可读介质的定义中,所述物理计算机可读介质包括半导体或固态存储器、磁带、可移动计算机磁盘、随机存取存储器(RAM)、只读存储器(ROM)、硬磁盘和光盘,诸如压缩盘只读存储器(CD-ROM)、压缩盘读/写和DVD。如本领域技术人员已知的那样,用于实现该技术的每个方面的处理器和程序代码这二者可以是集中式的或分布式的(或其组合)。

虽然已经参照某些实施例详细描述了本发明,但是应当领会,本发明不限于那些实施例。鉴于本公开,在不脱离如本文所述的本发明的各种实施例的范围的情况下,许多修改和变型将他们自己呈现给本领域技术人员。因此,本发明的范围由下面的权利要求而不是前面的描述来指示。

参考标志

图1

物联网环境100

IoT云平台102

现场设备106和108

工业工厂104

传感器节点112、114

边缘设备116

传感器122、124、126和128、130、132

用户设备140A-N

网络150

图2

传感器节点数据库250

二进制文件252和254

图3

边缘设备300

操作系统302

存储器310

节点管理模块312

数据流模块314

应用运行时320

软件应用322、324

嵌入式传感器350和360

图4

传感器节点400

通信单元402

处理器404

存储器410

资源模块412

分派模块414

任务日志416

图5流程图

图6流程图

图7

IoT环境700

传感器节点702和704

边缘设备710和720

传感器节点数据库712和722

二进制文件714和724

任务套件730和740。

不可转移任务730a

一个或多个可转移任务730b

可转移任务740a和740b。

相关技术
  • 用于在物联网(IoT)环境中执行任务的系统、设备和方法
  • 用于在物联网(IoT)系统中建立安全通信信道的设备和方法
技术分类

06120113265833