一种节点负载的分布式CDN全局调度的方法技术

技术编号:10091339 阅读:263 留言:0更新日期:2014-05-28 14:41
本发明专利技术涉及一种节点负载的分布式CDN全局调度的方法,包括以下步骤:根据业务类型确定调度方案;根据用户访问调度服务器的客户端IP进行IP定位,确定其所在的IP位置信息;根据确定的调度方案和确定的用户IP位置信息去匹配位置路由策略;根据位置路由策略来选择目标路由策略,从而确定CDN节点;根据确定CDN节点,选择该CDN节点对应的一台或者多台节点内服务器,进行随机负载均衡,最终向用户返回被选中的CDN节点服务器的地址信息,为用户提供CDN访问的服务。本发明专利技术可以提升CDN整体用户服务的体验质量,提升CDN整体抗突发峰值流量的能力,同时通过节点的优化调度来降低整体的运营成本。

【技术实现步骤摘要】
一种节点负载的分布式CDN全局调度的方法
本专利技术涉及信息
,特别是涉及一种节点负载的分布式CDN全局调度的方法。
技术介绍
当今的CDN系统,特别是国内互联网视频CDN系统一般是通过在所需覆盖的地区不同运营商网络内就近部署边缘节点,为用户提供就近服务的方式。目前有采用基于用户访问的DNS服务器进行负载均衡的方式,也有基于IP调度的方式来进行负载均衡的方式。另外,在自运营的CDN系统中,一方面可能会使用自建的节点来提供差异化的优质服务,另一方面可能会利用第三方商用CDN系统来解决覆盖面的问题来提高服务的覆盖率从而提升服务质量。对于CDN中分布在各地的各个节点,以及接入的第三方CDN系统,需要有一个方法能够一方面在自建的CDN节点间做负载均衡,另一方面又能够在自建CDN和商用CDN之间做一个平衡,在充分利用自建资源并保证服务质量的基础上来降低整体的运营成本。
技术实现思路
本专利技术所要解决的技术问题是提供一种节点负载的分布式CDN全局调度的方法,能够根据用户来源和部署在各地的节点网络负载的情况进行动态地调整,从而达到对用户访问进行CDN节点优先路由选择,实现各CDN节点间的负载均衡的目的,从而提升用户访问服务质量和降低CDN整体运营成本。本专利技术解决其技术问题所采用的技术方案是:提供一种节点负载的分布式CDN全局调度的方法,包括以下步骤:(1)根据业务类型确定调度方案;(2)根据用户访问调度服务器的客户端IP进行IP定位,确定其所在的IP位置信息;(3)根据确定的调度方案和确定的用户IP位置信息去匹配位置路由策略;(4)根据位置路由策略来选择目标路由策略,从而确定CDN节点;(5)根据确定CDN节点,选择该CDN节点对应的一台或者多台节点内服务器,进行随机负载均衡,最终向用户返回被选中的CDN节点服务器的地址信息,为用户提供CDN访问的服务。所述步骤(1)包括以下子步骤:(11)建立两个映射表,第一个映射表是内容对应调度方案的映射表,第二个映射表是频道对应调度方案的映射表;(12)根据用户输入的内容查找第一个映射表,确定调度方案,如果没有查到,就根据用户输入的频道查找第二个映射表,确定调度方案。所述步骤(2)包括以下子步骤:(21)建立两个映射表,第一个映射表是位置表,用于存储基础的位置信息,每个位置信息包含位置ID、运营商、省份和城市四个字段;第二个映射表是IP表,用于存储IP段和位置ID的映射关系,包含IP,MASK,位置ID三个字段;(22)在匹配的时候,根据客户端IP,按照IP库的最长匹配方法,在IP表中查找对应的位置ID,然后根据查找到的位置ID,得到该用户所在的运营商、省份、城市的信息,并用“运营商.省份.城市”来表示成IP位置信息。所述步骤(3)包括以下子步骤:(31)建立一个位置路由表,包含位置路由ID、IP位置通配符、调度方案三个字段;(32)根据IP位置信息和调度方案按照通配符匹配的方式进行模糊匹配,按照通配符从短到长匹配算法依次匹配出一个或者多个位置路由ID。所述步骤(32)中对整个位置路由表进行加载,并建立四层树状结构,其中,第一层为root层,第二层为“运营商”层,第三层为“省份”层,第四层为“城市”层,root层仅有一个节点,该节点表示匹配任何IP位置,剩下的每一层具有多个节点,节点按照节点的Key值根据字典序方式排列。所述步骤(4)中,一个位置路由策略能够匹配一条或者多条目标路由策略,当匹配出多条目标路由策略时,多条目标路由策略根据权重、优先级、时间段参数、以及当前节点的网络带宽可用容量来进行筛选,从而确定首选CDN节点。所述步骤(4)包括以下子步骤:(41)创建目标路由表,该表的字段如下:位置路由ID、生效起止时间、优先级、权重;(42)创建CDN节点表,该表的字段如下:CDN节点ID,多个CDN目标URL地址,当前带宽可用容量,当前节点需要被分流的百分比,以及节点的可用状态;(43)根据位置路由ID得到所有对应的目标路由记录,并根据其CDN节点ID得到CDN节点表中的相关参数;(44)对目标路由记录按照时间段、可用状态进行筛选,过滤掉节点当前不可用的记录;(45)对于剩余的可用目标路由记录按照优先级进行分组,按照优先级作为分组号进行排序;(46)对分组内的目标路由记录,根据其权重和可用容量百分比,分流百分比三个参数,来进行选择,如果可用容量不足的目标路由记录则进入溢出表;(47)如果当前分组没有可用的记录,并且当前分组不是最后一个分组,则在溢出表中将每条记录的分流值进行累加,计算得到平均值后作为权重值,进行随机选择,确定是在溢出表还是下一个分组中继续选择目标路由记录;如果当前分组没有可用的服务器,并且当前分组已经是最后的分组,则对溢出表中的记录按照每条记录以权重×(1-分流百分比)来作为权重随机选择的权重参数,在溢出表内进行随机选择,选中的记录返回CDN节点ID。所述步骤(5)中如果没有可用的CDN节点能够匹配到,则返回步骤(4)获取下一个位置路由策略。所述步骤(5)包括以下子步骤:(51)根据CDN节点ID,找到对应的CDN记录;(52)对CDN记录中一个或者多个URL作随机选择,进行负载均衡,最后将选中的URL返回。以下对一些名词进行解释:频道:作为区分不同业务的一个标识,如视频VOD中的某个“电影频道”或者“电视剧频道”等。内容:在频道中提供的各项服务,如视频VOD中的某个影片。IP位置:即根据用户端网络接入的IP,用于定位用户所处的运营商,所在省份和城市的位置,为了区别于物理位置,这个位置这里定义为IP位置,并用“运营商.省份.城市”三段式来表示。CDN节点:即分布于各个运营商网络内不同城市的内容分发加速的边缘节点,或者是引入的第三方商用CDN系统。CDN节点之间将根据既定的相关策略进行负载均衡,在用户服务质量和系统运营成本上进行一个权衡。调度策略:本方法对整个调度策略从逻辑上划分为三个层次:1.调度方案;2.位置路由策略;3.目标路由策略。以下分别对这三个进行说明:其中,调度方案是一套由位置路由策略、目标路由策略组成的调度的方案。它针对不同的内容或者不同的频道来提供不同的调度方案,从而能够根据业务类型来提供差异化服务。其中,位置路由策略是根据用户所在IP位置(包括运营商、省份、城市)来确定其采用哪一组目标路由策略来选择目标CDN节点。其中,目标路由策略是根据特定的用户IP位置,当前时间、CDN节点的权重、优先级、网络带宽的空闲状况来进行优化选择,从而实现在多个CDN节点之间进行负载均衡,提升带宽利用率。有益效果由于采用了上述的技术方案,本专利技术与现有技术相比,具有以下的优点和积极效果:本专利技术采用基于静态IP库进行IP调度的方式,并通过和流量监控系统进行对接,利用实现配置好的调度策略来实现对用户的就近路由选择,同时根据各个节点的流量变化情况来实现自建CDN节点以及自建CDN和商用CDN之间的动态的负载平衡,从而实现资源充分有效的利用的目的。附图说明图1是本专利技术的流程图;图2是匹配位置路由策略时建立的数据结构示意图。具体实施方式下面结合具体实施例,进一步阐述本专利技术。应理解,这些实施例仅用于说明本专利技术而不用于限制本专利技术的范围。此外应理解,在阅读了本专利技术讲授的本文档来自技高网...
一种节点负载的分布式CDN全局调度的方法

【技术保护点】
一种节点负载的分布式CDN全局调度的方法,其特征在于,包括以下步骤:(1)根据业务类型确定调度方案;(2)根据用户访问调度服务器的客户端IP进行IP定位,确定其所在的IP位置信息;(3)根据确定的调度方案和确定的用户IP位置信息去匹配位置路由策略;(4)根据位置路由策略来选择目标路由策略,从而确定CDN节点;(5)根据确定CDN节点,选择该CDN节点对应的一台或者多台节点内服务器,进行随机负载均衡,最终向用户返回被选中的CDN节点服务器的地址信息,为用户提供CDN访问的服务。

【技术特征摘要】
1.一种节点负载的分布式CDN全局调度的方法,其特征在于,包括以下步骤:(1)根据业务类型确定调度方案;(2)根据用户访问调度服务器的客户端IP进行IP定位,确定其所在的IP位置信息;(3)根据确定的调度方案和确定的用户IP位置信息去匹配位置路由策略;(4)根据位置路由策略来选择目标路由策略,从而确定CDN节点;(5)根据确定CDN节点,选择该CDN节点对应的一台或者多台节点内服务器,进行随机负载均衡,最终向用户返回被选中的CDN节点服务器的地址信息,为用户提供CDN访问的服务。2.根据权利要求1所述的节点负载的分布式CDN全局调度的方法,其特征在于,所述步骤(1)包括以下子步骤:(11)建立两个映射表,第一个映射表是内容对应调度方案的映射表,第二个映射表是频道对应调度方案的映射表;(12)根据用户输入的内容查找第一个映射表,确定调度方案,如果没有查到,就根据用户输入的频道查找第二个映射表,确定调度方案。3.根据权利要求1所述的节点负载的分布式CDN全局调度的方法,其特征在于,所述步骤(2)包括以下子步骤:(21)建立两个映射表,第一个映射表是位置表,用于存储基础的位置信息,每个位置信息包含位置ID、运营商、省份和城市四个字段;第二个映射表是IP表,用于存储IP段和位置ID的映射关系,包含IP,MASK,位置ID三个字段;(22)在匹配的时候,根据客户端IP,按照IP库的最长匹配方法,在IP表中查找对应的位置ID,然后根据查找到的位置ID,得到该用户所在的运营商、省份、城市的信息,并用“运营商.省份.城市”来表示成IP位置信息。4.根据权利要求1所述的节点负载的分布式CDN全局调度的方法,其特征在于,所述步骤(3)包括以下子步骤:(31)建立一个位置路由表,包含位置路由ID、IP位置通配符、调度方案三个字段;(32)根据IP位置信息和调度方案按照通配符匹配的方式进行模糊匹配,按照通配符从短到长匹配算法依次匹配出一个或者多个位置路由ID。5.根据权利要求4所述的节点负载的分布式CDN全局调度的方法,其特征在于,所述步骤(32)中对整个位置路由表进行加载,并建立四层树状结构,其中,第一层为root层,第二层为“运营商”层,第三层为“省份”层,第四层为“城市”层,root...

【专利技术属性】
技术研发人员:王磊
申请(专利权)人:上海视云网络科技有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1