一种域名系统dns服务器选择方法及装置制造方法
【专利摘要】本发明公开了一种域名系统DNS服务器选择方法及装置。一种域名系统DNS服务器选择方法,包括:接收用户输入的域名;查找预先保存的DNS列表,其中,DNS为域名系统,所述DNS列表包括至少一个DNS服务器,以及每个DNS服务器对应的平均访问时间;根据所述DNS列表中包含的每个DNS服务器的平均访问时间,选择平均访问时间最短的DNS服务器对所述用户输入的域名进行解析。一种域名系统DNS服务器选择装置,包括:接收模块、查找模块和选择模块。用户可以通过上述方法,选择平均访问时间最小的DNS服务器,以更好的进行网络活动。
【专利说明】—种域名系统DNS服务器选择方法及装置
【技术领域】
[0001]本发明涉及网络技术,特别涉及一种域名系统DNS服务器选择方法及装置。
【背景技术】
[0002]随着科学技术的发展,互联网在人们的生活中扮演着越来越重要的角色。互联网覆盖范围的扩大,让人们能随时随地进行网络活动。用户需要通过ISP(Internet ServiceProvider, Internet服务供应商)才能接入互联网。
[0003]每当用户访问一个网站,用户终端(比如电脑)都会发起DNS(Domain NameSystem,域名系统)请求来解析域名,DNS服务器解析域名之后会返回与域名对应的IP地址。
[0004]对于同一个网站,不同的DNS服务器可能会给用户终端返回不同的IP(InternetProtocoI,网际协议)地址,对于不同的IP地址,用户终端通过不同的IP地址访问网站,访问速度存在很大的差异。尤其是当用户终端与网站服务器存在于不同的ISP网络之中时,例如,用户终端处于电信网络内,但网站服务器处于联通网络内,相比起用户终端与网站服务器都处于电信网络内的情况,用户访问网站的速度会较慢。因此,可以通过选择合适的DNS服务器,使用户能更加顺畅地访问网站。
[0005]但是目前还没有一种方案,可以帮助用户选择对自己来说更为合适的DNS服务器。
【发明内容】
[0006]为了解决上述问题,本发明提供了一种域名系统DNS服务器选择方法及装置,以使用户能够选择出合适的DNS服务器进行网络活动。
[0007]一种域名系统DNS服务器选择方法,包括:
[0008]接收用户输入的域名;
[0009]查找预先保存的DNS列表,其中,所述DNS列表包括至少一个DNS服务器,以及每个DNS服务器对应的平均访问时间;
[0010]根据所述DNS列表中包含的每个DNS服务器的平均访问时间,选择平均访问时间最短的DNS服务器对所述用户输入的域名进行解析。
[0011]所述每个DNS服务器对应的平均访问时间采用以下方法计算得到:
[0012]通过所述DNS列表中的DNS服务器对至少一个指定域名进行解析,得到所述至少一个指定域名对应的IP地址,并计算得到所述DNS服务器对所述至少一个指定域名进行解析所花费的平均时间;
[0013]根据所述至少一个指定域名对应的IP地址,与所述至少一个指定域名对应的网站服务器进行连接,并计算得到用户终端连接所述至少一个指定域名对应的网站服务器所花费的平均时间;
[0014]根据所述DNS服务器对所述至少一个指定域名进行解析所花费的平均时间,以及所述用户终端连接所述至少一个指定域名对应的网站服务器所花费的平均时间,计算所述DNS服务器的平均访问时间。
[0015]所述DNS服务器对所述至少一个指定域名进行解析所花费的平均时间采用以下公式计算得到:
【权利要求】
1.一种域名系统DNS服务器选择方法,其特征在于,包括: 接收用户输入的域名; 查找预先保存的DNS列表,其中,所述DNS列表包括至少一个DNS服务器,以及每个DNS服务器对应的平均访问时间; 根据所述DNS列表中包含的每个DNS服务器的平均访问时间,选择平均访问时间最短的DNS服务器对所述用户输入的域名进行解析。
2.如权利要求1所述的方法,其特征在于,所述每个DNS服务器对应的平均访问时间采用以下方法计算得到: 通过所述DNS列表中的DNS服务器对至少一个指定域名进行解析,得到所述至少一个指定域名对应的IP地址,并计算得到所述DNS服务器对所述至少一个指定域名进行解析所花费的平均时间; 根据所述至少一个指定域名对应的IP地址,与所述至少一个指定域名对应的网站服务器进行连接,并计算得到用户终端连接所述至少一个指定域名对应的网站服务器所花费的平均时间; 根据所述DNS服务器对所述至少一个指定域名进行解析所花费的平均时间,以及所述用户终端连接所述至少一个指定域名对应的网站服务器所花费的平均时间,计算所述DNS服务器的平均访问时间。
3.如权利要求2所 述的方法,其特征在于,所述DNS服务器对所述至少一个指定域名进行解析所花费的平均时间采用以下公式计算得到:
td = —" w — sum) * id — i
η 其中,td_i为所述DNS服务器对第i个指定域名进行解析所花费的时间,w_i为所述第i个指定域名的权重值,w_sum为所有指定域名的权重值之和,i = 1,2,……,η,η为所有指定域名的数量。
4.如权利要求2或3所述的方法,其特征在于,所述用户终端连接所述至少一个指定域名对应的网站服务器所花费的平均时间采用以下公式计算得到:
Ih = V (H’ _ i / Vi' _ sum) * Ihi
η 其中,th_i为用户终端连接第i个指定域名对应的网站服务器所花费的时间,w_i为所述第i个指定域名对应的网站服务器的权重值,w_sum为所有指定域名对应的网站服务器的权重值之和,i = 1,2,……,η, η为所有指定域名对应的网站服务器的数量。
5.如权利要求2-4中任一项所述的方法,其特征在于,所述DNS服务器的平均访问时间采用以下公式计算得到:
result = (td *kl)nsWeight) + ih ?:5( 1- kDnsWeight) 其中,3为所述DNS服务器对所述至少一个指定域名进行解析所花费的平均时间,巧为所述用户终端连接所述至少一个指定域名对应的网站服务器所花费的平均时间,kDnsffeight为td的权重值。
6.如权利要求2所述的方法,其特征在于,所述DNS服务器对所述至少一个指定域名进行解析所花费的平均时间采用以下公式计算得到;
7.如权利要求2或6所述的方法,其特征在于,所述DNS服务器对所述至少一个指定域名进行解析所花费的平均时间采用以下公式计算得到:
8.如权利要求2或6或7所述的方法,其特征在于,所述DNS服务器的平均访问时间采用以下公式计算得到:
9.如权利要求8所述的方法,其特征在于,所述线路延迟时间采用以下公式计算得到:
dns_penalty_t = kPenaltyFactor*(pow(kPenaltyBase, penalty_exponent)-1) 其中,kPenaltyFactor 为延迟因子,kPenaltyBase 为延迟基数,penalty_exponent为 DNS 服务器的失败率与 100 的乘积,pow (kPenaltyBase, penalty_exponent)为kPenaltyBase 的 penalty_exponent 次方。
10.如权利要求9所述的方法,其特征在于,所述的DNS服务器的失败率,是用户终端通过该DNS服务器,对所述至少一个指定域名对应的网站服务器连接失败的次数与所有指定域名对应的网站服务器数目的比值。
11.一种域名系统DNS服务器选择装置,其特征在于,包括:接收模块、查找模块和选择模块,其中, 所述接收模块,用于接收用户输入的域名; 所述查找模块,用于查找预先保存的DNS列表,其中,所述DNS列表包括至少一个DNS服务器,以及每个DNS服务器对应的平均访问时间; 所述选择模块,用于根据所述DNS列表中包含的每个DNS服务器的平均访问时间,选择平均访问时间最短的DNS服务器对所述用户输入的域名进行解析。
12.如权利要求11所述的装置,其特征在于,该装置还包括:第一计算模块、第二计算模块和第三计算模块,其中,所述第一计算模块,用于通过DNS服务器列表中的DNS服务器对至少一个指定域名进行解析,得到所述至少一个指定域名对应的IP地址,并计算得到所述DNS服务器对所述至少一个指定域名进行解析所花费的平均时间; 所述第二计算模块,用于根据所述至少一个指定域名对应的IP地址,与所述至少一个指定域名对应的网站服务器进行连接,并计算得到用户终端连接所述至少一个指定域名对应的网站服务器所花费的平均时间; 所述第三计算模块,用于根据所述DNS服务器对所述至少一个指定域名进行解析所花费的平均时间,以及所述用户终端连接所述至少一个指定域名对应的网站服务器所花费的平均时间,计算所述DNS服务器的平均访问时间。
13.如权利要求12所述的装置,其特征在于,所述第一计算模块采用以下公式计算得到所述DNS服务器对所述至少一个指定域名进行解析所花费的平均时间:
14.如权利要求12或13所述的装置,其特征在于,所述第二计算模块采用以下公式计算得到所述用户终端连接所述至少一个指定域名对应的网站服务器所花费的平均时间:
15.如权利要求12-14中任一项所述的装置,其特征在于,所述第三计算模块采用以下公式计算得到所述DNS服务器的平均访问时间:
16.如权利要求12所述的装置,其特征在于,所述第一计算模块采用以下公式计算得到所述DNS服务器对所述至少一个指定域名进行解析所花费的平均时间;
17.如权利要求12或16所述的装置,其特征在于,所述第二计算模块采用以下公式计算得到所述DNS服务器对所述至少一个指定域名进行解析所花费的平均时间:
18.如权利要求12或16或17所述的装置,其特征在于,所述第三计算模块采用以下公式计算得到所述DNS服务器对所述至少一个指定域名进行解析所花费的平均时间:
19.如权利要求18所述的装置,其特征在于,所述第三计算模块采用以下公式计算得到所述线路延迟时间:
dns_penalty_t = kPenaltyFactor*(pow(kPenaltyBase, penalty_exponent)-1) 其中,kPenaltyFactor 为延迟因子,kPenaltyBase 为延迟基数,penalty_exponent为 DNS 服务器的失败率与 100 的乘积,pow (kPenaltyBase, penalty_exponent)为kPenaltyBase 的 penalty_exponent 次方。
20.如权利要求19所述的装置,其特征在于,其特征在于,所述第三模块中使用的DNS服务器的失败率,是用户终端通过该DNS服务器,对所述至少一个指定域名对应的网站服务器连接失败的次数与所有指定域名对应的网站服务器数目的比值。
【文档编号】H04L29/12GK103973835SQ201410209808
【公开日】2014年8月6日 申请日期:2014年5月16日 优先权日:2014年5月16日
【发明者】刘欢, 宋雷, 杨振辉 申请人:北京金山网络科技有限公司