CN116938907B - 一种实时音视频传输网络的数据传输方法及系统 - Google Patents
一种实时音视频传输网络的数据传输方法及系统 Download PDFInfo
- Publication number
- CN116938907B CN116938907B CN202311186209.7A CN202311186209A CN116938907B CN 116938907 B CN116938907 B CN 116938907B CN 202311186209 A CN202311186209 A CN 202311186209A CN 116938907 B CN116938907 B CN 116938907B
- Authority
- CN
- China
- Prior art keywords
- data
- node
- operator
- routing
- network
- 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.)
- Active
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 163
- 238000000034 method Methods 0.000 title claims abstract description 77
- 238000012545 processing Methods 0.000 claims abstract description 102
- 238000001514 detection method Methods 0.000 claims description 48
- 238000004590 computer program Methods 0.000 claims description 16
- 238000004422 calculation algorithm Methods 0.000 claims description 11
- 230000004927 fusion Effects 0.000 abstract description 7
- 238000005516 engineering process Methods 0.000 abstract description 6
- 238000000926 separation method Methods 0.000 abstract description 3
- 238000007726 management method Methods 0.000 description 20
- 238000004364 calculation method Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000005538 encapsulation Methods 0.000 description 4
- 238000013139 quantization Methods 0.000 description 4
- 239000000523 sample Substances 0.000 description 4
- 239000000203 mixture Substances 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000010485 coping Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000209140 Triticum Species 0.000 description 1
- 235000021307 Triticum Nutrition 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例提供了一种实时音视频传输网络的数据传输方法及系统,该方法包括:从上一跳节点接收携带有第一数据的第一会话消息;根据路由调度中心预先下发的处理任务和第一会话消息判断第一数据是否由当前节点进行处理;在判断结果为是的情况下,根据处理任务处理第一数据得到第二数据;将携带有第二数据的第二会话消息发送给下一跳节点。本申请实施例将计算单元部署在传输网络的各个节点中,可以解决相关技术中媒体传输网络和计算单元分离,数据传输延时较高的问题,实现传输和计算的融合调度,让传输和计算都能够最有效地适配资源,提升RTN网络的整体服务能力和用户体验。
Description
技术领域
本申请涉及通信领域,具体而言,涉及一种实时音视频传输网络的数据传输方法及系统。
背景技术
随着互联网的不断发展,音视频媒体数据已经成为互联网流量的主体,近年来云游戏、互动直播、云电脑、远程教育、视频会议等场景的发展也推动实时音视频传输网络(Realtime Network,简称RTN)技术的快速发展。目前RTN发展趋势主要是两个方面,一方面是对传输低延时、大带宽的要求与越来越高,例如主播连麦、云游戏、4K/8K高清、AR/VR/XR等应用场景不仅需要低延时,也对带宽也有一定的要求;另一方面是媒体处理时对算力要求场景越来越多,例如视频转码、画面合成、画质增强、智能审核等场景都需要算力的支撑。针对上述趋势,业界常见的做法是建立低延时的媒体传输网络来应对低时延传输的场景,针对需要算力支撑的智能化场景,在中心云建立算力集中处理单元,用于应对智能媒体处理的场景。
但是,上述方案存在明显的缺陷,就是会导致媒体的传输和计算分离。因为媒体的传输主要是在各个边缘之间进行,如果涉及到智能计算就需要将媒体流转发到中心,经过计算后再将媒体流转发回边缘的媒体传输网络里,这就导致媒体传输时延较高的问题。例如,在纯转发场景中,客户端发送RTP(720P)媒体流,经过边缘1、转发、边缘2阶段的转发,将RTP(720P)流发送至客户端B。而在需要中心进行智能计算的场景(以转码场景为例)中,客户端A将RTP(720P)媒体流发送至边缘1,经过转发、边缘2发送至中心,经过转码(超分)后将RTMP(360P)媒体流返回给边缘2,然后边缘2再将后将RTMP(360P)媒体流转发至客户端B,存在延时较高的问题。
综上,针对上述问题,还没有很好的解决方法。
发明内容
本申请实施例提供了一种实时音视频传输网络的数据传输方法及系统,以至少解决相关技术中媒体传输网络和计算单元分离,数据传输延时较高的问题。
根据本申请的一个实施例,提供了实时音视频传输网络的数据传输方法,应用于节点,该方法包括:从上一跳节点接收携带有第一数据的第一会话消息;根据路由调度中心预先下发的处理任务和所述第一会话消息判断所述第一数据是否由当前节点进行处理;在判断结果为是的情况下,根据所述处理任务处理所述第一数据得到第二数据;将携带有所述第二数据的第二会话消息发送给下一跳节点。
根据本申请的又一个实施例,提供了一种实时音视频传输网络的数据传输方法,应用于路由调度中心,该方法包括:接收初始节点发送的业务请求;获取预先保存的网络拓扑关系、各个节点上报的链路探测数据、算子以及算子使用情况;根据所述业务请求、所述网络拓扑关系、所述链路探测数据、所述算子以及所述算子使用情况进行路径规划,生成传输路径信息和目标节点的处理任务;将所述传输路径信息下发给所述初始节点,并将所述处理任务下发给所述目标节点,其中,所述初始节点用于根据所述传输路径信息发送第一数据,所述目标节点用于在所述第一数据经过时根据所述处理任务处理所述第一数据。
根据本申请的另一个实施例,提供了一种实时音视频传输网络的数据传输系统,该系统包括:路由调度中心、多个节点;路由调度中心,用于接收初始节点发送的业务请求;获取预先保存的网络拓扑关系、各个节点上报的链路探测数据、算子以及算子使用情况;根据所述业务请求、所述网络拓扑关系、所述链路探测数据、所述算子以及所述算子使用情况进行路径规划,生成传输路径信息和目标节点的处理任务;将所述传输路径信息下发给所述初始节点,并将所述处理任务下发给所述目标节点,其中,所述初始节点用于根据所述传输路径信息发送第一数据,所述目标节点用于在所述第一数据经过时根据所述处理任务处理所述第一数据;所述节点,用于从上一跳节点接收携带有所述第一数据的第一会话消息;根据所述处理任务和所述第一会话消息判断所述第一数据是否由当前节点进行处理;在判断结果为是的情况下,根据所述处理任务处理所述第一数据得到第二数据;将携带有所述第二数据的第二会话消息发送给下一跳节点。
根据本申请的又一个实施例,还提供了一种计算机可读的存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被处理器运行时执行上述任一项方法实施例中的步骤。
根据本申请的又一个实施例,还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本申请实施例,可以将计算单元部署在传输网络的各个节点中,在路径规划时结合业务需求和节点算力,实现传输和计算的融合调度,让传输和计算都能够最有效地适配资源,进而解决相关技术中媒体传输网络和计算单元分离,数据传输延时较高的问题,实现了提升RTN网络的整体服务能力和用户体验的技术效果。
附图说明
图1是本申请实施例的RTN网络的数据传输方法的硬件结构框图;
图2是根据本申请实施例的节点的数据传输方法的流程图;
图3是根据本申请实施例的路由调度中心的数据传输方法的流程图;
图4是根据本申请实施例的一种实时音视频传输网络的结构示意图;
图5是根据本申请实施例的路由调度中心的结构框图;
图6是根据本申请实施例的客户端的结构框图;
图7是根据本申请实施例的RTN网络节点的结构框图;
图8是根据本申请实施例的传输路径封装的示意图;
图9是根据本申请实施例的数据传输方法的整体流程示意图;
图10是根据本申请实施例的数据传输方法的部分流程示意图(一);
图11是根据本申请实施例的数据传输方法的部分流程示意图(二);
图12是根据本申请实施例的数据传输方法的部分流程示意图(三);
图13是根据本申请实施例的数据传输方法的部分流程示意图(四)。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请的实施例。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的方法实施例应用于实时音视频传输网络(RealtimeNetwork,简称RTN),可以由RTN网络中的网络设备执行,例如节点、服务器、交换机、用户终端等,用户终端可以包括移动终端、计算机终端等。以运行在计算机终端上为例,图1是本申请实施例的RTN网络的数据传输方法的硬件结构框图,如图1所示,硬件单板可以包括一个或多个(图1中仅示出一个)处理器12(处理器12可以包括但不限于微处理器MCU或可编程逻辑器件等的处理装置)和用于存储数据的存储器14,其中,上述移动终端还可以包括用于通信功能的传输设备16以及输入输出设备18。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器14可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本申请实施例中的数据传输方法对应的计算机程序,处理器12通过运行存储在存储器14内的计算机程序,从而执行各种功能应用以及数据传输方法,即实现上述的方法。存储器14可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器14可进一步包括相对于处理器12远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备16用于经由一个网络接收或者发送数据。上述的网络具体实例可包括通信供应商提供的无线网络。在一个实例中,传输设备16包括一个网络适配器(NetworkInterface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备16可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本申请一实施例中提供了一种实时音视频传输网络的数据传输方法,应用于节点,图2是根据本申请实施例的节点的数据传输方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,从上一跳节点接收携带有第一数据的第一会话消息;
步骤S204,根据路由调度中心预先下发的处理任务和所述第一会话消息判断所述第一数据是否由当前节点进行处理;
步骤S206,在判断结果为是的情况下,根据所述处理任务处理所述第一数据得到第二数据;
步骤S208,将携带有所述第二数据的第二会话消息发送给下一跳节点。
在本申请实施例中,通过上述步骤S202至步骤S208可以根据路由调度中心预先下发的处理任务对媒体数据进行处理(如渲染、编解码等),实现传输和计算的融合,进而解决相关技术中媒体传输网络和计算单元分离,数据传输延时较高的问题,提升用户体验。
本申请实施例可以应用于实时音视频通信的相关场景中,如增强现实(AugmentedReality,简称AR)、虚拟现实(Virtual Reality,简称VR)、云游戏、互动直播、云电脑、远程教育、视频会议、视频监控以及各种通过互联网向用户提供各种应用服务(Over The Top,简称OTT)的应用等。
在一些实施例中,所述处理任务包含:会话标识、算子类型、任务描述信息。会话消息包含:会话标识、路径长度、传输路径,其中,所述会话消息包括所述第一会话消息和所述第二会话消息。
在一示例性实施例中,算子类型可以根据业务处理需求进行配置,算子类型包括但并不限制于视频转码、画面合成、画面增强、智能审核等智能计算能力。任务描述信息为算子的具体信息,包括但并不限制输入格式、输出格式或算法参数等信息。
在一些实施例中,节点包括初始节点、目的节点以及RTN网络节点,初始节点或目的节点可以是客户端,具体为音视频终端或相关的软件开发工具包(SoftwareDevelopment Kit,简称SDK)。第一数据为客户端生成的原始数据,第二数据为经过算子处理后的数据。
在一些实施例中,步骤S204可以包括如下步骤:
步骤S2042,比较所述处理任务的会话标识和所述第一会话消息的会话标识;
步骤S2044,在所述处理任务的会话标识与所述第一会话消息的会话标识相同的情况下,确定所述第一数据由当前节点进行处理;
步骤S2046,在所述处理任务的会话标识与所述第一会话消息的会话标识不同的情况下,确定所述第一数据不是由当前节点进行处理。
在一些实施例中,步骤S206根据所述处理任务处理所述第一数据得到第二数据,可以包括如下步骤:
步骤S2062,根据所述算子类型从所述路由调度中心预先下发的算子中确定目标算子;
步骤S2064,根据所述任务描述信息将所述第一数据输入所述目标算子,得到所述目标算子输出的所述第二数据。
在一些实施例中,在步骤S208之前,所述方法还包括步骤S207,根据所述第一数据包确定下一跳节点。步骤S207可以包括如下步骤:
步骤S2072,从所述第一会话消息的传输路径中去掉当前节点的路径信息,得到所述第二会话消息的传输路径;
步骤S2074,将所述第一会话消息的路径长度减一,得到所述第二会话消息的路径长度,其中,所述路径长度用于指示所述传输路径中包含的节点数量;
步骤S2076,根据所述第二会话消息的传输路径确定所述下一跳节点。
在一些实施例中,在步骤S204之后,所述方法还包括:在判断结果为否的情况下,将携带有所述第一数据的第二会话消息发送给所述下一跳节点。
在本实施例中,路由调度中心可以在路径规划阶段为媒体数据选择合适的算力资源,确定处理该媒体数据的节点,并下发处理任务。数据传输过程中,收到处理任务的节点需要先根据处理任务对数据进行运算处理后再转发处理后的数据,其他节点均直接转发原始数据。
在一些实施例中,所述方法还包括:步骤S203,从所述路由调度中心获取所述处理任务,其中,所述路由调度中心用于在收到初始节点的业务请求后根据所述业务请求、网络拓扑关系、链路探测数据、各个节点的算子以及算子使用情况进行路径规划,生成所述处理任务和传输路径信息。
在一些实施例中,所述方法还包括如下步骤:
步骤S2001,向所述路由调度中心进行注册,其中,所述路由调度中心用于在各个节点注册完成后根据用户配置结果保存各个节点之间的网络拓扑关系和各个节点的算子。
在一些实施例中,所述方法还包括如下步骤:
步骤S2002,获取所述路由调度中心下发的与所述当前节点有关的网络拓扑关系;
步骤S2003,根据与所述当前节点有关的网络拓扑关系进行网络探测,得到所述当前节点的链路探测数据;
步骤S2004,将所述当前节点的链路探测数据定时上报给所述路由调度中心。
在一些实施例中,所述方法还包括如下步骤:
步骤S2005,获取所述路由调度中心下发的算子,其中,所述算子包括算法类型和算法参数;
步骤S2006,将当前节点的算子使用情况定时上报给所述路由调度中心。
通过本申请实施例,可以将计算单元部署在传输网络的各个节点中,在路径规划时结合业务需求和节点算力,实现传输和计算的融合调度,让传输和计算都能够最有效地适配资源,进而解决相关技术中媒体传输网络和计算单元分离,数据传输延时较高的问题,实现了提升RTN网络的整体服务能力和用户体验的技术效果。
在本申请又一实施例中提供了一种实时音视频传输网络的数据传输方法,应用于路由调度中心,图3是根据本申请实施例的路由调度中心的数据传输方法的流程图,如图3所示,该流程包括如下步骤:
步骤S302,接收初始节点发送的业务请求;
步骤S304,获取预先保存的网络拓扑关系、各个节点上报的链路探测数据、算子以及算子使用情况;
步骤S306,根据所述业务请求、所述网络拓扑关系、所述链路探测数据、所述算子以及所述算子使用情况进行路径规划,生成传输路径信息和目标节点的处理任务;
步骤S308,将所述传输路径信息下发给所述初始节点,并将所述处理任务下发给所述目标节点,其中,所述初始节点用于根据所述传输路径信息发送第一数据,所述目标节点用于在所述第一数据经过时根据所述处理任务处理所述第一数据。
在本申请实施例中,通过上述步骤S302至步骤S308可以在路径规划时结合业务需求和节点算力,实现传输和计算的融合调度,让传输和计算都能够最有效地适配资源,进而解决相关技术中媒体传输网络和计算单元分离,数据传输延时较高的问题,实现了提升RTN网络的整体服务能力和用户体验的技术效果。
在本实施例中,步骤S302中的业务请求用于向路由调度中心请求媒体数据的传输路径,初始节点和目的节点可以是客户端,具体为音视频终端或相关的软件开发工具包(Software Development Kit,简称SDK)。
在一些实施例中,业务请求可以包含初始节点和目的节点的节点标识,也可以包含业务类型。
在一些实施例中,所述处理任务包含:会话标识、算子类型、任务描述信息;所述传输路径信息包含:会话标识、路径长度、传输路径。
在一些实施例中,在步骤S302之前,所述方法还包括如下步骤:
步骤S3001,接收各个节点的注册信息进行节点注册,其中,所述注册信息包括以下至少之一:节点标识、节点运算能力、节点业务能力;
步骤S3002,根据所述注册信息对各个节点之间的网络拓扑关系和各个节点的算子进行用户配置,并根据用户配置结果保存所述网络拓扑关系和所述算子。
在一示例性实施例中,节点包括客户端和RTN网络节点,客户端可以具备采集(生成媒体数据)、渲染、编解码等业务能力,RTN网络节点可以具备视频转码、画面合成、画面增强、智能审核等运算能力。
在一示例性实施例中,节点运算能力可以采用具体的算力指标进行衡量,如内存容量、线程数量等,本申请对此不做限制。
在一些实施例中,所述方法还包括如下步骤:
步骤S3003,根据所述用户配置结果分别向每一个所述节点下发对应的网络拓扑关系;
步骤S3004,指示各个节点根据所述对应的网络拓扑关系进行网络探测得到链路探测数据,其中,所述链路探测数据包括以下至少之一:丢包率、延迟数据、抖动数据、音视频卡顿率;
步骤S3005,分别接收每一个所述节点定时上报的所述链路探测数据。
在一些实施例中,所述方法还包括如下步骤:
步骤S3006,根据所述用户配置结果分别向每一个节点下发对应的算子,其中,所述算子包括算法类型和算法参数;
步骤S3007,分别接收每一个所述节点定时上报的所述算子使用情况。
在一些实施例中,步骤S306可以包括如下步骤:
步骤S3062,根据所述业务请求、所述网络拓扑关系以及所述链路探测数据生成所述传输路径信息;
步骤S3064,根据所述业务请求、所述算子以及所述算子使用情况生成所述目标节点的处理任务。
在一些实施例中,步骤S3064还可以包括:根据所述业务请求确定所述第一数据的处理任务,其中,处理任务包括算子类型和任务描述信息;根据所述算子类型、所述算子以及所述算子使用情况从所述传输路径信息中确定所述目标节点。
在一些实施例中,路由调度中心可以先选出最佳的传输路径,再从传输路径中选择合适的节点进行数据运算处理,若传输路径中的节点均不具备算力要求时,可以重新规划传输路径。
在另一实施例中,路由调度中心也可以先选择算力合适的节点,再进行路径规划。
在一示例性实施例中,算子使用情况可以采用具体的算力指标进行衡量,如某个节点总线程数量为8,已占用2个线程,在分配新的处理任务时,路由调度中心会参考各个节点的剩余算力进行任务分配。
通过本申请实施例,可以实现传输和计算的融合调度,解决相关技术中媒体传输网络和计算单元分离,数据传输延时较高的问题,实现了提升RTN网络的整体服务能力和用户体验的技术效果。
根据本申请实施例的另一方面,还提供了一种实时音视频传输网络的数据传输系统,该系统包括:
路由调度中心和多个节点。
在本实施例中,路由调度中心,用于接收初始节点发送的业务请求;获取预先保存的网络拓扑关系、各个节点上报的链路探测数据、算子以及算子使用情况;根据所述业务请求、所述网络拓扑关系、所述链路探测数据、所述算子以及所述算子使用情况进行路径规划,生成传输路径信息和目标节点的处理任务;将所述传输路径信息下发给所述初始节点,并将所述处理任务下发给所述目标节点,其中,所述初始节点用于根据所述传输路径信息发送第一数据,所述目标节点用于在所述第一数据经过时根据所述处理任务处理所述第一数据。
在本实施例中,节点,用于从上一跳节点接收携带有所述第一数据的第一会话消息;根据所述处理任务和所述第一会话消息判断所述第一数据是否由当前节点进行处理;在判断结果为是的情况下,根据所述处理任务处理所述第一数据得到第二数据;将携带有所述第二数据的第二会话消息发送给下一跳节点。
图4是根据本申请实施例的一种实时音视频传输网络的结构示意图,如图4所示,该网络包括以下结构:
路由调度中心42、RTN网络节点44以及客户端46。
在一些实施例中,RTN网络节点44和客户端46均属于节点。RTN网络节点和客户端可以执行上述任一项方法实施例中的步骤。
在一些实施例中,RTN网络节点包括边缘节点和中间转发节点,负责客户端的接入和数据的转发,具备视频转码、画面合成、画面增强、智能审核等智能计算能力;同时还负责接收路由调度中心的数据探测请求,探测数据包含丢包、延迟、抖动、可用带宽、节点负载等,并将探测结果结合节点的智能计算能力(通过算子表示,不同的智能计算能力抽象为不同类型的算子)上报到路由调度中心。
在一些实施例中,客户端可以是音视频终端或相关的软件开发工具包(SoftwareDevelopment Kit,简称SDK),主要负责生成或展示音视频媒体数据、处理音视频业务(包括采集、编解码、渲染等),查询数据传输路径并组包,还负责音视频数据的收发。并进行客户端与RTN网络节点链路质量的探测和上报。
在一示例性实施例中,客户端类型统一涵盖音视频媒体展示部分和音视频媒体生成部分,例如,视频会议场景下可以包含PC客户端、手机移动客户端、会议室的会议终端;云桌面场景包含瘦终端、PC端、后端服务器;AR/VR场景下包含VR眼镜、头戴终端、后台服务器。
在一些实施例中,路由调度中心负责整体网络拓扑的管理,算子的管理和下发,还将链路探测请求下发到客户端、边缘节点、中转节点并收集客户端、边缘节点、转发节点上报的链路探测数据,根据各个节点之间的链路探测数据、网络拓扑关系、算子要求对数据传输路径进行统一规划、并将规划的路径下发到客户端。
在一些实施例中,路由调度中心还可以对链路探测数据进行量化处理,转换为具体的链路质量指数。路由调度中心还可以根据量化后的链路质量指数进行路径规划。
图5是根据本申请实施例的路由调度中心的结构框图,如图5所示,路由调度中心可以由以下功能模块组成:
拓扑管理模块51、探测管理模块52、算子管理模块53、数据量化模块54、路径规划模块55、算子任务下发模块56。
拓扑管理模块51,负责整个RTN网络的拓扑关系的管理,包含RTN网络节点的增加、删除操作,节点之间连接关系的变更操作。
探测管理模块52,负责向客户端、RTN网络节点下发探测请求,并负责接收客户端、RTN网络节点上报的探测数据。
算子管理模块53,负责RTN网络中算子的统一管理,包括各个RTN网络节点算子的部署和使用情况,接收RTN网络节点中算子同步模块上报的算子种类和算子的使用情况。
数据量化模块54,负责将收到的丢包、延迟、抖动、可用带宽、节点负载等链路探测数据经过量化处理得到对应链路的质量指数。
路径规划模块55,负责根据客户端、RTN网络节点的网络拓扑关系、链路的质量并结合RTN网络节点的算力能力情况进行路径规划,形成最优传输路径和具体的算子任务。其中传输路径信息和算子任务通过唯一的会话标识(Identity document,简称ID)进行关联。
算子任务下发模块56,负责从路径规划模块同步算子任务,然后下发到RTN网络节点中的算子任务同步模块,实现智能计算任务的下发。
图6是根据本申请实施例的客户端的结构框图,如图6所示,客户端可以由以下功能模块组成:
媒体内容模块62、路径控制模块64、第一数据收发模块66、第一链路探测模块68。
媒体内容模块62,负责音视频媒体的生产/展示等相关业务的处理。
路径控制模块64,负责接收路由调度中心下发的数据传输路径,并将原始数据根据路径封装成新的数据包。
第一数据收发模块66,负责数据的收发,按照传输路径中指示的路径信息将封装后数据发送到下一跳。
第一链路探测模块68,负责向路由调度中心的探测管理进行注册并接收其下发的探测请求指令,指令中会包含需要探测的具体节点,如与客户端直接关联的边缘节点,接收指令后随即进行链路探测,探测指标包含丢包、延迟、抖动、可用带宽、节点负载等,探测完成后将探测的具体参数定时发送到路由调度中心的探测管理模块。
在一示例性实施例中,路径控制模块封装后的数据包格式主要包含会话标识、传输路径信息以及原始数据三个部分。其中,会话标识和传输路径信息由路由调度中心下发。原始数据由客户端生成。传输路径信息中包含路径长度和具体的传输路径,如节点的IP地址、端口信息等。
图7是根据本申请实施例的RTN网络节点的结构框图,如图7所示,RTN网络节点可以由以下功能模块组成:
传输模块和计算模块,其中,传输模块由第二数据收发模块72、第二链路探测模块74组成;计算模块由算子执行模块76、算子任务同步模块78组成。
第二数据收发模块72,负责客户端的接入、数据的接收、路径数据解封装、新路径数据封装、数据的转发功能。
第二链路探测模块74,负责向路由调度中心的探测管理模块注册并接收探测请求指令,指令中会包含需要探测的节点信息,接收指令后随即进行链路探测,探测指标包含丢包、延迟、抖动、可用带宽、节点负载等,探测完成后将探测的具体参数定时发送到路由调度中心的探测管理模块。
算子执行模块76,负责具体执行视频转码、画面合成、画面增强、智能审核等智能计算任务,任务由算子任务同步模块提供。
算子任务同步模块78,负责上报本节点的算子类型和使用情况,并将相关信息上报到路由调度中心的算子管理模块,同时还负责接收路由调度中心算子任务下发模块下发的计算任务,并负责根据会话标识关联需要进行计算的数据流,并调用算子执行模块进行具体的智能计算。
图8是根据本申请实施例的传输路径封装的示意图,如图8所示,客户端A处的数据封装包包含会话标识、路径长度、传输路径、原始数据。
在本实施例中,实线为路由调度中心决策的传输路径,虚线为RTN网络的网络拓扑关系。
在本实施例中,路由调度中心规划的传输路径为客户端A-1-4-8-9-客户端B。客户端A针对原始数据进行封装。
在本实施例中,处理任务为在节点8处进行转码(转码任务会由路由调度中心下发到节点8,节点8在收到数据后根据会话标识识别需要转码的数据,转码后将数据发送至下一节点9)。
在本实施例中,传输路径信息中包含路径长度和具体节点的IP地址和端口信息。
图9是根据本申请实施例的数据传输方法的整体流程示意图,如图9所示,该流程包括如下步骤:
步骤S1,客户端、RTN网络节点向路由调度中心的拓扑管理模块进行注册;
步骤S2,通过门户设置RTN网络拓扑关系、算力部署信息;
步骤S3,路由调度中心将网络拓扑关系和算子下发到各个节点;
步骤S4,网络探测和探测数据上报、算子状态上报;
步骤S5,业务请求,判断是否需要智能计算;
步骤S6,路由调度中心下发路径到客户端,并在需要智能计算时,下发处理任务到RTN网络节点;
步骤S7,RTN网络节点根据处理任务对数据进行智能计算处理;
步骤S8,将处理完成后的数据、封装路径转发到下一跳节点;
步骤S9,客户端接收数据,经过解封装得到原始数据。
通过本申请实施例,可以实现传输和计算的融合调度,解决相关技术中媒体传输网络和计算单元分离,数据传输延时较高的问题,提升RTN网络的整体服务能力和用户体验。
图10是根据本申请实施例的数据传输方法的部分流程示意图(一),如图10所示,该流程包括上述步骤S1至步骤S3中的注册、配置及下发流程,具体内容如下:
步骤S1,客户端、RTN网络节点向路由调度中心的拓扑管理模块进行注册;
步骤S2,注册完成后,路由调度中心的拓扑管理模块将用户配置的RTN系统中客户端、RTN网络节点及其之间链接关系保存,并将各个RTN网络节点中计算模块部分算力能力保存。
步骤S3,拓扑关系和算力能力配置完成后,路由调度中心的探测管理模块向客户端和RTN网络节点下发与其相关的网络拓扑链接关系,并指示其开始探测;同时路由调度中心的算子管理模块根据预先配置的能力向各个RTN网络节点下发算子。
在本实施例中,算子就是具体的算法单元,包括算法类型,输入输出等相关参数。
图11是根据本申请实施例的数据传输方法的部分流程示意图(二),如图11所示,该流程包括上述步骤S4中的网络探测、探测数据、算子状态上报流程,具体内容如下:
步骤S4-1,客户端、RTN网络节点的链路探测模块在接收到路由调度中心的探测请求后随即开始链路网络参数的探测请求;
步骤S4-2,将探测结果定时上报到路由调度中心的路径规划模块;
步骤S4-3,各个RTN网络节点的算子任务同步模块将当前节点的算子能力和算子使用情况上报到路由调度中心的算子管理模块。
图12是根据本申请实施例的数据传输方法的部分流程示意图(三),如图12所示,该流程包括上述步骤S5至步骤S6中的任务下发流程,具体内容如下:
步骤S5,客户端A在通过RTN网络向其他客户端发送数据时,首先向路由调度中心发送业务请求,路由调度中心的路径规划模块根据客户端的业务需求判断是否需要智能计算处理。路由调度中心的路径规划模块根据客户端、RTN网络节点的拓扑关系和实时探测数据并结合RTN网络节点的算子情况进行路径规划,并形成算子执行任务。
步骤S6,路由调度中心将实时计算出的传输路径返回给客户端A,同时会向指定的RTN网络节点下发处理任务(处理任务包含会话标识、算子类型、计算任务描述等信息)。处理任务与携带媒体数据的数据包通过会话标识关联。
图13是根据本申请实施例的数据传输方法的部分流程示意图(四),如图13所示,该流程包括上述步骤S7至步骤S9中的路径封装和智能计算流程,具体内容如下:
步骤S7,客户端的路径控制模块将会话标识、路径长度、传输路径封装到原始数据。然后由客户端的收发模块将封装后的数据发送到下一跳(RTN网络中的边缘节点)。
步骤S8,RTN网络节点收到转发来的数据后,首先对数据进行解封装,然后根据会话标识查询当前节点是否要执行处理任务。如果没有处理任务,则去掉传输路径中的当前节点的信息并更新路径长度字段,暴露路径中下一节点的信息以便数据在路径中快速转发,然后对数据进行封装,转发到下一跳。如果有处理任务,需要当前节点进行智能计算,则会将数据输入指定的算子根据具体的处理任务进行智能计算,处理完成后将处理后数据进行封装,转发到下一跳。
步骤S9,目的客户端(客户端B)收到数据后,将封装后的数据解封装,获取到处理后数据,在客户端B继续相关内容的展示。
在一示例性实施例中,步骤S7中封装后的数据包中包括:会话标识、路径长度、传输路径、原始数据。从路由调度中心获取原始数据的传输路径为1-2-3-B(表示依次经过RTN网络节点1至3最终到达客户端B),传输过程中每经过一个RTN网络节点,就从传输路径删除所经过的节点信息,并将路径长度减一。
本申请的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被处理器运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本申请的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (20)
1.一种实时音视频传输网络的数据传输方法,其特征在于,应用于节点,所述方法包括:
从上一跳节点接收携带有第一数据的第一会话消息;
根据路由调度中心预先下发的处理任务和所述第一会话消息判断所述第一数据是否由当前节点进行处理;
在判断结果为是的情况下,根据所述处理任务处理所述第一数据得到第二数据;
将携带有所述第二数据的第二会话消息发送给下一跳节点。
2.根据权利要求1所述的方法,其特征在于,所述处理任务包含:会话标识、算子类型、任务描述信息;会话消息包含:会话标识、路径长度、传输路径,其中,所述会话消息包括所述第一会话消息和所述第二会话消息。
3.根据权利要求2所述的方法,其特征在于,根据路由调度中心预先下发的处理任务和所述第一会话消息判断所述第一数据是否由当前节点进行处理,包括:
比较所述处理任务的会话标识和所述第一会话消息的会话标识;
在所述处理任务的会话标识与所述第一会话消息的会话标识相同的情况下,确定所述第一数据由当前节点进行处理;
在所述处理任务的会话标识与所述第一会话消息的会话标识不同的情况下,确定所述第一数据不是由当前节点进行处理。
4.根据权利要求2所述的方法,其特征在于,根据所述处理任务处理所述第一数据得到第二数据,包括:
根据所述算子类型从所述路由调度中心预先下发的算子中确定目标算子;
根据所述任务描述信息将所述第一数据输入所述目标算子,得到所述目标算子输出的所述第二数据。
5.根据权利要求2所述的方法,其特征在于,在将携带有所述第二数据的第二会话消息发送给下一跳节点之前,所述方法还包括:
从所述第一会话消息的传输路径中去掉当前节点的路径信息,得到所述第二会话消息的传输路径;
将所述第一会话消息的路径长度减一,得到所述第二会话消息的路径长度,其中,所述路径长度用于指示所述传输路径中包含的节点数量;
根据所述第二会话消息的传输路径确定所述下一跳节点。
6.根据权利要求5所述的方法,其特征在于,在根据路由调度中心预先下发的处理任务和所述第一会话消息判断所述第一数据是否由当前节点进行处理之后,所述方法还包括:
在判断结果为否的情况下,将携带有所述第一数据的第二会话消息发送给所述下一跳节点。
7.根据权利要求1所述的方法,其特征在于,在根据路由调度中心预先下发的处理任务和所述第一会话消息判断所述第一数据是否由当前节点进行处理之前,所述方法还包括:
从所述路由调度中心获取所述处理任务,其中,所述路由调度中心用于在收到初始节点的业务请求后根据所述业务请求、网络拓扑关系、链路探测数据、各个节点的算子以及算子使用情况进行路径规划,生成所述处理任务和传输路径信息。
8.根据权利要求7所述的方法,其特征在于,在从所述路由调度中心获取所述处理任务之前,所述方法还包括:
向所述路由调度中心进行注册,其中,所述路由调度中心用于在各个节点注册完成后根据用户配置结果保存各个节点之间的网络拓扑关系和各个节点的算子。
9.根据权利要求8所述的方法,其特征在于,在向所述路由调度中心进行注册之后,所述方法还包括:
获取所述路由调度中心下发的与所述当前节点有关的网络拓扑关系;
根据与所述当前节点有关的网络拓扑关系进行网络探测,得到所述当前节点的链路探测数据;
将所述当前节点的链路探测数据定时上报给所述路由调度中心。
10.根据权利要求8所述的方法,其特征在于,在向所述路由调度中心进行注册之后,所述方法还包括:
获取所述路由调度中心下发的算子,其中,所述算子包括算法类型和算法参数;
将当前节点的算子使用情况定时上报给所述路由调度中心。
11.一种实时音视频传输网络的数据传输方法,其特征在于,应用于路由调度中心,所述方法包括:
接收初始节点发送的业务请求;
获取预先保存的网络拓扑关系、各个节点上报的链路探测数据、算子以及算子使用情况;
根据所述业务请求、所述网络拓扑关系、所述链路探测数据、所述算子以及所述算子使用情况进行路径规划,生成传输路径信息和目标节点的处理任务;
将所述传输路径信息下发给所述初始节点,并将所述处理任务下发给所述目标节点,其中,所述初始节点用于根据所述传输路径信息发送第一数据,所述目标节点用于在所述第一数据经过时根据所述处理任务处理所述第一数据,并将处理后的第一数据发送给下一跳节点,其中,所述目标节点为RTN网络节点。
12.根据权利要求11所述的方法,其特征在于,所述处理任务包含:会话标识、算子类型、任务描述信息;所述传输路径信息包含:会话标识、路径长度、传输路径。
13.根据权利要求11所述的方法,其特征在于,在接收初始节点发送的业务请求之前,所述方法还包括:
接收各个节点的注册信息进行节点注册,其中,所述注册信息包括以下至少之一:节点标识、节点运算能力、节点业务能力;
根据所述注册信息对各个节点之间的网络拓扑关系和各个节点的算子进行用户配置,并根据用户配置结果保存所述网络拓扑关系和所述算子。
14.根据权利要求13所述的方法,其特征在于,在根据所述注册信息对各个节点之间的网络拓扑关系和各个节点的算子进行用户配置,并根据用户配置结果保存所述网络拓扑关系和所述算子之后,所述方法还包括:
根据所述用户配置结果分别向每一个所述节点下发对应的网络拓扑关系;
指示各个节点根据所述对应的网络拓扑关系进行网络探测得到链路探测数据,其中,所述链路探测数据包括以下至少之一:丢包率、延迟数据、抖动数据、音视频卡顿率;
分别接收每一个所述节点定时上报的所述链路探测数据。
15.根据权利要求13所述的方法,其特征在于,在根据所述注册信息对各个节点之间的网络拓扑关系和各个节点的算子进行用户配置,并根据用户配置结果保存所述网络拓扑关系和所述算子之后,所述方法还包括:
根据所述用户配置结果分别向每一个节点下发对应的算子,其中,所述算子包括算法类型和算法参数;
分别接收每一个所述节点定时上报的所述算子使用情况。
16.根据权利要求11所述的方法,其特征在于,根据所述业务请求、所述网络拓扑关系、所述链路探测数据、所述算子以及所述算子使用情况进行路径规划,生成传输路径信息和目标节点的处理任务,包括:
根据所述业务请求、所述网络拓扑关系以及所述链路探测数据生成所述传输路径信息;
根据所述业务请求、所述算子以及所述算子使用情况生成所述目标节点的处理任务。
17.根据权利要求16所述的方法,根据所述业务请求、所述算子以及所述算子使用情况生成所述目标节点的处理任务,包括:
根据所述业务请求确定所述第一数据的处理任务,其中,处理任务包括算子类型和任务描述信息;
根据所述算子类型、所述算子以及所述算子使用情况从所述传输路径信息中确定所述目标节点。
18.一种实时音视频传输网络的数据传输系统,其特征在于,所述系统包括:
路由调度中心、多个节点;
路由调度中心,用于接收初始节点发送的业务请求;获取预先保存的网络拓扑关系、各个节点上报的链路探测数据、算子以及算子使用情况;根据所述业务请求、所述网络拓扑关系、所述链路探测数据、所述算子以及所述算子使用情况进行路径规划,生成传输路径信息和目标节点的处理任务;将所述传输路径信息下发给所述初始节点,并将所述处理任务下发给所述目标节点,其中,所述初始节点用于根据所述传输路径信息发送第一数据,所述目标节点用于在所述第一数据经过时根据所述处理任务处理所述第一数据;
所述节点,用于从上一跳节点接收携带有所述第一数据的第一会话消息;根据所述处理任务和所述第一会话消息判断所述第一数据是否由当前节点进行处理;在判断结果为是的情况下,根据所述处理任务处理所述第一数据得到第二数据;将携带有所述第二数据的第二会话消息发送给下一跳节点。
19.一种计算机可读的存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被处理器运行时执行所述权利要求1至17任一项中所述的方法。
20.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至17中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311186209.7A CN116938907B (zh) | 2023-09-14 | 2023-09-14 | 一种实时音视频传输网络的数据传输方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311186209.7A CN116938907B (zh) | 2023-09-14 | 2023-09-14 | 一种实时音视频传输网络的数据传输方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116938907A CN116938907A (zh) | 2023-10-24 |
CN116938907B true CN116938907B (zh) | 2024-02-23 |
Family
ID=88384691
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311186209.7A Active CN116938907B (zh) | 2023-09-14 | 2023-09-14 | 一种实时音视频传输网络的数据传输方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116938907B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103533584A (zh) * | 2013-10-24 | 2014-01-22 | 厦门大学 | 一种水声传感器网络多信道媒介访问控制方法 |
CN106034330A (zh) * | 2015-03-17 | 2016-10-19 | 网宿科技股份有限公司 | 基于内容分发网络的移动终端流量处理方法、装置及系统 |
CN113079218A (zh) * | 2021-04-09 | 2021-07-06 | 网络通信与安全紫金山实验室 | 一种面向服务的算力网络系统、工作方法及存储介质 |
CN115883490A (zh) * | 2022-11-29 | 2023-03-31 | 电子科技大学 | 基于sdn的分布式计算通信一体化调度方法及相关组件 |
CN116418700A (zh) * | 2023-04-28 | 2023-07-11 | 桂林电子科技大学 | 一种基于dpdk的分布式数据捕获方法 |
CN116708598A (zh) * | 2023-05-12 | 2023-09-05 | 瞬已网络科技(上海)有限公司 | 用于实时网络传输的系统及方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4045456B2 (ja) * | 2005-06-22 | 2008-02-13 | コニカミノルタビジネステクノロジーズ株式会社 | 画像通信装置 |
US11922564B2 (en) * | 2017-06-05 | 2024-03-05 | Umajin Inc. | Generative content system that supports location-based services and methods therefor |
-
2023
- 2023-09-14 CN CN202311186209.7A patent/CN116938907B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103533584A (zh) * | 2013-10-24 | 2014-01-22 | 厦门大学 | 一种水声传感器网络多信道媒介访问控制方法 |
CN106034330A (zh) * | 2015-03-17 | 2016-10-19 | 网宿科技股份有限公司 | 基于内容分发网络的移动终端流量处理方法、装置及系统 |
CN113079218A (zh) * | 2021-04-09 | 2021-07-06 | 网络通信与安全紫金山实验室 | 一种面向服务的算力网络系统、工作方法及存储介质 |
CN115883490A (zh) * | 2022-11-29 | 2023-03-31 | 电子科技大学 | 基于sdn的分布式计算通信一体化调度方法及相关组件 |
CN116418700A (zh) * | 2023-04-28 | 2023-07-11 | 桂林电子科技大学 | 一种基于dpdk的分布式数据捕获方法 |
CN116708598A (zh) * | 2023-05-12 | 2023-09-05 | 瞬已网络科技(上海)有限公司 | 用于实时网络传输的系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116938907A (zh) | 2023-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109218654B (zh) | 一种视联网会议控制方法及系统 | |
CN109120946B (zh) | 收看直播的方法和装置 | |
CN110502259B (zh) | 服务器版本升级方法、视联网系统、电子设备及存储介质 | |
CN111225230B (zh) | 一种网络直播数据的管理方法以及相关装置 | |
CN109996086B (zh) | 一种视联网业务状态查询方法及装置 | |
CN109769123B (zh) | 一种视联网数据的处理方法及系统 | |
CN109672857B (zh) | 监控资源的信息处理方法和装置 | |
CN109462761A (zh) | 一种视频解码方法及装置 | |
CN111147362B (zh) | 多人即时通讯方法、系统、装置及电子设备 | |
CN109246135B (zh) | 一种流媒体数据的获取方法和系统 | |
CN110839142B (zh) | 监控目录的共享方法和装置 | |
CN110225266A (zh) | 数据处理方法、装置及存储介质 | |
CN110445723A (zh) | 一种网络数据调度方法及边缘节点 | |
CN111327868B (zh) | 设置会议发言方角色的方法、终端、服务器、设备及介质 | |
CN110113558B (zh) | 数据处理方法、装置、系统及计算机可读存储介质 | |
US9930411B2 (en) | Networking method and networking device | |
CN116915688B (zh) | 一种实时音视频传输网络的数据传输方法及系统 | |
CN111212255B (zh) | 监控资源获取方法、装置及计算机可读存储介质 | |
CN110519331B (zh) | 一种视联网资源处理方法及装置 | |
CN116938907B (zh) | 一种实时音视频传输网络的数据传输方法及系统 | |
CN111147795B (zh) | 资源调度方法、服务器、终端、电子设备及存储介质 | |
CN111131749B (zh) | 一种视频会议的控制方法及装置 | |
CN109819209B (zh) | 一种监控资源调取的系统、方法和装置 | |
CN110557372B (zh) | 一种数据获取方法和系统 | |
CN108616760A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |