CN116339906A - 动态边缘执行的协作管理 - Google Patents
动态边缘执行的协作管理 Download PDFInfo
- Publication number
- CN116339906A CN116339906A CN202211577188.7A CN202211577188A CN116339906A CN 116339906 A CN116339906 A CN 116339906A CN 202211577188 A CN202211577188 A CN 202211577188A CN 116339906 A CN116339906 A CN 116339906A
- Authority
- CN
- China
- Prior art keywords
- edge
- edge device
- remote edge
- remote
- devices
- 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 claims abstract description 63
- 238000000034 method Methods 0.000 claims abstract description 57
- 230000006870 function Effects 0.000 claims description 128
- 230000015654 memory Effects 0.000 claims description 69
- 238000004891 communication Methods 0.000 claims description 68
- 235000008694 Humulus lupulus Nutrition 0.000 claims description 18
- 238000003860 storage Methods 0.000 description 45
- 238000007726 management method Methods 0.000 description 20
- 238000005516 engineering process Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 14
- 230000002776 aggregation Effects 0.000 description 12
- 238000004220 aggregation Methods 0.000 description 12
- 230000006855 networking Effects 0.000 description 11
- 230000004044 response Effects 0.000 description 11
- 230000001133 acceleration Effects 0.000 description 10
- 230000002093 peripheral effect Effects 0.000 description 9
- 230000009471 action Effects 0.000 description 7
- 238000013500 data storage Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 6
- 230000005012 migration Effects 0.000 description 6
- 238000013508 migration Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000001413 cellular effect Effects 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 230000007613 environmental effect Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000005192 partition Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 235000019801 trisodium phosphate Nutrition 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000001816 cooling Methods 0.000 description 3
- 238000005265 energy consumption Methods 0.000 description 3
- 239000004744 fabric Substances 0.000 description 3
- 230000007774 longterm Effects 0.000 description 3
- 238000013468 resource allocation Methods 0.000 description 3
- 238000013515 script Methods 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000012384 transportation and delivery Methods 0.000 description 3
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 229910052710 silicon Inorganic materials 0.000 description 2
- 239000010703 silicon Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000004083 survival effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 240000001436 Antirrhinum majus Species 0.000 description 1
- 101100498818 Arabidopsis thaliana DDR4 gene Proteins 0.000 description 1
- HBBGRARXTFLTSG-UHFFFAOYSA-N Lithium ion Chemical compound [Li+] HBBGRARXTFLTSG-UHFFFAOYSA-N 0.000 description 1
- 241000233805 Phoenix Species 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 239000005387 chalcogenide glass Substances 0.000 description 1
- QVFWZNCVPCJQOP-UHFFFAOYSA-N chloralodol Chemical compound CC(O)(C)CC(C)OC(O)C(Cl)(Cl)Cl QVFWZNCVPCJQOP-UHFFFAOYSA-N 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000001152 differential interference contrast microscopy Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000003306 harvesting Methods 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 235000003642 hunger Nutrition 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012994 industrial processing Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005304 joining Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 229910001416 lithium ion Inorganic materials 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 229910052751 metal Inorganic materials 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000002070 nanowire Substances 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 229910052760 oxygen Inorganic materials 0.000 description 1
- 239000001301 oxygen Substances 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000000246 remedial effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 230000037351 starvation Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4893—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues taking into account power or heat criteria
-
- 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/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- 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/5094—Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/83—Admission control; Resource allocation based on usage prediction
-
- 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/4557—Distribution of virtual machine instances; Migration and load balancing
-
- 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/45595—Network integration; Enabling network access in 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
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
方法、系统和用例的各个方面包括边缘设备系统的边缘设备处的动态边缘调度。边缘设备可以包括处理电路以执行指令,指令包括用于确定多个远程边缘设备中的每一个的能力和约束集合的操作。操作可以包括:基于对于功能的功能要求和能力和约束集合,从多个远程边缘设备确定候选远程边缘设备。操作可以包括:基于使用能力和约束集合确定的用于系统的功率效率,从候选远程边缘设备选择远程边缘设备以执行功能。
Description
背景技术
一般而言,边缘计算指代在更靠近网络的“边缘”或“边缘”集合的位置处的计算和资源的实现、协调和使用。这种布置的目的在于(尤其是与传统云计算相比)改进总拥有成本,减少应用和网络时延,减少网络回程业务和关联能源消耗,改进服务能力,并改进针对安全或数据隐私要求的合规性。可以执行边缘计算操作的组件(“边缘节点”)可以驻留在系统架构或ad hoc服务所需的任何位置中(例如,高性能计算数据中心或云设施;所指定的边缘节点服务器、企业服务器、路边服务器、电信中心局;或消费边缘服务的正受服务的本地或边缘处设备中)。
已经适用于边缘计算的应用包括但不限于传统网络功能的虚拟化(例如,运营电信或互联网服务)以及下一代特征和服务的引入(例如,支持5G网络服务)。有望广泛利用边缘计算的用例包括联网自动驾驶汽车、监控、物联网(IoT)设备数据分析、视频编码和分析、位置感知服务、智能城市中的设备感测以及许多其他网络和计算密集型服务。
在一些场景下,边缘计算可以供给或托管类似云的分布式服务,以在许多类型的存储和计算资源当中为应用和所协调的服务实例供给编排和管理。随着端点设备、客户端和网关尝试在更靠近网络的边缘的位置处访问网络资源和应用,边缘计算也预计与对于IoT和雾/分布式连网配置开发的现有用例和技术紧密集成。
附图说明
在不一定按比例绘制的附图中,相同标号可以在不同视图中描述相似组件。具有不同字母后缀的相同数字可以表示相似组件的不同实例。附图通过示例而非限制的方式总体上示出本文件中讨论的各种实施例。
图1示出用于边缘计算的边缘云配置的概览。
图2示出端点、边缘云和云计算环境之间的操作层。
图3示出用于边缘计算系统中的连网和服务的示例方法。
图4示出在多个边缘节点和多个租户之间操作的边缘计算系统中的虚拟边缘配置的部署。
图5示出在边缘计算系统中部署容器的各种计算布置。
图6示出涉及对边缘计算系统中的应用的移动访问的计算和通信用例。
图7A提供边缘计算系统中的计算节点处部署的用于计算的示例组件的概览。
图7B提供边缘计算系统中的计算设备内的示例组件的进一步概览。
图8示出根据一些实施例的可再生能量供电边缘器具设备。
图9示出根据一些实施例的示例系统框图。
图10示出根据一些实施例的示例多播示图。
图11示出根据一些实施例的说明用于动态边缘调度技术的流程图。
具体实施方式
本文描述的系统和技术包括系统中边缘设备之间的动态边缘调度。系统可以包括距电网或网络远程的(例如,以无线方式连接的、太阳能供电的,等)边缘设备。在一些示例中,边缘设备系统可以包括有线连接到网络或具有对电网的访问的有限数量的边缘设备(例如,一个)。系统的边缘设备可以对于某种用途或在紧急情况时具有对电网的访问,但是可能主要依赖于可再生功率源。系统中的边缘设备可以(例如,通过使用点对点通信)一起协作工作,以使用系统的服务、微服务或资源调度要执行的功能。协作过程可以包括:最小化或减少度量系统范围。例如,协作过程可以包括:最小化系统上的总功率使用,最小化系统中的总电池使用,最小化系统计算使用,等。
在示例中,本文描述的系统和技术包括太阳能(或其它绿色)供电边缘设备之间的协调和协作,例如,其中,无需电缆连接到任何回程(例如,无需有线网格,无需有线网络等)。这些可再生供电边缘设备可以用通过可再生功率反复充电的电池电源加以供电。在一些示例中,具有网络或电网连接的一个或多个边缘设备可以经由点对点充当对本地边缘网络中的其他可再生供电边缘设备的连接器。
本地边缘网络可以包括地理区域(例如,几公里内的所有边缘设备)。本地边缘网络中的边缘设备(其也可以称为蜂巢或系统)可以具有不同的能量配置文件(例如,贯穿时间段(例如,一天)具有不同等级的功率源(例如,阳光的可用性,风的可用性等)或功率可用性(例如,电池充电))。由于识别贯穿时间段调度的功能,因此本地边缘网络中的边缘设备可以基于功率源或功率可用性进行协调以调度功能。本地边缘网络可以包括基于可用或可预见的功率、时延约束、带宽、微服务执行能力等的动态边缘调度。
可以使用边缘设备的服务或微服务执行待调度的功能。例如,一个基站中执行的主服务可以用以用一个或多个不同的微服务协调或执行待调度的功能的部分。在一些示例中,主服务可以对于微服务使用互连处理单元(IPU)。边缘设备可以确定所请求的功能是待在边缘设备的微服务实例中执行,还是其待发送到可以提供微服务的对等边缘设备。确定可以包括:使用目标边缘设备的时延、目标边缘设备的硬件或软件能力、从边缘设备到目标边缘设备的跳转数量、目标边缘设备处的功率可用性或使用、网络的带宽(例如,包括用于去往目标边缘设备的跳转的中间边缘设备)等。用于一个或多个参数(例如,功率源使用、带宽等)的优化的整体系统范围确定可以用于选择用于在微服务处执行功能的目标边缘设备。
边缘设备可以使用发现机制(例如,经由简单网络管理协议(SNMP)以发现对等方),或者对等方可以(例如,由编排器)加以指定。边缘设备可以使用发现协议以识别其他边缘设备,并与这些附近边缘设备站连接、验证和交换能力。在一些示例中,可以(例如,每天、每分钟、每秒等)更新对等设备处的微服务或功率可用性。可以周期性地提供用于所启动的或可用的微服务或可用的或所预测的功率的遥测数据。在另一示例中,可以使用发布/订阅服务。例如,当对等方更新CPU可用性、网络可用性、所实例化的微服务、功率可用性等时,它可以发布更新。网络中边缘设备的IPU可以从附近对等方订阅并接收所发布的更新。在一些示例中,例如,对于功率或电池可用性或容量,边缘设备可以经由发布/订阅协议(例如,MQTT协议、数据分发服务(DDS)或M2M通信协议)取得信息。
图1是示出包括许多以下示例中称为“边缘云”的处理层的用于边缘计算的配置的概览的框图100。如所示,边缘云110共同定位于边缘位置(例如,接入点或基站140、本地处理中枢150或中心局120)处,并且因此可以包括多个实体、设备和装备实例。边缘云110定位得比云数据中心130远更靠近端点(消费者和生产者)数据源160(例如,自主车辆161、用户设备162、商业和工业设备163、视频捕获设备164、无人机165、智慧城市和建筑设备166、传感器和IoT设备167等)。在边缘云110中的边缘处提供的计算、存储器和存储资源对于提供端点数据源160所使用的服务和功能的超低时延响应时间以及减少从边缘云110朝向云数据中心130的网络回程业务(由此改进能耗和总体网络使用等益处)是关键的。
计算、存储器和存储是稀缺资源,并且通常取决于边缘位置而降低(例如,消费者端点设备处可用的处理资源比基站处或中心局处更少)。然而,边缘位置离端点(例如,用户设备(UE))越靠近,空间和功率一般受约束就越多。因此,边缘计算尝试通过既在地理上又在网络接入时间方面定位得更靠近的更多资源的分布减少网络服务所需的资源的量。以此方式,边缘计算尝试在适当的情况下将计算资源带到工作负载数据,或者将工作负载数据带到计算资源。
以下描述涵盖多个潜在部署并且解决一些网络运营商或服务提供商可能在其自身基础设施中具有的限制的边缘云架构的方面。它们包括:基于边缘位置的配置的变化(因为基站等级处的边缘例如在多租户场景中可能具有更受约束的性能和能力);基于对边缘位置、位置的层或位置的群组可用的计算、存储器、存储、组构、加速或类似资源的类型的配置;服务、安全性以及管理和编排能力;和针对实现端服务的可用性和性能的有关目标。取决于时延、距离和时序特性,这些部署可以在可以看作“近边缘”、“靠近边缘”、“本地边缘”、“中间边缘”或“远边缘”层的网络层中完成处理。
边缘计算是一种发展中的范例,其中,典型地通过使用基站、网关、网络路由器或远更靠近生产并且消费数据的端点设备的其他设备处所实现的计算平台(例如,x86或ARM计算硬件架构),在网络的“边缘”处或更靠近网络的“边缘”执行计算。例如,边缘网关服务器可以配备有存储器和存储资源的池,以对于用于已连接的客户端设备的低时延用例(例如,自动驾驶或视频监控)实时执行计算。或者作为示例,可以用计算和加速资源增强基站,以直接处理用于已连接的用户设备的服务工作负载,而无需经由回程网络进一步传递数据。或者作为另一示例,可以用执行虚拟化网络功能并供给用于执行用于已连接的设备的服务和消费者功能的计算资源的标准化计算硬件替代中心局网络管理硬件。在边缘计算网络内,服务中可能存在计算资源将“移动”到数据的场景以及数据将“移动”到计算资源的场景。或者作为示例,基站计算、加速和网络资源可以提供服务,以通过激活休眠容量(订购、按需容量)根据需要与工作负载需求成比例,以管理困境情况、紧急情况或在显著更长的所实现的生命周期上提供用于所部署的资源的长寿命。
图2示出端点、边缘云和云计算环境之间的操作层。具体而言,图2描绘在网络计算的多个说明性层之间利用边缘云110的计算用例205的示例。层开始于端点(设备和事物)层200处,其访问边缘云110以进行数据创建、分析和数据消费活动。边缘云110可以跨度多个网络层,例如:边缘设备层210,其具有位于实体上接近边缘系统的网关、驻地服务器或网络设备(节点215);网络接入层220,其包括基站、无线电处理单元、网络中枢、区域数据中心或本地网络设备(设备225);和位于其间的任何设备、设备或节点(在层212中,未详细示出)。边缘云110内的以及各个层之间的网络通信可以经由任何数量的有线或无线介质(包括:经由未描绘的连接性架构和技术)发生。
源自网络通信距离和处理时间约束的时延的示例可以范围从当在端点层200之间时小于1毫秒(ms)、在边缘设备层210处小于5ms、到甚至当与网络接入层220处的节点进行通信时的10至40ms之间。超越边缘云110的是核心网230和云数据中心240层,其均具有增加的时延(例如,在核心网层230处的50-60ms之间、到云数据中心层处的100或更多ms)。因此,具有至少50至100ms或更多的时延的核心网数据中心235或云数据中心245处的操作将不能够完成用例205的许多时间关键功能。为了说明和对比的目的提供这些时延值中的每一个;应理解,使用其他接入网络介质和技术可以进一步减少时延。在一些示例中,相对于网络源和目的地,网络的各个部分可以分类为“靠近边缘”、“本地边缘”、“近边缘”、“中间边缘”或“远边缘”层。例如,从核心网数据中心235或云数据中心245的角度来看,中心局或内容数据网络可以看作位于“近边缘”层内(“近”于云,当与用例205的设备和端点进行通信时具有高时延值),而接入点、基站、驻地服务器或网络网关可以看作位于“远边缘”层内(“远”离开云,当与用例205的设备和端点进行通信时具有低时延值)。应理解,构成“靠近”、“本地”、“近”、“中间”或“远”边缘的特定网络层的其他分类可以基于从任何网络层200-240中的源测量的时延、距离、网络跳转的数量或其他可测量的特性。
归因于多个服务利用边缘云,各种用例205可以在来自传入流的使用压力下接入资源。为了实现具有低时延的结果,在边缘云110内执行的服务鉴于以下方面平衡变化的要求:(a)优先级(吞吐量或时延)和服务质量(QoS)(例如,用于自动驾驶汽车的业务鉴于响应时间要求可以具有比温度传感器更高的优先级;或者,取决于应用,性能敏感性/瓶颈可以存在于计算/加速器、存储器、存储或网络资源处);(b)可靠性和弹性(例如,取决于应用,需要对一些输入流采取行动,并以任务关键可靠性路由业务,而一些其他输入流可以容忍偶尔故障);和(c)实体约束(例如,电力、冷却和形数)。
用于这些用例的端到端服务视图涉及服务流的概念并且与事务关联。事务详述对于消费服务的实体的整体服务要求以及用于资源、工作负载、工作流程以及商业功能和商业等级要求的关联服务。可以在服务的生命周期期间以确保关于事务的实时和运行时合同合规性的方式在每个层处管理用所描述的“条款”执行的服务。当事务中的组件错过其对服务等级协议(SLA)的协定时,系统作为整体(事务中的组件)可以提供以下能力:(1)理解SLA违反的影响;和(2)增强系统中的其他组件以恢复整体事务SLA;和(3)实现步骤以进行补救。
因此,考虑到这些变化和服务特征,边缘云110内的边缘计算可以提供用于实时或近乎实时服务于并且响应于用例205的多个应用(例如,对象跟踪、视频监控、所连接的汽车等)并满足对于这些多个应用的超低时延需求的能力。这些优势使得归因于时延或其他限制而无法借助传统云计算的全新类的应用(虚拟网络功能(VNF)、功能即服务(FaaS)、边缘即服务(EaaS)、标准过程等)成为可能。
然而,随边缘计算的优势而来的是以下告诫。位于边缘处的设备一般是受资源约束的,并且因此对边缘资源的使用存在压力。典型地,通过存储器和存储资源的池化以用于由多个用户(租户)和设备使用解决该问题。边缘可能是受功率和冷却约束的,并且因此需要由正消耗最多功率的应用考虑功率使用。在这些池化存储器资源中可能存在固有的功率性能权衡,因为它们中的许多很可能使用新兴存储器技术,其中,更多的功率需要更大的存储器带宽。同样,因为边缘位置可能是无人化的,并且甚至可能需要受许可的接入(例如,当容纳于第三方位置中时),所以还需要改进的硬件安全性和信任根可信功能。此类问题在多租户、多拥有方或多接入设置中的边缘云110中被放大,其中,许多用户请求服务和应用,特别是随着网络使用动态地波动并且多个利益相关方的组成、用例和服务改变。
在更一般的层次上,边缘计算系统可以描述为涵盖在边缘云110中操作的先前讨论的层(网络层200-240)处的任何数量的部署,其提供来自客户端和分布式计算设备的协调。一个或多个边缘网关节点、一个或多个边缘聚合节点以及一个或多个核心数据中心可以分布跨越网络的各个层,以通过或代表电信服务提供商(“telco”或“TSP”)、物联网服务提供商、云服务提供商(CSP)、企业实体或任何其他数量的实体提供边缘计算系统的实现。例如,当被编排以满足服务目标时,可以动态地提供边缘计算系统的各种实现和配置。
与本文提供的示例一致,客户计算端计算节点可以体现为能够作为数据的生产者或消费者进行通信的任何类型的端点组件、设备、器具或其他事物。此外,边缘计算系统中所使用的标记“节点”或“设备”并不一定意指该节点或设备以客户端或代理/随从/跟随方角色进行操作;相反,边缘计算系统中的任何节点或设备指代包括分立的或连接的硬件或软件配置以促进或使用边缘云110的单独实体、节点或子系统。
故此,边缘云110由受网络层210-230之间的边缘网关节点、边缘聚合节点或其他边缘计算节点操作并且处于其内的网络组件和功能特征形成。边缘云110因此可以体现为提供与本文讨论的有无线接入网(RAN)能力的端点设备(例如,移动计算设备、IoT设备、智能设备等)接近地定位的边缘计算和/或存储资源的任何类型的网络。换句话说,边缘云110可以设想为连接端点设备和充当进入服务提供商核心网(包括移动运营商网络(例如,全球移动通信系统(GSM)网络、长期演进(LTE)网络、5G/6G网络等))的入口点的传统移动网络接入点同时还提供存储和/或计算能力的“边缘”。也可以利用其他类型和形式的网络接入(例如,Wi-Fi、长距离无线、包括光网络的有线网络)代替这些3GPP运营商网络或与之组合。
边缘云110的网络组件可以是服务器、多租户服务器、器具计算设备和/或任何其他类型的计算设备。例如,边缘云110可以是器具计算设备,其为包括外壳、壳体或壳的自含式处理系统。在一些情况下,边缘设备是出于特定目而存在于网络中的设备(例如,交通灯),但其具有可以出于其他目的而利用的处理或其他能力。这些边缘设备可以独立于其他连网设备,并且配备具有对于其主要目的合适的形数的外壳;也对于不干扰其主要任务的其他计算任务是可用的。边缘设备包括物联网设备。器具计算设备可以包括硬件和软件组件,以管理本地问题(例如,设备温度、振动、资源利用、更新、电力问题、物理和网络安全等)。结合图7B描述用于实现器具计算设备的示例硬件。边缘云110可以还包括一台/或多台服务器或一台或多台多租户服务器。该服务器可以实现虚拟计算环境(例如,用于部署虚拟机的管理程序、实现容器的操作系统等)。这些虚拟计算环境提供一个或多个应用可以在与一个或多个其他应用隔离的同时执行的执行环境。
在图3中,(呈移动设备、计算机、自主车辆、商业计算设备、工业处理设备的形式的)各种客户端端点310交换对于端点网络聚合类型特定的请求和响应。例如,客户端端点310可以凭借通过驻地网络系统332交换请求和响应322而经由有线宽带网络获得网络接入。一些客户端端点310(例如,移动计算设备)可以凭借通过接入点(例如,蜂窝网络塔)334交换请求和响应324而经由无线宽带网络获得网络接入。一些客户端端点310(例如,自主车辆)可以通过位于街道的网络系统336经由无线车辆网络获得对于请求和响应326的网络接入。然而,无论网络接入的类型如何,TSP都可以在边缘云110内部署聚合点342、344以聚合业务和请求。因此,在边缘云110内,TSP可以(例如,在边缘聚合节点340处)部署各种计算和存储资源,以提供所请求的内容。边缘云110的边缘聚合节点340和其他系统连接到云或数据中心360,其使用回程网络350以满足来自云/数据中心的对网站、应用、数据库服务器等的更高时延请求。边缘聚合节点340和聚合点342、344的附加或合并实例(包括单个服务器框架上部署的那些)也可以存在于云110或TSP基础设施的其他区域内。
图4示出用于跨越多个边缘节点和多个租户之间操作的边缘计算系统的虚拟边缘配置的部署和编排。具体而言,图4描绘边缘计算系统400中的第一边缘节点422和第二边缘节点424的协调,以满足对于访问各种虚拟边缘实例的各种客户端端点410(例如,智能城市/建筑系统、移动设备、计算设备、商业/物流系统、工业系统等)的请求和响应。在此,虚拟边缘实例432、434通过关于对网站、应用、数据库服务器等的较高时延请求而访问云/数据中心440提供边缘云中的边缘计算能力和处理。然而,边缘云使得能够协调用于多个租户或实体的多个边缘节点之间的处理。
在图4的示例中,这些虚拟边缘实例包括:第一虚拟边缘432,供给第一租户(租户1),其供给边缘存储、计算和服务的第一组合;和第二虚拟边缘434,其供给边缘存储、计算和服务的第二组合。虚拟边缘实例432、434分布在边缘节点422、424之间,并且可以包括从相同或不同边缘节点履行请求和响应的场景。边缘节点422、424以分布式的却协调式的方式进行操作的配置基于边缘配给功能450而发生。边缘节点422、424在多个租户之间为应用和服务提供协调式操作的功能基于编排功能460而发生。
应理解,410中的设备中的一些是多租户设备,其中,租户1可以在租户1“切片”内运作,而租户2可以在租户2切片内运作(并且,在进一步的示例中,附加或子租户可能存在;并且每个租户甚至可能特别地被赋权并在事务上与直至特定硬件特征的特定特征集合绑定)。可信多租户设备可以还包含租户特定加密密钥,使得密钥和切片的组合可以看作“信任根”(RoT)或租户特定RoT。可以使用DICE(设备身份合成引擎)架构进一步动态地计算RoT,使得DICE硬件构建块用于构造分层式可信计算基上下文,以用于设备能力(例如,现场可编程门阵列(FPGA))的分层。RoT可以进一步用于可信计算上下文,以实现对于支持多租赁是有用的“扇出”。在多租户环境内,各个边缘节点422,424可以操作为用于分配给每节点的多个租户的本地资源的安全特征强制点。此外,租户运行时和应用执行(例如,在实例432,434中)可以充当用于创建潜在地跨越多个物理托管平台的资源的虚拟边缘抽象的安全特征的强制点。最后,编排实体处的编排功能460可以操作为用于沿着租户边界整理资源的安全特征强制执行点。
边缘计算节点可以对资源(存储器、中央处理单元(CPU)、图形处理单元(GPU))、中断控制器、输入/输出(I/O)控制器、存储器控制器、总线控制器等)进行划分,其中,各个划分可以包含RoT能力,并且其中,可以进一步将根据DICE模型的扇出(fan-out)和分层应用于边缘节点。可以根据DICE分层和扇出结构对由容器、FaaS引擎、小服务程序(servlet)、服务器或其他计算抽象构成的云计算节点进行分区,以对于每个支持RoT上下文。因此,跨越设备410、422和440的各个RoT可以协调分布式可信计算基(DTCB)的建立,使得可以建立端到端地链接所有元素的租户特定虚拟可信安全信道。
此外,应理解,容器可以具有保护其内容免受先前边缘节点影响的数据或工作负载特定密钥。作为容器的迁移的部分,源边缘节点处的容器集(pod)控制器可以从目标边缘节点容器集控制器获得迁移密钥,其中,迁移密钥用以包装容器特定密钥。当容器/容器集迁移到目标边缘节点时,解包装密钥暴露给容器集控制器,容器集控制器然后对所包装的密钥进行解密。这些密钥现在可以用以对容器特定数据执行操作。迁移功能可以由适当证明的边缘节点和容器集管理器控制(如上所述)。
在进一步的示例中,边缘计算系统扩展为在多拥有方、多租户环境中通过使用容器(提供代码和所需依赖关系的软件的所包含的可部署的单元)提供多个应用的编排。多租户编排器可以用以执行密钥管理、信任锚点管理和与图4中的可信“切片”概念的配给和生命周期有关的其他安全功能。例如,边缘计算系统可以被配置为履行对来自多个虚拟边缘实例(以及来自云或远程数据中心)的各种客户端端点的请求和响应。这些虚拟边缘实例的使用可以同时支持多个租户和多个应用(例如,增强现实(AR)/虚拟现实(VR)、企业应用、内容交付、游戏、计算卸载)。此外,在虚拟边缘实例内可以存在多种类型的应用(例如,普通应用;时延敏感应用;时延关键应用;用户平面应用;连网应用;等)。虚拟边缘实例也可以跨越穿过不同地理位置的多个拥有方的系统(或者,由多个拥有方共同拥有或共同管理的各个计算系统和资源)。
例如,每个边缘节点422、424可以例如通过使用提供一个或多个容器的群组的容器“容器集”426、428实现容器的使用。在使用一个或多个容器集的设置中,容器集控制器或编排器负责容器集中的容器的本地控制和编排。根据每个容器的需要划分对于各个边缘切片432、434提供的各种边缘节点资源(例如,用六边形描绘的存储、计算、服务)。
通过使用容器集,容器集控制器监督容器和资源的划分和分配。容器集控制器例如通过接收基于SLA合同的关键性能指标(KPI)目标从编排器(例如,编排器460)接收指令,其关于如何最佳地划分物理资源以及达多长持续时间而指导控制器。容器集控制器确定哪个容器需要哪些资源以及达多长时间以完成工作负载并满足SLA。容器集控制器还管理容器生命周期操作,例如:创建容器,为其配给资源和应用,协调一起工作在分布式应用上的多个容器之间的中间结果,当工作负载完成时拆除容器,等。此外,容器集控制器可以充当安全角色,其防止资源的分派,指导正确的租户进行鉴权,或者防止向容器配给数据或工作负载,直到证明结果被满足。
此外,通过使用容器集,租户边界可以仍然存在,但处于容器的每个容器集的上下文中。如果每个租户特定容器集具有租户特定容器集控制器,则将存在共享容器集控制器,其统合资源分配请求,以避免典型的资源匮乏情况。可以提供进一步的控制,以确保容器集和容器集控制器的证明和可信度。例如,编排器460可以向执行证明验证的本地容器集控制器提供证明验证策略。如果证明满足用于第一租户容器集控制器而非第二租户容器集控制器的策略,则第二容器集可以迁移到确实满足它的不同边缘节点。替代地,可以允许第一容器集执行,并且在第二容器集执行之前安装和调用不同的共享容器集控制器。
图5示出在边缘计算系统中部署容器的附加计算布置。作为简化示例,系统布置510、520描绘这样的设置:其中,容器集控制器(例如,容器管理器511、521和容器编排器531)适用于通过经由计算节点(布置510中的515)的执行启动容器化的容器集、功能和功能即服务实例,或通过经由计算节点(布置520中的523)的执行分离地执行容器化虚拟化网络功能。该布置适用于(使用计算节点537的)系统布置530中的多个租户的使用,其中,容器化的容器集(例如,容器集512)、功能(例如,功能513、VNF 522、536)和功能即服务实例(例如,FaaS实例514)在特定于各个租户的虚拟机(例如,用于租户532、533的VM 534、535)内得以启动(除了虚拟化网络功能的执行)。该布置进一步适用于提供容器542、543的系统布置540中的使用或由基于容器的编排系统541协调的计算节点544上的各种功能、应用和功能的执行。
图5中描绘的系统布置可以提供在应用组成方面同等地对待VM、容器和功能的架构(并且所得应用是这三种成分的组合)。每种成分可以涉及使用一个或多个加速器(FPGA、ASIC)组件作为本地后端。以此方式,可以跨越编排器所协调的多个边缘拥有方划分应用。
在图5的上下文中,容器集控制器/容器管理器、容器编排器和单独节点可以提供安全强制执行点。然而,可以在分配给租户的资源与分配给第二租户的资源有区别的情况下编排租户隔离,但边缘拥有方进行协作以确保不跨越租户边界共享资源分配。或者,可以跨越租户边界隔离资源分配,因为租户可以允许经由订购或事务/合同基础的“使用”。在这些上下文中,虚拟化、容器化、飞地和硬件划分方案可以由边缘拥有方使用,以强制租赁。其他隔离环境可以包括:裸金属(专用)设备、虚拟机、容器、容器上的虚拟机或其组合。
在进一步的示例中,软件定义或控制的硅硬件的方面和其他可配置硬件可以与边缘计算系统的应用、功能和服务集成。软件定义的硅可以用以确保用于特定资源或硬件成分履行合同或服务水平协议的能力,基于该成分的能力,以(例如,通过硬件配置自身内的新特征的升级、重新配置,或配给)修复自身的部分或工作负载。
应理解,本文讨论的边缘计算系统和布置可以适用于涉及移动性的各种解决方案、服务和/或用例。作为示例,图6示出涉及对实现边缘云110的边缘计算系统600中的应用的移动访问的简化车辆计算和通信用例。在该用例下,各个客户端计算节点610可以体现为位于在道路的穿越期间与边缘网关节点620进行通信的对应车辆中的车载计算系统(例如,车载导航和/或信息娱乐系统)。例如,边缘网关节点620可以位于可以沿着道路、在道路的交叉口处或道路附近的其他位置放置的路边机柜或内置在具有其他分离的机械效用的结构中的其他封壳中。随着各个车辆沿着道路穿越,其客户端计算节点610与特定边缘网关设备620之间的连接可以传播,以使得对于客户端计算节点610保持一致的连接和上下文。同样,移动边缘节点可以按高优先级服务或根据对于底层服务的吞吐量或时延解决方案要求(例如,在无人机的情况下)进行聚合。各个边缘网关设备620包括处理和存储能力的量,并且故此,用于客户端计算节点610的数据的某处理和/或存储可以在边缘网关设备620中的一个或多个上执行。
边缘网关设备620可以与一个或多个边缘资源节点640进行通信,边缘资源节点640说明性地体现为位于通信基站642(例如,蜂窝网络的基站)处或其中的计算服务器、器具或组件。如上所述,各个边缘资源节点640包括处理和存储能力的量,并且因此,用于客户端计算节点610的数据的某处理和/或存储可以在边缘资源节点640上执行。例如,较不紧急或重要的数据的处理可以由边缘资源节点640执行,而较高紧急性或重要性的数据的处理可以由边缘网关设备620执行(取决于例如每个组件的能力或指示紧急性或重要性的请求中的信息)。基于数据访问、数据位置或时延,当在处理活动期间处理优先级改变时,工作可以在边缘资源节点上继续。同样,可以(例如,通过本地编排器)激活可配置的系统或硬件资源自身,以提供附加资源,以满足新需求(例如,将计算资源适配于工作负载数据)。
边缘资源节点640还与核心数据中心650进行通信,核心数据中心650可以包括位于中心位置(例如,蜂窝通信网络的中心局)中的计算服务器、器具和/或其他组件。核心数据中心650可以提供对全局网络云660(例如,互联网)的网关,以用于由边缘资源节点640和边缘网关设备620形成的边缘云110操作。此外,在一些示例中,核心数据中心650可以包括处理和存储能力的量,并且故此,客户端计算设备的数据的某处理和/或存储可以在核心数据中心650上执行(例如,低紧急性或重要性或高复杂度的处理)。
边缘网关节点620或边缘资源节点640可以供给状态性应用632和地理分布式数据库634的使用。虽然应用632和数据库634示出为水平分布在边缘云110的层处,但是应理解,应用的资源、服务或其他组件可以垂直分布遍及边缘云(包括客户端计算节点610处执行的应用的部分、边缘网关节点620或边缘资源节点640处的其他部分等)。此外,如前所述,可以存在处于任何等级的对等关系,以满足服务目标和义务。此外,用于特定客户端或应用的数据可以基于不断改变的条件(例如,基于加速资源可用性、跟随汽车运动等)随着边缘而移动。例如,基于访问的“衰减率”,可以进行预测,以识别要继续的下一拥有方或者数据或计算访问何时将不再是可行的。可以利用这些和其他服务,以完成保持事务合规和无损所需的工作。
在进一步的场景中,容器636(或容器的容器集)可以灵活地从边缘节点620迁移到其他边缘节点(例如,620、640等),以使得具有应用和工作负载的容器不需要重组,重新编译,重新解释,以用于对工作的迁移。然而,在这些设置中,可能存在所应用的一些补救或“混乱”转译操作。例如,节点640处的物理硬件可能与边缘网关节点620不同,并且因此,构成容器的底部边缘的硬件抽象层(HAL)将重新映射到目标边缘节点的物理层。这可以涉及某种形式的晚绑定技术(例如,将HAL从容器原生格式二进制转译为物理硬件格式),或者可以涉及映射接口和操作。容器集控制器可用以驱动接口映射作为容器生命周期的一部分,其包括去往/来自不同硬件环境的迁移。
由图6涵盖的场景可以利用各种类型的移动边缘节点(例如,托管于车辆(汽车/卡车/电车/火车)或其他移动单元中的边缘节点),因为边缘节点将沿着托管它的平台移动到其他地理位置。在车辆到车辆通信的情况下,单独车辆甚至可以充当用于其他车辆的网络边缘节点(例如,以执行缓存、报告、数据聚合等)。因此,应理解,各种边缘节点中提供的应用组件可以分布在静态或移动设置中,包括单独端点设备或边缘网关节点620处的一些功能或操作、边缘资源节点640处的一些其他功能或操作以及核心数据中心650或全局网络云660中的其他功能或操作之间的协调。
在其他配置中,边缘计算系统可以通过使用各个可执行应用和功能实现FaaS计算能力。在示例中,开发者编写表示一个或多个计算机功能的功能代码(例如,本文的“计算机代码”),并且功能代码被上传到例如边缘节点或数据中心所提供的FaaS平台。触发(例如,比如,服务用例或边缘处理事件)发起用FaaS平台执行功能代码。
在FaaS的示例中,容器用以提供执行功能代码(例如,可以由第三方提供的应用)的环境。容器可以是任何隔离式执行实体(例如,进程、Docker或Kubernetes容器、虚拟机等)。在边缘计算系统内,各种数据中心、边缘设备和端点设备(包括移动设备)用以“加持(spin up)”按需缩放的功能(例如,激活和/或分配功能动作)。功能代码得以在物理基础设施(例如,边缘计算节点)设备和底层虚拟化容器上执行。最终,响应于执行完成,在基础设施上“减持(spin down)”(例如,停用和/或解除分配)容器。
FaaS的其他方面可以使得能够以服务方式部署边缘功能,包括对支持边缘计算即服务(边缘即服务或“EaaS”)的各个功能的支持。FaaS的附加特征可以包括:粒度计费组件,其使得消费者(例如,计算机代码开发者)能够仅当他们的代码被执行时进行支付;公共数据存储,其用于存储数据,以用于由一个或多个功能重用;单独功能之间的编排和管理;功能执行管理、并行性和联合;容器和功能存储器空间的管理;对于功能可用的加速资源的协调;和容器(包括已经部署或正在操作的“暖”容器与需要初始化、部署或配置的“冷”容器)之间的功能的分布。
边缘计算系统600可以包括边缘配给节点或与之进行通信。边缘配给节点可以将软件(例如,图7B的示例计算机可读指令782)分发给各个接收方,以用于实现本文描述的任何方法。示例边缘配给节点644可以由能够存储和/或向其它计算设备发送软件指令(例如,代码、脚本、可执行二进制文件、容器、分组、压缩文件和/或其派生)的任何计算机服务器、归属服务器、内容交付网络、虚拟服务器、软件分发系统、中央设施、存储设备、存储节点、数据设施、云服务等实现。示例边缘配给节点644的组件可以位于云中,局域网中、边缘网络中、广域网中、互联网上和/或与接收方以通信方式耦合的任何其他位置。接收方可以是拥有和/或操作边缘配给节点644的实体的客户、客户端、关联方、用户等。例如,拥有和/或操作边缘配给节点644的实体可以是软件指令(例如,图7B的示例计算机可读指令782)的开发者,销售方和/或许可方(或其客户和/或消费者)。接收方可以是购买和/或许可软件指令以用于使用和/或转售和/或分许可的消费者、服务提供商、用户、零售商、OEM等。
在一个示例中,边缘配给节点644包括一个或多个服务器和一个或多个存储设备。存储设备托管计算机可读指令(例如,图7B的示例计算机可读指令782),如下所述。与上述边缘网关设备620相似,边缘配给节点644的一个或多个服务器与基站642或其他网络通信实体进行通信。在一些示例中,作为商业交易的部分,一个或多个服务器响应于请求以将软件指令发送到请求方。对于软件指令的交付、销售和/或许可的支付可以由软件分发平台的一个或多个服务器和/或经由第三方支付实体应对。服务器使得购买者和/或许可方能够从边缘配给节点644下载计算机可读指令782。例如,可以与图7B的示例计算机可读指令782对应的软件指令可以下载到示例处理器平台,其将执行计算机可读指令782以实现本文描述的方法。
在一些示例中,执行计算机可读指令782的处理器平台可以物理地位于不同的地理位置、法定管辖区等中。在一些示例中,边缘配给节点644的一个或多个服务器周期性地供给、发送、和/或强制更新软件指令(例如,图7B的示例计算机可读指令782),以确保改进、补丁、更新等分发并应用于端用户设备处实现的软件指令。在一些示例中,可以从不同的源和/或不同的处理器平台分发计算机可读指令782的不同组件;例如,可以从不同的源和/或向不同的处理器平台分发不同的库、插件、组件和其他类型的计算模块(无论是编译的还是解释的)。例如,可以从第一源分发软件指令的部分(例如,自身不是可执行的脚本),而可以从第二源分发(能够执行脚本)的解释器。
在进一步的示例中,可以基于图7A和图7B中描绘的组件履行参照本边缘计算系统和环境讨论的任何计算节点或设备。相应边缘计算节点可以体现为一种类型的设备、器具、计算机或能够与其他边缘、连网或端点组件进行通信的其他“事物”。例如,边缘计算设备可以体现为个人计算机、服务器、智能电话、移动计算设备、智能器具、车载计算系统(例如,导航系统)、具有外部壳体、壳等的自含式设备或能够执行所描述的功能的其他设备或系统。
在图7A中描绘的简化示例中,边缘计算节点700包括计算引擎(本文也称为“计算电路”)702、输入/输出(I/O)子系统708、数据存储710、通信电路子系统712以及可选地一个或多个外围设备714。在其他示例中,相应计算设备可以包括其他或附加组件(例如,典型地在计算机中发现的组件(例如,显示器、外围设备等))。附加地,在一些示例中,说明性组件中的一个或多个可以并入另一组件中或以其他方式形成另一组件的部分。
计算节点700可以体现为能够执行各种计算功能的任何类型的引擎、设备或设备集合。在一些示例中,计算节点700可以体现为单个设备(例如,集成电路、嵌入式系统、现场可编程门阵列(FPGA)、片上系统(SOC)或其他集成系统或设备)。在说明性示例中,计算节点700包括或体现为处理器704和存储器706。处理器704可以体现为能够执行本文描述的功能(例如,执行应用)的任何类型的处理器。例如,处理器704可以体现为多核处理器、微控制器、处理单元、专门或专用处理单元或其他处理器或处理/控制电路。
在一些示例中,处理器704可以体现为、包括或耦合到FPGA、专用集成电路(ASIC)、可重配置硬件或硬件电路或其他专用硬件,以促进执行本文所描述的功能。同样在一些示例中,处理器704可以体现为专用x处理单元(xPU)(也称为数据处理单元(DPU)、基础设施处理单元(IPU)或网络处理单元(NPU))。这种xPU可以体现为独立电路或电路封装,集成于SOC内,或与(例如,SmartNIC或增强型SmartNIC中的)连网电路、加速电路、存储设备或AI硬件(例如,GPU或编程式FPGA)集成。这种xPU可以被设计为在CPU或通用处理硬件的外部接收编程以处理一个或多个数据流并对于数据流执行特定任务和动作(例如,托管微服务、执行服务管理或编排、组织或管理服务器或数据中心硬件、管理服务网格,或收集并分发遥测)。然而,应理解,xPU、SOC、CPU和处理器704的其他变型可以彼此协调进行工作,以在计算节点700内并代表计算节点700执行许多类型的操作和指令。
存储器706可以被体现为能够执行本文描述功能的任何类型的易失性(例如,动态随机存取存储器(DRAM)等)或非易失性存储器或数据存储。易失性存储器可以是需要电力以维持由介质存储的数据状态的存储介质。易失性存储器的非限定性示例可以包括各种类型的随机存取存储器(RAM)(例如,DRAM或静态随机存取存储器(SRAM))。可以在存储器模块中使用的一种特定类型的DRAM是同步动态随机存取存储器(SDRAM)。
在示例中,存储器设备是块可寻址存储器设备(例如,基于NAND或NOR技术的存储器设备)。存储器设备可以还包括三维交叉点存储器设备(例如,3D XPointTM存储器)或其他字节可寻址就地写入非易失性存储设备。存储器设备可以指代管芯自身和/或封装式存储器产品。在一些示例中,3D交叉点存储器(例如,/>3D XPointTM存储器)可以包括无晶体管可堆叠交叉点架构,其中,存储器小单元坐落在字线和位线的交叉点处并且可以是可单独寻址的,并且其中,位存储基于体电阻的改变。在一些示例中,存储器706的全部或一部分可以集成到处理器704中。存储器706可以存储在操作期间使用的各种软件和数据(例如,一个或多个应用、由应用操作的数据、库和驱动程序)。
计算电路702经由I/O子系统708以通信方式耦合到计算节点700的其他组件,I/O子系统708可以体现为用于促进与计算电路702(例如,与处理器704和/或主存储器706)和计算电路702的其他组件的输入/输出操作的电路和/或组件。例如,I/O子系统708可以体现为或以其他方式包括存储器控制器集线器、输入/输出控制集线器、集成传感器集线器、固件设备、通信链路(例如,点对点链路、总线链路、电线、电缆、光导、印制电路板迹线等)和/或用于促进输入/输出操作的其他组件和子系统。在一些示例中,I/O子系统708可以形成片上系统(SoC)的部分,并且连同处理器704、存储器706和计算电路702的其他组件中的一个或多个一起合并到计算电路702中。
一个或多个说明性数据存储设备710可以体现为被配置用于短期或长期数据存储的任何类型的设备(例如,存储器设备和电路、存储卡、硬盘驱动器、固态驱动器或其他数据存储设备)。单独数据存储设备710可以包括存储用于数据存储设备710的数据和固件代码的系统分区。单独数据存储设备710可以还包括取决于例如计算节点的类型700存储用于操作系统的数据文件和可执行文件的一个或多个操作系统分区。
通信电路712可以体现为能够实现在计算电路702与另一计算设备(例如,实现边缘计算系统的边缘网关)之间通过网络的通信的任何通信电路、设备或其集合。通信电路712可以被配置为使用任何一种或多种通信技术(例如,有线或无线通信)和关联协议(例如,蜂窝网络协议(例如,3GPP 4G或5G标准)、无线局域网协议(例如,IEEE 802.11/)、无线广域网协议、以太网、/>蓝牙低能耗、IoT协议(例如,IEEE 802.15.4或)、低功耗广域网(LPWAN)或低功耗广域(LPWA)协议等)以实行这种通信。
说明性通信电路712包括网络接口控制器(NIC)720,其也可以称为主机组构接口(HFI)。NIC 720可以体现为一个或多个加件板、子卡、网络接口卡、控制器芯片、芯片集或可以由计算节点700用以与另一计算设备(例如,边缘网关节点)连接的其他设备。在一些示例中,NIC 720可以体现为包括一个或多个处理器的片上系统(SoC)的部分,或者包括于也包含一个或多个处理器的多芯片封装上。在一些示例中,NIC 720可以包括皆位于NIC 720本地的本地处理器(未示出)和/或本地存储器(未示出)。在这些示例中,NIC 720的本地处理器可以能够执行本文描述的计算电路702的功能中的一个或多个。附加地或替代地,在这些示例中,NIC 720的本地存储器可以在板级、插槽级、芯片级和/或其他级集成到客户端计算节点的一个或多个组件中。
附加地,在一些示例中,相应计算节点700可以包括一个或多个外围设备714。取决于计算节点700的特定类型,这些外围设备714可以包括计算设备或服务器中发现的任何类型的外围设备(例如,音频输入设备、显示器、其他输入/输出设备、接口设备和/或其他外围设备)。在进一步的示例中,计算节点700可以由边缘计算系统中的相应边缘计算节点(无论是客户端、网关还是聚合节点)或类似形式的器具、计算机、子系统、电路或其他组件体现。
在更加详述的示例中,图7B示出可以存在于边缘计算节点750中以用于实现本文描述的技术(例如,操作、过程、方法和方法论)的组件的示例的框图。当实现为计算设备(例如,实现为移动设备、基站、服务器、网关等)或实现为其一部分时,该边缘计算节点750提供节点700的相应组件的更靠近的视图。边缘计算节点750可以包括本文引用的硬件或逻辑组件的任何组合,并且它可以包括或耦合于可随边缘通信网络或这些网络的组合使用的任何设备。组件可以实现为边缘计算节点750中适配的集成电路(IC)、其部分、分立式电子设备或其他模块、指令集、可编程逻辑或算法、硬件、硬件加速器、软件、固件或其组合,或者实现为以其他方式合并于更大系统的机架内的组件。
边缘计算设备750可以包括呈处理器752的形式的处理电路,其可以是微处理器、多核处理器、多线程处理器、超低电压处理器、嵌入式处理器、xPU/DPU/IPU/NPU、专用处理单元、专门处理单元或其他已知处理元件。处理器752可以是片上系统(SoC)的部分,其中,处理器752和其他组件形成为单个集成电路或单个封装(例如,来自加利福尼亚州圣克拉拉的英特尔公司的EdisonTM或GalileoTM SoC板)。作为示例,处理器752可以包括基于Architecture CoreTM的CPU处理器(例如,QuarkTM、AtomTM、i3、i5、i7、i9或MCU类处理器、或可得自/>的另一该处理器)。然而,可以使用任何数量的其他处理器(例如,可得自加利福尼亚州桑尼维尔的Advanced Micro Devices公司/>来自加利福尼亚州桑尼维尔的MIPS技术公司的基于/>的设计、授权自ARM Holdings有限公司或其客户、或其受许可人或采用方的基于/>的设计)。处理器可以包括例如来自/>公司的A5-A13处理器、来自/>技术公司的SnapdragonTM处理器或来自TexasInstruments公司的OMAPTM处理器的单元。可以通过单插槽形数、多插槽形数或各种其他格式(包括:以有限硬件配置或包括少于图7B所示的所有元件的配置)提供处理器752和伴随电路。
处理器752可以通过互连756(例如,总线)与系统存储器754进行通信。可以使用任何数量的存储器设备以提供给定量的系统存储器。作为示例,存储器754可以是根据联合电子器件工程委员会(JEDEC)设计(例如,DDR或移动DDR标准(例如,LPDDR、LPDDR2、LPDDR3或LPDDR4))的随机存取存储器(RAM)。在特定示例中,存储器组件可以符合由JEDEC颁布的DRAM标准(例如,用于DDR SDRAM的JESD79F、用于DDR2 SDRAM的JESD79-2F、用于DDR3SDRAM的JESD79-3F、用于DDR4 SDRAM的JESD79-4A、用于低功耗DDR(LPDDR)的JESD209、用于LPDDR2的JESD209-2、用于LPDDR3的JESD209-3和用于LPDDR4的JESD209-4)。这些标准(和相似标准)可以称为基于DDR的标准,并且实现这些标准的存储设备的通信接口可以称为基于DDR的接口。在各种实现中,单独存储器设备可以是任何数量的不同封装类型(例如,单管芯封装(SDP)、双管芯封装(DDP)或四管芯封装(Q17P))。在一些示例中,这些设备可以直接焊接到主板上以提供较低轮廓解决方案,而在其他示例中设备被配置作为一个或多个存储器模块,其进而由给定的连接器耦合到主板。可以使用任何数量的其他存储器实现(例如,其他类型的存储器模块(例如,包括但不限于microDIMM或MiniDIMM的不同种类的双列直插存储器模块(DIMM)))。
为了提供信息(例如,数据、应用、操作系统等)的永久存储,存储758还可以经由互连756耦合到处理器752。在示例中,可以经由固态盘驱动器(SSDD)实现存储758。可以用于存储758的其他设备包括闪存卡(例如,安全数字(SD)卡、微SD卡、极限数字(XD)图片卡等)和通用串行总线(USB)闪存驱动器。在示例中,存储器设备可以是或可以包括使用硫属化物玻璃的存储器设备、多阈值级NAND闪存、NOR闪存、单级或多级相变存储器(PCM)、电阻式存储器、纳米线存储器、铁电晶体管随机存取存储器(FeTRAM)、反铁电存储器、合并忆阻器技术的磁阻式随机存取存储器(MRAM)存储器、电阻式存储器(包括金属氧化物基、氧空位基和导电桥随机存取存储器(CB-RAM))、或自旋转移矩(STT)-MRAM)、基于自旋电子磁结存储器的设备、基于磁隧道结(MTJ)的设备、基于DW(磁畴壁)和SOT(自旋轨道转移)的设备、基于晶闸管的存储器设备、或上述任何组合、或其他存储器。
在低功率实现中,存储758可以是与处理器752关联的管芯上存储器或寄存器。然而,在一些示例中,可以使用微硬盘驱动器(HDD)实现存储758。此外,除了所描述的技术之外或代替所描述的技术,任何数量的新技术(例如,阻变存储器、相变存储器、全息存储器或化学存储器等)可以用于存储758。
组件可以通过互连756进行通信。互连756可以包括任何数量的技术,包括工业标准架构(ISA)、扩展ISA(EISA)、外围组件互连(PCI)、外围组件互连扩展(PCIx)、PCI高速(PCIe)或任何数量的其他技术。互连756可以是例如在基于SoC的系统中使用的专有总线。可以包括其他总线系统(例如,内部集成电路(I2C)接口、串行外围接口(SPI)接口、点对点接口和电源总线等)。
互连756可以将处理器752耦合到收发机766,以用于与所连接的边缘设备762的通信。收发机766可以使用任何数量的频率和协议(例如,IEEE 802.15.4标准下的2.4吉赫兹(GHz)传输、使用如由特别兴趣小组定义的/>低能耗(BLE)标准或/>标准等)。被配置用于特定无线通信协议的任何数量的无线电可以用于对所连接的边缘设备762的连接。例如,无线局域网(WLAN)单元可以用以根据电气和电子工程师协会(IEEE)802.11标准实现/>通信。此外,例如根据蜂窝或其他无线广域协议的无线广域通信可以经由无线广域网(WWAN)单元而发生。
无线网络收发机766(或多个收发机)可以使用多个标准或无线电进行通信,以用于在不同范围的通信。例如,边缘计算节点750可以使用基于蓝牙低能耗(BLE)的本地收发机或另一低功率无线电与例如大约10米内的附近设备进行通信,以节省功率。可以通过或其他中等功率无线电到达例如大约50米内的更多远距的所连接的边缘设备762。这两种通信技术可以在不同功率电平通过单个无线电而发生,或者可以通过分离的收发机(例如,使用BLE的本地收发机和使用/>的分离网格收发机)而发生。
可以包括无线网络收发机766(例如,无线电收发机),以经由局域网协议或广域网协议与边缘云795中的设备或服务进行通信。无线网络收发机766可以是遵循IEEE802.15.4或IEEE 802.15.4g标准等的低功耗广域(LPWA)收发机。边缘计算节点750可以使用由Semtech和LoRa联盟开发的LoRaWANTM(长距离广域网)在广阔区域上进行通信。本文描述的技术不限于这些技术,而是可以与实现长距离、低带宽通信(例如,Sigfox)和其他技术的任何数量的其他云收发机一起使用。此外,可以使用IEEE 802.15.4e规范中描述的其他通信技术(例如,时隙式信道跳转)。
如本文所描述的那样,除了关于无线网络收发机766提及的系统之外,还可以使用任何数量的其他无线电通信和协议。例如,收发机766可以包括使用扩频(SPA/SAS)通信以用于实现高速通信的蜂窝收发机。此外,可以使用任何数量的其他协议(例如,用于中速通信和提供网络通信的网络)。收发机766可以包括本公开的结束进一步详述的与任何数量的3GPP(第三代合作伙伴项目)规范兼容的无线电(例如,长期演进(LTE)和第五代(5G)通信系统)。可以包括网络接口控制器(NIC)768,以向边缘云795的节点或向其他设备(例如,(例如,在网格中进行操作的)所连接的边缘设备762)提供有线通信。有线通信可以提供以太网连接,或者可以基于其他类型的网络(例如,控制器区域网(CAN)、局部互连网络(LIN)、DeviceNet、ControlNet、Data Highway+、PROFIBUS或PROFINET等)。可以包括附加NIC 768,以使得能够连接到第二网络,例如,第一NIC768通过以太网提供对云的通信,并且第二NIC 768通过另一类型的网络提供对其他设备的通信。
给定从设备到另一组件或网络的各种类型的适用通信,由设备使用的适用通信电路可以包括或体现为组件764、766、768或770中的任何一个或多个。因此,在各种示例中,用于通信(例如,接收、发送等)的适用手段可以由该通信电路体现。
边缘计算节点750可以包括或耦合到加速电路764,加速电路764可以由一个或多个人工智能(AI)加速器、神经计算棒、神经形态硬件、FPGA、GPU的布置、xPU/DPU/IPU/NPU的布置、一个或多个SoC、一个或多个CPU、一个或多个数字信号处理器、专用ASIC或被设计为完成一项或多项专门任务的其他形式的专用处理器或电路体现。这些任务可以包括AI处理(包括机器学习、训练、推理和分类操作)、视觉数据处理、网络数据处理、对象检测、规则分析等。这些任务可以还包括用于本文件其他地方讨论的服务管理和服务操作的特定边缘计算任务。
互连756可以将处理器752耦合到用以连接附加设备或子系统的传感器集线器或外部接口770。设备可以包括传感器772(例如,加速度计、水平传感器、流量传感器、光传感器、相机传感器、温度传感器、全球导航系统(例如,GPS)传感器、压力传感器、气压传感器等)。集线器或接口770也可以用于将边缘计算节点750连接到致动器774(例如,电源开关、阀门致动器、可听声音生成器、视觉警告设备等)。
在一些可选示例中,各种输入/输出(I/O)设备可以存在于边缘计算节点750内或连接到边缘计算节点750。例如,可以包括显示器或其他输出设备784以显示信息(例如,传感器读数或致动器位置)。可以包括输入设备786(例如,触摸屏或小键盘),以接受输入。输出设备电路784可以包括任何数量的形式的音频或视觉显示器,包括简单视觉输出(例如,二进制状态指示器(例如,发光二极管(LED))和多字符视觉输出)或更复杂的输出(例如,显示器屏幕(例如,液晶显示器(LCD)屏幕)),其中,从边缘计算节点750的操作生成或产生字符、图形、多媒体对象等的输出。显示器或控制台硬件在本系统的上下文中可以用以:提供输出并且接收边缘计算系统的输入;管理边缘计算系统的组件或服务;识别边缘计算组件或服务的状态;或进行任何其他数量的管理或行政功能或服务用例。
电池776可以对边缘计算节点750供电,虽然在边缘计算节点750安装在固定位置中的示例中,它可以具有耦合到电网的电源,或者电池可以用作备用或用于临时能力。电池776可以是锂离子电池或金属-空气电池(例如,锌-空气电池、铝-空气电池、锂-空气电池等)。
电池监控器/充电器778可以包括于边缘计算节点750中,以跟踪电池776(如果包括)的充电状态(SoCh)。电池监控器/充电器778可以用以监控电池776的其他参数,以提供故障预测(例如,电池776的健康状态(SoH)和功能状态(SoF))。电池监控器/充电器778可以是电池监控集成电路(例如,来自Linear Technology的LTC4020或LTC2990、来自亚利桑那州凤凰城的ON Semiconductor的ADT7488A或来自德克萨斯州达拉斯的Texas Instruments的UCD90xxx系列的IC)。电池监控器/充电器778可以通过互连756将关于电池776的信息传递到处理器752。电池监控器/充电器778可以还包括模数(ADC)转换器,其使得处理器752能够直接监控电池776的电压或来自电池776的电流。电池参数可以用以确定边缘计算节点750可以执行的动作(例如,传输频率、网状网络操作、感测频率等)。
电源块780或耦合到电网的其他电源可以与电池监控器/充电器778耦合,以对电池776进行充电。在一些示例中,可以用无线电力接收机代替电源块780,以通过无线方式(例如,通过边缘计算节点750中的环形天线)获得电力。无线电池充电电路(例如,来自加利福尼亚州米尔皮塔斯市的Linear Technology的LTC4020芯片等)可以包括于电池监控器/充电器778中。可以基于电池776的大小且因此所需的电流选择特定充电电路。可以使用由Airfuel联盟颁布的Airfuel标准、由无线电源联盟颁布的Qi无线充电标准或由无线充电联盟颁布的Rezence充电标准等执行充电。
存储758可以包括呈软件、固件或硬件命令的形式的指令782,以实现本文描述的技术。虽然这些指令782示出为存储器754和存储758中包括的代码块,但是可以理解,可以用(例如,内置到专用集成电路(ASIC)中的)硬连线电路代替任何代码块。
在示例中,经由存储器754、存储758或处理器752提供的指令782可以体现为非瞬时性机器可读介质760,其包括用于引导处理器752以在边缘计算节点750中执行电子操作的代码。处理器752可以通过互连756访问非瞬时性机器可读介质760。例如,非瞬时性机器可读介质760可以由关于存储758描述的设备体现,或者可以包括特定存储单元(例如,光盘、闪速驱动器或任何数量的其他硬件设备)。非瞬时性机器可读介质760可以包括用于引导处理器752以执行特定动作序列或流程的指令,例如,如关于以上描绘的操作和功能的流程图和框图所描述的那样。如本文所使用的那样,术语“机器可读介质”和“计算机可读介质”是可互换的。
同样在特定示例中,处理器752上的指令782(单独地,或与机器可读介质760的指令782组合)可以配置可信执行环境(TEE)790的执行或操作。在示例中,TEE 790操作为对处理器752可存取的受保护区域,以用于指令的安全执行和对数据的安全访问。例如,通过使用软件防护扩展(SGX)或/>硬件安全扩展、/>管理引擎(ME)或/>融合安全可管理性引擎(CSME),可以提供TEE 790的各种实现以及处理器752或存储器754中的伴随安全区域。可以通过TEE 790和处理器752在设备750中实现安全强化、硬件信任根以及受信任或受保护的操作的其他方面。
在进一步的示例中,机器可读介质还包括能够存储、编码或携带用于由机器执行的指令并且使机器执行本公开的任何一种或多种方法或者能够存储、编码或携带由这些指令利用或与之关联的数据结构的任何有形介质。“机器可读介质”因此可以包括但不限于固态存储器以及光和磁介质。机器可读介质的具体示例包括非易失性存储器,通过示例的方式包括但不限于半导体存储器设备(例如,电可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM))和闪存设备;磁盘(例如,内部硬盘和可移除盘);磁光盘;和CD-ROM和DVD-ROM盘。可以进一步利用多种传输协议中的任何一种(例如,超文本传输协议(HTTP))经由网络接口设备使用传输介质通过通信网络发送或接收由机器可读介质体现的指令。
存储设备或能够以非瞬时性格式托管数据的其他装置可以提供机器可读介质。在示例中,机器可读介质上存储或以其他方式提供的信息可以表示指令(例如,指令本身或可以导出指令所根据的格式)。可以导出指令所根据的该格式可以包括源代码、(例如,压缩或加密形式的)编码指令、(例如,拆分为多个包的)包封指令等。表示机器可读介质中的指令的信息可以由处理电路处理为指令,以实现本文讨论的任何操作。例如,从信息导出指令(例如,由处理电路进行处理)可以包括:将信息(例如,从源代码、目标代码等)编译、解释、加载、组织(例如,动态地或静态地链接)、编码、解码、加密、解密、包封、解包封或以其他方式操控为指令。
在示例中,指令的导出可以包括(例如,处理电路进行的)信息的汇编、编译或解释,以从由机器可读介质提供的一些中间或预处理格式创建指令。信息当以在多个部分中提供时可以被组合、解包封并且修改,以创建指令。例如,信息可以处于一个或若干远端服务器上的多个压缩源代码包(或目标代码、或二进制可执行代码等)中。源代码包可以当通过网络运送时被加密,并且如果必要则被解密、解压缩、汇编(例如,链接),而且在本地机器处被编译或解释(例如,为库、独立可执行文件等),且由本地机器执行。
如上所述,边缘计算涉及在边缘(例如,更靠近用户(例如,基站/小区塔和中心局))处执行计算的许多场景。边缘系统可以对功率可用性、工作负载约束、调度等基于预测(例如,估计)或改变主动进行反应。例如,当网络带宽或某传感器带宽增加时,可以增添功率。在示例中,当电力较便宜时或当电力从可再生源产生时,执行工作负载。节点可以受调度以按最高效的或比不考虑功率等级的调度更高效的频率和功率等级进行操作(例如,执行工作负载)。例如,CPU可以超频以按快速速率运行,但是这样做可能以比频率保持在较低速率更高的速率产生热量。热量(例如,过度功率使用)与可用功率的权衡可以用以确定CPU时钟频率的参数或执行特定工作负载的定时(例如,在环境温度较冷的夜间)。对于加热窗口更高效或最高效功率可以用作用于调度工作负载的准则。
热量在边缘设备中引起问题,因为需要更多的功率以冷却组件。例如,随着CPU热量上升,需要更多的风扇功率或其他冷却动作以使CPU保持在操作温度内。当在高环境热量期间进行操作时,可能需要更多功率以冷却组件。
输出到组件或由组件使用的功率的单独控制可以用以管理功耗。例如,用于图7B的一个、一组或所有组件的新功率状态可以用以减少功耗。例如,可以对于处理器752、机器可读介质760(例如,存储器754)、输出设备784、加速电路764、无线网络收发机766、网络接口768、输入设备786、传感器集线器/外部接口770或附接到边缘计算节点750的组件(例如,所连接的边缘设备762、传感器772或致动器774)中的任何一个生成用于控制功率的功率状态。
图8示出根据一些实施例的可再生能量供电边缘器具设备800。可再生能量供电边缘器具设备800包括可再生功率源(例如,太阳能集热器802或风力集电器803)、电池804和天线806(例如,回程连接组件)。可再生能量供电边缘器具设备800可以包括一个或多个可选组件(例如,相机(例如,808A、808B)或车辆连接810(例如,V2X收发机))。在示例中,可再生能量供电边缘器具设备800可能没有对电网的连接或对网络的物理连接,在其它示例中,边缘器具设备800可以使用电网能量作为对绿色功率的备用或替代。可再生能量供电边缘器具设备800可以用锁加以固定并包括通风件。
可再生能量供电边缘器具设备800的各种组件不需要全部存在于边缘设备处。其他配置是可能的,图8所示的可再生能量供电边缘器具设备800的组件和布置是组件和布置的一个示例集合。例如,可以使用不同的电源(例如,风力),可以使用更多或更少的相机、电池或通信组件等。
在示例中,可再生能量供电边缘器具设备800是边缘网络中的节点。边缘计算涉及受约束的环境中的计算节点的使用。在示例中,节点是基于太阳能的绿色边缘部署。在一些示例中,关于对于包括加速器的易用性、适应性、SW使用或可配置性等,这些绿色边缘部署可以基于标准平台,而非专用配置(例如,低功率配置)。功率是在此场景(例如,在对不同任务赋优先级并进行调度的同时)中变为因素的约束。
在评估对用于对任务进行调度或赋优先级的功耗的影响的同时,存在由可再生能量供电边缘器具设备800考虑的若干因素。例如,可再生能量供电边缘器具设备800可以考虑正在使用的计算资源(包括内核、可编程逻辑、加速器和这些资源的操作的频率或速度)、正在使用的存储器资源(包括DRAM、DCPMM(Optane存储器)和它们的关联容量或带宽配置)、正在使用的存储或网络资源等。在示例中,功率考量可以适用于软件组件。存在可以在可再生能量供电边缘器具设备800上执行的许多类型的软件组件,包括例如正配给给边缘用户的边缘服务(例如,配给给自动驾驶汽车的服务或配给给无人机的服务)、可以跨越软件栈的各个部分(例如,不形成服务的部分的OS、驱动程序或应用SW)的系统软件组件等。在一些示例中,学习组件可以移动或迁移到其他系统。
用组件(例如,可选组件)(例如,传感器、相机、天线、太阳能、风力、电池、本地编排器、功率管理组件、附近代理通信或信息存储、附近传感器盒通信或信息存储等)在图8中示出可再生能量供电边缘器具设备800。可再生能量供电边缘器具设备800可以与另一边缘设备812(例如,距可再生能量供电边缘器具设备800距离或通信距离附近的边缘设备或由编排器或经由先前发现所指定的设备)进行通信。在示例中,该另一边缘设备812由可再生能量供电。在一些示例中,该另一边缘设备812可以是可选地用来自电网的(例如,不可再生的)电力进行操作的边缘设备。在一些示例中,该另一边缘设备812可以由有线连接对网络进行连接。可再生能量供电边缘器具设备800和该另一边缘设备812可以例如在可再生能量供电边缘器具设备800与该另一边缘设备812之间使用P2P通信交换编排、遥测或其它数据,以用于协调可再生能量供电边缘器具设备800和该另一边缘设备812的动作。
本系统和技术提供边缘系统中的边缘设备(例如,边缘设备(例如,共享公共地理位置的设备)的群组)之间的动态边缘调度。边缘系统可以包括可再生能量供电边缘器具设备800。在示例中,边缘设备(例如,可再生能量供电边缘器具设备800)可以独立于中心局进行操作,以优化功率负载和资源。
路边单元(RSU)是坐落在更靠近数据源的位置以用于边缘计算的计算设备。RSU的位置理想地尽可能靠近数据源(例如,当数据源/目标是在高速公路上行链路驶的一组汽车时,沿着整个高速公路的覆盖是理想的)。在示例中,RSU可以包括带有电池、数个相机(例如,两个、四个、八个、十个等)或无线连接器的基于边缘太阳能的V2X机柜。取决于位置,所部署的RSU集合中的某些可能插接到电网中,而其他RSU基于地形、远程性等可能处于具有电网接通的不可用性的远程位置中。
RSU可以坐落以实现远程感测或在RSU处用非常低的时延获得数据或执行计算。在一些示例中,RSU具有点对点连接性。不同的RSU可以具有不同的能量储备或功率源,并且因此,它们可以具有对于计算任务或通信可用的不同功率。功率可用性的差异可以基于对电网的访问、可用的环境功率(例如,太阳能或风力)、电池可用性等。差异可以基于环境功率源(例如,归因于风可用性、一天中的时间、多云等而在电力收集中展现出突发性的太阳能或风能)。差异可以基于用例(例如,取决于RSU之间分配的计算或通信任务)。
在RSU之间可以采取动作,以基于每RSU的可用能量的差异而不同地节省功率。例如,当与可用能量低的RSU相比时,具有多余能量的RSU可以能够时钟化为远更高的频率。在示例中,其它变量可以包括给定RSU处的活动内核的数量、所关闭的存储器行列、无线传输能力等。
在一些示例中,可以使用(例如,对于RSU系统(例如,在地理区域中))系统范围准则,例如,以确保至少N个RSU具有至少X焦耳的储备能量以用于存活。可以进行任务调度决策,以使得它们针对环境可用性、传入能量的预测、跨越RSU的当前负载和使用的预测得以调和。系统范围准则可以包括:使能量使用最小化,或优化系统的能量使用。在这些边缘环境中,能量或功率可以视为用于决策进行和RSU之间的共享的第一类资源(例如,货币)。
本文描述的系统和技术例如用RSU提供边缘部署中的框架,其中,边缘设备可以使用各种边缘设备之间的协作流调度特定功能,以确定用于执行计算的系统的最佳边缘设备。系统范围准则可以用以计算能量评分(例如,用于在特定边缘设备处执行特定功能)。在边缘设备集合中的每一个处执行功能的能量评分可以好比根据边缘设备的能量得分识别其排名。最高排名的能量评分可以对应于用于执行功能的边缘设备。能量评分可以基于诸如以下的准则:功率可用性、功率源(例如,可再生、电网、电池等)、功率可靠性(例如,例如归因于电池或可再生约束而导致的将来功率丢失的似然性)、带宽、跳转数量、所消耗的能量等。
能量评分可以包括边缘设备处的可用瓦特、可用的电池充电的百分比、对于使用可用的电压、完成功能所需的电压等。能量评分可以包括可能的停机时间分钟或小时数、所预测的故障率、可用光伏(例如,对于太阳能)、风速或风向(例如,对于风力)等。
在示例中,对于待处理为特定SLA(例如,时延、成本等)内的净荷X的给定请求f(),边缘设备选择可以考虑每个边缘设备中可用的功率、或就可用的功率单元而言的对应虚拟成本、对应边缘设备与其余边缘设备之间或其间的时延、用于移动X的功率成本(例如,网络关联功耗(给定网络能力))、功率可用性或每个边缘设备中对于执行f()的计算可用性等。在一些示例中,边缘设备或边缘设备系统可以按照用于生存的边缘最小储备能量准则跟踪总体可用能量。系统中的边缘设备之间的P2P通信可以用以发现对等方的当前能力。这可以包括其他因素(例如,边缘设备可以收获的更好的未来功率可用性)。在一些示例中,可以基于消耗选择网络协议(例如,协议A的消耗比B少50%,但是以2X缓慢速度)。
不同边缘设备具有不同功率充电。该功率对于实现特定计算的使用可以对边缘设备的整体蜂巢具有不同的成本或不同的影响。因此,具有较少功率的边缘可能具有更高成本(或实际上更稀缺的功率单元)以实现该计算。具有可用的较高功率的边缘设备可能具有更低成本(或实际上在功率方面更丰富)以实现相同计算。
(例如,经由无线P2P通信)可以观察到边缘设备中的每一个之间的不同时延和带宽。该通信带宽可以取决于各种链路的使用。可以使用边缘与对等方之间的不同通信技术或路由。
图9示出根据一些实施例的示例系统框图900。示图900提供边缘节点(例如,RSU、基站等)的示例描述。在示例中,示图900可以包括边缘设备的IPU的组件。在另一示例中,示图900的组件可以存在于平台内的其它地方(例如,平台自身、CPU加速器、离散加速器等)。
示图900包括用于边缘设备系统处的动态调度的新接口集合。在示例中,接口允许注册与从网络角度而言可访问的各种对等方相关的静态信息。如以下的图10所示,加入虚拟功率的蜂巢中的每个边缘可以(例如,使用蜂巢ID作为多播)多播到蜂巢的其余对等方。所提供的信息可以包括边缘节点的UUID、资源列表(例如,包括资源类型(例如,加速器类型、CPU类型等)、各个加速器的容量等)等。
示例接口可以用以周期性地更新蜂巢中的节点以注册其当前状态。与先前接口相似,这可以使用蜂巢ID经由多播流加以实现。每个边缘可以提供包括边缘节点的UUID的信息或当前可用性资源列表(包括例如资源类型、当前资源可用性、给定当前环境(环境温度、使用情况等)的情况下的特定资源的当前功耗、可用的功率的量等)。
示例接口可由基础设施使用(例如,不同的IPU在它们之间进行主动探测以理解一个特定方向上可用的时延和带宽),以注册时延和带宽所提供给的节点的UUID的列表、当前边缘与节点之间的潜在路由的列表(其可以包括不同的技术)等。在该接口中,可以提供每路由信息(例如,特定节点与另一节点之间的当前时延、特定节点与另一节点之间的当前带宽、给定当前带宽的情况下的将要消耗的功率或字节的量、网络利用率、网络的特性或其它特性等)。
图10示出根据一些实施例的示例多播示图1000。如上所述,示图1000示出蜂巢或系统中的边缘设备之间的多播。每个边缘设备可以向其他边缘设备提供遥测或其他信息。遥测逻辑可以收集为了执行所描述的流而需要的任何所需信息。所采集的遥测数据可以包括资源,包括与可用资源有关的信息、规范化为环境度量的当前功耗(例如,为了处理1teraflop,CPU将消耗100瓦/flop,因为当前温度为50,在30的正常条件下,它将消耗40瓦/flop)、环境信息(例如,机柜外部或内部的温度)或可以共享并可以用于调度逻辑的相似类型的信息、绿色功率度量(例如,引用当前对于计算可用的能量(例如,存储在电池中的能量、当前从太阳或风中收获的能量,对未来12小时内将是可用的能量的估计等)的量的信息)、为了确保节点不耗尽能量而在下一时间段(例如,12小时)期间可能消耗的功率预算等。
请求逻辑可以用以当将要执行特定功能时实现前面描述的流。该功能可以由平台中运行的软件栈请求。当在特定SLA(时延、成本等)内对净荷X的处理请求f()发生时,边缘选择可以考量每个边缘中可用的功率和就可用的功率单元而言的对应虚拟成本(如果边缘具有适合特定请求的专用硬件,则将招致不同的成本)、对应边缘与其余边缘之间的时延,将确定移动X的功率成本(网络关联功耗,并且在给定网络功能的情况下)、可用的功率和每个边缘中执行f()的计算可用性等。
请求逻辑可以使用对等方和网络的状态的最后已知信息以过滤可以(例如,给定计算和数据移动要求)能够满足SLA的对等方。请求逻辑可以根据对等方具有的能量的量将对等方进行排序,同时避免对具有高计算需求的对等方给予更高等级。这可以包括:将具有高电池等级的或可能使用辐照能量的节点放置在首位。请求逻辑可以(例如,按顺序)迭代地检查所选节点(潜在地并行生成多个查询)。检查可以包括:通知对等方需要执行将使用具有给定数目的资源列表的特定功能,并通知对等方其将需要复制特定量的数据并使用特定路由检索特定量的数据。一旦对等方已经被选择并同意采取功能,请求逻辑就可以使用所选路由发送数据连同(由数据提供的)对执行功能的请求,并使用所选检索路由在执行之后检索功能的结果。协作流逻辑可以用以实现上面已经描述的流。
在一些示例中,(例如,基于IPU的)组构协议从主机的角度而言可以照管计算委派,以使系统更具伸缩且自动分布。应用可以将微服务引发到具有特定网络和计算/资源要求的IPU中。IPU可以在P2P模式下进行工作,以确定用于运行该服务的最佳地方。IPU当委派时可以考虑优化功耗(例如,考量电力网络消耗和计算功率)。例如,IPU可以判断不将功能从第一边缘(例如,具有非常最小功率的边缘)两次跳转移动到第二边缘(例如,具有足够计算的潜在目标),因为网络和计算高于以较低功率具有足够加速计算的第三边缘,尽管第三边缘离开四个跳转。
除了用于安全引导、信任根、HW和SW认证和授权、资源管理、健康、QoS和流量管理强制执行的目的之外,IPU还可以变为控制点。基于功率分析(例如,包括预测式分析),IPU可以自主地彼此交谈,并为跨越边缘和多云的整个服务链选择(从总体系统功耗优化的角度来看)最优化的工作负载位置。在一些示例中,当某集中式控制系统在特定节点上部署工作负载时,该节点中的IPU可以将处理委派给能够执行任务的另一受信任节点。
信息中心连网(ICN)是作为对基于地址的方法(例如,互联网协议(IP))的替代的传输层或互联网层协议。ICN将主机地址替换为命名数据(或命名功能连网(NFN)中的功能)。ICN节点通常包括两种数据结构:用于路由的未决兴趣表(PIT)和转发信息库(FIB)。
当期望数据时,请求方释放命名正查找的数据的兴趣分组。接收ICN节点在PIT条目中记录兴趣分组到达连同接收兴趣的物理接口。ICN节点使用FIB以确定在哪个物理接口上转发兴趣。当节点具有与兴趣分组的名称匹配的数据时,该节点通常响应于数据分组(例如,ICN数据分组)中的兴趣分组。当数据分组到达临时节点时,该节点将数据分组的名称与PIT条目匹配,并使用PIT条目的物理接口以转发数据;一旦数据分组得以发送,PIT条目就被删除。
因为仅数据的名称是必要的,所以数据可以贯穿网络加以缓存,而无需基于主机的技术中存在的编排。因此,随着数据分组遍历临时ICN节点,该节点可以缓存数据分组以响应于对同一数据的未来请求。
示例ICN网络包括如互联网工程任务组(IETF)草案规范中针对CCNx 0.x和CCN1.x中指定的内容中心网络(CCN)以及如NDN技术报告DND-0001中指定的所命名的数据连网(NDN)。
在示例中,所命名的数据网络(NDN)协议可以用以协商处理和代理能力,以使得IPU可以使用NDN以用于IPU间协议,以执行该工作负载分配。在示例中,NDN可以包括功率相关扩展。在另一示例中,功率功能可以随IPU功能保留。此类IPU功能可以与NDN层交谈以终结分配任务。
在示例中,基站的电池可以是完满的,并且可以收获的能量可能损失。通过将功能从具有并非完满(或并未预计在给定时间段内充满)的电池的基站移动到该基站上,可以收获环境能量,否则能量对于系统将损失。这样改进系统中的整体能量可用性。在另一示例中,(例如,归因于阳光的缺乏或不足的风力(例如,在雨天或阴天))可能在时间段内收获较少能量。在该示例中,可以使用更积极的节能技术(例如,将功能移动到附接到网络或电网的基站)。本文描述的系统和技术用于时段的优化,其中,存在一个塔中的较多辐照以及其他塔中的较少辐照,或者在一个塔针对另一塔中可以收获的能量比正使用的更多。
图11示出根据一些实施例的用于动态边缘调度的技术1100的流程图。该技术1100可以由边缘设备执行(例如,使用存储器以存储指令,以用于由处理电路执行)。边缘设备可以是系统或蜂巢的部分(例如,特定区域中、彼此的特定距离或通信距离内的边缘设备群组、(例如,由编排器)指定的设备群组等)。
技术1100包括操作1102,以在系统的边缘设备处识别要执行的功能。技术1100包括操作1104,以对于多个远程边缘设备基于边缘设备和多个远程边缘设备之间的点对点通信确定多个远程边缘设备中的每一个的能力和约束集合。能力可以包括多个远程边缘设备中的每一个处供给的资源。约束可以包括多个远程边缘设备中的每一个处的功率可用性或功率源。技术1100包括操作1106,以基于对于功能的功能要求和能力和约束集合从多个远程边缘设备确定候选远程边缘设备。
技术1100包括操作1108,以基于使用能力和约束集合确定的用于系统的能量评分,从候选远程边缘设备选择要执行功能的远程边缘设备。在示例中,用于系统的能量评分可以基于系统中的候选远程边缘设备和边缘设备的电池使用的最小化。例如,当边缘设备的可再生功率不可用时,用于系统的能量评分可以由远程边缘设备的可使用的可再生功率指示。
操作1108可以包括:识别从边缘设备到远程边缘设备的跳转数量,跳转数量满足与功能对应的跳转数量要求。操作1108可以包括:确定远程边缘设备处的时延,时延满足与功能对应的时延要求。操作1108可以包括:在远程边缘设备处接收功率可用性。操作1108可以包括:接收能够执行功能的远程边缘设备处的资源可用性。操作1108可以包括:基于远程边缘设备在候选远程边缘设备当中具有最大可用电池功率选择远程边缘设备。操作1108可以包括:基于远程边缘设备能够满足用于功能的SLA或SLO选择远程边缘设备。选择远程边缘设备可以包括:选择边缘设备的特定路由,以用于向远程边缘设备发送与功能对应的数据。
操作1108可以包括:使用以下中的至少一个:候选远程边缘设备的每个选择中可用的功率和当执行功能时可用的功率的对应成本、边缘设备与候选远程边缘设备中的每一个之间的时延、将功能移动到候选远程边缘设备中的每一个的功率成本等。技术1100可以包括:例如,通过发送远程边缘设备的要用于执行功能的资源列表的标识,通知远程边缘设备执行功能。
在选择要执行功能候选的远程边缘设备之后,技术1100可以包括:实例化所选远程边缘设备。在示例中,实例化所选远程边缘设备包括:以部分的方式为所选远程边缘设备供电,而不是对所选远程边缘设备完全上电。在一些示例中,例如,基于过去数据(例如,当边缘设备知道所选远程边缘设备能够从过去交互或数据执行功能时),所选远程边缘设备当被选择时可以处于关闭或断电状态。在该示例中,通知所选远程边缘设备可以包括:确定要激活的组件以及所选远程边缘设备处的功率等级。
应理解,本说明书中描述的功能单元或能力可能已经称为或标记为组件或模块,以更具体地强调它们的实现独立性。可以通过任何数量的软件或硬件形式体现这些组件。例如,组件或模块可以实现为包括定制的超大规模集成(VLSI)电路或门阵列、现货半导体(例如,逻辑芯片)、晶体管或其他分立组件的硬件电路。组件或模块也可以实现于可编程硬件设备(例如,现场可编程门阵列、可编程阵列逻辑、可编程逻辑器件等)中。组件或模块也可以实现于软件中,以用于由各种类型的处理器执行。例如,所识别的可执行代码的组件或模块可以包括可以例如组织为对象、过程或功能的一个或多个物理或逻辑计算机指令块。然而,所识别的组件或模块的可执行文件无需以物理方式定位在一起,而是可以包括不同位置中存储的相异指令,其当以逻辑方式结合在一起(例如,包括通过电线、通过网络、使用一个或多个平台、以无线方式、经由软件组件等)时包括组件或模块并实现用于组件或模块的所声明的目的。
实际上,可执行代码的组件或模块可以是单个指令或许多指令,并且可以甚至分布遍及若干不同的代码段、不同的程序之间以及跨越若干存储器设备或处理系统。具体而言,所描述的过程的一些方面(例如,代码重写和代码分析)可以发生在与(例如,传感器或机器人中嵌入的计算机中)部署代码的处理系统不同的(例如,数据中心的计算机中的)处理系统上。相似地,操作数据可以在本文中在组件或模块内加以识别并且示出,并且可以通过任何合适的形式体现而且可以在任何合适类型的数据结构内加以组织。操作数据可以收集为单个数据集,或可以分布在包括不同存储设备的不同位置上,并且可以至少部分地仅作为系统或网络上的电子信号存在。组件或模块可以是无源的或有源的,包括可操作为执行期望功能的代理。
目前所描述的方法、系统和设备实施例的附加示例包括以下非限定性实现。以下非限定性示例中的每一个可以独立存在或者可以与下文或贯穿本公开提供的其他示例中的任何一个或多个通过任何排列或组合进行组合。
这些非限定性示例中的每一个可以独立存在,或者可以与其它示例中的一个或多个以各种排列或组合进行组合。
示例1是一种用于动态边缘调度的边缘设备系统的边缘设备,所述边缘设备包括:存储器,包括指令;和处理电路,当在操作中时由所述指令配置以执行操作,以:在所述边缘设备处识别要执行的功能;对于所述系统的多个远程边缘设备,基于所述边缘设备与所述多个远程边缘设备之间的点对点通信,确定所述多个远程边缘设备的能力和约束集合;基于对于所述功能的功能要求和所述能力和约束集合,从所述多个远程边缘设备确定候选远程边缘设备;根据使用所述能力和约束集合确定的用于所述系统的能量评分,对所述候选远程边缘设备进行排名;以及从所排名的候选远程边缘设备选择排名居首的远程边缘设备以执行所述功能。
在示例2中,如示例1所述的主题包括,其中,所述能力和约束集合中的能力包括所述多个远程边缘设备中的每一个处供给的资源。
在示例3中,如示例1-2所述的主题包括,其中,所述能力和约束集合中的约束包括所述多个远程边缘设备中的每一个处的功率可用性、功率源或功率可靠性中的至少一个。
在示例4中,如示例1-3所述的主题包括,其中,基于从所述边缘设备到所述远程边缘设备的跳转数量选择所述远程边缘设备,所述跳转数量满足与所述功能对应的跳转数量要求。
在示例5中,如示例1-4所述的主题包括,其中,基于所述远程边缘设备处的时延选择所述远程边缘设备,所述时延满足与所述功能对应的时延要求。
在示例6中,如示例1-5所述的主题包括,其中,基于所述远程边缘设备处的功率可用性选择所述远程边缘设备。
在示例7中,如示例1-6所述的主题包括,其中,基于能够执行所述功能的所述远程边缘设备处的资源可用性选择所述远程边缘设备。
在示例8中,如示例1-7所述的主题包括,其中,选择所述远程边缘设备包括:使用以下中的至少一个:所述候选远程边缘设备的每个选择中可用的功率和当执行所述功能时可用的功率的对应成本、所述边缘设备与所述候选远程边缘设备中的每一个之间的时延、或将所述功能移动到所述候选远程边缘设备中的每一个的功率成本。
在示例9中,如示例1-8所述的主题包括,其中,所述能量评分对应于所述系统中的所述候选远程边缘设备和所述边缘设备的电池使用的最小化。
在示例10中,如示例1–9所述的主题包括,其中,所述能量评分对应于所述远程边缘设备的可再生功率。
在示例11中,如示例1-10所述的主题包括,其中,基于所述远程边缘设备在所述候选远程边缘设备当中具有最大可用电池功率选择所述远程边缘设备。
在示例12中,如示例1–11所述的主题包括,其中,基于所述远程边缘设备能够满足用于所述功能的SLA选择所述远程边缘设备。
在示例13中,如示例1-12所述的主题包括,其中,所述操作还包括:通知所述远程边缘设备执行所述功能,包括:识别所述远程边缘设备的资源列表以用于所述功能的执行。
在示例14中,如示例1-13所述的主题包括,其中,选择所述远程边缘设备包括:选择边缘设备的特定路由,以用于向所述远程边缘设备发送与所述功能对应的数据。
示例15是一种用于使用边缘设备系统的边缘设备的处理电路的方法,所述方法包括:在所述边缘设备处识别要执行的功能;对于所述系统的多个远程边缘设备,基于所述边缘设备与所述多个远程边缘设备之间的点对点通信,确定所述多个远程边缘设备中的每一个的能力和约束集合;基于对于所述功能的功能要求和所述能力和约束集合,从所述多个远程边缘设备确定候选远程边缘设备;根据使用所述能力和约束集合确定的用于所述系统的能量评分,对所述候选远程边缘设备进行排名;以及从所排名的候选远程边缘设备选择排名居首的远程边缘设备以执行所述功能。
在示例16中,如示例15所述的主题包括,其中,所述能力和约束集合中的能力包括所述多个远程边缘设备中的每一个处供给的资源。
在示例17中,如示例15-16所述的主题包括,其中,所述能力和约束集合中的约束包括所述多个远程边缘设备中的每一个处的功率可用性、功率源或功率可靠性中的至少一个。
在示例18中,如示例15-17所述的主题包括,其中,选择所述远程边缘设备包括:识别从所述边缘设备到所述远程边缘设备的跳转数量,所述跳转数量满足与所述功能对应的跳转数量要求。
在示例19中,如示例15-18所述的主题包括,其中,选择所述远程边缘设备包括:确定所述远程边缘设备处的时延,所述时延满足与所述功能对应的时延要求。
在示例20中,如示例15-19所述的主题包括,其中,选择所述远程边缘设备包括:接收所述远程边缘设备处的功率可用性。
在示例21中,如示例15-20所述的主题包括,其中,选择所述远程边缘设备包括:接收能够执行所述功能的所述远程边缘设备处的资源可用性。
在示例22中,如示例15-21所述的主题包括,其中,选择所述远程边缘设备包括:使用以下中的至少一个:所述候选远程边缘设备的每个选择中可用的功率和当执行所述功能时可用的功率的对应成本、所述边缘设备与所述候选远程边缘设备中的每一个之间的时延、或将所述功能移动到所述候选远程边缘设备中的每一个的功率成本。
示例23是一种装置,包括:用于识别要执行的功能的部件;用于对于多个远程边缘设备,基于所述装置与所述多个远程边缘设备之间的点对点通信,确定所述多个远程边缘设备中的每一个的能力和约束集合的部件;用于基于对于所述功能的功能要求和所述能力和约束集合,从所述多个远程边缘设备确定候选远程边缘设备的部件;用于根据使用所述能力和约束集合确定的用于所述系统的能量评分,对所述候选远程边缘设备进行排名的部件;和用于从所排名的候选远程边缘设备选择排名居首的远程边缘设备以执行所述功能的部件。
在示例24中,如示例23所述的主题包括,其中,所述用于选择所述远程边缘设备的部件包括:用于选择边缘设备的特定路由以用于向所述远程边缘设备发送与所述功能对应的数据的部件。
示例25是至少一种非瞬时性机器可读介质,包括指令,所述指令当由边缘设备系统的边缘设备的处理电路部署和执行时使所述处理电路:识别要执行的功能;对于所述系统的多个远程边缘设备,基于所述边缘设备与所述多个远程边缘设备之间的点对点通信,确定所述多个远程边缘设备中的每一个的能力和约束集合;基于对于所述功能的功能要求和所述能力和约束集合,从所述多个远程边缘设备确定候选远程边缘设备;根据使用所述能力和约束集合确定的用于所述系统的能量评分,对所述候选远程边缘设备进行排名;以及从所排名的候选远程边缘设备选择排名居首的远程边缘设备以执行所述功能。
示例26是至少一种机器可读介质,包括指令,所述指令当由处理电路执行时使所述处理电路执行操作以实现示例1-25中任一项。
示例27是一种装置,包括用于实现示例1-25中任一项的部件。
示例28是一种系统,用于实现示例1-25中任一项。
示例29是一种方法,其用于实现示例1-25中任一项。
另一示例实现是一种边缘计算系统,包括相应边缘处理设备和节点,以调用或执行示例1-25或本文描述的其他主题的操作。
另一示例实现是一种客户端端点节点,可操作为调用或执行示例1-25或本文描述的其他主题的操作。
另一示例实现是一种聚合节点、网络中枢节点、网关节点或核心数据处理节点,其处于边缘计算系统内或耦合到边缘计算系统,可操作为调用或执行示例1-25或本文描述的其他主题的操作。
另一示例实现是一种接入点、基站、路边单元、街边单元或预置单元,其位于边缘计算系统内或耦合到边缘计算系统,可操作为调用或执行示例1-25或本文描述的其他主题的操作。
另一示例实现是一种边缘配给节点、服务协调节点、应用协调节点或多租户管理节点,其处于边缘计算系统内或耦合到边缘计算系统,可操作为调用或执行示例1-25或本文描述的其他主题的操作。
另一示例实现是一种操作边缘配给服务、应用或服务编排服务、虚拟机部署、容器部署、功能部署和计算管理的边缘节点,其处于边缘计算系统内或耦合到边缘计算系统,可操作为调用或执行示例1-25或本文描述的其他主题的操作。
另一示例实现是一种包括网络功能、加速功能、加速硬件、存储硬件或计算硬件资源的方面的边缘计算系统,可操作为通过使用示例1-25或本文描述其他主题调用或执行本文讨论的用例。
另一示例实现是一种适用于支持客户端移动性、车辆到车辆(V2V)、车辆到万物(V2X)或车辆到基础设施(V2I)场景并且可选地根据ETSI MEC规范进行操作的边缘计算系统,可操作为通过使用示例1-25或本文描述其他主题调用或执行本文讨论的用例。
另一示例实现是一种边缘计算系统,适用于移动无线通信,包括根据3GPP 4G/LTE或5G网络能力的配置,其可操作为通过使用示例1-25或本文描述的其他主题调用或执行本文讨论的用例。
另一示例实现是一种边缘计算节点,可操作在边缘计算网络或边缘计算系统的层中作为聚合节点、网络中枢节点、网关节点或核心数据处理节点,可操作在靠近边缘、本地边缘、企业边缘、驻地边缘、附近边缘、中间、边缘或远边缘网络层中,或可操作在具有共同时延、定时或距离特性的节点集合中,可操作为通过使用示例1-25或本文描述的其他主题调用或执行本文讨论的用例。
另一示例实现是连网硬件、加速硬件、存储硬件或计算硬件,具有其上实现的能力,可操作在边缘计算系统中,以通过使用示例1-25或本文描述的其他主题调用或执行本文讨论的用例。
另一示例实现是一种边缘计算系统,被配置为通过使用示例1-25或本文描述的其它主题执行从以下中的一个或多个提供的用例:计算卸载、数据缓存、视频处理、网络功能虚拟化、无线接入网络管理、增强现实、虚拟现实、工业自动化、零售服务、制造操作、智能建筑、能源管理、自动驾驶、车辆辅助、车辆通信、物联网操作、对象检测、语音识别、医疗保健应用、游戏应用或加速内容处理。
另一示例实现是一种边缘计算系统的装置,包括:一个或多个处理器;和一个或多个计算机可读介质,包括指令,所述指令当由所述一个或多个处理器执行时使所述一个或多个处理器通过使用示例1-25或本文描述的其他主题调用或执行本文讨论的用例。
另一示例实现是一种或多种计算机可读存储介质,包括指令,所述指令用于使边缘计算系统的电子设备在由所述电子设备的一个或多个处理器执行所述指令时通过使用示例1-25或本文描述的其它主题调用或执行本文讨论的用例。
另一示例实现是一种边缘计算系统的装置,包括用于通过使用示例1-25或本文描述的其他主题调用或执行本文讨论的用例的部件、逻辑、模块或电路。
虽然已经参考特定示例性方面描述这些实现,但将显而易见的是,可以在不脱离本公开的更广泛范围的情况下对这些方面进行各种修改和改变。可以通过组合方式或通过并行实现使用本文描述的许多布置和过程,以提供更大的带宽/吞吐量并支持可以使对正受服务的边缘系统可用的边缘服务选择。因此,说明书和附图要认为是说明性的而不是限制性的。形成其部分的附图通过说明而非限制的方式示出可以实践主题的特定方面。足够详细地描述所示方面以使得本领域技术人员能够实践本文所公开的教导。可以利用其他方面并从中导出其他方面,从而可以在不脱离本公开的范围的情况下进行结构和逻辑替换和改变。因此,不应以限制性意义理解该具体实施方式,并且各个方面的范围仅由所附权利要求连同这些权利要求所赋予的等同物的全部范围一起限定。
可以在本文中单独地和/或联合地指代本发明主题的这些方面,仅为了方便,并且如果实际上公开多于一个的方面,则并非旨在自愿将本申请的范围限制为任何单个方面或发明构思。因此,虽然本文已经示出并描述特定方面,但应理解,对于所示的特定方面,可以替换针对实现同一目的而计算的任何布置。本公开旨在涵盖各个方面的任何和所有适配或变型。在浏览以上描述时,以上方面和本文未具体描述的其他方面的组合对于本领域技术人员将是显而易见的。
本文描述的方法示例可以至少部分是机器或计算机实现的。一些示例可以包括计算机可读介质或机器可读介质,其编码有指令,所述指令可操作为配置电子设备以执行如上述示例中描述的方法。这些方法的实现可以包括代码(例如,微码、汇编语言代码、更高级语言代码等)。该代码可以包括用于执行各种方法的计算机可读指令。代码可以形成计算机程序产品的部分。此外,在示例中,(例如,在执行期间或在其它时间)代码可以有形地存储在一个或多个易失性、非瞬时性或非易失性有形计算机可读介质上。这些有形计算机可读介质的示例可以包括但不限于硬盘、可移动磁盘、可移动光盘(例如,致密盘和数字视频盘)、磁带、存储卡或存储棒、随机存取存储器(RAM)、只读存储器(ROM)等。
Claims (24)
1.一种用于动态边缘调度的边缘设备系统的边缘设备,所述边缘设备包括:
存储器,包括指令;和
处理电路,当在操作中时由所述指令配置以执行操作,以:
在所述边缘设备处识别要执行的功能;
对于所述系统的多个远程边缘设备,基于所述边缘设备与所述多个远程边缘设备之间的点对点通信,确定所述多个远程边缘设备的能力和约束集合;
基于对于所述功能的功能要求和所述能力和约束集合,从所述多个远程边缘设备确定候选远程边缘设备;
根据使用所述能力和约束集合确定的用于所述系统的能量评分,对所述候选远程边缘设备进行排名;以及
从所排名的候选远程边缘设备选择排名居首的远程边缘设备以执行所述功能。
2.如权利要求1所述的边缘设备,其中,所述能力和约束集合中的能力包括所述多个远程边缘设备中的每一个处供给的资源。
3.如权利要求1所述的边缘设备,其中,所述能力和约束集合中的约束包括所述多个远程边缘设备中的每一个处的功率可用性、功率源或功率可靠性中的至少一个。
4.如权利要求1所述的边缘设备,其中,基于从所述边缘设备到所述远程边缘设备的跳转数量选择所述远程边缘设备,所述跳转数量满足与所述功能对应的跳转数量要求。
5.如权利要求1所述的边缘设备,其中,基于所述远程边缘设备处的时延选择所述远程边缘设备,所述时延满足与所述功能对应的时延要求。
6.如权利要求1所述的边缘设备,其中,基于所述远程边缘设备处的功率可用性选择所述远程边缘设备。
7.如权利要求1所述的边缘设备,其中,基于能够执行所述功能的所述远程边缘设备处的资源可用性选择所述远程边缘设备。
8.如权利要求1所述的边缘设备,其中,选择所述远程边缘设备包括:使用以下中的至少一个:所述候选远程边缘设备的每个选择中可用的功率和当执行所述功能时可用的功率的对应成本、所述边缘设备与所述候选远程边缘设备中的每一个之间的时延、或将所述功能移动到所述候选远程边缘设备中的每一个的功率成本。
9.如权利要求1所述的边缘设备,其中,所述能量评分对应于所述系统中的所述候选远程边缘设备和所述边缘设备的电池使用的最小化。
10.如权利要求1所述的边缘设备,其中,所述能量评分对应于所述远程边缘设备的可再生功率。
11.如权利要求1所述的边缘设备,其中,基于所述远程边缘设备在所述候选远程边缘设备当中具有最大可用电池功率选择所述远程边缘设备。
12.如权利要求1所述的边缘设备,其中,基于所述远程边缘设备能够满足用于所述功能的SLA选择所述远程边缘设备。
13.如权利要求1-12中任一项所述的边缘设备,其中,所述操作还包括:
通知所述远程边缘设备执行所述功能,包括:识别所述远程边缘设备的资源列表以用于所述功能的执行。
14.如权利要求1-12中任一项所述的边缘设备,其中,选择所述远程边缘设备包括:选择边缘设备的特定路由,以用于向所述远程边缘设备发送与所述功能对应的数据。
15.一种用于使用边缘设备系统的边缘设备的处理电路的方法,所述方法包括:
在所述边缘设备处识别要执行的功能;
对于所述系统的多个远程边缘设备,基于所述边缘设备与所述多个远程边缘设备之间的点对点通信,确定所述多个远程边缘设备中的每一个的能力和约束集合;
基于对于所述功能的功能要求和所述能力和约束集合,从所述多个远程边缘设备确定候选远程边缘设备;
根据使用所述能力和约束集合确定的用于所述系统的能量评分,对所述候选远程边缘设备进行排名;以及
从所排名的候选远程边缘设备选择排名居首的远程边缘设备以执行所述功能。
16.如权利要求15所述的方法,其中,所述能力和约束集合中的能力包括所述多个远程边缘设备中的每一个处供给的资源。
17.如权利要求15所述的方法,其中,所述能力和约束集合中的约束包括所述多个远程边缘设备中的每一个处的功率可用性、功率源或功率可靠性中的至少一个。
18.如权利要求15所述的方法,其中,选择所述远程边缘设备包括:
识别从所述边缘设备到所述远程边缘设备的跳转数量,所述跳转数量满足与所述功能对应的跳转数量要求。
19.如权利要求15所述的方法,其中,选择所述远程边缘设备包括:
确定所述远程边缘设备处的时延,所述时延满足与所述功能对应的时延要求。
20.如权利要求15-19中任一项所述的方法,其中,选择所述远程边缘设备包括:
接收所述远程边缘设备处的功率可用性。
21.如权利要求15-19中任一项所述的方法,其中,选择所述远程边缘设备包括:
接收能够执行所述功能的所述远程边缘设备处的资源可用性。
22.如权利要求15所述的方法,其中,选择所述远程边缘设备包括:
使用以下中的至少一个:所述候选远程边缘设备的每个选择中可用的功率和当执行所述功能时可用的功率的对应成本、所述边缘设备与所述候选远程边缘设备中的每一个之间的时延、或将所述功能移动到所述候选远程边缘设备中的每一个的功率成本。
23.一种装置,包括:
用于识别要执行的功能的部件;
用于对于多个远程边缘设备,基于所述装置与所述多个远程边缘设备之间的点对点通信,确定所述多个远程边缘设备中的每一个的能力和约束集合的部件;
用于基于对于所述功能的功能要求和所述能力和约束集合,从所述多个远程边缘设备确定候选远程边缘设备的部件;
用于根据使用所述能力和约束集合确定的用于所述系统的能量评分,对所述候选远程边缘设备进行排名的部件;和
用于从所排名的候选远程边缘设备选择排名居首的远程边缘设备以执行所述功能的部件。
24.如权利要求23所述的装置,其中,所述用于选择所述远程边缘设备的部件包括:
用于选择边缘设备的特定路由以用于向所述远程边缘设备发送与所述功能对应的数据的部件。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/559,318 | 2021-12-22 | ||
US17/559,318 US20220114010A1 (en) | 2021-12-22 | 2021-12-22 | Cooperative management of dynamic edge execution |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116339906A true CN116339906A (zh) | 2023-06-27 |
Family
ID=81077690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211577188.7A Pending CN116339906A (zh) | 2021-12-22 | 2022-11-22 | 动态边缘执行的协作管理 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20220114010A1 (zh) |
CN (1) | CN116339906A (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111144715B (zh) * | 2019-12-11 | 2023-06-23 | 重庆邮电大学 | 一种基于边云协同的工厂电能管控系统及方法 |
US11880950B2 (en) * | 2022-03-14 | 2024-01-23 | Meta Platforms Technologies, Llc | Selective offload of workloads to edge devices |
CN115967175B (zh) * | 2022-11-30 | 2024-05-10 | 广州汇电云联数科能源有限公司 | 一种面向储能电站边缘端数据采集控制装置及方法 |
CN116260699A (zh) * | 2023-04-03 | 2023-06-13 | 中国电子技术标准化研究院 | 一种基于云边端协同的工业互联网系统及实现方法 |
-
2021
- 2021-12-22 US US17/559,318 patent/US20220114010A1/en active Pending
-
2022
- 2022-11-22 CN CN202211577188.7A patent/CN116339906A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US20220114010A1 (en) | 2022-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11218546B2 (en) | Computer-readable storage medium, an apparatus and a method to select access layer devices to deliver services to clients in an edge computing system | |
US20210014133A1 (en) | Methods and apparatus to coordinate edge platforms | |
EP3972295A1 (en) | Geofence-based edge service control and authentication | |
US20210004265A1 (en) | Elastic power scaling | |
EP4020204B1 (en) | Adaptive power management for edge device | |
NL2029044B1 (en) | Intelligent data forwarding in edge networks | |
US20210119962A1 (en) | Neutral host edge services | |
CN111953725A (zh) | 边缘计算环境中的加速的自动定位 | |
CN114338679A (zh) | 用于边缘环境中的工作负荷布置的方法、设备和制品 | |
CN114253659A (zh) | 网格的编排 | |
US20220150125A1 (en) | AI Named Function Infrastructure and Methods | |
US20210014303A1 (en) | Methods and apparatus to manage quality of service with respect to service level agreements in a computing device | |
US20210144202A1 (en) | Extended peer-to-peer (p2p) with edge networking | |
EP4109257A1 (en) | Methods and apparatus to facilitate service proxying | |
US20220114010A1 (en) | Cooperative management of dynamic edge execution | |
EP4155933A1 (en) | Network supported low latency security-based orchestration | |
EP4203564A1 (en) | Adaptive cloud autoscaling | |
US20220138156A1 (en) | Method and apparatus providing a tiered elastic cloud storage to increase data resiliency | |
US20220116478A1 (en) | Microservice latency reduction | |
US20210117134A1 (en) | Technologies for storage and processing for distributed file systems | |
EP4156637B1 (en) | Software defined networking with en-route computing | |
US20210326763A1 (en) | Model propagation in edge architectures | |
CN115525405A (zh) | 变形计算机视觉流水线 | |
US20230018191A1 (en) | Service roaming between edge computing platforms | |
US20230342223A1 (en) | Edge resource management |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |