CN108574666A - 一种数据流调度方法、装置和系统 - Google Patents

一种数据流调度方法、装置和系统 Download PDF

Info

Publication number
CN108574666A
CN108574666A CN201710138373.9A CN201710138373A CN108574666A CN 108574666 A CN108574666 A CN 108574666A CN 201710138373 A CN201710138373 A CN 201710138373A CN 108574666 A CN108574666 A CN 108574666A
Authority
CN
China
Prior art keywords
server
flow data
source
control centre
data
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.)
Granted
Application number
CN201710138373.9A
Other languages
English (en)
Other versions
CN108574666B (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.)
Guizhou White Cloud Technology Co Ltd
Guizhou Baishancloud Technology Co Ltd
Original Assignee
Guizhou White Cloud 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 Guizhou White Cloud Technology Co Ltd filed Critical Guizhou White Cloud Technology Co Ltd
Priority to CN201911407070.8A priority Critical patent/CN111050188B/zh
Priority to CN201710138373.9A priority patent/CN108574666B/zh
Publication of CN108574666A publication Critical patent/CN108574666A/zh
Application granted granted Critical
Publication of CN108574666B publication Critical patent/CN108574666B/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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2483Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • 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

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

一种数据流调度方法、装置和系统
技术领域
本发明涉及内容分发网络(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 (15)

1.一种数据流调度方法,该方法适用于内容分发网络CDN,其特征在于,该方法包括:
在CDN各个分层中的任一服务器接收到访问流数据的请求时,根据调度中心服务器的指示确定发布该流数据的源服务器;
自所述源服务器获取所述流数据。
2.根据权利要求1所述的数据流调度方法,其特征在于,在CDN各个分层中的任一服务器接收到访问流数据的请求时,根据调度中心服务器的指示确定发布该流数据的源服务器包括:
依据所述请求向所述调度中心服务器查询发布所述流数据的源服务器,或,
从本地存储的自所述调度中心服务器获取的流记录中查找发布所述流数据的源服务器,所述流记录包含所述流数据与发布该流数据的源服务器之间的对应关系。
3.根据权利要求2所述的数据流调度方法,其特征在于,所述依据所述请求向所述调度中心服务器查询发布所述流数据的源服务器包括:
边缘服务器接收到访问流数据的请求,选择中转服务器,向所述中转服务器转发该请求,所述中转服务器依据所述请求向所述调度中心服务器查询发布所述流数据的源服务器;或,
边缘服务器依据所述请求向所述调度中心服务器查询发布所述流数据的源服务器。
4.根据权利要求2所述的数据流调度方法,其特征在于,该方法还包括:
在CDN各个分层中的至少一个服务器接收所述调度中心服务器同步的所述流记录。
5.一种数据流调度方法,该方法适用于CDN,其特征在于,该方法包括:
源服务器接收流数据推送;
所述源服务器通知调度中心服务器所述流数据已推送至该源服务器,以便所述调度中心服务器记录所述流数据与所述源服务器的对应关系。
6.一种数据流调度方法,该方法适用于CDN,其特征在于,该方法包括:
调度中心服务器接收源服务器发送的通知,在所述通知中携带有所述源服务器发布的流数据的信息;
所述调度中心服务器记录并维护所述源服务器与该源服务器发布的流数据之间的对应关系;
所述调度中心服务器向CDN各个分层中的至少一个服务器提供所述流数据与所述源服务器的对应关系。
7.根据权利要求6所述的数据流调度方法,其特征在于,所述调度中心服务器向CDN各个分层中的至少一个服务器提供所述流数据与所述源服务器的对应关系具体为:
所述调度中心服务器根据预置的同步时间向CDN各个分层中的至少一个服务器同步所述流记录。
8.根据权利要求6所述的数据流调度方法,其特征在于,所述调度中心服务器向CDN各个分层中的至少一个服务器提供所述流记录包括:
所述调度中心服务器接收所述CDN各个分层中的任一服务器发送的查询发布流数据的源服务器请求;
所述调度中心服务器查找所述流记录,向所述服务器发送包含指示所述源服务器的通知,或,
向所述服务器发送所述流记录。
9.一种数据流调度装置,适用于CDN,其特征在于,该装置包括:
调度客户端模块,用于在接收到访问流数据的请求时,根据调度中心服务器的指示确定发布该流数据的源服务器;
数据拉取模块,用于自所述源服务器获取流数据。
10.根据权利要求9所述的数据流调度装置,其特征在于,所述调度客户端模块至少包括以下之一:
查询单元,用于依据所述请求向所述调度中心服务器查询发布相应流数据的源服务器;
查找单元,用于从本地存储的自所述调度中心服务器获取的流记录中查找发布相应流数据的源服务器,所述流记录包含流数据与发布相应流数据的源服务器之间的对应关系。
11.根据权利要求10所述的数据流调度装置,其特征在于,所述调度客户端模块还包括:
中转服务器选择单元,用于在接收访问流数据的请求后,选择中转服务器,向所述中转服务器转发该请求。
12.一种数据流调度装置,适用于CDN,其特征在于,该装置包括:
推送接收模块,用于接收流数据推送;
通知模块,用于通知调度中心服务器所述流数据已推送至该源服务器,以便所述调度中心服务器记录所述流数据与所述源服务器的对应关系。
13.一种数据流调度装置,适用于CDN,其特征在于,该装置包括:
数据收集模块,用于接收源服务器发送的通知,在所述通知中携带有所述源服务器发布的流数据的信息;
调度管理模块,用于记录并维护所述源服务器与该源服务器发布的流数据之间的对应关系;
同步模块,用于向CDN各个分层中的至少一个服务器提供所述流数据与所述源服务器的对应关系。
14.根据权利要求13所述的数据流调度装置,其特征在于,所述同步模块包括:
定时同步单元,用于根据预置的同步时间向CDN各个分层中的至少一个服务器同步所述流记录;
查询单元,用于在所述数据收集模块接收到所述CDN各个分层中的任一服务器发送的查询发布流数据的源服务器请求时,查找所述流记录,向所述服务器发送包含指示所述源服务器的通知,或,
向所述服务器下发所述流记录。
15.一种数据流调度系统,适用于CDN,其特征在于,包括调度中心服务器、源服务器和所述CDN各个分层中的至少一个服务器;
所述调度中心服务器,用于接收所述源服务器发送的携带有所述源服务器发布的流数据的信息的通知,记录并维护所述源服务器与该源服务器发布的流数据之间的对应关系,向CDN各个分层中的至少一个服务器提供所述流数据与所述源服务器的对应关系;
所述源服务器,用于接收流数据推送,通知所述调度中心服务器所述流数据已推送至该源服务器,以便所述调度中心服务器记录所述流数据与所述源服务器的对应关系;
所述CDN各个分层中的至少一个服务器,用于在接收到访问流数据的请求时,根据所述调度中心服务器的指示确定发布该流数据的源服务器,自所述源服务器获取所述流数据。
CN201710138373.9A 2017-03-09 2017-03-09 一种数据流调度方法、装置和系统 Active CN108574666B (zh)

Priority Applications (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 一种数据流调度方法、装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710138373.9A CN108574666B (zh) 2017-03-09 2017-03-09 一种数据流调度方法、装置和系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201911407070.8A Division CN111050188B (zh) 2017-03-09 2017-03-09 一种数据流调度方法、系统、设备及介质

Publications (2)

Publication Number Publication Date
CN108574666A true CN108574666A (zh) 2018-09-25
CN108574666B CN108574666B (zh) 2020-08-07

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 Before (1)

Application Number Title Priority Date Filing Date
CN201911407070.8A Active CN111050188B (zh) 2017-03-09 2017-03-09 一种数据流调度方法、系统、设备及介质

Country Status (1)

Country Link
CN (2) CN111050188B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109547825A (zh) * 2018-12-28 2019-03-29 上海众源网络有限公司 一种多媒体数据推送方法及装置
CN111464446A (zh) * 2020-04-08 2020-07-28 广州虎牙科技有限公司 多线路服务器访问的通信方法、装置和服务器
CN113923470A (zh) * 2021-11-24 2022-01-11 上海哔哩哔哩科技有限公司 直播流处理方法及装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111818121B (zh) * 2020-05-26 2023-05-02 杭州爱教乐学科技有限公司 直播通信方法、装置、计算机设备及存储介质
EP4203436A4 (en) * 2020-08-31 2023-11-01 Huawei Technologies Co., Ltd. COMMUNICATION METHOD AND EDGE COMPUTING SERVER WITH MULTIPLE ACCESS

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120304215A1 (en) * 2006-08-01 2012-11-29 At&T Intellectual Property I, Lp. Interactive Content System and Method
CN103561049A (zh) * 2013-09-05 2014-02-05 乐视网信息技术(北京)股份有限公司 一种处理终端调度请求的方法、系统及装置
US20140289322A1 (en) * 2005-08-01 2014-09-25 Limelight Networks, Inc. Origin request with peer fulfillment
CN104967873A (zh) * 2015-06-29 2015-10-07 上海帝联信息科技股份有限公司 流媒体直播调度方法、系统和调度服务器
US20160065662A1 (en) * 2014-08-27 2016-03-03 Tensera Networks Ltd. Selecting a content delivery network
CN105450780A (zh) * 2015-12-31 2016-03-30 深圳市网心科技有限公司 一种cdn系统及其回源方法
CN105872640A (zh) * 2015-12-07 2016-08-17 乐视云计算有限公司 一种直播视频的获取方法、装置及系统
CN106357539A (zh) * 2015-07-17 2017-01-25 阿里巴巴集团控股有限公司 一种数据获取方法和设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
CN105959354A (zh) * 2016-04-25 2016-09-21 乐视控股(北京)有限公司 一种流媒体服务的负载调度方法及系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140289322A1 (en) * 2005-08-01 2014-09-25 Limelight Networks, Inc. Origin request with peer fulfillment
US20120304215A1 (en) * 2006-08-01 2012-11-29 At&T Intellectual Property I, Lp. Interactive Content System and Method
CN103561049A (zh) * 2013-09-05 2014-02-05 乐视网信息技术(北京)股份有限公司 一种处理终端调度请求的方法、系统及装置
US20160065662A1 (en) * 2014-08-27 2016-03-03 Tensera Networks Ltd. Selecting a content delivery network
CN104967873A (zh) * 2015-06-29 2015-10-07 上海帝联信息科技股份有限公司 流媒体直播调度方法、系统和调度服务器
CN106357539A (zh) * 2015-07-17 2017-01-25 阿里巴巴集团控股有限公司 一种数据获取方法和设备
CN105872640A (zh) * 2015-12-07 2016-08-17 乐视云计算有限公司 一种直播视频的获取方法、装置及系统
CN105450780A (zh) * 2015-12-31 2016-03-30 深圳市网心科技有限公司 一种cdn系统及其回源方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109547825A (zh) * 2018-12-28 2019-03-29 上海众源网络有限公司 一种多媒体数据推送方法及装置
CN111464446A (zh) * 2020-04-08 2020-07-28 广州虎牙科技有限公司 多线路服务器访问的通信方法、装置和服务器
CN111464446B (zh) * 2020-04-08 2022-04-12 广州虎牙科技有限公司 多线路服务器访问的通信方法、装置和服务器
CN113923470A (zh) * 2021-11-24 2022-01-11 上海哔哩哔哩科技有限公司 直播流处理方法及装置
CN113923470B (zh) * 2021-11-24 2023-07-25 上海哔哩哔哩科技有限公司 直播流处理方法及装置

Also Published As

Publication number Publication date
CN108574666B (zh) 2020-08-07
CN111050188B (zh) 2021-11-30
CN111050188A (zh) 2020-04-21

Similar Documents

Publication Publication Date Title
CN108574666A (zh) 一种数据流调度方法、装置和系统
US8983983B2 (en) State operating system
JP6937918B2 (ja) ビデオライブブロードキャスト方法及び装置
US10146848B2 (en) Systems and methods for autonomous, scalable, and distributed database management
US7076553B2 (en) Method and apparatus for real-time parallel delivery of segments of a large payload file
CN107707926A (zh) 一种直播流传输方法、装置和系统
CN103237046B (zh) 支持混合云存储应用的分布式文件系统及实现方法
US9432452B2 (en) Systems and methods for dynamic networked peer-to-peer content distribution
CN107547653A (zh) 一种分布式文件存储系统
CN101472166B (zh) 一种内容缓存、查询方法及点对点媒体传输系统
EP3249546A1 (en) Content delivery network
CN101631143B (zh) 负载均衡环境中多服务器系统及其文件传输方法
US7970856B2 (en) System and method for managing and distributing assets over a network
US9218353B2 (en) Method and system for name space propagation and file caching to remote nodes in a storage system
CN101355476A (zh) 一种基于服务器群集的数据文件存储、分发和应用的系统和方法
CN101557423A (zh) 一种实现流媒体内容服务的系统和方法
US20140025723A1 (en) Cloud storage system and data storage and sharing method based on the system
CN107888666A (zh) 一种跨地域数据存储系统以及数据同步方法和装置
CN105868333A (zh) 文件处理方法及装置
CN106550047B (zh) 基于内容分发机制的文档快速访问系统及方法
US20110010387A1 (en) Associated content system
EP3044682B1 (en) Transaction query engine
US9253143B2 (en) Reverse subscriptions
CN104601687B (zh) 一种分发跨地域高效存储内容的方法及系统
CN105516343A (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 550003 Building No. 12 in the Southern Park of Gui'an High-end Equipment Industrial Park, Guizhou Province

Applicant after: Guizhou Baishan cloud Polytron Technologies Inc

Address before: 100015 5 floor, block E, 201 IT tower, electronic city, 10 Jiuxianqiao Road, Chaoyang District, Beijing.

Applicant before: Guizhou white cloud Technology Co., Ltd.

GR01 Patent grant
GR01 Patent grant