CN104320487B - 内容分发网络的http调度系统和方法 - Google Patents

内容分发网络的http调度系统和方法 Download PDF

Info

Publication number
CN104320487B
CN104320487B CN201410631207.9A CN201410631207A CN104320487B CN 104320487 B CN104320487 B CN 104320487B CN 201410631207 A CN201410631207 A CN 201410631207A CN 104320487 B CN104320487 B CN 104320487B
Authority
CN
China
Prior art keywords
cluster
server
edge
client
request
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
CN201410631207.9A
Other languages
English (en)
Other versions
CN104320487A (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.)
Wangsu Science and Technology Co Ltd
Original Assignee
Wangsu 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 Wangsu Science and Technology Co Ltd filed Critical Wangsu Science and Technology Co Ltd
Priority to CN201410631207.9A priority Critical patent/CN104320487B/zh
Priority to US15/525,042 priority patent/US10404790B2/en
Priority to PCT/CN2014/095485 priority patent/WO2016074323A1/zh
Priority to EP14905704.4A priority patent/EP3211857B1/en
Publication of CN104320487A publication Critical patent/CN104320487A/zh
Application granted granted Critical
Publication of CN104320487B publication Critical patent/CN104320487B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • 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/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1014Server selection for load balancing based on the content of a request
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1021Server selection for load balancing based on client or server locations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1023Server selection for load balancing based on a hash applied to IP addresses or costs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1029Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
    • 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/56Provisioning of proxy services
    • H04L67/566Grouping or aggregating service requests, e.g. for unified processing
    • 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/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Abstract

本发明涉及一种内容分发网络的HTTP调度系统,包括中心决策服务器、一个或多个中心调度服务器以及一个或多个边缘调度服务器。中心决策服务器配置为根据全局的服务器集群的带宽和负载信息,生成中心决策文件。中心调度服务器连接该中心决策服务器,中心调度服务器配置为执行该中心决策文件,在收到客户端内容请求时,根据客户端所在的地理位置及请求内容,选择一首选服务器集群和一备用服务器集群,并向该客户端返回一个带有该首选及该备用服务器集群的跳转地址。边缘调度服务器设置在对应的边缘服务器集群内,各边缘调度服务器配置为在收到客户端内容请求时,获取对应的边缘服务器集群的带宽和负载情况,据此判断请求是否应该引导到备用服务器集群。

Description

内容分发网络的HTTP调度系统和方法
技术领域
本发明涉及内容分发网络,尤其是涉及内容分发网络的HTTP调度系统和方法。
背景技术
随着互联网设备的迅猛发展,流量日益增长,CDN的规模愈加庞大,负载均衡成为控制成本的重要手段。
CDN(Content Delivery Network),中文名称是内容分发网络。CDN的任务主要是使内容从源站尽可能快地传递到用户端。CDN的基本思想就是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更好。通过在网络各处放置边缘节点服务器所构成的内容分发网络,能够实时根据网络流量和各边缘节点的负载情况以及到用户的距离和响应时间等综合信息将用户的访问请求重定向至离用户最近且最好的边缘节点上。该系统在现有网络架构上增加一个全局调度层,将源站内容分发到最接近用户的网络边缘,使用户可以就近取得所需内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度,解决因源站出口网络带宽小、用户访问量大、网点分布不均、复杂的运营商网络、用户接入网络带宽小所造成的用户访问网站响应速度慢的问题。
当前CDN的负载均衡技术主要分为DNS(Domain Name System,域名系统)调度和HTTP(Hypertext transfer protocol,超文本传送协议)调度。DNS调度主要用于图片及动态加速类型内容的负载均衡。HTTP调度基于http协议的30X响应码,主要用于流媒体应用。考虑到流媒体业务占CDN业务的很大一部分,这部分成了CDN业务控制服务器及机房负载均衡的重要部分。
HTTP调度分为中心模式和边缘模式。中心模式是通过DNS将客户请求引导至若干组调度机器上。这些调度机器并不提供内容,而是首先由决策机分析CDN所有机房和服务器集群的带宽数据,并据此适时调配服务器集群的流量,由调度机执行调配,使集群达到负载均衡。其次,调度机器会根据请求内容进行散列(Hash)计算,选择特定的服务器,以减少集群间和集群内服务器之间的内容冗余。边缘模式是通过DNS将客户请求分配至边缘服务器集群,由服务器集群中的调度机器对所在集群和机房的状态做出判断,选择由本地进行服务,或将请求跳转至备份服务器集群,达到负载均衡的目的。
发明内容
本发明所要解决的技术问题是提供一种新型的HTTP调度系统和方法。
本发明为解决上述技术问题而采用的技术方案是提出一种内容分发网络的HTTP调度系统,包括中心决策服务器、一个或多个中心调度服务器以及一个或多个边缘调度服务器。中心决策服务器配置为根据全局的服务器集群的带宽和负载信息,生成中心决策文件。中心调度服务器连接该中心决策服务器,该中心调度服务器配置为执行该中心决策文件,在收到客户端内容请求时,根据客户端所在的地理位置及请求内容,选择一首选服务器集群,并决定是否同时选择一个备用服务器集群,然后向该客户端返回一个带有该首选服务器集群的跳转地址,以及当选择了备用服务器集群时,同时向该客户端返回一个带有该备用服务器集群的跳转地址。边缘调度服务器设置在对应的边缘服务器集群内,各边缘调度服务器配置为在收到客户端内容请求时,如果有备用服务器集群,则获取对应的边缘服务器集群的带宽和负载情况,据此判断请求是否应该引导到备用服务器集群。
在本发明的一实施例中,该中心决策服务器设定多个覆盖域中每一覆盖域内的多个集群的权值以对各集群的流量进行控制,其中该多个覆盖域是根据客户端访问内容的站点和物理地址所在地预先划分而成。
在本发明的一实施例中,该中心调度服务器配置为根据客户端请求进行散列计算和权值随机计算,在服务集群列表中选择一个首选服务器集群,且如果决定选择备选服务器集群,进一步在服务器集群列表中选择有一定剩余服务能力的备选服务器集群。
在本发明的一实施例中,该一个或多个边缘调度服务器配置为在收到客户端内容请求时,判断对应的边缘服务器集群是否过载,如果是,则判断请求中是否带有备选服务器集群的信息,如果带有备选服务器集群的信息,则返回跳转地址,将客户端跳转至备选服务器集群,如果没有带备选服务器集群的信息,则以边缘调度服务器作为客户端与对应的边缘服务器集群内的缓存服务器的代理,提供服务;如果对应的边缘服务器集群不是过载,则以边缘调度服务器作为客户端与该缓存服务器的代理。
在本发明的一实施例中,该一个或多个边缘调度服务器配置为每隔一定时间获取一次节点的带宽数据,然后据此计算得到下一个时间段内,本地允许的连接数,且在下一个时间内,由连接数决定的前几个请求由对应的边缘服务器集群服务,而之后的请求则再次跳转到备选服务器集群。
本发明还提出一种内容分发网络的HTTP调度方法,包括以下步骤:在中心决策服务器为根据全局的服务器集群的带宽和负载信息,生成中心决策文件;在连接该中心决策服务器的一个或多个中心调度服务器执行该中心决策文件,在收到客户端内容请求时,根据客户端所在的地理位置及请求内容,选择一首选服务器集群,并决定是否同时选择一备用服务器集群,并向该客户端返回一个带有该首选服务器集群的跳转地址,以及当选择了备用服务器集群时,同时向该客户端返回一个带有该备用服务器集群的跳转地址;在设置于对应的边缘服务器集群内且连接该一个或多个中心调度服务器的一个或多个边缘调度服务器,在收到客户端内容请求时,如果有备用服务器集群,则获取对应的边缘服务器集群的带宽和负载情况,判断请求是否应该引导到备用服务器集群。
在本发明的一实施例中,在该中心决策服务器生成决策文件的步骤包括:设定多个覆盖域中每一覆盖域内的多个集群的权值以对各集群的流量进行控制,其中该多个覆盖域是根据客户端访问内容的站点和地址所在地预先划分而成。
在本发明的一实施例中,在该中心调度服务器中执行以下步骤:根据判断客户所属的服务群体,得到服务集群列表;根据客户端请求进行散列计算和权值随机计算,在服务集群列表中选择一个首选服务器集群;如果决定选择备选服务器集群,进一步在服务器集群列表中选择一个有一定剩余服务能力的备选服务器集群。
在本发明的一实施例中,该一个或多个边缘调度服务器在收到客户端内容请求时执行以下步骤:判断对应的边缘服务器集群是否过载;如果边缘服务器集群是过载,则判断请求中是否带有备选服务器集群的信息:如果带有备选服务器集群的信息,则返回跳转地址,将客户端跳转至备选服务器集群;如果没有带备选服务器集群的信息,则以边缘调度服务器作为客户端与对应的边缘服务器集群内的缓存服务器的代理,提供服务;如果边缘服务器集群不是过载,则以边缘调度服务器作为客户端与该缓存服务器的代理。
在本发明的一实施例中,在该一个或多个边缘调度服务器中每隔一定时间获取一次节点的带宽数据,然后据此计算得到下一个时间段内,本地允许的连接数,且在下一个时间内,由连接数决定的前几个请求由对应的边缘服务器集群服务,而之后的请求则再次跳转到备选服务器集群。
本发明由于采用以上技术方案,可以在中心调度服务器获取客户请求,并返回首选服务器集群和备选服务器集群,且在边缘服务器集群根据本地服务器集群的带宽和负载,对中心调度的分配进行校正。通过中心调度的宏观控制和边缘调度的调整,整个系统可以达到成本/质量较优的同时,边缘集群不会超负荷。
附图说明
为让本发明的上述目的、特征和优点能更明显易懂,以下结合附图对本发明的具体实施方式作详细说明,其中:
图1示出根据本发明一实施例的网络实施环境。
图2示出本发明一实施例的调度系统框图。
图3示出本发明一实施例的中心调度模块工作流程。
图4示出本发明一实施例的边缘调度模块工作流程。
图5示出本发明一实施例的客户端模块工作流程。
具体实施方式
已知HTTP调度分为中心模式和边缘模式。这两种模式有各自的特点,因而在实践中都得到一定程度的应用。但是这两种模式也有各自的缺陷。中心模式的缺陷在于,该模式在进行流量调度前需要收集一段时间的CDN平台数据,外加决策的时间,可能会有延迟,导致误差。而且由于HTTP调度自身的局限,进行流量控制时,只能保证按比例分配请求,不能保证流量的比例与请求是对等的。即该模式有误差的同时,也有调控不准确的问题。边缘模式的缺陷在于,该模式集群间的调度通过DNS进行,无法在集群间进行内容控制,数据冗余量大,浪费存储空间和带宽资源。且该模式的控制器部署在边缘集群中,在控制集群过载时,不能保证将流量引导到最合适的集群中。
本发明的实施例将描述一种新型的HTTP调度方法,其提供优于中心模式和边缘模式的性能。
图1示出根据本发明一实施例的网络实施环境。参考图1所示,一个内容分发网络100通常包括一个中心决策服务器101,多个中心调度服务器102,多个边缘服务器集群110,这些装置通过互联网连接在一起。各边缘服务器集群110中配置有边缘调度服务器111和缓存服务器112。中心调度服务器102可以直接与中心决策服务器101相连,也可以通过额外的网络103与中心决策服务器101相连。
许多客户端120可以连接到内容分发网络100,从而获得所请求的内容。
中心决策服务器101配置为根据全局的服务器集群的带宽、负载信息、网络状况和带宽成本信息,生成中心决策文件。
各中心调度服务器102配置为执行该中心决策文件,在收到客户端内容请求时,根据客户端所在的地理位置及请求内容,选择首选服务器集群,并向客户端返回一个带有首选服务器集群及备用服务器集群的跳转URL(Uniform Resource Locator,统一资源定位器)。如果需要各中心调度服务器102可以同时选择备用服务器集群,并向客户端返回一个带有备用服务器集群的跳转URL。URL是互联网上标准资源的地址。首选服务器集群是优先供客户端120请求内容的服务器集群。备用服务器集群是当首选服务器集群过载或其他无法响应请求的情形时,供客户端120请求内容的服务器集群。
边缘调度服务器111配置为在收到客户端内容请求时,获取本地服务器集群(即边缘调度服务器111所在的服务器集群)的带宽和负载情况,据此判断请求是否应该引导到备用服务器集群。缓存服务器112负责提供客户端120需要的内容。
图2示出本发明一实施例的调度系统框图。参考图2所示,典型的调度系统包括中心决策服务器101、中心调度服务器102以及边缘调度服务器111,为客户端120提供服务。客户端120进行内容的请求和跟踪,并将文件保存,以及展示内容。中心决策服务器101中可存储并执行中心决策模块201。中心决策模块201执行时,将中心决策服务器101配置为能够根据全局的服务器集群的带宽和负载信息,生成中心决策文件,并传输给中心调度服务器102。中心调度服务器102中可存储并执行中心调度模块202。中心调度模块202执行时,将中心调度服务器102配置为执行该中心决策文件,在收到客户端内容请求时,根据客户端所在的地理位置及请求内容,选择首选服务器集群和可选的备用服务器集群,并向客户端120返回一个带有首选服务器集群及可选的备用服务器集群的跳转URL。边缘调度服务器111中可存储并执行边缘调度模块203。边缘调度模块203执行时,将边缘调度服务器111配置为获取本地服务器集群的带宽和负载情况,判断请求是否应该引导到备用服务器集群,如果这时有备用服务器集群的话。
边缘调度服务器111中还可储存并执行本地负载均衡模块204。本地负载均衡模块204执行时,将边缘调度服务器111配置为用作缓存服务器112的代理。
各个服务器101、102、111可包括处理器、内存(Memory)和存储器(Storage)。各个模块,如中心决策模块201、中心调度模块202、边缘调度模块203和本地负载均衡模块204可以以软件形式储存在存储器中,并可载入到内存中,由处理器执行。
在本系统中,中心调度服务器获取客户请求后,返回了首选服务器集群和备选服务器集群。在作为首选服务器集群的边缘服务器集群中,会根据本地服务器集群的带宽和负载,对中心调度的分配进行校正,例如让客户请求跳转到备选服务器集群。因而本系统通过中心调度的宏观控制和边缘调度的调整,整个系统可以达到成本/质量较优的同时,边缘集群不会超负荷。
图3示出本发明一实施例的中心决策和调度服务器工作流程。参考图3所示,在步骤301,中心决策服务器101负责收集平台所有边缘服务器集群的带宽和负载,周期性生成包含覆盖域的权值等信息的中心决策文件。在步骤302,中心决策服务器101发送文件至所有的中心调度服务器102。覆盖域是根据客户访问内容的站点和地址(如IP地址)所在地将流量分割而成的地理区域和用户范围的组合。地理区域例如是覆盖一个省或者一个市。用户范围例如是一个预定的用户群体。覆盖域中可包含多个边缘服务器集群,即多个组。通过集群的权值对覆盖域的各集群的流量进行控制。
具体的流程包括:
1)通过以下方法预测节点的带宽值:
获取节点最近时间点对应的带宽数据,将其中最大和最小的数据去除,然后使用最小二乘法,对数据进行拟合以下公式:
bw=a*t+b
计算得到a和b,然后将一分钟后的时刻t'代入,计算得到预测带宽值BW_pop。
2)遍历所有的覆盖域使以下条件得到满足:
定义:1、farm为一个边缘服务器集群,为中心决策服务器101权值调度的基本单位;2、多个属于共同区域的farm组成一个pop,pop是与运营商协定的多个服务器集群集合的网络接入点;
集群带宽的改变量:
ΔBW_farm=ΔW_farm*BW_cover/ΣW_farm
网络接入点的带宽为属下的集群带宽之和:
BW_pop=ΣBW_farm
集群新的带宽值应不大于集群的服务能力,控制集群流量在额定上限:
Capacity_farm>=BW_farm+ΔBW_farm
节点新的带宽值应不大于集群的带宽上限:
Capacity_pop>=BW_pop+ΣΔBW_farm
在以上的限制条件下,中心决策服务器尝试找到一个解,使Σ|ΔBW_pop|最小,也就是在覆盖域多个集群间流量变动最小。这样既保证了节点带宽的稳定,同时减少了因带宽在节点间的迁移而导致的缓存服务器112命中率下降问题。
说明:1、BW_farm表示farm带宽,BW_cover表示覆盖域带宽,W_farm表示farm权值,Capacity_farm表示farm额定可服务带宽,Capacity_pop表示pop额定可服务带宽,Δ表示权值调控后的变化量;
3)最后得到每个集群在每个覆盖域中的权值比例(即W_farm)。
在步骤303,客户端120会发送原始请求URL。
在步骤304,中心调度服务器102会得到客户端的地址及请求内容。
在步骤305,中心调度服务器102通过判断客户所属的服务群体,得到服务集群列表。
在步骤306,中心调度服务器102根据URL进行散列(HASH)计算和权值随机计算,在服务集群列表中选择一个首选服务器集群。
在步骤307,备选服务集群选择判断,如需要选择备选服务集群,则在服务器集群列表中选择一个备选服务器集群,并保证备选服务器集群有一定剩余服务能力。
在步骤308,中心调度服务器102根据原始请求URL、首选服务器集群和备选服务器集群,生成新的跳转URL,并返回客户端120。
其中,首选服务器集群IP和备选服务器集群IP的确定方法示例如下:
1)根据请求的IP和域名确定覆盖域;
2)统计URL的访问情况,并确定该URL是否为热点URL
3)如果URL为热点URL,则根据覆盖域内集群间的权值比例,随机得到首选IP;如果URL为非热点URL,则根据URL进行散列计算,得到首选IP;
4)如果URL为热点URL,将首选IP所在的集群去除后,根据权值比例,从可选的备选服务器集群中重新随机选择得到一个IP;
如果URL为非热点URL,则不选择备选集群。
其中,考虑到热点URL被访问的次数相对较多,缓存服务器112缓存这些URL后一般还会有多次的访问。所以可以通过调度热点URL来保证集群间的负载均衡。另外非热点URL的访问次数较少,通过对URL进行散列可以保证分配的稳定性,减少缓存服务器112之间的内容重复性。
图4示出本发明一实施例的边缘调度服务器工作流程。参考图4所示,在步骤401,客户端120发送请求,该请求由中心调度服务器102跳转得到。在步骤402,边缘调度服务器111得到请求。在步骤403,边缘调度服务器111判断本地服务器集群是否过载,如果是,在步骤404边缘调度服务器111进一步判断请求中是否带有备选IP的信息;如果带有备选服务器集群的信息,则在步骤405返回跳转URL,将客户端跳转至备选服务器集群;如果没有带备选服务器集群的信息,则在步骤406边缘调度服务器111作为客户端120与本地的缓存服务器112的代理,提供服务。如果本地服务器集群不是过载,则边缘调度服务器111作为客户端120与本地的缓存服务器112的代理,提供服务。
其中,边缘调度再次跳转判断方法如下:
1)边缘调度服务器111每隔一定时间(设为interval,如10s),获取一次节点的带宽数据BW,然后代入以下公式:
Request_Allow=max(0,Capacity-BW)/BW_Per_Request
(其中,Capacity是节点的带宽上限)
得到下一个interval时间段内,本地允许的连接数Request_Allow。
2)获取本地服务器集群的负载Load_current,和负载阈值Load_max。如果Load_current>=Load_max,则下一个interval内,所有请求都跳转到备选IP。
3)在下一个interval内,前Request_Allow个请求由本地服务,而之后的请求则再次跳转到备选IP。
图5示出本发明一实施例的客户端工作流程。参考图5所示,在步骤501,客户端120向中心调度服务器102发送请求。在步骤502,客户端120获取中心调度服务器102返回的302跳转响应。在步骤503,客户端120向边缘调度服务器111发送跳转后的请求。在步骤504,如果得到的响应为302跳转,则在步骤505继续执行步骤。在步骤506,得到边缘调度服务器111直接返回内容,保存至本地或显示在界面上。
虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发明的保护范围当以权利要求书所界定的为准。

Claims (10)

1.一种内容分发网络的HTTP调度系统,包括:
中心决策服务器,配置为根据全局的服务器集群的带宽和负载信息,生成中心决策文件;
一个或多个中心调度服务器,连接该中心决策服务器,该中心调度服务器配置为执行该中心决策文件,在收到客户端内容请求时,根据客户端所在的地理位置及请求内容,选择一首选服务器集群,并决定是否同时选择一备用服务器集群,然后向该客户端返回一个带有该首选服务器集群的跳转地址,以及当选择了备用服务器集群时,同时向该客户端返回一个带有该备用服务器集群的跳转地址;
一个或多个边缘调度服务器,设置在对应的边缘服务器集群内,各边缘调度服务器配置为在收到客户端内容请求时,如果有备用服务器集群,则获取对应的边缘服务器集群的带宽和负载情况,据此判断请求是否应该引导到备用服务器集群。
2.如权利要求1所述的内容分发网络的HTTP调度系统,其特征在于,该中心决策服务器设定多个覆盖域中每一覆盖域内的多个集群的权值以对各集群的流量进行控制,其中该多个覆盖域是根据客户端访问内容的站点和物理地址所在地预先划分而成。
3.如权利要求1所述的内容分发网络的HTTP调度系统,其特征在于,该中心调度服务器配置为根据客户端请求进行散列计算和权值随机计算,在服务集群列表中选择一首选服务器集群,且如果决定选择备选服务器集群,进一步在服务器集群列表中选择有一定剩余服务能力的备选服务器集群。
4.如权利要求1所述的内容分发网络的HTTP调度系统,其特征在于,该一个或多个边缘调度服务器配置为在收到客户端内容请求时,判断对应的边缘服务器集群是否过载,如果是,则判断请求中是否带有备选服务器集群的信息,如果带有备选服务器集群的信息,则返回跳转地址,将客户端跳转至备选服务器集群,如果没有带备选服务器集群的信息,则以边缘调度服务器作为客户端与对应的边缘服务器集群内的缓存服务器的代理,提供服务;如果对应的边缘服务器集群不是过载,则以边缘调度服务器作为客户端与该缓存服务器的代理。
5.如权利要求1所述的内容分发网络的HTTP调度系统,其特征在于,该一个或多个边缘调度服务器配置为每隔一定时间获取一次节点的带宽数据,然后据此计算得到下一个时间段内,本地允许的连接数,且在下一个时间内,由连接数决定的前几个请求由对应的边缘服务器集群服务,而之后的请求则再次跳转到备选服务器集群。
6.一种内容分发网络的HTTP调度方法,包括以下步骤:
中心决策服务器根据全局的服务器集群的带宽、负载信息、网络状况和成本信息,生成中心决策文件;
连接该中心决策服务器的一个或多个中心调度服务器执行该中心决策文件,在收到客户端内容请求时,根据客户端所在的地理位置及请求内容,选择一首选服务器集群,并决定是否同时选择一备用服务器集群,然后向该客户端返回一个带有该首选服务器集群的跳转地址,以及当选择了备用服务器集群时,同时向该客户端返回一个带有该备用服务器集群的跳转地址;
设置于对应的边缘服务器集群内且连接该一个或多个中心调度服务器的一个或多个边缘调度服务器,在收到客户端内容请求时,如果有备用服务器集群,则获取对应的边缘服务器集群的带宽和负载情况,判断请求是否应该引导到备用服务器集群。
7.如权利要求6所述的内容分发网络的HTTP调度方法,其特征在于,在该中心决策服务器生成决策文件的步骤包括:设定多个覆盖域中每一覆盖域内的多个集群的权值以对各集群的流量进行控制,其中该多个覆盖域是根据客户端访问内容的站点和物理地址所在地预先划分而成。
8.如权利要求6所述的内容分发网络的HTTP调度方法,其特征在于,在该中心调度服务器中执行以下步骤:
根据判断客户所属的服务群体,得到服务集群列表;
根据客户端请求进行散列计算和权值随机计算,在服务集群列表中选择一个首选服务器集群;
如果决定选择备选服务器集群,进一步在服务器集群列表中选择一个有一定剩余服务能力的备选服务器集群。
9.如权利要求6所述的内容分发网络的HTTP调度方法,其特征在于,该一个或多个边缘调度服务器在收到客户端内容请求时执行以下步骤:
判断对应的边缘服务器集群是否过载;
如果边缘服务器集群是过载,则判断请求中是否带有备选服务器集群的信息:如果带有备选服务器集群的信息,则返回跳转地址,将客户端跳转至备选服务器集群;如果没有带备选服务器集群的信息,则以边缘调度服务器作为客户端与对应的边缘服务器集群内的缓存服务器的代理,提供服务;
如果边缘服务器集群不是过载,则以边缘调度服务器作为客户端与该缓存服务器的代理。
10.如权利要求6所述的内容分发网络的HTTP调度方法,其特征在于,在该一个或多个边缘调度服务器中每隔一定时间获取一次节点的带宽数据,然后据此计算得到下一个时间段内,本地允许的连接数,且在下一个时间内,由连接数决定的前几个请求由对应的边缘服务器集群服务,而之后的请求则再次跳转到备选服务器集群。
CN201410631207.9A 2014-11-11 2014-11-11 内容分发网络的http调度系统和方法 Active CN104320487B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201410631207.9A CN104320487B (zh) 2014-11-11 2014-11-11 内容分发网络的http调度系统和方法
US15/525,042 US10404790B2 (en) 2014-11-11 2014-12-30 HTTP scheduling system and method of content delivery network
PCT/CN2014/095485 WO2016074323A1 (zh) 2014-11-11 2014-12-30 内容分发网络的http调度系统和方法
EP14905704.4A EP3211857B1 (en) 2014-11-11 2014-12-30 Http scheduling system and method of content delivery network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410631207.9A CN104320487B (zh) 2014-11-11 2014-11-11 内容分发网络的http调度系统和方法

Publications (2)

Publication Number Publication Date
CN104320487A CN104320487A (zh) 2015-01-28
CN104320487B true CN104320487B (zh) 2018-03-20

Family

ID=52375655

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410631207.9A Active CN104320487B (zh) 2014-11-11 2014-11-11 内容分发网络的http调度系统和方法

Country Status (4)

Country Link
US (1) US10404790B2 (zh)
EP (1) EP3211857B1 (zh)
CN (1) CN104320487B (zh)
WO (1) WO2016074323A1 (zh)

Families Citing this family (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104270371A (zh) * 2014-10-13 2015-01-07 无锡云捷科技有限公司 一种基于模糊逻辑的cdn缓存服务器选择方法
CN104580520A (zh) * 2015-01-29 2015-04-29 广州华多网络科技有限公司 一种运行互动业务的方法及装置
CN104580526A (zh) * 2015-02-03 2015-04-29 浪潮电子信息产业股份有限公司 一种高性能Web服务网络中的就近访问负载均衡调度方法
CN106034083B (zh) * 2015-03-12 2019-10-08 阿里巴巴集团控股有限公司 Cdn网络系统及其限速控制方法、cdn节点和服务器
CN104735088B (zh) * 2015-04-16 2018-09-11 北京金山安全软件有限公司 一种cdn网络中服务器节点调整方法及装置
CN105323317B (zh) * 2015-10-28 2019-04-26 南京师范大学 基于解析器的ndn中支持有状态任播的方法和系统
CN105516343B (zh) * 2015-12-31 2018-07-17 中国电子科技集团公司第五十四研究所 一种网络动态自组织的文件共享实现方法
CN107277097A (zh) * 2016-04-08 2017-10-20 北京优朋普乐科技有限公司 内容分发网络及其负载预测均衡方法
US11184318B2 (en) 2016-09-19 2021-11-23 Wangsu Science & Technology Co., Ltd. 302 redirecting method, URL generating method and system, and domain-name resolving method and system
CN111756815B (zh) * 2016-09-19 2023-04-07 网宿科技股份有限公司 302跳转方法、跳转域名生成方法、域名解析方法及系统
CN106357792B (zh) * 2016-10-10 2019-09-06 网宿科技股份有限公司 节点选路方法及系统
CN106790482B (zh) * 2016-12-13 2020-05-22 网宿科技股份有限公司 资源调度方法及资源调度系统
CN110036607B (zh) * 2016-12-16 2022-03-08 瑞典爱立信有限公司 用于在内容分发网络中动态汇集资源的方法和请求路由器
CN107231436B (zh) * 2017-07-14 2021-02-02 网宿科技股份有限公司 一种进行业务调度的方法和装置
CN107465767B (zh) * 2017-09-29 2020-06-23 网宿科技股份有限公司 一种数据同步的方法和系统
CN108353095B (zh) * 2017-09-30 2021-10-22 达闼机器人有限公司 域名解析方法、客户端、边缘节点及域名解析系统
CN107801086B (zh) * 2017-10-20 2019-01-04 广东省南方数字电视无线传播有限公司 多缓存服务器的调度方法和系统
CN107835437B (zh) * 2017-10-20 2018-10-09 广东省南方数字电视无线传播有限公司 基于多缓存服务器的调度方法和装置
CN107819754B (zh) * 2017-10-30 2020-01-14 网宿科技股份有限公司 一种防劫持方法、监控服务器、终端及系统
US10230683B1 (en) * 2018-02-09 2019-03-12 Capital One Services, Llc Routing for large server deployments
CN110300132A (zh) * 2018-03-22 2019-10-01 贵州白山云科技股份有限公司 服务器数据缓存方法、装置和系统
CN110401553B (zh) * 2018-04-25 2022-06-03 阿里巴巴集团控股有限公司 服务器配置的方法和装置
CN108337327A (zh) * 2018-04-26 2018-07-27 拉扎斯网络科技(上海)有限公司 一种资源获取方法和代理服务器
CN108650317B (zh) * 2018-05-10 2021-02-05 深圳市汇星数字技术有限公司 内容分发网络的负载调节方法、装置及设备
CN108737544B (zh) * 2018-05-22 2021-11-26 中国联合网络通信集团有限公司 Cdn节点调度方法和装置
CN108810145A (zh) * 2018-06-13 2018-11-13 郑州云海信息技术有限公司 一种基于p2p的多节点内容分发网络系统及方法
CN110830533B (zh) * 2018-08-10 2022-07-22 贵州白山云科技股份有限公司 一种用于云分发网络的http调度方法和系统
CN110839049B (zh) * 2018-08-15 2022-07-08 阿里巴巴集团控股有限公司 基于域名系统的数据调度方法和系统
CN111367650B (zh) * 2018-12-26 2023-11-21 浙江大学 一种输入输出流的处理方法、装置及系统
CN109889569B (zh) * 2019-01-03 2022-04-22 网宿科技股份有限公司 Cdn服务调度方法及系统
CN109618003B (zh) * 2019-01-14 2022-02-22 网宿科技股份有限公司 一种服务器规划方法、服务器及存储介质
CN109831511B (zh) 2019-02-18 2020-10-23 华为技术有限公司 调度内容分发网络cdn边缘节点的方法及设备
CN110266744A (zh) * 2019-02-27 2019-09-20 中国联合网络通信集团有限公司 基于位置的边缘云资源调度方法及系统
CN109918205B (zh) * 2019-03-25 2023-11-17 深圳市网心科技有限公司 一种边缘设备调度方法、系统、装置及计算机存储介质
CN112019451B (zh) * 2019-05-29 2023-11-21 中国移动通信集团安徽有限公司 带宽分配方法、调试网元、本地缓存服务器及计算设备
US11310148B2 (en) * 2019-06-03 2022-04-19 At&T Intellectual Property I, L.P. Methods, systems, and computer programs for intelligent content delivery using a software defined network and edge computing
CN110311810A (zh) * 2019-06-13 2019-10-08 北京奇艺世纪科技有限公司 一种服务器资源配置方法、装置、电子设备及存储介质
CN110381134B (zh) * 2019-07-18 2022-05-17 湖南快乐阳光互动娱乐传媒有限公司 调度方法、系统、调度器及cdn系统
CN110493321B (zh) * 2019-07-24 2022-04-22 网宿科技股份有限公司 一种资源获取方法以及边缘调度系统、服务器
CN110460652B (zh) * 2019-07-26 2021-09-14 网宿科技股份有限公司 一种资源获取方法及边缘计算调度服务器
CN112398802B (zh) * 2019-08-16 2022-10-14 腾讯科技(深圳)有限公司 数据下载方法及相关设备
CN110708369B (zh) * 2019-09-25 2022-09-16 深圳市网心科技有限公司 设备节点的文件部署方法、装置、调度服务器及存储介质
CN110661879B (zh) * 2019-10-12 2023-03-24 北京奇艺世纪科技有限公司 节点调度方法、装置、系统、调度服务器及终端设备
CN110830564B (zh) * 2019-10-30 2022-11-01 北京金山云网络技术有限公司 Cdn调度方法、装置、系统及计算机可读存储介质
CN110933145A (zh) * 2019-11-14 2020-03-27 光通天下网络科技股份有限公司 异地调度方法、装置、设备及介质
CN113067714B (zh) * 2020-01-02 2022-12-13 中国移动通信有限公司研究院 一种内容分发网络调度处理方法、装置及设备
CN111225279B (zh) * 2020-01-06 2022-03-22 浙江云诺通信科技有限公司 一种基于宽带电视cdn智能调度算法
CN111371866B (zh) * 2020-02-26 2023-03-21 厦门网宿有限公司 一种处理业务请求的方法和装置
EP3879796B1 (en) * 2020-03-13 2024-02-21 Apple Inc. Selection of edge application server
US11201791B2 (en) 2020-03-24 2021-12-14 Verizon Patent And Licensing Inc. Optimum resource allocation and device assignment in a MEC cluster
CN111526185B (zh) * 2020-04-10 2022-11-25 广东小天才科技有限公司 数据下载方法、装置、系统及存储介质
CN111614736A (zh) * 2020-04-30 2020-09-01 北京金山云网络技术有限公司 网络内容资源调度方法、域名调度服务器及电子设备
CN111770068B (zh) * 2020-06-15 2022-12-30 上海翌旭网络科技有限公司 一种基于最优链路选择的一致性鉴权方法
CN112272201B (zh) * 2020-09-15 2022-05-27 网宿科技股份有限公司 一种设备纳管方法、系统及纳管集群
CN112260962B (zh) * 2020-10-16 2023-01-24 网宿科技股份有限公司 一种带宽控制方法及装置
CN112491961A (zh) * 2020-11-02 2021-03-12 网宿科技股份有限公司 调度系统及方法、cdn系统
CN114553964A (zh) * 2020-11-20 2022-05-27 中移动信息技术有限公司 一种联播系统的管控方法、装置、设备及联播系统
CN112671664B (zh) * 2020-12-04 2022-08-19 新浪网技术(中国)有限公司 一种基于精细化调度的cdn调度系统及方法
CN112713924A (zh) * 2021-03-23 2021-04-27 南通先进通信技术研究院有限公司 一种基于卫星通信的cdn网络系统的工作方法
CN112769230A (zh) * 2020-12-22 2021-05-07 南方电网深圳数字电网研究院有限公司 基于容器技术的分布式边缘微云监控系统
CN112804110B (zh) * 2021-03-19 2023-05-09 上海七牛信息技术有限公司 基于内容分发网络指标系统的带宽精准控制方法及装置
CN112995771B (zh) * 2021-04-25 2021-07-16 广州华源网络科技有限公司 一种基于无线通信的多媒体增值服务系统
CN114172964B (zh) * 2021-11-04 2024-02-02 北京快乐茄信息技术有限公司 内容分发网络的调度方法、装置、通信设备及存储介质
CN116208556A (zh) * 2021-11-30 2023-06-02 中兴通讯股份有限公司 流量均衡方法、电子设备、计算机可读存储介质
CN113950165B (zh) * 2021-12-03 2022-11-08 中电信数智科技有限公司 智能组网平台组网设备连接方法及装置
US11909816B2 (en) * 2022-01-21 2024-02-20 Dell Products L.P. Distributed network address discovery in non-uniform networks
CN116684433A (zh) * 2022-02-23 2023-09-01 中移(苏州)软件技术有限公司 一种请求处理方法、装置及存储介质
WO2023192133A1 (en) * 2022-03-28 2023-10-05 Interdigital Patent Holdings, Inc. Pin configuration, management and application service discovery
CN114650295B (zh) * 2022-03-29 2023-12-05 北京有竹居网络技术有限公司 Cdn质量调度方法、装置、介质和电子设备
CN115002126B (zh) * 2022-04-30 2024-01-12 苏州浪潮智能科技有限公司 一种基于边缘服务器集群的服务调度方法及装置
CN115225507B (zh) * 2022-07-21 2024-03-08 天翼云科技有限公司 一种服务器组资源分配方法、装置、设备及介质
CN115208766B (zh) * 2022-07-29 2023-11-03 天翼云科技有限公司 一种cdn带宽调度方法及相关装置
US11956309B1 (en) * 2022-12-13 2024-04-09 International Business Machines Corporation Intermediary client reconnection to a preferred server in a high availability server cluster
CN116599999B (zh) * 2023-07-18 2023-10-10 中移(苏州)软件技术有限公司 预测cdn用户的实时用量数据的方法、装置及设备
CN117041260B (zh) * 2023-10-09 2024-01-02 湖南快乐阳光互动娱乐传媒有限公司 一种控制处理方法及系统
CN117459587B (zh) * 2023-12-22 2024-03-01 常州尊尚信息科技有限公司 基于边缘计算的内容分发网络的调度方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6253230B1 (en) * 1998-09-22 2001-06-26 International Business Machines Corporation Distributed scalable device for selecting a server from a server cluster and a switched path to the selected server
CN102427412A (zh) * 2011-12-31 2012-04-25 网宿科技股份有限公司 基于内容分发网络的零延时主备源灾备切换方法和系统
CN103078880A (zh) * 2011-10-25 2013-05-01 中国移动通信集团公司 基于多个内容分发网络的内容信息处理方法、系统和设备
CN103095597A (zh) * 2011-10-28 2013-05-08 华为技术有限公司 一种用于负载均衡的方法和装置
CN103227839A (zh) * 2013-05-10 2013-07-31 网宿科技股份有限公司 内容分发网络服务器区域自治的管理系统

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6108703A (en) * 1998-07-14 2000-08-22 Massachusetts Institute Of Technology Global hosting system
US7340532B2 (en) * 2000-03-10 2008-03-04 Akamai Technologies, Inc. Load balancing array packet routing system
US20010051980A1 (en) * 2000-06-01 2001-12-13 Raciborski Nathan F. Preloading content objects on content exchanges
US7007089B2 (en) * 2001-06-06 2006-02-28 Akarnai Technologies, Inc. Content delivery network map generation using passive measurement data
US9167036B2 (en) * 2002-02-14 2015-10-20 Level 3 Communications, Llc Managed object replication and delivery
US20030217147A1 (en) * 2002-05-14 2003-11-20 Maynard William P. Directing a client computer to a least network latency server site
US9762692B2 (en) * 2008-04-04 2017-09-12 Level 3 Communications, Llc Handling long-tail content in a content delivery network (CDN)
US9203921B2 (en) 2008-08-26 2015-12-01 British Telecommunications Public Limited Company Operation of a content distribution network
US8073940B1 (en) * 2008-11-17 2011-12-06 Amazon Technologies, Inc. Managing content delivery network service providers
CN102148752B (zh) * 2010-12-22 2014-03-12 华为技术有限公司 基于内容分发网络的路由实现方法及相关设备、系统
US8984144B2 (en) * 2011-03-02 2015-03-17 Comcast Cable Communications, Llc Delivery of content
US8589996B2 (en) * 2011-03-16 2013-11-19 Azuki Systems, Inc. Method and system for federated over-the-top content delivery
CN102195788B (zh) * 2011-05-25 2013-07-10 中国联合网络通信集团有限公司 应用层组播系统及流媒体数据处理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6253230B1 (en) * 1998-09-22 2001-06-26 International Business Machines Corporation Distributed scalable device for selecting a server from a server cluster and a switched path to the selected server
CN103078880A (zh) * 2011-10-25 2013-05-01 中国移动通信集团公司 基于多个内容分发网络的内容信息处理方法、系统和设备
CN103095597A (zh) * 2011-10-28 2013-05-08 华为技术有限公司 一种用于负载均衡的方法和装置
CN102427412A (zh) * 2011-12-31 2012-04-25 网宿科技股份有限公司 基于内容分发网络的零延时主备源灾备切换方法和系统
CN103227839A (zh) * 2013-05-10 2013-07-31 网宿科技股份有限公司 内容分发网络服务器区域自治的管理系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
大规模视频服务集群动态调度机制的研究;周光友;《中国优秀硕士学位论文全文数据库信息科技辑》;20090531(第5期);说明书第1-101页、图5-1 *

Also Published As

Publication number Publication date
EP3211857A1 (en) 2017-08-30
CN104320487A (zh) 2015-01-28
US20180288141A1 (en) 2018-10-04
EP3211857A4 (en) 2018-06-13
EP3211857B1 (en) 2019-05-22
WO2016074323A1 (zh) 2016-05-19
US10404790B2 (en) 2019-09-03

Similar Documents

Publication Publication Date Title
CN104320487B (zh) 内容分发网络的http调度系统和方法
CN104363313B (zh) 使用内容分发网络的网站的资源使用率保障方法和系统
CN103716251B (zh) 用于内容分发网络的负载均衡方法及设备
CN107465708B (zh) 一种cdn带宽调度系统及方法
CN104756444B (zh) 云中的cdn负载平衡
CN104756467B (zh) 云中的cdn流量管理
CN103391299B (zh) 负载均衡方法和负载均衡系统
CN107517228B (zh) 一种内容分发网络中的动态加速方法及装置
CN110401657B (zh) 一种访问日志的处理方法及装置
US20180247265A1 (en) Task grouping method and apparatus, electronic device, and computer storage medium
CN109167674B (zh) 服务节点的评分方法、域名系统dns调度方法及服务器
CN108521856A (zh) 内容分发网络中的调度方法和设备
US20170142177A1 (en) Method and system for network dispatching
WO2017113868A1 (zh) Cdn平台自适应带宽控制方法和系统
US8843630B1 (en) Decentralized request routing
CN106992938A (zh) 一种网络流量动态调度分配方法及系统
CN103747274B (zh) 一种增设缓存集群的视频数据中心及其缓存资源调度方法
CN103607424B (zh) 一种服务器连接方法及服务器系统
CN109327550A (zh) 一种访问请求的分配方法、装置、存储介质和计算机设备
CN109190070A (zh) 一种数据处理方法、装置、系统及应用服务器
CN102904955A (zh) 云计算平台中Web应用的自适应伸缩控制系统及其方法
CN106254561A (zh) 一种网络资源文件的实时离线下载方法及系统
CN105897613A (zh) 无级别限制的QoS的实现方法及无级别限制的QoS系统
CN106936877A (zh) 一种内容分发方法、装置及系统
CN107835262A (zh) 一种流媒体服务器负载动态分配方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant