CN117425891A - 用于支持基于网络的计算服务的***和方法 - Google Patents
用于支持基于网络的计算服务的***和方法 Download PDFInfo
- Publication number
- CN117425891A CN117425891A CN202180098712.XA CN202180098712A CN117425891A CN 117425891 A CN117425891 A CN 117425891A CN 202180098712 A CN202180098712 A CN 202180098712A CN 117425891 A CN117425891 A CN 117425891A
- Authority
- CN
- China
- Prior art keywords
- routine
- manager
- data
- service
- task
- 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
- 238000000034 method Methods 0.000 title claims abstract description 94
- 230000008093 supporting effect Effects 0.000 title description 8
- 230000006870 function Effects 0.000 claims abstract description 298
- 230000006854 communication Effects 0.000 claims abstract description 134
- 238000004891 communication Methods 0.000 claims abstract description 124
- 238000012545 processing Methods 0.000 claims description 25
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 description 49
- 238000003860 storage Methods 0.000 description 18
- 230000001960 triggered effect Effects 0.000 description 10
- 230000006855 networking Effects 0.000 description 7
- 230000004044 response Effects 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000002360 preparation method Methods 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000001976 improved effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000005304 joining Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- 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/40—Network security protocols
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
Abstract
本发明提供了一种在通信网络的边缘节点上实现计算服务的方法,其中,所述计算服务由多个服务功能构成,每个服务功能通过通信例程连接到另一个服务功能。服务功能和例程可以部署在边缘节点上,并且任何两个服务功能之间的通信都可以在例程管理器的协调下经由例程和隐私路由器来执行。服务功能和例程可以被分组为任务,这些任务可以通过任务管理器进行协调。任务可以被分组为工作,这些工作可以通过工作管理器进行协调。由于隐私路由器可以对例程通信执行加密,因此实现计算服务的任何实体都可以被部署在通信网络的边缘节点上,并且服务管理器可以与外部实体接口。
Description
相关申请
这是针对本发明提交的首次申请。
技术领域
本发明总体上涉及基于网络的计算服务领域,并且更具体地涉及支持、管理和提高计算服务的安全性的方法,在所述计算服务中,计算和存储主要在靠近网络边缘的网络节点上执行。
背景技术
边缘计算(edge computing,EC)是一种通过使计算和存储靠近网络边缘并因此更靠近终端用户来减少传输延迟和带宽消耗的计算方式。这种网络和计算的融合预计将成为包括6G在内的下一代无线***的典型场景。
典型的EC应用包括具有大的带宽或严格的延迟要求的应用,例如,人工智能(artificial intelligence,AI)应用、增强现实(augmented reality,AR)游戏、虚拟现实(virtual reality,VR)游戏、机械等。随着EC技术的进一步发展,预期EC能力和平台(例如,边缘云)将深入部署在网络中(例如,在无线电节点上)并广泛使用。
在本发明中,除非另有说明,否则“计算服务”、“服务”和“应用”是等同的,可以互换使用。
通常,为了利用EC,经授权的服务提供商可以请求在网络中部署其计算服务。然而,边缘云可以由不同的供应商提供并由不一定相互信任的不同方(例如,不同的网络运营商和其他第三方)管理。在这种比当前网络和上一代网络更加开放和多样化的多边环境中,基础设施网络安全性是固有的挑战,必须在***架构层面解决。为了解决人们日益关注的隐私问题,6G网络有望为客户提供隐私保护,包括设备隐私保护和数据隐私保护。
现有技术缺乏用于缓解在计算资源被分配给由一方控制的应用并利用另一方的资源来执行时所固有的安全风险的方法。例如,在由网络运营商运营的网络的边缘执行第一方的应用的情况下。因此,需要从***架构设计的角度出发,通过以能够减少相关安全风险的方式管理和支持服务来消除或缓解现有技术的一个或更多个局限性的方法和***。
提供背景技术的目的是揭示申请人认为可能与本发明相关的信息。不必也不应解释为任何上述信息构成本发明的现有技术。
发明内容
本发明的实施例通过采用***架构方法来解决与边缘计算相关的安全风险。实施例涉及在网络设置中部署和操作计算服务,在这种网络设置下,可以执行一个或更多个基于网络的任务。任务是需要在至少两个不同网络实体之间交互的过程。举例来说,在人工智能(artificial intelligence,AI)模型构建时,任务的示例是数据准备任务、模型训练任务和模型验证。每个任务可以包括多个例程,每个例程包括在两个服务功能之间经由隐私路由器进行的数据通信。服务功能可以被链接起来,并且每个例程对应于链中的两个相邻服务功能。例程可以基于来自例程管理器的信息被执行。例程管理器可以从任务管理器获得数据,任务管理器可以从工作管理器获得数据,工作管理器可以从服务管理器获得数据。与现有技术的方法相比,通过根据来自例程管理器的指令经由隐私路由器在网络节点上执行计算服务的例程以及具有根据实施例的架构,计算服务可以被实现为在在安全性得以改善的网络云上执行。
实施例包括一种进行操作以执行计算服务的***,计算服务包括至少一个例程和至少一个服务功能,每个例程与例程服务器功能和例程客户端功能相关联,所述***包括:至少一个例程管理器,该至少一个例程管理器进行操作以执行例程并且用于:接收与例程相关联的同步要求;根据同步要求,邀请第一例程客户端执行与例程服务器的第一数据通信,其中第一例程客户端是例程客户端功能的实例,例程服务器是例程服务器功能的实例;根据同步要求,邀请第二例程客户端执行与例程服务器的第二数据通信,其中第二例程客户端是例程客户端功能的实例;至少一个第一隐私路由器,该至少一个第一隐私路由器进行操作以转发与例程服务器和第一例程客户端之间的第一数据通信相关联的数据业务;至少一个第二隐私路由器,该至少一个第二隐私路由器进行操作以转发与例程服务器和第二例程客户端之间的第二数据通信相关联的数据业务。在实施例中,同步要求可以是针对顺序通信的,并且邀请第二例程客户端可以在第一数据通信之前执行。在实施例中,同步要求可以是针对并行通信的,并且邀请第二例程客户端执行与例程服务器的第二数据通信可以在第一数据通信完成之前发生。在实施例中,邀请第二例程客户端还包括接收关于第一数据通信完成的通知。在实施例中,隐私路由器可以从例程管理器接收指示对数据业务执行代理重新加密的指令,并相应地执行该指令。在实施例中,第一隐私路由器和第二隐私路由器可以是同一实体。在实施例中,至少一个例程客户端可以是终端设备。在实施例中,同步要求可以包括标识例程客户端功能和例程服务器功能中的至少一者的信息。在实施例中,计算服务的例程和服务功能可以被分组为至少一个任务,并且所述***还可以包括至少一个任务管理器,该任务管理器用于:被接口成与至少一个例程管理器通信,并且进行操作以:接收用于执行任务的命令;根据例程间依赖关系,协调任务的例程的执行;针对每个例程执行分配执行标识符;标识与每个例程相关联的至少一个例程管理器;以及通知例程管理器执行例程。在实施例中,任务可以被分组为工作,并且该***还可以包括工作管理器,该工作管理器用于:被接口成与至少一个任务管理器通信,以及进行操作以:接收用于执行工作的命令;根据任务间依赖关系,协调工作的任务的执行;选择至少一个任务管理器来执行工作的任务;以及将每个任务命令发送给所选择的任务管理器。在实施例中,计算服务可以包括工作,并且所述***还可以包括服务管理器,其中,服务管理器用于:被接口成与至少一个工作管理器通信,以及进行操作以:接收工作命令;基于每个工作管理器的工作量针对每个工作命令选择工作管理器;分配标识每个工作命令的信息;分配标识所述执行的信息;将所述信息发送给所选择的工作管理器;将所标识的工作命令转发给所选择的工作管理器;以及触发与所述服务相关联的工作的执行。在一些实施例中,该方法还包括分配标识工作的执行的信息。在实施例中,服务管理器还可以进行操作以:获得与工作相关联的任务间依赖关系数据;以及向工作管理器提供任务间依赖关系数据。在实施例中,***还可以包括应用控制器,应用控制器被接口成与服务管理器通信,并且进行操作以通过与服务管理器交互来管理计算服务,所述交互包括:向服务管理器发送工作命令,以及接收所述工作命令的执行完成的通知。在实施例中,***还可以包括至少一个服务数据存储库,该至少一个服务数据存储库被接口成与至少服务管理器、工作管理器和任务管理器通信,并且进行操作以接收、存储和发送包括以下中的一项或更多项的信息:标识每个计算服务的信息;针对每个计算服务的服务配置文件;标识每个工作的信息;指示任务间依赖关系的工作数据;指示例程间依赖关系的任务数据;指示同步要求的例程数据;指示至少一个第一隐私路由器和至少一个第二隐私路由器的计算平面数据;指示例程服务器功能和例程客户端功能的服务功能数据;以及指示第一例程客户端、第二例程客户端和例程服务器的部署数据。在实施例中,所述至少一个服务数据存储库还可以进行操作以接收、存储和发送包括用户订阅数据的信息。在实施例中,所述至少一个服务数据存储库还可以进行操作以接收、存储和发送包括设备状态信息的信息。在实施例中,任务管理器还进行操作以选择至少k个设备,以确保设备之间的k匿名,其中,数量k的值可以在例程数据、任务数据或者在本地配置中指示。在实施例中,任务管理器还进行操作以选择设备、将设备与例程管理器相关联以及向例程管理器通知这些设备,以便例程管理器能够邀请这些设备。
实施例包括一种执行计算服务的方法,所述方法包括:由例程管理器根据相应的同步要求,协调构成计算服务的例程的执行;其中,例程的执行包括以下处理:对来自例程的数据执行代理重新加密;转发来自例程的数据。在实施例中,协调例程的执行可以包括触发例程的执行,触发例程的执行可以包括:向隐私路由器发送第一通知,其中,所述隐私路由器用于处理与例程执行相关的数据,所述处理包括通过使用与数据的接收器相关的重新加密密钥对数据执行代理重新加密并转发来自例程的经重新加密的数据,以及将第二通知转发给例程服务器功能的实例,其中,所述第一通知包括标识计算服务的信息和标识例程的信息;向隐私路由器发送第三通知,其中,所述隐私路由器用于处理与例程执行相关的数据,所述处理包括通过使用与数据的接收器相关的重新加密密钥对数据执行代理重新加密并转发来自例程的经重新加密的数据,以及将第四通知转发给例程客户端功能的实例,其中,所述第三通知包括标识计算服务的信息和标识例程的信息;其中,至少一个隐私路由器还用于根据通信指令发起例程服务器功能的实例与例程客户端功能的实例之间的通信;并且处理与例程执行相关的数据是根据通信指令而执行的。在实施例中,通信指令可以包括在给隐私路由器的通知中。在实施例中,处理与例程执行相关的数据还可以包括通过使用与数据的接收器相关的重新加密密钥对数据执行代理重新加密。在实施例中,重新加密密钥可以被预先配置在隐私路由器中,或者作为通信指令的一部分从例程管理器接收。在实施例中,所述方法还包括由例程管理器从例程服务器功能的实例或例程客户端功能的实例接收数据通信完成的通知。在实施例中,例程管理器可以从例程客户端功能的实例接收数据通信完成的通知。在实施例中,协调例程的执行可以包括:由例程管理器向服务功能的第一实例发送第一邀请消息;由例程管理器向服务功能的第二实例发送第二邀请消息;由例程管理器从服务功能的第一实例接收第一接受消息,其中,所述第一接受消息包括用于对例程数据执行代理重新加密的安全材料;以及由例程管理器从服务功能的第二实例接收第二接受消息,其中,所述第二接受消息包括用于对例程数据执行代理重新加密的安全材料;其中,通过隐私路由器来促进每个消息的发送。在实施例中,第一邀请消息和第二邀请消息中的一个或更多个还包括以下中的一项或更多项:标识计算服务的信息;标识例程的信息;标识例程执行的信息。在实施例中,发送邀请消息还可以包括发送包括邀请消息的外部消息。在实施例中,外部消息还可以包括与隐私路由器相关的路由信息。在实施例中,协调例程的执行可以包括:由例程管理器从已获得与计算服务的服务配置文件相关联的信息的任务管理器接收执行例程的通知;从例程管理器向任务管理器发送确认;从例程管理器向例程服务器功能的实例发送邀请,以促进例程执行;从例程管理器向例程客户端功能的至少一个实例发送邀请,以促进至少一次例程执行;由例程管理器执行与例程客户端功能的每个实例的例程通信过程。在实施例中,协调例程的执行还可以包括:由包括所述例程管理器的至少一个例程管理器基于通过任务管理器获得的数据来执行至少一个例程,所述数据包括:使得能够选择所述至少一个例程管理器的数据;与所述至少一个例程相关联的例程数据;与任务关联的任务数据;与任务相关的计算平面数据;以及来自工作管理器的用于触发包括所述至少一个例程的任务的请求。在实施例中,工作管理器可以由服务管理器选择、接收来自服务管理器的工作命令,以及进行操作以接收与工作相关联的工作数据、接收关于如何执行工作的信息并接收至少一个执行条件。在实施例中,任务管理器还可以进行操作以选择至少k个设备,以确保设备之间的k匿名,其中,数量k的值可以在例程数据、任务数据或者在本地配置中指示。在实施例中,任务管理器还可以进行操作以选择设备、将设备与例程管理器相关联以及向例程管理器通知这些设备,以便例程管理器能够邀请这些设备。
另外的实施例包括用于执行本文中描述的方法的装置和***。例如,一种装置,该装置包括处理器,该处理器与存储有指令的存储器耦接,所述指令在由处理器执行时将装置配置成执行如本文所描述且要求保护的方法。
另外的实施例包括一种机器可读介质,该机器可读介质存储有指令,所述指令在由处理器执行时将处理器配置成执行如本文所描述且要求保护的方法。
附图说明
图1示出了根据实施例的服务,工作、任务和服务功能之间的关系以及服务功能链。
图2示出了根据实施例的能够管理并协调工作、任务和例程的执行的平台的***架构。
图3示出了根据实施例的用于根据来自应用控制器的命令来处理工作命令或任务命令的命令发布过程。
图4示出了根据实施例的任务执行过程。
图5示出了根据实施例的例程执行过程。
图6示出了根据实施例的用于邀请服务功能的实例加入例程的执行的过程。
图7示出了根据实施例的关于例程服务器和例程客户端可以如何在例程管理器的触发下进行通信以交换数据的过程。
图8示出了根据实施例的关于例程管理器可以如何邀请两个例程客户端并触发例程服务器和每个例程客户端之间的通信的过程。
图9示出了根据实施例的服务功能实例1和服务功能实例2之间的数据路径,其中,数据可选地由路由器加密。
图10示出了根据实施例的关于例程服务器和两个例程客户端之间如何顺序地或并行地进行通信的过程。
图11是根据实施例的可以用于实现根据本发明的代表性实施例的设备和方法的计算和通信环境950内的电子设备952的框图。
具体实施方式
开放网络基础设施有望在无线接入网(radio access network,RAN)和核心网(core network,CN)中越来越多地融合联网和计算。下一代网络有望在更靠近网络边缘(例如,RAN节点)的地方提供计算能力。这种靠近网络边缘的融合可以被称为边缘计算(edgecomputing,EC)。然而,EC能力可能因供应商而不同并由不同方进行管理。因此,必须解决各种问题。这些问题可以包括带宽要求、服务质量(quality of service,QoS)要求、所涉及的应用、基础设施网络安全性以及设备隐私和数据隐私。
在传统的联网范例中,主要目标是提供连接性,并且应用可以至少部分地由单独的服务功能提供服务,形成应用的服务功能的部署位置可以被返回给服务提供商,并且部署位置可以为应用层所知,应用层可以根据部署位置发起功能间通信。然而,部署位置的公开可能给基础设施网络(特别是边缘云)带来安全风险。部署位置可能被以可路由ID(例如,IP地址)或不可路由ID(例如,数据网络接入标识符或“DNAI”)的形式公开。
在可路由ID的情况下,这些ID可以直接在传输网络层(transport networklayer,TNL)中被使用,以用于将数据路由到相应的服务功能。敌对或受损的网络实体可以使用这些ID发送大量恶意数据包,从而淹没或禁用相应的服务功能和EC平台。这被称为拒绝服务(denial of service,DoS)攻击,并且可以留给EC平台处理。
在不可路由ID的情况下,需要附加机制来将不可路由ID映射到路由决策。这可以意指修改TNL使得路由基于不可路由ID,或者修改上层使得不可路由ID被转换为可路由地址。无论哪种情况,都必须再次依赖TNL或上层来处理安全风险。
边缘计算可以包括基于应用的联网,实施例可以提供用于管理和支持基于网络的计算服务以及用于提高其安全性的方法和***。特别地,实施例可以解决其中功能利用边缘节点的计算网络的安全性和隐私要求,并且提供用于管理和支持相关的基于网络的计算服务的方法和***。
实施例可以解决的问题包括:
·关于隐私保护和安全性:参与的实体(例如,设备、应用服务器)应相互不可见。为了实现这一点,实施例可以保护边缘云位置不被公开并为设备提供k匿名保护。如果无法将一系列数据中所包含的针对每个设备的信息与其信息也出现在该系列数据中的至少k-1个设备区分开来,则认为该系列数据具有k匿名属性。
·关于数据机密性,实施例可以保护数据业务的内容不受平台的影响。在通信方不知道彼此的情况下,这可以与隐私保护一起实现。
·关于计算管理,实施例可以针对依赖关系要求来协调和同步联网的计算处理,例如,如下所述的工作、任务和例程。
应当注意,术语“计算(compute)”和“计算(computing)”在本文中可互换使用。此外,术语“应用”、“服务”、“计算服务”在本文中可互换使用。
在基于应用联网的实施例中,计算可以以任务的形式进行,并且依赖于网络的参与。应用层可以向基于应用的服务平台发送任务请求而不是发起数据路由,并且该平台可以相应地通过针对协调要求用信号通知适当的服务功能来触发任务执行,并且在任务执行期间在服务功能之间路由数据。然后,平台可以将计算结果返回给应用层。这种方法可以被称为任务管理,并且可以增强安全性和隐私保护,包括:
-不公开部署位置,例如,通过不公开部署位置和任务执行,
-参与的服务功能彼此不可见。
在应用中,任务可以被分组为工作。在AI应用的特定示例情况下,工作可以与构建AI模型相关,并且可以包括各种任务,例如,数据收集和准备任务、模型训练任务和模型验证任务。此外,模型验证任务可以依赖于模型训练任务,而模型训练任务又可以依赖于数据收集和准备任务。AI应用中的另一工作可以与AI推理有关。然而,应当理解,本发明并不限于AI应用,并且可以支持其他应用。
通常,实施例的计算服务可以是应用层服务,并且包括可以被认为属于该计算服务或与其相关联的一个或更多个工作。实施例的工作可以被展示给服务消费者(即,消费或使用服务的实体),并且服务消费者可以选择参与、加入或促进工作的执行。此外,实施例可以允许通过功能分离来灵活地管理工作量。
在支持计算服务的实施例中,工作通常可以包括一个或更多个任务。例如,如果工作是针对AI服务的,则该工作可以包括关于数据准备、模型训练和模型验证的任务,并且在执行期间,可以执行这些任务。任务可以被认为属于计算服务或与之相关联。如果任务很多,则这些任务可以相互依赖。例如,如果第一任务需要第二任务的计算结果来作为输入,则第一任务可以依赖于第二任务。因此,应当在执行第二任务之后执行第一任务。如果第一任务直接依赖于第三任务的结果,而第三任务直接依赖于第二任务的结果,则在第一任务可以间接依赖于第二任务的意义上,依赖关系可以是间接的。当两个任务不相互依赖时,可以先执行其中任一任务,也可以并行执行这两个任务。任务之间的相互依赖关系可以被称为任务间依赖关系,也可以被称为工作内依赖关系。在这种情况下,并行暗指第二任务的执行可以在第一任务完成之前开始。这两个任务可以同时开始,但这不是必需的。
在实施例中,任务可以包括一个或更多个服务功能,并且两个服务功能可以通过例程链接在一起。每个例程可以指两个服务功能之间的通信以及任务的计算/联网步骤。一个或更多个例程可以被认为属于服务或与之相关联,并且例程之间可以存在相互依赖关系。如果第一例程依赖于第二例程,例如因为第一例程需要第二例程的计算结果作为输入,则应在执行第二例程之后执行第一例程。在下述意义上依赖关系可以是间接的:因为第一例程直接依赖于第三例程,而第三例程又依赖于第二例程,因此第一例程可以间接依赖于第二例程。当两个例程不相互依赖时,可以先执行其中任一例程,也可以并行执行这两个例程。例程之间的相互依赖关系可以被称为例程间依赖关系,也可以被称为任务内依赖关系。在这种情况下,并行意指第二例程的执行可以在第一例程完成之前开始。这两个例程可以同时开始,但这不是必需的。
在实施例中,任务可以与服务功能链(service function chaining,SFC,或简称为“链”)相关联。SFC可以反映计算服务及其任务联网逻辑流,并且包括作为服务功能的终端设备。任务的每个例程可以是任务中的步骤并对应于SFC中的链路,使得在任务执行期间,可以按通过例程链路的方向定义的次序来执行例程。服务功能的部署可以遵循服务提供商所指定的SFC要求和资源要求。根据请求,网络可以在考虑资源可用性和网络状况的情况下在边缘云中部署(即,实例化)服务功能。
图1示出了根据实施例的计算服务(即,应用),与该计算服务相关联的工作、任务和服务功能之间的关系以及服务功能链接。服务105可以包括至少一个工作110,工作110可以包括至少一个任务120,例如,任务1、任务2和任务3 120,并且每个任务可以包括至少两个服务功能130以及至少一个在服务功能之间提供通信的例程。例程可以按顺序运行,并且如果例程按顺序运行,则该顺序可以对应于包括服务功能的服务功能链(servicefunction chain,SFC)140。因此,在一些实施例中,每个任务可以包括一个或更多个例程,并且每个例程涉及两个服务功能。这一个或更多个例程可以按顺序运行。在一些实施例中,这一个或更多个例程可以并行运行。在这种情况下,并行意指第二例程的执行可以在第一例程完成之前开始。这两个例程可以同时开始,但这不是必需的。
在一个实施例中,可以在网络的多个位置处实例化服务功能,以便具有服务功能的多个实例,并且这可能需要多个任务管理器和多个例程管理器,其各自被定位成管理与服务功能的实例相关的任务和例程。
当需要时(例如,根据请求或根据某些事件),可以执行与计算服务相关联的工作或任务。可以根据请求(称为工作命令或任务命令)、在发生某些事件时或者在某些条件下在工作级别或任务级别触发执行。在实施例中,任务可以指最小的执行单元。在工作执行期间,可以针对与工作相关联的任务间依赖关系(或工作内依赖关系)来执行工作的任务,这样就不会违反任务间依赖关系。在任务执行期间,可以针对与任务相关联的例程间依赖关系(或任务内依赖关系)来执行任务的例程,这样就不会违反例程间依赖关系。在例程执行期间,例程服务器和与例程服务器相关联的例程客户端之间可以针对与例程相关联的同步要求(如上所述)发生数据通信,使得可以满足/达到同步要求。例程服务器是与例程相关联的第一服务功能(其可以被称为例程服务器功能)的实例,并且例程客户端是与例程相关联的第二服务功能(其可以被称为例程客户端功能)的实例,如下所述。
在实施例中,例程可以与第一服务功能和第二服务功能相关联。在一个实施例中,第一服务功能不表示或指示设备,并且可以被称为例程服务器功能,而第二服务功能可以表示或指示一个或更多个设备,也可以不表示或不指示一个或更多个设备,并且可以被称为例程客户端功能。当例程客户端功能表示一个或更多个设备时,暗指例程客户端功能正在这一个或更多个设备上运行,或者这一个或更多个设备将作为例程客户端功能参与例程的执行。这两个服务功能可以被认为属于计算服务或与之相关联,每个服务功能都可以具有一个或更多个实例。
在实施例中,如果服务功能(即,例程服务器功能或例程客户端功能)不表示一个或更多个设备,则服务功能的每个实例可以对应于服务功能的部署位置。部署位置是实例化或部署服务功能的网络位置。
当例程客户端功能确实表示一个或更多个设备时,由例程客户端功能表示的一个或更多个设备可以被视为例程客户端功能的实例。在这种情况下,例程可以与标识设备的信息相关联,其还可以与例程客户端功能相关联。
在实施例中,例程服务器功能的实例可以被称为例程服务器。其可以与例程客户端功能的一个或更多个实例相关联,这些实例中的每个实例都被称为例程客户端。在例程执行期间,例程服务器在例程执行期间与一个或更多个例程客户端通信/交互。例程可以与同步要求相关联,同步要求可以指示例程服务器是应该并行地还是按顺序(即,顺序地,一个接一个地)与一个或更多个例程客户端通信/交互。前一种情况可以被称为并行通信,后一种情况可以被称为顺序通信。在该上下文中,并行意指(例程服务器和第二例程客户端之间的)第二通信可以在(例程服务器和第一例程客户端之间的)第一通信完成之前开始。这两个通信可以同时开始,但这不是必需的。
实施例包括一种***,该***可以是用于针对如本文中描述的工作、任务和例程的概念支持基于网络的计算服务的平台。根据实施例的平台可以支持在网络环境中部署和操作计算服务。平台可以由第三方运营,与服务消费者(即,服务的消费者,该消费者是消费/使用服务的实体)和服务提供商(即,服务的提供商,该提供商是提供/给予服务的实体)相比,第三方可以被称为平台运营商。
根据实施例的平台(被称为NET4AI平台)可以包括许多实体,其中一些实体可以被如下描述:
-服务管理器,用于针对每个服务来处理:服务注册、注销、修改、配置,以及用于与外部实体对接以用于例如接收工作命令和任务命令;
-工作管理器,用于针对每个工作或每个服务来处理工作命令、任务命令调度,以及用于根据任务间依赖关系来协调任务;
-任务管理器,用于针对每个任务来处理任务命令,以及用于根据任务内依赖关系来协调例程;
-例程管理器,具有用于针对每个例程来处理例程执行(包括开始/停止例程执行)以及用于根据同步要求来协调例程客户端加入例程执行的功能;
-隐私路由器,具有用于针对每个例程来处理在例程执行期间转发消息的功能。
根据实施例的平台的实体可以是控制平面实体,并且包括服务管理器、工作管理器、存取管理器、至少一个任务管理器、编排器和服务数据存储库,其也可以被称为统一数据存储库。
平台的实体可以是计算平面实体,并且包括例程管理器和隐私路由器。
实施例的实体可以是逻辑实体,并且实体之间的链路可以指示实体用于彼此交互或通信的接口或连接。
在实施例中,控制平面实体可以被集成到同一网络实体中或由同一网络实体实现,所述网络实体例如平台控制器。例如,在一个实施例中,平台控制器可以实现或提供控制平面的一些功能,而在其他实施例中,平台控制器可以实现或提供控制平面的全部功能。在又一些实施例中,服务管理器和工作管理器可以被组合,以形成服务与工作管理器;并且例程管理器和隐私路由器可以被组合成协调器。
根据实施例,平台实体及其一些功能可以如下描述。
根据实施例,平台中的实体可以是进行操作以确定应用的服务功能的部署位置的编排器。此外,编排器可以为应用选择计算平面,包括计算平面的逻辑拓扑。编排器还可以确定在部署位置处和在逻辑拓扑的通信链路上需要哪些资源;并且编排器可以与资源管理器交互,在一些实施例中,资源管理器可以位于基础设施网络中,以相应地提供计算和联网资源,例如,无线电资源、传输资源、计算资源(例如,CPU周期、I/O存取、内存、存储)等。
在实施例中,存取管理器可以充当与设备的控制平面接口。存取管理器可以针对设备执行移动性管理,并且可以认证/授权设备连接到平台。
在实施例中,服务管理器可以针对应用执行注册、注册更新和注销。服务管理器还可以:认证并授权设备使用应用,充当与外部实体(例如,应用控制器)的控制平面接口,以及选择工作管理器来处理工作命令。
在实施例中,工作管理器可以根据请求来执行工作,该请求可以被称为工作命令。执行可以包括从服务管理器接收工作命令以及针对任务间依赖关系来协调工作的任务的执行。工作管理器也可以派发任务命令。这可以包括选择任务管理器并将任务命令发送给所选择的任务管理器。任务命令可以由工作管理器从服务管理器接收,也可以由工作管理器生成,并且可以与工作执行相关联。
根据实施例,平台中的实体可以是任务管理器,任务管理器可以执行任务和/或处理任务命令(该任务命令是执行任务的请求)。这可以包括从工作管理器接收任务命令,以及针对例程间依赖关系来协调作为任务执行的一部分的例程的执行。任务管理器也可以触发例程执行。这可以包括:针对例程执行分配执行ID,标识与例程相关联的至少一个例程管理器,以及通知例程管理器执行例程。这还可以包括针对例程执行来分配区分符(differentiator)。
根据实施例,平台中的实体可以是服务数据存储库,该服务数据存储库可以存储每个已注册计算服务的服务配置文件。服务配置文件也可以被称为服务数据。在一些实施例中,服务数据存储库还可以存储用户订阅数据。
在实施例中,例程管理器可以通过针对与例程相关联的同步要求触发例程客户端和例程服务器之间的数据通信,来提供例程同步。例程管理器还可以包括k-匿名(k-anonymity)配置,其可以包括当例程涉及设备例如UE时确保最小数量k的设备参与例程执行。本发明公开的设备包括终端设备,例如,UE、IoT设备、传感器、机器人、车辆、无人机。设备还包括被视为设备的网络实体,例如,服务器。在一些实施例中,当服务功能表示设备时,则服务功能的实例可以由设备实现,并且该设备被认为是服务功能的实例。在其他实施例中,当服务功能不表示设备时,服务功能是局部实体,并且可以在网络位置处(例如,在边缘节点中)被实例化/部署。边缘节点可以对应于边缘云。当服务功能在网络位置处被实例化/部署时,服务的实例在该网络位置处运行,例如,通过由该网络位置处的服务器(例如,应用服务器(application server,AS))托管并在该服务器上运行。
根据实施例,平台中的实体可以是能够提供信号和数据路由的隐私路由器。这可以包括在例程执行期间转发计算平面控制信号和数据业务。隐私路由器还可以包括在转发之前对传出数据业务执行代理重新加密,从而同时实现用户设备隐私性和数据机密性。
在实施例中,资源管理器可以根据在服务注册或服务注册更新期间例如经由接口/连接从编排器接收的资源要求,来提供计算和网络资源。利用经由接口/连接从任务管理器接收的信息,资源管理器还可以使资源的供给适配网络的动态特性,并且可以按每个任务的执行粒度满足端到端服务质量(quality-of-service,QoS)要求。
在实施例中,应用控制器(application controller,AC)可以负责管理计算服务。AC可以属于服务提供商(提供计算服务),也可以由服务提供商控制,并且本身可以表示服务提供商。AC可以经由接口或连接来与服务管理器连接以管理计算服务,例如,注册和注销服务,更新服务的注册,或触发与服务相关联的工作或任务的执行。
在实施例中,AC可以与应用服务器(application server,AS)集成,也可以是单独的实体(即与AS分离)。AS可以位于网络位置处,并且网络位置可以通过ID(例如,数据网络接入标识符(data network access identifier,DNAI))或网络地址(例如,IP地址)来标识。在服务功能在这样的网络位置处被部署或实例化的情况下,服务功能的实例(即,软件实现的副本)可以由该网络位置处的服务器(例如,应用服务器(application server,AS))托管(即,可以在服务器上运行)。网络位置可以指边缘云。
当在平台上注册计算服务时或在注册了计算服务之后,与该服务相关联的服务功能可以被部署在所选择的网络位置处,并且可以与针对该计算服务选择的计算平面连接。计算平面可以包括任何数量的隐私路由器和例程管理器。隐私路由器可以经由接口或连接互连,并且可以形成数据子平面。每个服务功能实例(本质上是AS在托管服务功能实例)可以经由接口或连接与计算平面中的隐私路由器连接。与例程相关联的两个服务功能实例(例如,例程客户端和例程服务器)可以通过其相关联的(已连接的)隐私路由器在例程执行期间进行通信。
在实施例中,设备可以通过参与计算服务的例程的执行(本质上是参与计算服务的工作的执行)来访问计算服务,所述例程与工作相关联。设备可以连接到与例程的例程服务器相关联的隐私路由器。设备可以经由接入网(access network,AN)节点连接到隐私路由器,该AN节点可以通过接口或连接与隐私路由器连接。AN节点可以是例如无线接入节点(例如,蜂窝基站、Wi-Fi接入点、卫星等)。AN节点的另一示例是有线接入节点。设备可以通过在例程执行期间经由隐私路由器作为例程客户端与例程服务器通信来参与例程执行。
在实施例中,AC可以向平台发送工作命令或任务命令。平台可以通过用信号通知适当的服务功能实例,并且通过针对任务间依赖关系和任务内依赖关系在服务功能实例之间转发后续数据业务,来触发对应的工作或任务的执行。在执行期间,源自服务功能实例的数据可以呈密文的形式,并且可以由平台转发,而不需要任何解密。在转发数据之前,平台可以对数据进行重新加密,使得预期的接收器(即,不同的服务功能实例)可以利用接收器的私有密钥来从其恢复原始数据(明文)。
下面描述根据实施例的平台如何使用任何数量的工作管理器、任务管理器和例程管理器及其组合来管理和协调工作、任务和例程的执行,其中,工作管理器、任务管理器和例程管理器各自可以是虚拟网络功能或非虚拟网络功能。
在一个实施例中,可以假设在某个时刻,计算服务已经被注册,因为与该计算服务相关联的服务功能已经被部署、已经针对该计算服务选择了计算平面并且服务功能实例已经被连接到计算平面。可以对计算平面中的每个例程管理器进行配置,并且对于与例程管理器相关联的每个例程,一些服务数据(即,计算服务的全部或部分服务配置文件)至少与例程相关,使得例程管理器可以相应地管理例程的执行。与例程相关的服务数据可以包括例程数据、部署数据和计算平面数据。这些数据在本发明的其他地方进行描述。在一些实施例中,可以由服务管理器根据来自AC的请求执行服务注册。在一些实施例中,可以由例如***管理员或由管理***预先配置服务注册。
图2示出了根据实施例的能够管理和协调工作、任务和例程的执行的平台的***架构。设备205可以通过连接T1 207连接到存取管理器215,并且设备205也可以通过连接T2209连接到隐私路由器230。存取管理器215可以通过连接T5a 212连接到例程管理器225。
隐私路由器230可以通过T4连接214连接到边缘云237中的应用服务器235。例程管理器可以通过相应的连接即T5a连接212、T5b连接217和T5c连接219来连接到存取管理器215、服务管理器240和至少一个任务管理器245。服务管理器240可以通过相应的连接即T7a连接222、T7b连接224和T7c连接227来连接到编排器250、存取管理器215和工作管理器255,以及通过连接T3 229连接到应用控制器260。资源管理器270可以通过相应的连接即T6a连接232、T6b连接234和T6c连接237来连接到编排器250、工作管理器255和任务管理器。
在一个实施例中,可以存在多个例程管理器225和多个隐私路由器230。在这种情况下,隐私路由器可以通过连接T8 242连接到另一隐私路由器。每个隐私路由器也可以连接到服务管理器T9a 244。此外,例程管理器225可以经由连接T9b 247连接到隐私路由器230。
服务配置文件可以包括标识计算服务的信息、服务元信息和服务可用性信息。标识计算服务的信息可以包括服务ID和服务名称中的一者或两者。服务元信息可以指示服务提供商,即提供计算服务的实体。该元信息还可以描述/指示与计算服务相关联的每个工作以及每个工作的功能和目的。服务可用性信息可以指示计算服务可用的时间或地点,包括日历时间形式的时间段和区域ID形式的位置或两者兼而有之。
服务配置文件还可以包括描述每个服务功能、每个工作、每个任务、每个例程、服务部署和计算平面的数据或信息,所有这些都与服务配置文件中标识的计算服务相关联。数据(或信息)可以分别被称为服务功能数据(信息)、工作数据(信息)、任务数据(信息)、例程数据(信息)、部署数据(信息)和计算平面数据(信息)。
图2还示出了根据实施例的服务数据存储库265。服务数据存储库265可以通过直接连接来连接到存取管理器215、服务管理器240、工作管理器255和任务管理器245。
服务功能数据可以与每个服务(“每服务”)相关联,并且可以包括与计算服务相关联的每个服务功能的信息。服务功能数据可以包括标识服务功能的信息(例如,功能ID)。如果信息如此指示,则服务功能可以被标识为表示设备。换句话说,在一些实施例中,服务功能可以表示设备,并且这些设备中的每个设备被视为服务功能的实例。在一些实施例中,标识服务功能的信息可以具有特定/保留格式或值,从而指示服务功能表示设备。
在一些实施例中,当服务功能不表示设备时,如标识服务功能的信息所指示的,服务功能数据可以包括服务功能的软件实现(例如,可执行文件、代码或图像),并且服务功能数据可以包括资源要求信息,例如,指示服务功能所需的计算资源(例如,CPU周期、内存、存储、I/O存取)的量的信息。服务功能数据还可以包括传出业务速率,例如,指示服务功能在一定时间单位内生成或发送的传出业务的量的信息。可替选地,该信息可以指示传出业务的量与(通过服务功能接收的)传入业务的量之间的关系。换句话说,传出业务的量可以是传入业务的量的函数。该信息还可以指定该关系或函数。例如,该信息可以指定传出业务的量和传入业务的量相等,或者传出业务的量等于传入业务的量乘以比率,该比率可以是大于或等于0的值。
在实施例中,工作数据可以与每个工作相关联,并且可以包括与计算服务相关联的每个工作的信息,包括:
-标识工作的信息(例如,工作ID);
-关于工作的元信息,该元信息可以包括描述工作的输入和输出的信息,例如:
-关于输入格式/结构和输出格式/结构的信息,以及
-关于如何提供输入和如何接收输出的信息;
-标识工作中所包括的任务的信息,例如,任务ID列表,其中,每个任务ID标识一个任务;以及
-关于工作内的任务间依赖关系(工作内依赖关系)的信息。
在实施例中,任务数据可以与每个任务相关联,并且包括与计算服务相关联的每个任务的信息,包括:
-标识任务的信息(例如,任务ID);
-标识任务中所包括的例程的信息,例如,例程ID列表,其中,每个例程ID标识一个例程;
-关于任务中的例程之间的例程间依赖关系(任务内依赖关系)的信息。该信息可以指示任务中可以并行(同时)或按指定顺序(按指定次序)执行的例程中的至少一些例程。在一些实施例中,该信息的缺失可以暗指任务的例程可以并行执行。
在实施例中,例程数据可以与每个例程相关联,并且可以包括与计算服务相关联的每个例程的信息。这样的信息可以包括:
-标识例程的信息(例如,例程ID),
-标识与例程相关联的服务功能的信息,
-设备信息,
-同步要求信息,以及
-安全措施信息。
标识与例程相关联的服务功能(包括例程服务器功能和例程客户端功能)的信息可以是功能ID。例程服务器功能可以处于在与相同计算服务相关联的服务功能数据中标识的那些例程服务器功能之中。例程客户端功能也可以处于在这些服务功能数据中标识的例程客户端功能之中。
设备信息可以是关于由与例程相关联的例程客户端功能表示的设备的信息。例程客户端功能可以在标识与例程相关联的服务功能的信息内被标识。设备信息可以与例程客户端功能关联。如果例程客户端功能不表示设备,则可能不需要设备信息。该信息(即,设备信息)中所标识的设备可以被允许参与/加入例程的执行。这些设备也可以被视为例程客户端功能(即,例程客户端)的实例。设备信息可以包括标识设备的信息,其可以包括设备ID或网络地址的列表,或设备组ID,或任何设备的指示。设备信息的缺失可以暗指使用任何设备或使用默认设备组(即,默认设备组中的设备)。设备信息还可以包括关于设备的潜在和可能位置(或位置区域)的信息。该设备信息可以包括区域ID列表,并且每个区域可以标识一个地理区。区域ID可以呈小区ID或接入节点ID的形式。
同步要求信息可以包括描述与例程相关联的同步要求的信息。该信息可以包括标识例程服务器功能的功能ID和标识例程客户端功能的功能ID。在实施例中,同步要求可以是可选的。
安全措施信息可以指示:在例程的执行期间,是否必须对正被转发的数据执行代理重新加密,即,在转发数据之前,是否对该数据进行重新加密。该信息还可以包括针对在标识与例程相关联的服务功能的信息中标识的每个服务功能的安全材料,例如,重新加密密钥。每个服务功能的安全材料可以用于在数据被转发给服务功能(服务功能的实例)之前对数据进行重新加密。
在实施例中,部署数据可以包括服务功能实例信息和服务功能实例关联信息。
服务功能实例信息可以包括针对在服务功能数据中标识的并且不表示设备的每个服务功能的信息。该信息可以通过例如包括实例ID列表来标识服务功能的实例。服务功能的实例可以对应于服务功能的部署位置;其ID(即,实例ID)可以包括标识服务功能的信息(例如,功能ID)和标识部署位置的信息(例如,位置ID、网络地址或名称)。
功能间连接性(连接)信息(也被称为服务功能实例关联信息)可以是针对例程的。例程与第一服务功能(例如,例程服务器功能)和第二服务功能(例如,例程客户端功能)相关联。第二服务功能可以表示设备,也可以不表示设备,而第一服务功能则不表示设备。功能间连接性(连接)指第一服务功能的实例和第二服务功能的实例之间的关联关系,并且暗指这两个服务功能实例将在例程执行期间相互通信/交互(并因此被连接)。功能间连接性(连接)信息指示功能间连接性/连接,即,对于例程,第二服务功能的哪个实例(由例如实例ID标识)与第一服务功能的哪个实例(由例如实例ID标识)相关联/相连接。服务功能实例处于在服务功能实例信息中标识的那些实例之中。
在实施例中,计算平面数据可以包括:
-隐私路由器信息,
-隐私路由器互连信息,以及
-例程管理器信息。
隐私路由器信息可以包括标识计算平面中的每个隐私路由器的信息,并且对于每个所标识的隐私路由器,隐私路由器信息还可以包括标识与隐私路由器相关联的每个服务功能实例的信息。服务功能实例是与计算服务相关联的服务功能的实例,并且在部署数据中的服务功能实例信息中被标识。
隐私路由器互连信息可以包括指示在隐私路由器信息中标识的隐私路由器之间的互连(即T8连接)的信息。每个互连都可以经由接口或连接实现。该信息可以包括与每个互连对应的隧道ID、连接ID或成对隧道端点ID中的任一者。当两个服务功能实例之间存在关联时,两个隐私路由器可以通过部署数据中的服务功能实例关联信息互连(即,之间具有互连),来分别与部署数据中指示的服务功能实例相关联。
例程管理器信息可以包括标识计算平面中的每个例程管理器的信息,例如,ID或网络地址,并且对于每个所标识的例程管理器,例程管理器信息还可以包括标识关联例程的信息(例如,例程ID)以及标识与每个例程相关联的每个服务功能实例的信息(例如,实例ID)。
图3示出了根据实施例的用于根据来自应用控制器的请求(命令)来处理工作命令或任务命令的命令发布过程。引起工作命令或任务命令响应345的步骤310至345可以构成独立过程并被称为命令发布过程。后续步骤350至375可以构成另一独立过程并被称为命令执行过程。当初始命令消息310是工作命令时,该过程也可以被称为工作执行过程。
在图3中,命令发布过程可以包括应用控制器260,该应用控制器进行操作以命令(请求)由服务管理器240执行工作命令或任务命令310。命令(请求)消息310可以用于新命令(请求),或用于更新现有命令(请求),并且可以包括关于命令(请求)的信息,例如:
-标识命令的信息(例如,命令ID),例如,在命令是现有命令的情况下;
-标识计算服务的信息,例如,服务ID;
-标识与命令相关联的工作的信息,例如,工作ID;
-标识与命令相关联的任务的信息,例如,在命令是任务命令的情况下,为任务ID。如果消息中存在这样的信息,则由该信息标识的任务可以被包括在由标识工作的信息标识的工作中。如果命令是工作命令,则该信息可以是可选的。
命令消息310(即,命令本身)可以指示至少一个执行条件,在该执行条件下,可以执行命令消息中标识的工作或任务。例如,条件可以指定可以何时执行工作或任务,例如,立即执行,在一个或更多个指定时间(例如,呈日/周/月/年的时间形式)处执行,或以某些事件为条件执行。在一些实施例中,当命令消息不明确指示这样的条件时,这可以暗指工作或任务应当被立即执行(即,在接收到命令消息时)。
服务管理器240可以根据命令消息310中的信息(例如,标识计算服务的信息和标识工作的信息)和/或本地配置(例如,工作管理器被预先配置成如本地配置中指示的那样被选择)来选择320工作管理器255管理工作。当选择工作管理器255时,服务管理器240可以考虑工作管理器的负荷。工作管理器的负荷可以通过工作管理器正管理的工作的数量来反映。
服务管理器240可以将命令消息310转发330给工作管理器255。如果命令是新命令,则服务管理器240可以生成或分配信息(例如,命令ID)以标识命令,并将信息发送330给工作管理器255(例如,作为命令消息的一部分)。
服务管理器240可以获得与命令消息310自身中标识的与工作相关联的工作数据,并且该工作数据可以被提供330给工作管理器255。工作数据可以包括标识工作中所包括的任务的信息以及关于任务间依赖关系的信息。为了获得工作数据,服务管理器240可以向服务数据存储库提供标识计算服务的信息和标识工作的信息。这两种信息都可以被包括在命令消息310中。然后,服务数据存储库可以将对应工作数据发送给服务管理器340。
可替选地,工作管理器255可以从服务数据存储库获得335与命令消息330中所标识的工作相关联的工作数据。为了获得工作数据335,服务管理器240可以向服务数据存储库提供标识计算服务的信息和标识工作的信息。然后,服务数据存储库可以将对应工作数据发送给工作管理器255。这两种信息都被包括在命令消息330(310)中。当工作管理器255在命令消息330(310)中接收到来自服务管理器240的工作数据的情况下,从服务数据存储库获得工作数据335是可选的。
工作管理器255可以针对先前接收到的命令330向服务管理器240做出响应340。工作管理器255可以在发送给340服务管理器的响应中包括标识命令的信息。
服务管理器240也可以针对接收到的命令310向AC 260做出响应345。当向AC做出响应345时,服务管理器240可以向AC发送标识命令的信息,该信息可以是最初从AC接收310的或者由服务管理器240生成。
在一个实施例中,执行命令可以被如下处理。执行条件可以在命令消息330(310)中被指示或指定,并且如果命令消息指示命令应当被立即执行,则在接收到命令消息时,就可以认为满足执行条件。
工作管理器255可以验证执行条件,并确定是否满足或达到该条件。因此,可以由工作管理器255来解决执行条件。工作管理器255还可以由于执行条件被满足而生成并分配区分符(例如,ID),以标识命令的执行。如果执行条件被多次满足,则每次可以生成不同的区分符。每当满足执行条件时,就可以触发350命令的不同执行,如在其他步骤中所描述的那样。区分符可以标识命令的执行与命令的其他执行。在一些实施例中,当命令是工作命令时,区分符标识工作的执行。
工作管理器255可以通过经由服务管理器240向AC 260发送通知消息355来通知AC命令例如330中的命令将被执行。可以将通知消息发送给服务管理器240,服务管理器240可以将通知消息转发360给AC 260。通知消息可以包括标识命令的命令ID,也可以包括标识命令的执行的区分符。
执行通知355(360)可以是早期通知,因为该执行通知可以在命令被执行之前发送。在一些实施例中,只有在AC 260已经请求或订阅了早期通知360(355)的情况下,工作管理器255才能执行该步骤。请求或订阅可以包括在工作数据中,或者包括在命令消息310中。如果请求或订阅包括在工作数据中,则关于订阅的信息可以是服务配置文件的一部分并被存储在服务数据存储库中。
在一个实施例中,工作管理器255可以在发送执行通知355之后执行命令365。
在一个实施例中,执行通知可以是逾期通知370(375),因为该执行通知可以在命令被执行之后而不是之前被发送。在一些实施例中,只有在AC 260已经请求或订阅了逾期通知375的情况下,工作管理器255才能执行该步骤。请求或订阅可以包括在工作数据中,或者包括在命令消息310中。如果请求或订阅包括在工作数据中,则关于订阅的信息可以是服务配置文件的一部分并被存储在服务数据存储库265中。
如果初始命令310是任务命令,则工作管理器255可以选择任务管理器来管理任务,并触发任务管理器经由利用图4描述的任务执行过程来执行任务命令310中标识的任务。任务命令310可以包括与将包括在工作命令中的信息类似的信息,并且当触发任务管理器执行任务时,工作管理器255可以将该信息包括在发送给任务管理器的任务请求410中。
如果初始命令310是工作命令,则工作管理器255可以根据工作数据来识别在工作命令中标识的工作中所包括的任务。对于每个任务,工作管理器255可以选择任务管理器来管理任务,并触发任务管理器经由利用图4描述的任务执行过程来执行任务。当触发任务管理器执行任务时,工作管理器向任务管理器发送任务请求410。在一些实施例中,工作管理器针对包括工作的任务的所有这些任务选择相同的任务管理器。任务执行过程如图4所示。
如果工作包括多个任务,则工作管理器255可以针对如工作数据中所示的任务间依赖关系信息来触发多个任务的执行。工作管理器255可以按顺序触发相互依赖的任务的执行。也就是说,工作管理器255可以在第二任务被执行之后触发依赖于第二任务(如任务间依赖关系信息所指示的)的第一任务的执行。在一些实施例中,工作管理器255可以如任务间依赖关系信息中所指示的触发没有相互依赖关系的任务的并行(例如,同时)执行。
当选择任务管理器来管理任务时,工作管理器255可以使用命令消息330中或工作数据335中的信息(例如,标识计算服务的信息、标识工作的信息和标识任务的信息)来选择任务管理器。工作管理器255可以根据本地配置来选择任务管理器,并且任务管理器可以被预先配置成如本地配置中指示的那样被选择。当选择任务管理器时,工作管理器255可以考虑任务管理器的负荷。在一些实施例中,任务管理器的负荷可以通过任务管理器管理的任务的数量来反映。
图4示出了根据实施例的任务执行过程,即执行任务的过程。在任务所属的工作正被执行或某些执行条件被满足时,可以由工作管理器255发起该过程。在该过程中,工作管理器255具有与工作相关联的工作数据。工作数据可以由工作管理器从服务数据存储库265或从服务管理器240接收。
工作管理器255可以向所选择的任务管理器245发送任务请求410,以触发任务的执行。任务请求410可以被称为任务命令。任务管理器245可以对工作管理器做出响应415,从而指示接收到请求。可替选地,工作管理器可以向任务管理器发送任务更新请求以触发对任务的现有执行的更新,并且任务管理器可以通过指示接收到任务更新请求来对工作管理器做出响应。发送给任务管理器245的请求410可以包括以下信息:标识任务的信息(例如,任务ID)、标识任务所属的工作的信息(例如,工作ID)以及标识与任务相关联的计算服务的信息(例如,服务ID)。
请求410还可以包括标识任务请求与之相关联的命令(从AC 260发送310的工作命令或任务命令)的信息(例如,命令ID)。任务执行可以是命令执行的一部分,并且命令可以由工作管理器255经由服务管理器240从AC 260接收。
在一些实施例中,请求410可以包括区分符,该区分符是区分命令执行(即,任务执行所属的执行)与相同命令的其他执行的信息。区分符可以由工作管理器255生成,并标识任务所属的工作的执行。
请求410可以指示与任务的一个或多个例程相关联的一些设备加入/参与或离开任务的执行。在这种情况下,请求410包括以下中任一项:标识一个或多个例程的信息、标识设备的信息以及设备是加入/参与还是离开任务的执行的指示。该信息可以统称为设备参与信息。
设备参与信息中指示的设备可以包括已经经由服务请求过程请求访问与任务相关联的工作的设备。在服务请求过程中,设备可以向服务管理器发送服务请求。服务请求可以包括标识设备的信息、标识计算服务的信息、标识工作的信息等。服务管理器可以授权该请求,并通知工作管理器255该设备试图访问该工作。然后,工作管理器255可以根据或基于与工作相关联的工作数据来标识任务和一个或多个例程,并且将标识设备的信息和标识一个或多个例程的信息包括在发送给任务管理器245的请求410中。
任务管理器245可以获得420与任务相关联的任务数据、与任务的例程相关联的例程数据以及与任务相关的计算平面数据。该步骤是可选的,特别是在任务管理器已经例如在先前的步骤中获得了这些数据或者已经预先配置有这些数据的情况下。
在一些实施例中,与任务相关的计算平面数据可以包括与计算服务相关联的计算平面数据,任务与计算服务相关联。在一些实施例中,与任务相关的计算平面数据可以包括与计算服务相关联的计算平面数据的子集(任务与计算服务相关联),并且仅与任务的例程相关。
任务管理器245可以从服务数据存储库265获得420任务数据、例程数据和/或计算平面数据。为此,任务管理器245可以向服务数据存储库265提供标识计算服务的信息和标识任务的信息,服务数据存储库265可以向任务管理器245发送相应的任务数据、例程数据和/或计算平面数据。
在一些实施例中,任务数据、例程数据和/或计算平面数据可以被包括在从工作管理器255发送的任务请求410中。在这种情况下,为了将这些数据发送给任务管理器,工作管理器245可以从服务数据存储库265获得任务数据、例程数据和/或计算平面数据。为此,工作管理器255可以向服务数据存储库265提供标识计算服务的信息和标识任务的信息,并且服务数据存储库265可以向工作管理器255发送相应的任务数据、例程数据和/或计算平面数据。
任务数据可以指示任务内依赖关系,即例程间依赖关系。任务管理器245可以针对任务内依赖关系触发例程的执行。也就是说,对于如任务数据中所指示的可以并行执行的例程,任务管理器245可以触发并行地执行这些例程,对于如任务数据中所指示的应该按顺序执行的例程,任务管理器245可以按照任务数据中指定的执行顺序触发按顺序(一个接一个地)执行例程。
任务管理器245可以根据任务数据来识别任务中包括的例程。任务管理器245还可以根据计算平面数据来识别与这些例程相关联的例程管理器425。每个例程可以与一个或更多个例程管理器425相关联。任务管理器245可以通过执行以下步骤来触发每个例程的执行。
如果例程与设备信息相关联,如例程数据中所指示的那样,则任务管理器245可以选择设备425来参与/加入例程的执行,并将所选择的设备与和例程相关联的例程管理器相关联。与例程相关联的例程管理器可以在计算平面数据中指示。当选择设备425时,任务管理器245可以选择至少k个设备,以确保设备之间的k匿名,其中,k的值可以在例程数据中、或在任务数据中、或在本地配置中指示。在一些实施例中,当将所选择的设备245与例程管理器相关联时,为了进一步确保k匿名,任务管理器245可以将设备与最多一个例程管理器相关联,并且将至少k个不同的设备与例程管理器相关联。如果例程与设备信息没有关联,则该步骤是可选的。任务管理器245可以根据例程数据中包括的与例程相关联的设备信息来选择设备425,例如通过从设备信息中指示的设备中选择设备来选择设备425。在一些实施例中,任务管理器245仅选择处于注册状态的设备。设备状态(例如,是否注册、共识/协议)被存储在网络功能中,网络功能可以是服务数据存储库265或不同的网络功能。任务管理器245可以与该网络功能交互,以标识处于注册状态的设备。在一些实施例中,任务管理器245还仅选择已经例如通过服务请求过程被请求、同意或准许加入包括例程所属(即,与之相关联)的任务的工作的设备,如请求410中的设备参与信息中所指示的那些设备。也就是说,任务管理器还将仅从设备参与信息中指示的设备中选择设备。请求410可以是任务请求或任务更新请求。在一些实施例中,请求410是提供经更新的设备参与信息的任务更新请求,并且任务管理器245相应地重新选择设备(例如,包括一个或多个附加设备)425来参与/加入例程的执行。如果未被选择的设备先前参与了例程的执行,则任务管理器可以将这些设备从例程的执行中移除。
如果多个例程管理器与例程相关联,则任务管理器245可以根据设备位置、例程管理器位置和/或例程管理器服务区域,将所选择的设备与例程管理器425中的一个例程管理器相关联。例如,所选择的例程管理器可以是最接近设备和/或其服务区域覆盖设备位置的例程管理器。在确定关联时,也可以考虑例程管理器的加载,以便在许多例程管理器之间平衡工作负荷。
任务管理器245可以通过向每个例程管理器发送通知来触发与每个例程管理器425的例程执行过程435。如果例程管理器430与设备425相关联,则通知可以包括关于设备的信息,并且在一些实施例中,还可以指示在例程执行中添加设备。关于设备的信息可以包括设备ID、设备ID列表和/或设备组ID。在一些实施例中,通知指示从例程执行中删除一个或多个设备,并且包括关于该一个或多个设备的信息(例如,设备ID、设备ID列表和/或设备组ID)。在与一个或多个例程管理器中的每个例程管理器的例程执行过程完成之后,例程执行结束,或者换句话说,例程被视为已执行。例程执行过程435在图5中示出,下文将进一步描述。
在执行了任务的所有例程之后,任务管理器245可以通过向工作管理器255发送通知,来向工作管理器255通知440任务的完成(即,任务执行的完成)。发送给工作管理器255的通知可以包括标识命令(例如,命令310,该命令可以是工作命令)的信息和标识命令的执行的区分符。任务执行与命令执行相关联或者是命令执行的一部分。通知还可以包括标识任务的信息和标识计算服务的信息。在一些实施例中,任务管理器245不对工作管理器做出响应415,并且通知440可以充当对任务请求415的响应。
在实施例中,例程可以与例程服务器功能相关联并且与例程客户端功能相关联。例程服务器功能不用于表示设备,而例程客户端功能可以表示设备,也可以不表示设备。例程服务器功能的实例可以被称为例程服务器。例程客户端功能的实例可以被称为例程客户端。当例程客户端功能表示设备时,该例程客户端功能可以与由例程的例程客户端功能表示的设备的信息相关联。在这种情况下,设备的信息(即,设备信息)与例程相关联,并且是本文所述的例程数据的一部分,并且由例程客户端功能表示的设备可以被视为例程客户端功能的实例(即,例程客户端)。
例程服务器可以与一个或更多个例程客户端相关联。这种关联是针对例程的,并且可以在与计算服务相关联的部署数据中指示,例程与计算服务相关联。例程的执行包括在例程服务器与一个或更多个例程客户端之间的数据通信。例程可以与一个或更多个例程管理器相关联,如与计算服务相关联的计算平面数据中所指示的。一个或更多个例程管理器中的一个例程管理器与例程服务器相关联并且与一个或更多个例程客户端相关联。在如图5所示的例程执行期间,该例程管理器可以通过协调例程服务器与一个或更多个例程客户端之间的数据通信来管理例程。
图5示出了根据实施例的执行例程的过程(即,例程执行过程)。在例程执行过程中,任务管理器245可以与例程所属的任务相关联。在一个实施例中,例程执行可以在任务管理器245获得以下各项之后开始:
-与任务相关联的任务数据,
-与任务的例程相关联的例程数据,
-与至少两个包括与之相关联的例程的服务功能相关的服务功能数据,
-与包括与之相关联的例程的服务功能相关的部署数据,以及
-与任务相关的计算平面数据。
上述数据可以由任务管理器245从服务数据存储库或从工作管理器获得/接收。利用该数据,任务管理器245可以知道哪个(哪些)例程管理器与例程对应。任务管理器245可以与每个例程管理器执行图5中的例程执行过程。
任务管理器245可以通过向例程管理器发送通知505,来通知例程管理器430执行例程(换句话说,开始例程的执行)。通知可以包括以下任一项:标识计算服务的信息(例如,服务ID)、标识例程的信息(例如,例程ID)以及同步要求信息。任务管理器245可以从与例程相关联的例程数据中获得同步要求信息。通知消息505还可以包括标识与该过程相关联的例程的执行(即,例程执行)的信息(例如,ID)。该信息可以被称为“执行标识符”、“执行ID”或简单地称为“exe ID”。exe ID可以由任务管理器245分配/生成。在一些实施例中,标识例程的信息被包括在exe ID中。通知消息505还可以包括关于与例程管理器相关联的设备的信息,例如,在例程客户端功能表示设备的情况下。设备可以是与用于例程的例程管理器相关联的例程客户端425。该设备信息可以在任务管理器245选择设备425来参与/加入例程的执行并将所选择的设备与和例程相关联的例程管理器相关联时确定。
然后,例程管理器430可以向任务管理器245发送确认510,从而指示通知消息的接收者。
在一个实施例中,例程服务器功能520的一个或更多个实例,即服务功能实例,或简称为“例程服务器”,可以与例程管理器430相关联,例程服务器功能与例程相关联。例程管理器430可以标识这些例程服务器520,并通过与每个例程服务器520执行邀请过程525,来邀请525每个例程服务器520进入例程执行(即,加入/参与或促进例程执行)。邀请过程525在图6中示出,下文将进一步描述。
在一个实施例中,例程客户端功能515的一个或更多个实例(即,“例程客户端”)可以与例程管理器430相关联,例程客户端功能与例程相关联。例程管理器430可以标识这些例程客户端515,并通过与每个例程客户端515执行邀请过程530,来邀请每个例程客户端515进入例程执行(即,加入/参与或促进例程执行)。邀请过程530在图6中示出,下文将进一步描述。
例程管理器430可以通过对例程服务器功能520的每个实例(例程服务器)执行以下步骤来执行例程。
在被邀请530的例程客户端功能515的实例(例程客户端)之中,例程管理器430还可以标识与例程服务器520相关联的每个例程客户端515。例程管理器430可以根据部署数据进行标识。例程管理器430可以通过与每个例程客户端515执行通信过程535,来触发例程服务器520和与例程服务器520相关联的每个例程客户端515之间的数据通信535。图7示出了这样的通信过程535。
如果在任务管理器245给例程管理器430的初始通知505中包括同步要求信息,并且同步要求信息指示顺序通信,则例程管理器430可以按顺序(即,顺序地或一次一个地)针对每个例程客户端515执行通信过程535。而如果同步要求信息指示并行通信,则例程管理器430可以并行地针对每个例程客户端515执行通信过程535。
如果任务管理器245给例程管理器430的初始通知505不包括这样的同步要求信息,则例程管理器430可以根据例程管理器430的确定或根据本地配置顺序地或并行地针对每个例程客户端515执行通信过程535。
在顺序通信的情况下,当例程管理器430正在针对第一例程客户端515执行通信过程535时,该例程管理器不必针对第二例程客户端515启动通信过程535,直至针对第一例程客户端的通信过程535结束。来自第一例程客户端515和/或来自例程服务器520的通知可以指示这样的完成,并且图7包括这样的完成通知。
在例程管理器430已经针对每个例程客户端515执行了通信过程535之后,例程管理器430可以通知540例程服务器520。该通知540可以暗示没有附加例程客户端515将加入例程执行。通知540可以包括标识例程执行的exe ID。
例程服务器520可以通过向例程管理器430发送确认(acknowledgement,ACK)消息545来对例程管理器430做出响应。ACK消息可以包括exe ID。
ACK消息545还可以指示继续或重新启动例程执行,例如,通过包括继续进行的指示或通过省略例程执行已结束的指示来进行指示。
ACK消息545还可以指示例程执行已结束,例如,通过包括例程执行已结束的指示或通过省略例程执行已结束的指示来进行指示。
在一些实施例中,继续进行的指示和例程执行已结束的指示可以被包括在ACK消息545的相同信息元素中。这些指示可以被实现为信息元素的两个不同值。在一些实施例中,这两个指示元素不同时出现在消息中。
如果ACK消息545指示继续进行或重新启动例程执行,则可以触发另一数据通信过程535,并且随后是另一通知540和另一确认545,并且这可以被重复进行550。
通过接收确认545,例程管理器430可以知道例程服务器520处的例程执行已完成。在知道在每个例程服务器520处完成了例程执行之后,例程管理器430可以通过向任务管理器245发送通知555来通知任务管理器245例程执行的完成。该通知可以包括以下任何一项:标识计算服务的信息、标识例程的信息和exe ID。
图6示出了根据实施例的用于邀请服务功能的实例加入例程的执行的过程。作为初始步骤,根据实施例,与例程相关联的例程管理器430可以邀请服务功能的实例(即,服务功能实例)610加入例程的执行(即,加入/参与/促进例程的执行)。例程可以与计算服务相关联,并且服务功能实例610可以是与例程相关联的服务功能(例如,“服务功能2”)的实例。第一隐私路由器620可以与和例程相关联的另一服务功能(例如,“服务功能1”)的实例相关联。这两个服务功能实例,即服务功能1和服务功能2,可以针对例程彼此相关联。
在涉及服务功能1和服务功能2的实施例中,当服务功能2不表示设备时,网络实体625可以是与用于例程的服务功能实例610相关联的隐私路由器。在这种情况下,第一隐私路由器620可以经由用于例程的连接T8 242与网络实体耦接。
在涉及服务功能1和服务功能2的实施例中,当服务功能2确实表示设备时,服务功能实例610是设备,并且网络实体625是服务于该设备的接入节点。在这种情况下,第一隐私路由器620可以经由用于例程的接口T2 209与网络实体625耦接。
在图6的过程中,例程管理器430可以通过向服务功能实例610发送邀请消息605来邀请605服务功能实例610加入(即,参与或促进)例程的执行。邀请消息605可以经由网络实体625发送。邀请消息605可以包括以下中任何一项:标识计算服务的信息、标识例程的信息、标识例程执行的exe ID。
在一个实施例中,无论服务功能2是表示设备还是不表示设备,都可以利用隐私路由器(例如,隐私路由器620、710、730、230)来促进通过例程管理器430和服务功能实例610的实例来发送消息。
在一些实施例中,在发送邀请消息605时,例程管理器430可以将邀请消息605包括在外部消息中,并且将该外部消息发送给网络实体625。在从例程管理器430接收到外部消息之后,网络实体625可以从外部消息中检索邀请消息605,并将邀请消息发送630给服务功能实例610。
在服务功能2不表示设备的情况下,外部消息可以包括与第一隐私路由器620相关的T8路由信息。T8路由信息可以描述如何通过连接T8 242与第一隐私路由器620通信。网络实体625可以使用T8路由信息将从服务功能实例610接收的数据或信号发送给第一隐私路由器620。
在服务功能2确实表示设备的情况下,外部消息可以包括与第一隐私路由器620相关的T2路由信息。T2路由信息可以描述如何通过T2连接209与第一隐私路由器620通信。网络可以使用T2路由信息将从服务功能实例610接收的数据/信号发送给第一隐私路由器620。在这种情况下,可以经由服务于服务功能实例610(即,设备)的存取管理器将外部消息发送给网络实体625。
上述T2和T8路由信息可以包括与第一隐私路由器620相关的以下任何信息:网络地址、端口号、协议类型、隧道端点ID、隧道ID等。在一些实施例中,T2和T8路由信息可以由第一隐私路由器620生成,并由第一隐私路由器在单独的过程中提供给例程管理器430。
服务功能实例610可以响应于邀请消息630而发送接受消息635。接受消息635可以指示服务功能实例610接受邀请,即同意加入(即,参与或促进)例程执行。接受消息635可以被发送给网络实体625,并且该网络实体可以向例程管理器430发送/转发640该接受消息。
例如,当服务功能实例610是设备时,接受消息635(640)还可以包括用于执行代理重新加密的安全材料,例如,重新加密密钥。在向服务功能实例610发送或转发旨在用于服务功能实例610的数据之前,安全材料可以用于对该数据进行重新加密。如果例程管理器430利用其初始邀请605指示要在数据通信期间执行代理重新加密,则服务功能实例610可以将安全材料包括在接受消息635中。
在一些实施例中,网络实体625可以通过将接受消息640包括在外部消息中并将外部消息发送给例程管理器430来发送/转发接受消息640。在接收到外部消息之后,例程管理器430可以从该外部消息中检索邀请消息。
在服务功能2不表示设备的情况下:网络实体625可以将与其自身相关的T8路由信息包括在外部消息中。T8路由信息可以描述如何通过连接T8 242与网络实体625通信。
在服务功能2确实表示设备的情况下,网络实体625可以将与其自身相关的T2路由信息包括在外部消息中。T2路由信息可以描述如何通过T2连接209与网络实体625通信。在这种情况下,可以经由服务于服务功能实例(即,设备)610的存取管理器将外部消息发送给例程管理器。该存取管理器可以与例程管理器430的初始邀请605所涉及的存取管理器相同。
上述T2和T8路由信息可以包括与网络实体相关的以下任何信息:网络地址、端口号、协议类型、隧道端点ID、隧道ID等。在一些实施例中,T2和T8路由信息可以由网络实体625生成。
例程管理器430可以通过向第一隐私路由器620发送配置更新消息645,来将利用接受消息640接收的T2和T8路由信息提供给第一隐私路由器620。配置更新消息645可以包括T2和T8路由信息。随后,第一隐私路由器620可以使用T2和T8路由信息来将从服务功能1的关联实例接收的数据/信号发送到网络实体625,网络实体625然后可以将该数据/信号发送到服务功能实例610。如果接受消息635和640包括安全材料,则在一些实施例中,例程管理器将该安全材料包括在配置更新消息645中。随后,第一隐私路由器620可以在向服务功能实例610发送或转发旨在用于服务功能实例610的数据之前,使用安全材料来执行数据重新加密,即对该数据进行重新加密。
第一隐私路由器620可以通过发送配置更新响应消息650来对例程管理器430做出响应。响应消息650可以确认接收到配置更新消息645。
在一个实施例中,可以在例程客户端和例程服务器之间触发数据通信。例程服务器可以与被称为隐私路由器1的隐私路由器相关联,并经由T4接口/连接214与隐私路由器1连接。例程客户端(与例程服务器相关联的一个或多个例程客户端中的一个例程客户端)可以与被称为隐私路由器2的隐私路由器相关联,并经由T2连接209和T4接口/连接214中的任一者与隐私路由器2连接。例如,在例程客户端是设备的情况下,隐私路由器1和隐私路由器2可以是同一网络实体。当隐私路由器1和隐私路由器2是不同的网络实体时,隐私路由器1和隐私路由器2可以相关联,并经由T8接口/连接242彼此连接。在例程的执行期间,例程服务器和例程客户端可以如图7所示在例程管理器的触发下经由隐私路由器1和隐私路由器2进行通信(以交换数据)。例程与计算服务相关联。
图7示出了根据实施例的例程服务器和例程客户端如何能够在例程管理器的触发下进行通信以交换数据。
在图7中,例程管理器430可以通知例程服务器520开始与例程的执行相关联的数据通信。该通知可以通过T9b接口247发送给隐私路由器1 710,该隐私路由器然后可以通过T4接口214将该通知转发715给例程服务器520。通知705(715)可以包括标识计算服务的信息和标识例程的信息。通知还可以包括exe ID,该exe ID可以标识例程的执行(即,例程执行)并且可以由例程管理器430生成/分配。在该步骤中,例程管理器430可以向隐私路由器1710提供/发送业务处理指令/规则。业务处理指令可以指示如何处理和转发与例程执行相关的数据业务。业务处理指令可以与通知705一起被发送到隐私路由器1710。隐私路由器1710可以如下文进一步描述的根据业务处理指令来处理和转发与例程执行相关的数据业务。
例程管理器430可以通知720例程客户端725开始数据通信。通知720可以通过T9b接口247被发送到隐私路由器2 730,该隐私路由器然后可以通过T2接口209或T4接口214将该通知转发735给例程客户端725。通知720(735)可以包括标识计算服务的信息和标识例程的信息。通知720(735)还可以包括exe ID。
在该步骤中,例程管理器430可以向隐私路由器2 730提供/发送业务处理指令/规则。业务处理指令可以指示如何处理和转发与例程执行相关的数据业务。
业务处理指令可以与通知720一起被发送到隐私路由器2 730。隐私路由器2 730可以如下文进一步描述的根据业务处理指令来处理和转发与例程执行相关的数据业务。
例程服务器520和例程客户端725可以经由其相关联的隐私路由器(即隐私路由器1 710和隐私路由器2 730)相互通信。数据通信740可以由例程客户端725或例程服务器520发起。在该步骤中,隐私路由器1 710和隐私路由器2 730可以根据在上一步骤中从例程管理器430接收的业务处理指令来如以下所描述的在例程服务器520与例程客户端725之间处理并转发数据,具体地,隐私路由器1和隐私路由器2的处理可以包括对来自例程的通信数据执行代理重新加密755。
在一些实施例中,例程服务器520和隐私路由器1 710之间的T4连接214、隐私路由器1 710和隐私路由器2 730之间的T8连接242以及隐私路由器2 730和例程客户端725之间的T2连接209都可以是基于隧道的。这些连接214、242和209可以专用于例程执行。由隐私路由器1 710接收的业务处理指令(连同初始通知705)可以指示T4连接214和T8连接242之间的映射。隐私路由器1 710可以根据该映射,将从T4连接214接收的数据转发给T8连接242,并且将从T8连接242接收的数据转发给T4连接214。由隐私路由器2 730较早接收的业务处理指令(连同通知720)可以指示T2连接209和T8连接242之间的映射。根据该映射,隐私路由器2 730可以将从T2连接209接收的数据转发给T8连接242,并将从T8连接242接收的数据转发给T2连接209。
在数据通信740期间,在一些实施例中,隐私路由器1 710可以用于:在转发数据时,对通信数据755执行代理重新加密(即,重新加密)并发送经重新加密的数据。该数据可以与原始数据相关联。隐私路由器1 710可以使用与预期接收器(例程客户端725或例程服务器520)相关的重新加密密钥来重新加密数据,使得预期接收器可以对经重新加密的数据进行解密以获得原始数据。重新加密密钥可以在隐私路由器1 710中被预先配置,或者作为业务处理指令的一部分从例程管理器430接收。隐私路由器1 710可以被如前所述地配置,以用于将数据传输到例程服务器520(该例程服务器与隐私路由器1 710相关联)。隐私路由器2 730可以被同样地配置,但是用于将数据传输到例程客户端725,例程客户端725与隐私路由器2 730相关联。因此,在一个实施例中,隐私路由器1 710和隐私路由器2 730可以各自在不同方向上对来自例程的通信数据(即,经由例程传送的数据)执行代理重新加密755。换句话说,隐私路由器1 710对朝向例程客户端725的通信数据进行重新加密,而隐私路由器2 730对朝向例程服务器520的通信数据进行重新加密。然后,隐私路由器1 710和隐私路由器2 730各自将经重新加密的数据发送给另一个隐私路由器(即,隐私路由器1 710发送给隐私路由器2 730,并且反之亦然)。在一些实施例中,通信数据仅由隐私路由器1 710或隐私路由器2 730重新加密一次。
当与例程客户端的数据通信结束时,例程服务器520可以向例程管理器430发送关于数据通信740完成的通知745。在一个实施例中,完成通知745可以被发送到隐私路由器1710,隐私路由器1 710然后可以将该完成通知转发747给例程管理器430。完成通知745可以包括以下任何一项:标识计算服务的信息、标识例程的信息和标识例程执行的exe ID。在一个实施例中,完成通知745可以是可选的。
例如,当与例程服务器的数据通信740结束时,例程客户端725可以向例程管理器430发送关于数据通信740完成的通知750。该完成通知750可以包括以下任何一项:标识计算服务的信息、标识例程的信息和标识例程执行的exe ID。在一个实施例中,该通知745可以是可选的。
在一个实施例中,例程客户端可以与例程服务器通信。在一些实施例中,取决于实施例,多个例程客户端可以并行地或顺序地与同一例程服务器通信。首先,例程管理器可以邀请例程服务器和每个例程客户端。然后,例程管理器可以触发例程服务器和一个例程客户端之间的通信,并且然后,取决于同步要求是分别要求并行通信还是顺序通信,例程管理器可以在第一通信之前或之后触发例程服务器和另一个例程客户端之间的通信。
图8示出了根据实施例的如何顺序地或并行地触发两个通信,一个通信在服务器和第一例程客户端之间,另一个通信在服务器和第二例程客户端之间。例程管理器430可以经由图6的过程邀请805例程服务器520。例程管理器430还可以经由图6的过程邀请810第一例程客户端815。此外,例程管理器430还可以经由另外使用图6中的过程来邀请820第二例程客户端825。在邀请了例程服务器520、第一例程客户端815和第二例程客户端825之后,例程管理器430可以触发例程服务器520和第一例程客户端815之间的数据通信825。例程管理器430还可以触发例程服务器520和第二例程客户端830之间的数据通信830。取决于同步要求,可以在例程服务器和第一例程客户端之间的通信完成之前或之后,触发例程服务器和第二例程客户端之间的通信。
在一个实施例中,一旦如图8所示触发了例程服务器520和例程客户端之间的通信信道,例程服务器520和例程客户端就可以交换数据,即传送数据。在一个实施例中,该通信可以通过与第一例程客户端815相关联的隐私路由器、与第二例程客户端830相关联的隐私路由器和与例程服务器520相关联的隐私路由器而发生。在另一个实施例中,与第一例程客户端815相关联的隐私路由器和与第二例程客户端830相关联的隐私路由器可以被组合或者可以是同一实体。在另一个实施例中,与第一例程客户端815相关联的隐私路由器和与第二例程客户端830相关联的隐私路由器中的任何隐私路由器都可以和与例程服务器520相关联的隐私路由器组合。在实施例中,隐私路由器(例如,与第一例程客户端815相关联的隐私路由器、与第二例程客户端830相关联的隐私路由器和与例程服务器520相关联的隐私路由器中的任何隐私路由器)可以对通信数据进行重新加密,但这也可以是可选的。
图9示出了一个服务功能的实例和另一服务功能的实例之间的数据通信信道。在一个实施例中,一个服务功能实例905可以是例程客户端,另一服务功能实例910可以是例程服务器。从服务功能实例905发送的数据915(即,第一数据)可以通过第一隐私路由器920传送至另一服务功能实例910,并且在一些实施例中,数据还可以通过第二隐私路由器925。在一些实施例中,这两个隐私路由器可以组合成一个隐私路由器。在一些实施例中,例如,在数据915是密文(即,经过加密)的情况下,可以在不解密的情况下对数据进行重新加密930;在其他实施例中,无论数据是否是密文,都不对数据进行重新加密。在通过隐私路由器中继并可选地进行重新加密的情况下,数据可以被称为第二数据935。
在一个实施例中,一个服务功能的实例可以是例程服务器,另一服务功能的实例可以是第一例程客户端,而又一服务功能的实例可以是第二例程客户端。一旦已经触发了通信,这种布置可以使得例程服务器能够按照图8根据同步要求顺序地或并行地与第一例程客户端和第二例程客户端通信。
图10示出了根据实施例的例程服务器和两个例程客户端之间如何顺序地或并行地进行通信。一旦针对第一例程客户端815和第二例程客户端825利用例程服务器520完成了图8的邀请过程,则在例程服务器520和第一例程客户端815之间以及在例程服务器520和第二例程客户端825之间就可以进行数据通信740。这两个通信可以是并行的,也可以是顺序的,这取决于同步要求。可以利用与第一例程客户端815相关联的第一隐私路由器1005、与第二例程客户端825相关联的第二隐私路由器1010、与例程服务器520相关联的第三隐私路由器1015中的一个或更多个来对数据通信的数据进行加密。在一些实施例中,第一隐私路由器1005和第三隐私路由器1015可以被组合成一个隐私路由器。在其他实施例中,第二隐私路由器1010和第三隐私路由器1015可以被组合成一个隐私路由器。在一些实施例中,可以存在多个例程客户端和多个相应的隐私路由器或经组合的隐私路由器。
***设计的实施例可以包括数据机密性、基础设施网络安全性的特征。
在一个实施例中,由于服务功能的部署位置未泄露给应用提供商或应用层并且各计算方能够在互不相识的情况下进行通信,因此可以提高基础设施网络安全性。
在一个实施例中,计算管理可以通过至少一个工作管理器、至少一个任务管理器、至少一个例程管理器、至少一个服务功能实例(包括设备)和至少一个应用控制器之间的交互来完成。在计算管理期间,可以考虑任务间依赖关系和任务内依赖关系。
在一个实施例中,数据可以作为密文离开源,并由平台(即,平台的隐私路由器)重新加密,而不需要解密。重新加密的数据可以被转发给目的地,然后,该目的地可以恢复原始数据。在这样的过程中,数据对平台保持不可读,从而实现数据的机密性。
在一个实施例中,***架构可以包括具有与任务管理器通信的功能的例程管理器,而任务管理器又可以与工作管理器通信,并为例程管理器提供执行例程的指令。可选地,工作管理器可以与服务管理器通信,而服务管理器又可以与应用控制器通信,使得服务管理器和应用控制器可以指示工作管理器执行工作和任务。
在一个实施例中,设备可以是任何网络单元,包括用户设备(user equipment,UE)、物联网(internet-of-things,IoT)设备、车辆、卫星和服务器,只要该设备能够利用本实施例的平台注册为设备,并且能够被本实施例的平台标识为设备即可。
图11是在计算和通信环境950内示出的电子设备(electronic device,ED)952的框图,该电子设备可以用于实现本文公开的设备和方法。在一些实施例中,电子设备952可以是用户设备(user equipment,UE)或通信网络基础设施的元件。电子设备952通常包括:处理器954,例如,中央处理器(central processing unit,CPU),并且还可以包括专用处理器,例如,图形处理单元(graphics processing unit,GPU)或其他这样的处理器;存储器956;网络接口958以及用于连接ED 952的组件的总线960。ED 952可选地还可以包括大容量存储设备962、视频适配器964和I/O接口968(以虚线示出)等组件。
存储器946可以包括任何类型的可由处理器954读取的非暂态***存储器,例如,静态随机存取存储器(static random access memory,SRAM)、动态随机存取存储器(dynamic random access memory,DRAM)、同步DRAM(synchronous DRAM,SDRAM)、只读存储器(read-only memory,ROM)或其组合。在具体实施例中,存储器108可以包括多于一种类型的存储器,例如,用于在开机时使用的ROM以及用于在执行程序时使用的存储程序和数据的DRAM。
大容量存储器962可以包括任何类型的用于存储数据、程序和其他信息并使这些数据、程序和其他信息可经由总线960访问的非暂态存储设备。在一些实施例中,大容量存储器962可以远离电子设备952并且可通过使用网络接口例如接口958来访问。在所示实施例中,大容量存储器962与包括大容量存储器的存储器946不同,并且通常可以执行与更高时延兼容的存储任务,但是易失性通常较小或不存在。在一些实施例中,大容量存储器962可以与存储器946集成,以形成异构存储器。
在一些实施例中,电子设备952可以是独立式设备,而在其他实施例中,电子设备952可以位于数据中心内。在本领域中,数据中心可以被理解为可以用作共有计算和存储资源的计算资源(通常呈服务器的形式)的集合。在数据中心内,多个服务器可以被连接在一起提供计算资源池,虚拟化实体可以在该计算资源池上被实例化。数据中心之间可以互连,以形成由计算和存储资源池组成的网络,这些资源池通过连接资源相互连接。连接资源可以是物理连接例如以太网或光通信链路的形式,并且还可以包括无线通信信道。如果两个不同的数据中心通过多个不同的通信信道连接,则可以使用包括形成链路聚合组(linkaggregation group,LAG)的多种技术中的任一种技术将这些链路组合在一起。应当理解,可以将任何或所有计算资源、存储资源和连接资源(以及网络内的其他资源)划分在不同的子网之间,在一些情况下,以资源片的形式进行划分。如果对跨多个连接的数据中心或其他节点集合的资源进行切片,则可以创建不同的网络切片。
应当理解,网络功能例如隐私路由器、任务、工作和例程管理器以及例程客户端和服务器等网络功能都可以在一个或更多个电子设备中被实例化。因此,实施例包括电子设备,电子设备包括处理器和机器可读存储器,机器可读存储器存储机器可执行指令,这些机器可执行指令在由处理器执行时使得电子设备实现本文公开的方法。此外,电子设备和/或数据中心的***可以用于实现本文公开的方法。
实施例包括一种进行操作以执行计算服务的***,计算服务包括至少一个例程和至少一个服务功能,每个例程与例程服务器功能和例程客户端功能相关联,所述***包括:至少一个例程管理器,该至少一个例程管理器进行操作以执行例程并且用于:接收与例程相关联的同步要求;根据同步要求,邀请第一例程客户端执行与例程服务器的第一数据通信,其中第一例程客户端是例程客户端功能的实例,例程服务器是例程服务器功能的实例;根据同步要求,邀请第二例程客户端执行与例程服务器的第二数据通信,其中第二例程客户端是例程客户端功能的实例;至少一个第一隐私路由器,该至少一个第一隐私路由器进行操作以转发与例程服务器和第一例程客户端之间的第一数据通信相关联的数据业务;至少一个第二隐私路由器,该至少一个第二隐私路由器进行操作以转发与例程服务器和第二例程客户端之间的第二数据通信相关联的数据业务。在实施例中,同步要求可以是针对顺序通信的,并且邀请第二例程客户端可以在第一数据通信之前执行。在实施例中,同步要求可以是针对并行通信的,并且邀请第二例程客户端执行与例程服务器的第二数据通信可以在第一数据通信的完成之前发生。在实施例中,邀请第二例程客户端还包括接收关于第一数据通信的完成的通知。在实施例中,隐私路由器可以从例程管理器接收指示对数据业务执行代理重新加密的指令,并相应地执行该指令。在实施例中,第一隐私路由器和第二隐私路由器可以是同一实体。在实施例中,至少一个例程客户端可以是终端设备。在实施例中,同步要求可以包括标识例程客户端功能和例程服务器功能中的至少一者的信息。在实施例中,计算服务的例程和服务功能可以被分组为至少一个任务,并且***还可以包括至少一个任务管理器,任务管理器用于:被接口成与至少一个例程管理器通信,并且进行操作以:接收用于执行任务的命令;根据例程间依赖关系,协调所述任务的例程的执行;以及针对每个例程执行分配执行标识符;标识与每个例程相关联的至少一个例程管理器;以及通知例程管理器执行该例程。在实施例中,任务可以被分组为工作,并且***还可以包括工作管理器,工作管理器用于:被接口成与至少一个任务管理器通信,以及进行操作以:接收执行工作的命令;根据任务间依赖关系,协调所述工作的任务的执行;选择至少一个任务管理器来执行工作中的任务;以及将每个任务命令发送给所选择的任务管理器。在实施例中,计算服务可以包括工作,并且***还可以包括服务管理器,服务管理器用于:被接口成与至少一个工作管理器通信,以及进行操作以:接收工作命令;在考虑每个工作管理器的工作量的情况下针对每个工作命令选择工作管理器;分配标识每个工作命令的信息;分配标识所述执行的信息;将所述信息发送给所选择的工作管理器;将所标识的工作命令转发给所选择的工作管理器;以及触发与所述服务相关联的工作的执行。在实施例中,服务管理器还可以进行操作以:获得与工作相关联的任务间依赖关系数据;以及向工作管理器提供任务间依赖关系数据。在实施例中,***还可以包括应用控制器,该应用控制器被接口成与服务管理器通信,并且进行操作以通过与服务管理器交互来管理计算服务,所述交互包括:向服务管理器发送工作命令,以及接收所述工作命令的执行完成的通知。在实施例中,***还可以包括:至少一个服务数据存储库,所述至少一个服务数据存储库被接口成与至少服务管理器、工作管理器和任务管理器通信,并且进行操作以接收、存储和发送包括以下的信息:标识每个计算服务的信息、针对每个计算服务的服务配置文件、标识每个工作的信息、工作数据、任务数据、例程数据、计算平面数据、服务功能数据和部署数据。在实施例中,所述至少一个服务数据存储库还可以进行操作以接收、存储和发送包括用户订阅数据的信息。在实施例中,所述至少一个服务数据存储库还可以进行操作以接收、存储和发送包括设备状态信息的信息。
实施例包括一种执行计算服务的方法,所述方法包括:利用例程管理器,根据相应的例程间依赖关系,来协调构成计算服务的多个例程的执行;其中,例程的执行包括:对来自例程的通信数据执行代理重新加密;转发来自例程的通信数据。在实施例中,协调例程的执行可以包括触发例程的执行,触发例程的执行可以包括:将标识计算服务的信息和标识例程的信息包括在第一通知中;将第一通知发送给隐私路由器,其中,所述隐私路由器用于处理与例程执行相关的数据并将第二通知转发给例程服务器功能的实例;将标识计算服务的信息和标识例程的信息包括在第三通知中;将第三通知发送给隐私路由器,其中,所述隐私路由器用于处理与例程执行相关的数据并将第四通知转发给例程客户端功能的实例;其中,至少一个隐私路由器还用于根据通信指令发起例程服务器功能的实例与例程客户端功能的实例之间的通信;并且处理与例程执行相关的数据是根据通信指令而执行的。在实施例中,通信指令可以包括在给隐私路由器的通知中。在实施例中,处理与例程执行相关的数据还可以包括通过使用与数据的接收器相关的重新加密密钥来对数据执行代理重新加密。在实施例中,重新加密密钥可以被预先配置在隐私路由器中。在实施例中,重新加密密钥可以作为通信指令的一部分从例程管理器接收。在实施例中,例程管理器可以从例程服务器功能的实例接收数据通信完成的通知。在实施例中,例程管理器可以从例程客户端功能的实例接收数据通信完成的通知。在实施例中,协调例程的执行还可以包括:由例程管理器向服务功能的第一实例发送第一邀请消息;由例程管理器向服务功能的第二实例发送第二邀请消息;由例程管理器从服务功能的第一实例接收第一接受消息,其中,所述第一接受消息包括用于对例程的通信数据执行代理重新加密的安全材料;以及由例程管理器从服务功能的第二实例接收第二接受消息,其中,所述第二接受消息包括用于对例程的通信数据执行代理重新加密的安全材料;其中,通过隐私路由器来促进每个消息的发送。在实施例中,邀请消息还可以包括:标识计算服务的信息、标识例程的信息、标识例程执行的信息。在实施例中,发送邀请消息还可以包括发送包括邀请消息的外部消息。在实施例中,外部消息还可以包括与隐私路由器相关的路由信息。在实施例中,协调例程的执行可以包括:由例程管理器从已获得与计算服务的服务配置文件相关联的信息的任务管理器接收执行例程的通知;从例程管理器向任务管理器发送确认;从例程管理器向例程服务器功能的实例发送邀请,以促进例程执行;从例程管理器向例程客户端功能的至少一个实例发送邀请,以促进至少一次例程执行;由例程管理器执行与例程客户端功能的每个实例的例程通信过程。在实施例中,协调例程的执行还可以包括:由至少一个例程管理器基于由任务管理器获得的数据来执行至少一个例程,所述数据包括:使得能够选择所述至少一个例程管理器的数据;与所述至少一个例程相关联的例程数据;与任务关联的任务数据;与任务相关的计算平面数据;以及来自工作管理器的用于触发包括所述至少一个例程的任务的请求。在实施例中,工作管理器可以由服务管理器选择、接收来自服务管理器的工作命令、接收与工作相关联的工作数据、接收关于如何执行工作的信息以及接收至少一个执行条件。在实施例中,任务管理器还可以进行操作以选择至少k个设备,以确保设备之间的k匿名,其中,数量k的值可以在例程数据、任务数据或者在本地配置中指示。在实施例中,任务管理器还可以进行操作以选择设备、将设备与例程管理器相关联以及向例程管理器通知这些设备,以便例程管理器能够邀请这些设备。
上文结合本发明的各个方面描述了可以基于这些方面来实现的实施例。本领域技术人员将理解,可以结合描述实施例的方面来实现实施例,但也可以与该方面的其他实施例一起实现来实现实施例。当实施例相互排斥或彼此不兼容时,这对于本领域技术人员将是明显的。一些实施例可以结合一个方面进行描述,但也可以适用于其他方面,这对本领域技术人员将是明显的。
尽管已经参考本发明的特定特征和实施例描述了本发明,但是明显的是,在不脱离本发明的情况下可以制定本发明的各种修改和组合。因此,说明书和附图仅被视为对由所附权利要求书限定的本发明的说明,并且预期覆盖落入本发明的范围内的任何和所有修改、变化、组合或等同物。
Claims (31)
1.一种进行操作以执行计算服务的***,其特征在于,所述计算服务包括至少一个例程和至少一个服务功能,每个例程与例程服务器功能和例程客户端功能相关联,
所述***包括:
至少一个例程管理器,所述至少一个例程管理器进行操作以执行例程,并且用于:
接收与所述例程相关联的同步要求;
根据所述同步要求,邀请第一例程客户端执行与例程服务器的第一数据通信,其中所述第一例程客户端是所述例程客户端功能的实例,所述例程服务器是所述例程服务器功能的实例;
根据所述同步要求,邀请第二例程客户端执行与所述例程服务器的第二数据通信,其中所述第二例程客户端是所述例程客户端功能的实例;
至少一个第一隐私路由器,所述至少一个第一隐私路由器进行操作以转发与所述例程服务器和所述第一例程客户端之间的所述第一数据通信相关联的数据业务;
至少一个第二隐私路由器,所述至少一个第二隐私路由器进行操作以转发与所述例程服务器和所述第二例程客户端之间的所述第二数据通信相关联的数据业务。
2.根据权利要求1所述的***,其特征在于,所述同步要求是针对顺序通信的,并且所述第二数据通信在所述第一数据通信完成之后发生。
3.根据权利要求1所述的***,其特征在于,所述同步要求是针对并行通信的,并且邀请所述第二例程客户端执行与所述例程服务器的所述第二数据通信在所述第一数据通信完成之前发生。
4.根据权利要求1所述的***,其特征在于,所述同步要求是针对并行通信的,并且所述第二数据通信在所述第一数据通信完成之前发生。
5.根据权利要求1至4中任一项所述的***,其特征在于,至少一个隐私路由器从所述例程管理器接收指示对所述数据业务执行代理重新加密的指令,并相应地执行所述指令。
6.根据权利要求1至5中任一项所述的***,其特征在于,所述第一隐私路由器和所述第二隐私路由器是同一实体。
7.根据权利要求1至6中任一项所述的***,其特征在于,至少一个例程客户端是终端设备。
8.根据权利要求1至7中任一项所述的***,其特征在于,所述同步要求包括标识所述例程客户端功能和所述例程服务器功能中的至少一者的信息。
9.根据权利要求1至8中任一项所述的***,其特征在于,
所述计算服务的例程和服务功能被分组为至少一个任务,并且
所述***还包括至少一个任务管理器,所述任务管理器用于:
被接口成与至少一个例程管理器通信,以及
进行操作以:
接收用于执行任务的命令;
根据例程间依赖关系,协调所述任务的例程的执行;
针对每个例程执行分配执行标识符;
标识与每个例程相关联的至少一个例程管理器;以及
通知所述例程管理器执行所述例程。
10.根据权利要求9所述的***,其特征在于,任务被分组为工作,并且所述***还包括工作管理器,所述工作管理器用于:
被接口成与至少一个任务管理器通信,以及
进行操作以:
接收用于执行工作的命令;
根据任务间依赖关系,协调所述工作的任务的执行;
选择至少一个任务管理器来执行所述工作的任务;以及
将每个任务命令发送给所选择的任务管理器。
11.根据权利要求10所述的***,其特征在于,所述计算服务包括工作,并且所述***还包括服务管理器,其中,所述服务管理器用于:被接口成与至少一个工作管理器通信,以及进行操作以:
接收工作命令;
基于每个工作管理器的工作量,针对每个工作命令选择工作管理器;
分配标识每个工作命令的信息;
分配标识所述执行的信息;
将所述信息发送给所选择的工作管理器;
将所标识的工作命令转发给所选择的工作管理器;以及
触发与所述服务相关联的工作的执行。
12.根据权利要求11所述的***,其特征在于,所述服务管理器还进行操作以:
获得与工作相关联的任务间依赖关系数据;以及
向工作管理器提供任务间依赖关系数据。
13.根据权利要求12所述的***,其特征在于,所述***还包括应用控制器,
所述应用控制器被接口成与所述服务管理器通信,并且
进行操作以通过与所述服务管理器交互来管理所述计算服务,所述交互包括:
向服务管理器发送工作命令,以及
接收工作命令的执行完成的通知。
14.根据权利要求11至13中任一项所述的***,其特征在于,所述***还包括至少一个服务数据存储库,
所述至少一个服务数据存储库被接口成与至少所述服务管理器、工作管理器和任务管理器通信,并且进行操作以接收、存储和发送包括以下中的一项或更多项的信息:
标识每个计算服务的信息,
针对每个计算服务的服务配置文件,
标识每个工作的信息,
指示所述任务间依赖关系的工作数据,
指示所述例程间依赖关系的任务数据,
指示所述同步要求的例程数据,
指示所述至少一个第一隐私路由器和所述至少一个第二隐私路由器的计算平面数据,
指示所述例程服务器功能和所述例程客户端功能的服务功能数据,以及
指示所述第一例程客户端、所述第二例程客户端和所述例程服务器的部署数据。
15.根据权利要求14所述的***,其特征在于,所述至少一个服务数据存储库还进行操作以接收、存储和发送包括用户订阅数据的信息。
16.根据权利要求14至15中任一项所述的***,其特征在于,所述至少一个服务数据存储库还进行操作以接收、存储和发送包括设备状态信息的信息。
17.根据权利要求9至16中任一项所述的***,其特征在于,所述任务管理器还进行操作以选择至少k个设备,以确保所述设备之间的k匿名,其中,数量k的值可以在所述例程数据、任务数据或者在本地配置中被指示。
18.根据权利要求17所述的***,其特征在于,任务管理器还进行操作以:选择设备,将所述设备与例程管理器相关联,以及向所述例程管理器通知所述设备,以使得所述例程管理器能够邀请所述设备。
19.一种执行计算服务的方法,其特征在于,所述方法包括:
由例程管理器根据相应的同步要求,协调构成所述计算服务的例程的执行;
其中,例程的执行包括以下处理:
对来自所述例程的数据执行代理重新加密,
转发来自所述例程的数据。
20.根据权利要求19所述的方法,其特征在于,协调例程的执行包括触发例程的执行,其中,触发例程的执行包括:
向隐私路由器发送第一通知,其中,所述隐私路由器用于:
处理与例程执行相关的数据,所述处理包括通过使用与所述数据的接收器相关的重新加密密钥来对所述数据执行代理重新加密以及转发来自所述例程的经重新加密的数据,以及
向例程服务器功能的实例转发第二通知,
其中,所述第一通知包括:
标识所述计算服务的信息,以及
标识所述例程的信息;
向隐私路由器发送第三通知,其中,所述隐私路由器用于:
处理与例程执行相关的数据,所述处理包括通过使用与所述数据的接收器相关的重新加密密钥对所述数据执行代理重新加密以及转发来自所述例程的重新加密数据,以及
向例程客户端功能的实例转发第四通知,
其中,所述第三通知包括:
标识所述计算服务的信息,以及
标识所述例程的信息;
其中,至少一个隐私路由器还用于根据通信指令,发起以下两者之间的通信:
所述例程服务器功能的实例,以及
所述例程客户端功能的实例;
并且其中,处理与例程执行相关的数据是根据通信指令执行的。
21.根据权利要求20所述的方法,其特征在于,所述通信指令被包括在给隐私路由器的通知中。
22.根据权利要求20或21所述的方法,其特征在于,所述重新加密密钥被预先配置在所述隐私路由器中,或者作为所述通信指令的一部分从所述例程管理器接收。
23.根据权利要求20至22中任一项所述的方法,其特征在于,所述方法还包括:由所述例程管理器从所述例程服务器功能的实例或所述例程客户端功能的实例接收数据通信已完成的通知。
24.根据权利要求21至23中任一项所述的方法,其特征在于,协调例程的执行包括:
由所述例程管理器向服务功能的第一实例发送第一邀请消息;
由所述例程管理器向服务功能的第二实例发送第二邀请消息;
由所述例程管理器从所述服务功能的第一实例接收第一接受消息,所述第一接受消息包括用于对所述例程的数据执行代理重新加密的安全材料;以及
由所述例程管理器从所述服务功能的第二实例接收第二接受消息,所述第二接受消息包括用于对所述例程的数据执行代理重新加密的安全材料;
其中,通过隐私路由器来促进每个消息的发送。
25.根据权利要求24所述的方法,其特征在于,所述第一邀请消息和所述第二邀请消息中的一个或更多个还包括以下中的一项或更多项:
标识所述计算服务的信息,
标识例程的信息,
标识例程执行的信息。
26.根据权利要求24至25中任一项所述的方法,其特征在于,发送所述第一邀请消息或所述第二邀请消息还包括发送外部消息,所述外部消息包括所述邀请消息和与隐私路由器相关的路由信息。
27.根据权利要求19至26中任一项所述的方法,其特征在于,协调例程的执行包括:
由所述例程管理器从已获得与所述计算服务的服务配置文件相关联的信息的任务管理器接收执行所述例程的通知;
从所述例程管理器向所述任务管理器发送确认;
从所述例程管理器向例程服务器功能的实例发送邀请,以促进所述例程执行;
从所述例程管理器向例程客户端功能的至少一个实例发送邀请,以促进至少一次例程执行;
由所述例程管理器执行与例程客户端功能的每个实例的例程通信过程。
28.根据权利要求27所述的方法,其特征在于,协调例程的执行还包括:
由包括所述例程管理器的至少一个例程管理器,基于通过任务管理器获得的数据来执行至少一个例程,所述数据包括:
使得能够选择所述至少一个例程管理器的数据;
与所述至少一个例程相关联的例程数据;
与任务相关联的任务数据;
与任务相关的计算平面数据;以及
来自工作管理器的用于触发包括所述至少一个例程的任务的请求。
29.根据权利要求28所述的方法,其特征在于,所述工作管理器由服务管理器选择并且所述工作管理器进行操作以:
接收来自所述服务管理器的工作命令,
接收与所述工作相关联的工作数据,
接收关于如何执行所述工作的信息,以及
接收至少一个执行条件。
30.一种装置,其特征在于,所述装置包括处理器,所述处理器与存储有指令的存储器耦接,所述指令在由所述处理器执行时将所述装置配置成执行根据权利要求19至29中任一项所述的方法。
31.一种机器可读介质,其特征在于,所述机器可读介质存储有指令,所述指令在由处理器执行时将所述处理器配置成执行根据权利要求19至29中任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2021/098733 WO2022256993A1 (en) | 2021-06-07 | 2021-06-07 | Systems and methods for supporting network-based computing services |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117425891A true CN117425891A (zh) | 2024-01-19 |
Family
ID=84424686
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180098712.XA Pending CN117425891A (zh) | 2021-06-07 | 2021-06-07 | 用于支持基于网络的计算服务的***和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240113899A1 (zh) |
EP (1) | EP4348471A4 (zh) |
CN (1) | CN117425891A (zh) |
WO (1) | WO2022256993A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8356171B2 (en) * | 2006-04-26 | 2013-01-15 | Cisco Technology, Inc. | System and method for implementing fast reauthentication |
CN110070300B (zh) * | 2019-04-29 | 2022-08-05 | 百度在线网络技术(北京)有限公司 | 数据审核和获取方法、装置、***、设备及介质 |
CN111224950A (zh) * | 2019-12-18 | 2020-06-02 | 中思博安科技(北京)有限公司 | 数据交换方法、***和计算机存储介质 |
CN112699391B (zh) * | 2020-12-31 | 2023-06-06 | 青岛海尔科技有限公司 | 目标数据的发送方法及隐私计算平台 |
-
2021
- 2021-06-07 CN CN202180098712.XA patent/CN117425891A/zh active Pending
- 2021-06-07 WO PCT/CN2021/098733 patent/WO2022256993A1/en active Application Filing
- 2021-06-07 EP EP21944504.6A patent/EP4348471A4/en active Pending
-
2023
- 2023-12-07 US US18/531,845 patent/US20240113899A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4348471A1 (en) | 2024-04-10 |
WO2022256993A1 (en) | 2022-12-15 |
EP4348471A4 (en) | 2024-05-22 |
US20240113899A1 (en) | 2024-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11765150B2 (en) | End-to-end M2M service layer sessions | |
US11050626B2 (en) | Service provision for offering network slices to a customer | |
EP4243466A2 (en) | Shared pdu session establishment and binding | |
US8234377B2 (en) | Dynamically migrating computer networks | |
US20180317134A1 (en) | Nssmf nsmf interaction connecting virtual 5g networks and subnets | |
KR102140636B1 (ko) | Nfv를 통한 풀 기반 m2m 서비스 계층 구축 | |
CN108141433B (zh) | 用于在网络中使用的设备、控制器、网络和方法 | |
EP3616363A1 (en) | Service provision steps using slices and associated definitions | |
WO2017114363A1 (zh) | 报文处理方法、bng及bng集群*** | |
US20130297752A1 (en) | Provisioning network segments based on tenant identity | |
US20160218939A1 (en) | Distributed multi-site cloud deployment | |
EP3952213B1 (en) | Communication method, apparatus, and system | |
WO2021147358A1 (zh) | 一种网络接口的建立方法、装置及*** | |
WO2023185804A1 (zh) | 用于vpn的多流负载均衡方法、装置、***及存储介质 | |
CN116633934A (zh) | 负载均衡方法、装置、节点及存储介质 | |
US10833972B2 (en) | Automatically selecting an optimized communication channel for communications with a deflect in an overlay network | |
US20220239726A1 (en) | Communication device and communication method | |
US20240113899A1 (en) | Systems and methods for supporting network-based computing services | |
US10743173B2 (en) | Virtual anchoring in anchorless mobile networks | |
WO2023115522A1 (en) | Systems and methods for enabling network-based reusable computing | |
Mazumdar et al. | Towards A Data Privacy-Aware Execution Zone Creation on Cloud/Fog Platform | |
CN118401930A (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 |