CN115022660B - 内容分发网络的参数配置方法及系统 - Google Patents

内容分发网络的参数配置方法及系统 Download PDF

Info

Publication number
CN115022660B
CN115022660B CN202210617267.XA CN202210617267A CN115022660B CN 115022660 B CN115022660 B CN 115022660B CN 202210617267 A CN202210617267 A CN 202210617267A CN 115022660 B CN115022660 B CN 115022660B
Authority
CN
China
Prior art keywords
stream
live stream
streaming media
acquired
parameter
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
CN202210617267.XA
Other languages
English (en)
Other versions
CN115022660A (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 CN202210617267.XA priority Critical patent/CN115022660B/zh
Publication of CN115022660A publication Critical patent/CN115022660A/zh
Application granted granted Critical
Publication of CN115022660B publication Critical patent/CN115022660B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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
    • 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/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • 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/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/458Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities

Abstract

本申请提供内容分发网络的参数配置方法及系统,其中内容分发网络的参数配置方法,应用于参数配置系统,该方法包括:接收用户端的访问请求,其中,访问请求携带待获取直播流的流标识;根据流标识,读取待获取直播流的流媒体参数;根据流媒体参数生成对应的拉流地址,将拉流地址返回给用户端,其中,拉流地址用于指示用户端向拉流地址对应的目标边缘节点请求回源,并指示目标边缘节点对待获取直播流的拉流参数进行配置。如此,实现了直播流级别的参数配置,针对不同的直播流可以实现个性化的参数配置,能够适应各个不同直播流的实际访问特点。

Description

内容分发网络的参数配置方法及系统
技术领域
本申请涉及直播技术领域,特别涉及一种内容分发网络的参数配置方法。本申请同时涉及一种内容分发网络的参数配置系统,一种计算设备,以及一种计算机可读存储介质。
背景技术
随着计算机和互联网技术的快速发展,直播行业飞速发展,直播受众不断扩大,各种各样的直播层出不穷。在直播过程中,主播端推送的直播流可以通过CDN(ContentDelivery Network,内容分发网络)提供给用户观看,传统的CDN通过源站、二级源节点、边缘节点的三级树状结构,来进行大规模的分发网络,在直播接入时,CDN无法做到提前将直播流分发到各边缘节点,用户需要访问某个直播流时,边缘节点可以进行回源,也即边缘节点实时到源站或者二级源站拉取所需的直播流。
现有技术中,内容分发网络存在各种各样的参数需要配置,当前的参数配置统一使用了配置平台,该配置平台只支持应用服务级别的参数配置,即针对应用程序级别进行参数配置,内容分发网络中参数配置的针对性较差,降低了内容分发网络中参数配置的准确率,无法适应动态多变的直播环境。
发明内容
有鉴于此,本申请实施例提供了一种内容分发网络的参数配置方法。本申请同时涉及一种内容分发网络的参数配置系统,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的内容分发网络中参数配置的准确率较低,无法适应动态多变的直播环境的技术问题。
根据本申请实施例的第一方面,提供了一种内容分发网络的参数配置方法,应用于参数配置系统,所述方法包括:
接收用户端的访问请求,其中,所述访问请求携带待获取直播流的流标识;
根据所述流标识,读取待获取直播流的流媒体参数;
根据所述流媒体参数生成对应的拉流地址,将所述拉流地址返回给所述用户端,其中,所述拉流地址用于指示所述用户端向所述拉流地址对应的目标边缘节点请求回源,并指示所述目标边缘节点对所述待获取直播流的拉流参数进行配置。
根据本申请实施例的第二方面,提供了一种内容分发网络的参数配置系统,所述系统包括调度服务器、参数配置中心和至少一个边缘节点;
所述调度服务器,被配置为接收用户端的访问请求,其中,所述访问请求携带待获取直播流的流标识;根据所述流标识,从所述参数配置中心读取待获取直播流的流媒体参数;根据所述流媒体参数生成对应的拉流地址,将所述拉流地址返回给所述用户端;
目标边缘节点,被配置为接收所述用户端发送的拉流请求,解析所述拉流请求获得所述流媒体参数,并根据所述流媒体参数对所述待获取直播流的拉流参数进行配置,其中,所述拉流请求为所述用户端根据接收到的拉流地址向对应的目标边缘节点发送。
根据本申请实施例的第三方面,提供了一种计算设备,包括:
存储器和处理器;
存储器用于存储计算机可执行指令,处理器用于执行计算机可执行指令:
接收用户端的访问请求,其中,访问请求携带待获取直播流的流标识;
根据流标识,读取待获取直播流的流媒体参数;
根据流媒体参数生成对应的拉流地址,将拉流地址返回给用户端,其中,拉流地址用于指示用户端向拉流地址对应的目标边缘节点请求回源,并指示目标边缘节点对待获取直播流的拉流参数进行配置。
根据本申请实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现任意内容分发网络的参数配置方法的步骤。
本申请实施例提供的内容分发网络的参数配置方法,可以接收用户端的访问请求,其中,所述访问请求携带待获取直播流的流标识;根据所述流标识,读取待获取直播流的流媒体参数;根据所述流媒体参数生成对应的拉流地址,将所述拉流地址返回给所述用户端,其中,所述拉流地址用于指示所述用户端向所述拉流地址对应的目标边缘节点请求回源,并指示所述目标边缘节点对所述待获取直播流的拉流参数进行配置。
这种情况下,可以针对各个直播流存储对应的流媒体参数,接收到用户的访问请求时,可以读取待获取直播流的流媒体参数,并根据流媒体参数生成对应的拉流地址,将拉流地址返回给用户端,如此拉流地址中携带有直播流级别的流媒体参数,用户端可以基于该拉流地址向对应的目标边缘节点进行回源,目标边缘节点可以解析该拉流请求,获得其中的流媒体参数,并根据流媒体参数对待获取直播流的拉流参数进行配置,实现直播流级别的参数配置。如此,针对不同的直播流可以进行个性化的参数配置,能够适应各个不同直播流的实际访问特点,提高了内容分发网络中参数配置的针对性,进而提高了参数配置的准确率,更好地适应动态多变的直播环境。
附图说明
图1是本申请一实施例提供的一种内容分发网络的参数配置方法的流程图;
图2是本申请一实施例提供的一种内容分发网络的参数配置系统的结构示意图;
图3是本申请一实施例提供的另一种内容分发网络的参数配置系统的结构示意图;
图4是本申请一实施例提供的一种内容分发网络的参数配置方法的交互示意图;
图5是本申请一实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
在本申请一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请一个或多个实施例。在本申请一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本申请一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本申请一个或多个实施例涉及的名词术语进行解释。
内容分发网络(Content Deli very Network,内容分发网络):是构建在网络之上的内容分发网络,依靠部署在各地的边缘节点(即边缘服务器),通过中心调度服务器的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN包括边缘节点(Output Center,OC)、二级源节点(Second OC,SOC)和源站,边缘节点在CDN中提供用户接入能力,可以由不同的运营商提供服务,二级源节点在CDN中提供回源聚合能力。二级源节点以区域、运营商进行划分,可以包括华北SOC、华东SOC、华南SOC、西南SOC和西北SOC,边缘节点可以基于向广大用户综合提供互联网接入业务、信息业务和增值业务的运营商进行划分。
回源:在用户就近接入骨干网后,如果该节点没有所需的直播流,则需要向上级节点请求拉流,该行为称为回源。本申请实施例中,源站是主播实时上传直播内容的服务器,边缘节点是用户最终观看直播的服务器,源站和边缘节点中间有一层或多层的二级源节点,也称中继服务器。用户访问边缘节点时,边缘节点可能没有所需的直播流,此时边缘节点就需要逐级向上层的二级源节点、直至源站进行请求,来拉取相关的直播流,这一过程即为回源。
流媒体:是指采用流式传输的方式在网络播放的媒体格式,包含音频、视频、多媒体文件;流媒体在播放前不会下载整个文件,只将开始部分存入内存,在用户访问时对数据包进行缓存,让媒体数据正确地输出。
推流:客户端采集视频数据,经过编码和网络传输,发送给流媒体服务器的过程,其中的服务器自行搭建或由CDN提供。
拉流:客户端或者播放器从服务器下载或拉取指定的媒体流到本地的过程。在本发明中,边缘CDN节点到推流节点的回源对应边缘CDN节点从推流节点点拉流。
RTMP(Real Time Media Protocol)协议:一种流媒体协议,是广泛用在互联网直播场景的一种实时音视频传输协议,能够方便传输FLV格式的视频内容。RTMP作为应用层协议,底层使用TCP作为其传输协议。其除了在TCP的三次握手之外,应用层也需要经过多次握手后才能完成建连,建连时间较长是一般直播首开较慢的主要原因之一。RTMP协议主要采用发布/订阅模型,发布者(publish)和服务器经过一系列的握手建连后把音视频数据发给服务器,服务器把数据发布给关心这个直播流的订阅者。
RTMP协议的协议格式可以如下:schema://ip:port/app/stream,其中schema表示协议头,一般为RTMP,ip:port表示对应的访问地址,可以是域名;app用于区分这个直播流是归属在哪个应用里的,不同的app下的stream可以重复,stream表示具体的某条直播流,相同app下的stream唯一。
Query(查询):一般为kv结构,即键值对结构,比如“user”=“123”,表示一个userid为123的请求,完整URL为:schema://ip:port/app/stream?User=“123”。
需要说明的是,内容分发网络存在各种各样的参数需要配置,当前的参数配置统一使用了配置平台,该配置平台只支持应用服务级别的参数配置,即针对应用程序级别进行参数配置,内容分发网络中参数配置的针对性较差,无法根据运营需要,支持直播流级别的个性化配置,无法持续适配当前最合适的参数值。另外,内容分发网络中的参数一旦配置后,基本不会修改,不清楚当前参数是不是最合适的,降低了内容分发网络中参数配置的准确率,无法适应动态多变的直播环境。
因而,本申请实施例中提供了一种内容分发网络的参数配置方法,该方法通过参数配置中心,支持应用级别和流级别的个性化参数配置,针对参数配置固化的问题,设置一个旁路的数据打分服务器,通过每日实时采集到的直播流数据,计算得出更合适的流媒体配置参数,自动更新到参数配置中心。如此,通过直播流级别的参数接口设计和自有的分发方式,实现全链路的调度、流媒体等特性的个性化配置,且通过数据驱动不断更新迭代参数配置中心中当前最合适的流媒体参数配置。
在本申请中,提供了一种内容分发网络的参数配置方法,本申请同时涉及一种内容分发网络的参数配置系统,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
图1示出了根据本申请一实施例提供的一种内容分发网络的参数配置方法的流程图,应用于参数配置系统,具体包括如下步骤102-106:
步骤102:接收用户端的访问请求,其中,访问请求携带待获取直播流的流标识。
需要说明的是,参数配置系统可以包括调度服务器、参数配置中心和至少一个边缘节点。调度服务器是指调度各个用户端的访问请求,为各个用户端分配对应的边缘节点的服务器,也即将各个用户端的访问请求调度至内容分发网络中相应的边缘节点的服务器;参数配置中心是指存储各个直播流的流媒体参数的平台,也即参数配置中心可以提供直播流级别的流媒体配置参数。边缘节点在内容分发网络中提供用户接入能力,可以由不同的运营商提供服务。
另外,用户端是指用户访问直播间所使用的设备终端。
本申请实施例中,用户端可以向调度服务器发起访问请求,调度服务器可以接收该访问请求,该访问请求中携带有待获取直播流的流标识,通过该流标识调度服务器可以获知用户端想要访问的是哪个直播流,从而便于后续针对该直播流进行个性化参数配置,以为该用户端提供对应的直播流,以供播放。
步骤104:根据流标识,读取待获取直播流的流媒体参数。
需要说明的是,流媒体参数可以是指待获取直播流的相关参数,如边缘节点中是否开启待获取直播流的对应功能(如待获取直播流的流媒体参数包括是否开启丢包检测、是否开启时间戳校正),和/或待获取直播流对应的访问参数(如从单运营商二级源节点切换至多运营商二级源节点的访问数阈值等参数)。
示例的,流媒体参数的数据结构可以为:message StreamParam{uint32GopCacheMS=1[(gogoproto.jsontag)='GopCacheMS',(gogoproto.moretags)='validate:"required"'];uint32 DisconnectTimeoutS=2[(gogoproto.jsontag)='DisconnectTimeoutS',(gogoproto.moretags)='validate:"required"'];booltimeEngager=3[(gogoproto.jsontag)='timeEngager',(gogoproto.moretags)='validate:"required"'];bool dropStrategy=4[(gogoproto.jsontag)='dropStrategy',(gogoproto.moretags)='validate:"required"']}。
实际应用中,参数配置中心存储的流媒体参数可以基于待获取直播流实际的拉流质量动态更新。
需要说明的是,内容分发网络的运营目标一般都是以最小的成本达成最大的效果(拉流质量),但是成本和拉流质量一般是互斥的,由于不同主播需要的服务等级是不同的,因而不同直播流需要区分对待,本申请实施例中可以设置直播流级别的流媒体参数,并且还可以基于实时采集到的实际拉流质量实时动态更新参数配置中心存储的流媒体参数,流媒体参数可以基于实际的拉流质量动态更新,可以更好地适应动态多变的直播环境。
本申请实施例中,用户端可以向调度服务器发起访问请求,调度服务器接收到该访问请求后,可以解析该访问请求,获得其中携带的待获取直播流的流标识,然后根据该流标识,从参数配置中心读取获取直播流的流媒体参数,参数配置中心存储的流媒体参数可以基于待获取直播流的拉流质量更新,读取到的待获取直播流的流媒体参数可以是当前最新的流媒体参数,针对不同的直播流可以进行个性化的参数配置,能够适应各个不同直播流的实际访问特点,提高了内容分发网络中参数配置的针对性。
本实施例一个可选的实施方式中,参数配置系统还可以采集实际的拉流质量,动态更新参数配置中心存储的流媒体参数,也即根据流标识,读取待获取直播流的流媒体参数之前,还可以包括:
采集待获取直播流的拉流质量,其中,拉流质量包括至少一个质量参数;
根据至少一个质量参数,确定待获取直播流的质量得分;
根据待获取直播流的流标识和质量得分,更新待获取直播流对应的流媒体参数。
需要说明的是,内容分发网络的参数配置系统还可以设置有打分服务器,该打分服务器可以实时采集待获取直播流的拉流质量,根据至少一个质量参数,确定待获取直播流的质量得分。然后,打分服务器可以将待获取直播流的流标识和确定出的质量得分发送给参数配置系统的参数配置中心,使得参数配置中心可以根据待获取直播流的流标识和质量得分,对待获取直播流的流媒体参数进行动态更新。如此,可以通过实时采集到的直播流的拉流质量数据,计算得出更合适的流媒体配置参数,自动更新到参数配置中心,保证了参数配置中心存储的流媒体参数的准确率。
本申请实施例中,打分服务器可以根据当前的调度策略参数和拉流质量结果来评判当前的流媒体参数,动态更新参数配置中心存储的流媒体参数,以实际拉流质量驱动的方式来实现配置参数中心的流媒体参数的更新,更好地适应动态多变的直播环境。
本实施例一个可选的实施方式中,可以结合目标回源数据和直播流播放数据,确定待获取直播流的质量得分,也即内容分发网络包括二级源节点和至少一个边缘节点,此时采集待获取直播流的拉流质量,具体实现过程可以如下:
采集内容分发网络中边缘节点和二级源节点的目标回源数据,其中,目标回源数据为待获取直播流对应的回源数据;
采集用户端的直播流播放数据;
相应地,根据至少一个质量参数,确定待获取直播流的质量得分,具体实现过程可以如下:
根据目标回源数据和直播流播放数据,确定待获取直播流的质量得分。
需要说明的是,内容分发网络中边缘节点和二级源节点的目标回源数据可以表示内容分发网络的回源质量,直播流播放数据可以表示用户端的播放质量,也即目标回源数据和直播流播放数据作为质量参数,确定待获取直播流的质量得分。
本申请实施例中,参数配置系统中的打分服务器可以每隔预设时长采集边缘节点和二级源节点的目标回源数据,同时采集用户端的直播流播放数据,然后结合目标回源数据和直播流播放数据,确定待获取直播流当前的质量得分。如此,在确定待获取直播流的质量得分时,即考虑了内容分发网络的回源质量,又考虑了用户端的播放质量,综合确定待获取直播流的质量得分,提高了质量得分的参数覆盖度,可以更好的适应复杂多变的网络环境,提高了质量得分的准确率。
本实施例一个可选的实施方式中,根据至少一个质量参数,确定待获取直播流的质量得分,具体实现过程可以如下:
根据至少一个质量参数的数据来源和所处数值范围,确定至少一个质量参数对应的权重系数;
根据至少一个质量参数的权重系数,对至少一个质量参数的初始分值进行加权平均,获得待获取直播流的质量得分。
实际应用中,可以预先设置各个质量参数对应的初始分值,并且还可以预先设置不同数据来源、不同数值范围对应的权重系数,根据各个质量参数的权重系数,对各个质量参数的初始分值进行加权平均,获得待获取直播流的质量得分。
示例的,质量参数包括目标回源数据和直播流播放数据,目标回源数据包括回源数据1和回源数据2,直播流播放数据包括播放数据1,数据来源、数值范围和权重系数的对应关系如下表1所示。假设回源数据1来源于边缘节点,且处于X2-X3之间;回源数据2来源于二级源节点,且处于Y1-Y2之间;播放数据1来源于用户端,且处于Z2-Z3之间,各个质量参数的初始分值均为100,那么此时待获取直播流的质量得分为:(100*0.6+100*0.9+100*08)/3=76.7分。
表1数据来源、数值范围和权重系数的对应关系表
本申请实施例中,不同数据来源、处于不同数值范围可以对应不同的权重系数,参数配置中心在根据至少一个质量参数(如目标回源数据和直播流播放数据),确定待获取直播流的质量得分时,可以基于数据来源、具体数值所处的数值范围对应的权重系数,对各个质量参数的初始分值进行加权平均,获得待获取直播流的质量得分。如此,可以综合考虑各个质量参数的数据来源和具体的数值范围,综合确定待获取直播流的质量得分,提高了质量得分的准确率,可以更好的适应复杂多变的网络环境。
本实施例一个可选的实施方式中,不同的质量得分对应有不同的调整方向和调整步长,可以基于调整方向和调整步长对流媒体参数进行调整,也即根据待获取直播流的流标识和质量得分,更新待获取直播流对应的流媒体参数,具体实现过程可以如下:
将待获取直播流对应的流媒体参数作为待更新流媒体参数;
根据质量得分,确定待更新流媒体参数的调整方向和调整步长;
根据调整方向和调整步长,更新待更新流媒体参数。
其中,调整方向是指调整流媒体参数的方向,如调整方向可以为正向调整或负向调整;调整步长是指调整流媒体参数的幅度,如调整步长可以为5、10、15等。
需要说明的是,参数配置中心接收到打分服务器发送的流标识和质量得分后,先基于流标识查找到待获取直播流对应的流媒体参数,将该流媒体参数作为待更新流媒体参数,之后根据质量得分,确定待更新流媒体参数的调整方向和调整步长,根据调整方向和调整步长,更新待更新流媒体参数。如此,可以基于动态确定出的质量得分,动态更新相应的流媒体参数,便于后续实现直播流级别的参数配置,可以更好的适应复杂多变的网络环境。
本实施例一个可选的实施方式中,根据质量得分,确定待更新流媒体参数的调整方向和调整步长,具体实现过程可以如下:
在质量得分高于得分阈值的情况下,确定调整方向为正向调整,在质量得分不高于得分阈值的情况下,确定调整方向为反向调整;
在质量得分属于第一分值范围的情况下,确定调整步长为第一数值,在质量得分属于第二分值范围的情况下,确定调整步长为第二数值。
具体的,得分阈值是预先设置的数值,用于判断质量得分是否较高,从而确定当前的流媒体参数是否合适,进而确定流媒体参数的调整方向。另外,第一分值范围和第二分值范围是预先设置的数值范围,用于确定流媒体参数需要调整的幅度大小。
需要说明的是,不同的质量得分可以指示不同的调整方向和调整步长,如质量得分高于得分阈值,则可以确定调整方向为正向调整,即在当前流媒体参数上增加调整步长;若质量得分不高于得分阈值,则确定调整方向为反向调整,即在当前流媒体参数上扣减调整步长。其中,质量得分属于第一分值范围,则调整步长为第一数值,质量得分属于第二分值范围,则调整步长为第二数值,第一数值和第二数值均为预先设定的数值,分别与第一数值范围和第二数值范围相关。
另外,若需要更新的流媒体参数为是否开启某功能,则调整方向可以为开启(正向调整)或关闭(负向调整),调整步长可以为0。
本申请实施例中,参数配置中心可以将待获取直播流对应的流媒体参数作为待更新流媒体参数,然后根据质量得分,确定待更新流媒体参数的调整方向和调整步长,基于调整方向和调整步长,更新参数配置中心存储的待更新流媒体参数。如此,可以通过实时采集到的拉流质量计算获得质量得分,确定出更合适的流媒体配置参数,自动更新到参数配置中心,保证了参数配置中心存储的流媒体参数的准确率。
步骤106:根据流媒体参数生成对应的拉流地址,将拉流地址返回给用户端,其中,拉流地址用于指示用户端向拉流地址对应的目标边缘节点请求回源,并指示目标边缘节点对待获取直播流的拉流参数进行配置。
需要说明的是,参数配置中心可以针对各个直播流存储对应的流媒体参数,调度服务器可以从参数配置中心读取待获取直播流的流媒体参数,并根据流媒体参数生成对应的拉流地址,将拉流地址返回给用户端,如此拉流地址中携带有直播流级别的流媒体参数,用户端基于该拉流地址向对应的目标边缘节点进行回源,目标边缘节点可以解析该拉流请求,获得待获取直播流的流媒体参数,并根据流媒体参数对待获取直播流的拉流参数进行配置,即基于该流媒体参数配置待获取直播流在拉流过程中的相应功能,实现直播流级别的参数配置。如此,针对不同的直播流可以进行个性化的参数配置,能够适应各个不同直播流的实际访问特点,提高了内容分发网络中参数配置的针对性,进而提高了参数配置的准确率,更好地适应动态多变的直播环境。
本实施例一个可选的实施方式中,调度服务器可以基于设定调度策略,为该用户端分配对应的目标边缘节点,结合目标边缘节点的连接地址和获取到的该流媒体参数,生成拉流地址,以供用户端进行拉流,也即根据流媒体参数生成对应的拉流地址,具体实现过程可以如下:
基于设定调度策略,从参数配置系统包括的至少一个边缘节点中确定用户端对应的目标边缘节点;
将流媒体参数编码至目标连接地址中获得拉流地址,其中,目标连接地址为目标边缘节点的连接地址。
其中,设定调度策略为调度各个用户端的访问请求的规则,如设定调度策略可以为向用户端分配距离最近的边缘节点,或者设定调度策略还可以为向用户端分配网络最优的边缘节点。
另外,拉流地址是指用户能够拉取到待获取直播流的地址,该拉流地址可以为URL(Universal Resource Locator,统一资源定位符)形式。
需要说明的是,调度服务器接收到用户端发起的访问请求后,可以基于设定调度策略,确定为该用户端分配的目标边缘节点,然后获取目标边缘节点的目标连接地址,将流媒体参数编码至目标连接地址中获得拉流地址,调度服务器可以将该拉流地址反馈给用户端,用户端可以基于该拉流地址与目标边缘节点建立连接,以通过目标边缘节点拉取待获取直播流。
本申请实施例中,可以将流媒体参数编码至目标边缘节点的目标连接地址中获得拉流地址,也即拉流地址结合了直播流级别的配置信息,即流媒体参数,使得目标边缘节点可以根据流媒体参数对待获取直播流的拉流参数进行配置,实现直播流级别的参数配置,针对不同的直播流可以进行个性化的参数配置,能够适应各个不同直播流的实际访问特点,提高了内容分发网络中参数配置的针对性,进而提高了参数配置的准确率,更好地适应动态多变的直播环境。
本实施例一个可选的实施方式中,可以通过序列化的方式,对流媒体参数进行编码,也即将流媒体参数编码至目标连接地址中获得拉流地址,具体实现过程可以如下:
对流媒体参数进行序列化,获得流媒体参数的编码信息;
在目标连接地址后增加流媒体参数字段,将编码信息存储在流媒体参数字段中。
具体的,序列化是指将流媒体参数转换为可以存储或传输的形式的过程。调度服务器可以对流媒体参数进行序列化,获得流媒体参数的编码信息,然后在目标连接地址后增加流媒体参数字段,将该编码信息存储在媒体参数字段中。
实际应用中,可以采用现有的序列化算法对流媒体参数进行序列化,获得流媒体参数的编码信息,如protobuf(Google Protocol Buffers,一个具有高效的协议数据交换格式工具库)。当然,除了通过序列化的方式获得流媒体参数的编码信息外,还可以采取其他的编码方式,如One-Hot编码(又称一位有效编码)、映射关系编码(即每个参数映射为一个编码字符)等。
示例的,将该流媒体参数序列化后得到的编码信息假设为“abcdefg”,此时可以在目标边缘节点的目标连接地址中(即原有的调度URL)后面增加一个新的流媒体参数字段,在该流媒体参数字段中记录序列化后获得的编码信息,如sp=“abcdefg”的query参数。
需要说明的是,参数配置中心从扩展性和兼容性的角度考虑,可以使用类似kv(key-value)的存储方式,key用于索引某个具体的流媒体参数,value是具体的流媒体参数序列化后的编码信息。
实际应用中,参数配置中心除了存储有直播流级别的流媒体参数外,还可以存储有应用服务级别的通用配置信息,应用服务级别的通用配置信息的key可以为apps/<appid>/config,其中appid指某个具体的应用服务的标识,比如流信息服务器的streamcenter,直播流级别的流媒体参数中key可以为streams/<streamid>/config,其中,streamid指某个具体的直播流的标识,比如stream001。
示例的,应用服务级别的通用配置信息可以包括冷热流的分级阈值,比如冷流、普通、热流等,影响最终的回源决策(主要从回源的跳数,边缘节点的网络质量来决策);直播流级别的流媒体参数可以包括是否开启丢包、时间戳校正等参数。
需要说明的是,可以在目标连接地址后增加流媒体参数字段,将流媒体参数的编码信息存储在流媒体参数字段中,从而将流媒参数与目标边缘节点的目标连接地址结合,使得后续拉流过程中,目标边缘节点可以根据流媒体参数对待获取直播流的拉流参数进行配置,实现直播流级别的参数配置。
本申请实施例提供的内容分发网络的参数配置方法,应用于参数配置系统中,参数配置系统可以包括调度服务器、参数配置中心和至少一个边缘节点,参数配置中心可以针对各个直播流存储对应的流媒体参数,调度服务器可以从参数配置中心读取待获取直播流的流媒体参数,并根据流媒体参数生成对应的拉流地址,将拉流地址返回给用户端,如此拉流地址中携带有直播流级别的流媒体参数,用户端基于该拉流地址向对应的目标边缘节点进行回源,目标边缘节点可以解析该拉流请求,获得其中的流媒体参数,并根据流媒体参数对待获取直播流的拉流参数进行配置,实现直播流级别的参数配置。如此,针对不同的直播流可以进行个性化的参数配置,能够适应各个不同直播流的实际访问特点,提高了内容分发网络中参数配置的针对性,进而提高了参数配置的准确率,更好地适应动态多变的直播环境。
图2示出了根据本申请一实施例提供的一种内容分发网络的参数配置系统的结构示意图,如图2所示,内容分发网络的参数配置系统包括调度服务器202、参数配置中心204和至少一个边缘节点206;
调度服务器202,被配置为接收用户端的访问请求,其中,访问请求携带待获取直播流的流标识;根据流标识,从参数配置中心204读取待获取直播流的流媒体参数,根据流媒体参数生成对应的拉流地址,将拉流地址返回给用户端;
目标边缘节点2061,被配置为接收用户端发送的拉流请求,解析拉流请求获得流媒体参数,并根据流媒体参数对待获取直播流的拉流参数进行配置,其中,拉流请求为用户端根据接收到的拉流地址向对应的目标边缘节点发送。
其中,目标边缘节点2061是内容分发网络包括的至少一个边缘节点206中被分配给用户端的边缘节点。
本申请实施例中,参数配置中心可以针对各个直播流存储对应的流媒体参数,调度服务器可以从参数配置中心读取待获取直播流的流媒体参数,并根据流媒体参数生成对应的拉流地址,将拉流地址返回给用户端,如此拉流地址中携带有直播流级别的流媒体参数,用户端基于该拉流地址向对应的目标边缘节点进行回源,目标边缘节点可以解析该拉流请求,获得其中的流媒体参数,并根据流媒体参数对待获取直播流的拉流参数进行配置,即基于该流媒体参数配置待获取直播流在拉流过程中的相应功能,实现直播流级别的参数配置。如此,针对不同的直播流可以进行个性化的参数配置,能够适应各个不同直播流的实际访问特点,提高了内容分发网络中参数配置的针对性,进而提高了参数配置的准确率,更好地适应动态多变的直播环境。
本实施例一个可选的实施方式中,参数配置中心204存储的流媒体参数可以基于实际的拉流质量动态更新,调度服务器202可以基于待获取直播流的流标识,从参数配置中心204读取待获取直播流当前的流媒体参数,也即调度服务器202,进一步被配置为:
接收用户端的访问请求,其中,访问请求携带待获取直播流的流标识;
根据流标识,从参数配置中心读取待获取直播流的流媒体参数,其中,流媒体参数基于待获取直播流的拉流质量更新。
需要说明的是,用户端可以向调度服务器发起访问请求,调度服务器接收到该访问请求后,可以解析该访问请求,获得其中携带的待获取直播流的流标识,然后根据该流标识,从参数配置中心读取获取直播流的流媒体参数,参数配置中心存储的流媒体参数可以基于待获取直播流的拉流质量更新,针对不同的直播流可以进行个性化的参数配置,能够适应各个不同直播流的实际访问特点,提高了内容分发网络中参数配置的针对性。
本实施例一个可选的实施方式中,图3示出了根据本申请一实施例提供的另一种内容分发网络的参数配置系统的结构示意图,如图3所示,该参数配置系统还包括打分服务器208;打分服务器208,被配置为:
采集待获取直播流的拉流质量,其中,拉流质量包括至少一个质量参数;
根据至少一个质量参数,确定待获取直播流的质量得分;
将待获取直播流的流标识和质量得分发送给参数配置中心204,其中,质量得分用于参数配置中心204更新对应的流媒体参数。
需要说明的是,内容分发网络的参数配置系统还可以设置有打分服务器,该打分服务器可以实时采集待获取直播流的拉流质量,根据至少一个质量参数,确定待获取直播流的质量得分,将待获取直播流的流标识和质量得分发送给参数配置中心,使得参数配置中心可以基于该质量得分,对待获取直播流的流媒体参数进行动态更新。如此,可以通过实时采集到的直播流的拉流质量数据,计算得出更合适的流媒体配置参数,自动更新到参数配置中心,保证了参数配置中心存储的流媒体参数的准确率。
本实施例一个可选的实施方式中,打分服务器208,进一步被配置为:
根据至少一个质量参数的数据来源和所处数值范围,确定至少一个质量参数对应的权重系数;
根据至少一个质量参数的权重系数,对至少一个质量参数的初始分值进行加权平均,获得待获取直播流的质量得分。
需要说明的是,不同数据来源、处于不同数值范围可以对应不同的权重系数,参数配置中心在根据至少一个质量参数(如目标回源数据和直播流播放数据),确定待获取直播流的质量得分时,可以基于数据来源、具体数值所处的数值范围对应的权重系数,对各个质量参数的初始分值进行加权平均,获得待获取直播流的质量得分。如此,可以综合考虑各个质量参数的数据来源和具体的数值范围,综合确定待获取直播流的质量得分,提高了质量得分的准确率,可以更好的适应复杂多变的网络环境。
本实施例一个可选的实施方式中,不同的质量得分对应有不同的调整方向和调整步长,可以基于调整方向和调整步长对流媒体参数进行调整,也即参数配置中心204,被配置为:
将待获取直播流对应的流媒体参数作为待更新流媒体参数;
根据质量得分,确定待更新流媒体参数的调整方向和调整步长;
根据调整方向和调整步长,更新参数配置中心存储的待更新流媒体参数。
本申请实施例中,参数配置中心可以将待获取直播流对应的流媒体参数作为待更新流媒体参数,然后根据质量得分,确定待更新流媒体参数的调整方向和调整步长,基于调整方向和调整步长,更新参数配置中心存储的待更新流媒体参数。如此,可以通过实时采集到的拉流质量计算获得质量得分,确定出更合适的流媒体配置参数,自动更新到参数配置中心,保证了参数配置中心存储的流媒体参数的准确率。
本实施例一个可选的实施方式中,参数配置中心204,进一步被配置为:
在质量得分高于得分阈值的情况下,确定调整方向为正向调整,在质量得分不高于得分阈值的情况下,确定调整方向为反向调整;
在质量得分属于第一分值范围的情况下,确定调整步长为第一数值,在质量得分属于第二分值范围的情况下,确定调整步长为第二数值。
本申请实施例中,参数配置中心可以将待获取直播流对应的流媒体参数作为待更新流媒体参数,然后根据质量得分,确定待更新流媒体参数的调整方向和调整步长,基于调整方向和调整步长,更新参数配置中心存储的待更新流媒体参数。如此,可以通过实时采集到的拉流质量计算获得质量得分,确定出更合适的流媒体配置参数,自动更新到参数配置中心,保证了参数配置中心存储的流媒体参数的准确率。
本实施例一个可选的实施方式中,可以结合目标回源数据和直播流播放数据,确定待获取直播流的质量得分,也即内容分发网络包括二级源节点和至少一个边缘节点,打分服务器208,进一步被配置为:
采集内容分发网络中边缘节点和二级源节点的目标回源数据,其中,目标回源数据为待获取直播流对应的回源数据;
采集用户端的直播流播放数据;
根据目标回源数据和直播流播放数据,确定待获取直播流的质量得分。
需要说明的是,打分服务器可以每隔预设时长采集边缘节点和二级源节点的目标回源数据,同时采集用户端的直播流播放数据,然后结合目标回源数据和直播流播放数据,确定待获取直播流当前的质量得分。如此,可以结合目标回源数据和直播流播放数据,综合确定待获取直播流的质量得分,提高了质量得分的准确率。
本实施例一个可选的实施方式中,调度服务器202可以基于设定调度策略,为该用户端分配对应的目标边缘节点2061,结合目标边缘节点2061的连接地址和获取到的该流媒体参数,生成拉流地址,以供用户端进行拉流,也即调度服务器202,进一步被配置为:
基于设定调度策略,从至少一个边缘节点中确定用户端对应的目标边缘节点;
将流媒体参数编码至目标连接地址中获得拉流地址,其中,目标连接地址为目标边缘节点的连接地址。
本申请实施例中,可以将流媒体参数编码至目标边缘节点的目标连接地址中获得拉流地址,也即拉流地址结合了直播流级别的配置信息,即流媒体参数,使得目标边缘节点可以根据流媒体参数对待获取直播流的拉流参数进行配置,实现直播流级别的参数配置,针对不同的直播流可以进行个性化的参数配置,能够适应各个不同直播流的实际访问特点,提高了内容分发网络中参数配置的针对性,进而提高了参数配置的准确率,更好地适应动态多变的直播环境。
本实施例一个可选的实施方式中,可以通过序列化的方式,对流媒体参数进行编码,也即调度服务器202,进一步被配置为:
对流媒体参数进行序列化,获得流媒体参数的编码信息;
在目标连接地址后增加流媒体参数字段,将编码信息存储在流媒体参数字段中。
本申请实施例中,可以在目标连接地址后增加流媒体参数字段,将流媒体参数的编码信息存储在流媒体参数字段中,从而将流媒参数与目标边缘节点的目标连接地址结合,使得后续拉流过程中,目标边缘节点可以根据流媒体参数对待获取直播流的拉流参数进行配置,实现直播流级别的参数配置,针对不同的直播流可以进行个性化的参数配置,能够适应各个不同直播流的实际访问特点,提高了内容分发网络中参数配置的针对性,进而提高了参数配置的准确率,更好地适应动态多变的直播环境。
本实施例一个可选的实施方式中,如图3所示,该参数配置系统还包括回源服务器210;
目标边缘节点2061,进一步被配置为接收到拉流请求,根据拉流请求中携带的流媒体参数,生成并向回源服务器210发送回源请求,其中,拉流请求为用户端根据接收到的拉流地址中的流媒体参数生成,并基于拉流地址中的目标连接地址发送;
回源服务器210,被配置为基于设定回源策略和流媒体参数,确定目标边缘节点2061的回源路径,将回源路径返回给目标边缘节点2061;
目标边缘节点2061,进一步被配置为根据回源路径,向内容分发网络中的二级源节点或源站请求回源,拉取待获取直播流,并推送给用户端。
需要说明的是,设定回源策略是指预先设定的、确定目标边缘节点的回源路径的策略,如设定回源策略可以为基于待获取直播流的冷热流类型,确定对应的回源路径,或者设定回源策略还可以为基于流信息服务器中待获取直播流的流分布情况,确定对应的回源路径等。
实际应用中,目标边缘节点接收到拉流请求后,可以根据拉流请求中携带的流标识,向回源服务器发送回源请求;回源服务器可以基于设定回源策略,确定目标边缘节点的回源路径,将回源路径返回给目标边缘节点;目标边缘节点可以根据回源路径,拉取待获取直播流,并推送给用户端。如此,可以基于设定回源策略,动态确定目标边缘节点的回源路径,使得回源过程更能使用动态多变的直播环境。
本申请实施例提供的内容分发网络的参数配置系统包括调度服务器、参数配置中心和至少一个边缘节点,参数配置中心可以针对各个直播流存储对应的流媒体参数,调度服务器可以从参数配置中心读取待获取直播流的流媒体参数,并根据流媒体参数生成对应的拉流地址,将拉流地址返回给用户端,如此拉流地址中携带有直播流级别的流媒体参数,用户端基于该拉流地址向对应的目标边缘节点进行回源,目标边缘节点可以解析该拉流请求,获得其中的流媒体参数,并根据流媒体参数对待获取直播流的拉流参数进行配置,实现直播流级别的参数配置。如此,针对不同的直播流可以进行个性化的参数配置,能够适应各个不同直播流的实际访问特点,提高了内容分发网络中参数配置的针对性,进而提高了参数配置的准确率,更好地适应动态多变的直播环境。
上述为本实施例的一种内容分发网络的参数配置系统的示意性方案。需要说明的是,该内容分发网络的参数配置系统的技术方案与上述的内容分发网络的参数配置方法的技术方案属于同一构思,内容分发网络的参数配置系统的技术方案未详细描述的细节内容,均可以参见上述内容分发网络的参数配置方法的技术方案的描述。
图4示出了根据本申请一实施例提供的一种内容分发网络的参数配置方法的交互示意图,如图4所示,当前的播放流程,主播向内容分发网络中的源站推流后,用户端开始向调度服务器请求播放地址,调度服务器收到请求后,会根据直播流的流标识去参数配置中心查询该直播流的冷热流参数阈值,以及当前的流媒体参数等,将流媒体参数编码至目标连接地址中获得拉流地址,将该拉流地址返回给该用户端,用户端可以使用返回的拉流地址向对应的目标边缘节点请求拉流。目标边缘节点可以基于拉流地址中携带的流媒体参数对本地参数进行配置,并向回源服务器请求回源路径,回源服务器可以从流信息服务器(即存储各个直播流的分布情况的服务器)中查询该直播流的流分布情况(如流转发树),基于流分布情况确定对应的回源路径,向目标边缘节点返回该回源路径,目标边缘节点可以基于该回源路径向内容分发网络中的二级源节点或源站进行回源,拉取该直播流,并向用户端推送直播流,之后可以向流信息服务器上报流状态,该流状态用于流信息服务器更新流分布情况(即更新流信息转发树)。
另外,打分服务器可以对内容分发网络中边缘节点和二级源节点的回源数据,以及用户端的直播流播放数据等质量参数进行质量打点收集,打分服务器根据当前的打分策略和收集到的各个质量参数来评判当前的参数值,即确定待获取直播流的质量得分,并将该质量得分同步给参数配置中心,使得参数配置中心可以动态的更新相应的流媒体参数,以质量参数驱动的方式来实现流级别的参数配置中心存储的流媒体参数的动态更新。
图5示出了根据本申请一实施例提供的一种计算设备的结构框图。该计算设备500的部件包括但不限于存储器510和处理器520。处理器520与存储器510通过总线530相连接,数据库550用于保存数据。
计算设备500还包括接入设备540,接入设备540使得计算设备500能够经由一个或多个网络560通信。这些网络的示例包括公用交换电话网(PSTN,Public SwitchedTelephone Network)、局域网(LAN,Local Area Network)、广域网(WAN,WideAreaNetwork)、个域网(PAN,PersonalArea Network)或诸如因特网的通信网络的组合。接入设备540可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC,Network Interface Controller))中的一个或多个,诸如IEEE802.11无线局域网(WLAN,Wireless LocalAreaNetworks)无线接口、全球微波互联接入(Wi-MAX,WorldwideInteroperability for Microwave Access)接口、以太网接口、通用串行总线(USB,Universal Serial Bus)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC,Near FieldCommunication)接口,等等。
在本申请的一个实施例中,计算设备500的上述部件以及图5中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图5所示的计算设备结构框图仅仅是出于示例的目的,而不是对本申请范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备500可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备500还可以是移动式或静止式的服务器。
其中,处理器520用于执行如下计算机可执行指令,以实现下述方法:
接收用户端的访问请求,其中,访问请求携带待获取直播流的流标识;
根据流标识,读取待获取直播流的流媒体参数;
根据流媒体参数生成对应的拉流地址,将拉流地址返回给用户端,其中,拉流地址用于指示目标边缘节点对待获取直播流的拉流参数进行配置。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的内容分发网络的参数配置方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述内容分发网络的参数配置方法的技术方案的描述。
本申请一实施例还提供一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现任意内容分发网络的参数配置方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的内容分发网络的参数配置方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述内容分发网络的参数配置方法的技术方案的描述。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
计算机指令包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本申请的内容,可作很多的修改和变化。本申请选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。

Claims (13)

1.一种内容分发网络的参数配置方法,其特征在于,应用于参数配置系统,所述内容分发网络包括二级源节点和至少一个边缘节点,所述方法包括:
接收用户端的访问请求,其中,所述访问请求携带待获取直播流的流标识;
采集所述内容分发网络中边缘节点和二级源节点的目标回源数据,其中,所述目标回源数据为所述待获取直播流对应的回源数据,所述目标回源数据表示所述内容分发网络的回源质量;
采集所述用户端的直播流播放数据,其中,所述直播流播放数据表示所述用户端的播放质量;
根据所述目标回源数据和所述直播流播放数据,确定所述待获取直播流的质量得分;
根据所述待获取直播流的流标识和所述质量得分,更新所述待获取直播流对应的流媒体参数;
根据所述流标识,读取待获取直播流的流媒体参数,所述流媒体参数是指目标边缘节点中是否开启所述待获取直播流的对应功能和/或所述待获取直播流对应的访问参数;
根据所述流媒体参数生成对应的拉流地址,将所述拉流地址返回给所述用户端,其中,所述拉流地址用于指示所述用户端向所述拉流地址对应的所述目标边缘节点请求回源,并指示所述目标边缘节点对所述待获取直播流的拉流参数进行配置。
2.根据权利要求1所述的内容分发网络的参数配置方法,其特征在于,所述根据所述至少一个质量参数,确定所述待获取直播流的质量得分,包括:
根据所述至少一个质量参数的数据来源和所处数值范围,确定所述至少一个质量参数对应的权重系数;
根据所述至少一个质量参数的权重系数,对所述至少一个质量参数的初始分值进行加权平均,获得所述待获取直播流的质量得分。
3.根据权利要求1所述的内容分发网络的参数配置方法,其特征在于,所述根据所述待获取直播流的流标识和所述质量得分,更新所述待获取直播流对应的流媒体参数,包括:
将所述待获取直播流对应的流媒体参数作为待更新流媒体参数;
根据所述质量得分,确定所述待更新流媒体参数的调整方向和调整步长;
根据所述调整方向和调整步长,更新所述待更新流媒体参数。
4.根据权利要求3所述的内容分发网络的参数配置方法,其特征在于,所述根据所述质量得分,确定所述待更新流媒体参数的调整方向和调整步长,包括:
在所述质量得分高于得分阈值的情况下,确定所述调整方向为正向调整,在所述质量得分不高于得分阈值的情况下,确定所述调整方向为反向调整;
在所述质量得分属于第一分值范围的情况下,确定所述调整步长为第一数值,在所述质量得分属于第二分值范围的情况下,确定所述调整步长为第二数值。
5.根据权利要求1-4任一项所述的内容分发网络的参数配置方法,其特征在于,所述根据所述流媒体参数生成对应的拉流地址,包括:
基于设定调度策略,从所述参数配置系统包括的至少一个边缘节点中确定所述用户端对应的目标边缘节点;
将所述流媒体参数编码至目标连接地址中获得拉流地址,其中,所述目标连接地址为所述目标边缘节点的连接地址。
6.根据权利要求5所述的内容分发网络的参数配置方法,其特征在于,所述将所述流媒体参数编码至目标连接地址中获得拉流地址,包括:
对所述流媒体参数进行序列化,获得所述流媒体参数的编码信息;
在所述目标连接地址后增加流媒体参数字段,将所述编码信息存储在所述流媒体参数字段中。
7.一种内容分发网络的参数配置系统,其特征在于,所述系统包括调度服务器、参数配置中心、至少一个边缘节点和打分服务器,所述内容分发网络包括二级源节点和所述至少一个边缘节点;
所述调度服务器,被配置为接收用户端的访问请求,其中,所述访问请求携带待获取直播流的流标识;
所述打分服务器,被配置为采集所述内容分发网络中边缘节点和二级源节点的目标回源数据,其中,所述目标回源数据为所述待获取直播流对应的回源数据,所述目标回源数据表示所述内容分发网络的回源质量;采集所述用户端的直播流播放数据,其中,所述直播流播放数据表示所述用户端的播放质量;根据所述目标回源数据和所述直播流播放数据,确定所述待获取直播流的质量得分;将所述待获取直播流的流标识和所述质量得分发送给所述参数配置中心,其中,所述质量得分用于所述参数配置中心更新对应的流媒体参数;
所述调度服务器,还被配置为根据所述流标识,从所述参数配置中心读取待获取直播流的流媒体参数,所述流媒体参数是指目标边缘节点中是否开启所述待获取直播流的对应功能和/或所述待获取直播流对应的访问参数;根据所述流媒体参数生成对应的拉流地址,将所述拉流地址返回给所述用户端;
目标边缘节点,被配置为接收所述用户端发送的拉流请求,解析所述拉流请求获得所述流媒体参数,并根据所述流媒体参数对所述待获取直播流的拉流参数进行配置,其中,所述拉流请求为所述用户端根据接收到的拉流地址向对应的所述目标边缘节点发送。
8.根据权利要求7所述的内容分发网络的参数配置系统,其特征在于,所述参数配置中心,被配置为:
将所述待获取直播流对应的流媒体参数作为待更新流媒体参数;
根据所述质量得分,确定所述待更新流媒体参数的调整方向和调整步长;
根据所述调整方向和调整步长,更新所述参数配置中心存储的所述待更新流媒体参数。
9.根据权利要求7-8任一项所述的内容分发网络的参数配置系统,其特征在于,所述调度服务器,进一步被配置为:
基于设定调度策略,从所述至少一个边缘节点中确定所述用户端对应的目标边缘节点;
将所述流媒体参数编码至目标连接地址中获得拉流地址,其中,所述目标连接地址为所述目标边缘节点的连接地址。
10.根据权利要求9所述的内容分发网络的参数配置系统,其特征在于,所述调度服务器,进一步被配置为:
对所述流媒体参数进行序列化,获得所述流媒体参数的编码信息;
在所述目标连接地址后增加流媒体参数字段,将所述编码信息存储在所述流媒体参数字段中。
11.根据权利要求7-8任一项所述的内容分发网络的参数配置系统,其特征在于,所述系统还包括回源服务器;
所述目标边缘节点,进一步被配置为接收到所述拉流请求,根据所述拉流请求中携带的流媒体参数,生成并向所述回源服务器发送回源请求,其中,所述拉流请求为所述用户端根据接收到的拉流地址中的流媒体参数生成,并基于所述拉流地址中的目标连接地址发送;
所述回源服务器,被配置为基于设定回源策略和所述流媒体参数,确定所述目标边缘节点的回源路径,将所述回源路径返回给所述目标边缘节点;
所述目标边缘节点,进一步被配置为根据所述回源路径,向所述内容分发网络中的二级源节点或源站请求回源,拉取所述待获取直播流,并推送给所述用户端。
12.一种计算设备,其特征在于,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,以实现下述方法:
接收用户端的访问请求,其中,所述访问请求携带待获取直播流的流标识;
采集内容分发网络中边缘节点和二级源节点的目标回源数据,其中,所述目标回源数据为所述待获取直播流对应的回源数据,所述目标回源数据表示所述内容分发网络的回源质量;
采集所述用户端的直播流播放数据,其中,所述直播流播放数据表示所述用户端的播放质量;
根据所述目标回源数据和所述直播流播放数据,确定所述待获取直播流的质量得分;
根据所述待获取直播流的流标识和所述质量得分,更新所述待获取直播流对应的流媒体参数;
根据所述流标识,读取待获取直播流的流媒体参数,所述流媒体参数是指目标边缘节点中是否开启所述待获取直播流的对应功能和/或所述待获取直播流对应的访问参数;
根据所述流媒体参数生成对应的拉流地址,将所述拉流地址返回给所述用户端,其中,所述拉流地址用于指示所述用户端向所述拉流地址对应的所述目标边缘节点请求回源,并指示所述目标边缘节点对所述待获取直播流的拉流参数进行配置。
13.一种计算机可读存储介质,其特征在于,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求1-6任一项所述的内容分发网络的参数配置方法的步骤。
CN202210617267.XA 2022-06-01 2022-06-01 内容分发网络的参数配置方法及系统 Active CN115022660B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210617267.XA CN115022660B (zh) 2022-06-01 2022-06-01 内容分发网络的参数配置方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210617267.XA CN115022660B (zh) 2022-06-01 2022-06-01 内容分发网络的参数配置方法及系统

Publications (2)

Publication Number Publication Date
CN115022660A CN115022660A (zh) 2022-09-06
CN115022660B true CN115022660B (zh) 2024-03-19

Family

ID=83073388

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210617267.XA Active CN115022660B (zh) 2022-06-01 2022-06-01 内容分发网络的参数配置方法及系统

Country Status (1)

Country Link
CN (1) CN115022660B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116916054B (zh) * 2023-09-14 2023-12-05 美冠(北京)科技有限公司 基于云播控的数字化媒介内容分发系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101051942A (zh) * 2007-04-02 2007-10-10 北京亿阳信通软件研究院有限公司 确定业务服务的业务参数等级量化范围的方法和装置
CN107277568A (zh) * 2017-08-16 2017-10-20 广州市千钧网络科技有限公司 一种推流配置参数动态调整方法及装置
CN109951338A (zh) * 2019-03-28 2019-06-28 北京金山云网络技术有限公司 Cdn网络配置方法、配置装置、电子设备及存储介质
WO2021151279A1 (zh) * 2020-06-17 2021-08-05 平安科技(深圳)有限公司 基于边缘计算的云监控方法、装置、电子设备及存储介质
CN113259706A (zh) * 2021-06-28 2021-08-13 北京新唐思创教育科技有限公司 直播处理方法、装置、电子设备以及存储介质
CN113726801A (zh) * 2021-09-02 2021-11-30 北京字节跳动网络技术有限公司 应用于服务端的ab实验方法、装置、设备及介质
CN114501073A (zh) * 2022-02-16 2022-05-13 上海哔哩哔哩科技有限公司 直播回源方法及装置
CN114501053A (zh) * 2022-02-07 2022-05-13 上海哔哩哔哩科技有限公司 直播流获取方法及装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101051942A (zh) * 2007-04-02 2007-10-10 北京亿阳信通软件研究院有限公司 确定业务服务的业务参数等级量化范围的方法和装置
CN107277568A (zh) * 2017-08-16 2017-10-20 广州市千钧网络科技有限公司 一种推流配置参数动态调整方法及装置
CN109951338A (zh) * 2019-03-28 2019-06-28 北京金山云网络技术有限公司 Cdn网络配置方法、配置装置、电子设备及存储介质
WO2021151279A1 (zh) * 2020-06-17 2021-08-05 平安科技(深圳)有限公司 基于边缘计算的云监控方法、装置、电子设备及存储介质
CN113259706A (zh) * 2021-06-28 2021-08-13 北京新唐思创教育科技有限公司 直播处理方法、装置、电子设备以及存储介质
CN113726801A (zh) * 2021-09-02 2021-11-30 北京字节跳动网络技术有限公司 应用于服务端的ab实验方法、装置、设备及介质
CN114501053A (zh) * 2022-02-07 2022-05-13 上海哔哩哔哩科技有限公司 直播流获取方法及装置
CN114501073A (zh) * 2022-02-16 2022-05-13 上海哔哩哔哩科技有限公司 直播回源方法及装置

