CN117581550A - 基于内容分区的沉浸式媒体实时通信 - Google Patents

基于内容分区的沉浸式媒体实时通信 Download PDF

Info

Publication number
CN117581550A
CN117581550A CN202180099971.4A CN202180099971A CN117581550A CN 117581550 A CN117581550 A CN 117581550A CN 202180099971 A CN202180099971 A CN 202180099971A CN 117581550 A CN117581550 A CN 117581550A
Authority
CN
China
Prior art keywords
media
content
media content
partition
processor
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
Application number
CN202180099971.4A
Other languages
English (en)
Inventor
沈钢
戴建辉
H·穆斯塔法
吴秋娇
邱建林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN117581550A publication Critical patent/CN117581550A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video

Abstract

本文描述了用于选择性地传输空间分区沉浸式媒体内容的系统和技术。在示例中,系统可以在媒体生产者与媒体消费者之间对媒体内容的属性进行协商。可以基于属性的协商来确定媒体内容的内容结构,并且可以创建具有与编码到网络分组的传输协议头部中的所确定内容结构相对应的信息的网络分组。网络分组可以被滤波以产生经滤波媒体内容。经滤波媒体内容可被传送给媒体消费者。

Description

基于内容分区的沉浸式媒体实时通信
优先权
本申请是于2021年11月10日提交的题为“基于内容分区的沉浸式媒体实时通信(CONTENT PARTITION BASED REAL TIME COMMUNICATION FOR IMMERSIVE MEDIA)”的国际申请号PCT/CN2021/129723的继续申请,本文要求该申请优先权的权益,并且该申请由此通过引用以其整体并入本文中。
技术领域
本公开涉及沉浸式媒体流领域。
背景技术
沉浸式媒体(例如,虚拟现实(Virtual Reality,VR)、增强现实(AugmentedReality,AR)、混合现实(Mixed Reality,MR)/(XR)等)流包含大量二维和三维内容,并要求客户端设备与服务器之间具有持续交互性的超高带宽。常见的请求是(例如,在空间域中)选择性地传输和交付部分内容到设备,诸如媒体的感兴趣区域。
附图说明
在附图中(这些附图不一定是按比例绘制的),相同的数字可描述不同视图中的类似组件。具有不同的字母后缀的相同的数字可表示类似组件的不同实例。总体上,附图通过示例的方式而不是通过限制的方式来图示在本文档中所讨论的各个实施例。
图1图示出用于边缘计算的边缘云配置的概览。
图2图示出端点、边缘云和云计算环境之间的操作层。
图3图示出用于边缘计算系统中的联网和服务的示例方法。
图4图示出在多个边缘节点和多个租户之间操作的边缘计算系统中的虚拟边缘配置的部署。
图5图示出在边缘计算系统中部署容器的各种计算布置。
图6图示出涉及对边缘计算系统中的应用的移动接入的计算和通信用例。
图7A提供用于边缘计算系统中的计算节点处所部署的计算的示例组件的概览。
图7B提供边缘计算系统中的计算设备内的示例组件的进一步的概览。
图7C图示出用于将软件分发到一个或多个设备的示例软件分发平台。
图8图示出媒体内容交付的通用模型的示例。
图9图示出媒体内容交付的通用模型中的中继服务器中对内容进行转码的示例。
图10图示出中继服务器中空间分区内容的示例选择。
图11图示出基于分组滤波器的中继服务器用于交付内容区域。
图12图示出媒体内容的内容分区的示例。
图13图示出基于实时传输协议有效载荷格式的分区的示例。
图14图示出扩展RTP头部内的分区结构描述符的示例。
图15图示出分区描述符的示例。
图16图示出端到端内容分区感知RTP流的流程图的示例。
图17图示出示例MPEG视频编码。
图18是基于内容分区的沉浸式媒体实时通信方法的示例的流程图。
具体实施方式
媒体内容的数字流在当今社会继续盛行,并且随着因特网和无线连接速度的提高而不断发展。诸如虚拟现实(VR)、增强现实(AR)和混合现实(MR)流之类的沉浸式媒体包含大量二维和三维内容。流传输此类内容需要客户端设备与服务器之间的超高带宽和持续的交互性(和连接性)。数字流的一个具有挑战性的方面是选择性地将数字媒体(例如,视频)的部分内容(诸如感兴趣区域、视口内的内容等)传输并交付到设备。
部分内容的实时传输带来了多重挑战,包括:1)内容需要以区域或块被分区和组织(例如,压缩);2)区域/块的传输或转发需要选择性地执行。将内容分区/组织成区域/块通常由可以对内容进行分区和编码的媒体编解码器实现。例如,HEVC和AV1等现代视频编解码器采用“片”概念来分割视频帧中的矩形区域。为了允许独立的取回和解码,HEVC开发了运动约束片集(Motion Constraint Tile Set,MCTS)的概念,而AV1设计了原生具有运动约束的独立可解码片。在体积数据中,“3D片”概念(本质上是3D立方体空间)被广泛用于网格、点云和体素中。因此,媒体内容可以根据某些空间结构进行分区和编码。
选择性地传输或转发区域或块包括构建网络交付/传输框架,以高效且灵活地将内容转发到空间分区(例如,分区为区域、块等)视频帧。在实时媒体传输的现有实现方式中,从传输层(例如,第5层或第6层)、服务器和路由器的角度来看,从编解码器出来的内容被视为一个形成一个数据流(或经编码媒体方面的“比特流”)的集成数据有效载荷。然而,诸如VR、AR、MR等之类的应用越来越期望能够在一个数据流中仅选择性地交付/传输相关内容区域/块。
此外,选择的内容分区通常在运行时期间基于客户端的操作和反馈(例如,HMD的视口、由用户发出的“缩放”操作等)而有所不同。虽然一些特定于应用和特定于内容的实现方式是可用的,但具有通用和可扩展的传输框架以从网络功能和服务角度支持这种空间分区内容交付是必要的且有益的。
现有的实现方式通常依赖于解析每个分组的有效载荷。交付/转发服务器将打开分组并解析有效载荷(例如,经编码帧),然后选择性地决定是否将分组转发至给定的接收器。这些类型的系统有若干缺点和障碍。
首先,有效载荷结构通常与不同的内容压缩标准(例如,不同的编解码器)相关联。解析逻辑可能必须特定于编解码器,这意味着解析逻辑可能需要针对每个不同的编解码器的实现方式和/或特定于应用。此外,对经编码比特流进行解析既耗时又耗费计算机资源(例如,耗费存储器)。
其次,有效载荷可以被加密,并且在这种情况下,有效载荷只能由经认证的接收器解析和分析。例如,在安全实时传输协议(Secure Real Time Transport Protocol,SRTP)中,有效载荷可能不会被任何中间服务器解析。因此,解析有效载荷的方法不适用于安全传输通道。
另一个缺点在于,交付/转发服务器(也称为“中继服务器”)可能需要了解内容分区结构和媒体编解码器。例如,交付/转发/中继服务器必须知道一帧可具有多少“片”。因此,实现方式变得与特定应用和特定内容紧密耦合。这将影响这些实现方式部署在不同网络和不同内容上的可重用性和可扩展性。
其他实现方式(诸如内容交付网络(Content Delivery Network,CDN))使用一个或多个文件来容纳和表示媒体内容的空间分区。然而,文件的处理和这些文件(经由HTTP)的传输可能无法满足符合低等待时间的实时要求。
本文公开了为实时VR/AR/MR/沉浸式媒体(immersive media,XR)流提供唯一且通用服务的系统和方法。服务可被设置为通用和多功能实时通信边缘网络,以支持各种沉浸式媒体应用的超低等待时间传输。所公开的系统可以提供基于空间分区/片/切片的实时传输协议(Real-Time Transport Protocol,RTP)层,而无需检查比特流有效载荷。因此,所公开的系统可节省计算资源并减少处理时间。所公开的系统可使用基于通用分区/块的RTP分组传输,因此转发/交付服务器不需要与媒体内容结构紧密耦合。此外,所公开的系统可使用基于空间分区的并行解码,这可减少/改善等待时间。而且,目前所公开的系统可能适用于经加密的有效载荷和安全的流通道,与现有实现方式相比具有优势。
图1是示出用于边缘计算的配置的概览的框图100,该配置包括在以下许多示例中被称为“边缘云”的处理层。如图所示,边缘云110共同定位在边缘位置(诸如接入点或基站140、本地处理中枢150、或中央局120),并且因此可以包括多个实体、设备、和装备实例。与云数据中心130相比,边缘云110被定位成更靠近端点(消费者和生产者)数据源160(例如,自主车辆161、用户装备162、商业和工业装备163、视频捕获设备164、无人机165、智慧城市和建筑设备166、传感器和IoT设备167等)。在边缘云110中的边缘处提供的计算、存储器、和存储资源对于为由端点数据源160使用的服务和功能提供超低等待时间的响应时间以及减少从边缘云110朝向云数据中心130的网络回程通信量(由此改善能耗和整体网络使用等益处)至关重要。
计算、存储器、和存储是稀缺资源,并且通常根据边缘位置而减少(例如,在消费者端点设备上可用的处理资源比在基站上、在中央局处可用的处理资源更少)。然而,边缘位置越靠近端点(例如,用户装备(UE)),空间和功率通常就越受限。因此,边缘计算尝试通过分配被定位成既在地理上更靠近又在网络接入时间上更靠近的更多的资源来减少网络服务所需的资源量。以该方式,边缘计算尝试在适当的情况下将计算资源带到工作负荷数据,或者,将工作负荷数据带到计算资源。
以下描述了边缘云体系结构的各方面,该体系结构涵盖多种潜在的部署,并解决了一些网络运营商或服务提供商在其本身的基础设施中可能具有的限制。这些包括基于边缘位置的各种配置(例如,因为处于基站级别的边缘在多租户场景中可能具有更受限制的性能和能力);基于边缘位置、位置的层、或位置的组可用的计算、存储器、存储、结构、加速等资源的类型的配置;服务、安全性、以及管理和编排能力;以及实现端服务的可用性和性能的相关目标。这些部署可以在网络层中完成处理,取决于等待时间、距离、和定时特征,这些网络层可以被视为“接近边缘”、“靠近边缘”、“本地边缘”、“中间边缘”、或“远边缘”层。
边缘计算是一种开发范式,其中计算在网络的“边缘”处或靠近于网络的“边缘”被执行,典型地通过使用在基站、网关、网络路由器、或更靠近于产生和消耗数据的端点设备的其他设备处实现的计算平台(例如,x86或ARM计算硬件体系结构)来执行。例如,边缘网关服务器可装配有存储器池和存储资源,以针对连接的客户端设备的低等待时间用例(例如,自主驾驶或视频监测)实时地执行计算。或者作为示例,基站可被扩充有计算和加速资源,以直接为连接的用户装备处理服务工作负荷,而无需进一步经由回程网络传输数据。或者作为另一示例,可用执行虚拟化网络功能并为服务的执行提供计算资源并且为连接的设备提供消费者功能的标准化计算硬件来代替中央局网络管理硬件。在边缘计算网络内,可能存在计算资源“被移动”到数据的服务中的场景,以及其中数据“被移动”到计算资源的场景。或者作为示例,基站计算、加速和网络资源可以提供服务,以便通过激活休眠容量(订阅、按需容量)来根据需要扩展工作负荷需求,以便管理极端情况、紧急情况或为部署的资源在显著更长的实现的生命周期中提供长寿命。
图2示出了端点、边缘云和云计算环境之间的操作层。具体而言,图2描绘了在网络计算的多个说明性层之间利用边缘云110的计算用例205的示例。这些层从端点(设备和事物)层200开始,该层200访问边缘云110以进行数据创建、分析和数据消费活动。边缘云110可以跨越多个网络层(诸如具有网关、内部(on-premise)服务器、或位于物理上邻近边缘系统中的网络装备(节点215)的边缘设备层210);网络接入层220,该网络接入层220涵盖基站、无线电处理单元、网络中枢、区域数据中心(DC)、或本地网络装备(装备225);以及位于它们之间的任何装备、设备或节点(在层212中,未详细图示出)。边缘云110内和各层之间的网络通信可以经由任何数量的有线或无线介质来实现,包括经由未描绘出的连接性体系结构和技术。
由于网络通信距离和处理时间约束而导致的等待时间的示例的范围可以从在端点层200之间时的小于一毫秒(ms),在边缘设备层210处的低于5ms到当与网络接入层220处的节点通信时的10到40ms之间。在边缘云110之外是核心网络层230和云数据中心层240,每个层均具有增加的等待时间(例如,在核心网络层230处的50-60ms之间,到在云数据中心层处的100ms或更多ms)。因此,在核心网络数据中心235或云数据中心245处的、具有至少为50至100ms或更多的等待时间的操作将无法完成用例205的许多时间关键的功能。出于说明和对比的目的,提供这些等待时间值中的每一个等待时间值;应当理解,使用其他接入网络介质和技术可以进一步降低等待时间。在一些示例中,相对于网络源和目的地,网络的各个部分可以被分类为“靠近边缘”、“本地边缘”、“接近边缘”、“中间边缘”或“远边缘”层。例如,从核心网络数据中心235或云数据中心245的角度来看,中央局或内容数据网络可以被视为位于“接近边缘”层内(“接近”云,具有在与用例205的设备和端点通信时的高等待时间值),而接入点、基站、内部服务器或网络网关可以被视为位于“远边缘”层内(“远”离云,具有在与用例205的设备和端点通信时的低等待时间值)。应当理解,构成“靠近”、“本地”、“接近”、“中间”或“远”边缘的特定网络层的其他分类可以基于等待时间、距离、网络跳数或其他可测量的特性,如从网络层200-240中的任一层中的源测量的。
由于多个服务利用边缘云,各种用例205可以在来自传入流的使用压力下访问资源。为了实现低等待时间的结果,在边缘云110内执行的服务在以下方面平衡不同的需求:(a)优先级(吞吐量或等待时间)和服务质量(QoS)(例如,在响应时间需求方面,自主汽车的通信量可能比温度传感器具有更高的优先级;或者,取决于应用,性能敏感度/瓶颈可能存在于计算/加速器、存储器、存储、或网络资源上);(b)可靠性和复原性(例如,取决于应用,一些输入流需要被作用并且以任务关键型可靠性来路由通信量,而一些其他输入流可以容忍偶尔的故障;以及(c)物理约束(例如,功率、冷却和形状因子)。
这些用例的端到端服务视图涉及服务流的概念,并与事务相关联。事务详细说明了消费服务的实体的整体服务需求,以及资源、工作负荷、工作流、以及业务功能和业务级别需求的相关联的服务。利用所描述的“方面(term)”执行的服务能以某种方式在每层处进行管理,以确保在服务的生命周期期间事务的实时和运行时合同合规性。当事务中的组件缺失其约定的SLA时,系统作为整体(事务中的组件)可以提供以下能力:(1)理解SLA违规的影响,以及(2)增强系统中的其他组件以恢复整体事务SLA,以及(3)实现补救的步骤。
因此,考虑到这些变化和服务特征,边缘云110内的边缘计算能以实时或接近实时的方式向用例205的多个应用(例如,对象跟踪、视频监视、连接的汽车等)提供服务和作出响应的能力,并满足这些多个应用的超低等待时间需求。这些优势使全新类别的应用(虚拟网络功能(VNF)、功能即服务(FaaS)、边缘即服务(EaaS)、标准过程等)得以实现,这些应用由于等待时间或其他限制而无法利用传统的云计算。
然而,随着边缘计算的优势,有以下注意事项。位于边缘处的设备通常是资源受约束的,并且因此存在对边缘资源的使用的压力。通常,这是通过对供多个用户(租户)和设备使用的存储器和存储资源的池化来解决的。边缘可能是功率和冷却受约束的,并且因此需要由消耗最多功率的应用来负责功率使用。在这些经池化的存储器资源中可能存在固有的功率性能权衡,因为它们中的许多可能使用新兴的存储器技术,在这些技术中,更多的功率需要更大的存储器带宽。同样,还需要改善的硬件安全性和信任根受信任的功能,因为边缘位置可以是无人(控制)的,并且可能甚至需要经许可的访问(例如,当被容纳在第三方位置时)。在多租户、多所有者、或多访问设置中,此类问题在边缘云110中被放大,此类设置中,由许多用户请求服务和应用,特别是当网络使用动态地波动以及多个利益相关者、用例、和服务的组成改变时。
在更一般的级别上,边缘计算系统可以被描述为涵盖在先前讨论的、在边缘云110中操作的层(网络层200-240)处的任意数量的部署,这些层提供来自客户端和分布式计算设备的协调。一个或多个边缘网关节点、一个或多个边缘聚合节点和一个或多个核心数据中心可以分布在网络的各个层上,以由电信服务提供商(“telco”或“TSP”)、物联网服务提供商、云服务提供商(CSP)、企业实体或任何其他数量的实体或者代表其提供边缘计算系统的实现。可以动态地提供边缘计算系统的各种实现方式和配置,诸如当被编排以满足服务目标时。
与本文提供的示例一致,客户端计算节点可以被具体化为任何类型的端点组件、设备、装置或能够作为数据的生产者或消费者进行通信的其他事物。进一步地,如边缘计算系统中所使用的标签“节点”或“设备”不一定意指此类节点或设备以客户端或代理/仆从/跟随者角色操作;相反,边缘计算系统中的节点或设备中的任一者指代包括分立的或连接的硬件或软件配置以促进或使用边缘云110的个体实体、节点、或子系统。
由此,边缘云110由网络层210-230中的边缘网关节点、边缘聚合节点或其他边缘计算节点操作并在网络层210-230中的边缘网关节点、边缘聚合节点或其他边缘计算节点内被操作的网络组件和功能特征形成。因此,边缘云110可被具体化为提供边缘计算和/或存储资源的任何类型的网络,这些边缘计算和/或存储资源被定位成接近支持无线电接入网络(RAN)的端点设备(例如,移动计算设备、IoT设备、智能设备等),其在本文中所讨论。换言之,边缘云110可被预想为连接端点设备和传统网络接入点、同时还提供存储和/或计算能力的“边缘”,该“边缘”充当进入到包括移动运营商网络(例如,全球移动通信系统(GSM)网络、长期演进(LTE)网络、5G/6G网络等)的服务提供商核心网络中的入口点。其他类型和形式的网络接入(例如,Wi-Fi、长程无线、包括光学网络的有线网络)也可替代此类3GPP运营商网络被利用或与此类3GPP运营商网络组合来利用。
边缘云110的网络组件可以是服务器、多租户服务器、装置计算设备和/或任何其他类型的计算设备。例如,边缘云110可包括装置计算设备,该装置计算设备是包括壳体、底座、机箱或外壳的自包含电子设备。在一些情况下,可以针对便携性来确定壳体尺寸,以使得该壳体可由人类携载和/或被运输。示例壳体可包括形成一个或多个外表面的材料,该一个或多个外表面部分地或完整地保护装置的内容物,其中,保护可包括天气保护、危险环境保护(例如,EMI、振动、极端温度)和/或使得能够浸入水中。示例壳体可包括用于为固定式和/或便携式实现方式提供功率的功率电路系统,诸如AC功率输入、DC功率输入、(一个或多个)AC/DC或DC/AC转换器、功率调节器、变压器、充电电路系统、电池、有线输入和/或无线功率输入。示例壳体和/或其表面可包括或连接至安装硬件,以实现到诸如建筑物、电信结构(例如,杆、天线结构等)和/或机架(例如,服务器机架、刀片支架等)之类的结构的附接。示例壳体和/或其表面可支持一个或多个传感器(例如,温度传感器、振动传感器、光传感器、声学传感器、电容传感器、接近度传感器等)。一个或多个此类传感器可被包含在装置的表面中、由装置的表面承载、或以其他方式被嵌入在装置的表面中和/或被安装至装置的表面。示例壳体和/或其表面可支持机械连接性,诸如推进硬件(例如,轮子、螺旋桨等)和/或铰接硬件(例如,机械臂、可枢转附件等)。在一些情况下,传感器可包括任何类型的输入设备,诸如用户接口硬件(例如,按键、开关、拨号盘、滑块等)。在一些情况下,示例壳体包括包含在其中、由其携载、嵌入其中和/或附接于其的输出设备。输出设备可包括显示器、触摸屏、灯、LED、扬声器、I/O端口(例如,USB)等。在一些情况下,边缘设备是为特定目的(例如,红绿灯)而呈现在网络中的设备,但是其可具有可用于其他目的的处理和/或其他能力。此类边缘设备可以独立于其他联网设备,并且可设置有具有适合其主要目的的形状因子的壳体;但它仍然是可用于不干扰其主要任务的其他计算任务。边缘设备包括物联网设备。装置计算设备可包括用于管理诸如设备温度、振动、资源利用率、更新、功率问题、物理和网络安全等之类的本地问题的硬件和软件组件。结合图7B描述用于实现装置计算设备的示例硬件。边缘云110还可以包括一个或多个服务器和/或一个或多个多租户服务器。此类服务器可以包括操作系统和虚拟计算环境。虚拟计算环境可包括用于管理(生成、部署、损毁等)一个或多个虚拟机、一个或多个容器等的管理程序。此类虚拟计算环境提供执行环境,在该执行环境中一个或多个应用和/或其他软件、代码或脚本可以在与一个或多个其他应用、软件、代码或脚本隔离的同时执行。
在图3中,(以移动设备、计算机、自主车辆、业务计算装备、工业处理装备的形式的)各种客户端端点310交换特定于端点网络聚合类型的请求和响应。例如,客户端端点310可以通过交换通过内部网络系统332的请求和响应322,经由有线宽带网络获得网络接入。一些客户端端点310(诸如移动计算设备)可以通过交换通过接入点(例如,蜂窝网络塔)334的请求和响应324,经由无线宽带网络获得网络接入。一些客户端端点310(诸如自主车辆)可通过街道定位网络系统336经由无线车辆网络获得请求和响应326的网络接入。然而,无论网络接入的类型如何,TSP可以在边缘云110内部署聚合点342、344来聚合通信量和请求。因此,在边缘云110内,TSP可以(诸如在边缘聚合节点340处)部署各种计算和存储资源以提供请求的内容。边缘聚合节点340和边缘云110的其他系统被连接至云或数据中心360,该云或数据中心360使用回程网络350来满足来自云/数据中心对网站、应用、数据库服务器等的更高等待时间请求。边缘聚合节点340和聚合点342、344的附加或合并的实例(包括部署在单个服务器框架上的那些实例)也可以存在于边缘云110或TSP基础设施的其他区域内。
图4示出了跨在多个边缘节点和多个租户之间操作的边缘计算系统的虚拟边缘配置的部署和编排。具体而言,图4描绘了边缘计算系统400中的第一边缘节点422和第二边缘节点424的协调,以满足对接入各种虚拟边缘实例的各种客户端端点410(例如,智慧城市/建筑系统、移动设备、计算设备、商业/物流系统、工业系统等)的请求和响应。在此,虚拟边缘实例432、434通过接入云/数据中心440(对网站、应用、数据库服务器等有更高等待时间请求)来提供边缘云中的边缘计算能力和处理。然而,边缘云能够协调多个租户或实体的多个边缘节点之间的处理。
在图4的示例中,这些虚拟边缘实例包括:提供给第一租户(租户1)的第一虚拟边缘432,该第一虚拟边缘432提供边缘存储、计算、和服务的第一组合;以及第二虚拟边缘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可以作为用于沿着租户边界对资源进行列队(marshalling)的安全性特征实施点来操作。
边缘计算节点可划分资源(存储器、中央处理单元(CPU)、图形处理单元(GPU)、中断控制器、输入/输出(I/O)控制器、存储器控制器、总线控制器等),其中,相应的分区可包含RoT能力,并且其中根据DICE模型的扇出和分层可进一步应用于边缘节点。由容器、FaaS引擎、小型服务程序、服务器、或其他计算抽象组成的云计算节点可以根据DICE分层和扇出结构进行分区,以支持每个节点的RoT上下文。因此,跨越设备410、422和440的相应的RoT可以协调分布式受信任计算基础(DTCB)的建立,使得可以建立端到端链接所有要素的租户专用的虚拟受信任安全信道。
此外,应当理解,容器可以具有保护其内容不受先前边缘节点影响的数据或工作负荷特定的密钥。作为容器迁移的一部分,源边缘节点处的舱(pod)控制器可以从目标边缘节点舱控制器获得迁移密钥,其中迁移密钥用于包裹容器特定的密钥。当容器/舱迁移到目标边缘节点时,解包裹密钥被暴露给舱控制器,然后舱控制器解密经包裹的密钥。密钥现在可用于对容器特定的数据执行操作。迁移功能可以由适当认证的边缘节点和舱管理器(如上所述)进行选通(gate)。
在进一步的示例中,边缘计算系统被扩展以通过在多所有者、多租户环境中使用容器(提供代码和所需依赖关系的被容纳的、可部署的软件单元)来提供多个应用的编排。多租户编排器可用于执行密钥管理、信任锚管理以及与图4中的受信任的‘片’概念的供应和生命周期相关的其他安全性功能。例如,边缘计算系统可被配置成用于满足来自多个虚拟边缘实例(以及,来自云或远程数据中心)的各种客户端端点的请求和响应。这些虚拟边缘实例的使用可以同时支持多个租户和多个应用(例如,增强现实(AR)/虚拟现实(VR)、企业应用、内容交付、游戏、计算迁移)。此外,虚拟边缘实例内可能存在多种类型的应用(例如,普通应用;等待时间敏感型应用;等待时间关键型应用;用户平面应用;联网应用等)。虚拟边缘实例还可以横跨处于不同地理位置的多个所有者的系统(或,由多个所有者共同拥有或共同管理的相应的计算系统和资源)。
例如,每个边缘节点422、424可以实现容器的使用,诸如使用提供一个或多个容器的组的容器“舱”426、428。在使用一个或多个容器舱的设置中,舱控制器或编排器负责舱中容器的本地控制和编排。根据每个容器的需要对为相应边缘片432、434提供的各种边缘节点资源(例如,存储、计算、服务,用六边形描绘)进行分区。
通过使用容器舱,舱控制器监督容器和资源的分区和分配。舱控制器从编排器(例如,编排器460)接收指令,该编排器指示控制器如何最佳地对物理资源进行分区以及在什么持续时间内,诸如通过基于SLA合同接收关键性能指标(KPI)目标。舱控制器确定哪个容器需要哪些资源以及需要多久,以完成工作负荷和满足SLA。舱控制器还管理容器生命周期操作,诸如:创建容器、为容器提供资源和应用、协调在分布式应用上一起工作的多个容器之间的中间结果、工作负荷完成时拆除容器等。此外,舱控制器可以充当安全角色,其阻止资源分配直到正确的租户验证,或阻止向容器提供数据或工作负荷直到满足认证结果。
此外,通过使用容器舱,租户边界仍然可以存在,但在容器的每一个舱的上下文中。如果每个租户特定的舱都有租户特定的舱控制器,则将有一个共享舱控制器,该共享舱控制器将合并资源分配请求,以避免典型的资源短缺情况。可提供进一步的控制,以确保舱和舱控制器的认证和可信。例如,编排器460可以向执行认证验证的本地舱控制器提供认证验证策略。如果认证满足第一租户舱控制器而不是第二租户舱控制器的策略,则第二舱可以迁移到确实满足该策略的不同边缘节点。或者,可以允许第一舱执行,并且在第二舱执行之前安装和调用不同的共享舱控制器。
图5示出了在边缘计算系统中部署容器的附加计算布置。作为简化示例,系统布置510、520描述了设置,其中舱控制器(例如,容器管理器511、521和容器编排器531)适于通过经由计算节点(布置510中的515)的执行来启动容器化舱、功能、和功能即服务实例,或适于通过经由计算节点(布置520中的523)的执行来单独地执行容器化虚拟化的网络功能。该布置适于在(使用计算节点537的)系统布置530中使用多个租户,其中容器化舱(例如,舱512)、功能(例如,功能513、VNF 522、VNF 536)、和功能即服务实例(例如,FaaS实例514)在专用于相应的租户的虚拟机(例如,用于租户532的VM 534、用于租户533的VM 535)内被启动(除了执行虚拟化网络功能)。该布置进一步适于在系统布置540中使用,该系统布置540提供容器542、543,或在计算节点544上执行各种功能、应用和功能,如由基于容器的编排系统541所协调。
图5中描绘的系统布置提供了在应用组成方面平等地对待VM、容器和功能的体系结构(并且得到的应用是这三种组成部分的组合)。每个组成部分可能涉及使用一个或多个加速器(FPGA、ASIC)组件作为本地后端。以此方式,应用可以在多个边缘所有者之间被分割,如由编排器进行协调。
在图5的上下文中,舱控制器/容器管理器、容器编排器和各个节点可以提供安全性实施点。然而,可以编排租户隔离,其中分配给一租户的资源与分配给第二租户的资源是不同的,但是边缘所有者合作以确保资源分配不跨租户边界被共享。或者,资源分配可以跨租户边界而被隔离,因为租户可以允许经由订阅或事务/合同基础的“使用”。在这些上下文中,边缘所有者可以使用虚拟化、容器化、飞地和硬件分区方案来强制执行租赁。其他隔离环境可包括:裸金属(专用)装备、虚拟机、容器、容器上的虚拟机或其组合。
在进一步的示例中,软件定义的或受控的硅硬件以及其他可配置的硬件的各方面可以与边缘计算系统的应用、功能、和服务整合。软件定义的硅可用于基于某一资源或硬件组成部分(例如,通过升级、重新配置或在硬件配置本身内提供新的特征)修复自身或工作负荷的一部分的能力、来确保该组成部分满足合同或服务级别协议的能力。
应当领会,本文讨论的边缘计算系统和布置可以可适用于涉及移动性的各种解决方案、服务和/或用例中。作为示例,图6示出涉及对实现边缘云110的边缘计算系统600中的应用的移动访问的简化的交通工具计算和通信用例。在该用例中,相应的客户端计算节点610可以被具体化为位于对应交通工具中的机载计算系统(例如,机载导航和/或信息娱乐系统),该机载计算系统在横越道路期间与边缘网关节点620通信。例如,边缘网关节点620可以位于路边机柜或被内置到具有其他分开的、机械公共设施的结构中的其他外壳中,路边机柜或其他外壳可以沿着道路、在道路的交叉路口处、或在道路附近的其他位置放置。当相应的交通工具沿着道路行驶时,其客户端计算节点610与特定边缘网关设备620之间的连接可以传播,以便为客户端计算节点610保持一致的连接和上下文。同样,移动边缘节点可以在高优先级服务处或根据(一个或多个)底层服务(例如,在无人机的情况下)的吞吐量或等待时间分辨率要求进行聚合。相应的边缘网关设备620包括一定量的处理和存储能力,并且由此,用于客户端计算节点610的一些数据处理和/或数据存储可以在边缘网关设备620中的一个或多个边缘网关设备上执行。
边缘网关设备620可以与一个或多个边缘资源节点640通信,这些边缘资源节点被说明性地具体化为位于通信基站642(例如,蜂窝网络的基站)处或在通信基站642(例如,蜂窝网络的基站)中的计算服务器、设备或组件。如上文所讨论,相应的边缘资源节点640包括一定量的处理和存储能力,并且由此,用于客户端计算节点610的一些数据处理和/或数据存储可以在边缘资源节点640上执行。例如,不太紧急或不太重要的数据处理可以由边缘资源节点640执行,而具有更高紧急性或重要性的数据处理可以由边缘网关设备620执行(例如,取决于每个组件的能力,或请求中指示紧急性或重要性的信息)。基于数据访问、数据位置或等待时间,当处理优先级在处理活动期间改变时,工作可在边缘资源节点上继续。同样,可配置的系统或硬件资源本身可以(例如,通过本地编排器)被激活,以提供附加的资源来满足新的需求(例如,使计算资源适配于工作负荷数据)。
(一个或多个)边缘资源节点640还与核心数据中心650通信,核心数据中心650可以包括位于中心位置(例如,蜂窝通信网络的中央局)中的计算服务器、装置和/或其他组件。核心数据中心650可以为由(一个或多个)边缘资源节点640和边缘网关设备620形成的边缘云110操作提供到全局网络云660(例如,因特网)的网关。附加地,在一些示例中,核心数据中心650可以包括一定量的处理和存储能力,并且由此,用于客户端计算设备的一些数据处理和/或数据存储(例如,低紧急性或重要性或高复杂性的处理)可以在核心数据中心650上执行。
边缘网关节点620或边缘资源节点640可以提供状态型的应用632和地理分布式数据库634的使用。虽然应用632和数据库634被图示为在边缘云110的层处横向地分布,但将理解,应用的资源、服务、或其他组件可以在整个边缘云中竖直地分布(包括,在客户端计算节点610处执行的应用的一部分,在边缘网关节点620或边缘资源节点640等处执行应用的其他部分)。附加地,如前所述,可以存在任何级别上的对等关系以满足服务目标和义务。进一步地,用于特定客户端或应用的数据可以基于变化的条件(例如,基于加速资源可用性、跟随汽车移动等)在边缘之间移动。例如,基于访问的“衰减率”,可以进行预测,以标识要继续的下一个所有方、或者数据或计算访问何时将不再可行。可以利用这些服务和其他服务来完成保持事务合规且无损所需的工作。
在进一步的场景中,容器636(或容器的舱)可以从边缘节点620灵活地迁移到其他边缘节点(例如,620、640等),使得具有应用和工作负荷的容器不需要被重组、重新编译、重新解释以迁移到工作中。但是,在此类设置中,可能应用一些补救或“混合”的转换操作。例如,节点640处的物理硬件可能不同于边缘网关节点620,因此,构成容器底部边缘的硬件抽象层(hardware abstraction layer,HAL)将被重新映射到目标边缘节点的物理层。这可能涉及某种形式的后期绑定技术,诸如HAL从容器原生格式到物理硬件格式的二进制转换,或者可能涉及映射接口和操作。舱控制器可用于驱动接口映射,作为容器生命周期的一部分,其中包括迁移到不同的硬件环境/从不同的硬件环境迁移。
图6所涵盖的场景可利用各种类型的移动边缘节点(诸如在交通工具(汽车/卡车/电车/火车)或其他移动单元中主控的边缘节点),因为边缘节点将沿主控它的平台移动到其他地理位置。在交通工具到交通工具通信的情况下,各个交通工具甚至可以充当用于其他汽车的网络边缘节点(例如,以执行缓存、报告、数据聚合等)。因此,将理解,在各种边缘节点中提供的应用组件可以按静态或移动设置分布,包括在各个端点设备或边缘网关节点620处的一些功能或操作、在边缘资源节点640处的一些其他功能或操作、以及在核心数据中心650或全局网络云660中的其他功能或操作之间的协调。
在进一步的配置中,边缘计算系统可以通过使用相应的可执行应用和功能来实现FaaS计算能力。在示例中,开发方编写表示一个或多个计算机功能的功能代码(例如,本文中的“计算机代码”),并且该功能代码被上传到由例如边缘节点或数据中心提供的FaaS平台。触发器(诸如例如,服务用例或边缘处理事件)利用FaaS平台发起对功能代码的执行。
在FaaS的示例中,容器用于提供在其中执行功能代码(例如,可由第三方提供的应用)的环境。容器可以是任何隔离执行的实体,诸如进程、Docker容器或Kubernetes容器、虚拟机等。在边缘计算系统内,各种数据中心、边缘、和端点(包括移动)设备被用于对按需缩放的功能“旋转加速(spin up)”(例如,激活和/或分配功能动作)。功能代码在物理基础设施(例如,边缘计算节点)设备和底层虚拟化容器上得到执行。最后,容器响应于执行被完成而在基础设施上被“旋转减速(spin down)”(例如,去激活和/或解除分配)。
FaaS的进一步的方面可以启用边缘功能以服务方式的部署,包括对支持边缘计算即服务(边缘即服务或“EaaS”)的相应功能的支持。FaaS的附加特征可包括:使客户(例如,计算机代码开发方)仅在其代码被执行时进行支付的细粒度计费组件;用于存储数据以供一个或多个功能重新使用的共用数据存储;各个功能之间的编排和管理;功能执行管理、并行性和合并;容器和功能存储器空间的管理;功能可用的加速资源的协调;以及功能在容器(包括已经部署或操作的“暖”容器,其相对于需要初始化、部署、或配置的“冷”容器)之间的分布。
边缘计算系统600可以包括边缘供应节点644或与边缘供应节点644通信。边缘供应节点644可以将诸如图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内或与联网电路系统(例如,在智能NIC中或增强型智能NIC中)集成、加速电路系统、存储设备或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)的部分,并可与计算电路系统702的处理器704、存储器706、和其他组件中的一个或多个一起被合并到计算电路系统702中。
一个或多个说明性数据存储设备710可被具体化为被配置成用于数据的短期或长期存储的任何类型的设备,诸如例如,存储器设备和电路、存储器卡、硬盘驱动器、固态驱动器、或其他数据存储设备。各个数据存储设备710可包括存储数据存储设备710的数据以及固件代码的系统分区。各个数据存储设备710还可以包括一个或多个操作系统分区,该操作系统分区根据例如计算节点700的类型来存储操作系统的数据文件和可执行文件。
通信电路系统712可被具体化为能够实现通过网络在计算电路系统702与另一计算设备(例如,实现的边缘计算系统的边缘网关)之间进行通信的任何通信电路、设备或其集合。通信电路系统712可以被配置成使用任何一种或多种通信技术(例如,有线或无线通信)和相关联的协议(例如,蜂窝联网协议(诸如3GPP 4G或5G标准)、无线局域网协议(诸如IEEE 802.11/)、无线广域网协议,以太网、/>蓝牙低能量、IoT协议(诸如IEEE802.15.4或/>)、低功率广域网(LPWAN)或低功率广域(LPWA)协议等)来实行此类通信。
说明性通信电路系统712包括网络接口控制器(NIC)720,其也可被称为主机结构接口(HFI)。NIC 720可被具体化为一个或多个插入式板、子卡、网络接口卡、控制器芯片、芯片组或可由计算节点700用来与另一计算设备(例如,边缘网关节点)连接的其他设备。在一些示例中,NIC 720可被具体化为包括一个或多个处理器的片上系统(SoC)的一部分,或NIC720可被包括在也包含一个或多个处理器的多芯片封装上。在一些示例中,NIC 720可包括均位于NIC 720本地的本地处理器(未示出)和/或本地存储器(未示出)。在此类示例中,NIC720的本地处理器可能能够执行本文中描述的计算电路系统702的功能中的一个或多个功能。附加地,或者可替代地,在此类示例中,NIC 720的本地存储器可以在板级、插座级、芯片级和/或其他层级上被集成到客户端计算节点的一个或多个组件中。
另外,在一些示例中,相应的计算节点700可以包括一个或多个外围设备714。取决于计算节点700的特定类型,此类外围设备714可包括在计算设备或服务器中发现的任何类型的外围设备,诸如音频输入设备、显示器、其他输入/输出设备、接口设备和/或其他外围设备。在进一步的示例中,计算节点700可以由相应的边缘计算节点(无论是客户端、网关或聚合节点)在边缘计算系统或类似形式的设备、计算机、子系统、电路系统或其他组件中来具体化。
在更详细的示例中,图7B图示出可以存在于边缘计算节点750中的组件的示例的框图,该组件用于实现本文所描述的技术(例如,操作、过程、方法和方法论)。该边缘计算节点750在被实现为计算设备(例如,移动设备、基站、服务器、网关等)或计算设备(例如,移动设备、基站、服务器、网关等)的一部分时提供节点700的相应组件的更靠近的视图。边缘计算节点750可以包括本文中所引用的硬件或逻辑组件的任何组合,并且该边缘计算节点750可以包括或耦合可用于边缘通信网络或此类网络的组合的任何设备。这些组件可被实现为集成电路(IC)、IC的部分、分立电子器件,或其他模块、指令集、可编程逻辑或算法、硬件、硬件加速器、软件、固件或其适用于边缘计算节点750中的组合,或作为以其他方式被并入在更大的系统的机架内的组件。
边缘计算节点750可包括处理器752形式的处理电路系统,该处理电路系统可以是微处理器、多核心处理器、多线程处理器、超低电压处理器、嵌入式处理器、xPU/DPU/IPU/NPU、专用处理单元、专门处理单元,或其他已知的处理元件。处理器752可以是片上系统(SoC)的部分,在该SoC中,处理器752和其他组件形成到单个集成电路或单个封装中,诸如,来自加利福尼亚州圣克拉拉市的英特尔公司的爱迪生TM(EdisonTM)或伽利略TM(GalileoTM)SoC板。作为示例,处理器752可包括基于体系结构酷睿TM(CoreTM)的CPU处理器(诸如QuarkTM、AtomTM、i3、i5、i7、i9或MCU级处理器)、或可从/>获得的另一此类处理器。然而,可使用任何数量的其他处理器,诸如,可从加利福尼亚州桑尼威尔市的超微半导体公司(/>)获得的处理器、来自加利福尼亚州桑尼威尔市的MIPS技术公司的基于/>的设计、许可自ARM控股有限公司的基于/>的设计,或从上述各公司的客户、被许可方或采纳方获得的处理器。处理器可包括诸如以下单元:来自/>公司的A5-A13处理器、来自/>技术公司的骁龙TM(SnapdragonTM)处理器或来自德州仪器公司的OMAPTM处理器。处理器752和伴随的电路系统可以以单插座形状因子、多插座形状因子或各种其他格式提供,包括采用有限的硬件配置或包括少于图7B中所示的所有元件的配置。
处理器752可通过互连756(例如,总线)来与系统存储器754通信。可使用任何数量的存储器设备来提供给定量的系统存储器。作为示例,存储器754可以是根据联合电子器件工程委员会(JEDEC)设计的随机存取存储器(RAM),诸如DDR或移动DDR标准(例如,LPDDR、LPDDR2、LPDDR3或LPDDR4)。在特定示例中,存储器组件可符合JEDEC颁布的DRAM标准,诸如DDR SDRAM的JESD79F、DDR2 SDRAM的JESD79-2F、DDR3 SDRAM的JESD79-3F、DDR4 SDRAM的JESD79-4A、低功率DDR(LPDDR)的JESD209、LPDDR2的JESD209-2、LPDDR3的JESD209-3和LPDDR4的JESD209-4。此类标准(和类似的标准)可被称为基于DDR的标准,而存储设备的实现此类标准的通信接口可被称为基于DDR的接口。在各种实现方式中,单独的存储器设备可以是任何数量的不同封装类型,诸如单管芯封装(SDP)、双管芯封装(DDP)或四管芯封装(Q17P)。在一些示例中,这些设备可以直接焊接到主板上,以提供较低轮廓的解决方案,而在其他示例中,设备被配置为一个或多个存储器模块,这些存储器模块进而通过给定的连接器耦合至主板。可使用任何数量的其他存储器实现方式,诸如其他类型的存储器模块,例如,不同种类的双列直插存储器模块(DIMM),包括但不限于microDIMM(微DIMM)或MiniDIMM(迷你DIMM)。
为了提供对信息(诸如数据、应用、操作系统等)的持久性存储,存储装置758还可经由互连756而耦合至处理器752。在示例中,存储装置758可经由固态盘驱动器(SSDD)来实现。可用于存储装置758的其他设备包括闪存卡(诸如安全数字(SD)卡、microSD卡、极限数字(xD)图片卡,等等)和通用串行总线(USB)闪存驱动器。在示例中,存储器设备可以是或者可以包括使用硫属化物玻璃的存储器设备、多阈值级别NAND闪存、NOR闪存、单级或多级相变存储器(PCM)、电阻式存储器、纳米线存储器、铁电晶体管随机存取存储器(FeTRAM)、反铁电存储器、包含忆阻器技术的磁阻随机存取存储器(MRAM)存储器、包括金属氧化物基底、氧空位基底和导电桥随机存取存储器(CB-RAM)的电阻式存储器、或自旋转移力矩(STT)-MRAM、基于自旋电子磁结存储器的设备、基于磁隧穿结(MTJ)的设备、基于DW(畴壁)和SOT(自旋轨道转移)的设备、基于晶闸管的存储器设备、或者任何上述或其他存储器的组合。
在低功率实现中,存储装置758可以是与处理器752相关联的管芯上存储器或寄存器。然而,在一些示例中,存储装置758可使用微硬盘驱动器(HDD)来实现。此外,附加于或替代所描述的技术,可将任何数量的新技术用于存储装置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可以是遵循IEEE 802.15.4或IEEE 802.15.4g标准等的低功率广域(LPWA)收发机。边缘计算节点750可使用由Semtech和LoRa联盟开发的LoRaWANTM(长距离广域网)在广域上通信。本文中描述的技术不限于这些技术,而使可与实现长距离、低带宽通信(诸如,Sigfox和其他技术)的任何数量的其他云收发机一起使用。进一步地,可使用其他通信技术,诸如在IEEE 802.15.4e规范中描述的时隙信道跳跃(time-slotted channel hopping)。
除了针对如本文中所描述的无线网络收发机766而提及的系统之外,还可使用任何数量的其他无线电通信和协议。例如,收发机766可包括使用扩展频谱(SPA/SAS)通信以实现高速通信的蜂窝收发机。进一步地,可使用任何数量的其他协议,诸如用于中速通信和供应网络通信的网络。收发机766可包括与任何数量的3GPP(第三代伙伴规划)规范(诸如在本公开的末尾处进一步详细讨论的长期演进(LTE)和第五代(5G)通信系统)兼容的无线电。网络接口控制器(NIC)768可被包括以提供到边缘云795的节点或到其他设备(诸如(例如,在网格中操作的)连接的边缘设备762)的有线通信。有线通信可提供以太网连接,或可基于其他类型的网络,诸如控制器区域网(CAN)、本地互连网(LIN)、设备网络(DeviceNet)、控制网络(ControlNet)、数据高速路+、现场总线(PROFIBUS)或工业以太网(PROFINET),等等。附加的NIC 768可被包括以实现到第二网络的连接,例如,第一NIC 768通过以太网提供到云的通信,并且第二NIC 768通过另一类型的网络提供到其他设备的通信。
鉴于从设备到另一组件或网络的适用通信类型的多样性,设备使用的适用通信电路可以包括组件764、766、768或770中的任何一个或多个或由组件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被安装在固定位置的示例中,该边缘计算节点750可具有耦合至电网的电源,或者电池可以用作备用或用于临时功能。电池776可以是锂离子电池、金属-空气电池(诸如锌-空气电池、铝-空气电池、锂-空气电池),等等。
电池监测器/充电器778可被包括在边缘计算节点750中以跟踪电池776(如果包括的话)的充电状态(SoCh)。电池监测器/充电器778可用于监测电池776的其他参数以提供失效预测,诸如电池776的健康状态(SoH)和功能状态(SoF)。电池监测器/充电器778可包括电池监测集成电路,诸如来自线性技术公司(Linear Technologies)的LTC4020或LTC2990、来自亚利桑那州的凤凰城的安森美半导体公司(ON Semiconductor)的ADT7488A、或来自德克萨斯州达拉斯的德州仪器公司的UCD90xxx族的IC。电池监测器/充电器778可通过互连756将关于电池776的信息传递至处理器752。电池监测器/充电器778也可包括使处理器752能够直接监测电池776的电压或从电池776流过的电流的模数(ADC)转换器。电池参数可被用于确定边缘计算节点750可执行的动作,诸如传输频率、网格网络操作、感测频率,等等。
功率块780或耦合至电网的其他电源可与电池监测器/充电器778耦合以对电池776充电。在一些示例中,功率块780可用无线功率接收机代替,以便例如通过边缘计算节点750中的环形天线来无线地获得功率。无线电池充电电路(诸如来自加利福尼亚州的苗比达市的线性技术公司的LTC4020芯片,等等)可被包括在电池监测器/充电器778中。可以基于电池776的尺寸并且因此基于所要求的电流来选择特定的充电电路。可使用由无线充电联盟(Airfuel Alliance)颁布的Airfuel标准、由无线电力协会(Wireless PowerConsortium)颁布的Qi无线充电标准、或由无线电力联盟(Alliance for Wireless Power)颁布的Rezence充电标准等等来执行充电。
存储装置758可包括用于实现本文中描述的技术的软件、固件或硬件命令形式的指令782。虽然此类指令782被示出为被包括在存储器754和存储装置758中的代码块,但是可以理解,可用例如被建立到专用集成电路(ASIC)中的硬连线电路替换代码块中的任一个。
在示例中,经由存储器754、存储装置758或处理器752提供的指令782可被具体化为非暂态机器可读介质760,该非暂态机器可读介质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中实现。
在进一步的示例中,机器可读介质也包括任何有形介质,该有形介质能够存储、编码或携载供由机器执行并且使机器执行本公开方法中的任何一种或多种方法的指令,或者该有形介质能够储存、编码或携载由此类指令利用或与此类指令相关联的数据结构。“机器可读介质”因此可包括但不限于固态存储器、光学介质和磁介质。机器可读介质的特定示例包括非易失性存储器,作为示例,包括但不限于:半导体存储器设备(例如,电可编程只读存储器(electrically programmable read-only memory,EPROM)、电可擦除可编程只读存储器(electrically erasable programmable read-only memory,EEPROM))和闪存存储器设备;诸如内部硬盘及可移除盘之类的磁盘;磁光盘;以及CD-ROM和DVD-ROM盘。可使用传输介质,经由网络接口设备,利用数个传输协议中的任何一种协议(例如,超文本传输协议(Hypertext Transfer Protocol,HTTP)),进一步通过通信网络来传送或接收由机器可读介质具体化的指令。
机器可读介质可以由能够以非暂态格式主控数据的存储设备或其他装置提供。在示例中,存储在机器可读介质上或以其他方式提供在机器可读介质上的信息可以表示指令,诸如指令本身或者可以从中导出指令的格式。可以从中导出指令的该格式可以包括源代码、经编码的指令(例如,以压缩或加密的形式)、经封装的指令(例如,分成多个封装)等。表示机器可读介质中的指令的信息可以由处理电路系统处理成指令以实现本文所讨论的任何操作。例如,从信息中导出指令(例如,由处理电路系统进行的处理)可以包括:(例如,从源代码、目标代码等)编译、解释、加载、组织(例如,动态地或静态地进行链接)、编码、解码、加密、解密、打包、拆包,或者以其他方式将信息操纵到指令中。
在示例中,指令的导出可以包括(例如,通过处理电路系统)对信息进行汇编、编译、或解释,以从机器可读介质提供的某个中间或预处理的格式创建指令。当信息以多个部分提供时,可以对其进行组合、拆包和修改以创建指令。例如,信息可以处于一个或若干个远程服务器上的多个经压缩的源代码封装(或目标代码、或二进制可执行代码等)中。源代码封装可以在通过网络传输时被加密,并且可以在本地机器处被解密、被解压缩、(如果必要的话)被汇编(例如,被链接),并且被编译或被解释(例如,被编译或被解释成库、独立的可执行文件等),并且由本地机器执行。
图7C图示出用于将软件分发至一个或多个设备的示例软件分发平台735,该软件诸如图7B的示例计算机可读指令782,该一个或多个设备诸如(一个或多个)示例处理器平台725和/或图3的示例连接的边缘设备310。示例软件分发平台735可以由能够存储软件并将软件传送到其他计算设备(例如,第三方、图3的示例连接的边缘设备310)的任何计算机服务器、数据设施、云服务等来实现。示例连接的边缘设备可以是客户方、客户端、管理设备(例如,服务器)、第三方(例如,拥有和/或操作软件分发平台735的实体的客户方)。示例连接的边缘设备可在商业和/或家庭自动环境中操作。在一些示例中,第三方是诸如图7B的示例计算机可读指令782之类的软件的开发方、销售方和/或许可方。第三方可以是购买和/或许可软件以用于使用和/或转售和/或分许可的消费方、用户、零售商、OEM等。在一些示例中,所分发的软件引起一个或多个用户界面(user interface,UI)和/或图形用户界面(graphical user interface,GUI)的显示,以标识地理上和/或逻辑上彼此分离的一个或多个设备(例如,连接的边缘设备)(例如,被特许负责配水控制的物理上分离的IoT设备(例如,泵)、被特许负责配电控制的物理上分离的IoT设备(例如,继电器)等)。
在图7C的所图示示例中,软件分发平台735包括一个或多个服务器以及一个或多个存储设备。存储设备存储可与如上所述的示例计算机可读指令相对应的计算机可读指令782。示例软件分发平台735的一个或多个服务器与网络730通信,该网络730可以对应于因特网和/或上文所述示例网络中的任何网络中的任何一者或多者。在一些示例中,作为商业事务的一部分,一个或多个服务器响应于请求而将软件传送到请求方。可以由软件分发平台的一个或多个服务器和/或经由第三方支付实体来处置针对软件的交付、销售、和/或许可的支付。服务器使购买方和/或许可方能够从软件分发平台735下载计算机可读指令782。例如,软件(其可与示例计算机可读指令相对应)可被下载到(一个或多个)示例处理器平台725(例如,示例连接的边缘设备),该(一个或多个)示例处理器平台725用于执行计算机可读指令782以实现基于内容分区的沉浸式媒体实时通信。在一些示例中,软件分发平台735的一个或多个服务器通信地连接至一个或多个安全域和/或安全设备,示例计算机可读指令782的请求和传送必须穿过该一个或多个安全域和/或安全设备。在一些示例中,软件分发平台735的一个或多个服务器周期性地提供、传送和/或强制进行软件(例如,图7B的示例计算机可读指令782)更新以确保改善、补丁、更新等被分发并应用于终端用户设备处的软件。
在图7C的所图示示例中,计算机可读指令782以特定的格式被存储在软件分发平台735的存储设备上。计算机可读指令的格式包括但不限于,特定的代码语言(例如,Java、JavaScript、Python、C、C#、SQL、HTML等)和/或特定的代码状态(例如,未经编译的代码(例如,ASCII)、经解释的代码、链接的代码、可执行代码(例如,二进制文件)等)。在一些示例中,软件分发平台735中所存储的计算机可读指令782在被传送至(一个或多个)示例处理器平台725时采用第一格式。在一些示例中,第一格式是特定类型的(一个或多个)处理器平台725可以按其来执行的可执行二进制文件。然而,在一些示例中,第一格式是未经编译的代码,其要求一个或多个准备任务将第一格式转换为第二格式以使得能够在(一个或多个)示例处理器平台725上执行。例如,(一个或多个)接收处理器平台725可能需要对采用第一格式的计算机可读指令782进行编译,以生成能够在(一个或多个)处理器平台725上执行的采用第二格式的可执行代码。在另外的其他示例中,第一格式是经解释的代码,其在到达(一个或多个)处理器平台725后由解释器进行解释以促进指令的执行。
图8图示出媒体内容交付的通用模型800的示例。媒体内容交付的通用模型可包括生成和创建媒体内容的媒体生产者805。媒体内容可包括3D点云构建、360度(环绕)视频的视图拼接等。媒体消费者810是接收和消费内容的实体。媒体消费者810可以是将诸如视频之类的媒体内容渲染到屏幕上的设备(例如,智能手机、平板电脑等)。在示例中,媒体消费者810可以是运行视频分析、显示视频等的终端PC。网络中继815可以是链式分层的服务器网络。网络中继815可以是内容交付网络(CDN),其是基于超文本传输协议(hypertexttransport protocol,HTTP)的网络中继815服务器的网络,但通常不适合实时媒体交付。实时媒体交付通常基于通过用户数据报协议(user datagram protocol,UDP)的实时传输协议(real-time transport protocol,RTP)。实时网络中继815服务器的集合也被称为RTC云。
随着沉浸式媒体(immersive media,XR)的出现和发展,除了图8所示的通用模型800外,还有交付媒体内容所需的新要求。例如,媒体消费者810可能只需要媒体生产者805已生成的内容中的部分/一些内容,并且可能需要实时传输。在示例中,媒体消费者810可能只需要代表媒体内容的感兴趣区域或放大部分的内容。此类内容可在媒体消费者810预期的时间内交付,以便创造沉浸式体验。在示例中,网络中继815服务器与媒体消费者810之间可能存在数据交换/交互。这种交换可以使用可由RTP/RTCP对实现的双向传输来完成。因此,从端到端的体系结构需要新的更改。
图9图示出媒体内容交付的通用模型900中的中继服务器中对内容进行转码的示例。在示例中,转码925组件、模块等可被添加到网络中继服务器915的一个或多个中继服务器。转码组件可以将可以是媒体内容的帧920的输入内容(例如,来自媒体生产者905的内容)转换为输出内容(例如,来自网络中继服务器915的内容)。在示例中,输出内容可以是输入帧920的感兴趣区域(region of interest,ROI)930(例如,基于视点坐标等)。媒体消费者910可向网络中继服务器915提供反馈。在示例中,反馈可能是头戴式显示器(head-mounted display,HMD)视点坐标。在转码过程期间,内容可被解码、选择和重新编码。图9中所示的这一实现方式是计算密集型过程,其可以使用配备高端GPU的网络中继服务器915。附加地,网络中继服务器915可能了解媒体内容和使用的域。
图10图示出网络中继服务器1015中空间分区内容的示例选择1000。如图10所示,另一个可能的实现方式是媒体生产者1005在将内容发送到网络中继服务器1015之前生成空间分区内容并对空间分区内容进行编码。在示例中,媒体内容可被划分为网络中继服务器1015不必转码(例如,解码和编码)的片1020。此类实现方式可节省网络中继服务器1015的时间和资源,但内容的选择逻辑1025与媒体内容和媒体域知识紧密耦合。例如,感兴趣区域坐标(例如,360视频中的俯仰、横摆和滚动)可被映射到二维片1030,以供将内容交付给媒体消费者1010。此外,网络中继服务器1015能够解析有效载荷(例如,媒体编解码器、特定头部、分区结构等)。此外,允许此类基于片编码的编解码器可使用特殊编码。因此,图9和图10所示的方法在有效载荷被加密时可能无法使用,因为不允许解析或解码。
图11图示出基于分组滤波器的中继服务器用于交付内容区域。图11所示的示例为图9和图10所示的示例提供了更通用且更灵活的实现方式。在图11的示例中,媒体属性是在媒体生产者1105与媒体消费者1110之间经由会话描述协议(session descriptionprotocol,SDP)使用信令服务器1135协商的。在示例中,媒体生产者1105与媒体消费者1110可以在会话启动阶段期间协商编解码器和分区布局信息(例如,片的列和/或行)。在此类示例中,网络中继服务器1115不需要特定于媒体的知识。
在示例中,内容结构(例如,区域、片等)可被反映在传输协议头部或网络分组中。当媒体生产者1105封装将区域编码为传输分组1120时,它可在头部字段中表示感兴趣区域标识符。然后,媒体消费者1110可以基于应用逻辑计算从其坐标到感兴趣区域标识符的映射,并将预期的区域标识符传递给网络中继服务器1115。这个过程可以与其他实现方式区分开来,因为其他实现方式将坐标传递给网络中继服务器1115,并让网络中继服务器1115计算到感兴趣区域标识符的映射坐标。在图11所示的实现方式中,感兴趣区域标识符可以由网络中继服务器或服务中的简单通用分组滤波器1125组成。与此同时,分组滤波器与媒体内容的区域滤波器一样有效。在此类示例中,网络中继服务器1115可以基于(来自图11中的第三的)来自媒体消费者1110的预期感兴趣区域标识符选择分组1130,并在(来自图11中的第一的)传入分组1120中编码感兴趣区域标识符。
此实现方式解决上述问题。图11的实现方式明确区分媒体实体与网络实体。网络中继服务器中的分组滤波器1125是通用且可扩展的。系统可以被实现为当前RTC的扩展作为服务,其支持各种XR用例。此外,图11的实现方式也可适用于诸如SRTP之类的安全通道(因为SRTP头部未加密)。媒体生产者1105和媒体消费者1110可以基于他们协商的信息来处置媒体相关的计算。
此外,网络中继服务器1115中的RTC服务可具有向后兼容性。因此,网络中继服务器1115可支持传统的全内容传输(如图8所示),因为它没有特定的滤波器。此实现方式可适用于RTP和其他实时传输协议。
图12图示出媒体内容的内容分区1200的示例。现代视频编解码器(例如,HEVC、AV1、AVI和VVC)支持将图片划分为小的独立矩形区域、切片、片等,其可以通过将每个分区指派给不同的CPU处理核心来实现图片中的并行编码。分区编码显著降低了计算复杂性和编码等待时间。此类分区编码方法广泛用于2.5D(例如,具有提供三维的表现的感知效果的二维)或3D数据的沉浸式媒体(VR/AR/MR)。例如,运动图像专家组(motion pictureexperts group,MPEG)全向媒体应用格式(omnidirectional media application format,OMAF)被指定为基于片的依赖视口的360度视频流实现方式,该实现方式使网络中继服务器能够将媒体消费者/用户视口内的部分内容传输到客户端设备。
在示例中,该媒体结构/信息可与网络中继服务器(或服务)隔离。媒体生产者和媒体消费者可了解感兴趣区域(region of interest,ROI)1215的媒体内容分区结构(例如,片总数、列号、行号等),这些结构可以在会话开始时通过SDP进行传达和协商。媒体内容(2D帧或3D帧)的分区属性可以简单地描述为:1)列数1205;2)行数1210;3)每个列1205或行1210的大小。媒体内容的分区属性的更复杂属性也可被包括。
这三个属性可与视频编解码器中定义的属性一致,并且足以用于广泛的沉浸式媒体应用。在示例中,这些属性可被添加到SDP通信和协商中,作为媒体描述中媒体格式的扩展。例如,图12的图像的媒体信息可以在SDP中定义,如表1所示。
表1
在示例中,内容分区的规范可以是定义为“a=布局”的附加属性行。
在示例中,内容分区的语法可以如表2所示。
表2
在示例中,图12中的根据3x3布局分区在SDP中添加的分区属性可以如表3所示。
表3
在表3中,第三行包含表示图12中的图像上的分区信息的属性。a-布局参数中的文本“3 3”指的是三列和三行,“1280/1280/1280”指的是每列的大小(以像素数为单位),并且“2560/2560/2560”指的是每行的大小(以像素数为单位)。利用该信息,媒体消费者可以直接从网络中继服务器计算和请求所需的区域。网络中继服务器不必理解此内容分区,只要(一个或多个)区域标识符被嵌入到分组结构中,仍然可以交付适当的内容(分组)。
图13图示出基于实时传输协议有效载荷格式的分区1300的示例。在示例中,内容分区信息可被添加到RTP流中,并且可以使网络中继服务器能够基于内容分区结构来选择适当的内容分区分段而无需解析有效载荷。因此,RTP传输分组头部1305可被扩展为携载分区信息,以使应用能够使用传输协议实现媒体片/切片感知而无需附加信令或计算开销。网络服务器上的RTP转发服务可能与编解码器无关,并且可适用于任何图片分区方案,诸如切片、片等。因此,可以启用基于分区的RTP分组滤波器,该滤波器可以在不解析有效载荷内容的情况下分发和路由有效载荷内容。
在图13中所示的基于分区的RTP有效载荷格式示例中,分区n数据1320是片/切片的有效载荷数据。分区结构描述符1310描述图片中每个分区(例如,每个片/切片)的偏移量和分辨率以及优先级。分区描述符1315可以描述分区,并在图15中进行了更详细的描述。
图14图示出扩展RTP头部内的分区结构描述符1400的示例。在示例中,分区结构描述符1400可包含诸如区域标识符、分区数量、x偏移量1405、y偏移量1410、图片或图片部分的宽度1415和高度1420之类的信息,以及有关优先级级别的信息。
图15图示出分区描述符1500的示例。分区描述符1500可被包括在扩展的RTP头部中,如图13所示。在示例中,分区描述符1500可包括分区ID 1515,其可以是标识图片中分区的唯一标识符。分区描述符1500可进一步包括类型1520,其可以是相互预测或内部预测分区。分区描述符1500还可包括区域标识符1505、分区的长度1510和优先级级别(prioritylevel,PRI)1525。PRI 1525可以是应用根据诸如分区质量(例如,高质量、低质量等、图片中的位置等)之类的因素设置的优先级级别。在示例中,PRI 1525可以用作不同服务质量(quality of service,QoS)要求、策略等的RTP中继的提示。在示例中,分区描述符1500可以作为会话描述协议(session description protocol,SDP)信令进行带内传输,也可以用于每组图片进行带外传输。因此,分区描述符1500可以描述利用每个RTP分组发送的特定分区。
图16是端到端内容分区感知RTP流的数据流1600的示例的数据流图。在示例中,一个或多个运动约束片集(motion constraint tile set,MCTS)(例如,高质量MCTS1605A和低质量MCTS1605B)可以打包为比特流1610并发送到基于分区的RTP分组器1615。基于分区的RTP分组可被发送到网络中继服务器1620,其可包含RTP分组接收器1625来接收RTP分组并将RTP分组发送到分组滤波器1630。分组滤波器1630和一个或多个媒体消费者(例如,媒体消费者1635A、媒体消费者1635B和媒体消费者1635C)可以交换诸如每个分区的分区标识符之类的信息。在示例中,媒体消费者与分组滤波器1630之间交换的分区标识符可以为每个会话对通用滤波器进行编写、生成、创建等。因此,网络中继服务器1620不必对特定于内容或特定于媒体的信息进行了解等。在示例中,分区标识符可以描述媒体内容的区域(例如,感兴趣区域等)、媒体内容的分段(例如,视频帧子集等)、媒体内容的空间分区、媒体内容的片或媒体内容的切片。
分组滤波器1630可将经滤波RTP分组发送到网络中继服务器1620上的QoS策略服务器1645、组件等。QoS策略服务器1645可以确定经滤波RTP分组是否满足QoS策略的要求。然后,经滤波RTP分组可被发送、传送等到RTP分组发送器1640,RTP分组发送器1640可将部分内容发送给媒体消费者。在示例中,部分内容可被发送给不同的媒体消费者(例如,部分内容1可被发送给媒体消费者1635A,部分内容2可被发送给媒体消费者1635B,而部分内容3可被发送给媒体消费者1635C。每个媒体消费者可能是不同的媒体消费者。这允许在不解析有效载荷分组的情况下交付选择性内容。
图17图示出运动图像专家组(MPEG)视频编码1700的示例。在示例中,本公开可以提供具有特定结构(例如,内容中的分区)的大量内容的选择性传输。这可允许在传输层中应用选择性滤波器,以便经由接口1725将沉浸式媒体内容的适当、期望等部分传输给媒体消费者。因此,本文所述技术可被应用于一个传输通道中具有复用数据流的大量内容(例如,MPEG机器视频编码(video coding for machine,VCM))。
在图17所示的示例中,VCM编码器1705可从传感器输出1730等接收媒体内容数据。AI分析数据(图17中的“特征”)可被提取1740、转换1745和/或编码1750,然后与视频编码1735多路复用或复用1710为比特流1755。然后,经编码比特流1755可被传送到接收器侧(VCM解码器1715),其中解复用1720操作可以将视频内容拆分为经解码视频1760并且将AI特征拆分为经解码特征1765。经解码视频1760可用于人类视觉1770并且经解码特征可用于机器视觉1775。传输可携载所有数据流,虽然接收器/解码器可能不需要所有AI特征数据。因此,当AI特征量更大时,传输的带宽将增加。使用上述基于内容分区的RTC,多路复用器或复用器1710可以与选择性滤波器(诸如图16中的分组滤波器1630)结合使用,并基于接收器/解码器请求实时生成多路复用传输比特流1755。
图18是根据实施例的基于内容分区的沉浸式媒体实时通信方法1800的示例的流程图。方法1800可以提供如图8-图17中所描述的特征。
媒体生产者与媒体消费者之间可以协商媒体内容的属性(例如,在操作1805处)。在示例中,媒体生产者与媒体消费者之间可启动会话描述协议(SDP)通信。可以标识与媒体生产者和媒体消费者兼容的编解码器。可以标识与媒体生产者和媒体消费者兼容的内容分区布局,并且编解码器和内容分区布局可以经由SDP通信传送给媒体生产者和媒体消费者。在示例中,媒体内容可以是根据运动图像专家组(MPEG)格式的视频内容。可以基于协商来确定媒体内容的内容结构(例如,在操作1810处)。在示例中,内容结构可包括媒体内容的区域或代表媒体内容的区域的片。在示例中,空间分区沉浸式媒体内容是三维视频内容、虚拟现实内容、增强现实内容或感知增强的二维视频内容。
可以创建网络分组(例如,在操作1815处)。网络分组可包括与编码到网络分组的传输协议头部中的所确定内容结构相对应的信息。在示例中,传输协议头部可包括媒体内容的区域或代表媒体内容的区域的片的标识符。在另一个示例中,传输协议头部可包括分区描述符。分区描述符可包括分区标识符、媒体内容的分区的类型以及分区的优先级级别。在又另一个示例中,传输协议头部可包括分区结构描述符。分区结构描述符可包括媒体内容的分区的第一轴偏移量、第二轴偏移量、宽度和高度。
在示例中,网络分组可被传送到网络中继服务器。在示例中,网络分组可以是实时传输协议(real-time transport protocol,RTP)分组。在示例中,可以基于内容结构从媒体内容中提取特征,并且可以对特征进行编码以包含在网络分组中。在示例中,网络中继服务器可以是在与边缘计算网络通信的边缘节点上执行的服务器设备、虚拟网络功能、微服务或软件组件。
网络分组可以使用从媒体消费者接收的分区标识符进行滤波,以产生经滤波媒体内容(例如,在操作1820处)。在示例中,分区标识符可以描述媒体内容的区域(例如,感兴趣区域等)、媒体内容的分段(例如,视频帧子集等)、媒体内容的空间分区、媒体内容的片或媒体内容的切片。在示例中,可以使用属性和内容结构选择媒体内容的分区。可以取回与分区相关联的媒体内容的部分的媒体片段,并且经滤波媒体内容可包括媒体内容的部分的媒体片段。在示例中,媒体消费者与分组滤波器之间交换的分区标识符可以为每个会话对通用滤波器进行编写、生成、创建等。因此,网络中继服务器不必对特定于内容或特定于媒体的信息进行了解等。
经滤波媒体内容可被传送给媒体消费者(例如,在操作1825处)。在示例中,经滤波媒体内容的经编码视频内容和经编码特征可被多路复用成经编码比特流,并且经编码比特流可被传送给媒体消费者。在示例中,经编码特征可以定义用于使用机器视觉解释媒体内容的视频元素。
附加注释和示例
示例1是一种用于选择性地传输空间分区沉浸式媒体内容的系统,包括:至少一个处理器;以及包括指令的存储器,该指令当由至少一个处理器执行时,使得至少一个处理器执行操作以:经由信令服务在媒体生产者与媒体消费者之间对媒体内容的属性进行协商;基于协商来确定媒体内容的内容结构;创建网络分组,网络分组包括与编码到网络分组的传输协议头部中的所确定内容结构相对应的信息;使用从媒体消费者接收的分区标识符对网络分组进行滤波以产生经滤波媒体内容;以及将经滤波媒体内容传送给媒体消费者。
在示例2中,示例1的主题包括主题,其中分区标识符可以描述媒体内容的区域、媒体内容的分段、媒体内容的空间分区、媒体内容的片或媒体内容的切片。
在示例3中,示例1-2的主题包括主题,其中,用于在媒体生产者与媒体消费者之间对媒体内容的属性进行协商的指令进一步包括指令,该指令当由至少一个处理器执行时,使得至少一个处理器执行操作以:经由信令服务启动媒体生产者与媒体消费者之间的会话描述协议(SDP)通信会话;标识与媒体生产者和媒体消费者兼容的编解码器;标识与媒体生产者和媒体消费者兼容的内容分区布局;以及经由SDP通信会话将编解码器和内容分区布局的信息传送给媒体生产者和媒体消费者。
在示例4中,示例1-3的主题包括主题,其中内容结构包括媒体内容的区域或代表媒体内容的区域的片。
在示例5中,示例4的主题包括主题,其中传输协议头部包括媒体内容的区域或代表媒体内容的区域的片的标识符。
在示例6中,示例1-5的主题包括主题,其中网络分组是实时传输协议(RTP)分组。
在示例7中,示例1-6的主题包括主题,其中传输协议头部包括分区描述符,分区描述符包括分区标识符、媒体内容的分区的类型和分区的优先级级别。
在示例8中,示例1-7的主题包括主题,其中传输协议头部包括分区结构描述符,分区结构描述符包括媒体内容的分区的第一轴偏移量、第二轴偏移量、宽度和高度。
在示例9中,示例1-8的主题包括,存储器进一步包括指令,该指令当由至少一个处理器执行时,使得至少一个处理器执行操作以:基于内容结构从媒体内容中提取特征;以及对特征进行编码以供包含在网络分组中。
在示例10中,示例9的主题包括主题,其中用于将经滤波媒体内容传送给媒体消费者的指令进一步包括指令,该指令当由至少一个处理器执行时,使得至少一个处理器执行操作以:将经滤波媒体内容的经编码视频内容和经编码特征多路复用成经编码比特流;以及将经编码比特流传送给媒体消费者。
在示例11中,示例10的主题包括主题,其中经编码特征用于计算设备对媒体内容的自动解释。
在示例12中,示例1-11的主题包括主题,其中用于对网络分组进行滤波以产生经滤波媒体内容的指令进一步包括指令,该指令当由至少一个处理器执行时,使得至少一个处理器执行操作以:使用属性和内容结构选择媒体内容的分区;以及取回与分区相关联的媒体内容的部分的媒体片段,其中经滤波媒体内容包括媒体内容的部分的媒体片段。
在示例13中,示例1-12的主题包括主题,其中分组由与边缘计算网络通信的边缘节点上执行的服务器设备、虚拟网络功能、微服务或软件组件提供的网络中继服务器进行滤波。
在示例14中,示例1-13的主题包括主题,其中媒体内容是根据运动图像专家组(MPEG)格式的视频内容。
在示例15中,示例1-14的主题包括主题,其中空间分区沉浸式媒体内容是三维视频内容、虚拟现实内容、增强现实内容或感知增强的二维视频内容。
示例16是至少一种非暂态机器可读介质,包括用于选择性地传输空间分区沉浸式媒体内容的指令,该指令当由至少一个处理器执行时,使得该至少一个处理器用于执行操作以:经由信令服务在媒体生产者与媒体消费者之间对媒体内容的属性进行协商;基于协商来确定媒体内容的内容结构;创建网络分组,网络分组包括与编码到网络分组的传输协议头部中的所确定内容结构相对应的信息;使用从媒体消费者接收的分区标识符对网络分组进行滤波以产生经滤波媒体内容;以及将经滤波媒体内容传送给媒体消费者。
在示例17中,示例16的主题包括主题,其中分区标识符可以描述媒体内容的区域、媒体内容的分段、媒体内容的空间分区、媒体内容的片或媒体内容的切片。
在示例18中,示例16-17的主题包括主题,其中,用于在媒体生产者与媒体消费者之间对媒体内容的属性进行协商的指令进一步包括指令,该指令当由至少一个处理器执行时,使得至少一个处理器执行操作以:经由信令服务启动媒体生产者与媒体消费者之间的会话描述协议(SDP)通信会话;标识与媒体生产者和媒体消费者兼容的编解码器;标识与媒体生产者和媒体消费者兼容的内容分区布局;以及经由SDP通信会话将编解码器和内容分区布局的信息传送给媒体生产者和媒体消费者。
在示例19中,示例16-18的主题包括主题,其中内容结构包括媒体内容的区域或代表媒体内容的区域的片。
在示例20中,示例19的主题包括主题,其中传输协议头部包括媒体内容的区域或代表媒体内容的区域的片的标识符。
在示例21中,示例16-20的主题包括主题,其中网络分组是实时传输协议(RTP)分组。
在示例22中,示例16-21的主题包括主题,其中传输协议头部包括分区描述符,分区描述符包括分区标识符、媒体内容的分区的类型和分区的优先级级别。
在示例23中,示例16-22的主题包括主题,其中传输协议头部包括分区结构描述符,分区结构描述符包括媒体内容的分区的第一轴偏移量、第二轴偏移量、宽度和高度。
在示例24中,示例16-23的主题包括,该指令当由至少一个处理器执行时,使得至少一个处理器执行操作以:基于内容结构从媒体内容中提取特征;以及对特征进行编码以供包含在网络分组中。
在示例25中,示例24的主题包括主题,其中用于将经滤波媒体内容传送给媒体消费者的指令进一步包括指令,该指令当由至少一个处理器执行时,使得至少一个处理器执行操作以:将经滤波媒体内容的经编码视频内容和经编码特征多路复用成经编码比特流;以及将经编码比特流传送给媒体消费者。
在示例26中,示例25的主题包括主题,其中经编码特征用于计算设备对媒体内容的自动解释。
在示例27中,示例16-26的主题包括主题,其中用于对网络分组进行滤波以产生经滤波媒体内容的指令进一步包括指令,该指令当由至少一个处理器执行时,使得至少一个处理器执行操作以:使用属性和内容结构选择媒体内容的分区;以及取回与分区相关联的媒体内容的部分的媒体片段,其中经滤波媒体内容包括媒体内容的部分的媒体片段。
在示例28中,示例16-27的主题包括主题,其中分组由与边缘计算网络通信的边缘节点上执行的服务器设备、虚拟网络功能、微服务或软件组件提供的网络中继服务器进行滤波。
在示例29中,示例16-28的主题包括主题,其中媒体内容是根据运动图像专家组(MPEG)格式的视频内容。
在示例30中,示例16-29的主题包括主题,其中空间分区沉浸式媒体内容是三维视频内容、虚拟现实内容、增强现实内容或感知增强的二维视频内容。
示例31是一种用于选择性地传输空间分区沉浸式媒体内容的方法,包括:经由信令服务在媒体生产者与媒体消费者之间对媒体内容的属性进行协商;基于协商来确定媒体内容的内容结构;创建网络分组,网络分组包括与编码到网络分组的传输协议头部中的所确定内容结构相对应的信息;使用从媒体消费者接收的分区标识符对网络分组进行滤波以产生经滤波媒体内容;以及将经滤波媒体内容传送给媒体消费者。
在示例32中,示例31的主题包括主题,其中分区标识符可以描述媒体内容的区域、媒体内容的分段、媒体内容的空间分区、媒体内容的片或媒体内容的切片。
在示例33中,示例31-32的主题包括主题,其中,在媒体生产者与媒体消费者之间对媒体内容的属性进行协商进一步包括:经由信令服务启动媒体生产者与媒体消费者之间的会话描述协议(SDP)通信会话;标识与媒体生产者和媒体消费者兼容的编解码器;标识与媒体生产者和媒体消费者兼容的内容分区布局;以及经由SDP通信会话将编解码器和内容分区布局的信息传送给媒体生产者和媒体消费者。
在示例34中,示例31-33的主题包括主题,其中内容结构包括媒体内容的区域或代表媒体内容的区域的片。
在示例35中,示例34的主题包括主题,其中传输协议头部包括媒体内容的区域或代表媒体内容的区域的片的标识符。
在示例36中,示例31-35的主题包括主题,其中网络分组是实时传输协议(RTP)分组。
在示例37中,示例31-36的主题包括主题,其中传输协议头部包括分区描述符,分区描述符包括分区标识符、媒体内容的分区的类型和分区的优先级级别。
在示例38中,示例31-37的主题包括主题,其中传输协议头部包括分区结构描述符,分区结构描述符包括媒体内容的分区的第一轴偏移量、第二轴偏移量、宽度和高度。
在示例39中,示例31-38的主题包括,基于内容结构从媒体内容中提取特征;以及对特征进行编码以供包含在网络分组中。
在示例40中,示例39的主题包括主题,其中将经滤波媒体内容传送给媒体消费者进一步包括:将经滤波媒体内容的经编码视频内容和经编码特征多路复用成经编码比特流;以及将经编码比特流传送给媒体消费者。
在示例41中,示例40的主题包括主题,其中经编码特征用于计算设备对媒体内容的自动解释。
在示例42中,示例31-41的主题包括主题,其中对网络分组进行滤波以产生经滤波媒体内容进一步包括:使用属性和内容结构选择媒体内容的分区;以及取回与分区相关联的媒体内容的部分的媒体片段,其中经滤波媒体内容包括媒体内容的部分的媒体片段。
在示例43中,示例31-42的主题包括主题,其中分组由与边缘计算网络通信的边缘节点上执行的服务器设备、虚拟网络功能、微服务或软件组件提供的网络中继服务器进行滤波。
在示例44中,示例31-43的主题包括主题,其中媒体内容是根据运动图像专家组(MPEG)格式的视频内容。
在示例45中,示例31-44的主题包括主题,其中空间分区沉浸式媒体内容是三维视频内容、虚拟现实内容、增强现实内容或感知增强的二维视频内容。
示例46是至少一种机器可读介质,其包括指令,该指令当被机器执行时,使机器执行示例31-45中的任一方法。
示例47是一种包括用于执行示例31-45中的任一方法的装置的系统。
示例48是一种用于选择性地传输空间分区沉浸式媒体内容的系统,包括:用于经由信令服务在媒体生产者与媒体消费者之间对媒体内容的属性进行协商的装置;用于基于协商来确定媒体内容的内容结构的装置;用于创建网络分组的装置,网络分组包括与编码到网络分组的传输协议头部中的所确定内容结构相对应的信息;用于使用从媒体消费者接收的分区标识符对网络分组进行滤波以产生经滤波媒体内容的装置;以及用于将经滤波媒体内容传送给媒体消费者的装置。
在示例49中,示例48的主题包括主题,其中分区标识符可以描述媒体内容的区域、媒体内容的分段、媒体内容的空间分区、媒体内容的片或媒体内容的切片。
在示例50中,示例48-49的主题包括主题,其中,用于在媒体生产者与媒体消费者之间对媒体内容的属性进行协商的装置进一步包括:用于经由信令服务启动媒体生产者与媒体消费者之间的会话描述协议(SDP)通信会话的装置;用于标识与媒体生产者和媒体消费者兼容的编解码器的装置;用于标识与媒体生产者和媒体消费者兼容的内容分区布局的装置;以及用于经由SDP通信会话将编解码器和内容分区布局的信息传送给媒体生产者和媒体消费者的装置。
在示例51中,示例48-50的主题包括主题,其中内容结构包括媒体内容的区域或代表媒体内容的区域的片。
在示例52中,示例51的主题包括主题,其中传输协议头部包括媒体内容的区域或代表媒体内容的区域的片的标识符。
在示例53中,示例48-52的主题包括主题,其中网络分组是实时传输协议(RTP)分组。
在示例54中,示例48-53的主题包括主题,其中传输协议头部包括分区描述符,分区描述符包括分区标识符、媒体内容的分区的类型和分区的优先级级别。
在示例55中,示例48-54的主题包括主题,其中传输协议头部包括分区结构描述符,分区结构描述符包括媒体内容的分区的第一轴偏移量、第二轴偏移量、宽度和高度。
在示例56中,示例48-55的主题包括,用于基于内容结构从媒体内容中提取特征的装置;以及用于对特征进行编码以供包含在网络分组中的装置。
在示例57中,示例56的主题包括主题,其中用于将经滤波媒体内容传送给媒体消费者的装置进一步包括:用于将经滤波媒体内容的经编码视频内容和经编码特征多路复用成经编码比特流的装置;以及用于将经编码比特流传送给媒体消费者的装置。
在示例58中,示例57的主题包括主题,其中经编码特征用于计算设备对媒体内容的自动解释。
在示例59中,示例48-58的主题包括主题,其中用于对网络分组进行滤波以产生经滤波媒体内容的装置进一步包括:用于使用属性和内容结构选择媒体内容的分区的装置;以及用于取回与分区相关联的媒体内容的部分的媒体片段的装置,其中经滤波媒体内容包括媒体内容的部分的媒体片段。
在示例60中,示例48-59的主题包括主题,其中分组由与边缘计算网络通信的边缘节点上执行的服务器设备、虚拟网络功能、微服务或软件组件提供的网络中继服务器进行滤波。
在示例61中,示例48-60的主题包括主题,其中媒体内容是根据运动图像专家组(MPEG)格式的视频内容。
在示例62中,示例48-61的主题包括主题,其中空间分区沉浸式媒体内容是三维视频内容、虚拟现实内容、增强现实内容或感知增强的二维视频内容。
示例63是至少一种机器可读介质,该至少一种机器可读介质包括指令,该指令当由处理电路系统执行时,使得该处理电路系统执行操作以实现示例1-62中的任一项。
示例64是一种设备,该设备包括用于实现示例1-62中的任一项的装置。
示例65是一种用于实现示例1-62中的任一项的系统。
示例66是一种用于实现示例1-62中的任一项的方法。
示例67是至少一种包括指令的机器可读介质,这些指令在由机器执行时使得机器执行示例1-62的操作中的任一项的操作。
示例68是一种包括用于执行示例1-62的操作中的任一项的装置的设备。
示例69是一种用于执行示例1-62中的任一项的操作的系统。
示例70是一种用于执行示例1-62中的任一项的操作的方法。
以上具体实施方式包括对所附附图的引用,所附附图形成具体实施方式的部分。附图通过图示方式示出可被实施的具体实施例。这些实施例在本文中也被称为“示例”。此类示例可包括除所示出或所描述的那些要素以外的要素。然而,本申请发明人还构想了其中只提供所示出或所描述的那些要素的示例。另外,本申请发明人还构想了相对于本文中所示出或所描述的特定示例(或者其一个或多个方面)或者相对于本文中所示出或所描述的其他示例(或者其一个或多个方面)使用所示出或所描述的那些要素(或者其一个或多个方面)的任何组合或排列的示例。
本文档中所涉及的所有公开、专利和专利文档通过引用整体结合于此,如通过引用单独地结合。在本文档和通过引用所结合的那些文档之间的不一致的用法的情况下,在结合的(一个或多个)引用中的用法应当被认为是对本文档的用法的补充;对于不可调和的不一致,以本文档中的用法为准。
在此文档中,如在专利文档中常见的那样,使用术语“一(a/an)”以包括一个或多于一个,这独立于“至少一个”或“一个或多个”的任何其他实例或用法。在此文档中,除非另外指示,否则使用术语“或”来指代非排他性的或,使得“A或B”包括“A但非B”、“B但非A”、以及“A和B”。在所附权利要求书中,术语“包含(including)”和“其中(in which)”被用作相应的术语“包括(comprising)”和“其中(wherein)”的普通英语等价词。此外,在所附权利要求书中,术语“包含(including)”和“包括(comprising)”是开放式的,也就是说,在权利要求中包括除此类术语之后列举的那些要素之外的要素的系统、设备、制品或过程仍被视为落在那项权利要求的范围内。此外,在所附权利要求书中,术语“第一”、“第二”、“第三”等仅用作标示,而不旨在对其对象施加数值要求。

Claims (25)

1.一种用于选择性地传输空间分区沉浸式媒体内容的系统,包括:
至少一个处理器;以及
存储器,所述存储器包括指令,所述指令当由所述至少一个处理器执行时,使得所述至少一个处理器执行操作以:
经由信令服务在媒体生产者与媒体消费者之间对媒体内容的属性进行协商;
基于协商来确定所述媒体内容的内容结构;
创建网络分组,所述网络分组包括与编码到所述网络分组的传输协议头部中的所确定内容结构相对应的信息;
使用从所述媒体消费者接收的分区标识符对所述网络分组进行滤波以产生经滤波媒体内容;以及
将所述经滤波媒体内容传送给所述媒体消费者。
2.如权利要求1所述的系统,其中,所述分区标识符可以描述所述媒体内容的区域、所述媒体内容的分段、所述媒体内容的空间分区、所述媒体内容的片或所述媒体内容的切片。
3.如权利要求1所述的系统,其中,用于在所述媒体生产者与所述媒体消费者之间对所述媒体内容的所述属性进行协商的指令进一步包括指令,所述指令当由所述至少一个处理器执行时,使得所述至少一个处理器执行操作以:
经由所述信令服务启动所述媒体生产者与所述媒体消费者之间的会话描述协议(SDP)通信会话;
标识与所述媒体生产者和所述媒体消费者兼容的编解码器;
标识与所述媒体生产者和所述媒体消费者兼容的内容分区布局;以及
经由所述SDP通信会话将所述编解码器和所述内容分区布局的信息传送给所述媒体生产者和所述媒体消费者。
4.如权利要求1所述的系统,其中,所述内容结构包括所述媒体内容的区域或代表所述媒体内容的区域的片。
5.如权利要求4所述的系统,其中,所述传输协议头部包括所述媒体内容的区域或代表所述媒体内容的区域的片的标识符。
6.如权利要求1所述的系统,其中,所述网络分组是实时传输协议(RTP)分组。
7.如权利要求1所述的系统,其中,所述传输协议头部包括分区描述符,所述分区描述符包括分区标识符、所述媒体内容的分区的类型和所述分区的优先级级别。
8.如权利要求1所述的系统,其中,所述传输协议头部包括分区结构描述符,所述分区结构描述符包括所述媒体内容的分区的第一轴偏移量、第二轴偏移量、宽度和高度。
9.如权利要求1所述的系统,所述存储器进一步包括指令,所述指令当由所述至少一个处理器执行时使得所述至少一个处理器用于执行操作以:
基于所述内容结构从所述媒体内容中提取特征;以及
对所述特征进行编码以供包含在所述网络分组中。
10.如权利要求9所述的系统,其中,用于将所述经滤波媒体内容传送给所述媒体消费者的指令进一步包括指令,所述指令当由所述至少一个处理器执行时使得所述至少一个处理器执行操作以:
将所述经滤波媒体内容的经编码视频内容和经编码特征多路复用成经编码比特流;以及
将所述经编码比特流传送给所述媒体消费者。
11.如权利要求10所述的系统,其中,所述经编码特征用于计算设备对所述媒体内容的自动解释。
12.如权利要求1所述的系统,其中,用于对所述网络分组进行滤波以产生所述经滤波媒体内容的指令进一步包括指令,所述指令当由所述至少一个处理器执行时使得所述至少一个处理器执行操作以:
使用所述属性和所述内容结构选择所述媒体内容的分区;以及
取回与所述分区相关联的所述媒体内容的部分的媒体片段,其中所述经滤波媒体内容包括所述媒体内容的所述部分的所述媒体片段。
13.如权利要求1所述的系统,其中,所述分组由与边缘计算网络通信的边缘节点上执行的服务器设备、虚拟网络功能、微服务或软件组件提供的网络中继服务器进行滤波。
14.如权利要求1所述的系统,其中,所述媒体内容是根据运动图像专家组(MPEG)格式的视频内容。
15.如权利要求1所述的系统,其中,所述空间分区沉浸式媒体内容是三维视频内容、虚拟现实内容、增强现实内容或感知增强的二维视频内容。
16.至少一种非暂态机器可读介质,包括用于选择性地传输空间分区沉浸式媒体内容的指令,所述指令当由至少一个处理器执行时,使得所述至少一个处理器用于执行操作以:
经由信令服务在媒体生产者与媒体消费者之间对媒体内容的属性进行协商;
基于协商来确定所述媒体内容的内容结构;
创建网络分组,所述网络分组包括与编码到所述网络分组的传输协议头部中的所确定内容结构相对应的信息;
使用从所述媒体消费者接收的分区标识符对所述网络分组进行滤波以产生经滤波媒体内容;以及
将所述经滤波媒体内容传送给所述媒体消费者。
17.如权利要求16所述的至少一种非暂态机器可读介质,其中,用于在所述媒体生产者与所述媒体消费者之间对所述媒体内容的所述属性进行协商的指令进一步包括指令,所述指令当由所述至少一个处理器执行时,使得所述至少一个处理器执行操作以:
经由所述信令服务启动所述媒体生产者与所述媒体消费者之间的会话描述协议(SDP)通信会话;
标识与所述媒体生产者和所述媒体消费者兼容的编解码器;
标识与所述媒体生产者和所述媒体消费者兼容的内容分区布局;以及
经由所述SDP通信会话将所述编解码器和所述内容分区布局的信息传送给所述媒体生产者和所述媒体消费者。
18.如权利要求16所述的至少一种非暂态机器可读介质,进一步包括指令,所述指令当由所述至少一个处理器执行时,使得所述至少一个处理器执行操作以:
基于所述内容结构从所述媒体内容中提取特征;以及
对所述特征进行编码以供包含在所述网络分组中。
19.如权利要求18所述的至少一种非暂态机器可读介质,其中,用于将所述经滤波媒体内容传送给所述媒体消费者的指令进一步包括指令,所述指令当由所述至少一个处理器执行时,使得所述至少一个处理器执行操作以:
将所述经滤波媒体内容的经编码视频内容和经编码特征多路复用成经编码比特流;以及
将所述经编码比特流传送给所述媒体消费者。
20.如权利要求16所述的至少一种非暂态机器可读介质,其中,用于对所述网络分组进行滤波以产生所述经滤波媒体内容的指令进一步包括指令,所述指令当由所述至少一个处理器执行时,使得所述至少一个处理器执行操作以:
使用所述属性和所述内容结构选择所述媒体内容的分区;以及
取回与所述分区相关联的所述媒体内容的部分的媒体片段,其中所述经滤波媒体内容包括所述媒体内容的所述部分的所述媒体片段。
21.一种用于选择性地传输空间分区沉浸式媒体内容的方法,包括:
经由信令服务在媒体生产者与媒体消费者之间对媒体内容的属性进行协商;
基于协商来确定所述媒体内容的内容结构;
创建网络分组,所述网络分组包括与编码到所述网络分组的传输协议头部中的所确定内容结构相对应的信息;
使用从所述媒体消费者接收的分区标识符对所述网络分组进行滤波以产生经滤波媒体内容;以及
将所述经滤波媒体内容传送给所述媒体消费者。
22.如权利要求21所述的方法,其中,在所述媒体生产者与所述媒体消费者之间对所述媒体内容的所述属性进行协商进一步包括:
经由所述信令服务启动所述媒体生产者与所述媒体消费者之间的会话描述协议(SDP)通信会话;
标识与所述媒体生产者和所述媒体消费者兼容的编解码器;
标识与所述媒体生产者和所述媒体消费者兼容的内容分区布局;以及
经由所述SDP通信会话将所述编解码器和所述内容分区布局的信息传送给所述媒体生产者和所述媒体消费者。
23.如权利要求21所述的方法,进一步包括:
基于所述内容结构从所述媒体内容中提取特征;以及
对所述特征进行编码以供包含在所述网络分组中。
24.如权利要求23所述的方法,其中,将所述经滤波媒体内容传送给所述媒体消费者进一步包括:
将所述经滤波媒体内容的经编码视频内容和经编码特征多路复用成经编码比特流;以及
将所述经编码比特流传送给所述媒体消费者。
25.如权利要求21所述的方法,其中,对所述网络分组进行滤波以产生所述经滤波媒体内容进一步包括:
使用所述属性和所述内容结构选择所述媒体内容的分区;以及
取回与所述分区相关联的所述媒体内容的部分的媒体片段,其中所述经滤波媒体内容包括所述媒体内容的所述部分的所述媒体片段。
CN202180099971.4A 2021-11-10 2021-12-23 基于内容分区的沉浸式媒体实时通信 Pending CN117581550A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CNPCT/CN2021/129723 2021-11-10
CN2021129723 2021-11-10
PCT/US2021/065071 WO2023086112A1 (en) 2021-11-10 2021-12-23 Content partition based real time communication for immersive media

Publications (1)

Publication Number Publication Date
CN117581550A true CN117581550A (zh) 2024-02-20

Family

ID=86336335

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180099971.4A Pending CN117581550A (zh) 2021-11-10 2021-12-23 基于内容分区的沉浸式媒体实时通信

Country Status (2)

Country Link
CN (1) CN117581550A (zh)
WO (1) WO2023086112A1 (zh)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5905957B2 (ja) * 2011-06-08 2016-04-20 コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ 空間的にセグメント化されたコンテンツの配信
US11202117B2 (en) * 2017-07-03 2021-12-14 Telefonaktiebolaget Lm Ericsson (Publ) Methods for personalized 360 video delivery
US20190104326A1 (en) * 2017-10-03 2019-04-04 Qualcomm Incorporated Content source description for immersive media data
US10964111B2 (en) * 2018-07-27 2021-03-30 Microsoft Technology Licensing, Llc Controlling content included in a spatial mapping
CN110798707B (zh) * 2018-08-02 2023-06-16 华为技术有限公司 传输媒体数据的方法、客户端和服务器

Also Published As

Publication number Publication date
WO2023086112A1 (en) 2023-05-19

Similar Documents

Publication Publication Date Title
NL2029029B1 (en) Methods and apparatus to coordinate edge platforms
EP3985511A1 (en) Orchestration of meshes
US20210014114A1 (en) Methods, apparatus, and articles of manufacture for workload placement in an edge environment
KR20210038827A (ko) 에지 컴퓨팅 환경에서의 적응적 데이터 흐름 변환
EP4180953A1 (en) Orchestrator execution planning using a distributed ledger
US20210119962A1 (en) Neutral host edge services
US20210014303A1 (en) Methods and apparatus to manage quality of service with respect to service level agreements in a computing device
US20220116755A1 (en) Multi-access edge computing (mec) vehicle-to-everything (v2x) interoperability support for multiple v2x message brokers
EP4109257A1 (en) Methods and apparatus to facilitate service proxying
US20210144202A1 (en) Extended peer-to-peer (p2p) with edge networking
EP4155933A1 (en) Network supported low latency security-based orchestration
EP3975028A1 (en) One-touch inline cryptographic data processing
EP4156637A1 (en) Software defined networking with en-route computing
US20230164241A1 (en) Federated mec framework for automotive services
US20220014946A1 (en) Methods and apparatus for digital twin aided resiliency
NL2032817B1 (en) Cross-layer automated fault tracking and anomaly detection
EP4020999A1 (en) Tiered access to regions of interest in video frames
US20230376344A1 (en) An edge-to-datacenter approach to workload migration
US20220222584A1 (en) Heterogeneous compute-based artificial intelligence model partitioning
US20230018191A1 (en) Service roaming between edge computing platforms
US20210117134A1 (en) Technologies for storage and processing for distributed file systems
US20210320988A1 (en) Information centric network unstructured data carrier
US20210014047A1 (en) Methods, systems, apparatus, and articles of manufacture to manage access to decentralized data lakes
US20230344804A1 (en) Methods and apparatus to increase privacy for follow-me services
US20220201320A1 (en) Video analytics using scalable video coding

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication