CN103338279B - 基于域名解析的优化排序方法及系统 - Google Patents

基于域名解析的优化排序方法及系统 Download PDF

Info

Publication number
CN103338279B
CN103338279B CN201310303805.9A CN201310303805A CN103338279B CN 103338279 B CN103338279 B CN 103338279B CN 201310303805 A CN201310303805 A CN 201310303805A CN 103338279 B CN103338279 B CN 103338279B
Authority
CN
China
Prior art keywords
address
value
domain name
icmp
weight
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
CN201310303805.9A
Other languages
English (en)
Other versions
CN103338279A (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.)
Shanghai Data Solution Co Ltd
Original Assignee
Shanghai Data Solution 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 Shanghai Data Solution Co Ltd filed Critical Shanghai Data Solution Co Ltd
Priority to CN201310303805.9A priority Critical patent/CN103338279B/zh
Publication of CN103338279A publication Critical patent/CN103338279A/zh
Application granted granted Critical
Publication of CN103338279B publication Critical patent/CN103338279B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供了一种基于域名解析的优化排序方法,包括步骤有:请求接收步骤,接收客户端对域名地址的解析请求;地址查询步骤,分别向多个一级运营商DNS查询所述域名地址对应的IP地址;排序计算步骤,根据预定的优化排序算法计算各个所述IP地址的排序值;地址返回步骤,将最高的所述排序值对应的最优IP地址返回给所述客户端。相应地,本发明还提供一种基于域名解析的优化排序系统。借此,本发明不需要二级运营商额外投入任何设备,并可以实时获取最优的域名解析结果,将二级运营商的接入资源最大化的合理应用。

Description

基于域名解析的优化排序方法及系统
技术领域
本发明涉及网络通讯技术领域,尤其涉及一种基于域名解析的优化排序方法及系统。
背景技术
在传统的域名解析运作机制中,当应用过程需将一主机域名映射为IP地址时,就调用域名解析函数,由域名解析函数将待转换的域名放在DNS(DomainNameServer,域名服务器)请求中,以UDP(UserDatagramProtocol,用户数据报协议)报文方式发给本地域名服务器。本地域名服务器查到该域名后,将对应的IP地址放在应答报文中返回。同时本地域名服务器还须具有连向其他服务器的信息以支持不能解析时的转发。若本地域名服务器不能回答请求,则该本地域名服务器就暂成为DNS中的另一用户,向根域名服务器发出解析请求,根域名服务器一定能找到下面所有二级域名的域名服务器,以此类推,一直向下解析,直到查询到所请求的域名。
通常针对一级运营商,如电信、联通、移动等服务运营商中,其都有自主的DNS集群服务器,故只要使用其中任意一运营商的网络并配合其所提供的DNS就能得到相应解析服务,通常其提供的解析内容是就近最优的。
其次,若企业使用了两家以上不同的一级运营商,如电信和联通,由于两家一级运营商的DNS服务器地址不同,且相互之间无法自主的互通。因为电信、联通、移动等都将属于自己的IP地址段进行了访问控制的过滤,即只有隶属于自己的地址才能访问自己的DNS。因此企业往往只能使用如F5、BC等其他厂商所推广的负载均衡设备去处理这样的业务,其处理机理是使用NAT(NetworkAddressTransfer,网络地址转换器)机制并配合地址归属列表(即将电信、联通所属的IP地址段预先配置在数据库中)去实现访问不同站点走不同链路效果。
现有技术的问题:其一是厂商所提出的解决方案是静态的,无法做到实时的优化,如出现一级运营商内部增加或删除地址记录的话,厂商设备无法第一时间获取并实施。其二,由于现有Internet(互联网)发展速度较快,企业更倾向于使用类似BGP(BorderGatewayProtoco,边界网关协议)协议的Internet带宽(即使用一个地址既可以访问电信也可以访问联通),现有厂商所提供的设备就无法满足此类应用,同时针对NAT这种技术破坏了端到端的网络架构,被许多企业所摒弃。
由于二级运营商的BGP业务所属的IP地址不属于电信、联通、移动中的任意一家,故其IP地址无法与一级运营商的DNS进行查询互通,故目前为止二级运营商通常使用第三方提供的免费DNS系统为用户进行域名解析。这里就出现了问题,在中国的二级运营商市场中,其即便使用BGP业务往往也是接入到电信、联通、移动等网络中,只是地址的注册及归属权属于二级运营商本身,也就是说一级运营商只是帮二级运营商代为广播地址而已。由于无法使用一级运营商的DNS,故无法得到相应的解析记录。使用第三方的DNS虽然能返回解析记录,但却无法和现实环境中的网络情况相匹配,导致响应速度慢、用户体验差等问题。
综上可知,现有技术在实际使用上显然存在不便与缺陷,所以有必要加以改进。
发明内容
针对上述的缺陷,本发明的目的在于提供一种基于域名解析的优化排序方法及系统,其不需要二级运营商额外投入任何设备,并可以实时获取最优的域名解析结果,将二级运营商的接入资源最大化的合理应用。
为了实现上述目的,本发明提供一种基于域名解析的优化排序方法,包括步骤有:
请求接收步骤,接收客户端对域名地址的解析请求;
地址查询步骤,分别向多个一级运营商DNS查询所述域名地址对应的IP地址;
排序计算步骤,根据预定的优化排序算法计算各个所述IP地址的排序值;
地址返回步骤,将最高的所述排序值对应的最优IP地址返回给所述客户端。
根据本发明所述的优化排序方法,所述排序计算步骤包括:
ICMP值计算子步骤,基于ICMP协议访问各个所述IP地址,分别根据ICMP报文返回的延迟值计算对应的ICMP值,所述延迟值越大则所述ICMP值越小,所述ICMP值对应第一权重;
TTL值获取子步骤,分别获取所述多个一级运营商DNS的TTL值,所述TTL值对应第二权重;
TCP值计算子步骤,基于TCP协议访问各个所述IP地址,分别根据响应时间值计算对应的TCP值,所述响应时间值越大则所述TCP值越小,所述TCP值对应第三权重;
下载速率值检测子步骤,检测基于firebug对各个所述IP地址对应的页面内容的下载速率值,所述下载速率值对应第四权重;
排序值计算子步骤,根据所述ICMP值、所述TTL值、所述TCP值和所述下载速率值及其各自对应的权重,分别计算各个所述IP地址的所述排序值。
根据本发明所述的优化排序方法,所述ICMP值计算子步骤包括:
通过ICMP报文中的时间戳请求指令访问各个所述IP地址,分别根据ICMP报文返回的时间戳回复指令的返回时间和预定的指数函数计算对应的所述ICMP值,所述指数函数为y=ax,(0<a<1),y为所述ICMP值,x为所述返回时间。
根据本发明所述的优化排序方法,所述第一权重为15%,所述第二权重为20%,所述第三权重为30%,所述第四权重为35%。
根据本发明所述的优化排序方法,所述IP地址的所述排序值支持人为干预机制。
根据本发明所述的优化排序方法,所述优化排序方法应用于二级运营商侧,所述二级运营商侧至少有两个一级运营商的互联网链路,所述二级运营商侧支持BGP协议的互联网业务,并由所述一级运营商代为全广播。
根据本发明所述的优化排序方法,还包括:
地址记录步骤,记录所述域名地址对应的所述最优IP地址;
地址删除步骤,若所述域名地址对应的所述最优IP地址在预定的时间阈值内未被查询过,则删除所述域名地址对应的所述最优IP地址的记录。
所述请求接收步骤之后还包括:
判断所述域名地址是否记录有对应的所述最优IP地址,若是则执行所述地址查询步骤,否则直接执行所述地址返回步骤。
本发明还提供一种基于域名解析的优化排序系统,包括有:
请求接收模块,用于接收客户端对域名地址的解析请求;
地址查询模块,用于分别向多个一级运营商DNS查询所述域名地址对应的IP地址;
排序计算模块,用于根据预定的优化排序算法计算各个所述IP地址的排序值;
地址返回模块,用于将最高的所述排序值对应的最优IP地址返回给所述客户端。
根据本发明所述的优化排序系统,所述排序计算模块包括:
ICMP值计算子模块,用于基于ICMP协议访问各个所述IP地址,分别根据ICMP报文返回的延迟值计算对应的ICMP值,所述延迟值越大则所述ICMP值越小,所述ICMP值对应第一权重;
TTL值获取子模块,用于分别获取所述多个一级运营商DNS的TTL值,所述TTL值对应第二权重;
TCP值计算子模块,用于基于TCP协议访问各个所述IP地址,分别根据响应时间值计算对应的TCP值,所述响应时间值越大则所述TCP值越小,所述TCP值对应第三权重;
下载速率值检测子模块,用于检测基于firebug对各个所述IP地址对应的页面内容的下载速率值,所述下载速率值对应第四权重;
排序值计算子模块,用于根据所述ICMP值、所述TTL值、所述TCP值和所述下载速率值及其各自对应的权重,分别计算各个所述IP地址的所述排序值。
根据本发明所述的优化排序系统,所述ICMP值计算子模块用于通过ICMP报文中的时间戳请求指令访问各个所述IP地址,分别根据ICMP报文返回的时间戳回复指令的返回时间和预定的指数函数计算对应的所述ICMP值,所述指数函数为y=ax,(0<a<1),y为所述ICMP值,x为所述返回时间。
根据本发明所述的优化排序系统,所述第一权重为15%,所述第二权重为20%,所述第三权重为30%,所述第四权重为35%。
根据本发明所述的优化排序系统,所述IP地址的所述排序值支持人为干预机制。
根据本发明所述的优化排序系统,所述优化排序系统应用于二级运营商侧,所述二级运营商侧至少有两个一级运营商的互联网链路,所述二级运营商侧支持BGP协议的互联网业务,并由所述一级运营商代为全广播。
根据本发明所述的优化排序系统,还包括:
地址记录模块,用于记录所述域名地址对应的所述最优IP地址;
地址删除模块,用于若所述域名地址对应的所述最优IP地址在预定的时间阈值内未被查询过,则删除所述域名地址对应的所述最优IP地址的记录。
地址判断模块,用于接收客户端对域名地址的解析请求后,判断所述域名地址是否记录有对应的所述最优IP地址,若是则交由所述地址查询模块处理,否则直接交由所述地址返回模块处理。
本发明针对二级运营商市场提供一种基于域名解析的优化排序方案,接收客户端对某个域名地址的解析请求之后,分别向多个一级运营商DNS查询所述域名地址对应的IP地址,根据优化排序算法计算各个IP地址的排序值,将最优IP地址返回给客户端。借此,本发明不需要二级运营商额外投入任何设备,并可以实时获取最优的域名解析结果,将二级运营商的接入资源最大化的合理应用,提升了用户的体验。
附图说明
图1是本发明基于域名解析的优化排序系统的结构示意图;
图2是本发明优选基于域名解析的优化排序系统的结构示意图;
图3是本发明基于域名解析的优化排序方法的流程图;以及
图4是本发明优选基于域名解析的优化排序方法的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1是本发明基于域名解析的优化排序系统的结构示意图,所述优化排序系统100包括有请求接收模块10、地址查询模块20、排序计算模块30以及地址返回模块40,其中:
所述请求接收模块10,用于接收客户端对域名地址的解析请求。所述客户端可以是电脑、手机、平板电脑等。
所述地址查询模块20,用于分别向多个一级运营商DNS查询域名地址对应的IP地址。所述一级运营商可以是电信、联通、移动等。
所述排序计算模块30,用于根据预定的优化排序算法计算各个IP地址的排序值。
所述地址返回模块40,用于将最高的排序值对应的最优IP地址返回给客户端。
本发明的优化排序系统100应用于二级运营商侧,所述二级运营商侧至少有两个一级运营商的互联网链路,二级运营商侧支持BGP协议的互联网业务,并由一级运营商代为全广播。
本发明针对二级运营商市场开发基于域名解析的优化排序方案,可解决现有技术存在的问题,同时企业不需额外投入任何设备就能实时的获取其想要的最优数据内容。将二级运营商的接入资源最大化的合理应用,提升用户的体验。
图2是本发明优选基于域名解析的优化排序系统的结构示意图,所述优化排序系统100包括有请求接收模块10、地址查询模块20、排序计算模块30以及地址返回模块40,其中:
所述请求接收模块10,用于接收客户端对域名地址的解析请求。
所述地址查询模块20,用于分别向多个一级运营商DNS查询域名地址对应的IP地址。
所述排序计算模块30,用于根据预定的优化排序算法计算各个IP地址的排序值。所述排序计算模块30进一步包括ICMP值计算子模块31、TTL值获取子模块32、TCP值计算子模块33、下载速率值检测子模块34以及排序值计算子模块35,其中:
ICMP值计算子模块31,用于基于ICMP(InternetControlMessageProtocol,Internet控制报文协议)协议访问各个IP地址,分别根据ICMP报文返回的延迟值计算对应的ICMP值,延迟值越大则ICMP值越小,ICMP值对应第一权重。基于ICMP报文中的字段,也就是常用的PING手段,基于ICMP报文返回的DEALY(延迟)数值来判断其质量是否高效。
优选的是,所述ICMP值计算子模块31用于通过ICMP报文中的时间戳请求指令(timestamprequest)访问各个IP地址,分别根据ICMP报文返回的时间戳回复指令(timestampreplay)的返回时间和预定的指数函数计算对应的ICMP值,指数函数为y=ax,(0<a<1),y为ICMP值,x为返回时间。通常所返回的replay时间越短,那么判定其越优。
TTL值获取子模块32,用于分别获取多个一级运营商DNS的TTL(TimeToLive,生存时间)值,TTL值对应第二权重。
基于IP报文中的TTL数值判定,TTL就是一条域名解析记录在DNS服务器中的存留时间。当各地DNS服务器接收到解析请求时,会向域名指定的NS服务器(权威域名服务器)发出解析请求从而获得解析记录;在获得这个记录后,记录会在DNS服务器(各地的缓存服务器,也叫递归域名服务器)中保存一段时间,这段时间内若再接到该域名的解析请求,DNS服务器将不再向NS服务器发出请求,而是直接返回刚才获得的记录;而这个记录在DNS服务器上保留的时间,就是TTL值。通常TTL值越大判定它越优。
TCP值计算子模块33,用于基于TCP(TransmissionControlProtocol,传输控制协议)协议访问各个IP地址,分别根据响应时间值计算对应的TCP值,响应时间值越大则TCP值越小,TCP值对应第三权重。
基于TCP协议中的TCPresponsetime的字段判定,即响应时间最短的,则其越优。主要原因在于相当多的企业或运营商将ICMP协议进行了一定的限制,由于ICMP协议本身存在漏洞容易造成攻击事件发生,故相应的功能被屏蔽,这也就将会导致这一数据采集的缺省,故这里使用TCP的responsetime字段作为补偿和防范。
下载速率值检测子模块34,用于检测基于firebug对各个IP地址对应的页面内容的下载速率值,下载速率值对应第四权重。
基于firebug工具,这主要是针对WEB开发的工具,通过查看页面代码样式脚本等内容。这里只使用其中的下载测速功能。即在同一时间针对同一网站不同解析的地址进行页面下载,针对下载的数据时间做了范围定义,定义数值在10秒内,即在单位时间内每秒下载数值越高的,判定其为越优的。
排序值计算子模块35,用于根据ICMP值、TTL值、TCP值和下载速率值及其各自对应的权重,分别计算各个IP地址的排序值,计算公式如下:
IP地址的排序值=ICMP值*第一权重+TTL值*第二权重+TCP值*第三权重+下载速率值*第四权重。
优选的是,第一权重为15%,第二权重为20%,第三权重为30%,第四权重为35%。
更好的是,所述优化排序系统100还包括地址记录模块50、地址删除模块60以及地址判断模块70,其中:
所述地址记录模块50,用于在排序计算模块30计算出各个IP地址的排序值后,记录所述域名地址对应的最优IP地址。
所述地址删除模块60,用于若域名地址对应的最优IP地址在预定的时间阈值内未被查询过,则删除域名地址对应的最优IP地址的记录。
所述地址判断模块70,用于在请求接收模块10接收客户端对域名地址的解析请求后,判断域名地址是否记录有对应的最优IP地址,若是则交由地址查询模块20处理,否则直接交由地址返回模块40处理。
当用户发起一个新的域名查询信息后,算法即开始运作,当为了减少用户的等待时间,在第一次新的域名解析时,系统将会从DNS查询一个结果先返回给用户,后台进行优化结果输出并保存于DNS数据库中。当用户点击同一域名的子页面时,数据库将会直接将最优的解析条目推送给用户,如果此时有另一个用户同样访问该域名时,那此用户将会直接得到最优的解析内容而无需再一次进行计算。即只要有一个新的记录被查询后,优化的结构就可以被后来者使用。同时为了避免数据库数据的无限增大以及带宽质量的波动改变,设置了条目死亡时间(即所述时间阈值),即当一个条目在条目死亡时间(例如2分钟)内没有被人使用查询,那么数据库将会删除此条目,直至有新的触发出现后再增补入数据库中。这样的设计好处也就是访问量越高,其处理性能越优,用户体验感也越强。
所述IP地址的排序值支持人为干预机制。通过人为干预来强制改变数据库,从二级运营商带宽负荷及域名稳定性方面考虑,即当二级运营商某个带宽使用率过高或某域名地址所在的服务出现异样的时候,提供了人为干预机制手段。通过将整体数据库的数值变小或某一条目的数据变小,让其他次优的解析条目变为主用条目为用户提供服务。
图3是本发明基于域名解析的优化排序方法的流程图,其可通过如图1或图2所示的优化排序系统100实现,所述方法包括步骤有:
步骤S301,请求接收步骤:接收客户端对域名地址的解析请求。所述客户端可以是电脑、手机、平板电脑等。
步骤S302,地址查询步骤:分别向多个一级运营商DNS查询域名地址对应的IP地址。所述一级运营商可以是电信、联通、移动等。
步骤S303,排序计算步骤:根据预定的优化排序算法计算各个IP地址的排序值。
步骤S304,地址返回步骤:将最高的排序值对应的最优IP地址返回给客户端。
本发明的优化排序方法应用于二级运营商侧,二级运营商侧至少有两个一级运营商的互联网链路,二级运营商侧支持BGP协议的互联网业务,并由一级运营商代为全广播。
图4是本发明优选基于域名解析的优化排序方法的流程图,其可通过如图2所示的优化排序系统100实现,所述方法包括步骤有:
步骤S401,接收客户端对域名地址的解析请求。
步骤S402,判断域名地址是否记录有对应的最优IP地址,若是则执行步骤S403,否则直接执行步骤S405。
步骤S403,分别向多个一级运营商DNS查询域名地址对应的IP地址。
步骤S404,根据预定的优化排序算法计算各个IP地址的排序值。
步骤S405,将最高的排序值对应的最优IP地址返回给客户端。
步骤S406,记录域名地址对应的最优IP地址。
步骤S407,若域名地址对应的最优IP地址在预定的时间阈值内未被查询过,则删除域名地址对应的最优IP地址的记录。
当用户发起一个新的域名查询信息后,算法即开始运作,当为了减少用户的等待时间,在第一次新的域名解析时,系统将会从DNS查询一个结果先返回给用户,后台进行优化结果输出并保存于DNS数据库中。当用户点击同一域名的子页面时,数据库将会直接将最优的解析条目推送给用户,如果此时有另一个用户同样访问该域名时,那此用户将会直接得到最优的解析内容而无需再一次进行计算。即只要有一个新的记录被查询后,优化的结构就可以被后来者使用。同时为了避免数据库数据的无限增大以及带宽质量的波动改变,设置了条目死亡时间(即所述时间阈值),即当一个条目在条目死亡时间(例如2分钟)内没有被人使用查询,那么数据库将会删除此条目,直至有新的触发出现后再增补入数据库中。这样的设计好处也就是访问量越高,其处理性能越优,用户体验感也越强。
所述IP地址的排序值支持人为干预机制。通过人为干预来强制改变数据库,从二级运营商带宽负荷及域名稳定性方面考虑,即当二级运营商某个带宽使用率过高或某域名地址所在的服务出现异样的时候,提供了人为干预机制手段。通过将整体数据库的数值变小或某一条目的数据变小,让其他次优的解析条目变为主用条目为用户提供服务。
优选的是,所述步骤S404进一步包括:
ICMP值计算子步骤,基于ICMP协议访问各个IP地址,分别根据ICMP报文返回的延迟值计算对应的ICMP值,延迟值越大则ICMP值越小,ICMP值对应第一权重。基于ICMP报文中的字段,也就是常用的PING手段,基于ICMP报文返回的DEALY(延迟)数值来判断其质量是否高效。
优选的是,所述ICMP值计算子步骤包括:
通过ICMP报文中的时间戳请求指令(timestamprequest)访问各个IP地址,分别根据ICMP报文返回的时间戳回复指令(timestampreplay)的返回时间和预定的指数函数计算对应的ICMP值,指数函数为y=ax,(0<a<1),y为ICMP值,x为返回时间。通常所返回的replay时间越短,那么判定其越优。
TTL值获取子步骤,分别获取多个一级运营商DNS的TTL值,TTL值对应第二权重。
基于IP报文中的TTL数值判定,TTL就是一条域名解析记录在DNS服务器中的存留时间。当各地DNS服务器接收到解析请求时,会向域名指定的NS服务器(权威域名服务器)发出解析请求从而获得解析记录;在获得这个记录后,记录会在DNS服务器(各地的缓存服务器,也叫递归域名服务器)中保存一段时间,这段时间内若再接到该域名的解析请求,DNS服务器将不再向NS服务器发出请求,而是直接返回刚才获得的记录;而这个记录在DNS服务器上保留的时间,就是TTL值。通常TTL值越大判定它越优。
TCP值计算子步骤,基于TCP协议访问各个IP地址,分别根据响应时间值计算对应的TCP值,响应时间值越大则TCP值越小,TCP值对应第三权重。
基于TCP协议中的TCPresponsetime的字段判定,即响应时间最短的,则其越优。主要原因在于相当多的企业或运营商将ICMP协议进行了一定的限制,由于ICMP协议本身存在漏洞容易造成攻击事件发生,故相应的功能被屏蔽,这也就将会导致这一数据采集的缺省,故这里使用TCP的responsetime字段作为补偿和防范。
下载速率值检测子步骤,检测基于firebug对各个IP地址对应的页面内容的下载速率值,下载速率值对应第四权重。
基于firebug工具,这主要是针对WEB开发的工具,通过查看页面代码样式脚本等内容。这里只使用其中的下载测速功能。即在同一时间针对同一网站不同解析的地址进行页面下载,针对下载的数据时间做了范围定义,定义数值在10秒内,即在单位时间内每秒下载数值越高的,判定其为越优的。
排序值计算子步骤,根据ICMP值、TTL值、TCP值和下载速率值及其各自对应的权重,分别计算各个IP地址的排序值,计算公式如下:
IP地址的排序值=ICMP值*第一权重+TTL值*第二权重+TCP值*第三权重+下载速率值*第四权重。
优选的是,第一权重为15%,第二权重为20%,第三权重为30%,第四权重为35%。
举例来说,当访问一个网站如www.sohu.com。那么数据库将会同时并发做以下动作。
1、使用ICMP协议访问www.sohu.com,假使电信返回的delay为5ms,联通返回的delay为10ms,这里使用的指数函数的方式,使用的函数公式是y=ax(其中0<a<1)。此函数为减函数,即X越大函数值Y越小。其中a的数值定义为1/3,两个函数分别为y=1/3的5次方,以及y=1/3的10次方,算出的数值分别在乘以权重15%,将两个数值保存于ICMP数据模块中。
2、返回的TTL数值,假使电信返回的是TTL=125,联通返回的是TTL=90,那么电信的TTL乘以权重20%,联通的TTL乘以20%。将两个数值保存于TTL的数据模块中。
3、同时使用TCP的responsetime进行测试,校验timestamp中的avg字段及95_avg字段。其计算方式也是使用指数函数的方式,机理通ICMP协议算法一致,即减函数,次方数越小的,函数值越大。并乘以权重系数30%,将两个数值保存于responsestamp数据模块中。
4、同时针对firebug中的页面内容进行下载,将单位时间每秒下载的速率乘以权重35%后,将两个数值保存于cache数据库中。
5、最后,分别将各自的分开数据进行累加,ICMP+TTL+Response-stamp+Cachebit后,数值大的就为最优结果保存在DNS数据库中并将结果反馈给用户。
本发明要求的实际环境及基本运作机制:
本发明对使用环境有一定的要求,但基本二级运营商都可以在无投入的情况下实现这一环境。
二级运营商需有两条或以上的一级运营商的Internet链路,其IP地址归属权分别属于两家运营商。二级运营商自身有使用BGP协议的Internet业务,并由一级运营商代为全广播,即同一IP地址可全路由上级运营商出口。
搭建环境,实体环境下需要两台服务器组建或虚拟环境都可。两台服务器的原因更多的在于作冗余托管。服务器之间有心跳线链接,当一台出现中断时,另一台立即接管。
服务器上需要配置四段IP地址,电信的IP地址段并指向电信所提供的DNS服务器。联通的IP地址段并指向联通的DNS。二级运营商自有的IP地址段,走缺省路由并提供一个第三方可访问的DNS。最后一段心跳线地址,只是与服务器之间互通,可用私有地址,如使用虚拟环境则不需要心跳线功能,只要做双机同步备份即可。在服务器中安装算法数据库软件后,功能即生效。
综上所述,本发明针对二级运营商市场提供一种基于域名解析的优化排序方案,接收客户端对某个域名地址的解析请求之后,分别向多个一级运营商DNS查询所述域名地址对应的IP地址,根据优化排序算法计算各个IP地址的排序值,将最优IP地址返回给客户端。借此,本发明不需要二级运营商额外投入任何设备,并可以实时获取最优的域名解析结果,将二级运营商的接入资源最大化的合理应用,提升了用户的体验。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (12)

1.一种基于域名解析的优化排序方法,其特征在于,包括步骤有:
请求接收步骤,接收客户端对域名地址的解析请求;
地址查询步骤,分别向多个一级运营商DNS查询所述域名地址对应的IP地址;
排序计算步骤,根据预定的优化排序算法计算各个所述IP地址的排序值,其中,所述排序计算步骤包括:ICMP值计算子步骤,基于ICMP协议访问各个所述IP地址,分别根据ICMP报文返回的延迟值计算对应的ICMP值,所述延迟值越大则所述ICMP值越小,所述ICMP值对应第一权重;TTL值获取子步骤,分别获取所述多个一级运营商DNS的TTL值,所述TTL值对应第二权重;TCP值计算子步骤,基于TCP协议访问各个所述IP地址,分别根据响应时间值计算对应的TCP值,所述响应时间值越大则所述TCP值越小,所述TCP值对应第三权重;下载速率值检测子步骤,检测基于firebug对各个所述IP地址对应的页面内容的下载速率值,所述下载速率值对应第四权重;排序值计算子步骤,根据所述ICMP值、所述TTL值、所述TCP值和所述下载速率值及其各自对应的权重,分别计算各个所述IP地址的所述排序值;
地址返回步骤,将最高的所述排序值对应的最优IP地址返回给所述客户端。
2.根据权利要求1所述的优化排序方法,其特征在于,所述ICMP值计算子步骤包括:
通过ICMP报文中的时间戳请求指令访问各个所述IP地址,分别根据ICMP报文返回的时间戳回复指令的返回时间和预定的指数函数计算对应的所述ICMP值,所述指数函数为y=ax,(0<a<1),y为所述ICMP值,x为所述返回时间。
3.根据权利要求1所述的优化排序方法,其特征在于,所述第一权重为15%,所述第二权重为20%,所述第三权重为30%,所述第四权重为35%。
4.根据权利要求1所述的优化排序方法,其特征在于,所述IP地址的所述排序值支持人为干预机制。
5.根据权利要求1所述的优化排序方法,其特征在于,所述优化排序方法应用于二级运营商侧,所述二级运营商侧至少有两个一级运营商的互联网链路,所述二级运营商侧支持BGP协议的互联网业务,并由所述一级运营商代为全广播。
6.根据权利要求1~5任一项所述的优化排序方法,其特征在于,还包括:
地址记录步骤,记录所述域名地址对应的所述最优IP地址;
地址删除步骤,若所述域名地址对应的所述最优IP地址在预定的时间阈值内未被查询过,则删除所述域名地址对应的所述最优IP地址的记录;
所述请求接收步骤之后还包括:
判断所述域名地址是否记录有对应的所述最优IP地址,若是则执行所述地址查询步骤,否则直接执行所述地址返回步骤。
7.一种基于域名解析的优化排序系统,其特征在于,包括有:
请求接收模块,用于接收客户端对域名地址的解析请求;
地址查询模块,用于分别向多个一级运营商DNS查询所述域名地址对应的IP地址;
排序计算模块,用于根据预定的优化排序算法计算各个所述IP地址的排序值,其中,所述排序计算模块包括:ICMP值计算子模块,用于基于ICMP协议访问各个所述IP地址,分别根据ICMP报文返回的延迟值计算对应的ICMP值,所述延迟值越大则所述ICMP值越小,所述ICMP值对应第一权重;TTL值获取子模块,用于分别获取所述多个一级运营商DNS的TTL值,所述TTL值对应第二权重;TCP值计算子模块,用于基于TCP协议访问各个所述IP地址,分别根据响应时间值计算对应的TCP值,所述响应时间值越大则所述TCP值越小,所述TCP值对应第三权重;下载速率值检测子模块,用于检测基于firebug对各个所述IP地址对应的页面内容的下载速率值,所述下载速率值对应第四权重;排序值计算子模块,用于根据所述ICMP值、所述TTL值、所述TCP值和所述下载速率值及其各自对应的权重,分别计算各个所述IP地址的所述排序值;
地址返回模块,用于将最高的所述排序值对应的最优IP地址返回给所述客户端。
8.根据权利要求7所述的优化排序系统,其特征在于,所述ICMP值计算子模块用于通过ICMP报文中的时间戳请求指令访问各个所述IP地址,分别根据ICMP报文返回的时间戳回复指令的返回时间和预定的指数函数计算对应的所述ICMP值,所述指数函数为y=ax,(0<a<1),y为所述ICMP值,x为所述返回时间。
9.根据权利要求7所述的优化排序系统,其特征在于,所述第一权重为15%,所述第二权重为20%,所述第三权重为30%,所述第四权重为35%。
10.根据权利要求7所述的优化排序系统,其特征在于,所述IP地址的所述排序值支持人为干预机制。
11.根据权利要求7所述的优化排序系统,其特征在于,所述优化排序系统应用于二级运营商侧,所述二级运营商侧至少有两个一级运营商的互联网链路,所述二级运营商侧支持BGP协议的互联网业务,并由所述一级运营商代为全广播。
12.根据权利要求7~11任一项所述的优化排序系统,其特征在于,还包括:
地址记录模块,用于记录所述域名地址对应的所述最优IP地址;
地址删除模块,用于若所述域名地址对应的所述最优IP地址在预定的时间阈值内未被查询过,则删除所述域名地址对应的所述最优IP地址的记录;
地址判断模块,用于接收客户端对域名地址的解析请求后,判断所述域名地址是否记录有对应的所述最优IP地址,若是则交由所述地址查询模块处理,否则直接交由所述地址返回模块处理。
CN201310303805.9A 2013-07-18 2013-07-18 基于域名解析的优化排序方法及系统 Active CN103338279B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310303805.9A CN103338279B (zh) 2013-07-18 2013-07-18 基于域名解析的优化排序方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310303805.9A CN103338279B (zh) 2013-07-18 2013-07-18 基于域名解析的优化排序方法及系统

Publications (2)

Publication Number Publication Date
CN103338279A CN103338279A (zh) 2013-10-02
CN103338279B true CN103338279B (zh) 2016-03-16

Family

ID=49246373

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310303805.9A Active CN103338279B (zh) 2013-07-18 2013-07-18 基于域名解析的优化排序方法及系统

Country Status (1)

Country Link
CN (1) CN103338279B (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104767776B (zh) * 2014-01-07 2019-04-30 腾讯科技(深圳)有限公司 一种实时调整网络路由方法、装置及系统
CN103746929A (zh) * 2014-01-13 2014-04-23 刘保太 基于dns的优化访问流量调度方法和设备
CN103929507B (zh) * 2014-04-28 2017-10-10 广东睿江云计算股份有限公司 一种实现可离线化dns服务的方法及装置
CN104158919A (zh) * 2014-08-20 2014-11-19 安一恒通(北京)科技有限公司 网页访问实现方法、服务器和客户端
CN104320335A (zh) * 2014-11-20 2015-01-28 北京美琦华悦通讯科技有限公司 基于业务质量拨测实现最优出口路由选择的系统及方法
CN105991699B (zh) * 2015-02-06 2019-07-19 北京中搜云悦网络技术有限公司 一种互联网爬虫的分布式下载系统
CN105376096B (zh) * 2015-11-26 2019-02-01 中国互联网络信息中心 一种域名解析数据质量评估反馈和数据优化方法及系统
CN107040617B (zh) * 2016-10-11 2020-07-31 阿里巴巴集团控股有限公司 数据处理的方法及装置
CN107360269A (zh) * 2017-07-21 2017-11-17 中国移动通信集团江苏有限公司 域名解析系统优化方法、装置、设备和存储介质
CN107749898B (zh) * 2017-08-24 2021-08-13 深圳市大讯永新科技有限公司 Dns访问数据归类和内网访问占比提高方法、系统
CN107360273A (zh) * 2017-09-11 2017-11-17 深圳市茁壮网络股份有限公司 一种域名解析方法及装置
CN109787907A (zh) * 2017-11-14 2019-05-21 北京星河星云信息技术有限公司 一种云智能dns调度系统及其用户接入和域名解析方法
CN108270882B (zh) * 2018-01-24 2022-03-11 腾讯科技(深圳)有限公司 域名的解析方法和装置、存储介质、电子装置
CN110351115A (zh) * 2019-05-23 2019-10-18 中国平安财产保险股份有限公司 降低网络访问时延的方法、装置、计算机设备及存储介质
CN110177140B (zh) * 2019-05-27 2022-06-07 湖南快乐阳光互动娱乐传媒有限公司 一种用于客户端数据下载的ip调度系统及方法
CN110213400B (zh) * 2019-06-11 2021-06-22 四川长虹电器股份有限公司 一种快速自动构建dns调度acl的方法
CN111147625B (zh) * 2019-12-31 2022-07-08 奇安信科技集团股份有限公司 获取本机外网ip地址的方法、装置及存储介质
CN111371916B (zh) * 2020-02-26 2021-03-19 腾讯科技(深圳)有限公司 一种数据处理方法及相关设备
CN112153170B (zh) * 2020-09-15 2022-08-26 广州华多网络科技有限公司 访问服务器的方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030055979A1 (en) * 2001-09-19 2003-03-20 Cooley William Ray Internet domain name resolver
CN102340554A (zh) * 2011-09-29 2012-02-01 奇智软件(北京)有限公司 一种域名系统dns的最优应用服务器选取方法和装置
CN103002069A (zh) * 2012-12-25 2013-03-27 北京小米科技有限责任公司 一种域名解析方法、装置及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030055979A1 (en) * 2001-09-19 2003-03-20 Cooley William Ray Internet domain name resolver
CN102340554A (zh) * 2011-09-29 2012-02-01 奇智软件(北京)有限公司 一种域名系统dns的最优应用服务器选取方法和装置
CN103002069A (zh) * 2012-12-25 2013-03-27 北京小米科技有限责任公司 一种域名解析方法、装置及系统

Also Published As

Publication number Publication date
CN103338279A (zh) 2013-10-02

Similar Documents

Publication Publication Date Title
CN103338279B (zh) 基于域名解析的优化排序方法及系统
US10374955B2 (en) Managing network computing components utilizing request routing
US11909639B2 (en) Request routing based on class
JP5944537B2 (ja) 通信経路の管理方法
EP2556438B1 (en) Reverse dns lookup with modified reverse mappings
CN103051740B (zh) 域名解析方法、dns服务器及域名解析系统
EP2266064B1 (en) Request routing
US9130954B2 (en) Distributed health check for global server load balancing
JP7345059B2 (ja) ルーティング制御方法、装置、プログラム及びコンピュータ装置
CN108173976B (zh) 域名解析方法及装置
CN102025794B (zh) 一种域名解析方法、dns服务器及系统
US10389628B2 (en) Exposing a subset of hosts on an overlay network to components external to the overlay network without exposing another subset of hosts on the overlay network
EP3021537B1 (en) Method, device and system for determining content acquisition path and processing request
EP2343867B1 (en) System and method of reducing intranet traffic on bottleneck links in a telecommunications network
CN109040243B (zh) 一种报文处理方法及装置
CN103905572A (zh) 域名解析请求的处理方法及装置
JP2007207231A (ja) ネットワークにおける分散サービスへのアクセス法
US20120191769A1 (en) Site-aware distributed file system access from outside enterprise network
CN106470251A (zh) 域名解析方法及虚拟dns权威服务器
CN106878458A (zh) 一种代理访问方法及系统
CN102970387A (zh) 一种域名解析方法、装置及系统
JP4820780B2 (ja) 接続先移行方法及び接続先移行システム
CN103380607A (zh) Dns客户端地址、rr ttl更新的方法、装置及系统
EP3288242B1 (en) Domain name system accessing method and device
CN103916489A (zh) 一种单域名多ip的域名解析方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant