CN102065142A - 基于文件下载的内容分发网络调度方法和*** - Google Patents
基于文件下载的内容分发网络调度方法和*** Download PDFInfo
- Publication number
- CN102065142A CN102065142A CN2010106077028A CN201010607702A CN102065142A CN 102065142 A CN102065142 A CN 102065142A CN 2010106077028 A CN2010106077028 A CN 2010106077028A CN 201010607702 A CN201010607702 A CN 201010607702A CN 102065142 A CN102065142 A CN 102065142A
- Authority
- CN
- China
- Prior art keywords
- machine
- dns
- decision
- scheduling
- network
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了基于文件下载的内容分发网络调度方法和***,精确控制每个链接的访问,从而从整体上提高文件下载加速体系的服务质量。其技术方案为:方法包括:决策机在收集DNS机和生产机的统计、采集数据后执行决策,并将调度决策结果发送到DNS机和生产机;DNS机根据接收到的调度决策结果为公网通用DNS执行第一次的DNS调度;生产机根据接收到的调度决策结果为最终来访的客户端执行第二次的URL调度。
Description
技术领域
本发明涉及一种网络上的文件下载技术,尤其涉及内容分发网络(CDN,Content Delivery Network)技术对文件下载进行加速处理的调度方法和***。
背景技术
CDN技术通过将内容发布到网络边缘,解决了互联网网络拥塞的状况,提高了用户访问网站的响应速度,越来越受到业界的广泛关注,并在国内外得到了广泛的应用。随着CDN的快速发展,文件下载类加速业务需求猛增,如何进一步改善下载加速的效果体验日趋成为CDN业内关注的一大焦点。
传统的做法是采用DNS端调度分配方式处理,传统的处理方式存在最终客户端IP与其配置的DNS IP处于两个不同的网络***,网络特性完全不同的问题。该问题会致使最终下载客户端无法获得最佳服务质量。
发明内容
本发明的目的在于解决上述问题,提供了一种基于文件下载的内容分发网络调度方法,配合使用HTTP重定向方法,考虑设计基于URL级别的二次调度***,对每个最终来访的客户端进行URL调度,为其指定相对较佳网络特性的服务器保证最终客户端的下载速度。
本发明的另一目的在于提供了一种基于文件下载的内容分发网络调度***。
本发明的技术方案为:本发明揭示了一种基于文件下载的内容分发网络调度方法,该方法应用在由决策机、DNS机和生产机所组成的网络***中,该方法包括:
步骤1:决策机在收集DNS机和生产机的统计、采集数据后执行决策,并将调度决策结果发送到DNS机和生产机;
步骤2:DNS机根据接收到的调度决策结果为公网通用DNS执行第一次的DNS调度;
步骤3:生产机根据接收到的调度决策结果为最终来访的客户端执行第二次的URL调度。
根据本发明的基于文件下载的内容分发网络调度方法的一实施例,步骤1进一步包括:
DNS机按照IP归属区域统计来访的DNS请求次数,定期向决策机报告该DNS请求次数的数据;
生产机按照IP归属区域统计来访请求下载资源的次数,定期向决策机报告自身的服务状态、来访下载次数数据、生产机到各个IP归属区域的网络状态、机房状态;
决策机汇总DNS机、生产机送达的数据,计算评估每个区域应当由哪些生产机执行覆盖,并将调度决策结果反馈给DNS机和生产机。
根据本发明的基于文件下载的内容分发网络调度方法的一实施例,步骤2进一步包括:
DNS机根据接收到的来自决策机的调度决策结果,按照IP归属区域的调度决策结果做DNS调度实施。
根据本发明的基于文件下载的内容分发网络调度方法的一实施例,步骤3进一步包括:
生产机根据接收到的来自决策机的调度决策结果,按照IP归属区域的调度决策结果做URL的调度实施,对于理应到其他生产机上下载的链接返回URL重定向调度指示并停止为其服务。
根据本发明的基于文件下载的内容分发网络调度方法的一实施例,对于计算评估每个区域应当由哪些生产机执行覆盖是采用最小费用最大流算法来建模。
根据本发明的基于文件下载的内容分发网络调度方法的一实施例,在最小费用最大流算法的建模过程中,包括了对算法中涉及的源点、汇点以及与源点和汇点相连的三类节点的建模,
其中第一类节点为生产机组成的每个网络节点,第一类节点与源点有三条边相连接,其中第一类节点与源点连接的第一条边的边容量为生产者的当前使用带宽,其边费用为0;第一类节点与源点连接的第二条边的边容量为网络节点的最大可用带宽,其边费用为网络节点在可用带宽内的使用成本;第一类节点与源点连接的第三条边的边容量为无穷大,其边费用为网络节点超过可用带宽的使用成本,其中网络节点在可用带宽内的使用成本小于网络节点超过可用带宽的使用成本;
第二类节点由每个生产者组成,第二类节点与其归属的第一类节点之间有三条边相连接,其中第二类节点与其归属的第一类节点相连接的第一条边的边容量为生产者的当前使用带宽,其边费用为0;第二类节点与其归属的第一类节点相连接的第二条边的边容量为生产者的最大可用带宽,其边费用为生产者在可用带宽内的使用成本;第二类节点与其归属的第一类节点相连接的第三条边的边容量为无穷大,其边费用为生产者超过可用带宽的使用成本,其中生产者在可用带宽内的使用成本小于生产者超过可用带宽的使用成本;
第三类节点由每个公网区域组成,第三类节点的一边与汇点连接,其对应的边容量为:***当前使用的带宽量×(对应的公网区域的当前链接数/***的当前链接数),其边费用为0,第三类节点的另一边与生产者相连,其对应的边容量为:***当前使用的带宽量×(对应的公网区域的当前链接数/***的当前链接数),其边费用为公网区域到生产者之间的距离指数。
根据本发明的基于文件下载的内容分发网络调度方法的一实施例,公网区域到生产者之间的距离指数的计算方式是:
若公网区域可以用生产者覆盖,则两者之间的距离指数为TT×(1-LP)×100×30%,TT是生产者所归属节点到指定公网区域的传输时间,LP是丢包率。
本发明还揭示了一种基于文件下载的内容分发网络调度***,用于网络中文件下载的带宽分配,该***包括相互之间建有通讯连接的决策机、DNS机和生产机,其中:
决策机,接收来自生产机和DNS机的统计、采集数据后执行决策,并将调度决策结果发送到DNS机和生产机;
DNS机,一方面将统计、采集数据发送给决策机,一方面根据接收到的来自决策机的调度决策结果为公网通用DNS执行第一次的DNS调度;
生产机,一方面将统计、采集数据发送给决策机,一方面根据接收到的来自决策机的调度决策结果为最终来访的客户端执行第二次的URL调度。
根据本发明的基于文件下载的内容分发网络调度***的一实施例,该决策机进一步包括:
第一信息交互模块,和与自身进行数据通讯的DNS机和生产机进行信息交互操作;
决策模块,通过该第一信息交互模块汇总来自DNS机的DNS请求次数的数据,以及来自生产机的生产机服务状态、来访下载次数数据、生产机到各个IP归属区域的网络状态、机房状态,计算评估各个区域应当由哪些生产机执行覆盖,并将调度决策结果通过该第一信息交互模块反馈给DNS机和生产机。
根据本发明的基于文件下载的内容分发网络调度***的一实施例,该DNS机进一步包括:
第二信息交互模块,与决策机执行信息交互;
DNS响应模块,根据接收到的来自决策机的调度决策结果,按照IP归属区域的调度决策结果做DNS调度实施。
根据本发明的基于文件下载的内容分发网络调度***的一实施例,该生产机进一步包括:
第三信息交互模块,与决策机执行信息交互;
采集模块,采集与本生产机所在的网络节点相关的流量容量信息并通过该第三信息交互模块发送到决策机;
HTTP响应模块,服务来访的HTTP下载请求,依照来自决策机的调度决策结果对每个URL请求判定是否在本地提供下载服务,如果不是在本地提供下载服务则返回URL重定向页面通知客户端到指定的生产机上执行下载任务。
根据本发明的基于文件下载的内容分发网络调度***的一实施例,该决策模块采用最小费用最大流算法的建模方式来计算评估各个区域应当由哪些生产机执行覆盖。
根据本发明的基于文件下载的内容分发网络调度***的一实施例,该采集模块包括:
网络节点带宽采集单元,用于采集网络节点的带宽使用量,定期向网络节点上安装的最外层交换机上发送简单网络管理协议采集指令,采集所有最外层上联口的流量信息,将采集得到的流量初步加工处理成当前的带宽量;
网络性能采集单元,采集网络节点到公网各个网络区域的网络传输时间和丢包率。
根据本发明的基于文件下载的内容分发网络调度***的一实施例,该第一信息交互模块、该第二信息交互模块或该第三信息交互模块均包含:
接收线程处理单元,等待接收UDP数据包,检查数据是否合法,在数据合法的前提下将UDP数据包中的数据保存在缓冲结构体中;
发送线程处理单元,等待发送缓冲中出现需要发送的数据,然后发送准备好的数据,最后从发送缓冲中删除已发送的数据。
本发明对比现有技术有如下的有益效果:对于文件下载这种特殊业务来说,由于有链接时间长的特征,因此可以配合使用HTTP重定向方法。当生产机发现来访机器可到更佳服务的另一台生产机上服务时,则不直接返回请求内容而是返回一个重定向跳转,来访机器在接收到跳转信息后则根据跳转信息到指定的生产机上下载文件。本发明考虑基于URL级别的二次调度***,对每个最终来访的客户端进行URL调度,为其指定相对较佳网络特性的服务器保证最终客户端的下载速度。相较于传统技术,本发明采用了对文件下载实施CDN加速的二次调度方法,第一次调度由DNS机完成,通过来访的DNS IP初步确定应当到哪几台机器上执行下载任务,第二次调度由URL重定向完成,通过生产机对最终的下载请求做调度,最终确定每次下载。因此,本发明可以精确控制每个链接的访问,从而从整体上提高文件下载加速体系的服务质量。
附图说明
图1示例性的示出了本发明的基于文件下载的内容分发网络调度***的较佳实施例的结构图。
图2示例性的示出了本发明的基于文件下载的内容分发网络调度方法的较佳实施例的流程图。
图3示出了图2所示流程图的细化流程图。
图4示例性的示出了本发明的基于文件下载的内容分发网络调度***的较佳实施例中的决策机的逻辑架构图。
图5示例性的示出了本发明的基于文件下载的内容分发网络调度***的较佳实施例中的DNS机的逻辑架构图。
图6示例性的示出了本发明的基于文件下载的内容分发网络调度***的较佳实施例中的生产机的逻辑架构图。
图7示例性的示出了本发明的基于文件下载的内容分发网络调度***的较佳实施例中的第一/第二/第三信息交互模块的工作逻辑流程图。
图8示例性的示出了本发明的基于文件下载的内容分发网络调度***的较佳实施例中的决策模块的工作逻辑流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步的描述。
基于文件下载的内容分发网络调度方法的实施例
图2示出了本发明的基于文件下载的内容分发网络调度方法的实施例的流程。在详细描述本实施例的调度方法之前,需要先介绍本实施例的调度方法的应用环境。请参见图1,图1所示的***是本实施例的调度方法所依附的实施环境。在图1中,***用于文件下载业务的带宽分配,包括决策机100、DNS机110、111、生产机120、121、122,***在逻辑上由这三种机器构成,所有的机器分布在不同的网络位置,它们通过公共的信令信道相互通讯完成技术方案。
以下是基于图1***的本实施例的调度方法的各个步骤的详细描述。
步骤S10:决策机在收集DNS机和生产机的统计、采集数据后执行决策,并将调度决策结果发送到DNS机和生产机。
步骤S12:DNS机根据接收到的调度决策结果为公网通用DNS执行第一次的DNS调度。
步骤S14:生产机根据接收到的调度决策结果为最终来访的客户端执行第二次的URL调度。
图3示出了图2所示的三个步骤的细化流程,请进一步参见图3。
步骤S101:DNS机按IP归属区域统计来访DNS请求次数,每隔一个周期向决策机报告自身的状态信息数据和统计数据。
本步骤中所述的状态信息数据和统计数据主要指DNS请求次数的数据。
步骤S102:生产机按IP归属区域统计来访请求下载资源的次数,每隔一个周期向决策机报告自身的状态信息数据和统计数据、网络状态、机房状态。
生产机按照IP归属区域统计来访请求下载资源的次数,定期向决策机报告自身的服务状态、来访下载次数数据、生产机到各个IP归属区域的网络状态、机房状态。
步骤S103:决策机汇总DNS机、生产机送达的数据,计算评估每个区域应当由哪些生产机执行覆盖,并将调度决策结果反馈给DNS机和生产机。
对于评估公网的每个区域应当由哪些生产者来覆盖的过程,可以通过建模采用常用的最小费用最大流的算法(例如Dinic算法、ZKW算法、SPFA算法等)解决。在最小费用最大流的算法中,需要输入源点、汇点、从源点到汇点间的所有中间节点以及所有节点之间的边(包括边的费用和边的容量)。
以下是针对本实施例在最小费用最大流算法中抽象出源点会汇点(这两个节点是抽象的且仅存在于算法中的节点)以及与这两个节点相连的三大类节点建模:
1.A类点为生产机组成的每个网络节点,它与源点有三条边相连接:一条边容量为生产者的当前使用带宽,边费用为0;一条边容量为网络节点的最大可用带宽,边费用为ABILITYCOST1(网络节点在可用带宽内的使用成本);一条边容量为无穷大,边费用为MAXCOST1(网络节点超过可用带宽的使用成本),其中ABILITYCOST1<MAXCOST1;
2.B类点由每个生产者组成,它与其归属的A类点之间有三条边相连:一条边容量为生产者的当前使用带宽,边费用为0;一条边容量为生产者的最大可用带宽,边费用为ABILITYCOST2(生产者在可用带宽内的使用成本);一条边容量为无穷大,边费用为MAXCOST2(生产者超过可用带宽的使用成本),其中ABILITYCOST2<MAXCOST2;
3.C类点由每个公网区域组成:它一边与汇点连接,边的容量为:***当前使用的带宽量×(对应的公网区域的当前链接数/***的当前链接数),边费用为0;另一边与生产者相连,边容量为:***当前使用的带宽量×(对应的公网区域的当前链接数/***的当前链接数),边费用为该区域到该生产者间的距离指数。
其中ABILITYCOST1=1000,MAXCOST1=5000,ABILITYCOST1=1000,MAXCOST1=2000。
其中作为边费用的公网区域到生产者之间的距离指数的计算方式是:
若公网区域可以用生产者覆盖,则两者之间的距离指数为TT×(1-LP)×100×30%,TT是生产者所归属节点到指定公网区域的传输时间,LP是丢包率。
步骤S104:DNS机根据接收到的来自决策机的调度决策结果,按照IP归属区域的调度决策结果做DNS调度实施。
步骤S105:生产机根据接收到的来自决策机的调度决策结果,按照IP归属区域的调度决策结果做URL的调度实施,对于理应到其他生产机上下载的链接返回URL重定向调度指示并停止为其服务。
基于文件下载的内容分发网络调度***的实施例
图1示出了本发明的基于文件下载的内容分发网络调度***的实施例的结构。请参见图1,本实施例的内容分发网络调度***包括决策机100、DNS机110、111以及生产机120、121、122这三类逻辑***设备。***架构设计采用集中调度,分布实施的方式进行。所有的机器都可以分布在不同的网络位置,它们通过公共的信令信道相互通讯完成技术方案。在决策机、DNS机和生产机内都有相同的信息交互模块(分别为第一信息交互模块、第二信息交互模块和第三信息交互模块),专门用于与其他的模块进行通讯。
先由DNS机110、111将统计、采集数据发送给决策机100,由生产机120、121、122将统计、采集数据发送给决策机100,决策机100接收来自生产机120、121、122和DNS机110、111的统计、采集数据后执行决策,并将调度决策结果发送到生产机120、121、122和DNS机110、111。
然后,DNS机110、111根据接收到的来自决策机100的调度决策结果为公网通用DNS执行第一次的DNS调度。生产机120、121、122根据接收到的来自决策机100的调度决策结果为最终来访的客户端执行第二次的URL调度。
图4示出了决策机的逻辑架构。请参见图4,决策机进一步包括决策模块和第一信息交互模块。其中第一信息交互模块为共用模块。决策模块将生产机和DNS机发送过来的来访区域的分时统计下载次数、生产机的产能产量、节点的当前使用量上限、节点到各来访区域的传输时间、丢包率这些数据作为输入,评估计算各个区域由哪些生产机执行覆盖,并将调度决策结果通过第一信息交互模块反馈给生产机和DNS机。
决策模块通常是采用最小费用最大流算法的建模方式来计算评估各个区域应当由哪些生产机执行覆盖。
在最小费用最大流的算法中,需要输入源点、汇点、从源点到汇点间的所有中间节点以及所有节点之间的边(包括边的费用和边的容量)。
以下是针对本实施例在最小费用最大流算法中抽象出源点会汇点(这两个节点是抽象的且仅存在于算法中的节点)以及与这两个节点相连的三大类节点建模:
1.A类点为生产机组成的每个网络节点,它与源点有三条边相连接:一条边容量为生产者的当前使用带宽,边费用为0;一条边容量为网络节点的最大可用带宽,边费用为ABILITYCOST1(网络节点在可用带宽内的使用成本);一条边容量为无穷大,边费用为MAXCOST1(网络节点超过可用带宽的使用成本),其中ABILITYCOST1<MAXCOST1;
2.B类点由每个生产者组成,它与其归属的A类点之间有三条边相连:一条边容量为生产者的当前使用带宽,边费用为0;一条边容量为生产者的最大可用带宽,边费用为ABILITYCOST2(生产者在可用带宽内的使用成本);一条边容量为无穷大,边费用为MAXCOST2(生产者超过可用带宽的使用成本),其中ABILITYCOST2<MAXCOST2;
3.C类点由每个公网区域组成:它一边与汇点连接,边的容量为:***当前使用的带宽量×(对应的公网区域的当前链接数/***的当前链接数),边费用为0;另一边与生产者相连,边容量为:***当前使用的带宽量×(对应的公网区域的当前链接数/***的当前链接数),边费用为该区域到该生产者间的距离指数。
其中ABILITYCOST1=1000,MAXCOST1=5000,ABILITYCOST1=1000,MAXCOST1=2000。
其中作为边费用的公网区域到生产者之间的距离指数的计算方式是:
若公网区域可以用生产者覆盖,则两者之间的距离指数为TT×(1-LP)×100×30%,TT是生产者所归属节点到指定公网区域的传输时间,LP是丢包率。
对于第一信息交互模块的实现(下述的第二信息交互模块和第三信息交互模块的原理是一样的),是在各个机器之间通过UDP协议交互。其是由接收线程处理单元和发送线程处理单元两部分组成,如图7所示,接收线程处理单元专门用于接收外来数据,按规则执行分拣,将有用的数据保持在缓冲中待其他模块调用。接收线程处理单元的处理过程是等待接收UDP数据包,检查数据是否合法,在数据合法的前提下将UDP数据包中的数据保存在缓冲结构体中。发送线程处理单元专门用于把本地数据组包按规则可靠的发送到指定目标。发送线程处理单元的处理过程是等待发送缓冲中出现需要发送的数据,然后发送准备好的数据,最后从发送缓冲中删除已发送的数据。
在决策机内部的第一信息交互模块用于收集生产机和DNS机两方面发送过来的统计和采集数据并转交到决策模块,将决策模块的决策结果发送到DNS机和生产机。而DNS机中的第二信息交互模块和生产机中的第三信息交互模块均用于上报本机统计的来访记录以及采集的各类数据到决策机,并获取决策机发布的最新的调度策略。
图5示出了DNS机的逻辑架构。如图5所示,DNS机包括第二信息交互模块和DNS响应模块。DNS响应模块将占用本机的UDP和TCP端口,提供标准的内容下载所涉及的域名的DNS授权查询服务。在接收到相关域名查询时,将向第二信息交互模块检索来源DNS IP所在区域的最新覆盖记录,根据记录中所指定的目标生产机创建DNS应答包执行响应。同时统计该区域来查的次数及响应结果信息,将统计信息交由第二信息交互模块发送到决策机汇总。
图6示出了生产机的逻辑架构。如图6所示,生产机进一步包括第三信息交互模块、采集模块和HTTP响应模块。第三信息交互模块负责与决策机执行信息交互。采集模块采集与本生产机所在的网络节点相关的流量容量信息并通过第三信息交互模块发送到决策机。采集模块进一步包括网络节点带宽采集单元和网络性能采集单元。
网络节点带宽采集单元用于采集网络节点的带宽使用量,定期(例如10秒)向网络节点上安装的最外层交换机上发送简单网络管理协议采集指令(SNMP,Simple Network Management Protocol),采集所有最外层上联口的流量信息,将采集得到的流量初步加工处理成当前的带宽量。当前的带宽量计算为:带宽=(当前采集流量-上次采集流量)/(当前时间点-上次采集时间点)。
网络性能采集单元用于采集网络节点到公网各个网络区域的网络传输时间和丢包率。对于每个已划分的网络区域分别先行挑选一些可ping通的相对稳定的样本IP(每个网络区域50个),按指定周期向所有样本IP发送16个ICMP探测包,根据发包与返回包之间的时间间隔和是否收到回包的情况计算出每个样本IP到本网络节点的传输时间和丢包率。定期(5分钟)对所有的样本IP执行探测,并为每个网络区域按其内部样本点的探测结果计算均值得到该网络区域到本网络节点的传输时间和丢包率均值。
HTTP响应模块将占用本机HTTP服务相关端口,提供HTTP文件内容下载服务和URL重定向服务。在接收到相关URL下载请求时,将向信息交互模块检索来源IP所在区域的最新覆盖记录,若本生产机正好有在规定覆盖范围内则按通常下载文件方式返回下载文件响应,若本生产机并没有在规定覆盖范围内,则在规定覆盖生产机范围内挑选一台生产机作为重定向目标,向URL请求客户端返回一个URL重定向页面指向最终的重定向生产机。同时统计该区域来查的次数及响应结果信息,将统计信息交由信息交互模块发送到决策机汇总。
本发明的优点是决策机用于产生最终的覆盖决策,生产机是为客户服务的服务器,其可接受决策机的调度,将不合理的来访客户端引导到更合理的生产机上访问的机制。对比现有技术,本发明可以精确控制每个链接的访问,从整体上提高文件下载加速体系的服务质量。
上述实施例是提供给本领域普通技术人员来实现或使用本发明的,本领域普通技术人员可在不脱离本发明的发明思想的情况下,对上述实施例做出种种修改或变化,因而本发明的保护范围并不被上述实施例所限,而应该是符合权利要求书提到的创新性特征的最大范围。
Claims (14)
1.一种基于文件下载的内容分发网络调度方法,该方法应用在由决策机、DNS机和生产机所组成的网络***中,该方法包括:
步骤1:决策机在收集DNS机和生产机的统计、采集数据后执行决策,并将调度决策结果发送到DNS机和生产机;
步骤2:DNS机根据接收到的调度决策结果为公网通用DNS执行第一次的DNS调度;
步骤3:生产机根据接收到的调度决策结果为最终来访的客户端执行第二次的URL调度。
2.根据权利要求1所述的基于文件下载的内容分发网络调度方法,其特征在于,步骤1进一步包括:
DNS机按照IP归属区域统计来访的DNS请求次数,定期向决策机报告该DNS请求次数的数据;
生产机按照IP归属区域统计来访请求下载资源的次数,定期向决策机报告自身的服务状态、来访下载次数数据、生产机到各个IP归属区域的网络状态、机房状态;
决策机汇总DNS机、生产机送达的数据,计算评估每个区域应当由哪些生产机执行覆盖,并将调度决策结果反馈给DNS机和生产机。
3.根据权利要求2所述的基于文件下载的内容分发网络调度方法,其特征在于,步骤2进一步包括:
DNS机根据接收到的来自决策机的调度决策结果,按照IP归属区域的调度决策结果做DNS调度实施。
4.根据权利要求2所述的基于文件下载的内容分发网络调度方法,其特征在于,步骤3进一步包括:
生产机根据接收到的来自决策机的调度决策结果,按照IP归属区域的调度决策结果做URL的调度实施,对于理应到其他生产机上下载的链接返回URL重定向调度指示并停止为其服务。
5.根据权利要求2所述的基于文件下载的内容分发网络调度方法,其特征在于,对于计算评估每个区域应当由哪些生产机执行覆盖是采用最小费用最大流算法来建模。
6.根据权利要求5所述的基于文件下载的内容分发网络调度方法,其特征在于,在最小费用最大流算法的建模过程中,包括了对算法中涉及的源点、汇点以及与源点和汇点相连的三类节点的建模,
其中第一类节点为生产机组成的每个网络节点,第一类节点与源点有三条边相连接,其中第一类节点与源点连接的第一条边的边容量为生产者的当前使用带宽,其边费用为0;第一类节点与源点连接的第二条边的边容量为网络节点的最大可用带宽,其边费用为网络节点在可用带宽内的使用成本;第一类节点与源点连接的第三条边的边容量为无穷大,其边费用为网络节点超过可用带宽的使用成本,其中网络节点在可用带宽内的使用成本小于网络节点超过可用带宽的使用成本;
第二类节点由每个生产者组成,第二类节点与其归属的第一类节点之间有三条边相连接,其中第二类节点与其归属的第一类节点相连接的第一条边的边容量为生产者的当前使用带宽,其边费用为0;第二类节点与其归属的第一类节点相连接的第二条边的边容量为生产者的最大可用带宽,其边费用为生产者在可用带宽内的使用成本;第二类节点与其归属的第一类节点相连接的第三条边的边容量为无穷大,其边费用为生产者超过可用带宽的使用成本,其中生产者在可用带宽内的使用成本小于生产者超过可用带宽的使用成本;
第三类节点由每个公网区域组成,第三类节点的一边与汇点连接,其对应的边容量为:***当前使用的带宽量×(对应的公网区域的当前链接数/***的当前链接数),其边费用为0,第三类节点的另一边与生产者相连,其对应的边容量为:***当前使用的带宽量×(对应的公网区域的当前链接数/***的当前链接数),其边费用为公网区域到生产者之间的距离指数。
7.根据权利要求6所述的基于文件下载的内容分发网络调度方法,其特征在于,公网区域到生产者之间的距离指数的计算方式是:
若公网区域可以用生产者覆盖,则两者之间的距离指数为TT×(1-LP)×100×30%,TT是生产者所归属节点到指定公网区域的传输时间,LP是丢包率。
8.一种基于文件下载的内容分发网络调度***,用于网络中文件下载的带宽分配,该***包括相互之间建有通讯连接的决策机、DNS机和生产机,其中:
决策机,接收来自生产机和DNS机的统计、采集数据后执行决策,并将调度决策结果发送到DNS机和生产机;
DNS机,一方面将统计、采集数据发送给决策机,一方面根据接收到的来自决策机的调度决策结果为公网通用DNS执行第一次的DNS调度;
生产机,一方面将统计、采集数据发送给决策机,一方面根据接收到的来自决策机的调度决策结果为最终来访的客户端执行第二次的URL调度。
9.根据权利要求8所述的基于文件下载的内容分发网络调度***,其特征在于,该决策机进一步包括:
第一信息交互模块,和与自身进行数据通讯的DNS机和生产机进行信息交互操作;
决策模块,通过该第一信息交互模块汇总来自DNS机的DNS请求次数的数据,以及来自生产机的生产机服务状态、来访下载次数数据、生产机到各个IP归属区域的网络状态、机房状态,计算评估各个区域应当由哪些生产机执行覆盖,并将调度决策结果通过该第一信息交互模块反馈给DNS机和生产机。
10.根据权利要求9所述的基于文件下载的内容分发网络调度***,其特征在于,该DNS机进一步包括:
第二信息交互模块,与决策机执行信息交互;
DNS响应模块,根据接收到的来自决策机的调度决策结果,按照IP归属区域的调度决策结果做DNS调度实施。
11.根据权利要求9所述的基于文件下载的内容分发网络调度***,其特征在于,该生产机进一步包括:
第三信息交互模块,与决策机执行信息交互;
采集模块,采集与本生产机所在的网络节点相关的流量容量信息并通过该第三信息交互模块发送到决策机;
HTTP响应模块,服务来访的HTTP下载请求,依照来自决策机的调度决策结果对每个URL请求判定是否在本地提供下载服务,如果不是在本地提供下载服务则返回URL重定向页面通知客户端到指定的生产机上执行下载任务。
12.根据权利要求9所述的基于文件下载的内容分发网络调度***,其特征在于,该决策模块采用最小费用最大流算法的建模方式来计算评估各个区域应当由哪些生产机执行覆盖。
13.根据权利要求11所述的基于文件下载的内容分发网络调度***,其特征在于,该采集模块包括:
网络节点带宽采集单元,用于采集网络节点的带宽使用量,定期向网络节点上安装的最外层交换机上发送简单网络管理协议采集指令,采集所有最外层上联口的流量信息,将采集得到的流量初步加工处理成当前的带宽量;
网络性能采集单元,采集网络节点到公网各个网络区域的网络传输时间和丢包率。
14.根据权利要求9、10或11所述的基于文件下载的内容分发网络调度***,其特征在于,该第一信息交互模块、该第二信息交互模块或该第三信息交互模块均包含:
接收线程处理单元,等待接收UDP数据包,检查数据是否合法,在数据合法的前提下将UDP数据包中的数据保存在缓冲结构体中;
发送线程处理单元,等待发送缓冲中出现需要发送的数据,然后发送准备好的数据,最后从发送缓冲中删除已发送的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010106077028A CN102065142A (zh) | 2010-12-23 | 2010-12-23 | 基于文件下载的内容分发网络调度方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010106077028A CN102065142A (zh) | 2010-12-23 | 2010-12-23 | 基于文件下载的内容分发网络调度方法和*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102065142A true CN102065142A (zh) | 2011-05-18 |
Family
ID=44000241
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010106077028A Pending CN102065142A (zh) | 2010-12-23 | 2010-12-23 | 基于文件下载的内容分发网络调度方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102065142A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102347864A (zh) * | 2011-11-02 | 2012-02-08 | 网宿科技股份有限公司 | 基于内容分发网络的服务质量监控*** |
CN102546226A (zh) * | 2010-12-08 | 2012-07-04 | 中国科学院声学研究所 | 一种基于多节点提供网络服务的***及方法 |
WO2014059838A1 (zh) * | 2012-10-18 | 2014-04-24 | 中兴通讯股份有限公司 | 服务质量策略的调整方法及设备 |
CN104754640A (zh) * | 2013-12-26 | 2015-07-01 | ***通信集团公司 | 一种网络资源调度方法及网络资源管理服务器 |
CN104954366A (zh) * | 2015-05-27 | 2015-09-30 | 深圳市三峰光电科技有限公司 | 一种数据收敛的方法、装置及*** |
CN106790482A (zh) * | 2016-12-13 | 2017-05-31 | 网宿科技股份有限公司 | 资源调度方法及资源调度*** |
CN107465708A (zh) * | 2016-06-02 | 2017-12-12 | 腾讯科技(深圳)有限公司 | 一种cdn带宽调度***及方法 |
CN107623595A (zh) * | 2017-09-05 | 2018-01-23 | 湘潭大学 | 一种网络服务器部署方法及*** |
CN107689930A (zh) * | 2017-09-08 | 2018-02-13 | 桂林加宏汽车修理有限公司 | 一种资源调度方法及*** |
CN109040308A (zh) * | 2018-09-12 | 2018-12-18 | 杭州趣链科技有限公司 | 一种基于ipfs的文件分发***及文件分发方法 |
CN113949741A (zh) * | 2021-10-14 | 2022-01-18 | 北京奇艺世纪科技有限公司 | 一种调度方法、调度装置、电子设备及存储介质 |
CN114039855A (zh) * | 2021-11-04 | 2022-02-11 | 中国通信建设第三工程局有限公司 | 一种基于大数据的网络下载速度自动调整***及方法 |
CN114615337A (zh) * | 2022-01-27 | 2022-06-10 | 网宿科技股份有限公司 | 设备调度方法、***、服务器及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1489069A (zh) * | 2002-10-10 | 2004-04-14 | 华为技术有限公司 | 面向内容的负载均衡方法和设备 |
US20070118668A1 (en) * | 2005-11-21 | 2007-05-24 | Limelight Networks, Inc. | Domain Name Resolution Resource Allocation |
CN101005369A (zh) * | 2006-01-19 | 2007-07-25 | 深圳市瑞福特信息技术有限公司 | 一种分布式内容分发网及分布式内容分发和上传的方法 |
CN101202684A (zh) * | 2006-12-15 | 2008-06-18 | 中国电信股份有限公司 | 在内容分发网络中进行用户就近性判断的方法 |
CN101242432A (zh) * | 2008-02-28 | 2008-08-13 | 蓝汛网络科技(北京)有限公司 | 一种互联网内容分发方法、***及装置 |
CN101242422A (zh) * | 2007-02-06 | 2008-08-13 | 中国电信股份有限公司 | 适应多业务融合的内容分发网络***和方法 |
-
2010
- 2010-12-23 CN CN2010106077028A patent/CN102065142A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1489069A (zh) * | 2002-10-10 | 2004-04-14 | 华为技术有限公司 | 面向内容的负载均衡方法和设备 |
US20070118668A1 (en) * | 2005-11-21 | 2007-05-24 | Limelight Networks, Inc. | Domain Name Resolution Resource Allocation |
CN101005369A (zh) * | 2006-01-19 | 2007-07-25 | 深圳市瑞福特信息技术有限公司 | 一种分布式内容分发网及分布式内容分发和上传的方法 |
CN101202684A (zh) * | 2006-12-15 | 2008-06-18 | 中国电信股份有限公司 | 在内容分发网络中进行用户就近性判断的方法 |
CN101242422A (zh) * | 2007-02-06 | 2008-08-13 | 中国电信股份有限公司 | 适应多业务融合的内容分发网络***和方法 |
CN101242432A (zh) * | 2008-02-28 | 2008-08-13 | 蓝汛网络科技(北京)有限公司 | 一种互联网内容分发方法、***及装置 |
Non-Patent Citations (1)
Title |
---|
胡鹏、洪佩琳、李津生、杨海松: "《内容配送网路由请求***》", 《计算机应用》 * |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546226A (zh) * | 2010-12-08 | 2012-07-04 | 中国科学院声学研究所 | 一种基于多节点提供网络服务的***及方法 |
CN102546226B (zh) * | 2010-12-08 | 2014-06-11 | 中国科学院声学研究所 | 一种基于多节点提供网络服务的***及方法 |
CN102347864A (zh) * | 2011-11-02 | 2012-02-08 | 网宿科技股份有限公司 | 基于内容分发网络的服务质量监控*** |
CN102347864B (zh) * | 2011-11-02 | 2013-10-30 | 网宿科技股份有限公司 | 基于内容分发网络的服务质量监控*** |
WO2014059838A1 (zh) * | 2012-10-18 | 2014-04-24 | 中兴通讯股份有限公司 | 服务质量策略的调整方法及设备 |
CN104754640A (zh) * | 2013-12-26 | 2015-07-01 | ***通信集团公司 | 一种网络资源调度方法及网络资源管理服务器 |
CN104754640B (zh) * | 2013-12-26 | 2019-01-08 | ***通信集团公司 | 一种网络资源调度方法及网络资源管理服务器 |
CN104954366A (zh) * | 2015-05-27 | 2015-09-30 | 深圳市三峰光电科技有限公司 | 一种数据收敛的方法、装置及*** |
CN107465708A (zh) * | 2016-06-02 | 2017-12-12 | 腾讯科技(深圳)有限公司 | 一种cdn带宽调度***及方法 |
CN106790482A (zh) * | 2016-12-13 | 2017-05-31 | 网宿科技股份有限公司 | 资源调度方法及资源调度*** |
CN106790482B (zh) * | 2016-12-13 | 2020-05-22 | 网宿科技股份有限公司 | 资源调度方法及资源调度*** |
CN107623595A (zh) * | 2017-09-05 | 2018-01-23 | 湘潭大学 | 一种网络服务器部署方法及*** |
CN107623595B (zh) * | 2017-09-05 | 2020-12-08 | 湘潭大学 | 一种网络服务器部署方法及*** |
CN107689930A (zh) * | 2017-09-08 | 2018-02-13 | 桂林加宏汽车修理有限公司 | 一种资源调度方法及*** |
CN109040308A (zh) * | 2018-09-12 | 2018-12-18 | 杭州趣链科技有限公司 | 一种基于ipfs的文件分发***及文件分发方法 |
CN113949741A (zh) * | 2021-10-14 | 2022-01-18 | 北京奇艺世纪科技有限公司 | 一种调度方法、调度装置、电子设备及存储介质 |
CN113949741B (zh) * | 2021-10-14 | 2023-07-21 | 北京奇艺世纪科技有限公司 | 一种调度方法、调度装置、电子设备及存储介质 |
CN114039855A (zh) * | 2021-11-04 | 2022-02-11 | 中国通信建设第三工程局有限公司 | 一种基于大数据的网络下载速度自动调整***及方法 |
CN114039855B (zh) * | 2021-11-04 | 2024-05-14 | 中国通信建设第三工程局有限公司 | 一种基于大数据的网络下载速度自动调整***及方法 |
CN114615337A (zh) * | 2022-01-27 | 2022-06-10 | 网宿科技股份有限公司 | 设备调度方法、***、服务器及存储介质 |
CN114615337B (zh) * | 2022-01-27 | 2024-04-12 | 网宿科技股份有限公司 | 设备调度方法、***、服务器及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102065142A (zh) | 基于文件下载的内容分发网络调度方法和*** | |
CN110048927B (zh) | 通信方法和通信装置 | |
Cardellini et al. | Redirection algorithms for load sharing in distributed Web-server systems | |
CN103069406B (zh) | 对于多个客户机管理流媒体带宽 | |
US20150317583A1 (en) | Business Scheduling Method and Apparatus and Convergence Device | |
US20020038330A1 (en) | Method for economically sub-optimizing interactions in data communications network environments, and a device according to the method | |
CN100391178C (zh) | 一种在网络中选择服务器的方法 | |
CN104488231A (zh) | 利用按照需求的装置的实时网络监视和订户标识 | |
CN104754640B (zh) | 一种网络资源调度方法及网络资源管理服务器 | |
CN101710905A (zh) | 一种基于策略的地址解析控制方法与*** | |
CN101431532A (zh) | 一种内容路由方法、负载均衡设备和资源管理设备 | |
CN101322363A (zh) | 业务网络内提供端到端服务质量保证的装置和方法 | |
CN101217483A (zh) | 用于实现集群服务器内负载分担代理的方法 | |
CA2355462A1 (en) | A method and apparatus for supporting a multicast response to a unicast request for a document | |
CN102891804A (zh) | 控制策略的调整方法及*** | |
CN102780610B (zh) | 网关QoS保障方法及分组交换网络*** | |
CN101960780A (zh) | 利用应用感知监控服务的端到端qoe的入站机制 | |
CN108111558A (zh) | 一种高速报文处理方法、装置及*** | |
CN101980505A (zh) | 一种基于3Tnet的视频点播的负载均衡方法 | |
CN106331129A (zh) | 一种负载均衡装置及其实现负载均衡的方法 | |
CN109981795A (zh) | 资源请求调度方法和装置 | |
CN101686170B (zh) | 基于多出口用户路由的分级传输品质保障*** | |
CN103685344A (zh) | 一种用于多p2p缓存节点的协同方法和*** | |
WO2008151491A1 (fr) | Un système réseau p2p et son procédé d'application | |
JP3964751B2 (ja) | ネットワーク品質推定制御方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C53 | Correction of patent of invention or patent application | ||
CB03 | Change of inventor or designer information |
Inventor after: Hong Ke Inventor after: Chen Yuhui Inventor after: Niu Rongli Inventor before: Hong Ke Inventor before: Chen Yuhui Inventor before: Niu Rongli |
|
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110518 |