CN102523231A - 一种基于dns解析的流量调度方法、装置及服务器 - Google Patents

一种基于dns解析的流量调度方法、装置及服务器 Download PDF

Info

Publication number
CN102523231A
CN102523231A CN2011104450475A CN201110445047A CN102523231A CN 102523231 A CN102523231 A CN 102523231A CN 2011104450475 A CN2011104450475 A CN 2011104450475A CN 201110445047 A CN201110445047 A CN 201110445047A CN 102523231 A CN102523231 A CN 102523231A
Authority
CN
China
Prior art keywords
content server
domain name
server
selection
content
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
Application number
CN2011104450475A
Other languages
English (en)
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.)
Beijing Blue It Technologies Co ltd
Original Assignee
Beijing Blue It Technologies 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 Beijing Blue It Technologies Co ltd filed Critical Beijing Blue It Technologies Co ltd
Priority to CN2011104450475A priority Critical patent/CN102523231A/zh
Publication of CN102523231A publication Critical patent/CN102523231A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本发明涉及互联网通信技术领域,公开了一种基于DNS解析的流量调度方法、装置及服务器,该方法赋予DNS动态调节流量的能力,使动态负载均衡成为可能,设置得当,可以提高服务质量;提高带宽利用率;提高服务器的利用率,减少服务器使用数量。本发明的方法包括:接收域名解析请求并获得域名;从该域名对应的多个内容服务器中选择一个内容服务器,使得选择后该多个内容服务器之间的选择次数基本满足设定比例;将选择的内容服务器返回给域名解析请求者。

Description

一种基于DNS解析的流量调度方法、装置及服务器
技术领域
本发明涉及互联网通信技术领域,特别涉及一种基于DNS解析的流量调度方法。
背景技术
在互联网中,一个内容服务往往由多个分布式的内容服务器提供。这些内容服务器具有相同的域名,但是具有不同的IP地址。为了有效的利用所有的内容服务器的资源,需要将所有对该内容的访问请求均衡的调度到这些内容服务器上。现有技术中主要采用基于DNS(域名系统)解析的流量调度方法,具体过程如下:
1.本地DNS接收客户端的请求,向权威域名服务器发送域名解析请求;
2.权威域名服务器将该域名对应的IP地址采用等比例返回给本地DNS;
3.本地DNS将IP地址再返回给客户端,客户端根据返回的IP地址向对应的内容服务器发送内容访问请求。
从上述调度过程可以看出,现有技术基于DNS解析进行流量调度时,采用的是简单的轮循调度算法,将访问请求均匀的调度到各个内容服务器上,各个内容服务器对流量进行等比例分配。这种调度算法的缺点是很明显的:
1.不能区分内容服务器的性能差异。各个内容服务器的处理性能,甚至网络带宽都有可能不一样,如果要保证每个服务器都能处理分配给他的流量,则采用等比例分配时只能按照性能最差的服务器分配流量,这将导致性能较好的服务器的利用率低下。
2.不能反映服务器的当前运行状态。有些客户端可以自主选择内容服务器,这样将导致这部分客户端的流量不被调度系统控制。如果DNS负载均衡调度系统将其他流量平均分配到各个内容服务器,这对于这部分自主选择内容服务器的请求所访问的内容服务器,其负载可能远大于其他服务器。
从上述两个缺点都可以看出,现有基于DNS负载均衡技术中的轮询调度算法要么不能有效的保证各个内容服务器的负载均衡,要么内容服务器的利用率低下。
发明内容
本发明提供一种基于DNS解析的流量调度的方法,能够同时保证各个内容服务器的负载均衡,同时提高内容服务器的利用率。
一种基于DNS解析的流量调度方法,包括:
接收域名解析请求并获得域名;
从该域名对应的多个内容服务器中选择一个内容服务器,使得选择后该多个内容服务器之间的选择次数基本满足设定比例;
将选择的内容服务器返回给域名解析请求者。
一种基于DNS解析的流量调度装置,包括:
接收模块,用于接收域名解析请求并获得域名;
选择模块,用于从该域名对应的多个内容服务器中选择一个内容服务器,使得选择后该多个内容服务器之间的选择次数基本满足设定比例;
发送模块,用于将选择的内容服务器返回给域名解析请求者。
本发明实施例中,在DNS解析调度方法基础上,通过按设定的比例将流量调度到多个内容服务器,这样就能根据内容服务器的性能以及运行状态动态调整分配到各个内容服务器的流量,能够保证各个内容服务器的负载均衡,同时提高内容服务器的利用率,使动态负载均衡成为可能,设置得当,可以提高服务质量;提高带宽利用率;提高服务器的利用率,减少服务器使用数量。
附图说明
图1为本发明实施例提供的基于DNS解析的流量调度方法流程图;
图2为本发明实施例一提供的按照设定比例选择内容服务器的具体方法流程图;
图3为本发明实施例二提供的按照设定比例选择内容服务器的具体方法流程图;
图4为本发明实施例三提供的第一种按照设定比例选择内容服务器的具体方法流程图;
图5为本发明实施例三提供的第二种按照设定比例选择内容服务器的具体方法流程图;
图6为为按比例分配的直线图;
图7为本发明实施例四提供的按照设定比例选择内容服务器的具体方法流程图;
图8为本发明实施例提供的基于DNS解析的流量调度装置结构图。
具体实施方式
本发明实施例提供了一种基于DNS解析的流量调度的方法,通过按设定的比例将流量调度到各内容服务器,能够解决现有技术中基于DNS解析的流量调度不能区分不同内容服务器的性能差别导致性能较好的服务器利用率低下的问题,以及一些不受DNS解析调度的流量带来的内容服务器负载不均衡的问题,使得各个内容服务器的负载均衡,同时提高内容服务器的利用率。
本发明实施例提供的基于DNS解析的流量调度的方法,如图1所示,包括:
S101、接收域名解析请求并获得域名;
其中,权威域名服务器接收域名解析请求者发送的域名解析请求,具体地,域名解析请求者一般是本地LDNS,或者客户端。域名解析请求中携带需要解析的域名。
S102、根据设定比例选择一个该域名对应的内容服务器,也就是从该域名对应的多个内容服务器中选择一个内容服务器,使得选择后该多个内容服务器之间的选择次数满足设定比例;
基本满足设定比例,是指在每次选择后,多个服务器之间的选择次数可能不是精确的满足设定比例,但会一直接近设定比例。
权威域名服务器根据预先设定比例选择一个该域名对应的内容服务器,例如:如果内容服务器1和内容服务器2之间的设定比例为5∶2,则选择内容服务器时,权威域名服务器在接收到域名解析请求时,会5次选择内容服务器1,2次选择内容服务器2。
S103、将选择的内容服务器返回给域名解析请求者。
较佳地,权威域名服务器将选择的内容服务器的IP地址返回给域名解析请求者。
较佳地,步骤S102中,预先设定的比例是根据各内容服务器的可用流量设定,并且在进行域名解析的过程中可以动态调整。在进行域名解析的过程中,权威域名服务器可以根据当前各内容服务器的可用流量进行动态调整。
采用上述方法,能够同时保证各个内容服务器的负载均衡,同时提高内容服务器的利用率。使得权威域名服务器能够基于DNS的解析对各内容服务器的流量具有灵活的调控能力,最大限度利用规格不同内容服务器,和大小不等的网络带宽能力。
下面详细说明步骤S102中选择内容服务器的具体方法。
实施例一是采用均匀分布函数,使得各内容服务器之间的选择次数基本满足设定比例;实施例二、实施例三分别以随机函数和散列函数为例进行说明;实施例四是采用线性的方法使得各内容服务器之间的选择次数基本满足设定比例。
实施例一
实施例一采用均匀分布函数选择内容服务器,使得各内容服务器之间的选择次数基本呈现比例关系,即能够按照设定比例提供域名解析。
参见图2,为实施例一提供的按照设定比例选择内容服务器的具体方法,包括:
S201、预先选定一个均匀分布函数;
其中,均匀分布函数的函数值是均匀分布的,假设函数值为1到K,也就是1到K值每个数出现概率都是1/K;
将均匀分布函数的所有函数值预先根据设定的比例对应到各内容服务器,即均匀分布函数的所有函数值中,对应到器服务器IP1、IP2......IPn的个数的比例为k1∶k2∶k3∶...kn
其中,均匀分布函数具体包括随机函数或者散列函数,也可以是其他函数,这里不再一一列举。
S202、利用设置的均匀分布函数,确定本次域名解析请求的函数值;
S203、确定该函数值对应的内容服务器,将该内容服务器作为本次域名解析请求的内容服务器。
其中,在步骤S201中,可以将均匀分布函数的函数值按照该设定比例k1∶k2∶k3∶...kn分布在N个比例集合Ci中,即各个比例集合中的函数值的个数比例为k1∶k2∶k3∶...kn,并且每个比例集合对应到相应比例的内容服务器;
则在步骤S203中,可以确定该函数值所属的比例集合,并将该比例集合对应的内容服务器作为本次域名解析请求选择的内容服务器。
实施例二
实施例二采用随机方法选择内容服务器。本方法主旨是在权威域名服务器中,按照设定比例提供域名解析,同时保证每次选择的内容服务器的IP地址都是不被预知的。
例如:对于域名xxx有n个内容服务器,其IP地址分别为:IP1,IP2,...IPn,设定的域名解析分配比例为k1∶k2∶k3∶...kn(也就是设定IP1、IP2、IP3、...IPn的流量调度比例为k1∶k2∶k3∶...kn);即在域名解析过程中,需要满足IP1,IP2,...IPn的分配比例为k1∶k2∶k3∶...kn
参见图3,为实施例二提供的按照设定比例选择内容服务器的具体方法,包括:
S301、预先选定一个随机函数,其中,选择的随机函数是一个均匀分布的随机函数,并且选择的随机函数至少有总的比例份数个随机值;
例如:假如设定比例为5∶2(0.5∶0.2),则随机函数至少由7个随机值,假设设定的比例为k1∶k2∶k3∶...kn,且k1、k2、k3、...kn为自然数,则总的比例份数为K=(k1+k2+k3+...+kn)。并且,一般设定的比例都可以转变为k1∶k2∶k3∶...kn,且k1、k2、k3、...kn为自然数这种表示方式,并确定其总的比例份数。
将随机函数的所有随机值预先根据设定的比例对应到各内容服务器,即随机函数的所有随机值中,对应到器服务器IP1、IP2......IPn的个数的比例为k1∶k2∶k3∶...kn
S302、利用随机函数确定本次域名解析请求的随机值;
S303、确定该随机值对应的内容服务器,将该内容服务器作为本次域名解析请求选择的内容服务器。
其中,在步骤S301中,可以将随机函数的随机值按照该设定比例k1∶k2∶k3∶...kn分布在N个比例集合Ci中,即各个比例集合中的随机值的个数比例为k1∶k2∶k3∶...kn,并且每个比例集合对应到相应比例的内容服务器;
则在步骤S203中,可以确定该随机值所属的比例集合,并将该比例集合对应的内容服务器作为本次域名解析请求选择的内容服务器。
采用本实施例二的方法,因为随机函数是均匀分布的,并且随机值按设定的比例对应到各内容服务器,因此在访问量大的情况下,根据每次域名解析请求的随机值选择内容服务器,能够尽可能使得各内容服务器之间的选择次数基本满足设定比例,也就是各内容服务器能够按照设定的比例进行流量分配。
并且,由于采用的随机函数,随机函数每次输出的数值并不可知,也就是每次选择的内容服务器并不可以提前预知,能够尽可能避免干扰引起的流量不均,保证内容服务器的服务安全。
下面再以一个具体的例子详细说明实施例二的方法。
步骤1、初始化K=(k1+k2+k3+...+kn),其中k1∶k2∶k3∶...kn为设定IP1、IP2、IP3、...IPn的流量调度比例;
假设k1∶k2∶k3∶...kn为自然数,K为自然数;
2、预先初始化一个均匀分布的随机函数random(K),且该函数按照均匀分布输出随机值为1到K的自然数;
3、将随机值1到K的自然数划分为n个集合C1、C2、C3...Cn,其中[1,k1]属于C1,[ki-1+1,ki]属于Ci
其中,集合C1、C2、C3...Cn分别对应到内容服务器IP1、IP2......IPn
当然,划分的时候也可以采用其他的划分方法,只要保证C1、C2、C3...Cn集合中元素个数的比例为k1∶k2∶k3∶...kn即可。
上述步骤为预先初始化过程,在每次接收到域名解析请求并分配IP地址时,只需要执行以下过程即可:
4、利用随机函数random(K),输出本次域名解析请求的随机值R,其中,1≤R≤K;
5、确定R所在的集合Ci,并输出IPi作为本次选择的内容服务器的IP地址。
实施例三
实施例三采用哈希方法选择内容服务器,本实施例的主旨是利用散列函数在权威域名服务器中,按照设定的比例提供域名解析,同时保证各解析请求者获得的IP地址是稳定的。
利用哈希方法解析域名的流量调度方法,一般有两种:基于源地址的哈希方法,和基于域名的哈希方法。
方法一、基于源地址的哈希方法
参见图4,为实施例三提供的第一种采用哈希方法选择内容服务器的具体方法,包括:
S401、预先选定一个散列函数,其中,散列函数根据输入的源地址输出散列值,并且散列函数的散列值预先按设定比例对应到各内容服务器;
将散列函数的所有散列值预先根据设定的比例对应到各内容服务器,即散列函数的所有散列值中,对应到器服务器IP1、IP2......IPn的个数的比例为k1∶k2∶k3∶...kn
S402、确定发送所述域名解析请求的源地址;
S403、根据该源地址,利用选定的散列函数确定该源地址对应的散列值;
S404、将该散列值对应的内容服务器作为本次域名解析请求选择的内容服务器。
在步骤S401中,可以将散列函数的散列值预先按照该设定比例k1∶k2∶k3∶...kn分布在N个比例集合Ci中,即各个比例集合中的散列值的个数比例为k1∶k2∶k3∶...kn,并且每个比例集合对应到相应比例的内容服务器;
则在步骤S404中,可以确定该散列值所属的比例集合,并将该比例集合对应的内容服务器作为本次域名解析请求选择的内容服务器。
下面再以一个具体的例子详细说明本实施例三的方法一。
步骤1、初始化K=(k1+k2+k3+...+kn),其中k1∶k2∶k3∶...kn为设定IP1、IP2、IP3、...IPn的流量调度比例;
假设k1∶k2∶k3∶...kn为自然数,K为自然数;
步骤2、预先初始化一个散列函数hash(K,IP),其中,该函数根据DNS请求者的源地址输出散列值为1到K的自然数;
步骤3、将散列值1到K的自然数划分为n个集合C1、C2、C3...Cn,其中[1,k1]属于C1,[ki-1+1,ki]属于Ci
其中,集合C1、C2、C3...Cn分别对应到内容服务器IP1、IP2......IPn
当然,划分的时候也可以采用其他的划分方法,只要保证C1、C2、C3...Cn集合中元素个数的比例为k1∶k2∶k3∶...kn即可。
上述步骤为预先初始化过程,在每次接收到域名解析请求并分配IP地址时,只需要执行以下过程即可:
步骤4、接收到域名解析请求时,确定发送该请求的源地址;
步骤5、根据源地址,利用散列函数hash(K,IP),确定该源地址对应的散列值;
步骤6、确定该源地址对应的散列值所属的比例集合;
步骤7、将所属的比例集合对应的IP地址作为本次域名解析请求的IP地址返回给域名请求者。
采用上述方法一,因为将散列函数的散列值预先按照设定的比例对应到各内容服务器,因此,在接收到大量用户的域名解析请求时,能够尽可能使得各内容服务器之间的选择次数基本满足设定比例,也就是能够保证权威域名服务器能够对各内容服务器按照设定比例进行流量调度。
同时,因为根据域名解析请求的源地址确定散列值,能够保证相同源地址获得的内容服务器相同,并且对各内容服务器来说,其面对的客户群是稳定的,因此,各内容服务器的流量稳定。
方法二、基于域名的哈希方法
参见图5,为实施例三提供的第二种按照哈希方法选择内容服务器的具体方法,包括:
S501、预先选定一个散列函数,其中,该散列函数根据域名输出散列值,并且散列函数的散列值预先按设定比例对应到各内容服务器;
将散列函数根据域名输出的所有散列值预先根据设定的比例对应到各内容服务器,即散列函数的所有散列值中,对应到器服务器IP1、IP2......IPn的个数的比例为k1∶k2∶k3∶...kn
S502、确定所述域名解析请求对应的域名;
S503、根据该域名,利用选定的散列函数确定该域名对应的散列值;
S504、将该散列值对应的内容服务器作为本次域名解析请求选择的内容服务器。
在步骤S501中,可以将该散列函数的散列值预先按照设定比例k1∶k2∶k3∶...kn分布在N个比例集合Ci中,即各个比例集合中的散列值的个数比例为k1∶k2∶k3∶...kn,并且每个比例集合对应到相应比例的内容服务器;
则在步骤S604中,可以确定该散列值所属的比例集合,并将该比例集合对应的内容服务器作为本次域名解析请求选择的内容服务器。
下面再以一个具体的例子详细说明本实施例三的方法二。
步骤1、初始化K=(k1+k2+k3+...+kn),其中k1∶k2∶k3∶...kn为设定IP1、IP2、IP3、...IPn的流量调度比例;
假设k1∶k2∶k3∶...kn为自然数,K为自然数;
步骤2、预先初始化一个散列函数hash(K,DOMAIN),其中,该函数根据域名DOMAIN输出散列值为1到K的自然数;
步骤3、将散列值为1到K的自然数划分为n个比例集合C1、C2、C3...Cn,其中[1,k1]属于C1,[ki-1+1,ki]属于Ci
其中,集合C1、C2、C3...Cn分别对应到内容服务器IP1、IP2......IPn
当然,划分的时候也可以采用其他的划分方法,只要保证C1、C2、C3...Cn集合中元素个数的比例为k1∶k2∶k3∶...kn即可。
上述步骤为预先初始化过程,在每次接收到域名解析请求并分配IP地址时,只需要执行以下过程即可:
步骤4、接收到域名解析请求时,确定该域名解析请求对应的域名;
步骤5、根据该域名,利用选定的散列函数hash(K,DOMAIN),确定该域名对应的散列值;
步骤6、确定该散列值所属的比例集合;
步骤7、将该比例集合对应的IP地址作为本次域名解析请求的IP地址返回给域名解析请求者。
采用上述方法二,因为将散列函数的散列值预先按照设定的比例对应到各内容服务器,因此,在接收到对大批量域名的域名解析请求时,能够尽可能使得各内容服务器之间的选择次数满足设定比例,也就是能够保证权威域名服务器能够对各内容服务器按照设定比例进行流量调度。
同时,因为根据域名解析请求的域名确定散列值,能够保证相同域名内容对应的内容服务器相同,因此,可以对内容服务器的处理内容进行分类,可以保证每台内容服务器处理内容少而稳定。
本发明实施例的上述方法一般应用在权威域名服务器中,用于根据上述方法分配域名解析结果,但本发明的方法并不限用于权威域名服务器中,可以用于任何域名解析服务器中,均能够根据上述方法进行域名解析分配。
实施例四、
实施例四采用线性算法选择内容服务器。本方法的主旨是在每次选择的过程中都尽可能均匀地按照设定比例提供域名解析,分配内容服务器。
为了便于理解,举例设定IP1和IP2的比例为5∶2;如图6所示,为按比例分配的直线图;如果在绝对按比例分配的情况下,每次选择IP地址后,IP1和IP2的输出比例应该沿图中的直线向给出,但解析时每次只能给出一个IP地址,因此,IP1和IP2的输出次数必须以整数次形式出现,因此,必然要偏离理想比例直线,采用本实施例的方法,就可以使偏差最小。在本实施例中采用线性算法能够使得每次选择后各内容服务器之间的选择次数都尽可能接近设定的比例。
对于域名xxx有n个内容服务器,IP1,IP2,...IPn,设定的域名解析分配比例为k1∶k2∶k3∶...kn(也就是设定IP1、IP2、IP3、...IPn的流量调度比例为k1∶k2∶k3∶...kn);,即在K=(k1+k2+k3+...+kn)次域名解析请求中,IP1提供k1次,IP2提供k2次,...,IPn提供kn次,采用实施例四的方法,能够使得每次选择内容服务器的IP地址后,各内容服务器之间的选择次数都能够尽可能接近设定的比例,使得各内容服务器之间的选择次数和设定比例之间的误差最小。
采用线性方法从该域名对应的多个内容服务器选择一个内容服务器,使得选择后该多个内容服务器之间的选择次数基本满足设定比例,具体为:
接收域名解析请求并获得域名;
确定本次解析请求时每个内容服务器的当前选择比例和设定的选择概率的误差,根据该误差选择一个该域名对应的内容服务器,每个内容服务器的当前选择比例具体为:每个内容服务器的当前选择次数和总选择次数的比例;
将选择的内容服务器返回给域名解析请求者。
其中确定本次解析请求时每个内容服务器的当前选择比例和设定的选择概率的误差,根据该误差选择一个该域名对应的内容服务器,具体参见图7,为实施例四提供的按照设定比例选择内容服务器的具体方法,包括:
S701、初始设定各内容服务器对应的选择概率以及误差;
其中,各内容服务器设定的选择概率表示为:di=ki/K,各服务器的误差(即实际输出比例和设定的比例的误差)表示在域名解析过程中,各服务器的选择次数比例偏离设定的选择概率的误差,误差的初始值为0;
其中各内容服务器的选择概率为di=ki/K,K=k1+k2+k3+...+kn,其中k1∶k2∶k3∶...kn为各内容服务器对应的设定比例;
S702、根据该域名对应的各内容服务器的设定的选择概率以及上次解析请求后各内容服务器的误差确定本次选择时各内容服务器的当前误差;
本次选择时各内容服务器的当前误差Si(本)=Si(上)+di
S703、将当前误差中最大值对应的内容服务器选择作为本次域名解析请求的内容服务器,并选择的内容服务器的当前误差减1。
选择Si(本)中最大值对应的内容服务器,并返回给域名解析请求者,同时将选择的内容服务器的Si(本)更新为Si(本)减1。
其中,若步骤S703中确定的最大值为至少两个时,则对应的内容服务器为至少两个,可选择任意一个内容服务器的IP地址均可,并在步骤S703中将选择的内容服务器对应的误差减1进行更新。
下面再以一个具体的例子详细说明实施例四的方法。
步骤1、初始化K=(k1+k2+k3+...+kn),其中k1∶k2∶k3∶...kn为设定IP1、IP2、IP3、...IPn的流量调度比例;
步骤2、初始化选择每个内容服务器的IP地址对应的选择概率为di=ki/K;
步骤3、初始化选择每个内容服务器的IP地址对应的误差Si=0;
上述步骤为预先初始化过程,在每次接收到域名解析请求并选择IP地址时,只需要执行以下过程即可:
步骤4、确定每个内容服务器的IP地址对应的误差Si=Si+di
步骤5、接收到域名解析请求后,查找误差Si中最大值SK
步骤6、将最大值SK对应的内容服务器的IP地址IPK作为本次选择的内容服务器的IP地址,并返回给域名解析请求者。
步骤7:更新IPK地址的对应的误差Sk为Sk-1。
其中,在上述步骤4~步骤7中,若查找到的最大值为至少两个时,则选择任意一个最大值对应的IP地址均可,并在步骤7中将选择的IP地址对应的误差进行更新。
采用实施例四的方法,在每次接收到域名解析请求时,权威域名服务器均能够尽可能按照设定的比例分配该域名对应的内容服务器,使得各内容服务器的流量调度比例一直保持设定的比例。
并且,采用线性方法,每次接收到域名解析请求,进行解析分配IP地址时,因为在每个IP地址对应的误差中选取最大值对应的IP地址作为本次选择的IP地址,因此,能够保证每次选择IP地址后,各内容服务器之间的选择次数比例都尽可能精确接近设定的比例,不会造成流量较大的抖动。
采用本发明实施例的方法,能够在权威域名服务器中根据设定的比例输出各内容服务器,使得DNS具有动态调节流量的能力,使动态负载均衡成为可能,并且当设置的比例合理时,可以提高服务质量,提高带宽利用率,提高服务器的利用率,减少服务器使用数量。
本发明实施例还提供一种基于DNS解析的流量调度装置,如图8所示,包括:
接收模块81,用于接收域名解析请求并获得域名;
选择模块82,用于从该域名对应的多个内容服务器中选择一个内容服务器,使得选择后该多个内容服务器之间的选择次数基板满足设定比例;
发送模块83,用于将选择的内容服务器返回给域名解析请求者。
其中,选择模块82选择模块具体用于利用设置的均匀分布函数,确定本次域名解析请求的函数值;确定该函数值对应的内容服务器,将该内容服务器作为本次域名解析请求的内容服务器,其中,所述均匀分布函数的所有函数值预先按设定比例对应到各内容服务器;或者
选择模块82,具体用于根据各内容服务器的设定的选择概率以及上次解析请求后各内容服务器的误差确定各内容服务器的当前误差,其中各内容服务器的输出概率为di=ki/K,K=k1+k2+k3+...+kn,其中k1∶k2∶k3∶...kn为各内容服务器对应的设定比例;将当前误差中最大值对应的内容服务器选择作为本次域名解析请求的内容服务器,并选择的内容服务器的当前误差减1。。
详细的流量调度过程参见方法实施例,这里不再详细描述。
本发明实施例还提供一种权威域名服务器,包括上述流量调度装置的所有模块。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (11)

