CN113099261B - 节点处理方法及装置、节点处理系统 - Google Patents

节点处理方法及装置、节点处理系统 Download PDF

Info

Publication number
CN113099261B
CN113099261B CN202110457596.8A CN202110457596A CN113099261B CN 113099261 B CN113099261 B CN 113099261B CN 202110457596 A CN202110457596 A CN 202110457596A CN 113099261 B CN113099261 B CN 113099261B
Authority
CN
China
Prior art keywords
node
target
weight value
candidate
initial
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
Application number
CN202110457596.8A
Other languages
English (en)
Other versions
CN113099261A (zh
Inventor
孙袁袁
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.)
Shanghai Bilibili Technology Co Ltd
Original Assignee
Shanghai Bilibili Technology Co Ltd
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 Shanghai Bilibili Technology Co Ltd filed Critical Shanghai Bilibili Technology Co Ltd
Priority to CN202110457596.8A priority Critical patent/CN113099261B/zh
Publication of CN113099261A publication Critical patent/CN113099261A/zh
Application granted granted Critical
Publication of CN113099261B publication Critical patent/CN113099261B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供节点处理方法及装置,其中,所述节点处理方法应用于节点分配服务端,包括获取与所述节点分配服务端对应的多个初始节点,并按照位置信息对所述多个初始节点进行分类;在根据分类结果确定所述位置信息存在对应的初始节点的情况下,从所述多个初始节点中确定所述位置信息的每个网络服务方对应的多个候选节点;根据预设维度确定每个候选节点的目标权重值,并将所述每个候选节点的目标权重值、以及与所述每个候选节点对应的域名地址发送至节点解析服务端。

Description

节点处理方法及装置、节点处理系统
技术领域
本申请涉及计算机技术领域,特别涉及两种节点处理方法。本申请同时涉及两种节点处理装置,一种节点处理系统,一种计算设备,以及一种计算机可读存储介质。
背景技术
随着通信技术的发展,网络视频直播由于其直观、内容丰富等特点,尤其受到人们的欢迎。在现有直播体系中,通常是主播客户端将直播视频流上传至用于接收推流的直播服务节点(即边缘计算节点),边缘计算节点再将视频流转发给各家的CDN(ContentDelivery Network,内容分发网络)。然而目前,主播客户端在实际推流的过程中,往往会由于选择的边缘计算节点的质量较差,而出现一些推流不通畅的现象,造成用户观看卡顿或者无法观看的问题,极大地影响用户的观看效果。
发明内容
有鉴于此,本申请实施例提供了两种节点处理方法。本申请同时涉及两种节点处理装置,一种节点处理系统,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的因边缘计算节点的质量导致的用户观看卡顿或者无法观看的技术问题。
根据本申请实施例的第一方面,提供了一种节点处理方法,应用于节点分配服务端,包括:
获取与所述节点分配服务端对应的多个初始节点,并按照位置信息对所述多个初始节点进行分类;
在根据分类结果确定所述位置信息存在对应的初始节点的情况下,从所述多个初始节点中确定所述位置信息的每个网络服务方对应的多个候选节点;
根据预设维度确定每个候选节点的目标权重值,并将所述每个候选节点的目标权重值、以及与所述每个候选节点对应的域名地址发送至节点解析服务端。
根据本申请实施例的第二方面,提供了一种节点处理方法,应用于节点解析服务端,包括:
接收目标对象的节点获取请求,其中,所述节点获取请求中携带有域名地址和所述目标对象的位置信息以及网络服务方;
对所述域名地址进行解析,以获得与所述域名地址对应的多个初始节点;
从所述多个初始节点中确定与所述目标对象的位置信息以及网络服务方对应的多个候选节点,并确定每个候选节点的目标权重值;
基于所述目标权重值确定目标节点,并将所述目标节点发送至所述目标对象,其中,所述目标权重值为从节点分配服务端接收获得。
根据本申请实施例的第三方面,提供了一种节点处理系统,包括节点分配服务端和节点解析服务端,其中,
所述节点分配服务端,被配置为获取与所述节点分配服务端对应的多个初始节点,并按照位置信息对所述多个初始节点进行分类;在根据分类结果确定所述位置信息存在对应的初始节点的情况下,从所述多个初始节点中确定所述位置信息的每个网络服务方对应的多个候选节点;根据预设维度确定每个候选节点的目标权重值,并将所述每个候选节点的目标权重值、以及与所述每个候选节点对应的域名地址发送至节点解析服务端;
所述节点分配服务端,还被配置为接收目标对象发送的域名地址获取请求,基于所述获取请求为所述目标对象返回所述域名地址;
所述节点解析服务端,被配置为接收目标对象的节点获取请求,其中,所述节点获取请求中携带有域名地址和所述目标对象的位置信息以及网络服务方;对所述域名地址进行解析,以获得与所述域名地址对应的多个初始节点;从所述多个初始节点中确定与所述目标对象的位置信息以及网络服务方对应的多个候选节点,并确定每个候选节点的目标权重值;基于所述目标权重值确定目标节点,并将所述目标节点发送至所述目标对象,其中,所述目标权重值为从所述节点分配服务端接收获得。
根据本申请实施例的第四方面,提供了一种节点处理装置,应用于节点分配服务端,包括:
节点分类模块,被配置为获取与所述节点分配服务端对应的多个初始节点,并按照位置信息对所述多个初始节点进行分类;
候选节点确定模块,被配置为在根据分类结果确定所述位置信息存在对应的初始节点的情况下,从所述多个初始节点中确定所述位置信息的每个网络服务方对应的多个候选节点;
权重值计算模块,被配置为根据预设维度确定每个候选节点的目标权重值,并将所述每个候选节点的目标权重值、以及与所述每个候选节点对应的域名地址发送至节点解析服务端。
根据本申请实施例的第五方面,提供了一种节点处理装置,应用于节点解析服务端,包括:
请求接收模块,被配置为接收目标对象的节点获取请求,其中,所述节点获取请求中携带有域名地址和所述目标对象的位置信息以及网络服务方;
解析模块,被配置为对所述域名地址进行解析,以获得与所述域名地址对应的多个初始节点;
权重值确定模块,被配置为从所述多个初始节点中确定与所述目标对象的位置信息以及网络服务方对应的多个候选节点,并确定每个候选节点的目标权重值;
目标节点确定模块,被配置为基于所述目标权重值确定目标节点,并将所述目标节点发送至所述目标对象,其中,所述目标权重值为从节点分配服务端接收获得。
根据本申请实施例的第六方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述节点处理方法的步骤。
根据本申请实施例的第七方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现所述节点处理方法的步骤。
本申请提供的所述节点处理方法及装置,其中,所述节点处理方法应用于节点分配服务端,包括获取与所述节点分配服务端对应的多个初始节点,并按照位置信息对所述多个初始节点进行分类;在根据分类结果确定所述位置信息存在对应的初始节点的情况下,从所述多个初始节点中确定所述位置信息的每个网络服务方对应的多个候选节点;根据预设维度确定每个候选节点的目标权重值,并将所述每个候选节点的目标权重值、以及与所述每个候选节点对应的域名地址发送至节点解析服务端。具体的,所述节点处理方法根据预设维度分别计算每个位置信息的每个网络服务方对应的每个候选节点的目标权重值,后续实际应用中,可以基于目标权重值确定出推流质量较好的候选节点推荐给主播,以实现主播可以基于该推流质量较好的候选节点提高推流质量,从而解决因边缘计算节点的质量导致的用户观看卡顿或者无法观看的技术问题。
附图说明
图1是本申请一实施例提供的一种边缘计算节点的HTTP DNS调度逻辑示意图;
图2是本申请一实施例提供的一种边缘计算节点的DNS调度逻辑示意图;
图3是本申请一实施例提供的第一种节点处理方法的流程图;
图4是本申请一实施例提供的一种节点处理方法中基于边缘计算节点进行推流、拉流的处理过程示意图;
图5是本申请一实施例提供的第二种节点处理方法的流程图;
图6是本申请一实施例提供的第三种节点处理方法的流程图;
图7是本申请一实施例提供的第一种节点处理装置的结构示意图;
图8是本申请一实施例提供的第二种节点处理装置的结构示意图;
图9是本申请一实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
在本申请一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请一个或多个实施例。在本申请一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本申请一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本申请一个或多个实施例涉及的名词术语进行解释。
直播流:直播音视频数据的传输,它能够被作为一个稳定的和连续的流通过网络传输给观众观看。
直播拉流:是指通过直播云平台到用户指定的源站拉取直播流的过程。
DNS(域名解析服务):即将域名转换为IP的服务。例如访问baidu.com,首先要通过DNS查出实际访问服务器IP为15.1.1.1,然后才是真实的访问;域名和IP的映射关系1对N的;一个域名可以有多个服务器IP对应。
HTTPDNS:为移动客户端量身定做的基于HTTP协议和域名解析的流量调度解决方案。
CDN(内容分发网络):避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。
CDN服务商:提供内容分发网络的服务商。
边缘计算节点:用于接收推流的服务节点。
SRT协议:基于UDP的传输协议。
RTMP协议:基于TCP的实时消息传输协议。
TCP(Transmission Control Protocol,传输控制协议):一种面向连接的、可靠的、基于字节流的传输层通信协议,建立TCP链接后,可以进行双向数据传输。
在现有直播体系中,一般由主播推流到直播的边缘计算节点上,边缘计算节点再将视频流转发给各家CDN,而接收推流的边缘计算节点的质量,将直接影响用户的观看。
目前,用户选择边缘计算节点进行推流有两种方式:DNS调度和HTTP DNS调度。实际应用中,采用DNS进行节点调度和采用HTTP DNS进行节点调度的区别在于:
实时性:HTTP DNS每次调度都需要向服务端请求,获取实时的可用节点,但是对于DNS调度而言:DNS注册IP映射是在调度之前就已经做好的,这个决定了节点并不是实时更新。原因是:DNS解析以及用户端的DNS解析缓存,均是有TTL时间的,也即缓存时间,也决定了其不具有实时性。由于用户本地网络或运营商网络故障,均有可能会影响DNS解析的成功率。所以一般情况下,对于DNS的更新频率会远低于HTTP DNS调度,更多的是看一段时间内的覆盖质量,而非短时间内的质量覆盖。
节点调度的精准性:对于HTTP DNS而言,可以请求都给予不同的节点,完全由中心服务进行控制节点调度的比例和协议;对于DNS而言,无法精准控制,因为一个域名可以对应多个IP解析,用户使用哪个IP,由IP在DNS解析中的权重+DNS解析服务商所决定,和用户本身的网络情况也有所关系,因此只能在全局上配置单个节点IP在特定区域的覆盖权重,而无法控制精准。
本说明书实施例仅针对DNS调度的情况进行详细介绍。
在现有推流节点(即边缘计算节点)的部署,一般是部署在物理机器或者容器上,在部署完成后,运维手动的将IP注册到DNS中和业务方的HTTP DNS可调度列表中。后续通过节点探活来判断节点是否异常,若存在异常,则从DNS和HTTP DNS中摘除,其中,节点探活可以理解为判断推流节点是否能够正常提供推流服务。
现有的直播推流体系中,未考虑节点(即边缘计算节点)调度质量:当用户来请求调度节点的时候,只能看是否有节点覆盖了用户所在区域,但是没有从节点质量的角度,考虑提供给用户更优的节点,从而减少推流导致的卡顿和观看问题。未从推入流协议的角度区分节点质量:在不同的节点,由于机器配置和性能的区别,能够接收推流的协议的质量也是不同的,在确定用户推流协议后,应给予协议覆盖更好的质量节点。未从推出流的协议区分流质量:视频流推到边缘计算节点上,边缘计算节点需要将视频流转推给各家CDN,若因为出口带宽等限制导致推出流的质量较差,最后会影响用户观看。所以理论上,出口带宽的质量也应该考虑在节点质量中,在视频流推出的过程中,也是需要按照协议统计推出的质量的。未考虑节点在不同省份的覆盖质量:同一个节点,可以覆盖附近的省份,若主播推流在覆盖的省份内,节点均可以使用。但是节点在不同省份,因为网络的问题,会导致覆盖质量有差别。例如A,B两个节点均可以覆盖广东,广西2个省份,A节点广东省份覆盖质量更好,B节点广西省份覆盖质量更好,则用户在广东推流的时候,理论上应该选择A节点,而不是AB中随机选取。
基于此,在本申请中,提供了两种节点处理方法。本申请同时涉及两种节点处理装置,一种节点处理系统,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
参见图1,图1示出了根据本申请一实施例提供的一种边缘计算节点的HTTP DNS调度逻辑示意图。
需要说明的是,HTTP DNS调度实际上是一种302调度逻辑,其逻辑是为给用户分配的是一个调度地址,而不是一个直接域名地址(本申请实施例中也可称为推流地址或推流域名),用户二次发起HTTP请求(网络请求),向调度地址请求真实的IP推流地址,因为HTTP请求是实时的,没有任何缓存,故能够更加实时的获取推流地址,以返回至客户端。
如图1中所示,图1中包括主播、中心服务(即直播平台的一个服务,主要负责给用户分配推流域名)、HTTP DSN调度服务、以及边缘计算节点,具体的:
主播向中心服务请求推流地址,中心服务向主播返回一个302调度地址,例如http://2.2.2.2/d?domain=www.**.com,主播接收到该302调度地址之后,再次发起HTTP请求,HTTP DSN调度服务实时读取可用的边缘计算节点(例如图1中的边缘计算节点1和边缘计算节点2),从可用的边缘计算节点中选取一个提供给主播推流,主播接收到HTTP DSN调度服务返回的一个边缘计算节点IP后,开始正式推流,即向该边缘计算节点进行推流,以实现主播将视频流通过该边缘计算节点IP实时推送至CDN,再由CDN分发至用户,供用户观看。
参见图2,图2示出了根据本申请一实施例提供的一种边缘计算节点的DNS调度逻辑示意图。
需要说明的是,DNS调度可以直接分配给用户一个推流域名,以分配的域名为www.***.com,边缘计算节点IP为8.8.8.8为例,进行详细说明。
如图2中所示,图2中包括主播、中心服务(即直播平台的一个服务,主要负责给用户分配推流域名)、DNS(即域名解析服务)以及边缘计算节点,具体的:
中心服务读取可用的边缘计算节点IP,并将IP注册到DNS解析服务器中,即将边缘计算节点IP:8.8.8.8增加到www.***.com域名下。
实际应用中,主播向中心服务请求推流域名,中心服务在接收到推流域名的请求之后,将www.***.com的推流域名分配给主播,主播接收到推流域名后,进行视频推流,并根据DNS解析协议,先向DNS解析服务器发送域名解析请求,DNS解析服务器在接收到该域名解析请求的情况下,将www.***.com下可用的边缘计算节点IP返回给主播,主播接收到真实的边缘计算节点IP之后,开始向该边缘计算节点进行推流,以实现主播将视频流通过该边缘计算节点IP实时推送至CDN,再由CDN分发至用户,供用户观看。
本申请实施例提供的节点处理系统,即是基于DNS调度逻辑实现的,具体的,仍以图2为例,所述节点处理系统包括节点分配服务端和节点解析服务端,其中,
所述节点分配服务端,被配置为获取与所述节点分配服务端对应的多个初始节点,并按照位置信息对所述多个初始节点进行分类;在根据分类结果确定所述位置信息存在对应的初始节点的情况下,从所述多个初始节点中确定所述位置信息的每个网络服务方对应的多个候选节点;根据预设维度确定每个候选节点的目标权重值,并将所述每个候选节点的目标权重值、以及与所述每个候选节点对应的域名地址发送至节点解析服务端;
所述节点分配服务端,还被配置为接收目标对象发送的域名地址获取请求,基于所述获取请求为所述目标对象返回所述域名地址;
所述节点解析服务端,被配置为接收目标对象的节点获取请求,其中,所述节点获取请求中携带有域名地址和所述目标对象的位置信息以及网络服务方;对所述域名地址进行解析,以获得与所述域名地址对应的多个初始节点;从所述多个初始节点中确定与所述目标对象的位置信息以及网络服务方对应的多个候选节点,并确定每个候选节点的目标权重值;基于所述目标权重值确定目标节点,并将所述目标节点发送至所述目标对象,其中,所述目标权重值为从所述节点分配服务端接收获得。
其中,节点分配服务端可以理解为图2中的中心服务,节点解析服务端可以理解为图2中的DNS解析服务,目标对象可以理解为图2中的主播,节点可以理解为图2中的边缘计算节点。
具体的,与节点分配服务端对应的多个初始节点,可以理解为与中心服务对应的,多个可用的边缘计算节点;位置信息可以理解为地理位置信息,例如行政区域、省份、地级市等等;网络服务方可以理解为移动、联通、电信等网络服务提供方,也可以称为运营商。
实际应用中,中心服务获取对应的多个可用的边缘计算节点,并按照位置信息对多个可用的边缘计算节点进行分类;然后根据分类结果判断每个位置信息是否存在对应的边缘计算节点,若存在,则从多个可用的边缘计算节点中确定每个位置信息的每个运营商对应的多个候选节点;最后根据预设维度计算出每个候选节点的目标权重值,并将所述每个候选节点的目标权重值、以及与所述每个候选节点对应的域名地址发送至DNS解析服务,实现边缘计算节点以及域名地址在DNS解析服务的注册。
在注册完成后,中心服务接收主播发送的域名地址获取请求,基于该获取请求,中心服务向主播返回在DNS解析服务注册过的域名地址。
主播在接收该域名地址后,向DNS解析服务请求节点获取请求,DNS解析服务接收主播发送的节点获取请求,基于对该节点获取请求中的域名地址进行解析,以获得该域名地址对应的多个边缘计算节点,然后基于节点获取请求中携带的位置信息以及运营商确定该位置信息的该运营商对应的多个候选节点,且获取每个候选节点的目标权重值,最后基于目标权重值确定目标节点,并将该目标节点发送至主播,使得主播通过该目标节点进行推流;例如主播是安徽移动的,则需要不能给主播分配安徽联通的节点。
本申请实施例中,节点分配服务端基于预设维度实时计算每个可用的初始节点覆盖其所在位置的权重值,当用户在请求推流节点的情况下,节点解析服务端可以基于每个初始节点覆盖其所在位置的权重值,为用户推荐权重值较高的,质量较好的推流节点,从而整体提升推流效率。
参见图3,图3示出了本申请一实施例提供的第一种节点处理方法的流程图,其中,所述节点处理方法应用于节点分配服务端,具体包括以下步骤。
步骤302:获取与所述节点分配服务端对应的多个初始节点,并按照位置信息对所述多个初始节点进行分类。
其中,与所述节点分配服务端对应的多个初始节点,可以理解为与节点分配服务端对应的、可用的多个初始节点。本申请实施例中,节点又可以称为推流节点或者边缘计算节点等。
而位置信息可以理解为地理位置信息,例如行政区域、省份、地级市等位置信息。
本申请实施例中,位置信息又包括一级位置信息和二级位置信息,例如一级位置信息为行政区域,二级位置信息为省份。
具体实施时,节点分配服务端在获取可用的、多个初始节点之后,会按照位置信息对获取到的多个初始节点进行分类。
例如获取到的多个初始节点为:初始节点1、初始节点2、初始节点3、初始节点4和初始节点5;位置信息为行政区域,包括华北地区、华东地区。
其中,初始节点1、初始节点2属于华北地区,初始节点3、初始节点4、初始节点5属于华东地区,那么按照位置信息对多个初始节点进行分类后,可以确定初始节点1、初始节点2属于一类,属于华北地区;初始节点3、初始节点4、初始节点5属于一类,属于华东地区。
而具体实施时,位置信息包括一级位置信息和二级位置信息,例如一级位置信息为华中地区,二级位置信息则为华东地区包括的多个省份信息,例如上海、江苏、浙江、安徽等。
那么按照位置信息对多个初始节点进行分类,则可以理解为先按照一级位置信息对多个初始节点进行分类,再基于分类结果确定每个二级位置信息对应的初始节点。即每个二级位置信息对应的初始节点为其一级位置信息对应的初始节点。
如上所述,上海、江苏、浙江、安徽对应的初始节点均为初始节点3、初始节点4、初始节点5。
此外,为了保证节点的权重更新频率,使得DNS每次在进行节点获取时,均可以以最新的节点权重值进行节点推荐;节点分配服务端可以实时获取与所述节点分配服务端对应的多个初始节点,以便后续可以实时的对节点的权重值进行更新,尽量保证注册在DNS的节点的目标权重值均是最新的。
步骤304:在根据分类结果确定所述位置信息存在对应的初始节点的情况下,从所述多个初始节点中确定所述位置信息的每个网络服务方对应的多个候选节点。
其中,网络服务方可以理解为移动、联通、电信等网络服务提供方,也可以称为运营商。即每个初始节点对应一个不同的网络服务方,例如初始节点1为移动节点,初始节点2为联通节点,初始节点3为移动节点,初始节点4为电信节点,初始节点5为移动节点等。
实际应用中,在根据位置信息对多个初始节点进行分类后,可以获得每个位置信息对应的初始节点,例如每个省份对应的初始节点。
那么在某个位置信息存在对应的初始节点的情况下,则可以从多个初始节点中确定该位置信息的每个网络服务方对应的多个候选节点。
例如位置信息为安徽,对应的初始节点为初始节点3、初始节点4、初始节点5,且初始节点3为移动节点,初始节点4为电信节点,初始节点5为移动节点。那么则可以确定该位置信息的移动服务方对应的候选节点为:初始节点3和初始节点5,电信服务方对应的候选节点为:初始节点4。
本说明书另一实施例中,所述按照位置信息对所述多个初始节点进行分类,包括:
按照一级位置信息对所述多个初始节点进行初始分类,并基于二级位置信息与所述一级位置信息的关联关系,确定所述二级位置信息对应的多个初始节点;
相应地,所述根据分类结果确定所述位置信息存在对应的初始节点,包括:
根据分类结果确定所述二级位置信息存在对应的初始节点。
具体的,一级位置信息可以理解为行政区域,二级位置信息可以理解为省份,在获取多个可用的初始节点之后,将初始节点按照行政区域划分,然后将这些节点确定为对应的行政区域的每个省份的节点,然后计算每个省份对应的节点在其省份的目标权重值。
步骤306:根据预设维度确定每个候选节点的目标权重值,并将所述每个候选节点的目标权重值、以及与所述每个候选节点对应的域名地址发送至节点解析服务端。
其中,预设维度可以根据实际需求进行设置,例如需要获得较为准确的每个节点的目标权重值的情况下,可以从多个维度进行权重值计算,若需要比较快速的确定每个节点的目标权重值的情况下,可以从一个或者两个维度进行权重值计算。
具体的,所述根据预设维度确定每个候选节点的目标权重值,包括:
确定所述位置信息的每个网络服务方对应的每个候选节点的初始权重值以及位置覆盖值;
根据所述初始权重值和所述位置覆盖值确定所述位置信息的每个网络服务方对应的每个候选节点的目标权重值。
其中,每个位置信息的每个网络提供方对应的每个候选节点均有一个初始化权重(即初始权重值),例如初始化权重为0。
实际应用中,获取每个位置信息的每个网络提供方对应的每个候选节点的初始权重值;同时,获取每个位置信息的每个网络服务方对应的每个候选节点的位置覆盖值,例如初始节点3在安徽移动下的位置覆盖值。
然后将该候选节点的初始权重值和位置覆盖值相加,以获得该候选节点的目标权重值。
以公式表示的话,计算每个候选节点的权重为:单个节点权重=覆盖分值+原始权重,其中,单个节点权重即为单个候选节点的目标权重值,覆盖分值即为位置覆盖值,原始权重即为初始化权重值。
本说明书实施例中,可以仅以位置覆盖值一种维度下的确定每个候选节点的目标权重值,便于后续实际应用中对目标权重值的快速获取,提高工作效率。
具体的,所述确定所述位置信息的每个网络服务方对应的每个候选节点的位置覆盖值,包括:
确定所述位置信息的每个网络服务方对应的每个候选节点,在所述位置信息的抖动率和断开率;
基于所述抖动率和所述断开率确定所述位置信息的每个网络服务方对应的每个候选节点的位置覆盖值。
其中,抖动率可以理解为边缘计算节点的网络发生轻微抖动的概率,断开率可以理解为节点解析服务端的网络发生剧烈抖动或者服务器直接重启,导致直播流断开的概率。
具体的,根据位置信息确定每个候选节点的抖动率进而确定断开率,并基于每个候选节点的抖动率和断开率确定每个候选节点的位置覆盖值。
实际应用中,主播将直播流推流到边缘计算节点上,若在主播网络正常的情况下,主播的推流链接应该是一直保持稳定的,若边缘计算节点的网络发生轻微抖动,可能会导致该节点上的直播流发生抖动,进而,本申请实施例可通过判断在一个时间周期内,一个边缘计算节点上有多少条直播流发生抖动,从而一定程度反推边缘计算节点的质量。
主播推流到边缘计算节点上,若在主播网络正常的情况下,主播的推流连接应该是一直保持连接的。若边缘计算节点的网络发生了剧烈抖动或者服务器直接重启,则可能导致直播流被断开;即网络抖动的程度决定了影响直播流的数量,若边缘计算节点重启则影响所有直播流;进而本申请实施例提供的节点确定方法通过判断在一个时间周期内,一个边缘计算节点有多少条直播流发生了断开,则可以反推边缘计算节点的质量。
基于此,根据上述方法确定候选节点的抖动率和断开率之后,覆盖质量=1-抖动率-断开率,覆盖质量的分值越高,质量越好,说明抖动和断开的频率越少;进而可根据该候选节点的抖动率和断开率确定每个候选节点在位置信息下的位置覆盖值。
本申请实施例中,通过候选节点的抖动率和断开率计算每个候选节点的位置覆盖值,基于该位置覆盖值判断每个候选节点是否稳定,通过位置覆盖维度计算每个候选节点的目标权重值,进而提高稳定的候选节点被选中的概率。
此外,所述确定所述位置信息的每个网络服务方对应的每个初始节点,在所述位置信息的抖动率和断开率,包括:
获取预设时间周期内所述位置信息的每个网络服务方对应的每个候选节点,处理数据时的数据抖动个数、数据处理数量以及数据断开数量;
根据所述数据抖动个数以及所述数据处理数量确定所述每个候选节点的抖动率,以及根据所述数据断开数量以及所述数据处理数量确定所述每个候选节点的断开率。
其中,数据抖动个数可以理解为一定周期内发生抖动的数量点的个数;数据处理数量可以理解为一定周期内该边缘计算节点上总接收流数;数据断开数量可以理解为一定周期内一个边缘计算节点有多少直播流发生断开的数量。
实际应用中,其判断抖动的逻辑:在网络稳定的情况下,边缘计算节点接收用户推流的传输的网络包的数量是固定的,当网络质量差的情况下,部分传输包会存储在用户端,当边缘计算节点网络正常后,可以大量接收请求时,数据传输包会在瞬间被接收,这样就导致了接收用户传输的网络包数量发生上下抖动;以一条直播流,一个时间周期5分钟为例:10s打一次接收推流网络传输包的数量点,5分钟内容一共会有30个点,先计算30个点的平均接收网络包数量,然后判断有多少个点超过平均值的30%,超过即为抖动。若抖动点数>总点数*30%,则这个时间段内,该条直播流发生了抖动,即边缘计算节点抖动的算法为:抖动率=流抖动的个数/该边缘计算节点上总接收流数。
沿用上例,若在时间周期为5分钟为例,一个边缘计算节点有5条直播流发生了断开,而该边缘计算节点上总接收的直播流为30条,则边缘计算节点断开率的算法为:主动断开率=断开流数/该边缘计算节点上总接收流数,即断开率=5/30。
本申请实施例提供的节点处理方法,通过候选节点的抖动率和断开率计算每个候选节点的位置覆盖值,基于该位置覆盖值判断每个候选节点是否稳定,通过位置覆盖维度计算每个候选节点的目标权重值,进而提高稳定的候选节点被选中的概率。
另一种情况下,所述根据所述初始权重值和所述位置覆盖值确定所述位置信息的每个网络服务方对应的每个候选节点的目标权重值,包括:
根据所述初始权重值、所述位置覆盖值以及预设权重值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值。
具体的,根据所述初始权重值、所述位置覆盖值以及预设权重值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值,在具体实施时的具体实现步骤如下所述:
确定所述位置信息的每个网络服务方对应的每个候选节点的初始权重值以及位置覆盖值;
根据所述初始权重值和所述位置覆盖值确定所述位置信息的每个网络服务方对应的每个候选节点的候选权重值;
根据所述候选权重值和预设权重值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值。
其中,初始权重值以及位置覆盖值的详细介绍可以参见上述实施例,在此不再赘述。
具体的,获取每个候选节点的初始权重值和位置权重值之后,可以基于该初始权重值和位置覆盖值计算获得每个候选节点的候选权重值,实际应用中,该候选权重值可以理解为上述实施例的目标权重值,而在此实施例中,还需要从位置信息覆盖维度进一步明确每个候选节点的目标权重值。
实际应用中,预设权重值可以理解为根据位置信息为与该位置信息对应的目标候选节点设置的权重值。
仍以候选节点为初始节点3和初始节点5为例,其中,初始节点3为安徽移动节点,初始节点5为上海移动节点,位置信息为安徽。
那么预设权重值则可以理解为根据位置信息安徽,为与安徽对应的目标候选节点:安徽移动节点,初始节点3设置的权重值。
具体实施时,在确定目标候选节点的预设权重值后,可以根据该候选权重值和预设权重值计算出目标候选节点的目标权重值,和除目标候选节点之后的其他候选节点的目标权重值。
本申请实施例中,从候选节点在位置信息下的位置覆盖值以及本地覆盖的两个维度综合计算每个候选节点的目标权重值,可以提高候选节点的目标权重值的计算准确度,使得后续可以基于目标权重值将质量更好的节点推荐给用户,以解决推流节点的质量问题。
具体的,所述根据所述初始权重值和所述位置覆盖值确定所述位置信息的每个网络服务方对应的每个候选节点的目标权重值之后,还包括:
根据所述位置信息确定所述位置信息的每个网络服务方对应的多个候选节点中的目标候选节点,并为所述目标候选节点分配对应的预设权重值。
实际应用中,在进行预设权重值确定时,先根据位置信息从多个候选节点中确定目标候选节点,然后为目标候选节点分配对应的预设权重值。
沿用上例,可以根据位置信息从初始节点3和初始节点5中确定初始节点3为目标候选节点,然后为初始节点3设置预设权重值,例如预设权重值为10、20等。
本申请实施例中,在对候选节点进行目标权重值计算时,考虑本地覆盖维度,从本地节点质量最优的角度调整目标候选节点的优先级,使得后续进行节点推荐时,可以大概率的将本地节点推荐给本地用户,以提升节点推流质量。
那么,在确定了目标候选节点的预设权重值的情况下,所述所述根据所述初始权重值、所述位置覆盖值以及预设权重值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值,包括:
根据所述初始权重值、所述位置覆盖值以及预设权重值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,
并根据所述初始权重值以及所述位置覆盖值确定除所述目标候选节点之外的每个其他候选节点的目标权重值。
具体实施时,在确定了目标候选节点,以及目标候选节点的预设权重值之后,将目标候选节点的候选权重值(基于初始权重值以及位置覆盖值获得)加预设权重值作为该目标候选节点的目标权重值,将除目标候选节点之后的其他候选节点的候选权重值作为其目标权重值。
以公式表示的话,目标候选节点的目标权重值=候选权重值+预设权重值;除目标候选节点之外的每个其他候选节点目标权重值=候选权重值。
通俗理解,即在计算出多个候选节点中的每个候选节点的候选权重值之后,仅为该多个候选节点中确定出的目标候选节点的候选权重值加预设权重值,作为该目标候选节点的目标权重值,其他的候选节点还是以候选权重值作为目标权重值,通过此种方式增加本地覆盖的目标候选节点的级别,以在后续进行节点推荐时可以实现不跨区域推荐。
本说明书另一实施例中,所述根据所述初始权重值、所述位置覆盖值以及预设权重值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值,包括:
根据所述初始权重值、所述位置覆盖值、所述预设权重值以及协议覆盖值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值。
具体的,根据所述初始权重值、所述位置覆盖值、所述预设权重值以及协议覆盖值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值,在具体实施时的具体实现步骤如下所述:
确定所述位置信息的每个网络服务方对应的每个候选节点的初始权重值、位置覆盖值以及协议覆盖值;
根据所述初始权重值和所述位置覆盖值确定所述位置信息的每个网络服务方对应的每个候选节点的候选权重值;
根据所述候选权重值和预设权重值确定所述位置信息的每个网络服务方对应的目标候选节点的备选权重值,以及除所述目标候选节点之外的每个其他候选节点的备选权重值;
根据所述备选权重值以及所述协议覆盖值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值。
具体的,协议覆盖值可以理解为每个候选节点在不同协议下的覆盖质量,其计算方式同上述位置覆盖值的计算方式相同,唯一不同之处在于,位置覆盖值是每个候选节点在不同位置信息下的覆盖质量,协议覆盖值是每个候选节点在不同协议下的覆盖质量。
实际应用中,根据所述候选权重值和预设权重值确定所述位置信息的每个网络服务方对应的目标候选节点的备选权重值,以及除所述目标候选节点之外的每个其他候选节点的备选权重值,与上述实施例中,根据所述候选权重值和预设权重值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值的计算方式相同,在此不再赘述。
具体实施时,在确定每个候选节点的备选权重值之后,将每个候选节点的备选权重值加上其协议覆盖值,即获得每个候选节点的目标权重值。
本申请实施例中,从候选节点在位置信息下的覆盖质量、本地覆盖以及协议质量覆盖等多个维度计算每个候选节点的目标权重值,进一步的保证了每个候选节点的目标权重值的精确性,进而提高了推荐给用户的节点为质量较好的节点的概率值。
具体的,所述协议覆盖值通过如下步骤获得:
确定所述位置信息的每个网络服务方对应的每个候选节点,在连接传输协议下的连接推入协议覆盖值和连接推出协议覆盖值;以及
确定所述位置信息的每个网络服务方对应的每个候选节点,在无连接传输协议下的无连接推入协议覆盖值和无连接推出协议覆盖值;
根据所述连接推入协议覆盖值、所述连接推出协议覆盖值、所述无连接推入协议覆盖值和所述无连接推出协议覆盖值,确定所述位置信息的每个网络服务方对应的每个候选节点的协议覆盖值。
其中,连接传输协议可以理解为RTMP协议,即基于TCP的实时消息传输协议。无连接传输协议可以理解为SRT协议,即基于UDP的传输协议。
连接推入协议覆盖值可以理解为基于RTMP协议统计在一定时间周期内,节点的推入覆盖质量;连接推出协议覆盖值可以理解为基于RTMP协议统计在一定时间周期内,节点的推出覆盖质量。
无连接推入协议覆盖值可以理解为基于SRT协议的统计在一定时间周期内,节点的推入覆盖质量;无连接推出协议覆盖值可以理解为基于SRT协议的统计在一定时间周期内,节点的推出覆盖质量。
实际应用中,一条直播流推到边缘计算节点上,可以使用不同的协议,边缘计算节点把直播流转推给各家CDN也可以使用不同的协议,即推入推出均可选择不同的协议。
具体的,计算每个候选节点在RTMP协议下的推入、推出的协议覆盖值,以及每个候选节点在SRT协议下的推入、推出的协议覆盖值;然后通过每个候选节点在RTMP协议下的推入、推出的协议覆盖值,以及在SRT协议下的推入、推出的协议覆盖值,计算出每个候选节点的最终的协议覆盖值。
本申请实施例中,将连接推入协议覆盖值、连接推出协议覆盖值、无连接推入协议覆盖值和无连接推出协议覆盖值之和,作为每个候选节点的协议覆盖值,后续再基于每个候选节点的协议覆盖值结合备选权重值,计算每个候选节点的目标权重值,从而在每个候选节点的目标权重值中引入候选节点在不同协议下的覆盖质量不同的概念,增加协议质量调整候选节点的目标权重值,使得每个候选节点的目标权重值更加精确。
参见图4,图4示出了本申请一实施例提供的一种节点处理方法中基于边缘计算节点进行推流、拉流的处理过程示意图。
如图4中所示,主播向边缘计算节点发送直播流进行推流,实现推入;边缘计算节点将该直播流转推到CDN服务节点,实现推出;观看用户从CDN服务节点拉流观看直播流;需要说明的是,每个边缘计算节点是否稳定可以通过推入协议覆盖值以及推出协议覆盖值进行说明,若推入协议覆盖值较差,那么推出协议覆盖值也会较差,则用户从CDN拉流观看的直播流质量也相对较差;若推出协议覆盖值较差,则用户从CDN拉流观看的直播流质量也相对较差;若推入和推出协议覆盖值相差较大,则说明该节点存在不稳定的状况,或者存在异常情况导致推入和推出环节出现差别。
具体实施时,所述根据所述连接推入协议覆盖值、所述连接推出协议覆盖值、所述无连接推入协议覆盖值和所述无连接推出协议覆盖值,确定所述位置信息的每个网络服务方对应的每个候选节点的协议覆盖值,包括:
根据所述连接推入协议覆盖值与所述无连接推入协议覆盖值,获取所述连接推入协议覆盖值与所述无连接推入协议覆盖值的连接协议覆盖差值;
根据所述连接推出协议覆盖值与所述无连接推出协议覆盖值,获取所述连接推出协议覆盖值与所述无连接推出协议覆盖值的无连接协议覆盖差值;
将所述连接推入协议覆盖值、所述连接推出协议覆盖值、所述无连接推入协议覆盖值、所述无连接推出协议覆盖值、所述连接协议覆盖差值和所述无连接协议覆盖差值之和,作为所述位置信息的每个网络服务方对应的每个候选节点的协议覆盖值。
其中,连接协议覆盖差值可以理解为基于RTMP协议统计在一定时间周期内,节点的推入与推出协议覆盖值的比值;无连接协议覆盖差值可以理解为基于SRT协议统计在一定时间周期内,节点的推入与推出协议覆盖值的比值。
具体的,以连接推入协议覆盖值为X1、无连接推入协议覆盖值X2、连接协议覆盖差值为X3为例、连接推出协议覆盖值为Y1、无连接推出协议覆盖值Y2、无连接协议覆盖差值为Y3。
连接协议覆盖差值X3=绝对值(|X2-X1|/X1-预定阈值);
无连接协议覆盖差值Y3=绝对值(|Y2-Y1|/Y1-预定阈值)。通过上述两个公式则说明取两者之间的最大值,若无连接协议覆盖差值大于预定阈值,则说明节点质量差太大。
本申请实施例提供的节点确定方法,通过连接传输协议确定每个初始节点的连接推入推出质量,以及确定每个初始节点的无连接推入推出质量,进而确定每个初始节点的推入推出覆盖质量,以便于后续可根据每个节点的推入推出覆盖质量判定该初始节点是否稳定,以提高直播流的推流质量。
此外,所述确定所述位置信息的每个网络服务方对应的每个候选节点,在连接传输协议下的连接推入协议覆盖值和连接推出协议覆盖值,包括:
确定所述位置信息的每个网络服务方对应的每个候选节点,在连接传输协议下的推入抖动率和推入断开率,以及在连接传输协议下的推出抖动率和推出断开率;
基于所述推入抖动率和所述推入断开率确定所述位置信息的每个网络服务方对应的每个候选节点,在连接传输协议下的连接推入协议覆盖值;以及
基于所述推出抖动率和所述推出断开率确定所述位置信息的每个网络服务方对应的每个候选节点,在连接传输协议下的连接推出协议覆盖值。
具体实施时,所述确定所述位置信息的每个网络服务方对应的每个候选节点,在无连接传输协议下的无连接推入协议覆盖值和无连接推出协议覆盖值,包括:
确定所述位置信息的每个网络服务方对应的每个候选节点,在无连接传输协议下的推入抖动率和推入断开率,以及在无连接传输协议下的推出抖动率和推出断开率;
基于所述推入抖动率和所述推入断开率确定所述位置信息的每个网络服务方对应的每个候选节点,在无连接传输协议下的无连接推入协议覆盖值;以及
基于所述推出抖动率和所述推出断开率确定所述位置信息的每个网络服务方对应的每个候选节点,在无连接传输协议下的无连接推出协议覆盖值。
具体的,按照上述抖动率和断开率的计算方法,基于每个候选节点在RTMP协议下的推入抖动率和推入断开率,计算每个候选节点在RTMP协议下的连接推入协议覆盖值;基于每个候选节点在RTMP协议下的推出抖动率和推出断开率,计算每个候选节点在RTMP协议下的连接推出协议覆盖值。同理,按照上述抖动率和断开率的计算方法,基于每个候选节点在SRT协议下的推入抖动率和推入断开率,计算每个候选节点SRT协议下的无连接推入协议覆盖值;基于每个候选节点在SRT协议下的推出抖动率和推出断开率,计算每个候选节点SRT协议下的无连接推出协议覆盖值。
此外,所述抖动率和所述断开率通过如下步骤确定:
获取预设时间周期内所述位置信息的每个网络服务方对应的每个候选节点,处理数据时的数据抖动个数、数据处理数量以及数据断开数量;
根据所述数据抖动个数以及所述数据处理数量确定所述每个候选节点的抖动率,以及根据所述数据断开数量以及所述数据处理数量确定所述每个候选节点的断开率。
具体的,连接传输协议下的推入抖动率和推入断开率、无连接传输协议下的推入抖动率和推入断开率的计算方式,与上述位置覆盖率计算时介绍的抖动率和断开率的方式相同,在此不再赘述,唯一的不同之处在于在连接传输协议、无连接传输协议下的抖动率和断开率,与位置信息下的抖动率和断开率会基于实际的应用场景不同。具体根据实际应用场景计算即可。
本申请实施例中,基于每个协议下的每个候选节点的抖动率和断开率,计算每个候选节点的协议覆盖值,以便于后续可根据每个候选节点的协议覆盖值调整每个候选节点的目标权重值,实现从候选节点的协议覆盖质量维度确定候选节点的质量的好坏,以保证后续发送至用户的目标节点的质量。
本说明书另一实施例中,所述根据所述初始权重值、所述位置覆盖值、所述预设权重值以及协议覆盖值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值,包括:
根据所述初始权重值、所述位置覆盖值、所述预设权重值、所述协议覆盖值以及网络传输值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值。
具体的,根据所述初始权重值、所述位置覆盖值、所述预设权重值、所述协议覆盖值以及网络传输值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值,在具体实施时的具体实现步骤如下所述:
确定所述位置信息的每个网络服务方对应的每个候选节点的初始权重值、位置覆盖值以及协议覆盖值;
根据所述初始权重值和所述位置覆盖值确定所述位置信息的每个网络服务方对应的每个候选节点的候选权重值;
根据所述候选权重值和预设权重值确定所述位置信息的每个网络服务方对应的目标候选节点的备选权重值,以及除所述目标候选节点之外的每个其他候选节点的备选权重值;
根据所述备选权重值以及所述协议覆盖值确定所述位置信息的每个网络服务方对应的目标候选节点的定向权重值,以及除所述目标候选节点之外的每个其他候选节点的定向权重值;
确定所述位置信息的每个网络服务方的对应的目标候选节点的网络传输值以及除所述目标候选节点之外的每个其他候选节点的网络传输值;
根据所述定向权重值和所述网络传输值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值。
其中,位置覆盖值、协议覆盖值、候选权重值、备选权重值、定向权重值的计算方式可以参见上述实施例,在此不再赘述。
实际应用中,网络传输值可以理解为带宽。具体的,每个候选节点的带宽承受量是一定的,进行节点分配时,需要根据每个区域下的推流数来合理分配主播数,可以为主播分配到该区域的最优带宽的推流节点。
因此,在对每个候选节点进行目标权重值的计算时,还会从带宽的维度计算每个候选节点的目标权重值,避免为用户推荐了带宽承载量较大的候选节点进行推流,使得推流效率较低。
本申请实施例中,从候选节点在位置信息下的覆盖质量、本地覆盖、协议质量覆盖以及带宽等多个维度计算每个候选节点的目标权重值,进一步的保证了每个候选节点的目标权重值的精确性,进而提高了推荐给用户的节点为质量较好的节点的概率值。
具体的,所述网络传输值通过如下步骤获得:
获取预设时间段内所述位置信息的每个网络服务方的对应的目标候选节点以及除所述目标候选节点之外的每个其他候选节点的网络承载量、码率、最大目标对象数量以及预设阈值;
根据所述网络承载量、所述码率、所述最大目标对象数量以及所述预设阈值确定所述位置信息的每个网络服务方的对应的目标候选节点的网络传输值,以及
根据除所述网络承载量、所述码率、所述最大目标对象数量以及所述预设阈值以及所述除目标候选节点之外的每个其他候选节点的节点数量,确定除目标候选节点之外的每个其他候选节点的网络传输值。
实际应用时,以每个候选节点的最大承载带宽为阈值进行计算,统计预设时间段内(例如晚高峰18:00-23:00)一个区域(例如省份)一个运营商下有多少主播进行推流,按照大数据统计单个流的码率,推算若以单个节点覆盖该区域,消耗多大的带宽。
例如初始节点3,安徽移动下晚高峰有1000个主播在推流,平均推流码率为4M,则同时消耗带宽为4000M,若某个节点的最大承载带宽为2000M,即最大只能承载500个主播,则另外500个主播需要按照比例分配给其他节点。
具体的,每个候选节点考虑带宽维度的情况下,会从带宽维度再次调整每个候选节点的目标权重值。
以公式表示的情况下,目标候选节点的目标权重值=定向权重+能够承载带宽量/码率*晚高峰最大用户数*100;
除目标候选节点的每个其他候选节点的目标权重值=定向权重+(1-能够承载带宽量/码率*晚高峰最大用户数)/N*100。
其中,能够承载带宽量可以理解为网络承载量,晚高峰最大用户数可以理解为最大目标对象数量,而N可以理解为除目标候选节点之外的其他候选节点的节点数量。
一般理解将本地覆盖的候选节点推送给主播最好,但是在本地覆盖的候选节点的带宽承载量较重的情况下,还会综合考虑每个候选节点的带宽承载情况,为用户分配带宽承载量较小的候选节点,以保证用户的推流质量。
本申请实施例中,从节点省份覆盖质量维度、推流协议和推出协议的协议覆盖质量维度、以及节点带宽维度,综合调整每个候选节点覆盖某个区域的目标权重值,基于目标权重值综合判断每个候选节点的质量,定期更新DNS节点覆盖,从而降低单一节点质量影响主播流发生的概率,提高推流质量,降低因为推流的节点质量导致用户观看卡顿和无法观看的问题。此外,在计算每个候选节点的目标权重值之后,按照目标权重值对这些候选节点在DNS进行注册覆盖,即更新DNS里面的节点的目标权重值。具体参见表1。
表1
记录类型 线路类型 记录值
A 安徽移动 0 0 180 ***.***.***.**
A 安徽移动 0 0 180 ***.***.***.**
A 安徽移动 0 0 180 ***.***.***.**
A 安徽移动 0 0 180 ***.***.***.**
A 安徽移动 0 0 180 ***.***.***.**
A 安徽移动 0 0 180 ***.***.***.**
其中,表1为DNS的解析图,实际应用中DNS在接收到主播的节点获取请求中携带的域名地址之后,就可以解析出该表,然后从该表中获取与主播的位置信息对应的且目标权重值最高的节点给主播。
本说明书另一实施例中,在相关省份的运营商确实没有节点覆盖的时候,DNS解析将会按照大的运营商进行解析。例如西北区域,节点的数量少,有时无法有对应的省份和运营商节点覆盖。用户在推流时候找到不到对应的省份+运营商的解析,就会向上层找,即单纯的找运营商覆盖。
具体的,所述按照位置信息对所述多个初始节点进行分类之后,还包括:
在根据分类结果确定二级位置信息不存在对应的初始节点的情况下,确定每个网络提供方对应的多个初始节点;
确定每个初始节点的网络承载量,并按照每个候选节点的网络承载量对所有初始节点进行排序;
基于排序结果从所述多个初始节点中确定预设数量的候选节点与所述二级位置信息关联,并将所述候选节点以及所述候选节点对应的域名地址发送至所述节点解析服务端。
具体实施时,在确定省份(即二级位置信息)不存在对应的初始节点的情况下,循环遍历所有行政区域,获取每个行政区域内每个运营商的每个节点的带宽阈值,然后选择带宽阈值最高的两个节点作为目标节点,注册到移动DNS解析中。具体参见表2。
表2
记录类型 线路类型 记录值
A 电信 0 0 180 ***.***.***.**
A 电信 0 0 180 ***.***.***.**
A 电信 0 0 180 ***.***.***.**
A 电信 0 0 180 ***.***.***.**
A 电信 0 0 180 ***.***.***.**
A 电信 0 0 180 ***.***.***.**
其中,表2为DNS的解析图,实际应用中DNS在接收到主播的节点获取请求中携带的域名地址之后,首先通过省份+运营商获取目标节点给主播,若该省份不存在对应的目标节点的情况下,则按照其运营商查找质量较好的目标节点给主播,例如主播为安徽移动,此时,则查找移动下带宽质量最好的目标节点给主播,具体的可以根据运营商解析出该表,然后从该表中获取带宽阈值最高的节点给主播。
本说明书实施例中,在基于省份+运营商确定主播所在的省份没有节点覆盖的时候,可以按照主播对应的运营商进行解析,以将与主播对应的运营商对应的初始节点中带宽质量较好的目标节点分配给主播,进而提高主播的推流质量。
本说明书另一实施例中,所述按照位置信息对所述多个初始节点进行分类之后,还包括:
在根据分类结果确定二级位置信息不存在对应的初始节点,且所述二级位置信息的每个网络服务方也不存在对应的初始节点的情况下,将预设网络服务方对应的初始节点作为所述二级位置信息对应的候选节点;
将所述候选节点以及所述候选节点对应的域名地址发送至所述节点解析服务端。
具体的,上述实施例均是基于三大运营商的处理逻辑,但是始终有一些小运营商如华数、广电等,是无法用三大运营商的节点覆盖的。本申请实施例中采用BGP节点(即一种特殊的线路节点,可以接受任何运营商)注册到默认线路,即找不到运营商时,默认走的线路。
具体的,选取几个BGP节点,注册到默认线路中,覆盖小运营,具体参见表3。
表3
记录类型 线路类型 记录值
A 默认 0 0 180 ***.***.***.**
A 默认 0 0 180 ***.***.***.**
A 默认 0 0 180 ***.***.***.**
A 默认 0 0 180 ***.***.***.**
A 默认 0 0 180 ***.***.***.**
A 默认 0 0 180 ***.***.***.**
其中,表3为DNS的解析图,实际应用中DNS在接收到主播的节点获取请求中携带的域名地址,且确定主播的省份+运营商,运营商均不存在对应的节点之后,就可以解析出该表,然后从该表中获取一个默认节点给主播,以保证主播可以正常进行推流,提升用户体验。
本说明书另一实施例中,所述方法还包括:
接收目标对象发送的域名地址获取请求,基于所述获取请求为所述目标对象返回所述域名地址。
具体的,节点分配服务端对可用初始节点的目标权重值的计算可以是实时的,也可以是定时的,本申请实施例对此不做任何限定。
并且节点分配服务端对可用初始节点的目标权重值的计算,与接收目标对象发送的域名地址获取请求无实质的关联关系。
实际应用在,节点分配服务端在接收到目标对象发送的域名地址获取请求后,即可将在节点解析服务端注册过的域名地址发送至目标对象,使得后续节点解析服务端可以基于目标对象发送的节点获取请求中携带的该域名地址对目标节点进行确定。
参见图5,图5示出了本申请一实施例提供的第二种节点处理方法的流程图,应用于节点解析服务端,具体包括以下步骤:
步骤502:接收目标对象的节点获取请求,其中,所述节点获取请求中携带有域名地址和所述目标对象的位置信息。
步骤504:对所述域名地址进行解析,以获得与所述域名地址对应的多个初始节点。
步骤506:基于所述位置信息从所述多个初始节点中,确定所述二级位置信息的每个网络服务方对应的多个候选节点以及每个候选节点的目标权重值。
步骤508:基于所述目标权重值确定目标节点,并将所述目标节点发送至所述目标对象。
其中,所述目标权重值为从节点分配服务端接收获得。
具体的,该节点获取请求中携带的域名地址,即可以理解为上述实施例中节点分配服务端发送给目标对象的域名地址,且该域名地址在节点解析服务端进行过注册。
实际应用中,节点解析服务端在接收到目标对象携带有域名地址和目标对象的位置信息的节点获取请求之后,首先对域名地址进行解析,以获得与该域名地址对应的多个初始节点,然后在基于位置信息确定出与该位置信息对应的多个候选节点,同时确定每个候选节点的目标权重值,从而将目标权重值最高的候选节点作为目标节点发送至目标对象,使得目标对象后续可以基于该目标节点进行推流,进而提高推流质量。
参见图6,图6示出了本申请一实施例提供的第三种节点处理方法的流程图,所述方法应用于中心服务,具体包括以下步骤。
其中,中心服务可以理解为上述实施例的节点分配服务端。
步骤602:DNS覆盖。
实际应用中,DNS覆盖,可以理解为获取与中心服务对应的多个初始节点,然后基于多个初始节点的省份、运营商以及权重选取出一个目标节点。
步骤604:省份+运营商。
在DNS进行目标节点推送之前,中心服务会计算出与其对应的每个初始节点的权重,例如当初始节点存在对应省份以及运营商的情况下,可以先从省份+运营商维度对多个初始节点进行分析。
步骤606:选取固定省份+运营商节点。
具体的,选取每个省份每个运营商下面的初始节点,以计算出每个省份每个运营商的每个初始节点的权重值。
步骤608:初始化权重0。
具体的,将每个省份每个运营商的每个初始节点的权重值设置为0,即每个初始节点的原始权重。
步骤610:查询省份覆盖质量。
具体的,计算每个初始节点在其对应省份对应运营商下的覆盖分数,例如初始节点为安徽移动,那么计算安徽移动节点在安徽省移动运营商下的覆盖分数,其具体的计算过程可以参见上述实施例。
步骤612:单个节点权重1=覆盖分值+原始权重。
具体的,每个初始节点的权重等于上述计算出的覆盖分数加上其初始化权重。
步骤614:本地覆盖。
具体的,对本地覆盖的初始节点的权重值进行调整,即为本地覆盖的初始节点的权重值加上固定分值。沿用上例,例如本地为安徽,则为安徽移动节点增加固定分值,例如增加50个固定分值。
步骤616:节点权重2=节点权重1+固定分值。
具体的,为本地覆盖的初始节点增加固定分值,即本地覆盖的初始节点的权重等于步骤612获得的权重加上固定分值;而其他非本地覆盖的初始节点的分值依旧是步骤612获得的权重。
步骤618:查询协议覆盖质量。
具体的,计算每个初始节点在RTMP和SRT协议下的覆盖质量,具体的计算方式可以参见上述实施例,在此不再赘述。
步骤620:节点权重3=节点权重2+X1+X2+X3+Y1+Y2+Y3。
具体的,根据每个初始节点在RTMP和SRT协议下的覆盖质量计算获得的权重为节点权重3,其中,X1为推入RTMP协议下的覆盖质量,X2为推出RTMP协议下的覆盖质量,X3为RTMP协议推入推出覆盖质量差值,Y1为推入SRT协议下的覆盖质量,Y2为推出SRT协议下的覆盖质量,Y3为SRT协议推入推出覆盖质量差值。
步骤622:带宽控制。
具体的,从每个初始节点的带宽维度计算目标权重值。
步骤624:本地覆盖节点权重=节点权重3+能够承受贷款量/码率*晚高峰最大用户数*100。
具体的,步骤624是对本地覆盖节点目标权重值的计算,具体计算方式可以参见上述实施例。
步骤626:其他节点权重=节点权重3+(1-能够承受贷款量/码率*晚高峰最大用户数)/N*100。
具体的,其他节点权重可以理解为除本地覆盖节点之外的其他初始节点的权重。
在计算出每个省份每个运营商下的每个初始节点的目标权重值之后,将其注册到DNS中,以便后续主播请求节点的时候,DNS可以基于每个初始节点的目标权重值为主播分配高质量的节点进行推流。
步骤628:三大运营商。
实际应用过程中,相关省份的运营商确实没有节点覆盖的时候,DNS将会按照大的运营商进行解析。例如西北区域,节点的数量少,有时不存在对应的省份和运营商节点覆盖,在实际推流的时候找不到对应的省份+运营商的解析时,可以单纯的找运营商覆盖。
步骤630:按照行政区域遍历。
具体的,遍历所有行政区域,即基于每个运营商,遍历每个行政区域的每个运营商下的初始节点,然后选择两个或三个带宽阈值最高的作为该行政区域的目标节点注册到DNS中。例如西北区域对应的目标移动节点、目标联通节点和/或目标电信节点。
步骤632:选取每个区域最大承载带宽节点。
具体的,选取每个行政区域最大承载带宽节点与其行政区域在DNS进行注册,例如西北行政区域,对应移动节点1和联通节点2,当后续主播是西北行政区域,移动运营商的情况下,将节点1推送给主播。
步骤634:默认线路。
具体的,上述都是基于运营商的处理逻辑,而一些特殊的小运营商是无法用三大运营商的节点覆盖的,这种情况下,可以为这些小运营商设置对应BGP节点,以注册到DNS中,当主播对应的运营商为这些特殊运营商的情况下,将对应的BGP节点推送给主播。
步骤636:选取BGP节点注册。
即将特殊运营商及其对应的BGP节点注册到DNS中。
本说明书实施例中,预先将中心服务对应的每个初始节点根据省份和/或运营商注册到DNS中,后续在实际应用中,DNS可以根据主播所在省份以及运营商为其推送合适的节点进行推流,提升用户体验。
与上述方法实施例相对应,本申请还提供了节点处理装置实施例,图7示出了本申请一实施例提供的第一种节点处理装置的结构示意图。如图7所示,该装置包括:
节点分类模块702,被配置为获取与所述节点分配服务端对应的多个初始节点,并按照位置信息对所述多个初始节点进行分类;
候选节点确定模块704,被配置为在根据分类结果确定所述位置信息存在对应的初始节点的情况下,从所述多个初始节点中确定所述位置信息的每个网络服务方对应的多个候选节点;
权重值计算模块706,被配置为根据预设维度确定每个候选节点的目标权重值,并将所述每个候选节点的目标权重值、以及与所述每个候选节点对应的域名地址发送至节点解析服务端。
可选地,所述权重值计算模块706,进一步被配置为:
确定所述位置信息的每个网络服务方对应的每个候选节点的初始权重值以及位置覆盖值;
根据所述初始权重值和所述位置覆盖值确定所述位置信息的每个网络服务方对应的每个候选节点的目标权重值。
可选地,所述权重值计算模块706,进一步被配置为:
根据所述初始权重值、所述位置覆盖值以及预设权重值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值。
可选地,所述权重值计算模块706,进一步被配置为:
根据所述初始权重值、所述位置覆盖值、所述预设权重值以及协议覆盖值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值。
可选地,所述权重值计算模块706,进一步被配置为:
根据所述初始权重值、所述位置覆盖值、所述预设权重值、所述协议覆盖值以及网络传输值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值。
可选地,所述权重值计算模块706,进一步被配置为:
确定所述位置信息的每个网络服务方对应的每个候选节点,在所述位置信息的抖动率和断开率;
基于所述抖动率和所述断开率确定所述位置信息的每个网络服务方对应的每个初始节点的位置覆盖值。
可选地,所述权重值计算模块706,进一步被配置为:
根据所述初始权重值、所述位置覆盖值以及预设权重值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,
并根据所述初始权重值以及所述位置覆盖值确定除所述目标候选节点之外的每个其他候选节点的目标权重值。
可选地,所述权重值计算模块706,进一步被配置为:
确定所述位置信息的每个网络服务方对应的每个候选节点,在连接传输协议下的连接推入协议覆盖值和连接推出协议覆盖值;以及
确定所述位置信息的每个网络服务方对应的每个候选节点,在无连接传输协议下的无连接推入协议覆盖值和无连接推出协议覆盖值;
根据所述连接推入协议覆盖值、所述连接推出协议覆盖值、所述无连接推入协议覆盖值和所述无连接推出协议覆盖值,确定所述位置信息的每个网络服务方对应的每个候选节点的协议覆盖值。
可选地,所述权重值计算模块706,进一步被配置为:
获取预设时间段内所述位置信息的每个网络服务方的对应的目标候选节点以及除所述目标候选节点之外的每个其他候选节点的网络承载量、码率、最大目标对象数量以及预设阈值;
根据所述网络承载量、所述码率、所述最大目标对象数量以及所述预设阈值确定所述位置信息的每个网络服务方的对应的目标候选节点的网络传输值,以及
根据除所述网络承载量、所述码率、所述最大目标对象数量以及所述预设阈值以及所述除目标候选节点之外的每个其他候选节点的节点数量,确定除目标候选节点之外的每个其他候选节点的网络传输值。
可选地,所述节点分类模块702,进一步被配置为:
按照一级位置信息对所述多个初始节点进行初始分类,并基于初始分类结果确定二级位置信息对应的多个初始节点;
相应地,所述根据分类结果确定所述位置信息存在对应的初始节点,包括:
根据分类结果确定二级位置信息存在对应的初始节点。
可选地,所述装置,还包括:
第一节点注册模块,被配置为在根据分类结果确定二级位置信息不存在对应的初始节点的情况下,确定每个网络提供方对应的多个初始节点;
确定每个初始节点的网络承载量,并按照每个候选节点的网络承载量对所有初始节点进行排序;
基于排序结果从所述多个初始节点中确定预设数量的候选节点与所述二级位置信息关联,并将所述候选节点以及所述候选节点对应的域名地址发送至所述节点解析服务端。
可选地,所述装置,还包括:
第二节点注册模块,被配置为在根据分类结果确定二级位置信息不存在对应的初始节点,且所述二级位置信息的每个网络服务方也不存在对应的初始节点的情况下,将预设网络服务方对应的初始节点作为所述二级位置信息对应的候选节点;
将所述候选节点以及所述候选节点对应的域名地址发送至所述节点解析服务端。
可选地,所述装置,还包括:
请求接收模块,被配置为接收目标对象发送的域名地址获取请求,基于所述获取请求为所述目标对象返回所述域名地址。
本申请实施例提供的所述节点处理装置根据预设维度分别计算每个位置信息的每个网络服务方对应的每个候选节点的目标权重值,后续实际应用中,可以基于目标权重值确定出推流质量较好的候选节点推荐给主播,以实现主播可以基于该推流质量较好的候选节点提高推流质量,从而解决因边缘计算节点的质量导致的用户观看卡顿或者无法观看的技术问题。
上述为本实施例的第一种节点处理装置的示意性方案。需要说明的是,该第一种节点处理装置的技术方案与上述的第一种节点处理方法的技术方案属于同一构思,第一种节点处理装置的技术方案未详细描述的细节内容,均可以参见上述第一种节点处理方法的技术方案的描述。
与上述方法实施例相对应,本申请还提供了节点处理装置实施例,图8示出了本申请一实施例提供的第二种节点处理装置的结构示意图。如图8所示,该装置包括:
请求接收模块802,被配置为接收目标对象的节点获取请求,其中,所述节点获取请求中携带有域名地址和所述目标对象的位置信息以及网络服务方;
解析模块804,被配置为对所述域名地址进行解析,以获得与所述域名地址对应的多个初始节点;
权重值确定模块806,被配置为从所述多个初始节点中确定与所述目标对象的位置信息以及网络服务方对应的多个候选节点,并确定每个候选节点的目标权重值;
目标节点确定模块808,被配置为基于所述目标权重值确定目标节点,并将所述目标节点发送至所述目标对象,其中,所述目标权重值为从节点分配服务端接收获得。
本申请实施例提供的所述节点处理装置包括节点解析服务端在接收到目标对象携带有域名地址和目标对象的位置信息的节点获取请求之后,首先对域名地址进行解析,以获得与该域名地址对应的多个初始节点,然后在基于位置信息确定出与该位置信息对应的多个候选节点,同时确定每个候选节点的目标权重值,从而将目标权重值最高的候选节点作为目标节点发送至目标对象,使得目标对象后续可以基于该目标节点进行推流,进而提高推流质量。
上述为本实施例的第二种节点处理装置的示意性方案。需要说明的是,该第二种节点处理装置的技术方案与上述的第二种节点处理方法的技术方案属于同一构思,第二种节点处理装置的技术方案未详细描述的细节内容,均可以参见上述第二种节点处理方法的技术方案的描述。
图9示出了根据本说明书一个实施例提供的一种计算设备900的结构框图。该计算设备900的部件包括但不限于存储器910和处理器920。处理器920与存储器910通过总线930相连接,数据库950用于保存数据。
计算设备900还包括接入设备940,接入设备940使得计算设备900能够经由一个或多个网络960通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备940可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本说明书的一个实施例中,计算设备900的上述部件以及图9中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图9所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备900可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备900还可以是移动式或静止式的服务器。
其中,处理器920用于执行如下计算机可执行指令,处理器920执行所述计算机可执行指令时实现所述的节点处理方法的步骤。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的节点处理方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述节点处理方法的技术方案的描述。
本申请一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现如前所述节点处理方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的节点处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见节点处理方法的技术方案的描述。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本申请的内容,可作很多的修改和变化。本申请选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。

Claims (17)

1.一种节点处理方法,其特征在于,应用于节点分配服务端,包括:
获取与所述节点分配服务端对应的多个初始节点,并按照位置信息对所述多个初始节点进行分类,其中,与目标对象的位置信息相同的所述位置信息对应的多个初始节点的推流质量优于与所述目标对象的位置信息不同的所述位置信息对应的多个初始节点的推流质量;
在根据分类结果确定所述位置信息存在对应的初始节点的情况下,从所述多个初始节点中确定所述位置信息的每个网络服务方对应的多个候选节点;
根据预设维度确定每个候选节点的目标权重值,并将所述每个候选节点的目标权重值、以及与所述每个候选节点对应的域名地址发送至节点解析服务端,所述节点解析服务端基于目标权重值确定目标节点并将目标节点发送至目标对象;
其中,所述根据预设维度确定每个候选节点的目标权重值,包括:
确定所述位置信息的每个网络服务方对应的每个候选节点的初始权重值以及位置覆盖值;所述初始权重值为所述位置信息的每个网络服务方对应的每个候选节点的初始化权重,所述位置覆盖值基于每个候选节点在不同位置信息下的抖动率和断开率确定,所述抖动率为流抖动个数除以候选节点总接收流数,所述断开率为断开流数除以候选节点总接收流数;
根据所述初始权重值和所述位置覆盖值确定所述位置信息的每个网络服务方对应的每个候选节点的目标权重值。
2.根据权利要求1所述的节点处理方法,其特征在于,所述根据所述初始权重值和所述位置覆盖值确定所述位置信息的每个网络服务方对应的每个候选节点的目标权重值,包括:
根据所述初始权重值、所述位置覆盖值以及预设权重值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值,其中,所述预设权重值为根据所述位置信息为与该位置信息对应的目标候选节点设置的权重值。
3.根据权利要求2所述的节点处理方法,其特征在于,所述根据所述初始权重值、所述位置覆盖值以及预设权重值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值,包括:
根据所述初始权重值、所述位置覆盖值、所述预设权重值以及协议覆盖值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值,其中,所述协议覆盖值基于连接推入协议覆盖值、连接推出协议覆盖值、无连接推入协议覆盖值和无连接推出协议覆盖值确定。
4.根据权利要求3所述的节点处理方法,其特征在于,所述根据所述初始权重值、所述位置覆盖值、所述预设权重值以及协议覆盖值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值,包括:
根据所述初始权重值、所述位置覆盖值、所述预设权重值、所述协议覆盖值以及带宽确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值,其中,所述带宽基于网络承载量、码率、最大目标对象数量以及预设阈值确定。
5.根据权利要求2所述的节点处理方法,其特征在于,所述根据所述初始权重值、所述位置覆盖值以及预设权重值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,以及除所述目标候选节点之外的每个其他候选节点的目标权重值,包括:
根据所述初始权重值、所述位置覆盖值以及预设权重值确定所述位置信息的每个网络服务方对应的目标候选节点的目标权重值,
并根据所述初始权重值以及所述位置覆盖值确定除所述目标候选节点之外的每个其他候选节点的目标权重值。
6.根据权利要求4所述的节点处理方法,其特征在于,所述协议覆盖值通过如下步骤获得:
确定所述位置信息的每个网络服务方对应的每个候选节点,在连接传输协议下的连接推入协议覆盖值和连接推出协议覆盖值;以及
确定所述位置信息的每个网络服务方对应的每个候选节点,在无连接传输协议下的无连接推入协议覆盖值和无连接推出协议覆盖值;
根据所述连接推入协议覆盖值、所述连接推出协议覆盖值、所述无连接推入协议覆盖值和所述无连接推出协议覆盖值之和,确定所述位置信息的每个网络服务方对应的每个候选节点的协议覆盖值。
7.根据权利要求4所述的节点处理方法,其特征在于,所述带宽通过如下步骤获得:
获取预设时间段内所述位置信息的每个网络服务方的对应的目标候选节点以及除所述目标候选节点之外的每个其他候选节点的网络承载量、码率、最大目标对象数量以及预设阈值,其中,所述网络承载量为所述目标候选节点以及除所述目标候选节点之外的每个其他候选节点能够承载的最大带宽量;
根据所述每个网络服务方的对应的目标候选节点的所述网络承载量、所述码率、所述最大目标对象数量以及所述预设阈值确定所述位置信息的每个网络服务方的对应的目标候选节点的带宽,以及
根据除所述目标候选节点之外的每个其他候选节点的所述网络承载量、所述码率、所述最大目标对象数量以及所述预设阈值以及除所述目标候选节点之外的每个其他候选节点的节点数量,确定除目标候选节点之外的每个其他候选节点的带宽。
8.根据权利要求1所述的节点处理方法,其特征在于,所述按照位置信息对所述多个初始节点进行分类,包括:
按照一级位置信息对所述多个初始节点进行初始分类,并基于初始分类结果确定二级位置信息对应的多个初始节点;
相应地,根据分类结果确定所述位置信息存在对应的初始节点,包括:
根据分类结果确定二级位置信息存在对应的初始节点。
9.根据权利要求8所述的节点处理方法,其特征在于,所述按照位置信息对所述多个初始节点进行分类之后,还包括:
在根据分类结果确定二级位置信息不存在对应的初始节点的情况下,确定每个网络提供方对应的多个初始节点;
确定每个初始节点的网络承载量,并按照每个候选节点的网络承载量对所有初始节点进行排序;
基于排序结果从所述多个初始节点中确定预设数量的候选节点与所述二级位置信息关联,并将所述候选节点以及所述候选节点对应的域名地址发送至所述节点解析服务端。
10.根据权利要求8所述的节点处理方法,其特征在于,所述按照位置信息对所述多个初始节点进行分类之后,还包括:
在根据分类结果确定二级位置信息不存在对应的初始节点,且所述二级位置信息的每个网络服务方也不存在对应的初始节点的情况下,将预设网络服务方对应的初始节点作为所述二级位置信息对应的候选节点;
将所述候选节点以及所述候选节点对应的域名地址发送至所述节点解析服务端。
11.根据权利要求1-4任意一项所述的节点处理方法,其特征在于,还包括:
接收目标对象发送的域名地址获取请求,基于所述获取请求为所述目标对象返回所述域名地址。
12.一种节点处理方法,其特征在于,应用于节点解析服务端,包括:
接收目标对象的节点获取请求,其中,所述节点获取请求中携带有域名地址和所述目标对象的位置信息以及网络服务方;
对所述域名地址进行解析,以获得与所述域名地址对应的多个初始节点;
从所述多个初始节点中确定与所述目标对象的位置信息以及网络服务方对应的多个候选节点,并确定每个候选节点的目标权重值,其中,所述目标权重值根据预设维度确定,所述预设维度包括所述位置信息的每个网络服务方对应的每个候选节点的初始权重值以及位置覆盖值,所述初始权重值为所述位置信息的每个网络服务方对应的每个候选节点的初始化权重,所述位置覆盖值基于每个候选节点在不同位置信息下的抖动率和断开率确定,所述抖动率为流抖动个数除以候选节点总接收流数,所述断开率为断开流数除以候选节点总接收流数;
基于所述目标权重值确定目标节点,并将所述目标节点发送至所述目标对象,其中,所述目标权重值为从节点分配服务端接收获得。
13.一种节点处理系统,其特征在于,包括节点分配服务端和节点解析服务端,其中,
所述节点分配服务端,被配置为获取与所述节点分配服务端对应的多个初始节点,并按照位置信息对所述多个初始节点进行分类,其中,与目标对象的位置信息相同的所述位置信息对应的多个初始节点的推流质量优于与所述目标对象的位置信息不同的所述位置信息对应的多个初始节点的推流质量;在根据分类结果确定所述位置信息存在对应的初始节点的情况下,从所述多个初始节点中确定所述位置信息的每个网络服务方对应的多个候选节点;根据预设维度确定每个候选节点的目标权重值,并将所述每个候选节点的目标权重值、以及与所述每个候选节点对应的域名地址发送至节点解析服务端,所述节点解析服务端基于目标权重值确定目标节点并将目标节点发送至目标对象;其中,所述根据预设维度确定每个候选节点的目标权重值,包括:确定所述位置信息的每个网络服务方对应的每个候选节点的初始权重值以及位置覆盖值;所述初始权重值为所述位置信息的每个网络服务方对应的每个候选节点的初始化权重,所述位置覆盖值基于每个候选节点在不同位置信息下的抖动率和断开率确定,所述抖动率为流抖动个数除以候选节点总接收流数,所述断开率为断开流数除以候选节点总接收流数;根据所述初始权重值和所述位置覆盖值确定所述位置信息的每个网络服务方对应的每个候选节点的目标权重值;
所述节点分配服务端,还被配置为接收目标对象发送的域名地址获取请求,基于所述获取请求为所述目标对象返回所述域名地址;
所述节点解析服务端,被配置为接收目标对象的节点获取请求,其中,所述节点获取请求中携带有域名地址和所述目标对象的位置信息以及网络服务方;对所述域名地址进行解析,以获得与所述域名地址对应的多个初始节点;从所述多个初始节点中确定与所述目标对象的位置信息以及网络服务方对应的多个候选节点,并确定每个候选节点的目标权重值,其中,所述目标权重值根据预设维度确定;基于所述目标权重值确定目标节点,并将所述目标节点发送至所述目标对象,其中,所述目标权重值为从所述节点分配服务端接收获得。
14.一种节点处理装置,其特征在于,应用于节点分配服务端,包括:
节点分类模块,被配置为获取与所述节点分配服务端对应的多个初始节点,并按照位置信息对所述多个初始节点进行分类,其中,与目标对象的位置信息相同的所述位置信息对应的多个初始节点的推流质量优于与所述目标对象的位置信息不同的所述位置信息对应的多个初始节点的推流质量;
候选节点确定模块,被配置为在根据分类结果确定所述位置信息存在对应的初始节点的情况下,从所述多个初始节点中确定所述位置信息的每个网络服务方对应的多个候选节点;
权重值计算模块,被配置为根据预设维度确定每个候选节点的目标权重值,并将所述每个候选节点的目标权重值、以及与所述每个候选节点对应的域名地址发送至节点解析服务端,所述节点解析服务端基于目标权重值确定目标节点并将目标节点发送至目标对象;其中,所述根据预设维度确定每个候选节点的目标权重值,包括:确定所述位置信息的每个网络服务方对应的每个候选节点的初始权重值以及位置覆盖值;所述初始权重值为所述位置信息的每个网络服务方对应的每个候选节点的初始化权重,所述位置覆盖值基于每个候选节点在不同位置信息下的抖动率和断开率确定,所述抖动率为流抖动个数除以候选节点总接收流数,所述断开率为断开流数除以候选节点总接收流数;根据所述初始权重值和所述位置覆盖值确定所述位置信息的每个网络服务方对应的每个候选节点的目标权重值。
15.一种节点处理装置,其特征在于,应用于节点解析服务端,包括:
请求接收模块,被配置为接收目标对象的节点获取请求,其中,所述节点获取请求中携带有域名地址和所述目标对象的位置信息以及网络服务方;
解析模块,被配置为对所述域名地址进行解析,以获得与所述域名地址对应的多个初始节点;
权重值确定模块,被配置为从所述多个初始节点中确定与所述目标对象的位置信息以及网络服务方对应的多个候选节点,并确定每个候选节点的目标权重值,其中,所述目标权重值根据预设维度确定,所述预设维度包括所述位置信息的每个网络服务方对应的每个候选节点的初始权重值以及位置覆盖值,所述初始权重值为所述位置信息的每个网络服务方对应的每个候选节点的初始化权重,所述位置覆盖值基于每个候选节点在不同位置信息下的抖动率和断开率确定,所述抖动率为流抖动个数除以候选节点总接收流数,所述断开率为断开流数除以候选节点总接收流数;
目标节点确定模块,被配置为基于所述目标权重值确定目标节点,并将所述目标节点发送至所述目标对象,其中,所述目标权重值为从节点分配服务端接收获得。
16.一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,其特征在于,所述处理器执行所述计算机指令时实现权利要求1-11或12任意一项所述方法的步骤。
17.一种计算机可读存储介质,其存储有计算机指令,其特征在于,该计算机指令被处理器执行时实现权利要求1-11或12任意一项所述方法的步骤。
CN202110457596.8A 2021-04-27 2021-04-27 节点处理方法及装置、节点处理系统 Active CN113099261B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110457596.8A CN113099261B (zh) 2021-04-27 2021-04-27 节点处理方法及装置、节点处理系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110457596.8A CN113099261B (zh) 2021-04-27 2021-04-27 节点处理方法及装置、节点处理系统

Publications (2)

Publication Number Publication Date
CN113099261A CN113099261A (zh) 2021-07-09
CN113099261B true CN113099261B (zh) 2023-04-18

Family

ID=76680484

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110457596.8A Active CN113099261B (zh) 2021-04-27 2021-04-27 节点处理方法及装置、节点处理系统

Country Status (1)

Country Link
CN (1) CN113099261B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113556573A (zh) * 2021-07-23 2021-10-26 上海哔哩哔哩科技有限公司 推流链路选择方法及系统
CN113596509B (zh) * 2021-08-26 2023-04-11 上海哔哩哔哩科技有限公司 节点调度方法及装置
CN114268672B (zh) * 2021-12-20 2024-01-12 北京字节跳动网络技术有限公司 Cdn节点分配方法、装置、电子设备、介质及程序产品
CN114745565B (zh) * 2022-04-14 2023-10-20 上海哔哩哔哩科技有限公司 边缘节点的调度方法及装置
CN114629911A (zh) * 2022-04-18 2022-06-14 北京字节跳动网络技术有限公司 域名解析请求的处理方法、装置、设备、介质和程序产品

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112491719A (zh) * 2020-10-26 2021-03-12 网宿科技股份有限公司 网络节点的选择方法、设备及存储介质
CN112532764A (zh) * 2020-12-01 2021-03-19 上海哔哩哔哩科技有限公司 数据获取方法及装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104065761A (zh) * 2011-09-29 2014-09-24 北京奇虎科技有限公司 应用服务器选取方法和网络连接方法
CN104767629B (zh) * 2014-01-06 2017-12-12 腾讯科技(深圳)有限公司 分配服务节点的方法、装置及系统
CN104767776B (zh) * 2014-01-07 2019-04-30 腾讯科技(深圳)有限公司 一种实时调整网络路由方法、装置及系统
CN106992938B (zh) * 2017-05-15 2020-03-31 网宿科技股份有限公司 一种网络流量动态调度分配方法及系统
CN109768899A (zh) * 2018-12-26 2019-05-17 北京奇安信科技有限公司 网站可用性监测方法、装置、设备及介质
CN109995859A (zh) * 2019-03-26 2019-07-09 网宿科技股份有限公司 一种调度方法、调度服务器及计算机可读存储介质
CN110365747B (zh) * 2019-06-24 2022-04-01 北京奇艺世纪科技有限公司 网络请求的处理方法、装置、服务器及计算机可读存储介质
CN110868339A (zh) * 2019-11-25 2020-03-06 北京三体云时代科技有限公司 节点分配方法、装置、电子设备及可读存储介质
CN112260961A (zh) * 2020-09-23 2021-01-22 北京金山云网络技术有限公司 一种网络流量调度方法、装置、电子设备及存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112491719A (zh) * 2020-10-26 2021-03-12 网宿科技股份有限公司 网络节点的选择方法、设备及存储介质
CN112532764A (zh) * 2020-12-01 2021-03-19 上海哔哩哔哩科技有限公司 数据获取方法及装置

Also Published As

Publication number Publication date
CN113099261A (zh) 2021-07-09

Similar Documents

Publication Publication Date Title
CN113099261B (zh) 节点处理方法及装置、节点处理系统
US10122547B2 (en) Enabling high-bandwidth, responsive mobile applications in LTE networks
US10992769B2 (en) Data transmission method, apparatus and system
US20120198020A1 (en) Content distribution within a service provider network
CN113194134B (zh) 节点确定方法及装置
US20150112767A1 (en) System and method for using network mobility events to build advertising demographics
US20150121473A1 (en) Method and system for providing multipath tcp proxy services
Zhu et al. IMPROVING VIDEO PERFORMANCE WITH EDGE SERVERS IN THE FOG COMPUTING ARCHITECTURE.
US20210006507A1 (en) Method and apparatus for allocating server in wireless communication system
CN113923470B (zh) 直播流处理方法及装置
CN114679604B (zh) 资源处理方法及装置
CN109964467A (zh) 用于辅助数据流传输的基于节点类型的控制
US10075354B2 (en) Identification of servers by common wide area network addresses
CN114064275A (zh) 数据处理方法及装置
US20130298175A1 (en) Constructing a customized message in a video-on-demand service
US10652626B2 (en) Gateway, and method, computer program and storage means corresponding thereto
Perra Wireless cooperative access to images
CN114629912A (zh) 基于mec的通信传输方法及装置
US11381544B2 (en) Service type determining method and related device
JP6468560B2 (ja) 無線通信システム及びその制御方法、並びに、通信制御プログラム
Nguyen et al. A proposal of autonomic edge cloud platform with CCN-based service routing protocol
KR102485601B1 (ko) 컨텐츠 전송을 위한 최적 네트워크 노드 선택 방법 및 이를 위한 장치
US11671515B2 (en) Methods, network node and client device for acquisition and delivery of resources in a communications network
CN110958186A (zh) 网络设备数据处理方法及系统
EP2922298A1 (en) Method and device for enhancing video quality

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