CN111050188B - 一种数据流调度方法、***、设备及介质 - Google Patents
一种数据流调度方法、***、设备及介质 Download PDFInfo
- Publication number
- CN111050188B CN111050188B CN201911407070.8A CN201911407070A CN111050188B CN 111050188 B CN111050188 B CN 111050188B CN 201911407070 A CN201911407070 A CN 201911407070A CN 111050188 B CN111050188 B CN 111050188B
- Authority
- CN
- China
- Prior art keywords
- server
- data
- stream
- source server
- source
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2483—Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
- H04N21/2393—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/242—Synchronization processes, e.g. processing of PCR [Program Clock References]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management 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/262—Content 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/26208—Content 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
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种数据流调度方法、装置和***。涉及内容分发网络;解决了遍历源服务器造成的资源浪费、成本增加、效率低下的问题。该方法包括:调度中心服务器接收源服务器发送的通知,在所述通知中携带有所述源服务器发布的流数据的信息;所述调度中心服务器记录并维护所述源服务器与该源服务器发布的流数据之间的对应关系;所述调度中心服务器向CDN各个分层中的至少一个服务器提供所述流数据与所述源服务器的对应关系。本发明提供的技术方案实现了兼具效率与可靠性的推送拉取数据流源服务器一致性保障。
Description
本申请是2017年03月09日提交中国国家知识产权局专利局、申请号为201710138373.9、发明名称为“一种数据流调度方法、装置和***”的中国专利申请的分案申请。
技术领域
本发明涉及内容分发网络(CDN),尤其涉及一种CDN中的数据流调度方法、***、设备及介质。
背景技术
直播作为当下最火的应用之一,是针对有现场直播需求的用户,利用互联网(或专网)和先进的多媒体通信技术,在网上构建音频、视频、桌面共享、文档共享、互动环节等的在线交流与互动。以视频直播为例,主播在本地将自己正在实时直播的内容推送给服务器(推流),观众从服务器实时获取主播推送给服务器的直播内容(拉流),最后达到主播与观众进行交互的目的。
为了适应高效内容分发的需求,直播平台通常会使用内容分发网络(CDN)加速,使用户尽可能近的获取所需的内容,从而降低响应时间,提高交互的实时性。
在直播传输CDN加速应用场景下,主播通过边缘节点将流推到直播源服务器上,观众再通过边缘节点获取直播内容,如果该边缘节点没有该直播内容,则该边缘节点需要进行回源,从直播源服务器获得该直播内容并提供给观众。
由于直播源通常由多个集群组成,而一个集群又有多台服务器,因此,如何保证推流和拉流所选取的直播源服务器的一致性成为关键问题。
在直播传输加速的应用场景下,通常采用一致性hash策略,具体地,一个可以存储2^32次方个key的空间,可以想象成一个闭合的环形,将直播源服务器的所有IP,通过一定的hash算法A生成key,处理后映射到环上,流(URL)通过hash算法A生成key1,映射到环上,按顺时针方向找到离key1最近的直播源服务器IP,推流和拉流使用相同的流(URL)可以找到相同直播源服务器。但该策略存在缺点,即在直播源服务器列表变更时,往往造成推流和拉流的hash列表不同步,推流和拉流选取直播源服务器不一致,造成服务器异常。
为了解决这一问题,现有技术通常采用转推直播内容到多台直播源服务器进行备份,当拉流和推流选取的直播源服务器不一致时,继续遍历备份直播源服务器,直到找到流数据。但是,这一方面会降低直播源服务器承载能力,造成资源的浪费,极大增加成本,另一方面,遍历直播源服务器很大概率造成响应时间过长,直播服务得不到保障。
发明内容
本发明旨在解决上面描述的问题,提供了一种数据流调度方法、装置和***。
根据本发明的第一方面,一种数据流调度方法,该方法适用于内容分发网络CDN,包括:
在CDN各个分层中的任一服务器接收到访问流数据的请求时,根据调度中心服务器的指示确定发布该流数据的源服务器;
自所述源服务器获取所述流数据。
优选的,在CDN各个分层中的任一服务器接收到访问流数据的请求时,根据调度中心服务器的指示确定发布该流数据的源服务器包括:
依据所述请求向所述调度中心服务器查询发布所述流数据的源服务器,或,
从本地存储的自所述调度中心服务器获取的流记录中查找发布所述流数据的源服务器,所述流记录包含所述流数据与发布该流数据的源服务器之间的对应关系。
优选的,所述依据所述请求向所述调度中心服务器查询发布所述流数据的源服务器包括:
边缘服务器接收到访问流数据的请求,选择中转服务器,向所述中转服务器转发该请求,所述中转服务器依据所述请求向所述调度中心服务器查询发布所述流数据的源服务器;或,
边缘服务器依据所述请求向所述调度中心服务器查询发布所述流数据的源服务器。
优选的,该方法还包括:
在CDN各个分层中的至少一个服务器接收所述调度中心服务器同步的所述流记录。
根据本发明的另一方面,一种数据流调度方法,该方法适用于CDN,包括:
源服务器接收流数据推送;
所述源服务器通知调度中心服务器所述流数据已推送至该源服务器,以便所述调度中心服务器记录所述流数据与所述源服务器的对应关系。
根据本发明的另一方面,一种数据流调度方法,该方法适用于CDN,包括:
调度中心服务器接收源服务器发送的通知,在所述通知中携带有所述源服务器发布的流数据的信息;
所述调度中心服务器记录并维护所述源服务器与该源服务器发布的流数据之间的对应关系;
所述调度中心服务器向CDN各个分层中的至少一个服务器提供所述流数据与所述源服务器的对应关系。
优选的,所述调度中心服务器向CDN各个分层中的至少一个服务器提供所述流数据与所述源服务器的对应关系具体为:
所述调度中心服务器根据预置的同步时间向CDN各个分层中的至少一个服务器同步所述流记录。
优选的,所述调度中心服务器向CDN各个分层中的至少一个服务器提供所述流记录包括:
所述调度中心服务器接收所述CDN各个分层中的任一服务器发送的查询发布流数据的源服务器请求;
所述调度中心服务器查找所述流记录,向所述服务器发送包含指示所述源服务器的通知,或,
向所述服务器发送所述流记录。
根据本发明的另一方面,一种数据流调度装置,适用于CDN,该装置包括:
调度客户端模块,用于在接收到访问流数据的请求时,根据调度中心服务器的指示确定发布该流数据的源服务器;
数据拉取模块,用于自所述源服务器获取流数据。
优选的,所述调度客户端模块至少包括以下之一:
查询单元,用于依据所述请求向所述调度中心服务器查询发布相应流数据的源服务器;
查找单元,用于从本地存储的自所述调度中心服务器获取的流记录中查找发布相应流数据的源服务器,所述流记录包含流数据与发布相应流数据的源服务器之间的对应关系。
优选的,所述调度客户端模块同时包括查找单元和查询单元,当从查找单元无法查找到相应流数据的源服务器时,再从查询单元查询该流数据的源服务器。
优选的,所述调度客户端模块还包括:
中转服务器选择单元,用于在接收访问流数据的请求后,选择中转服务器,向所述中转服务器转发该请求。
根据本发明的另一方面,一种数据流调度装置,适用于CDN,该装置包括:
推送接收模块,用于接收流数据推送;
通知模块,用于通知调度中心服务器所述流数据已推送至该源服务器,以便所述调度中心服务器记录所述流数据与所述源服务器的对应关系。
根据本发明的另一方面,一种数据流调度装置,适用于CDN,该装置包括:
数据收集模块,用于接收源服务器发送的通知,在所述通知中携带有所述源服务器发布的流数据的信息;
调度管理模块,用于记录并维护所述源服务器与该源服务器发布的流数据之间的对应关系;
同步模块,用于向CDN各个分层中的至少一个服务器提供所述流数据与所述源服务器的对应关系。
优选的,所述同步模块包括:
定时同步单元,用于根据预置的同步时间向CDN各个分层中的至少一个服务器同步所述流记录;
查询单元,用于在所述数据收集模块接收到所述CDN各个分层中的任一服务器发送的查询发布流数据的源服务器请求时,查找所述流记录,向所述服务器发送包含指示所述源服务器的通知,或,
向所述服务器下发所述流记录。
根据本发明的另一方面,一种数据流调度***,适用于CDN,包括调度中心服务器、源服务器和所述CDN各个分层中的至少一个服务器;
所述调度中心服务器,用于接收所述源服务器发送的携带有所述源服务器发布的流数据的信息的通知,记录并维护所述源服务器与该源服务器发布的流数据之间的对应关系,向CDN各个分层中的至少一个服务器提供所述流数据与所述源服务器的对应关系;
所述源服务器,用于接收流数据推送,通知所述调度中心服务器所述流数据已推送至该源服务器,以便所述调度中心服务器记录所述流数据与所述源服务器的对应关系;
所述CDN各个分层中的至少一个服务器,用于在接收到访问流数据的请求时,根据所述调度中心服务器的指示确定发布该流数据的源服务器,自所述源服务器获取所述流数据。
本发明提供了一种数据流调度方法、装置和***,添加了对数据流调度进行专门管理的调度中心服务器,由调度中心服务器与CDN中的源服务器及各个分层的服务器进行数据交互,实现了兼具效率与可靠性的推送拉取数据流源服务器一致性保障方案。源服务器接收流数据推送完成后,通知调度中心服务器所述流数据已推送至该源服务器;调度中心服务器接收源服务器发送的通知,记录所述源服务器与该源服务器发布的流数据之间的对应关系,再向CDN各个分层中的至少一个服务器同步所述流数据与所述源服务器的对应关系;而在CDN各个分层中的任一服务器接收到访问流数据的请求时,根据调度中心服务器的指示确定发布该流数据的源服务器,自所述源服务器获取所述流数据。通过调度中心服务器对源服务器存储流数据的情况进行精确管理,解决了遍历源服务器造成的资源浪费、成本增加、效率低下的问题。
参照附图来阅读对于示例性实施例的以下描述,本发明的其他特性特征和优点将变得清晰。
附图说明
并入到说明书中并且构成说明书的一部分的附图示出了本发明的实施例,并且与描述一起用于解释本发明的原理。在这些附图中,类似的附图标记用于表示类似的要素。下面描述中的附图是本发明的一些实施例,而不是全部实施例。对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,可以根据这些附图获得其他的附图。
图1示例性地示出了本发明的实施例一提供的一种数据流调度***的架构;
图2示例性地示出了本发明的实施例一提供的一种数据流调度装置的结构;
图3示例性地示出了本发明的实施例一提供的又一种数据流调度装置的结构;
图4示例性地示出了本发明的实施例一提供的又一种数据流调度装置的结构;
图5示例性地示出了本发明的实施例二提供的一种数据流调度方法的流程;
图6示例性地示出本发明的实施例三提供的一种数据流调度***的架构。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
当拉流和推流选取的直播源服务器不一致时,使用遍历备份直播源服务器直到找到流数据的方式一方面会降低直播源服务器承载能力,造成资源的浪费,极大增加成本,另一方面,遍历直播源服务器很大概率造成响应时间过长,直播服务得不到保障。
为了解决上述问题,本发明的实施例提供了一种数据流调度方法、装置和***。下面结合附图,对本发明的实施例进行详细说明。
首先结合附图,对本发明的实施例一进行说明。
本发明实施例提供了一种数据流调度***,适用于CDN,该***的架构如图1所示,包括调度中心服务器101、源服务器102和所述CDN各个分层中的至少一个服务器103;
所述调度中心服务器101,用于接收所述源服务器102发送的携带有所述源服务器102发布的流数据的信息的通知,记录所述源服务102器与该源服务器102发布的流数据之间的对应关系,向CDN各个分层中的至少一个服务器103提供所述流数据与所述源服务器102的对应关系;
所述源服务器102,用于接收流数据推送,通知所述调度中心服务器101所述流数据已推送至该源服务器102,以便所述调度中心服务器101记录所述流数据与所述源服务器102的对应关系;
所述CDN各个分层中的至少一个服务器103,用于在接收到访问流数据的请求时,根据所述调度中心服务器101的指示确定发布该流数据的源服务器102,自所述源服务器102获取所述流数据。
所述CDN包含至少一层服务器或服务器集群,优选的,该CDN包含边缘服务器及中转服务器,所述中转服务器具体可为父服务器。
优选的,所述CDN包含父服务器层与边缘服务器层。即,该CDN包含两层服务器。
本发明实施例还提供了一种数据流调度装置,适用于CDN,可集成于CDN各个分层中的任意服务器上,由服务器执行相应功能,该装置的结构如图2所示,包括:
调度客户端模块201,用于在接收到访问流数据的请求时,根据调度中心服务器的指示确定发布该流数据的源服务器;
数据拉取模块202,用于自所述源服务器获取流数据。
优选的,所述调度客户端模块201至少包括如下之一:
查询单元2011,用于依据所述请求向所述调度中心服务器查询发布相应流数据的源服务器;
查找单元2012,用于从本地存储的自所述调度中心服务器获取的流记录中查找发布相应流数据的源服务器,所述流记录包含流与发布相应流数据的源服务器之间的对应关系。
优选的,所述调度客户端模块201还包括:
中转服务器选择单元2013,用于在接收访问流数据的请求后,选择中转服务器,向所述中转服务器转发该请求。此单元的功能也可由服务器上除所述数据流调度装置外的其他模块实现。
上述调度客户端模块201可以客户端形式加载于CDN中各层任一服务器之上,如作为调度客户端;优选的,可在CDN中各层服务器之上全配置该调度客户端。
本发明实施例还提供了一种数据流调度装置,适用于CDN,可集成于源服务器上,由源服务器执行相应功能,该装置的结构如图3所示,包括:
推送接收模块301,用于接收流数据推送;
调度客户端模块302,用于通知调度中心服务器所述流数据已推送至该源服务器,以便所述调度中心服务器记录所述流数据与所述源服务器的对应关系。
本发明实施例还提供了一种数据流调度装置,适用于CDN,可集成于调度中心服务器上,由调度中心服务器执行相应功能,该装置的结构如图4所示,包括:
数据收集模块401,用于接收源服务器发送的通知,在所述通知中携带有所述源服务器发布的流数据的信息;
调度管理模块402,用于记录与维护所述源服务器与该源服务器发布的流数据之间的对应关系;
同步模块403,用于向CDN各个分层中的至少一个服务器提供所述流数据与所述源服务器的对应关系。
优选的,所述调度管理模块402,具体用于维护流记录,在所述流记录中包含源服务器与该源服务器发布的流数据之间的对应关系。
优选的,所述同步模块403包括:
定时同步单元4031,用于根据预置的同步时间向CDN各个分层中的至少一个服务器同步所述流记录;
查询单元4032,用于在所述数据收集模块接收到所述CDN各个分层中的任一服务器发送的查询发布流数据的源服务器请求时,查找所述流记录,向所述服务器发送包含指示所述源服务器的通知,或,向所述服务器下发所述流记录。
具体的,边缘服务器用于:与客户或用户直接相连,在全国各地均有部署,客户或用户的请求时,选择离客户或用户“最近”的边缘服务器,用于“第一公里”或“最后一公里”加速,避免客户或用户由于跨运营商、跨地区访问造成请求失败的情况,保证直播服务质量。
中转服务器(如父服务器)用于:与边缘服务器和源服务器直接相连,在部分重要地区部署,中转服务器较边缘服务器数量少,中转服务器用于流聚合,减少回源连接数,达到缓解源服务器承载压力,保证直播服务稳定;中转服务器部署在拉流场景下,推流场景不部署,因为一路流的观众可能成千上万,观众可能分布在全国各地,如果所有边缘服务器都回源服务器拉流,容易造成源服务器达到服务器瓶颈,影响直播服务。
源服务器用于:与边缘服务器或中转服务器相连,用于存储流数据,仅在部分重要地区部署,该源服务器可以由CDN运营商或客户提供。
调度中心服务器用于:与源服务器和调度客户端交互,用于存储流记录,根据实际使用需要,可部署在bgp机房,也可部署为集群;源服务器将流记录通知调度中心服务器,调度客户端从调度中心服务器同步流记录。
调度客户端用于:与调度中心服务器和边缘服务器、中转服务器交互,用于存储流记录,以及回上游IP调度,部署在边缘服务器和中转服务器上。调度客户端可设置于CDN中除源服务器外任一服务器之上,由服务器实现相应功能。
优选的,调度中心服务器可配置专用域名,调度客户端通过域名解析,解析出调度中心服务器具体地址,实现CDN中各层服务器与调度中心服务器之间的通信。
下面结合附图,对本发明的实施例二进行说明。
本发明的实施例提供了一种数据流调度方法,在本发明的实施例一所提供的数据流调度***架构下,该方法能够保证快速高效的实现对推流和拉流所选取的源服务器的一致性,使用该方法完成数据流调度的流程如图5所示,包括:
步骤501、源服务器接收流数据推送;
本步骤中,源服务器接收边缘服务器等CDN中服务器推的流数据,对接收到的流数据进行存储。
步骤502、源服务器通知调度中心服务器所述流数据已推送至该源服务器;
本步骤中,在流数据推送完毕后,源服务器通知调度中心服务器流数据已推送至该源服务器,即,表明存储该流数据的源服务器,以便所述调度中心服务器记录所述流数据与所述源服务器的对应关系。
步骤503、调度中心服务器接收源服务器发送的通知,记录并维护所述源服务器与该源服务器发布的流数据之间的对应关系;
在所述通知中携带有所述源服务器发布的流数据的信息。
本步骤中,调度中心服务器根据通知,确定流数据与源服器之间的对应关系,并进行记录。优选的,所述调度中心服务器维护(如删除、更新)流记录,在所述流记录中包含源服务器与该源服务器发布的流数据之间的对应关系,以流记录的形式存储对应关系。
步骤504、所述调度中心服务器向CDN各个分层中的至少一个服务器提供所述流数据与所述源服务器的对应关系;
本步骤中,调度中心服务器可以根据预置的同步时间向CDN各个分层中的至少一个服务器同步所述流记录,具体的,可以是周期性的同步,可以在每次流记录发生变化(如加入新的内容、删除已有内容或对已有内容进行修改)时进行同步,也可以应CDN中服务器的请求向相应的服务器进行同步。即,调度中心服务器可以主动向CDN中服务器同步该流记录,也可由CDN中的服务器主动获取流记录。可根据网络情况与实际需求对提供方式进行配置。
相应的,在CDN各个分层中的至少一个服务器接收所述调度中心服务器主动同步或应请求同步的所述流记录。
步骤505、在CDN各个分层中的任一服务器接收到访问流数据的请求时,根据调度中心服务器的指示确定发布该流数据的源服务器;
在CDN存在多层服务器或服务器集群时,对于接收到的请求,外层服务器会向相邻内层的中转服务器转发该请求,逐层推进,直至到达最内层,由最内层服务器负责确认相应的源服务器。如,在CDN具有父服务器层与边缘服务器层两层服务器的情况下,边缘服务器接收到流数据请求后,先选择最优的父服务器(如,离该边缘服务器“最近”的父服务器),将请求转发至选择的父服务器,由父服务器负责确认源服务器。
本步骤与步骤504并无严格时序关系,既CDN中的服务器可在已接收到调度中心服务器同步的流记录之后在本地查找确定发布流数据的源服务器;也可以在接收到流数据请求后向调度中心服务器请求。下面对两种情况分别说明:
情况1、从本地存储的自所述调度中心服务器获取的流记录中查找发布所述流数据的源服务器,所述流记录包含所述流数据与发布该流数据的源服务器之间的对应关系。
情况2、依据所述请求向所述调度中心服务器查询发布所述流数据的源服务器。相应的,调度中心服务器接收所述CDN各个分层中的任一服务器发送的查询发布流数据的源服务器请求,查找所述流记录,向所述服务器发送包含指示所述源服务器的通知,或向所述服务器下发所述流记录由服务器自取查找流记录确认。在CDN具有父服务器层与边缘服务器层的场景下,边缘服务器接收到访问流数据的请求,选择父服务器,向所述父服务器转发该请求,所述父服务器依据所述请求向所述调度中心服务器查询发布所述流数据的源服务器;在CDN仅具有边缘服务器层的情况下,边缘服务器依据所述请求向所述调度中心服务器查询发布所述流数据的源服务器。
步骤506、服务器自所述源服务器获取所述流数据。
下面结合附图,对本发明的实施例三进行说明。
本发明实施例提供了一种数据流调度***,其结构如图6所示,在该***中使用完成数据调度的流程包括:
S1:客户根据域名解析结果,将流(URL)推至边缘服务器A。
S2:边缘服务器A和调度客户端B交互,调度客户端B根据边缘服务器A所在地区和运营商,选择离边缘服务器A“最近”的源服务器C。
S3:边缘服务器A将流(URL)数据传输至源服务器C。
S4:源服务器C通知调度中心服务器D,流(URL)已推至该源服务器C,调度中心服务器D存储或更新流(URL)记录。
S5:所有调度客户端定时从调度中心服务器D同步流记录。
S6:用户请求访问流(URL),根据域名解析结果,请求到达边缘服务器E。
S7:边缘服务器E和调度客户端F交互,调度客户端F根据边缘服务器E所在地区和运营商,选择离边缘服务器E“最近”的父服务器G。
S8:边缘服务器E将请求传至父服务器G。
S9:父服务器G和调度客户端H交互,获取流(URL)的记录,精确找到源服务器C(优选的,可以是边缘服务器找源)。
S10:父服务器G和源服务器C建立连接,获取流(URL)数据。
S11:边缘服务器E从父服务器G获取流(URL)数据(优选的,可以是边缘服务器回源)。
本发明的实施例提供了一种数据流调度方法、装置和***,添加了对数据流调度进行专门管理的调度中心服务器,由调度中心服务器与CDN中的源服务器及各个分层的服务器进行数据交互,实现了兼具效率与可靠性的推送拉取数据流源服务器一致性保障方案。源服务器接收流数据推送完成后,通知调度中心服务器所述流数据已推送至该源服务器;调度中心服务器接收源服务器发送的通知,记录所述源服务器与该源服务器发布的流数据之间的对应关系,再向CDN各个分层中的至少一个服务器同步所述流数据与所述源服务器的对应关系;而在CDN各个分层中的任一服务器接收到访问流数据的请求时,根据调度中心服务器的指示确定发布该流数据的源服务器,自所述源服务器获取所述流数据。通过调度中心服务器对源服务器存储流数据的情况进行精确管理,解决了遍历源服务器造成的资源浪费、成本增加、效率低下的问题。
上面描述的内容可以单独地或者以各种方式组合起来实施,而这些变型方式都在本发明的保护范围之内。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制。尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (9)
1.一种数据流调度的方法,该方法适用于CDN,其特征在于,该方法包括:
源服务器接收CDN中的任一服务器推送的流数据;
所述源服务器通知调度中心服务器所述流数据已推送至该源服务器,在所述通知中携带有所述源服务器所要发布的流数据的信息,以便所述调度中心服务器以流记录的方式记录所述流数据与所述源服务器的对应关系;
所述源服务器发布所述流数据。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:所述源服务器对接收到的所述流数据进行存储。
3.如权利要求1所述的方法,其特征在于,所述CDN中任一服务器包含边缘服务器及中转服务器。
4.如权利要求1~3任一所述的方法,其特征在于,所述源服务器由CDN运营商或者客户提供。
5.一种数据流调度的方法,该方法适用于CDN,其特征在于,该方法包括:
调度中心服务器接收源服务器发送的携带有源服务器发布的流数据的信息的通知,并以流记录存储的方式记录所述流数据与所述源服务器的对应关系,所述调度中心服务器向CDN中的至少一服务器同步所述流记录。
6.一种数据流调度的方法,该方法适用于CDN,其特征在于,该方法包括:
在CDN中的任一服务器接收访问流数据的请求时,根据调度中心服务器记录的流数据与源服务器的对应关系确定发布该流数据的源服务器,自所述源服务器获取所述流数据;其中,所述流数据与所述源服务器的对应关系由所述调度中心服务器根据所述源服务器发送的通知进行确定,所述通知携带有所述源服务器所要发布的流数据的信息;
在CDN中的至少一个服务器接收调度中心服务器同步的流记录。
7.一种数据流调度***,适用于CDN,其特征在于,包括调度中心服务器、源服务器和所述CDN中至少一个服务器;
所述调度中心服务器,用于接收源服务器发送的携带有源服务器发布的流数据的信息的通知,记录所述源服务器与该源服务器发布的流数据之间的对应关系,向CDN中的至少一个服务器同步所述流数据与所述源服务器的对应关系;
所述源服务器,用于接收CDN中的任一服务器流数据推送,通知所述调度中心服务器所述流数据已推送至该源服务器,以便所述调度中心服务器以流记录的方式记录所述流数据与所述源服务器的对应关系;
所述CDN中的至少一个服务器,用于在接收到访问流数据的请求时,根据所述调度中心服务器的指示确定发布该流数据的源服务器,自所述源服务器获取所述流数据;接收调度中心服务器同步的流记录。
8.一种计算机设备,其特征在于,所述计算机设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1至4中任一项所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911407070.8A CN111050188B (zh) | 2017-03-09 | 2017-03-09 | 一种数据流调度方法、***、设备及介质 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911407070.8A CN111050188B (zh) | 2017-03-09 | 2017-03-09 | 一种数据流调度方法、***、设备及介质 |
CN201710138373.9A CN108574666B (zh) | 2017-03-09 | 2017-03-09 | 一种数据流调度方法、装置和*** |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710138373.9A Division CN108574666B (zh) | 2017-03-09 | 2017-03-09 | 一种数据流调度方法、装置和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111050188A CN111050188A (zh) | 2020-04-21 |
CN111050188B true CN111050188B (zh) | 2021-11-30 |
Family
ID=63577927
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911407070.8A Active CN111050188B (zh) | 2017-03-09 | 2017-03-09 | 一种数据流调度方法、***、设备及介质 |
CN201710138373.9A Active CN108574666B (zh) | 2017-03-09 | 2017-03-09 | 一种数据流调度方法、装置和*** |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710138373.9A Active CN108574666B (zh) | 2017-03-09 | 2017-03-09 | 一种数据流调度方法、装置和*** |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN111050188B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109547825A (zh) * | 2018-12-28 | 2019-03-29 | 上海众源网络有限公司 | 一种多媒体数据推送方法及装置 |
CN111464446B (zh) * | 2020-04-08 | 2022-04-12 | 广州虎牙科技有限公司 | 多线路服务器访问的通信方法、装置和服务器 |
CN111818121B (zh) * | 2020-05-26 | 2023-05-02 | 杭州爱教乐学科技有限公司 | 直播通信方法、装置、计算机设备及存储介质 |
CN112740642B (zh) * | 2020-08-31 | 2022-05-17 | 华为技术有限公司 | 通信方法及多接入边缘计算服务器 |
CN113923470B (zh) * | 2021-11-24 | 2023-07-25 | 上海哔哩哔哩科技有限公司 | 直播流处理方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104967873A (zh) * | 2015-06-29 | 2015-10-07 | 上海帝联信息科技股份有限公司 | 流媒体直播调度方法、***和调度服务器 |
CN105959354A (zh) * | 2016-04-25 | 2016-09-21 | 乐视控股(北京)有限公司 | 一种流媒体服务的负载调度方法及*** |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8266663B2 (en) * | 2006-08-01 | 2012-09-11 | At&T Intellectual Property I, L.P. | Interactive content system and method |
WO2009061829A1 (en) * | 2007-11-05 | 2009-05-14 | Limelight Networks, Inc. | End to end data transfer |
US9756142B2 (en) * | 2013-03-14 | 2017-09-05 | The Regents Of The University Of California | System and method for delivering video data from a server in a wireless network by caching the video data |
CN103561049A (zh) * | 2013-09-05 | 2014-02-05 | 乐视网信息技术(北京)股份有限公司 | 一种处理终端调度请求的方法、***及装置 |
US10506027B2 (en) * | 2014-08-27 | 2019-12-10 | Tensera Networks Ltd. | Selecting a content delivery network |
CN106357539B (zh) * | 2015-07-17 | 2019-06-21 | 阿里巴巴集团控股有限公司 | 一种数据获取方法和设备 |
CN105872640A (zh) * | 2015-12-07 | 2016-08-17 | 乐视云计算有限公司 | 一种直播视频的获取方法、装置及*** |
CN105450780B (zh) * | 2015-12-31 | 2019-01-18 | 深圳市网心科技有限公司 | 一种cdn***及其回源方法 |
-
2017
- 2017-03-09 CN CN201911407070.8A patent/CN111050188B/zh active Active
- 2017-03-09 CN CN201710138373.9A patent/CN108574666B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104967873A (zh) * | 2015-06-29 | 2015-10-07 | 上海帝联信息科技股份有限公司 | 流媒体直播调度方法、***和调度服务器 |
CN105959354A (zh) * | 2016-04-25 | 2016-09-21 | 乐视控股(北京)有限公司 | 一种流媒体服务的负载调度方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN108574666B (zh) | 2020-08-07 |
CN108574666A (zh) | 2018-09-25 |
CN111050188A (zh) | 2020-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111050188B (zh) | 一种数据流调度方法、***、设备及介质 | |
EP3595268B1 (en) | Streaming media resource distribution method, system, edge node and central dispatching system | |
WO2018161933A1 (zh) | 一种直播流传输方法、装置和***及其计算机可读存储介质和计算机设备 | |
US8983983B2 (en) | State operating system | |
EP2227888B1 (en) | Predictive caching content distribution network | |
EP2227016B1 (en) | A content buffering, querying method and point-to-point media transmitting system | |
CN100579208C (zh) | 分布式流媒体分发***及流媒体内存缓冲及调度分发方法 | |
US20150215405A1 (en) | Methods of managing and storing distributed files based on information-centric network | |
US20110246608A1 (en) | System, method and device for delivering streaming media | |
US20080209067A1 (en) | System And Method For Highly-Scalable Real-Time And Time-Based Data Delivery Using Server Clusters | |
WO2010127618A1 (zh) | 一种实现流媒体内容服务的***和方法 | |
WO2009143686A1 (zh) | 内容发布方法、服务重定向方法及***、节点设备 | |
BR112014000597B1 (pt) | Método e sistema para download de arquivo multimídia | |
US8812718B2 (en) | System and method of streaming data over a distributed infrastructure | |
WO2009086784A1 (zh) | 文件内容分发方法、装置及*** | |
CN105472002A (zh) | 基于集群节点间即时拷贝的会话同步方法 | |
Shang et al. | A survey of distributed dataset synchronization in Named Data Networking | |
CN104601724A (zh) | 上传和下载文件的方法及*** | |
CN104735044A (zh) | 一种流媒体直播方法及*** | |
US9253143B2 (en) | Reverse subscriptions | |
CN101873354A (zh) | 一种交互式电视中的数据同步方法及*** | |
US10715880B2 (en) | Method for creation and distribution of segmented video over distributed multicast-aware sparse networks with low latency | |
US20120221708A1 (en) | Distributed content popularity tracking for use in memory eviction | |
CN101741869A (zh) | 提供内容的方法和*** | |
CN115955581A (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 |