1.一种基于域名系统DNS解析的流量调度方法,其特征在于,包括:
接收域名解析请求并获得域名;
从该域名对应的多个内容服务器中选择一个内容服务器,使得选择后该多个内容服务器之间的选择次数基本满足设定比例;
将选择的内容服务器返回给域名解析请求者。
2.如权利要求1所述的方法,其特征在于,所述从该域名对应的多个内容服务器选择一个内容服务器,使得选择后该多个内容服务器之间的选择次数基本满足设定比例,具体为:
利用设置的均匀分布函数,确定本次域名解析请求的函数值;
确定该函数值对应的内容服务器,将该内容服务器作为本次域名解析请求的内容服务器,其中,所述均匀分布函数的所有函数值预先按设定比例对应到该多个内容服务器。
3.如权利要求2所述的方法,其特征在于,所述均匀分布函数具体包括:随机函数、散列函数。
4.如权利要求3所述的方法,其特征在于,当所述均匀分布的函数为散列函数时,利用设置的均匀分布函数,确定本次域名解析请求的函数值,具体为:
确定发送所述域名解析请求的源地址;
利用散列函数确定该源地址对应的散列值。
5.如权利要求3所述的方法,其特征在于,当所述均匀分布的函数为散列函数时,利用设置的均匀分布函数,确定本次域名解析请求的函数值,具体为:
利用散列函数确定本次域名解析请求的域名对应的散列值。
6.如权利要求1所述的方法,其特征在于,所述从该域名对应的多个内容服务器选择一个内容服务器,使得选择后该多个内容服务器之间的选择次数基本满足设定比例,具体包括:
根据各内容服务器的设定的选择概率以及上次解析请求后各内容服务器的误差确定各内容服务器的当前误差,其中各内容服务器的设定的选择概率为di=ki/K,K=k1+k2+k3+...+kn,其中k1∶k2∶k3∶...kn为各内容服务器对应的设定比例;
将当前误差中最大值对应的内容服务器选择作为本次域名解析请求的内容服务器,并将选择的内容服务器的当前误差减1。
7.如权利要求1至6任一所述的方法,其特征在于,所述设定比例预先根据多个内容服务器的可用流量设定,并且可以动态调整。
8.如权利要求1至6任一所述的方法,其特征在于,所述将选择的内容服务器返回给域名解析请求者,具体为:
将选择的内容服务器的IP地址返回给域名解析请求者。
9.一种基于域名系统DNS解析的流量调度装置,其特征在于,包括:
接收模块,用于接收域名解析请求并获得域名;
选择模块,用于从该域名对应的多个内容服务器中选择一个内容服务器,使得选择后该多个内容服务器之间的选择次数基本满足设定比例;
发送模块,用于将选择的内容服务器返回给域名解析请求者。
10.如权利要求9所述的装置,其特征在于,所述选择模块具体用于利用设置的均匀分布函数,确定本次域名解析请求的函数值;确定该函数值对应的内容服务器,将该内容服务器作为本次域名解析请求的内容服务器,其中,所述均匀分布函数的所有函数值预先按设定比例对应到各内容服务器;或者
所述选择模块,具体用于根据各内容服务器的设定的选择概率以及上次解析请求后各内容服务器的误差确定各内容服务器的当前误差,其中各内容服务器的输出概率为di=ki/K,K=k1+k2+k3+...+kn,其中k1∶k2∶k3∶...kn为各内容服务器对应的设定比例;将当前误差中最大值对应的内容服务器选择作为本次域名解析请求的内容服务器,并将选择的内容服务器的当前误差减1。
11.一种权威域名服务器,其特征在于,包括权利要求9或10所述的流量调度装置。
CN2011104450475A 2011-12-27 2011-12-27 一种基于dns解析的流量调度方法、装置及服务器 Pending CN102523231A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011104450475A CN102523231A (zh) 2011-12-27 2011-12-27 一种基于dns解析的流量调度方法、装置及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011104450475A CN102523231A (zh) 2011-12-27 2011-12-27 一种基于dns解析的流量调度方法、装置及服务器

Publications (1)

Publication Number Publication Date
CN102523231A true CN102523231A (zh) 2012-06-27

Family

ID=46294023

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011104450475A Pending CN102523231A (zh) 2011-12-27 2011-12-27 一种基于dns解析的流量调度方法、装置及服务器

Country Status (1)

Country Link
CN (1) CN102523231A (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104092791A (zh) * 2014-07-11 2014-10-08 中国科学院声学研究所 一种综合质量与成本的互联网内容资源调度方法和系统
CN104104610A (zh) * 2013-04-09 2014-10-15 江苏天联信息科技发展有限公司 基于域名系统的流量调度方法、装置及域名系统
CN105515884A (zh) * 2014-09-24 2016-04-20 腾讯科技(深圳)有限公司 一种统计流量的方法和装置
CN105871748A (zh) * 2016-05-17 2016-08-17 上海域鸣网络科技有限公司 基于剩余带宽的多路dns动态分发方法
WO2017166524A1 (zh) * 2016-03-31 2017-10-05 乐视控股(北京)有限公司 域名解析方法及装置
CN108667658A (zh) * 2018-04-28 2018-10-16 厦门白山耘科技有限公司 一种带宽复用方法及装置
CN109257451A (zh) * 2017-07-14 2019-01-22 阿里巴巴集团控股有限公司 对应关系解析方法及设备
CN109936463A (zh) * 2017-12-15 2019-06-25 创盛视联数码科技(北京)有限公司 基于PowerDNS系统的流量调度方法
CN110061935A (zh) * 2019-03-13 2019-07-26 平安科技(深圳)有限公司 流量源配比调整方法、装置、计算机设备及存储介质
CN110086725A (zh) * 2019-03-13 2019-08-02 平安科技(深圳)有限公司 流量源配比调整方法、装置、计算机设备及存储介质
CN110401553A (zh) * 2018-04-25 2019-11-01 阿里巴巴集团控股有限公司 服务器配置的方法和装置
CN111787060A (zh) * 2020-05-28 2020-10-16 网宿科技股份有限公司 一种流量调度方法、系统及装置
CN114338705A (zh) * 2021-11-24 2022-04-12 阿里巴巴(中国)有限公司 内容分发网络cdn节点的资源水位控制方法、设备及介质
CN115665263A (zh) * 2022-10-19 2023-01-31 上海浦东发展银行股份有限公司 一种流量调拨方法、装置、服务器及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1450765A (zh) * 2002-03-05 2003-10-22 日本电气株式会社 服务器负载平衡系统、装置以及内容管理装置
WO2004072798A2 (en) * 2003-02-10 2004-08-26 Internap Network Services Corporation Methods and systems for providing dynamic domain name system for inbound route control
CN101800752A (zh) * 2010-03-11 2010-08-11 赵家祥 一种提高域名系统安全和性能的方法和系统
US20110153938A1 (en) * 2009-12-23 2011-06-23 Sergey Verzunov Systems and methods for managing static proximity in multi-core gslb appliance

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1450765A (zh) * 2002-03-05 2003-10-22 日本电气株式会社 服务器负载平衡系统、装置以及内容管理装置
WO2004072798A2 (en) * 2003-02-10 2004-08-26 Internap Network Services Corporation Methods and systems for providing dynamic domain name system for inbound route control
US20110153938A1 (en) * 2009-12-23 2011-06-23 Sergey Verzunov Systems and methods for managing static proximity in multi-core gslb appliance
CN101800752A (zh) * 2010-03-11 2010-08-11 赵家祥 一种提高域名系统安全和性能的方法和系统

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104104610A (zh) * 2013-04-09 2014-10-15 江苏天联信息科技发展有限公司 基于域名系统的流量调度方法、装置及域名系统
CN104092791B (zh) * 2014-07-11 2017-07-28 中国科学院声学研究所 一种综合质量与成本的互联网内容资源调度方法和系统
CN104092791A (zh) * 2014-07-11 2014-10-08 中国科学院声学研究所 一种综合质量与成本的互联网内容资源调度方法和系统
CN105515884B (zh) * 2014-09-24 2019-01-22 腾讯科技(深圳)有限公司 一种统计流量的方法和装置
CN105515884A (zh) * 2014-09-24 2016-04-20 腾讯科技(深圳)有限公司 一种统计流量的方法和装置
WO2017166524A1 (zh) * 2016-03-31 2017-10-05 乐视控股(北京)有限公司 域名解析方法及装置
CN105871748A (zh) * 2016-05-17 2016-08-17 上海域鸣网络科技有限公司 基于剩余带宽的多路dns动态分发方法
CN109257451A (zh) * 2017-07-14 2019-01-22 阿里巴巴集团控股有限公司 对应关系解析方法及设备
CN109936463B (zh) * 2017-12-15 2021-06-25 创盛视联数码科技(北京)有限公司 基于PowerDNS系统的流量调度方法
CN109936463A (zh) * 2017-12-15 2019-06-25 创盛视联数码科技(北京)有限公司 基于PowerDNS系统的流量调度方法
US11431669B2 (en) 2018-04-25 2022-08-30 Alibaba Group Holding Limited Server configuration method and apparatus
CN110401553A (zh) * 2018-04-25 2019-11-01 阿里巴巴集团控股有限公司 服务器配置的方法和装置
CN110401553B (zh) * 2018-04-25 2022-06-03 阿里巴巴集团控股有限公司 服务器配置的方法和装置
CN108667658A (zh) * 2018-04-28 2018-10-16 厦门白山耘科技有限公司 一种带宽复用方法及装置
CN110086725A (zh) * 2019-03-13 2019-08-02 平安科技(深圳)有限公司 流量源配比调整方法、装置、计算机设备及存储介质
WO2020181821A1 (zh) * 2019-03-13 2020-09-17 平安科技(深圳)有限公司 流量源配比调整方法、装置、计算机设备及存储介质
CN110061935A (zh) * 2019-03-13 2019-07-26 平安科技(深圳)有限公司 流量源配比调整方法、装置、计算机设备及存储介质
CN110086725B (zh) * 2019-03-13 2022-11-11 平安科技(深圳)有限公司 流量源配比调整方法、装置、计算机设备及存储介质
CN111787060A (zh) * 2020-05-28 2020-10-16 网宿科技股份有限公司 一种流量调度方法、系统及装置
CN114338705A (zh) * 2021-11-24 2022-04-12 阿里巴巴(中国)有限公司 内容分发网络cdn节点的资源水位控制方法、设备及介质
CN114338705B (zh) * 2021-11-24 2023-12-01 阿里巴巴(中国)有限公司 内容分发网络cdn节点的资源水位控制方法、设备及介质
CN115665263A (zh) * 2022-10-19 2023-01-31 上海浦东发展银行股份有限公司 一种流量调拨方法、装置、服务器及存储介质

Similar Documents

Publication Publication Date Title
CN102523231A (zh) 一种基于dns解析的流量调度方法、装置及服务器
US10440104B2 (en) Load balancing with layered edge servers
CN109547517B (zh) 一种带宽资源调度方法和装置
US9116752B1 (en) Systems, methods, devices and arrangements for server load distribution
CN105872079B (zh) 一种基于域名系统dns的链路均衡方法
CN103391299A (zh) 负载均衡方法和负载均衡系统
CN109274707A (zh) 一种负载调度方法及装置
CN107026907A (zh) 一种负载均衡方法、负载均衡器及负载均衡系统
FI20176152A1 (fi) Menetelmä, järjestelmä ja tietokoneohjelmatuote OPC UA palvelinkapasiteetin hallintaan
CN103701916A (zh) 分布式存储系统的动态负载均衡方法
CN109672711B (zh) 一种基于反向代理服务器Nginx的http请求处理方法及系统
CN101951411A (zh) 云调度系统及方法以及多级云调度系统
CN108124020B (zh) 域名解析方法、系统及设备
CN107105013B (zh) 文件的处理方法、服务器、终端和系统
JP2005182641A (ja) 動的負荷分散システム及び動的負荷分散方法
CN103501358A (zh) 一种域名托管管理方法及装置
CN108737591B (zh) 一种服务配置的方法及装置
CN108667882A (zh) 基于动态权重调整的负载均衡方法、装置和电子设备
US20040193716A1 (en) Client distribution through selective address resolution protocol reply
CN101355521B (zh) 负载均衡控制方法、通信装置与通信系统
CN105516264A (zh) 分布式集群系统下的session共享方法、装置及系统
CN103685056A (zh) 负载均衡方法及其系统
KR20220000592A (ko) 사물인터넷 엣지 컴퓨팅 환경을 위한 컨테이너 기반 동적 자원 분배 방법 및 장치
CN103595736A (zh) 视频监控系统中的访问请求处理方法和装置
CN104219325A (zh) 一种soa负载均衡装置及应用该装置的路由算法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20120627