Also Published As

Publication number Publication date
CN115022660A (zh) 2022-09-06

Similar Documents

Publication Publication Date Title
US11350139B2 (en) Video live broadcast method and apparatus
CN114501073B (zh) 直播回源方法及装置
US20110067074A1 (en) Method, device, and system for playing media based on p2p
KR20150083793A (ko) 클라이언트 단말기에서, 멀티미디어 컨텐츠의 세그먼트의 다가오는 시퀀스를 다운로딩하는 방법, 및 대응하는 단말기
WO2010127538A1 (zh) 实现媒体内容共享的方法及系统
CN101895576B (zh) 一种具有较小启动时延的p2p分布式流媒体直播方法
KR20100048858A (ko) 무선 모바일 네트워크에서 p2p 애플리케이션을 인에이블링하기 위한 시스템 및 방법
CN114760482B (zh) 直播回源方法及装置
WO2013120386A1 (zh) 一种云端订阅下载的方法、系统和计算机存储介质
CN103905516B (zh) 分享数据的方法及相应服务器和终端
CN115022660B (zh) 内容分发网络的参数配置方法及系统
Kumar et al. Edge assisted DASH video caching mechanism for multi-access edge computing
CN110913239B (zh) 一种精细化的移动边缘计算的视频缓存更新方法
CN114679604A (zh) 资源处理方法及装置
US20240106891A1 (en) Peer-to-peer network scheduling method and system
KR20090029113A (ko) 파일 병렬 다운로드에서의 블록 선택 방법, 이를 이용한파일 병렬 다운로드 방법 및 이를 구현하기 위한프로그램을 기록한 기록매체
CN114866790B (zh) 直播流调度方法及装置
CN115002497A (zh) 直播回源的调度方法及系统、回源服务器
US10462248B2 (en) Digital content sharing cloud service system, digital content sharing cloud service device, and method using the same
CN112637351B (zh) 一种文件下载方法及装置
CN109361928B (zh) 一种信息中心网络系统及视频传输方法
Neishaboori Implementation and evaluation of mobile-edge computing cooperative caching
Jia et al. Modeling and optimization of bandwidth supply performance for cloud-assisted video systems under flash crowd
Ramesh et al. Mobile applications in multimedia cloud computing
Yang et al. Multi-access edge computing-assisted D2D streaming for proximity-based social networking

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