CN108810558B - 一种直播回源的方法及系统 - Google Patents

一种直播回源的方法及系统 Download PDF

Info

Publication number
CN108810558B
CN108810558B CN201810600829.3A CN201810600829A CN108810558B CN 108810558 B CN108810558 B CN 108810558B CN 201810600829 A CN201810600829 A CN 201810600829A CN 108810558 B CN108810558 B CN 108810558B
Authority
CN
China
Prior art keywords
source
server
returning
source returning
path
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
CN201810600829.3A
Other languages
English (en)
Other versions
CN108810558A (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.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and 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 Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN201810600829.3A priority Critical patent/CN108810558B/zh
Publication of CN108810558A publication Critical patent/CN108810558A/zh
Application granted granted Critical
Publication of CN108810558B publication Critical patent/CN108810558B/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/2181Source of audio or video content, e.g. local disk arrays comprising remotely distributed storage units, e.g. when movies are replicated over a plurality of video servers
    • 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/21Server components or server architectures
    • H04N21/226Characteristics of the server or Internal components of the server
    • H04N21/2265Server identification by a unique number or address, e.g. serial number
    • 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/232Content retrieval operation locally within server, e.g. reading video streams from disk arrays

Landscapes

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

Abstract

本发明公开了一种直播回源的方法及系统,通过发送回源路径查询请求,接收调度中心返回的回源路径信息,回源路径信息包括:从回源服务器回源至推流服务器的各层路径信息,根据回源路径信息向回源服务器的上一层服务器进行回源,并发送请求参数,请求参数包括回源路径信息,使得上一层服务器根据回源路径信息进行回源。本方案通过调度中心返回的回源路径信息中包括从回源服务器至推流服务器的各层回源路径信息,使得除第一层回源服务器外各上层回源服务器在回源时,无需与调度中心通信,直接根据请求参数确定其对应的上层服务器即可,避免了现有技术中每一层服务器都需要与调度中心通信,缩短了通信时间,并进一步缩短了播放延迟。

Description

一种直播回源的方法及系统
技术领域
本发明涉及直播控制领域,尤其涉及一种直播回源的方法及系统。
背景技术
在视频直播后端架构中,通常采用分级的网络结构,如图1所示。其中,推流服务器是主播实时上传直播内容的服务器,播放服务器是用户最终观看直播的服务器,中间有一层或多层的中继服务器。
用户访问播放服务器时,播放服务器可能没有相关的直播内容,此时,就需要逐级向上层的中继服务器,直至推流服务器请求,来下载相关的直播内容,这一过程即回源。
目前常用的回源方法,通常需要回源的服务器向调度中心查询回源配置,即查询向哪一个上级服务器进行回源,调度中心仅返回该服务器去往的上一个层级的服务器的路径,这就导致路径上的所有服务器都需要与调度中心进行通信,以便查询去往上一层的服务器的路径。这就造成了各级服务器与调度中心之间的通信时间过长,造成了较大的延迟。
发明内容
有鉴于此,本发明提供一种直播回源的方法及系统,以解决现有技术中回源路径上的所有服务器都需要与调度中心通信,以查询去往上一层的路径,造成的各级服务器与调度中心之间的通信时间过长,造成了较大的延迟的问题,其具体方案如下:
一种直播回源的方法,包括:
发送回源路径查询请求,所述回源路径查询请求至少包括:发送所述回源路径查询请求的回源服务器的标识以及请求播放的内容的标识;
接收调度中心返回的回源路径信息,所述回源路径信息包括:从所述回源服务器回源至推流服务器的各层路径信息;
根据所述回源路径信息向所述回源服务器的上一层服务器进行回源,并发送请求参数,所述请求参数至少包括:回源路径信息,使得所述回源服务器的上一层服务器根据所述回源路径信息进行回源。
进一步的,还包括:
在根据所述回源路径信息向所述回源服务器的上一层服务器进行回源时,对所述回源路径信息进行修正,使得修正后的回源路径信息不包括所述回源服务器向上一层服务器回源的路径信息。
进一步的,还包括:
当接收到所述请求参数时,确定所述请求参数中是否包括回源路径信息;
若包括,根据所述回源路径信息进行回源;
否则,发送回源路径查询请求。
一种直播回源的方法,包括:
接收回源服务器发送的回源路径查询请求,所述回源路径查询请求至少包括:发送所述回源路径查询请求的回源服务器的标识以及请求播放的内容的标识;
根据所述回源路径查询请求确定回源路径信息,所述回源路径信息包括:从所述回源服务器至推流服务器的各层路径信息;
将所述回源路径信息发送至所述回源服务器。
进一步的,所述根据所述回源路径查询请求确定回源路径信息,包括:
根据所述回源服务器的标识确定回源的起点为所述回源服务器;
根据所述请求播放的内容的标识确定所述回源的推流服务器;
确定从所述回源服务器至所述推流服务器的可用路径,将所述可用路径上各层服务器的相关信息确定为回源路径信息。
进一步的,还包括:
当接收到所述回源服务器发送的回源路径查询请求时,验证所述回源路径查询请求的有效性;
当所述回源路径查询请求有效时,根据所述回源路径查询请求确定回源路径信息。
进一步的,还包括:
接收并存储主播终端的内容标识及所述主播终端对应的推流服务器地址信息。
一种直播回源的系统,包括:回源服务器、推流服务器及调度中心,其中:
所述回源服务器用于发送回源路径查询请求,所述回源路径查询请求至少包括:发送所述回源路径查询请求的回源服务器的标识以及请求播放的内容的标识;
所述调度中心用于接收所述回源服务器发送的回源路径查询请求,根据所述回源路径查询请求确定回源路径信息,所述回源路径信息包括:从所述回源服务器至所述推流服务器的各层路径信息,将所述回源路径信息发送至所述回源服务器;
所述回源服务器根据所述回源路径信息向所述回源服务器的上一层服务器进行回源,并发送请求参数,所述请求参数至少包括:回源路径信息,使得所述上一层服务器根据所述回源路径信息进行回源。
进一步的,所述回源服务器包括:播放服务器及中继服务器。
从上述技术方案可以看出,本申请公开的直播回源的方法及系统,通过发送回源路径查询请求,回源路径查询请求至少包括发送回源路径查询请求的回源服务器的标识及请求播放的内容的标识,接收调度中心返回的回源路径信息,回源路径信息包括:从回源服务器回源至推流服务器的各层路径信息,根据回源路径信息向回源服务器的上一层服务器进行回源,并发送请求参数,请求参数至少包括回源路径信息,使得上一层服务器根据回源路径信息进行回源。本方案通过调度中心返回的回源路径信息中包括从回源服务器至推流服务器的各层回源路径信息,使得除第一层回源服务器外各上层回源服务器在回源时,无需与调度中心通信,直接根据请求参数确定其对应的上层服务器即可,避免了现有技术中每一层服务器都需要与调度中心通信,缩短了通信时间,并进一步缩短了播放延迟。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中的一种直播架构的网络拓扑结构图;
图2为本发明实施例公开的一种直播回源的方法的流程图;
图3为本发明实施例公开的一种网络拓扑结构图;
图4为本发明实施例公开的另一种直播回源的方法的流程图;
图5为本发明实施例公开的一种直播回源的系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明公开了一种直播回源的方法,其流程图如图2所示,包括:
步骤S21、发送回源路径查询请求,回源路径查询请求至少包括:发送回源路径查询请求的回源服务器的标识以及请求播放的内容的标识;
回源服务器可以为:播放服务器,也可以为:中继服务器。
无论回源服务器为播放服务器还是中继服务器,当需要查询直播路径时,都需要向调度中心发送回源路径查询请求,以便查询从当前回源服务器到推流服务器的回源路径。
调度中心预先存储有所有播放服务器、中继服务器及推流服务器的相关信息及网络拓扑结构图,以便于当任何一个播放服务器或中继服务器要查询回源路径时,可以直接根据预先存储的服务器的相关信息确定回源路径。
回源路径查询请求中至少包括:发送该回源路径查询请求的回源服务器的标识以及请求播放的内容的标识。
其中,回源路径查询请求中包括发送该回源路径查询请求的回源服务器的标识,以便于确定是具体哪一个服务器需要回源,将该服务器作为回源的起点。具体的,回源服务器的标识可以具体为:该回源服务器的IP地址,也可以为其他不同于其他服务器的特殊标识。
回源路径查询请求中包括请求播放的内容的标识,以便于确定回源的终点,即将具有请求播放的内容的标识的推流服务器作为目标推流服务器,即终点。具体的,请求播放的内容的标识可以具体为:流名称,如:请求播放的某个视频流或音频流等。
当确定了回源的起点及终点时,即可以确定从起点到终点一共有几条路径,再进一步从这多条路径中确定是否有某一个服务器非不可用状态,或者,从一个服务器到其上一层服务器的路径为不可用状态,此时,将包含该服务器或该段不可用路径的整条路径确定为不可用路径,排除掉所有不可用路径后,剩下的能够从起点至终点的路径即为可用路径,可以作为回源路径。
进一步的,调度中心在接收到回源服务器发送的回源路径查询请求时,需要首先验证回源路径查询请求的有效性,只有当该回源路径查询请求有效时,才根据该回源路径查询请求确定回源路径信息,否则,不对该请求进行响应。
具体的,当主播开始直播时,会把内容标识及推流服务器的地址等相关信息注册到调度中心的数据库中,当主播直播结束后,会把这些信息从数据库中注销掉,这就出现了在主播开始直播时,根据内容标识即可查找到推流服务器,从而回源观看直播。而验证有效性就是判断数据库中是否还有上述注册的相关信息,即是否还有主播正在推流的记录。
如果主播推流出现异常导致终端,或者主播临时下线,但播放端没有及时得到通知,还在请求路径,那么,播放端请求的就是无效的路径流。
步骤S22、接收调度中心返回的回源路径信息,回源路径信息包括:从回源服务器回源至推流服务器的各层路径信息;
回源路径信息包括:从回源服务器回源至推流服务器的各层路径信息,具体的,可以为:
假设回源服务器为A,推流服务器为D,确定回源服务器A的上一层服务器,即中继服务器B,确定中继服务器B的上一层服务器,即中继服务器C,中继服务器C的上一层服务器即为推流服务器D,那么,调度中心返回的回源路径信息可以为:Path=A->B->C->D,其具体架构结构示意图如图3所示。
也就是,本实施例中,调度中心返回至发送请求的回源服务器的是从起点至终点的一整条完整的路径信息,即回源服务器至推流服务器的一整条完整的路径信息,而并非仅是回源服务器到其上一层服务器的路径信息。
步骤S23、根据回源路径信息向回源服务器的上一层服务器进行回源,并发送请求参数,请求参数至少包括:回源路径信息,使得上一层服务器根据回源路径信息进行回源。
回源服务器接收到回源路径信息,根据该回源路径信息可以明确当前回源服务器到其上一层服务器的路径信息,从而使回源服务器可以根据该回源路径信息回源到其上一层服务器。
现以上述图3为例进行说明:回源服务器A接收到回源路径信息Path=A->B->C->D,由此可以明确,回源服务器A的上一层服务器为中继服务器B,由此,回源服务器A回源至中继服务器B;中继服务器B接收到回源服务器A发送的回源路径信息:Path=A->B->C->D,使得中继服务器B根据该回源路径信息确定其需要回源的路径,并明确该中继服务器B的上一层服务器为中继服务器C,由此,中继服务器B回源至中继服务器C,依次类推。
进一步的,在根据回源路径信息向回源服务器的上一层服务器进行回源的同时,对回源路径信息进行修正,使得修正后的回源路径信息不包括回源服务器向上一层服务器回源的路径信息。
即,当回源服务器根据回源路径信息向其上一层服务器回源后,其上一层服务器的回源路径与回源服务器的回源路径不同,其不包括回源服务器的回源路径信息中的:回源服务器向上一层服务器回源的路径信息,其包括的仅是当前服务器向其上一层至几层服务器回源的路径信息,因此,应对回源后的路径信息进行修正。
现以上述图3为例进行说明:回源服务器A接收到回源路径信息Path=A->B->C->D,由此,回源服务器A回源至中继服务器B,同时,回源服务器A对回源路径信息进行修正,删除从回源服务器A至中继服务器B的回源路径,仅保留剩余的回源路径信息,即Path=B->C->D;
当中继服务器B根据该修正后的回源路径信息Path=B->C->D回源至中继服务器C时,同时对其保存的该回源路径信息进行修正,删除从中继服务器B至中继服务器C的回源路径,仅保留剩余的回源路径信息,即Path=C->D;
之后,中继服务器C根据该修正后的回源路径信息Path=C->D回源至推流服务器D,此时,可以仅保留请求参数中的请求内容,如:具体某一个主播,或者流名称。
进一步的,在接收到请求参数时,还需要确定请求参数中是否包括相关路径信息,即回源路径信息,若包括:则根据该回源路径信息进行回源;若不包括,则需要向调度中心发送回源路径查询请求,以便调度中心返回回源路径信息,使得根据该回源路径信息进行回源。
本实施例公开的直播回源的方法,通过发送回源路径查询请求,回源路径查询请求至少包括发送回源路径查询请求的回源服务器的标识及请求播放的内容的标识,接收调度中心返回的回源路径信息,回源路径信息包括:从回源服务器回源至推流服务器的各层路径信息,根据回源路径信息向回源服务器的上一层服务器进行回源,并发送请求参数,请求参数至少包括回源路径信息,使得上一层服务器根据回源路径信息进行回源。本方案通过调度中心返回的回源路径信息中包括从回源服务器至推流服务器的各层回源路径信息,使得除第一层回源服务器外各上层回源服务器在回源时,无需与调度中心通信,直接根据请求参数确定其对应的上层服务器即可,避免了现有技术中每一层服务器都需要与调度中心通信,缩短了通信时间,并进一步缩短了播放延迟。
本实施例公开了一种直播回源的方法,其流程图如图4所示,包括:
步骤S41、接收回源服务器发送的回源路径查询请求,回源路径查询请求至少包括:发送回源路径查询请求的回源服务器的标识以及请求播放的内容的标识;
回源服务器可以为:播放服务器,也可以为:中继服务器。
无论回源服务器为播放服务器还是中继服务器,当需要查询直播路径时,都需要向调度中心发送回源路径查询请求,以便查询从当前回源服务器到推流服务器的回源路径。
调度中心预先存储有所有播放服务器、中继服务器及推流服务器的相关信息及网络拓扑结构图,以便于当任何一个播放服务器或中继服务器要查询回源路径时,可以直接根据预先存储的服务器的相关信息确定回源路径。
回源路径查询请求中至少包括:发送该回源路径查询请求的回源服务器的标识以及请求播放的内容的标识。
其中,回源路径查询请求中包括发送该回源路径查询请求的回源服务器的标识,以便于确定是具体哪一个服务器需要回源,将该服务器作为回源的起点。具体的,回源服务器的标识可以具体为:该回源服务器的IP地址,也可以为其他不同于其他服务器的特殊标识。
回源路径查询请求中包括请求播放的内容的标识,以便于确定回源的终点,即将具有请求播放的内容的标识的推流服务器作为目标推流服务器,即终点。具体的,请求播放的内容的标识可以具体为:流名称,如:请求播放的某个视频流或音频流等。
当确定了回源的起点及终点时,即可以确定从起点到终点一共有几条路径,再进一步从这多条路径中确定是否有某一个服务器非不可用状态,或者,从一个服务器到其上一层服务器的路径为不可用状态,此时,将包含该服务器或该段不可用路径的整条路径确定为不可用路径,排除掉所有不可用路径后,剩下的能够从起点至终点的路径即为可用路径,可以作为回源路径。
例如:确定回源的起点为回源服务器A,回源的终点为推流服务器D,从起点回源服务器A至终点推流服务器D的路径可以为:Path=A->B->C->D,也可以为:Path=A->C->D,还可以为:Path=A->B->D。
即回源服务器A可以回源至中继服务器B,也可以回源至中继服务器C,当回源服务器A回源至中继服务器C的路径为不可用时,回源服务器A回源至中继服务器B的路径可用,此时,只能选择回源服务器A回源至中继服务器B的路径;中继服务器B可以回源至中继服务器C,也可以直接回源至推流服务器D,当中继服务器B回源至推流服务器D的路径为不可用时,中继服务器B回源至中继服务器C的路径可用,中继服务器C回源至推流服务器D的路径可用,此时,可以确定Path=A->C->D及Path=A->B->D均为不可用状态,Path=A->B->C->D为可用状态,则确定起点回源服务器A至终点推流服务器D的路径为:Path=A->B->C->D。
进一步的,调度中心在接收到回源服务器发送的回源路径查询请求时,需要首先验证回源路径查询请求的有效性,只有当该回源路径查询请求有效时,才根据该回源路径查询请求确定回源路径信息,否则,不对该请求进行响应。
具体的,当主播开始直播时,会把内容标识及推流服务器的地址等相关信息注册到调度中心的数据库中,当主播直播结束后,会把这些信息从数据库中注销掉,这就出现了在主播开始直播时,根据内容标识即可查找到推流服务器,从而回源观看直播。而验证有效性就是判断数据库中是否还有上述注册的相关信息,即是否还有主播正在推流的记录。
如果主播推流出现异常导致终端,或者主播临时下线,但播放端没有及时得到通知,还在请求路径,那么,播放端请求的就是无效的路径流。
步骤S42、根据回源路径查询请求确定回源路径信息,回源路径信息包括:从回源服务器至推流服务器的各层路径信息;
回源路径信息包括:从回源服务器回源至推流服务器的各层路径信息,具体的,可以为:
假设回源服务器为A,推流服务器为D,确定回源服务器A的上一层服务器,即中继服务器B,确定中继服务器B的上一层服务器,即中继服务器C,中继服务器C的上一层服务器即为推流服务器D,那么,调度中心返回的回源路径信息可以为:Path=A->B->C->D,其具体架构结构示意图如图3所示。
也就是,本实施例中,调度中心返回至发送请求的回源服务器的是从起点至终点的一整条完整的路径信息,即回源服务器至推流服务器的一整条完整的路径信息,而并非仅是回源服务器到其上一层服务器的路径信息。
步骤S43、将回源路径信息发送至回源服务器。
回源服务器接收到回源路径信息,根据该回源路径信息可以明确当前回源服务器到其上一层服务器的路径信息,从而使回源服务器可以根据该回源路径信息回源到其上一层服务器。
现以上述图3为例进行说明:回源服务器A接收到回源路径信息Path=A->B->C->D,由此可以明确,回源服务器A的上一层服务器为中继服务器B,由此,回源服务器A回源至中继服务器B。
在根据回源路径信息向回源服务器的上一层服务器进行回源的同时,对回源路径信息进行修正,使得修正后的回源路径信息不包括回源服务器向上一层服务器回源的路径信息。
即,当回源服务器根据回源路径信息向其上一层服务器回源后,其上一层服务器的回源路径与回源服务器的回源路径不同,其不包括回源服务器的回源路径信息中的:回源服务器向上一层服务器回源的路径信息,其包括的仅是当前服务器向其上一层至几层服务器回源的路径信息,因此,应对回源后的路径信息进行修正。
现以上述图3为例进行说明:回源服务器A接收到回源路径信息Path=A->B->C->D,由此,回源服务器A回源至中继服务器B,同时,回源服务器A对回源路径信息进行修正,删除从回源服务器A至中继服务器B的回源路径,仅保留剩余的回源路径信息,即Path=B->C->D;
当中继服务器B根据该修正后的回源路径信息Path=B->C->D回源至中继服务器C时,同时对其保存的该回源路径信息进行修正,删除从中继服务器B至中继服务器C的回源路径,仅保留剩余的回源路径信息,即Path=C->D;
之后,中继服务器C根据该修正后的回源路径信息Path=C->D回源至推流服务器D,此时,可以仅保留请求参数中的请求内容,如:具体某一个主播,或者流名称。
进一步的,在接收到请求参数时,还需要确定请求参数中是否包括相关路径信息,即回源路径信息,若包括:则根据该回源路径信息进行回源;若不包括,则需要向调度中心发送回源路径查询请求,以便调度中心返回回源路径信息,使得根据该回源路径信息进行回源。
本实施例公开的直播回源的方法,通过发送回源路径查询请求,回源路径查询请求至少包括发送回源路径查询请求的回源服务器的标识及请求播放的内容的标识,接收调度中心返回的回源路径信息,回源路径信息包括:从回源服务器回源至推流服务器的各层路径信息,根据回源路径信息向回源服务器的上一层服务器进行回源,并发送请求参数,请求参数至少包括回源路径信息,使得上一层服务器根据回源路径信息进行回源。本方案通过调度中心返回的回源路径信息中包括从回源服务器至推流服务器的各层回源路径信息,使得除第一层回源服务器外各上层回源服务器在回源时,无需与调度中心通信,直接根据请求参数确定其对应的上层服务器即可,避免了现有技术中每一层服务器都需要与调度中心通信,缩短了通信时间,并进一步缩短了播放延迟。
本实施例公开了一种直播回源的系统,其结构示意图如图5所示,包括:
回源服务器51、推流服务器52及调度中心53。
回源服务器51用于发送回源路径查询请求,回源路径查询请求至少包括:发送回源路径查询请求的回源服务器51的标识以及请求播放的内容的标识;
调度中心53用于接收回源服务器51发送的回源路径查询请求,根据回源路径查询请求确定回源路径信息,回源路径信息包括:从回源服务器51至推流服务器52的各层路径信息,将回源路径信息发送至回源服务器51;
回源服务器51根据回源路径信息向回源服务器51的上一层服务器进行回源,并发送请求参数,请求参数至少包括:回源路径信息,使得上一层服务器根据回源路径信息进行回源。
回源服务器可以为:播放服务器,也可以为:中继服务器。
无论回源服务器为播放服务器还是中继服务器,当需要查询直播路径时,都需要向调度中心发送回源路径查询请求,以便查询从当前回源服务器到推流服务器的回源路径。
调度中心预先存储有所有播放服务器、中继服务器及推流服务器的相关信息及网络拓扑结构图,以便于当任何一个播放服务器或中继服务器要查询回源路径时,可以直接根据预先存储的服务器的相关信息确定回源路径。
回源路径查询请求中至少包括:发送该回源路径查询请求的回源服务器的标识以及请求播放的内容的标识。
其中,回源路径查询请求中包括发送该回源路径查询请求的回源服务器的标识,以便于确定是具体哪一个服务器需要回源,将该服务器作为回源的起点。具体的,回源服务器的标识可以具体为:该回源服务器的IP地址,也可以为其他不同于其他服务器的特殊标识。
回源路径查询请求中包括请求播放的内容的标识,以便于确定回源的终点,即将具有请求播放的内容的标识的推流服务器作为目标推流服务器,即终点。具体的,请求播放的内容的标识可以具体为:流名称,如:请求播放的某个视频流或音频流等。
当确定了回源的起点及终点时,即可以确定从起点到终点一共有几条路径,再进一步从这多条路径中确定是否有某一个服务器非不可用状态,或者,从一个服务器到其上一层服务器的路径为不可用状态,此时,将包含该服务器或该段不可用路径的整条路径确定为不可用路径,排除掉所有不可用路径后,剩下的能够从起点至终点的路径即为可用路径,可以作为回源路径。
进一步的,调度中心在接收到回源服务器发送的回源路径查询请求时,需要首先验证回源路径查询请求的有效性,只有当该回源路径查询请求有效时,才根据该回源路径查询请求确定回源路径信息,否则,不对该请求进行响应。
具体的,当主播开始直播时,会把内容标识及推流服务器的地址等相关信息注册到调度中心的数据库中,当主播直播结束后,会把这些信息从数据库中注销掉,这就出现了在主播开始直播时,根据内容标识即可查找到推流服务器,从而回源观看直播。而验证有效性就是判断数据库中是否还有上述注册的相关信息,即是否还有主播正在推流的记录。
如果主播推流出现异常导致终端,或者主播临时下线,但播放端没有及时得到通知,还在请求路径,那么,播放端请求的就是无效的路径流。
回源路径信息包括:从回源服务器回源至推流服务器的各层路径信息,具体的,可以为:
假设回源服务器为A,推流服务器为D,确定回源服务器A的上一层服务器,即中继服务器B,确定中继服务器B的上一层服务器,即中继服务器C,中继服务器C的上一层服务器即为推流服务器D,那么,调度中心返回的回源路径信息可以为:Path=A->B->C->D,其具体架构结构示意图如图3所示。
也就是,本实施例中,调度中心返回至发送请求的回源服务器的是从起点至终点的一整条完整的路径信息,即回源服务器至推流服务器的一整条完整的路径信息,而并非仅是回源服务器到其上一层服务器的路径信息。
回源服务器接收到回源路径信息,根据该回源路径信息可以明确当前回源服务器到其上一层服务器的路径信息,从而使回源服务器可以根据该回源路径信息回源到其上一层服务器。
现以上述图3为例进行说明:回源服务器A接收到回源路径信息Path=A->B->C->D,由此可以明确,回源服务器A的上一层服务器为中继服务器B,由此,回源服务器A回源至中继服务器B;中继服务器B接收到回源服务器A发送的回源路径信息:Path=A->B->C->D,使得中继服务器B根据该回源路径信息确定其需要回源的路径,并明确该中继服务器B的上一层服务器为中继服务器C,由此,中继服务器B回源至中继服务器C,依次类推。
在根据回源路径信息向回源服务器的上一层服务器进行回源的同时,对回源路径信息进行修正,使得修正后的回源路径信息不包括回源服务器向上一层服务器回源的路径信息。
即,当回源服务器根据回源路径信息向其上一层服务器回源后,其上一层服务器的回源路径与回源服务器的回源路径不同,其不包括回源服务器的回源路径信息中的:回源服务器向上一层服务器回源的路径信息,其包括的仅是当前服务器向其上一层至几层服务器回源的路径信息,因此,应对回源后的路径信息进行修正。
现以上述图3为例进行说明:回源服务器A接收到回源路径信息Path=A->B->C->D,由此,回源服务器A回源至中继服务器B,同时,回源服务器A对回源路径信息进行修正,删除从回源服务器A至中继服务器B的回源路径,仅保留剩余的回源路径信息,即Path=B->C->D;
当中继服务器B根据该修正后的回源路径信息Path=B->C->D回源至中继服务器C时,同时对其保存的该回源路径信息进行修正,删除从中继服务器B至中继服务器C的回源路径,仅保留剩余的回源路径信息,即Path=C->D;
之后,中继服务器C根据该修正后的回源路径信息Path=C->D回源至推流服务器D,此时,可以仅保留请求参数中的请求内容,如:具体某一个主播,或者流名称。
进一步的,在接收到请求参数时,还需要确定请求参数中是否包括相关路径信息,即回源路径信息,若包括:则根据该回源路径信息进行回源;若不包括,则需要向调度中心发送回源路径查询请求,以便调度中心返回回源路径信息,使得根据该回源路径信息进行回源。
本实施例公开的直播回源的系统,通过发送回源路径查询请求,回源路径查询请求至少包括发送回源路径查询请求的回源服务器的标识及请求播放的内容的标识,接收调度中心返回的回源路径信息,回源路径信息包括:从回源服务器回源至推流服务器的各层路径信息,根据回源路径信息向回源服务器的上一层服务器进行回源,并发送请求参数,请求参数至少包括回源路径信息,使得上一层服务器根据回源路径信息进行回源。本方案通过调度中心返回的回源路径信息中包括从回源服务器至推流服务器的各层回源路径信息,使得除第一层回源服务器外各上层回源服务器在回源时,无需与调度中心通信,直接根据请求参数确定其对应的上层服务器即可,避免了现有技术中每一层服务器都需要与调度中心通信,缩短了通信时间,并进一步缩短了播放延迟。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (8)

1.一种直播回源的方法,其特征在于,包括:
发送回源路径查询请求,所述回源路径查询请求至少包括:发送所述回源路径查询请求的回源服务器的标识以及请求播放的内容的标识;
接收调度中心返回的回源路径信息,所述回源路径信息包括:从所述回源服务器回源至推流服务器的各层路径信息;
根据所述回源路径信息向所述回源服务器的上一层服务器进行回源,并发送请求参数,所述请求参数至少包括:回源路径信息,使得所述回源服务器的上一层服务器根据所述回源路径信息进行回源;
当所述上一层服务器接收到所述请求参数时,确定所述请求参数中是否包括回源路径信息;
若包括,根据所述回源路径信息进行回源;
否则,向所述调度中心发送回源路径查询请求。
2.根据权利要求1所述的方法,其特征在于,还包括:
在根据所述回源路径信息向所述回源服务器的上一层服务器进行回源时,对所述回源路径信息进行修正,使得修正后的回源路径信息不包括所述回源服务器向上一层服务器回源的路径信息。
3.一种直播回源的方法,其特征在于,包括:
接收回源服务器发送的回源路径查询请求,所述回源路径查询请求至少包括:发送所述回源路径查询请求的回源服务器的标识以及请求播放的内容的标识;
根据所述回源路径查询请求确定回源路径信息,所述回源路径信息包括:从所述回源服务器至推流服务器的各层路径信息;
将所述回源路径信息发送至所述回源服务器,若所述回源服务器根据所述回源路径信息向所述回源服务器的上一层服务器进行回源,发送请求参数至所述上一层服务器时,所述上一层服务器确定所述请求参数中未包括回源路径信息,则所述回源服务器向调度中心发送回源路径查询请求。
4.根据权利要求3所述的方法,其特征在于,所述根据所述回源路径查询请求确定回源路径信息,包括:
根据所述回源服务器的标识确定回源的起点为所述回源服务器;
根据所述请求播放的内容的标识确定所述回源的推流服务器;
确定从所述回源服务器至所述推流服务器的可用路径,将所述可用路径上各层服务器的相关信息确定为回源路径信息。
5.根据权利要求3所述的方法,其特征在于,还包括:
当接收到所述回源服务器发送的回源路径查询请求时,验证所述回源路径查询请求的有效性;
当所述回源路径查询请求有效时,根据所述回源路径查询请求确定回源路径信息。
6.根据权利要求3所述的方法,其特征在于,还包括:
接收并存储主播终端的内容标识及所述主播终端对应的推流服务器地址信息,以便确定所述回源路径查询请求中的请求播放的内容的标识,以及,确定所述回源路径信息中的推流服务器的地址信息。
7.一种直播回源的系统,其特征在于,包括:回源服务器、推流服务器及调度中心,其中:
所述回源服务器用于发送回源路径查询请求,所述回源路径查询请求至少包括:发送所述回源路径查询请求的回源服务器的标识以及请求播放的内容的标识;
所述调度中心用于接收所述回源服务器发送的回源路径查询请求,根据所述回源路径查询请求确定回源路径信息,所述回源路径信息包括:从所述回源服务器至所述推流服务器的各层路径信息,将所述回源路径信息发送至所述回源服务器;
所述回源服务器根据所述回源路径信息向所述回源服务器的上一层服务器进行回源,并发送请求参数,所述请求参数至少包括:回源路径信息,使得所述上一层服务器根据所述回源路径信息进行回源,若所述回源服务器根据所述回源路径信息向所述回源服务器的上一层服务器进行回源,发送请求参数时,确定所述请求参数中未包括回源路径信息,则所述回源服务器向所述调度中心发送回源路径查询请求。
8.根据权利要求7所述的系统,其特征在于,所述回源服务器包括:播放服务器及中继服务器。
CN201810600829.3A 2018-06-12 2018-06-12 一种直播回源的方法及系统 Active CN108810558B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810600829.3A CN108810558B (zh) 2018-06-12 2018-06-12 一种直播回源的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810600829.3A CN108810558B (zh) 2018-06-12 2018-06-12 一种直播回源的方法及系统

Publications (2)

Publication Number Publication Date
CN108810558A CN108810558A (zh) 2018-11-13
CN108810558B true CN108810558B (zh) 2021-03-02

Family

ID=64085252

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810600829.3A Active CN108810558B (zh) 2018-06-12 2018-06-12 一种直播回源的方法及系统

Country Status (1)

Country Link
CN (1) CN108810558B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112804555B (zh) * 2021-04-08 2021-07-09 北京新唐思创教育科技有限公司 线路调度方法、系统、电子设备及计算机存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105656876A (zh) * 2015-11-26 2016-06-08 乐视云计算有限公司 一种直播视频的播放方法、装置及系统
CN105681387A (zh) * 2015-11-26 2016-06-15 乐视云计算有限公司 一种直播视频的上传方法、装置及系统
CN105847399A (zh) * 2016-04-25 2016-08-10 乐视控股(北京)有限公司 服务器的调度方法和装置
CN105898352A (zh) * 2015-11-13 2016-08-24 乐视云计算有限公司 基于m3u8的流媒体文件直播方法及系统
CN106656800A (zh) * 2017-02-21 2017-05-10 网宿科技股份有限公司 一种路径选取方法及系统、网络加速节点及网络加速系统
CN106888270A (zh) * 2017-03-30 2017-06-23 网宿科技股份有限公司 回源选路调度的方法和系统
CN107645485A (zh) * 2016-07-22 2018-01-30 中兴通讯股份有限公司 一种网络直播的分发方法、系统和装置
CN107707519A (zh) * 2017-07-10 2018-02-16 贵州白山云科技有限公司 一种流媒体传输方法、装置和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8995266B2 (en) * 2010-07-07 2015-03-31 Cisco Technology, Inc. Performing path-oriented systems management

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105898352A (zh) * 2015-11-13 2016-08-24 乐视云计算有限公司 基于m3u8的流媒体文件直播方法及系统
CN105656876A (zh) * 2015-11-26 2016-06-08 乐视云计算有限公司 一种直播视频的播放方法、装置及系统
CN105681387A (zh) * 2015-11-26 2016-06-15 乐视云计算有限公司 一种直播视频的上传方法、装置及系统
CN105847399A (zh) * 2016-04-25 2016-08-10 乐视控股(北京)有限公司 服务器的调度方法和装置
CN107645485A (zh) * 2016-07-22 2018-01-30 中兴通讯股份有限公司 一种网络直播的分发方法、系统和装置
CN106656800A (zh) * 2017-02-21 2017-05-10 网宿科技股份有限公司 一种路径选取方法及系统、网络加速节点及网络加速系统
CN106888270A (zh) * 2017-03-30 2017-06-23 网宿科技股份有限公司 回源选路调度的方法和系统
CN107707519A (zh) * 2017-07-10 2018-02-16 贵州白山云科技有限公司 一种流媒体传输方法、装置和系统

Also Published As

Publication number Publication date
CN108810558A (zh) 2018-11-13

Similar Documents

Publication Publication Date Title
CN108681965B (zh) 离线节点的区块链网络交易处理方法和装置
KR101108459B1 (ko) 수신기의 특성에 기초하여 컨텐츠를 전송하는 방법 및장치
WO2016061898A1 (zh) 直播间的频道访问方法和系统
CN101584190B (zh) 用于将推模式和拉模式相结合的系统和方法
CN101616166B (zh) 在互联网中用于高速下载多媒体内容的方法与装置
CN111291000B (zh) 基于区块链的文件获取方法、设备及存储介质
CN109600671B (zh) 一种网络机顶盒快速升级的系统及其方法
CN102118323A (zh) 内容分发网络服务器及内容下载方法
CN112016030B (zh) 消息推送的方法、装置、服务器和计算机存储介质
CN107454152A (zh) 应用信息的推送方法
CN102868770A (zh) 一种分配接口的方法、设备及系统
CN111355971A (zh) 直播流传输方法、装置、cdn服务器及计算机可读介质
CN108810558B (zh) 一种直播回源的方法及系统
CN111353177A (zh) 一种基于区块链的隐私大文件存储系统
CN112380229A (zh) 业务数据同步方法及装置、非易失性存储介质、处理器
CN110825400A (zh) 一种应用程序客户端的证书更新方法和系统
CN109660496A (zh) 校验信息的获取、资源校验和发布方法、装置及电子设备
CN113810453B (zh) 基于共识区块链的时间戳标记方法和装置
CN112600847A (zh) 一种业务处理方法、系统及电子设备和存储介质
CN101448136B (zh) 实现视频点播功能的方法和系统
CN110708383A (zh) 区块链节点的网络连接方法及相关设备
JP2008234486A (ja) 情報更新システム、情報記憶サーバ、情報更新方法、及び、プログラム
CN114553433B (zh) 一种第三方平台访问方法、装置、电子设备和介质
CN111193942A (zh) 一种流媒体回播方法及装置
CN110049360A (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