CN117579612A - 源节点上的ad-hoc数据处理的无线ad hoc网络中的软件分发 - Google Patents
源节点上的ad-hoc数据处理的无线ad hoc网络中的软件分发 Download PDFInfo
- Publication number
- CN117579612A CN117579612A CN202311544307.3A CN202311544307A CN117579612A CN 117579612 A CN117579612 A CN 117579612A CN 202311544307 A CN202311544307 A CN 202311544307A CN 117579612 A CN117579612 A CN 117579612A
- Authority
- CN
- China
- Prior art keywords
- software module
- node
- request
- source node
- neighbor
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 49
- 238000000034 method Methods 0.000 claims abstract description 98
- 230000004044 response Effects 0.000 claims abstract description 70
- 230000008569 process Effects 0.000 claims abstract description 37
- 230000015654 memory Effects 0.000 claims description 25
- 230000006870 function Effects 0.000 description 15
- 238000003860 storage Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 12
- 238000013473 artificial intelligence Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 7
- 230000025600 response to UV Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000002121 ultrasonic speckle velocimetry Methods 0.000 description 3
- 241001522296 Erithacus rubecula Species 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000008713 feedback mechanism Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
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/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- 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
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- 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/445—Program loading or initiating
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/56—Routing software
- H04L45/566—Routing instructions carried by the data packet, e.g. active networks
-
- 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/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/006—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving public key infrastructure [PKI] trust models
- H04L9/007—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving public key infrastructure [PKI] trust models involving hierarchical structures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
- H04L9/3265—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate chains, trees or paths; Hierarchical trust model
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/50—Service provisioning or reconfiguring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/22—Communication route or path selection, e.g. power-based or shortest path routing using selective relaying for reaching a BTS [Base Transceiver Station] or an access point
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
- H04W40/246—Connectivity information discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
- H04W40/248—Connectivity information update
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/22—Processing or transfer of terminal data, e.g. status or physical capabilities
- H04W8/24—Transfer of terminal data
- H04W8/245—Transfer of terminal data from a network towards a terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- 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
-
- 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/45575—Starting, stopping, suspending or resuming virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Environmental & Geological Engineering (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请涉及用于源节点上的AD‑HOC数据处理的无线AD HOC网络中的软件分发,公开了在无线ad hoc网络中由源节点获取软件的方法。该方法包括源节点执行应用软件,从该应用软件中标识处理特定数据模态的需求,并确定源节点不能处理该特定数据模态。响应于该确定,源节点在源节点的本地模块存储库(MR)中搜索可用于处理该特定数据模态的软件模块,并响应于源节点未能在本地MR中定位该软件模块,向源节点的无线电范围内的多个节点中的邻居节点广播对该软件模块的请求。源节点从邻居节点接收该软件模块,并使用该软件模块处理该特定数据模态。
Description
本申请是2020年7月13日提交的名称为“源节点上的AD-HOC数据处理的无线ADHOC网络中的软件分发”的中国专利申请2020106676600的分案申请。
技术领域
本公开总体上涉及软件分发,尤其涉及用于在源节点(诸如自主机器)上进行ad-hoc(无线自组网)数据处理的无线ad hoc网络中的软件分发。
背景技术
与要求训练有素的操作员安全操作的其他机器相比,许多现代机器被设计为以增加的自主权进行操作。这些自主机器包括自主机器人和各种无人交通工具,包括无人地面交通工具(UGV)、无人空中交通工具(UAV)、无人水面交通工具(USV)、无人水下交通工具(UUV)和无人飞船。这些自主机器中的许多机器配备有传感器,并使用软件模块来处理由那些传感器产生或提供的数据。
自主机器通常会被预先加载,因此一旦执行任务,就可以基于任务的目的使用软件模块来处理数据。自主机器可以与其他自主机器或一个或多个集线器(例如地面站)直接或间接通信,以报告其传感器获取的数据。自主机器变得越来越智能,成为能够确定其无能力处理由一个或多个其传感器产生或提供的特定数据模态的学习系统。但是,一旦执行任务,则分发软件模块以使自主机器能够处理特定数据模态变得更加复杂,通常需要人工干预。
因此,期望具有一种系统和方法,其至少考虑以上讨论的一些问题以及其他可能的问题。
发明内容
本公开的示例实施方式针对于软件分发,尤其是针对用于在源节点(诸如自主机器)上进行ad-hoc数据处理的无线ad hoc网络中的软件分发。示例实施方式提供了一种获取无线ad hoc网络(例如,自主机器的网络)中的软件的智能、事务性、分布式和联合的方法。该方法可以包括自动确定处理数据模态的需求,通过在无线ad hoc中的节点之间通信来找到可用于处理数据模态的软件模块,获取软件模块并使用它来处理数据模态,而无需人工干预。
示例实施方式可以启用无线ad hoc网络,该无线ad hoc网络包括部署在任务上的自主机器,自行描述任务,找到可用于实现任务目标的软件模块以及基于实现这些目标来实现任务。
因此,本公开包括但不限于以下示例实施方式。
一些示例实施方式提供了一种由包括多个节点的无线ad hoc网络中的源节点获取软件的方法,该方法包括:源节点执行应用软件,从应用软件标识处理特定数据模态的需求;确定源节点不能处理特定数据模态;并响应于该确定,在源节点的本地模块存储库(MR)中搜索可用于处理特定数据模态的软件模块;响应于源节点未能在本地MR中定位软件模块,向多个节点中在源节点的无线电范围内的那些节点广播对软件模块的请求,那些节点由此为邻居节点,该请求使得邻居节点中的一个邻居节点在邻居节点的相应本地MR中搜索软件模块,当邻居节点未能在相应本地MR中定位软件模块时,将向多个节点中在邻居节点的无线电范围内的那些节点重新广播所述请求,那些节点由此为进一步的邻居节点,并且从进一步的邻居节点中的一个进一步的邻居节点接收软件模块;并且源节点进一步从邻居节点接收软件模块;以及使用软件模块来处理特定数据模态。
在任何前述示例实施方式的方法的一些示例实施方式或任何前述示例实施方式的任何组合中,源节点具有传感器的集合,并且该方法进一步包括所述传感器中产生或提供特定数据模态到应用软件的一个传感器,从该应用软件中标识处理特定数据模态的需求。
在任何前述示例实施方式的方法的一些示例实施方式或任何前述示例实施方式的任何组合中,确定是由应用软件做出的。
在任何前述示例实施方式的方法的一些示例实施方式或任何前述示例实施方式的任何组合中,确定是根据源节点从远程终端接收的请求做出的。
在任何前述示例实施方式的方法的一些示例实施方式或任何前述示例实施方式的任何组合中,搜索本地MR包括在本地MR中搜索被专门标识的软件模块,并且其中广播请求包括广播专门标识软件模块的请求。
在任何前述示例实施方式的方法的一些示例实施方式或任何前述示例实施方式的任何组合中,搜索本地MR包括在本地MR中搜索可用于处理特定数据模态的任何软件模块,而无需软件模块的专门标识,并且其中广播请求包括广播描述特定数据模态并且不包括软件模块的专门标识的请求。
在任何前述示例实施方式的方法的一些示例实施方式或任何前述示例实施方式的任何组合中,源节点从邻居节点接收软件模块包括源节点从邻居节点接收指示邻居节点具有软件模块的响应;向邻居节点单播(unicast)对软件模块的第二请求;以及响应于第二请求,从邻居节点接收软件模块。
在任何前述示例实施方式的方法的一些示例实施方式或任何前述示例实施方式的任何组合中,使用软件模块包括源节点执行操作系统级别的容器化(containerization),包括在要使用软件模块的源节点上创建并启动隔离的容器,创建隔离的容器包括将软件模块安装在隔离的容器中。
一些示例实施方式提供了一种由无线ad hoc网络中的源节点获取软件的方法,该无线ad hoc网络包括多个节点,其中在源节点的无线电范围内的那些节点是邻居节点,该方法包括邻居节点中的一个邻居节点接收来自源节点的对可用于处理特定数据模态的软件模块的请求,响应于源节点未能在本地模型存储库(MR)中定位软件模块,该请求从源节点广播到邻居节点,邻居节点响应于该请求:在邻居节点的相应本地MR中搜索软件模块;响应于邻居节点未能在相应本地MR中定位软件模块,将请求重新广播到多个节点中在邻居节点的无线电范围内的那些节点,那些节点由此为进一步的邻居节点;从进一步的邻居节点中的一个进一步的邻居节点接收软件模块;以及将软件模块返回到使用该软件模块处理特定数据模态的源节点。
在任何前述示例实施方式的方法的一些示例实施方式或任何前述示例实施方式的任何组合中,请求包括唯一标识符,并且该方法进一步包括邻居节点使用唯一标识符和邻居节点接收到的先前请求的记录来验证该请求是来自源节点的对特定软件模块的新请求。
在任何前述示例实施方式的方法的一些示例实施方式或任何前述示例实施方式的任何组合中,搜索相应MR包括在相应MR中搜索被专门标识的软件模块,并且其中重新广播所述请求包括重新广播专门标识软件模块的请求。
在任何前述示例实施方式的方法的一些示例实施方式或任何前述示例实施方式的任何组合中,搜索相应MR包括在相应MR中搜索可用于处理特定数据模态的任何软件模块,而无需软件模块的专门标识,并且其中重新广播所述请求包括重新广播描述特定数据模态并且不包括软件模块的专门标识的请求。
在任何前述示例实施方式的方法的一些示例实施方式或任何前述示例实施方式的任何组合中,邻居节点从进一步的邻居节点接收软件模块包括邻居节点从进一步的邻居节点接收指示进一步的邻居节点具有软件模块的响应;向进一步的邻居节点单播对软件模块的第二请求;以及响应于第二请求,从进一步的邻居节点接收软件模块。
在任何前述示例实施方式的方法的一些示例实施方式或任何前述示例实施方式的任何组合中,邻居节点将软件模块返回到源节点包括:邻居节点向源节点发送指示邻居节点具有软件模块的响应;接收从源节点单播的对软件模块的第二请求;以及响应于第二请求,将软件模块返回到源节点。
一些示例实施方式提供了一种在包括多个节点的无线ad hoc网络中可操作的源节点,源节点包括:存储器,其被配置为存储计算机可读程序代码;和处理电路,其被配置为访问存储器,并执行计算机可读程序代码以使源节点至少执行任何前述示例实施方式的方法或任何前述示例实施方式的任何组合。
一些示例实施方式提供了一种在包括多个节点的无线ad hoc网络中可操作的邻居节点,其中在源节点的无线电范围内的那些节点是邻居节点,邻居节点包括:存储器,其被配置为存储计算机可读程序代码;和处理电路,其被配置为访问存储器,并执行计算机可读程序代码以使邻居节点至少执行任何前述示例实施方式的方法或任何前述示例实施方式的任何组合。
通过阅读下面的详细描述以及下面简要描述的附图,本公开的这些和其他特征、方面和优点将变得显然。本公开包括在本公开中阐述的两个、三个、四个或更多个特征或元素的任何组合,而不管这些特征或元素在本文描述的特定示例实施方式中是明确组合还是以其他方式叙述。旨在整体地理解本公开,使得在本公开的任何方面和示例实施方式中,本公开的任何可分离的特征或元素应被视为可组合的,除非本公开的上下文另外明确指出。
因此,将认识到,仅出于概述一些示例实施方式的目的而提供本发明内容,以便提供对本公开的一些方面的基本理解。因此,将认识到,上述示例实施方式仅是示例,并且不应解释为以任何方式缩小本公开的范围或精神。根据结合附图的以下详细描述,其他示例实施方式、方面和优点将变得明显,附图以示例的方式示出了一些描述的示例实施方式的原理。
附图说明
因此,已经以一般的术语描述了本公开的示例实施方式,现在将参考附图,这些附图不一定按比例绘制,并且其中:
图1示出了无线ad hoc网络,本公开的示例实施方式可用于该无线ad hoc网络;
图2示出了根据本公开的示例实施方式的包括许多无人交通工具和地面站的无线ad hoc网络;
图3A、图3B、图3C和图3D示出了根据本公开的一些示例实施方式的无人交通工具(源节点)可以获取软件模块的过程;
图4示出了根据本公开的示例实施方式的无线ad hoc网络;
图5和图6是示出了根据示例实施方式的在包括多个节点的无线ad hoc网络中由源节点获取软件的方法中的各个步骤的流程图;和
图7示出了根据一些示例实施方式的装置。
具体实施方式
现在将在下文中参考附图更充分地描述本公开的一些实施方式,在附图中示出了本公开的一些但不是全部实施方式。实际上,本公开的各种实施方式可以以许多不同的形式来体现,并且不应被解释为限于在本文阐述的实施方式;相反,提供这些示例实施方式是为了使得本公开将是彻底和完整的,并且将向本领域技术人员充分传达本公开的范围。例如,除非另有指示,否则不应将引用为第一、第二等的事物解释为暗示特定顺序。同样,某些事物可能被描述为在其他事物之上(除非另有说明),而其可以改为在其下方,反之亦然;并且类似地,描述为位于其他事物左侧的事物可能改为位于右侧,反之亦然。贯穿全文,相似的附图标记指示相似的元件。
本公开的示例实施方式总体上涉及软件分发,并且尤其涉及用于源节点上的ad-hoc数据处理的无线ad hoc网络中的软件分发。一些示例实施方式提供了一种在包括多个节点的无线ad hoc网络中由源节点获取软件的方法。如本文所述,“节点”是物理网络节点,即能够在通信信道上创建、传输或接收信息的有源电子设备。合适的节点的一个示例是自主机器,其是被配置为独立于人类干预或在最小人类干预下执行任务的机器。并且合适的自主机器的示例包括自主机器人和各种无人交通工具,包括无人地面交通工具(UGV)、无人飞行交通工具(UAV)、无人水面交通工具(USV)、无人水下交通工具(UUV)、无人航天器等。
图1示出了无线ad hoc网络100,本公开的示例实施方式对于该无线ad hoc网络100可能是有用的。如图所示,无线ad hoc网络包括示出为各种无人交通工具102(包括可部署在任务上的多个UAV 102a、UGV 102b、USV 102c、UUV 102d和无人航天器102e)的节点。一项任务可能涉及其中一辆无人交通工具,或不止一个无人交通工具,在此期间无人交通工具可能会彼此通信。就这一点而言,无人交通工具可以通过相应的通信信道彼此通信,并与地面站104(另一节点)通信。尽管示出为无人交通工具的网络,但是应当理解,无线ad hoc网络可以包括除无人交通工具之外或代替无人交通工具的一个或多个自主机器人或其他自主机器。并且如下文所述,甚至更一般地,无线ad hoc网络可以简单地包括多个节点。
无线ad hoc网络的一个或多个节点中的每个节点(包括无人交通工具102和/或地面站104)可以包括传感器106的集合、软件模块108、模块存储库(MR)110和模块搜索服务(MSS)112(显示为专门用于无人航天器102e)。
在一些示例中,传感器106的集合被配置为在无人交通工具执行任务时收集数据,并且软件模块108用于处理或分析数据,例如用于计划、收集、分析、数据分发等。就这一点而言,无人交通工具102可以处理原始数据并将其存储在本地,并且如果可能和必要,则可以进一步传输原始数据。在一些示例中,软件模块还可以用于将元数据添加到原始数据,该元数据可以与原始数据一起存储和/或传输。
软件模块108是计算机程序,其被配置为获取一个或多个输入数据(原始或导出)源和零个或多个配置控制源,该配置控制源确定数据应如何被操纵,并产生一个或多个输出数据模态。软件模块使用一个或多个众所周知的或预定义的接口与其主计算机或其他软件模块或工作流程进行通信。软件模块可以通过插件端点(例如通过API(应用程序编程接口))遵循已知的通信协议。例如,软件模块可以使用具有已发布的表示状态传输(REST)API的超文本传输协议安全(HTTPS)协议。
一个或多个软件模块108可以使得能够创建和执行工作流程。工作流程包括按执行层次结构(例如DAG(有向无环图))组织的软件模块获取数据,或者作为反馈控制系统来改善工作流程内的输出数据质量。工作流程是软件模块的相互链接,使得一个软件模块的输出用作DAG配置或确定性反馈机制中另一个软件模块的输入或控制,该确定性反馈机制以某种方式改善工作流程的输出。工作流程还可以用作软件模块。软件模块或工作流程可以作为线性程序执行,或者可以基于设计、实施方式和能力并行化。
软件模块108(和工作流程)可以具有相似或变化的能力。软件模块可以具有读取和(适当时)写入数据的权限。软件模块可以读取原始数据,并且可以以导出数据的形式生成进一步的数据。软件可以具有或可以不具有权限来操纵原始数据或导出数据。在这方面,软件模块可以读取导出数据并且以进一步的导出数据的形式生成甚至进一步的数据。导出数据可以小于或大于导出数据的(源)数据。导出数据(如果较小)可以是源数据的一小部分。
根据可用的通信能力、连接性和授权,部分或完整形式的数据(原始或导出)可以作为一项服务传递到一个或多个目的地。合适的目的地的示例包括其他无人交通工具102、地面站104、有人交通工具、移动或固定通信终端等。
合适的软件模块108的示例包括计算机视觉模块、内容管理模块、数据优化模块、数据缩减模块、数据量化模块、数据分析模块、机器到机器通信模块、机器学习(ML)模块、人工智能(AI)引擎、客户端软件模块,这些客户端软件模块与同一辆无人交通工具102上或其他无人交通工具上的其他软件模块进行通信。
除了传感器106和软件模块108之外,无人交通工具102(以及地面站104)还可以包括MR 110和MSS112。MR和MSS可以以分布式方式在一台或多台计算机上运行。MR和MSS也可以在无人交通工具102上的计算机上运行。
MR 110是包含一个或多个软件模块108(软件模块的未安装副本)的存储库。众所周知的商业MR的示例包括Docker Hub和Amazon Container Registry。类似于众所周知的MR,MR将软件模块存储在存储设备上,并管理软件模块上的CRUD(创建、读取、更新和删除)操作、许可、版本控制等。
MSS112是在无人交通工具102(或地面站104)上的计算机上运行的服务。MSS基于搜索标准提供可用的软件模块108的列表以及在其上软件模块可用的节点。与众所周知的搜索引擎无异,随着时间的推移,MSS获知可用软件模块的能力、来自独特节点的搜索请求、各个节点的要求、正在发布的新内容以及正在删除的旧内容。
根据本公开的示例实施方式,无人交通工具102(也许还有地面站104)上的MSS112可以形成动态网格网络,其可以以类似于典型域名系统(DNS)网络的形式来组织。可以通过由无人交通工具上的服务器托管的API来处理请求和响应。跨连接的无人交通工具的MSS网格也可以类似于内容交付网络(CDN)的形式来组织。
根据本公开的示例实施方式,在无人交通工具102上运行的MSS112可以被配置为在其自己的MR 110内搜索一个或多个所请求的软件模块108,或者向其他MSS广播请求以在其相应MR中搜索所请求的软件模块。为了避免循环请求,每个请求都可以携带唯一标识符,例如通用唯一标识符(UUID),该标识符也可以持有或携带时间戳(例如,协调世界时间),以请求无人交通工具标识符、安全令牌、访问控制参数以及其他标识符和权限,例如可以在基于Web的标准安全令牌中找到的标识符和权限。
当MSS112接收到来自请求MSS的请求时,它可以验证其最近尚未接收并处理相同的请求。为了验证请求,MSS可以比较先前的请求中带有时间戳的令牌。在这方面,MSS可以通过其无人交通工具102何时接收到那些请求、请求无人交通工具的标识符以及何时做出请求来对先前的请求进行排序。如果MSS最近已经接收并处理了相同的请求,则MSS可以简单地忽略该请求,或者它可以额外向请求MSS返回错误,以通知请求MSS该请求是重复请求或潜在的循环请求。
为了说明本公开的示例实施方式,考虑无人交通工具102中的第一个(第一无人交通工具)具有AI引擎,该AI引擎检测由其一个或多个传感器106收集的数据内的数据的新模式和新模态。AI引擎标识处理新数据模态的需要,但是确定第一无人交通工具缺少可用于处理新数据模态的软件模块108。
第一无人交通工具102的AI引擎创建问题的描述,并且第一无人交通工具的MSS112(第一MSS)广播包括该问题的描述的请求,并且可以与该请求一起包括唯一令牌(第一令牌),其指向回到第一无人交通工具和该请求。第一MSS(在对其本地MR 110的不成功搜索之后)可以使用预定义的协议或者作为自由形式的内容来广播该请求。第一MSS可以使用诸如超文本传输协议(HTTP)、传输控制协议/互联网协议(TCP/IP)、用户数据报协议(UDP)之类的众所周知的协议(可选地使用加密或其他众所周知的或专有的安全机制)来广播请求。在这方面,第一MSS可以使用打包请求并广播请求的专有方法,可选地使用加密或其他众所周知的或专有的安全机制。
无人交通工具102中的第二个(第二无人交通工具)的MSS112(第二MSS)接收该请求,并且可以验证该请求以查看第一MSS是否被授权做出请求并接收软件模块108。如果发生错误,第二MSS可以返回“权限被拒绝”或出于安全原因可以选择不响应。类似地,第二MSS可以检查它是否已经接收并处理了包含第一令牌的请求;如果是,则第二MSS可以返回并显示“重复请求”错误消息。
如果检查表明请求是唯一的,则第二MSS112可以在其本地MR 110中搜索软件模块108(一个或多个),该软件模块对请求中描述的问题提供解决方案。如果第二MSS未能定位这样的软件模块,则第二MSS可以将请求重新广播到其他无人交通工具102的MSS。另一方面,如果第二MSS确实在其本地MR中定位了这样的软件模块,则第二MSS可以向第一MSS发送响应,即它具有可以解决该问题的软件模块。第一MSS可以从第二MSS接收响应。第一无人交通工具可以从第二无人交通工具的MR请求并且作为响应接收软件模块。第一无人交通工具可以验证模块(例如,为了完整性和安全性),并启动软件模块并使用它来处理新的数据模态。在出现错误的情况下,或者如果第一无人交通工具未能在特定时间段内接收到响应,则第一无人交通工具可以例如基于机器学习推理引擎决策或已编程到软件应用中的启发式算法来重试或放弃该请求。
图2示出了根据本公开的示例实施方式的无线ad hoc网络200,该无线ad hoc网络200包括可以对应于无人交通工具102的九个无人交通工具UV1-UV9以及可以对应于地面站104的地面站GS1。一个或多个无人交通工具UV1-UV9中的每一个都可以包括传感器206、软件模块208、MR 210和MSS212,它们可以对应于传感器106、软件模块108、MR 110和MSS112中的相应一个。地面站GS1还可以至少包括相应的MR和MSS。
在这方面,考虑一个示例,其中UV1在执行任务,其传感器正在捕获数据,并且它具有AI引擎来处理数据。AI引擎标识处理新的数据模态的需求,并且它需要搜索一个或多个软件模块M,该软件模块M可以解决处理新的数据模态的问题。其他无人交通工具,即UV4和UV7,与地面站GS1一样具有软件模块M。
在无人交通工具中,UV2、UV3和UV4在时间T1处在UV1的无线电范围内。无人交通工具UV2进一步在UV6和UV7的无线电范围内,而无人交通工具UV3进一步在UV5、UV6和UV7的无线电范围内。而且,无人交通工具UV7进一步在UV8和UV9以及地面站GS1的无线电范围内。
图3A至图3D根据本公开的一些示例实施方式,参考图2的无线ad hoc网络200示出了无人交通工具UV1(源节点)可以获取软件模块M的过程(没有单独示出传感器206、软件模块208、MR 210和MSS212)。当UV1的AI引擎标识处理新的数据模态的需求时,UV1请求可用于处理新的数据模态的软件模块M。如图3a所示,当UV1的MSS212未能在其本地MR 210中定位软件模块M时,MSS向UV1的邻居(即,UV1的无线电范围内的UV2、UV3和UV4)广播该请求。无人交通工具UV2、UV3和UV4接收该请求。
无人交通工具UV4具有软件模块M,并发送对该请求的响应;但是由于连接问题,它现在超出了UV1的无线电范围,因此响应没有达到UV1,并且最终超时。无人交通工具UV2和UV3不具有软件模块M,因此它们重新广播该请求。特别是,UV3将请求重新广播给它的进一步的邻居,即UV3的进一步无线电范围内的UV5、UV6和UV7。而且,无人交通工具UV2将请求重新广播给它的进一步的邻居,即UV2的进一步无线电范围内的UV6和UV7。
如图3B所示,无人交通工具UV5和UV7不具有软件模块M并向UV3发送“否”响应。无人交通工具UV7具有软件模块M,并向UV3发送“是”响应。由于UV6和UV7已从UV3接收到请求,因此它们将忽略UV2重新广播的请求,或将重复请求错误发送给UV2。因此,无人交通工具UV2向UV1发送“否”响应。
如图3C所示,响应于来自UV7的“是”响应,无人交通工具UV3向UV7发送针对软件模块M的“获得模块”请求。作为响应,UV3从UV7接收软件模块M,验证软件模块M并将其保存在其本地MR 210中,并更新其MSS212以反映它现在具有软件模块M。无人交通工具UV3也向UV1发送“是”响应。
如图3D所示,响应于“是”响应,无人交通工具UV1向UV3发送针对软件模块M的“获得模块”。无人交通工具UV1从UV3接收软件模块M,验证软件模块M并将其保存在其本地MR210中,并更新其MSS212以反映它现在具有软件模块M。无人交通工具UV1按照一组已知的规则启动软件模块M,并且初始化并连接到软件模块M。无人交通工具UV1也可以测试软件模块M,并且如果UV1遇到故障,对其进行记录并终止软件模块M。否则,UV1准备使用软件模块M。而且,在某些示例中,可以进一步接收UV1返回和日志以进行聚合和分析。
如上所述,尽管主要在无人交通工具的背景下进行了描述,但是本公开的示例实施方式更普遍地适用于包括多个节点的无线ad hoc网络。合适的节点的其他示例包括诸如台式计算机、服务器计算机、便携式计算机(例如,膝上型计算机、平板计算机)、移动电话(例如,手机、智能电话)、可穿戴计算机(例如,智能手表)等的计算机。这些计算机可以是独立的,或者可以嵌入较大的机械或电气系统内。
图4示出了根据本公开的示例实施方式的包括多个节点402的无线ad hoc网络400。多个节点包括被配置为执行应用软件408a的源节点402a,从该应用软件408a中标识处理特定数据模态的需求。在一些示例中,源节点具有传感器406a的集合,传感器406a中的一个传感器被配置为产生或向应用软件408a提供特定数据模态,从该应用软件408a中标识处理特定数据模态的需求。
源节点402a被配置为确定源节点不能处理特定数据模态。在一些示例中,确定是由应用软件408a做出的。在其他示例中,确定是根据源节点从诸如地面站之类的远程终端接收到的请求做出的。
响应于该确定,源节点402a被配置为在源节点的本地模块存储库MR 410a中搜索可用于处理特定数据模态的软件模块。源节点被配置为响应于源节点未能在本地MR中定位软件模块而向多个节点中在源节点的无线电范围内的那些节点广播对软件模块的请求,那些节点由此为邻居节点402b、402c。尽管未针对所有节点402单独示出,但是在一些示例中,无线ad hoc网络400的源节点以及其他节点也可以包括本地MSS、传感器和/或软件模块。
在一些示例中,源节点402a被配置为在本地MR 410a中搜索被专门标识的软件模块,并且广播专门标识该软件模块的请求。在其他示例中,源节点被配置为在本地MR中搜索可用于处理特定数据模态的任何软件模块,而无需软件模块的专门标识。在这些其他示例中,源节点被配置为广播描述特定数据模态并且不包括软件模块的专门标识的请求。
响应于源节点402a广播的请求,邻居节点中的一个邻居节点402b被配置为在邻居节点的相应本地MR 410b中搜索软件模块。邻居节点被配置为响应于邻居节点未能在相应本地MR中定位软件模块而将该请求重新广播到多个节点中在该邻居节点的无线电范围内的那些节点,那些节点由此为进一步的邻居节点402d、402e。而且,邻居节点被配置为从进一步的邻居节点中的进一步的一个邻居节点402d接收软件模块。
源节点402a被配置为从邻居节点402b接收软件模块。在一些示例中,这包括源节点402a被配置为从邻居节点402b接收指示邻居节点具有软件模块的响应。在这些示例中,源节点被配置为将对软件模块的第二请求单播到邻居节点,并且响应于第二请求而从邻居节点接收软件模块。
在接收到软件模块之后,源节点402a被配置为使用软件模块来处理特定数据模态。在一些示例中,源节点被配置为执行操作系统级别的容器化。这包括源节点被配置为在要在其中使用软件模块的源节点上创建并启动隔离的容器。隔离的容器是操作系统级别(OS级别)的虚拟化。与使用管理程序(hypervisor)(而不是容器引擎)来创建虚拟机来模拟节点的硬件虚拟化相比,它是不同的并且总体上需要更少的开销。从在隔离的容器中执行的软件应用程序的角度来看,隔离的容器可能显示为真实节点,但是这些应用程序仅对分配给它的源节点的资源具有可见性,认为这些资源是全部可用的。然后,隔离的容器的创建可以包括源节点被配置为将软件模块安装在隔离的容器中。
从另一个角度看,在一些示例中,邻居节点402b被配置为从源节点402a接收对可用于处理特定数据模态的软件模块的请求。这响应于源节点未能在本地模型存储库MR410a中定位软件模块,并且请求从源节点广播到邻居节点402b、402c。在一些示例中,该请求包括唯一标识符,并且邻居节点进一步被配置为使用唯一标识符和由邻居节点接收到的先前请求的记录来验证该请求是来自源节点402a的对特定软件模块的新请求。
响应于该请求,邻居节点402b被配置为在邻居节点的相应本地MR 410b中搜索软件模块。邻居节点402b被配置为:响应于邻居节点未能在相应本地MR中定位软件模块而将该请求重新广播到该邻居节点的无线电范围内的多个节点中的那些节点,那些节点由此为进一步的邻居节点402d、402e。
在一些示例中,邻居节点402b被配置为在相应MR 410b中搜索被专门标识的软件模块,并且重新广播专门标识软件模块的请求。在其他示例中,邻居节点被配置为在相应MR中搜索可用于处理特定数据模态的任何软件模块,而无需软件模块的专门标识。在这些示例中,邻居节点被配置为重新广播描述特定数据模态并且不包括软件模块的专门标识的请求。
邻居节点402b被配置为从进一步的邻居节点中的进一步的一个邻居节点402d接收软件模块。在一些示例中,这可以包括邻居节点被配置为从进一步的邻居节点接收指示该进一步的邻居节点具有软件模块的响应。在这些示例中,邻居节点被配置为将对软件模块的第二请求单播到进一步的邻居节点,并且响应于第二请求而从进一步的邻居节点接收软件模块。
在接收到软件模块之后,邻居节点402b被配置为将软件模块返回到使用软件模块来处理特定数据模态的源节点402a。在一些示例中,这可以包括邻居节点被配置为向源节点发送指示邻居节点具有软件模块的响应。邻居节点然后被配置为接收从源节点单播的对软件模块的第二请求,并且响应于第二请求将软件模块返回到源节点。
图5是示出了根据示例实施方式的由无线ad hoc网络400中的源节点402a获取软件的方法500中的各个步骤的流程图,该无线ad hoc网络400包括多个节点402。如框502和504所示,该方法包括:源节点执行应用软件408a,从该应用软件408a中标识处理特定数据模态的需求;以及确定该源节点不能处理该特定数据模态。响应于该确定,该方法包括源节点在源节点的本地模块存储库MR 410a中搜索可用于处理特定数据模态的软件模块,如框506所示。该方法包括:响应于源节点未能在本地MR中定位软件模块,源节点向多个节点中在源节点的无线电范围内的那些节点广播对软件模块的请求,那些节点由此为邻居节点402b、402c,如框508所示。
响应于该请求,邻居节点中的一个邻居节点402b在邻居节点的相应本地MR 410b中搜索软件模块。响应于邻居节点未能在相应本地MR中定位软件模块,邻居节点将请求重新广播到多个节点中在邻居节点的无线电范围内的那些节点,那些节点由此为进一步的邻居节点402d、402e。而且,邻居节点从进一步的邻居节点中的一个进一步的邻居节点402d接收软件模块。该方法然后进一步包括源节点从该邻居节点接收软件模块,并使用该软件模块来处理特定数据模态,如框510和框512所示。
图6是示出根据其他示例实施方式的由无线ad hoc网络400中的源节点402a获取软件的方法600中的各个步骤的流程图,该无线ad hoc网络400包括多个节点402,其中在源节点的无线电范围内的那些节点是邻居节点402b、402c。如框602所示,该方法包括邻居节点中的一个邻居节点402b从源节点接收对可用于处理特定数据模态的软件模块的请求。响应于源节点未能在本地模型存储库MR 410a中定位软件模块而接收该请求,并从源节点向邻居节点广播该请求。
响应于该请求,邻居节点402b在该邻居节点的相应本地MR 410b中搜索该软件模块,如框604所示。响应于邻居节点未能在相应本地MR中定位软件模块,该邻居节点将该请求重新广播到多个节点中在该邻居节点的无线电范围内的那些节点,那些节点由此为进一步的邻居节点402d、402e,如框606所示。而且,该邻居节点从进一步的邻居节点中的一个进一步的邻居节点402d接收软件模块,并将软件模块返回到使用该软件模块来处理特定数据模态的源节点402a,如框608和框610所示。
根据本公开的示例实施方式,软件模块108、208、408a,MR 110、210、410a,410b和MSS112、212以及节点402可以由各种手段/装置实现或以其他方式执行。这些手段可以包括硬件,单独地或在来自计算机可读存储介质的一个或多个计算机程序的指导下。在一些示例中,一个或多个装置可以被配置为充当或以其他方式实现或执行软件模块、MR和MSS以及本文示出和描述的节点。
图7示出了根据本公开的一些示例实施方式的装置700。通常,本公开的示例实施方式的装置可以包含、包括或体现在一个或多个固定或便携式电子设备中。合适的电子设备的示例包括诸如台式计算机、服务器计算机、便携式计算机(例如,膝上型计算机、平板计算机)、移动电话(例如,手机、智能电话)、可穿戴计算机(例如,智能手表)等的计算机。该装置可以包括多个部件中的每个部件(例如,连接到存储器704(例如,存储设备)的处理电路702(例如,处理器单元))中的一个或多个。
处理电路702可以由单独的一个或多个处理器组成或与一个或多个存储器组合的一个或多个处理器组成。处理电路通常是能够处理诸如数据、计算机程序和/或其他合适的电子信息之类的信息的任何计算机硬件。处理电路由电子电路的集合组成,其中一些电子电路可以被封装为集成电路或多个互连的集成电路(有时将集成电路更普遍地称为“芯片”)。处理电路可以被配置为执行计算机程序,该计算机程序可以被存储在处理电路板上或以其他方式被存储在(相同或另一装置的)存储器704中。
根据特定的实施方式,处理电路702可以是多个处理器、多核处理器或某种其他类型的处理器。此外,可以使用多个异构处理器系统来实现处理电路,其中主处理器与一个或多个辅助处理器一起存在于单个芯片上。作为另一个说明性示例,处理电路可以是包含多个相同类型的处理器的对称多处理器系统。在又一示例中,处理电路可以被实现为或以其他方式包括一个或多个ASIC、FPGA等。因此,尽管处理电路能够执行计算机程序以执行一个或多个功能,但是各种示例的处理电路能够执行一个或多个功能而无需计算机程序的辅助。在任一情况下,处理电路可以被适当地编程以执行根据本公开的示例实施方式的功能或操作。
存储器704通常是能够临时存储和/或永久存储信息(例如,数据、计算机程序(例如计算机可读程序代码706)和/或其他合适的信息)的任何计算机硬件。存储器可以包括易失性和/或非易失性存储器,并且可以是固定的或可移除的。合适的存储器的示例包括随机存取存储器(RAM)、只读存储器(ROM)、硬盘驱动器、闪存、拇指驱动器、可移除计算机磁盘、光盘、磁带或上述的某种组合。光盘可以包括光盘-只读存储器(CD-ROM)、光盘-读/写(CD-R/W)、DVD等。在各种情况下,存储器可以被称为计算机可读存储介质。计算机可读存储介质是能够存储信息的非暂时性设备,并且可与诸如能够将信息从一个位置携带到另一位置的电子瞬态信号之类的计算机可读传输介质区分开。本文所述的计算机可读介质通常可以指计算机可读存储介质或计算机可读传输介质。
除了存储器704之外,处理电路702还可以连接到用于显示、传输和/或接收信息的一个或多个接口。接口可以包括通信接口708(例如,通信单元)和/或一个或多个用户接口。通信接口可以被配置为例如向和/或从(一个或多个)其他装置、(一个或多个)网络等传输和/或接收信息。通信接口可以被配置为通过物理(有线)和/或无线通信链路来传输和/或接收信息。合适的通信接口的示例包括网络接口控制器(NIC)、无线NIC(WNIC)等。
用户接口可以包括显示器710和/或一个或多个用户输入接口712(例如,输入/输出单元)。显示器可以被配置为向用户呈现或以其他方式显示信息,其合适的示例包括液晶显示器(LCD)、发光二极管显示器(LED)、等离子显示面板(PDP)等。用户输入接口可以是有线的或无线的,并且可以被配置为从用户接收信息到装置中,例如用于处理、存储和/或显示。用户输入接口的合适的示例包括麦克风、图像或视频捕获设备、键盘或小键盘、操纵杆、触敏表面(与触摸屏分离或集成到触摸屏中)、生物特征传感器等。用户接口可以进一步包括用于与诸如打印机、扫描仪等外围设备进行通信的一个或多个接口。
如上所述,程序代码指令可以存储在存储器中,并由由此被编程的处理电路执行,以实现本文所述的系统、子系统、工具及其相应元件的功能。将会理解,任何合适的程序代码指令可以从计算机可读存储介质加载到计算机或其他可编程装置上,以产生特定的机器,使得该特定的机器成为用于实现本文中指定的功能的装置。这些程序代码指令也可以存储在计算机可读存储介质中,该计算机可读存储介质可以引导计算机、处理电路或其他可编程装置以特定方式起作用,从而生成特定机器或特定制品。存储在计算机可读存储介质中的指令可以产生制品,其中该制品成为用于实现本文描述的功能的装置。可以从计算机可读存储介质中检索程序代码指令,并将其加载到计算机、处理电路或其他可编程装置中以配置计算机、处理电路或其他可编程装置以执行要在计算机、处理电路或其他可编程设备上或由计算机、处理电路或其他可编程设备执行的操作。
程序代码指令的检索、加载和执行可以顺序执行,使得一次检索、加载和执行一条指令。在一些示例实施方式中,检索、加载和/或执行可以并行执行,使得多条指令一起检索、加载和/或执行。程序代码指令的执行可以产生计算机实现的过程,使得由计算机、处理电路或其他可编程装置执行的指令提供用于实现本文描述的功能的操作。
通过处理电路执行指令或将指令存储在计算机可读存储介质中,支持用于执行指定功能的操作的组合。以这种方式,装置700可以包括处理电路702和耦合到该处理电路的计算机可读存储介质或存储器704,其中该处理电路被配置为执行存储在该存储器中的计算机可读程序代码706。还应理解,一个或多个功能以及功能的组合可以由执行特定功能的基于专用硬件的计算机系统和/或处理电路或专用硬件和程序代码指令的组合来实现。
此外,本公开包括根据以下条款所述的实施例:
条款1.一种在包括多个节点402的无线ad hoc网络400中可操作的源节点402a、700,所述源节点包括:
存储器704,其被配置为存储计算机可读程序代码706;和
处理电路702,其被配置为访问所述存储器,并执行所述计算机可读程序代码以使所述源节点至少:
执行502应用软件408a,从所述应用软件标识处理特定数据模态的需求;
确定504所述源节点不能处理所述特定数据模态;并响应于所述确定,
在所述源节点的本地模块存储库即本地MR 410a中搜索506可用于处理所述特定数据模态的软件模块;
响应于所述源节点未能在所述本地MR中定位所述软件模块,向所述多个节点中在所述源节点的无线电范围内的那些节点广播508对所述软件模块的请求,所述那些节点由此为邻居节点402b、402c,所述请求使所述邻居节点中的一个邻居节点402b在所述一个邻居节点的相应本地MR 410b中搜索所述软件模块,当所述一个邻居节点未能在所述相应本地MR中定位所述软件模块时,将所述请求重新广播到所述多个节点中在所述一个邻居节点的无线电范围内的那些节点,所述那些节点由此为进一步的邻居节点402d、402e,并且从所述进一步的邻居节点中的一个进一步的邻居节点402d接收所述软件模块;并且所述源节点进一步使:
从所述一个邻居节点接收510所述软件模块;和
使用512所述软件模块来处理所述特定数据模态。
条款2.根据条款1所述的源节点402a、700,其中所述源节点具有传感器406a的集合,所述传感器中的一个传感器被配置为产生或提供所述特定数据模态到所述应用软件408a,从所述应用软件标识处理所述特定数据模态的所述需求。
条款3.根据任一前述条款所述的源节点402a、700,其中所述确定是由所述应用软件408a做出的。
条款4.根据任一前述条款所述的源节点402a、700,其中所述确定是根据所述源节点从远程终端接收的请求做出的。
条款5.根据任一前述条款所述的源节点402a、700,其中使所述源节点在所述本地MR 410a中搜索被专门标识的所述软件模块,并且
其中使所述源节点广播专门标识所述软件模块的所述请求。
条款6.根据任一前述条款所述的源节点402a、700,其中使所述源节点在所述本地MR 410a中搜索可用于处理所述特定数据模态的任何软件模块,而无需所述软件模块的专门标识,并且
其中使所述源节点广播描述所述特定数据模态并且不包括所述软件模块的专门标识的所述请求。
条款7.根据任一前述条款所述的源节点402a、700,其中使所述源节点从所述邻居节点402b接收所述软件模块包括使所述源节点至少:
从所述邻居节点接收指示所述邻居节点具有所述软件模块的响应;
向所述邻居节点单播对所述软件模块的第二请求;和
响应于所述第二请求,从所述一个邻居节点接收所述软件模块。
条款8.根据任一前述条款所述的源节点402a、700,其中使所述源节点使用所述软件模块包括使所述源节点至少:
执行操作系统级别的容器化,包括在要使用所述软件模块的所述源节点上创建并启动隔离的容器,使所述源节点创建所述隔离的容器包括使所述源节点将所述软件模块安装在所述隔离的容器中。
条款9.一种在包括多个节点402的无线ad hoc网络400中可操作的邻居节点402b、700,其中在源节点402a的无线电范围内的那些节点是邻居节点402b、402c,所述邻居节点包括:
存储器704,其被配置为存储计算机可读程序代码706;和
处理电路702,其被配置为访问所述存储器,并执行所述计算机可读程序代码以使所述邻居节点至少:
响应于所述源节点未能在本地模型存储库MR 410a中定位可用于处理特定数据模态的软件模块,从所述源节点接收602对所述软件模块的请求,所述请求从所述源节点广播到所述邻居节点,响应于所述请求而使所述邻居节点至少:
在所述邻居节点的相应本地MR 410b中搜索604所述软件模块;
响应于所述邻居节点未能在所述相应本地MR中定位所述软件模块,将所述请求重新广播606到所述邻居节点的无线电范围内的所述多个节点中的那些节点,所述那些节点由此为进一步的邻居节点402d、402e;
从所述进一步的邻居节点中的一个进一步的邻居节点402d接收608所述软件模块;和
将所述软件模块返回610到使用所述软件模块处理所述特定数据模态的所述源节点。
条款10.根据条款9所述的邻居节点402b、700,其中所述请求包括唯一标识符,并且所述处理电路702被配置为执行所述计算机可读程序代码706以进一步使所述邻居节点使用所述唯一标识符和所述邻居节点接收到的先前请求的记录来验证所述请求是来自所述源节点402a的对所述特定软件模块的新请求。
条款11.根据条款9-10中的任一项所述的邻居节点402b、700,其中使所述邻居节点在所述相应MR 410b中搜索被专门标识的所述软件模块,并且
其中使所述邻居节点重新广播专门标识所述软件模块的所述请求。
条款12.根据条款9-11中的任一项所述的邻居节点402b、700,其中使所述邻居节点在所述相应MR 410b中搜索可用于处理所述特定数据模态的任何软件模块,而无需所述软件模块的专门标识,并且
其中使所述邻居节点重新广播描述所述特定数据模态并且不包括所述软件模块的专门标识的所述请求。
条款13.根据条款9-12中的任一项所述的邻居节点402b、700,其中使所述邻居节点从所述进一步的邻居节点402d接收所述软件模块包括使所述邻居节点至少:
从所述进一步的邻居节点接收指示所述进一步的邻居节点具有所述软件模块的响应;
向所述进一步的邻居节点单播对所述软件模块的第二请求;和
响应于所述第二请求,从所述进一步的邻居节点接收所述软件模块。
条款14.根据条款9-13中的任一项所述的邻居节点402b、700,其中使所述邻居节点将所述软件模块返回到所述源节点402a包括使所述邻居节点至少:
向所述源节点发送指示所述邻居节点具有所述软件模块的响应;
接收从所述源节点单播的对所述软件模块的第二请求;和
响应于所述第二请求,将所述软件模块返回到所述源节点。
条款15.一种由包括多个节点402的无线ad hoc网络400中的源节点402a获取软件的方法500,所述方法包括所述源节点:
执行502应用软件408a,从所述应用软件标识处理特定数据模态的需求;
确定504所述源节点不能处理所述特定数据模态;并响应于所述确定,
在所述源节点的本地模块存储库即本地MR 410a中搜索506可用于处理所述特定数据模态的软件模块;
响应于所述源节点未能在所述本地MR中定位所述软件模块,向所述源节点的无线电范围内的所述多个节点中的那些节点广播508对所述软件模块的请求,所述那些节点由此为邻居节点402b、402c,所述请求使所述邻居节点中的一个邻居节点402b在所述邻居节点的相应本地MR 410b中搜索所述软件模块,当所述邻居节点未能在所述相应本地MR中定位所述软件模块时,将所述请求重新广播到所述邻居节点的无线电范围内的所述多个节点中的那些节点,所述那些节点由此为进一步的邻居节点402d、402e,并且从所述进一步的邻居节点中的一个进一步的邻居节点402d接收所述软件模块;并且所述源节点进一步:
从所述邻居节点接收510所述软件模块;和
使用512所述软件模块来处理所述特定数据模态。
条款16.根据条款15所述的方法,其中所述源节点402a具有传感器406a的集合,并且所述方法进一步包括所述传感器中的一个传感器:
产生或提供所述特定数据模态到所述应用软件408a,从所述应用软件标识处理所述特定数据模态的所述需求。
条款17.根据条款15-16中的任一项所述的方法,其中所述确定是由所述应用软件408a做出的。
条款18.根据条款15-17所述的方法,其中所述确定是根据所述源节点402a从远程终端接收的请求做出的。
条款19.根据条款15-18所述的方法,其中搜索所述本地MR 410a包括在所述本地MR中搜索被专门标识的所述软件模块,并且
其中广播所述请求包括广播专门标识所述软件模块的所述请求。
条款20.根据条款15-19所述的方法,其中搜索所述本地MR 410a包括在所述本地MR中搜索可用于处理所述特定数据模态的任何软件模块,而无需所述软件模块的专门标识,并且
其中广播所述请求包括广播描述所述特定数据模态并且不包括所述软件模块的专门标识的所述请求。
条款21.根据条款15-20所述的方法,其中所述源节点402a从所述邻居节点402b接收所述软件模块包括所述源节点:
从所述邻居节点接收指示所述邻居节点具有所述软件模块的响应;
向所述邻居节点单播对所述软件模块的第二请求;和
响应于所述第二请求,从所述邻居节点接收所述软件模块。
条款22.根据条款15-21所述的方法,其中使用所述软件模块包括所述源节点402a:
执行操作系统级别的容器化,包括在要使用所述软件模块的所述源节点上创建并启动隔离的容器,创建所述隔离的容器包括将所述软件模块安装在所述隔离的容器中。
条款23.一种在包括多个节点的无线ad hoc网络中由源节点402a获取软件的方法600,其中在所述源节点的无线电范围内的那些节点是邻居节点402b、402c,所述方法包括所述邻居节点中的一个邻居节点402b:
响应于所述源节点未能在本地模型存储库MR 410a中定位可用于处理特定数据模态的软件模块,从所述源节点接收602对所述软件模块的请求,所述请求从所述源节点广播到所述邻居节点,所述邻居节点响应于所述请求:
在所述邻居节点的相应本地MR 410b中搜索604所述软件模块;
响应于所述邻居节点未能在所述相应本地MR中定位所述软件模块,将所述请求重新广播606到所述邻居节点的无线电范围内的所述多个节点中的那些节点,所述那些节点由此为进一步的邻居节点402d、402e;
从所述进一步的邻居节点中的一个进一步的邻居节点402d接收608所述软件模块;和
将所述软件模块返回610到使用所述软件模块来处理所述特定数据模态的所述源节点。
条款24.根据条款23所述的方法,其中所述请求包括唯一标识符,并且所述方法进一步包括所述邻居节点402b:
使用所述唯一标识符和所述邻居节点接收到的先前请求的记录,验证所述请求是来自所述源节点402a的对所述特定软件模块的新请求。
条款25.根据条款23-24所述的方法,其中搜索所述相应MR 410b包括:在所述相应MR中搜索被专门标识的所述软件模块,并且其中重新广播所述请求包括重新广播专门标识所述软件模块的所述请求。
条款26.根据条款23-25所述的方法,其中搜索所述相应MR 410b包括在所述相应MR中搜索可用于处理所述特定数据模态的任何软件模块,而无需所述软件模块的专门标识,并且
其中重新广播所述请求包括重新广播描述所述特定数据模态并且不包括所述软件模块的专门标识的所述请求。
条款27.根据条款23-26所述的方法,其中所述邻居节点402b从所述进一步的邻居节点402d接收所述软件模块包括所述邻居节点:
从所述进一步的邻居节点接收指示所述进一步的邻居节点具有所述软件模块的响应;
向所述进一步的邻居节点单播对所述软件模块的第二请求;和
响应于所述第二请求,从所述进一步的邻居节点接收所述软件模块。
条款28.根据条款23-27所述的方法,其中所述邻居节点402b将所述软件模块返回到所述源节点402a包括所述邻居节点:
向所述源节点发送指示所述邻居节点具有所述软件模块的响应;
接收从所述源节点单播的对所述软件模块的第二请求;和
响应于所述第二请求,将所述软件模块返回到所述源节点。
受益于前述说明书和相关附图中呈现的教导,本公开所属领域的技术人员将想到本文阐述的本公开的许多修改和其他实施方式。因此,应当理解,本公开不限于所公开的特定实施方式,并且修改和其他实施方式旨在被包括在所附权利要求的范围内。此外,尽管前述说明书和相关附图在元件和/或功能的某些示例组合的背景下描述了示例性实施方式,但是应当理解,在不背离所附权利要求的范围的情况下,可以由替代性实施方式提供元件和/或功能的不同组合。就这一点而言,例如,也考虑与上文明确描述的元件和/或功能的组合相比的元件和/或功能的不同组合,如一些所附权利要求中可能所阐述的。尽管本文采用了特定术语,但是它们仅在一般和描述性意义上使用,而不是出于限制的目的。
Claims (12)
1.一种在包括多个节点(402)的无线ad hoc网络(400)中可操作的邻居节点(402b、700),其中在源节点(402a)的无线电范围内的那些节点是邻居节点(402b、402c),所述邻居节点包括:
存储器(704),其被配置为存储计算机可读程序代码(706);和
处理电路(702),其被配置为访问所述存储器,并执行所述计算机可读程序代码以使所述邻居节点至少:
响应于所述源节点未能在本地模型存储库(MR)(410a)中定位可用于处理特定数据模态的软件模块,从所述源节点接收(602)对所述软件模块的请求,所述请求从所述源节点广播到所述邻居节点,响应于所述请求而使所述邻居节点至少:
在所述邻居节点的相应本地MR(410b)中搜索(604)所述软件模块;
响应于所述邻居节点未能在所述相应本地MR中定位所述软件模块,将所述请求重新广播(606)到所述邻居节点的无线电范围内的所述多个节点中的那些节点,所述那些节点由此为进一步的邻居节点(402d、402e);
从所述进一步的邻居节点中的一个进一步的邻居节点(402d)接收(608)所述软件模块;和
将所述软件模块返回(610)到使用所述软件模块处理所述特定数据模态的所述源节点。
2.根据权利要求1所述的邻居节点(402b、700),其中所述请求包括唯一标识符,并且所述处理电路(702)被配置为执行所述计算机可读程序代码(706)以进一步使所述邻居节点使用所述唯一标识符和所述邻居节点接收到的先前请求的记录来验证所述请求是来自所述源节点(402a)的对所述特定软件模块的新请求。
3.根据权利要求1-2中任一项所述的邻居节点(402b、700),其中使所述邻居节点在所述相应MR(410b)中搜索被专门标识的所述软件模块,并且
其中使所述邻居节点重新广播专门标识所述软件模块的所述请求。
4.根据权利要求1-3中任一项所述的邻居节点(402b、700),其中使所述邻居节点在所述相应MR(410b)中搜索可用于处理所述特定数据模态的任何软件模块,而无需所述软件模块的专门标识,并且
其中使所述邻居节点重新广播描述所述特定数据模态并且不包括所述软件模块的专门标识的所述请求。
5.根据权利要求1-4中任一项所述的邻居节点(402b、700),其中使所述邻居节点从所述进一步的邻居节点(402d)接收所述软件模块包括使所述邻居节点至少:
从所述进一步的邻居节点接收指示所述进一步的邻居节点具有所述软件模块的响应;
向所述进一步的邻居节点单播对所述软件模块的第二请求;和
响应于所述第二请求,从所述进一步的邻居节点接收所述软件模块。
6.根据权利要求1-5中任一项所述的邻居节点(402b、700),其中使所述邻居节点将所述软件模块返回到所述源节点(402a)包括使所述邻居节点至少:
向所述源节点发送指示所述邻居节点具有所述软件模块的响应;
接收从所述源节点单播的对所述软件模块的第二请求;和
响应于所述第二请求,将所述软件模块返回到所述源节点。
7.一种在包括多个节点的无线ad hoc网络中由源节点(402a)获取软件的方法(600),其中在所述源节点的无线电范围内的那些节点是邻居节点(402b、402c),所述方法包括所述邻居节点中的一个邻居节点(402b):
响应于所述源节点未能在本地模型存储库(MR)(410a)中定位可用于处理特定数据模态的软件模块,从所述源节点接收(602)对所述软件模块的请求,所述请求从所述源节点广播到所述邻居节点,所述邻居节点响应于所述请求:
在所述邻居节点的相应本地MR(410b)中搜索(604)所述软件模块;
响应于所述邻居节点未能在所述相应本地MR中定位所述软件模块,将所述请求重新广播(606)到所述邻居节点的无线电范围内的所述多个节点中的那些节点,所述那些节点由此为进一步的邻居节点(402d、402e);
从所述进一步的邻居节点中的一个进一步的邻居节点(402d)接收(608)所述软件模块;和
将所述软件模块返回(610)到使用所述软件模块来处理所述特定数据模态的所述源节点。
8.根据权利要求7所述的方法,其中所述请求包括唯一标识符,并且所述方法进一步包括所述邻居节点(402b):
使用所述唯一标识符和所述邻居节点接收到的先前请求的记录,验证所述请求是来自所述源节点(402a)的对所述特定软件模块的新请求。
9.根据权利要求7或8所述的方法,其中搜索所述相应MR(410b)包括:在所述相应MR中搜索被专门标识的所述软件模块,并且其中重新广播所述请求包括重新广播专门标识所述软件模块的所述请求。
10.根据权利要求7-9中任一项所述的方法,其中搜索所述相应MR(410b)包括在所述相应MR中搜索可用于处理所述特定数据模态的任何软件模块,而无需所述软件模块的专门标识,并且
其中重新广播所述请求包括重新广播描述所述特定数据模态并且不包括所述软件模块的专门标识的所述请求。
11.根据权利要求7-10中任一项所述的方法,其中所述邻居节点(402b)从所述进一步的邻居节点(402d)接收所述软件模块包括所述邻居节点:
从所述进一步的邻居节点接收指示所述进一步的邻居节点具有所述软件模块的响应;
向所述进一步的邻居节点单播对所述软件模块的第二请求;和
响应于所述第二请求,从所述进一步的邻居节点接收所述软件模块。
12.根据权利要求7-11中任一项所述的方法,其中所述邻居节点(402b)将所述软件模块返回到所述源节点(402a)包括所述邻居节点:
向所述源节点发送指示所述邻居节点具有所述软件模块的响应;
接收从所述源节点单播的对所述软件模块的第二请求;和
响应于所述第二请求,将所述软件模块返回到所述源节点。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/511,711 US10944657B2 (en) | 2019-07-15 | 2019-07-15 | Software distribution in a wireless ad hoc network for ad-hoc data processing on a source node |
US16/511,711 | 2019-07-15 | ||
CN202010667660.0A CN112235337B (zh) | 2019-07-15 | 2020-07-13 | 源节点上的ad-hoc数据处理的无线ad hoc网络中的软件分发 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010667660.0A Division CN112235337B (zh) | 2019-07-15 | 2020-07-13 | 源节点上的ad-hoc数据处理的无线ad hoc网络中的软件分发 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117579612A true CN117579612A (zh) | 2024-02-20 |
Family
ID=71105369
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010667660.0A Active CN112235337B (zh) | 2019-07-15 | 2020-07-13 | 源节点上的ad-hoc数据处理的无线ad hoc网络中的软件分发 |
CN202311544307.3A Pending CN117579612A (zh) | 2019-07-15 | 2020-07-13 | 源节点上的ad-hoc数据处理的无线ad hoc网络中的软件分发 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010667660.0A Active CN112235337B (zh) | 2019-07-15 | 2020-07-13 | 源节点上的ad-hoc数据处理的无线ad hoc网络中的软件分发 |
Country Status (3)
Country | Link |
---|---|
US (2) | US10944657B2 (zh) |
EP (1) | EP3770761B1 (zh) |
CN (2) | CN112235337B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10944657B2 (en) * | 2019-07-15 | 2021-03-09 | The Boeing Company | Software distribution in a wireless ad hoc network for ad-hoc data processing on a source node |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7124101B1 (en) * | 1999-11-22 | 2006-10-17 | Accenture Llp | Asset tracking in a network-based supply chain environment |
US20020152305A1 (en) * | 2000-03-03 | 2002-10-17 | Jackson Gregory J. | Systems and methods for resource utilization analysis in information management environments |
WO2003105502A1 (en) * | 2002-06-06 | 2003-12-18 | Motorola, Inc., A Corporation Of The State Of Delaware | Protocol and structure for mobile nodes in a self-organizing communication network |
CA2532699A1 (en) * | 2005-12-28 | 2007-06-28 | Ibm Canada Limited - Ibm Canada Limitee | Distributed network protection |
US8289845B1 (en) * | 2007-05-15 | 2012-10-16 | Avaya Inc. | Assured path optimization |
US8180352B2 (en) | 2007-08-15 | 2012-05-15 | Oracle America, Inc. | Topology controlled discovery for next hop determination |
US8805110B2 (en) | 2008-08-19 | 2014-08-12 | Digimarc Corporation | Methods and systems for content processing |
US20100142448A1 (en) | 2008-09-04 | 2010-06-10 | Ludger Schlicht | Devices for a mobile, broadband, routable internet |
EP2237614B1 (en) | 2009-03-30 | 2014-06-04 | The Boeing Company | Mobile ad hoc network |
US20140280398A1 (en) * | 2013-03-15 | 2014-09-18 | Miosoft Corporation | Distributed database management |
US9112833B2 (en) * | 2013-05-01 | 2015-08-18 | Red Hat, Inc. | Compression of content paths in a digital certificate |
CN103324501B (zh) * | 2013-05-28 | 2015-12-23 | 大连理工大学 | 无线传感器网络节点软件高效远程更新方法 |
CN103546551B (zh) * | 2013-10-16 | 2017-09-05 | 北京奇虎科技有限公司 | 应用软件智能下载方法、装置和系统 |
US10536357B2 (en) * | 2015-06-05 | 2020-01-14 | Cisco Technology, Inc. | Late data detection in data center |
US10491479B2 (en) * | 2015-07-08 | 2019-11-26 | Fedex Corporate Services, Inc. | Systems, apparatus, and methods of time gap related monitoring for an event candidate related to an ID node within a wireless node network |
US10154398B2 (en) * | 2016-11-02 | 2018-12-11 | Wipro Limited | Methods and systems for node selection in multihop wireless sensor networks |
US10613548B2 (en) | 2017-10-19 | 2020-04-07 | Zoox, Inc. | Architecture for secure vehicle control |
CN108040172B (zh) * | 2017-11-29 | 2021-05-21 | 努比亚技术有限公司 | 应用软件的信息更新方法、终端和计算机存储介质 |
US10944657B2 (en) * | 2019-07-15 | 2021-03-09 | The Boeing Company | Software distribution in a wireless ad hoc network for ad-hoc data processing on a source node |
-
2019
- 2019-07-15 US US16/511,711 patent/US10944657B2/en active Active
-
2020
- 2020-06-17 EP EP20180488.7A patent/EP3770761B1/en active Active
- 2020-07-13 CN CN202010667660.0A patent/CN112235337B/zh active Active
- 2020-07-13 CN CN202311544307.3A patent/CN117579612A/zh active Pending
-
2021
- 2021-03-03 US US17/191,270 patent/US11683249B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US11683249B2 (en) | 2023-06-20 |
EP3770761A1 (en) | 2021-01-27 |
US20210044963A1 (en) | 2021-02-11 |
US10944657B2 (en) | 2021-03-09 |
CN112235337B (zh) | 2023-12-08 |
US20210281498A1 (en) | 2021-09-09 |
CN112235337A (zh) | 2021-01-15 |
EP3770761B1 (en) | 2023-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Barika et al. | Orchestrating big data analysis workflows in the cloud: research challenges, survey, and future directions | |
AU2018365860B2 (en) | Code module selection for device design | |
US20200364525A1 (en) | Rf tag operating system with iot connector core | |
US10812988B1 (en) | Method and device for mapping ports of a network device | |
EP3848803A1 (en) | Distributed ledger for software distribution in a wireless ad hoc network for ad-hoc data processing on a source node | |
US10990595B2 (en) | Fast distributed graph query engine | |
CN108351791A (zh) | 具有用户输入配件的计算设备 | |
JP2023531196A (ja) | ネットワーク管理システム、方法、装置及び電子機器 | |
CN114694226B (zh) | 一种人脸识别方法、系统及存储介质 | |
CN112235337B (zh) | 源节点上的ad-hoc数据处理的无线ad hoc网络中的软件分发 | |
CN112313627A (zh) | 事件到无服务器函数工作流实例的映射机制 | |
CN115510163A (zh) | 镜像文件的同步方法、装置、存储介质及电子设备 | |
CN107133160A (zh) | 测试系统 | |
CN111552494A (zh) | 一种容器组的管理方法、设备、系统及介质 | |
JP6343983B2 (ja) | 仮想記憶ゲート・システム | |
CN106164854A (zh) | 用户界面控件和通信 | |
KR20230165825A (ko) | 동적 기계 시스템들의 집단들 설정 및 관리 | |
US20170286181A1 (en) | Deployment and execution of sensing and computational tasks in a network of computing devices | |
Regli et al. | Development and specification of a reference architecture for agent-based systems | |
CN109067690B (zh) | 离线计算结果数据的推送方法及装置 | |
CN106775629A (zh) | 搜索文件生成方法及装置 | |
KR101767568B1 (ko) | 개방형 공간 정보 관리 시스템 | |
KR101713556B1 (ko) | 사물협업 모델링 시스템 및 방법 | |
JP2023165932A (ja) | データ処理システム、データ処理方法、処理装置、およびプログラム | |
CN113204756A (zh) | 利用用户终端的可变识别值管理多用户终端的方法及其装置 |
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 |