CN102301682B - 网络缓存方法和***及dns重定向子*** - Google Patents
网络缓存方法和***及dns重定向子*** Download PDFInfo
- Publication number
- CN102301682B CN102301682B CN201180000699.6A CN201180000699A CN102301682B CN 102301682 B CN102301682 B CN 102301682B CN 201180000699 A CN201180000699 A CN 201180000699A CN 102301682 B CN102301682 B CN 102301682B
- Authority
- CN
- China
- Prior art keywords
- dns
- domain name
- subsystem
- address
- cache subsystem
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供一种网络缓存方法和***及DNS重定向子***。该方法包括接收客户端发送的域名***DNS解析请求,解析出所述DNS解析请求携带的域名,确定所述域名在白名单中;获取所述域名对应的缓存子***的网际协议IP地址,并将所述缓存子***的IP地址发送给所述客户端,以便于客户端根据所述缓存子***的IP地址向所述缓存子***请求数据。本发明实施例可以避免基于策略路由的网络缓存的问题。
Description
技术领域
本发明涉及网络通信技术,尤其涉及一种网络缓存方法和***及域名***(Domain Name System,DNS)重定向子***。
背景技术
随着互联网的发展,网民对访问品质也会越来越挑剔,一方面希望网站提供的内容越来越丰富,另一方面希望访问网站的速度越来越快。由于网络(Web)服务器的网络架构是一点对多点的传输,网络传输中包含了大量的重复内容,且超过80%的用户经常访问20%的内容,因此缓存是以上问题的最好的解决方案。缓存(Cache)方案是将用户经常访问的内容缓存在缓存服务器,由缓存服务器为用户提供服务,无需占用源服务器的处理能力和主干的出口带宽,可以节省资源并加快访问速度。
现有缓存方案主要包括基于策略路由的WebCache解决方案。基于策略路由的WebCache解决方案是指在路由器上配置策略路由,将用户上网的超文本传输协议(HyperText Transfer Protocol,HTTP)请求转发到缓存(Cache)子***。该方案下需要对路由器进行复杂的配置修改,难以维护,并且容易在路由器处产生单点故障,可靠性低。
发明内容
本发明实施例是提供一种网络缓存方法和***及DNS重定向子***,用以解决现有技术中基于策略路由的网络缓存方案存在的问题。
本发明实施例提供一种网络缓存方法,包括:
接收客户端发送的域名***DNS解析请求,解析出所述DNS解析请求携带的域名,确定所述域名在白名单中;
获取所述域名对应的缓存子***的网际协议IP地址,并将所述缓存子***的IP地址发送给所述客户端,以便于客户端根据所述缓存子***的IP地址向所述缓存子***请求数据。
本发明实施例提供了一种网络缓存***,包括:
域名***DNS重定向子***,用于接收客户端发送的域名***DNS解析请求,解析出所述DNS解析请求携带的域名,确定所述域名在白名单中;获取所述域名对应的缓存子***的网际协议IP地址,并将所述缓存子***的IP地址发送给所述客户端,以便于客户端根据所述缓存子***的IP地址向所述缓存子***请求数据;
缓存子***,用于接收所述客户端根据所述缓存子***的IP地址发送的数据请求消息,并向所述客户端发送与所述数据请求消息对应的数据。
本发明实施例提供了一种DNS重定向子***,包括:
深层报文解析设备,用于接收客户端发送的域名***DNS解析请求,解析出所述DNS解析请求携带的域名,确定所述域名在白名单中;
DNS服务器,用于获取所述域名对应的缓存子***的网际协议IP地址,并将所述缓存子***的IP地址发送给所述客户端,以便于客户端根据所述缓存子***的IP地址向所述缓存子***请求数据。
本发明实施例还提供了一种DNS重定向子***,包括:
深层报文解析设备,用于接收分光器或者路由器转发的客户端发送的上网请求,并在所述上网请求为DNS解析请求时,将DNS解析请求发送给DNS服务器。
DNS服务器,用于接收所述DPI设备发送的所述DNS解析请求,获取所述DNS解析请求携带的域名,并确定所述域名在白名单中时,将所述域名对应的缓存子***的网际协议IP地址并发送给所述客户端,以便于客户端根据所述缓存子***的IP地址向所述缓存子***请求数据。
由上述技术方案可知,本发明实施例通过由DNS重定向子***实现网络缓存,可以避免基于策略路由的网络缓存的问题,配置简单,难以维护,并且不会在路由器处产生单点故障,可靠性比较高。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明第一实施例的方法流程示意图;
图2为本发明第二实施例的***的结构示意图;
图3为本发明第二实施例的方法流程示意图;
图4为本发明第二实施例的DNS重定向子***的结构示意图;
图5为本发明实施例中缓存子***从源服务器获取数据的流程示意图;
图6为本发明第三实施例的方法流程示意图;
图7为本发明第四实施例的方法流程示意图;
图8为本发明第五实施例的方法流程示意图;
图9为本发明实施例的网络缓存***的结构示意图;
图10为本发明实施例的DNS重定向子***的结构示意图,
图11为本发明实施例的DNS重定向子***的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明第一实施例的方法流程示意图,包括:
步骤11:DNS重定向子***接收客户端发送的DNS解析请求,解析出所述DNS解析请求携带的域名,确定所述域名在白名单中;
其中,可以具体为DNS重定向子***接收上网请求,该上网请求可以为DNS解析请求,由于DNS重定向子***是对DNS解析请求进行处理,因此DNS重定向子***在解析出上网请求为DNS解析请求后,进行后续处理。
步骤12:DNS重定向子***获取所述域名对应的缓存子***的IP地址,并将所述缓存子***的IP地址发送给所述客户端,以便于客户端根据所述缓存子***的IP地址向所述缓存子***请求数据。
本实施例通过由DNS重定向子***实现网络缓存,可以避免基于策略路由的网络缓存,并且具有可靠性高,网络时延时间短,不影响其他业务性能,不会对现有网络拓扑造成影响的条件下,达到节省出口带宽、降低网间结算、提高网络利用效率、降低网络运营成本、提升用户体验的目的。上述图1所示实施例是以客户端从缓存子***中获取数据为例,在具体实施例,客户端也可能从源服务器而不是缓存子***中获取数据,为此,本发明给出一个具体实施例。
图2为本发明第二实施例的***的结构示意图,参见图2,包括客户端21、域名***(DNS)重定向子***22、缓存(Cache)子***23、包含源服务器的外部网络24和分光器(或者路由器镜像)25。缓存子***中包括负载均衡器和网络缓存(WebCache)服务器,其中,为了提高可靠性,负载均衡器包括主用负载均衡器和备用负载均衡器。另外,该***中还包括一些路由器和交换机。
参考图2所示的***架构,本实施例的流程可以如图3所示:
图3为本发明第二实施例的方法流程示意图,包括:
步骤31:客户端发送上网请求,该上网请求包含了客户端请求的域名。
步骤32:分光器接收到上述上网请求,并将上网请求分别发送给域名***(DNS)重定向子***和外部网络。
其中,外部网络中可以包括外网DNS服务器和源服务器,通过外网DNS服务器对该上网请求进行解析,并可以获取源服务器的IP地址,以便客户端根据源服务器的IP地址从源服务器获取需要的数据。
步骤33:DNS重定向子***对该上网请求进行深层报文解析(DeepPacket Inspection,DPI),该上网请求可以为DNS解析请求,解析该DNS解析请求,获得该DNS解析请求对应的域名,如果该域名在DNS重定向子***中白名单时,则根据该DNS解析请求对应的域名获取缓存子***的IP地址,并将该缓存子***的IP地址携带在DNS响应中返回给客户端,如果该域名不在DNS重定向子***中的白名单中,则丢弃该DNS解析请求。
具体地,可以在DNS重定向子***中配置白名单,该白名单中保存了热点网络域名或签约网络的域名,在白名单中保存的域名,表示该域名对应的内容被缓存子***中缓存了,客户端可以直接到缓存子***中去获取相应的数据,其中,上述的白名单可以预先进行人工配置或根据统计出来的热点网站自动生成,白名单中保存的域名可以为热点网络和/或签约网络的域名,热点网络是指特定时间内访问量达到特定次数的网络(该特定时间和特定次数可以根据时间需要设定),签约网络是指与该DNS重定向子***存在服务关系的网络,例如,事先约定A网络的数据进行缓存,则A网络为签约网络。如果解析获得该DNS解析请求对应的域名在白名单中,则查找该域名对应的缓存子***的IP地址是多少,如果该域名对应的唯一缓存子***,则可以将该缓存子***的IP地址携带在DNS响应中返回给客户端;如果该域名对应的多个缓存子***,则DNS重定向子***根据IP地址选择算法,来选择该域名对应的一个缓存子***的IP地址,并且返回携带该缓存子***的IP地址的DNS响应,例如,按照优先级可以选用的算法包括:往返时延(Round-TripTime,RTT)算法、拓扑(Topology)算法和全局可达(Global Availability)算法。例如:DNS服务器可以选择RTT算法作为选择域名对应的缓存子***的IP地址的优选算法,即所有的DNS解析请求均被DNS服务器计算其就近性,以保证绝大部分用户访问的最优化,比如,当对应一个DNS解析请求存在多个可用的缓存子***时,选择与发送该DNS解析请求的用户最近的缓存子***作为对应的缓存子***作为用户访问的缓存子***。Topology算法则作为RTT动态计算的补充算法,在RTT计算方式没有结果的时候,则选择用户所属本地局域网上的缓存子***作为用户访问的缓存子***。GlobalAvailability算法作为***的默认算法,将所有无法计算结果并且不在Topology范围之内的DNS解析请求,则选择DNS重定向子***默认的缓存子***作为用户访问的缓存子***。如果该白名单中并没有该DNS解析请求对应的域名,那么该DNS重定向子***就不处理,丢弃该DNS解析请求,并且不向客户端返回DNS响应。
另外,参见图4,DNS重定向子***中可以具体包括DPI设备41和DNS服务器42,当然还可以包括一些通用设备,例如交换机,并且DNS服务器可以采用主备方式,例如包括主用DNS服务器(图4中为DNS服务器_主)和备用DNS服务器(图4中为DNS服务器_备)。DPI设备用于对接收的上网请求进行DPI解析以获知该上网请求是否为DNS解析请求,如果是DNS解析请求,则将DNS解析请求解析获取携带的域名,并将该域名发送给DNS服务器。DNS服务器中可以保存上述的白名单,如果接收的DNS解析请求携带的域名属于该白名单,则确定该DNS解析请求携带的域名对应的缓存子***IP地址。之后将该缓存子***IP地址携带在DNS响应中返回给客户端。当然,如果该DNS解析请求对应的域名不在该白名单中,则DNS服务器可以丢弃该DNS解析请求。
进一步地,上述DNS重定向子***中的DNS服务器可以采用(GlobalServer Load Balance,GSLB)负载均衡全局服务器。其中,GSLB中可以配置白名单,以及保存域名与缓存子***的IP地址的对应关系表,如果该DNS解析请求对应的域名包含在该白名单中,则根据域名与缓存子***的IP地址的对应关系表可以得到该域名对应的缓存子***的IP地址。另外,GSLB中还可以采用IP地址选择算法来确定缓存子***的IP地址。例如,当DNS解析请求携带的域名在GSLB配置的白名单中时,如果缓存子***的IP地址是唯一的,则将该唯一的IP地址确定为缓存子***的IP地址;如果缓存子***的IP地址不是唯一的,则可以根据IP地址选择算法在多个IP地址中确定出一个作为缓存子***的IP地址。其中,IP地址选择算法可以为上述的RTT算法、Topology算法或者Global Availability算法。当然,如果该DNS解析请求对应的域名不在该白名单中,则GSLB可以丢弃该DNS解析请求。
步骤34:外部网络对该上网请求进行响应,并将源服务器的IP地址携带在DNS响应中返回给客户端。其中,可以具体为外部网络中的DNS服务器对该上网请求进行解析,查找到源服务器的IP地址,之后将源服务器的IP地址携带在DNS响应中返回给客户端。
步骤35:客户端处理先接收到的DNS响应,丢弃后接收到的DNS响应。
一般情况下,DNS重定向子***比外部网络的DNS服务器更靠近用户,因此,DNS重定向子***返回的DNS响应先到达客户端,因此在客户端将处理DNS重定向子***返回的DNS响应,即DNS重定向子***返回的DNS响应生效。由于DNS重定向子***的DNS响应生效,则客户端获取的为缓存子***的IP地址,之后,客户端根据缓存子***的IP地址可以从缓存子***中获取数据。
当然,如果客户端也有可能先接收到的是外部网络的DNS响应,或者只接收到外部网络的DNS响应,此时,客户端直接根据外部网络的DNS响应中包含的源服务器的IP地址,访问该源服务器,并从源服务器获取数据。
客户端接收到缓存子***的IP地址后,向缓存子***发送数据查询请求,这个数据查询请求可以是一个web请求。如果缓存子***中保存有该数据查询请求对应的数据,则将该数据返回给客户端。
另外,DNS重定向子***中还可以用于提供资源调度。其中,资源调度功能可以实现白名单的更新,例如DPI设备可以对DNS解析请求进行深度分析,定期生成用户访问网站域名的热点排名表,例如每周生成excel或文本格式的用户访问的热点网站排名表。在***中还可以定期获取各地DPI设备的分析结果,汇总各DPI设备的分析结果,根据分析结果刷新各地负载均衡全局服务器配置的白名单,以提高用户的命中率,加快用户的访问速度,从而提升用户的上网体验,节省网间结算。
另外,客户端侧还可以包括本地DNS(Local DNS)服务器,该本地DNS服务器中可以记录域名与缓存子***的IP地址的对应关系,以便更快确定DNS解析请求对应的缓存子***的IP地址。
在上述步骤31中,客户端发送上网请求时,将该上网请求首先发送本地DNS服务器,如果Local DNS服务器保存了域名与缓存子***IP地址的对应关系表,并且该关系表还属于有效期内,则本地DNS服务器解析该上网请求对应的域名,并且查找该域名对应的缓存子***的IP地址,如果该域名对应的缓存子***的IP地址是唯一的,则向客户端返回与该缓存子***的IP地址,并且步骤32-35跳过,无需执行;如果该域名对应的缓存子***的IP地址是多个,则根据上述按照优先级选用的算法来选择该域名对应的一个缓存子***的IP地址,并向客户端返回与该缓存子***的IP地址,并且步骤32-35跳过,无需执行。如果本地DNS服务器没有记录域名与缓存子***IP地址的对应关系表或者记录已经过期,则转向步骤32。
由以上流程可知,除了在重定向***刚部署上,而本地DNS服务器中域名与IP地址的对应关系还在有效期内时,本地DNS服务器中域名对应的IP地址均为外网源服务器的IP地址。其它时刻,本地DNS服务器中白名单域名均保存的是缓存子***IP地址。使用本地DNS服务器可以减轻重定向子***的负担。
如果缓存子***中没有保存该数据查询请求对应的数据,则缓存子***可以从源服务器获取该数据后再返回给客户端。
上述缓存子***中保存的数据可以是从源服务器获取的,例如,缓存子***可以从源服务器获取初始数据,之后,可以定期再向源服务器获取数据用于更新。缓存子***从源服务器获取数据的流程可以参见图5所示实施例。
图5为本发明实施例中缓存子***从源服务器获取数据的流程示意图,包括:
步骤51:缓存子***向源服务器发送数据请求消息。
可以是,缓存子***在预设的时间点,定期向源服务器发送该数据请求消息。也可以是,缓存子***在接收到客户端发送的请求数据时,向源服务器发送该数据请求消息。
另外,由于在网络缓存***中可能存在路由器、L3交换机、负载均衡设备等,该数据请求消息可以是缓存子***经由L3交换机、负载均衡设备和路由器发送给源服务器的。
步骤52:源服务器将该数据请求消息对应的数据发送给缓存子***。
同样,如果在网络缓存***中存在路由器、L3交换机、负载均衡设备等,该数据可以是源服务器经由路由器、负载均衡设备和L3交换机发送给源服务器的。
当然,根据网络缓存***组成不同,上述路径经由的设备也可以是不同的。
另外,缓存子***中可以包括多个缓存服务器,用于分别存储不同源服务器的数据。可以采用管理平台确定源服务器对应的缓存服务器,例如,管理平台中包括资源调度模块,资源调度模块实现对全网节点资源的监控管理,也可以对全网热点访问网站、热点区域或热点时间段进行分析和统计,还可以针对热点分析结果动态地对全网资源做调整和优化,使靠近热点访问区域源服务器的缓存服务器缓存热点访问的数据,物理距离上的缩短,可以提升了用户的上网体验,同时也节省了网间结算费用。
至此,缓存子***中会保存有数据,之后可以根据客户端的请求返回相应的数据。当然,缓存子***中可能保存客户端请求的数据,也可能没有保存,下面的图6、图7将分别描述上述两种情形。
图6为本发明第三实施例的方法流程示意图,本实施例以缓存子***中保存客户端请求的数据为例,参见图8,本实施例包括:
步骤61:客户端向DNS重定向子***发送DNS解析请求。
步骤62:DNS重定向子***将缓存子***的IP地址携带在DNS响应中,发送给客户端。
具体DNS重定向子***处理流程可以参见图3对应实施例。
步骤63:客户端根据缓存子***的IP地址,向缓存子***发送数据查询请求。
步骤64:如果缓存子***中保存有该数据查询请求对应的数据,则返回数据给客户端。
同样,如果网络缓存***中包含路由器、L3交换机等设备,则可以是客户端经由路由器、L3交换机将数据查询请求发送给缓存子***;相应地,缓存子***经由L3交换机、路由器将数据发送给客户端。
另外,在缓存子***中可以包括负载均衡设备和缓存服务器,负载均衡设备用于管理能够获知各缓存服务器的负载情况。之后,当负载均衡设备接收客户端发送的数据查询请求后,可以根据各缓存服务器的负载情况,将接收的数据查询请求发送给负载较轻的缓存服务器,由该缓存服务器进行处理后获取数据并返回给客户端。
图7为本发明第四实施例的方法流程示意图,本实施例以缓存子***中没有保存客户端请求的数据为例,参见图7,本实施例包括:
步骤71:客户端向DNS重定向子***发送DNS解析请求。
步骤72:DNS重定向子***将缓存子***的IP地址携带在DNS响应中,发送给客户端。
具体DNS重定向子***处理流程可以参见上述实施例。
步骤73:客户端根据缓存子***的IP地址,向缓存子***发送数据查询请求。
步骤74:如果缓存子***中没有保存该数据查询请求对应的数据,则向源服务器转发该数据查询请求。
步骤75:源服务器向缓存子***返回该数据查询请求对应的数据。
步骤76:缓存子***将源服务器返回的数据发送给客户端。
另外,缓存子***从源服务器中获取数据后,可以自身本地保存获取的数据,以便下次客户端请求时可以提供对应的数据。
同样,如果***中包含路由器、L3交换机等设备,则可以是客户端经由路由器、L3交换机将数据查询请求发送给缓存子***;相应地,缓存子***经由L3交换机、路由器将数据发送给客户端。
另外,在缓存子***中可以包括负载均衡设备和缓存服务器,负载均衡设备用于管理能够获知各缓存服务器的负载情况。之后,当负载均衡设备接收客户端发送的数据查询请求后,可以根据各缓存服务器的负载情况,将接收的数据查询请求发送给负载较轻的缓存服务器,由该缓存服务器进行处理。
在图6、7所示的实施例中是以DNS重定向子***能够返回缓存子***的IP地址为例,即DNS重定向子***的白名单中保存有DNS解析请求对应的域名,如果该白名单中没有保存DNS解析请求对应的域名,则可以如图8所示的实施例进行处理。
图8为本发明第五实施例的方法流程示意图,本实施例以DNS重定向子***没有保存DNS解析请求对应的域名为例,参见图8,本实施例包括:
步骤81:客户端向DNS重定向子***以及外网DNS服务器发送DNS解析请求。
参见上述实施例,客户端在发送DNS解析请求后,该DNS解析请求经过分光器被分为两路,一路发送给DNS重定向子***,另一路发送给外网DNS服务器。
步骤82:DNS重定向子***丢弃接收的DNS解析请求。
其中,DNS重定向子***中会保存白名单,如果接收的DNS解析请求对应的域名不在该白名单中,则DNS重定向子***无法提供缓存子***的IP地址,此时,DNS重定向子***将DNS解析请求丢弃。
步骤83:外网DNS服务器将源服务器的IP地址携带在DNS响应中返回给客户端。
其中,外网DNS服务器中会保存域名与源服务器的IP地址的对应关系,根据DNS解析请求对应的域名,可以获取源服务器的IP地址,之后,将源服务器的IP地址携带在DNS响应中发送给客户端。
步骤84:客户端根据源服务器的IP地址,向源服务器发送数据查询请求。
步骤85:源服务器将该数据查询请求对应的数据发送给客户端。
当然,如果***中包含路由器,则可以是客户端经由路由器向源服务器发送数据查询请求,之后,源服务器经由路由器向客户端发送数据。
上述实施例中,通过单独设置DNS重定向子***,可以实现透明式部署、对现网影响为零。DPI设备旁路部署,无单点故障隐患。无需与源服务器三次握手,无网络时延,不影响其他业务性能。另外,关键模块可以采用全冗余备份,例如,GSLB与交换机采用1+1备份方式,负载均衡模块也可以采用1+1备份方式,网络缓存服务器(WebCache)则可以使用同构节点动态备份技术,从而保证整个方案的高可用。通过资源调度可以实现用户流量动态分流,保证Web Cache***不过载。可以配置GSLB与缓存子***中的负载均衡设备的联动策略,使得GSLB可以接收缓存子***中的负载均衡设备上报的健康的网络缓存设备的数量,以便当缓存子***故障或者处理能力不够时,GSLB先保证级别高的网站的DNS解析请求,低优先级网站的DNS解析请求不再被处理,实现流量动态分流。
图9为本发明实施例的网络缓存***的结构示意图,包括DNS重定向子***901和缓存子***902;DNS重定向子***901用于接收客户端发送的域名***DNS解析请求,解析出所述DNS解析请求携带的域名,确定所述域名在白名单中;获取所述域名对应的缓存子***的网际协议IP地址,并将所述缓存子***的IP地址发送给所述客户端,以便于客户端根据所述缓存子***的IP地址向所述缓存子***请求数据;缓存子***902,用于接收所述客户端根据所述缓存子***的IP地址发送的数据请求消息,并向所述客户端发送与所述数据请求消息对应的数据。
缓存子***902具体用于接收所述客户端发送的数据请求消息;如果所述缓存子***中缓存有与所述数据请求消息对应的数据,则所述缓存子***将缓存的与所述数据请求消息对应的数据发送给所述客户端;如果所述缓存子***中没有缓存所述数据请求消息对应的数据,则所述缓存子***向源服务器发送用于查询数据的数据请求消息,所述缓存子***接收所述源服务器返回的与所述查询数据的数据请求消息对应的数据,所述缓存子***在本地保存所述数据后并将所述数据发送给所述客户端。
缓存子***902还用于所述缓存子***根据刷新策略,从所述源服务器获取数据,并更新缓存的数据。
该***还可以包括:分光器或者路由器,用于将客户端发送的所述上网请求分为两路,一路发送给所述DNS重定向子***,另一路发送给外部网络。
本实施例通过由DNS重定向***实现网络缓存,可以避免基于策略路由的网络缓存,并且具有可靠性高,无网络时延,不影响其他业务性能,不会对现有网络拓扑造成影响的条件下,达到节省出口带宽、降低网间结算、提高网络利用效率、降低网络运营成本、提升用户体验的目的。
图10为本发明实施例的DNS重定向子***的结构示意图,包括DPI设备1001和DNS服务器1002;DPI设备1001用于接收客户端发送的域名***DNS解析请求,解析出所述DNS解析请求携带的域名,确定所述域名在白名单中;DNS服务器1002用于获取所述域名对应的缓存子***的网际协议IP地址,并将所述缓存子***的IP地址发送给所述客户端,以便于客户端根据所述缓存子***的IP地址向所述缓存子***请求数据。
所述DPI设备1001还可以用于对接收的DNS解析请求进行深度分析,以生成热点网站用于更新白名单。
DNS服务器1002具体可以用于如果所述域名对应唯一缓存子***的IP地址,则获取所述唯一缓存子***的IP地址;如果所述域名对应两个以上缓存子***的IP地址,则根据IP地址选择算法,选择一个适应的缓存子***的IP地址作为所述域名对应的缓存子***的网际协议IP地址。DNS服务器1002可以为GSLB。
本实施例通过由DNS重定向***实现网络缓存,可以避免基于策略路由的网络缓存,并且具有可靠性高,无网络时延,不影响其他业务性能,不会对现有网络拓扑造成影响的条件下,达到节省出口带宽、降低网间结算、提高网络利用效率、降低网络运营成本、提升用户体验的目的。
图11为本发明实施例的DNS重定向子***另一实施例的结构示意图,包括DPI设备1101和DNS服务器1102;深层报文解析设备1101用于接收分光器或者路由器转发的客户端发送的上网请求,并在所述上网请求为DNS解析请求时,将所述DNS解析请求解析获取携带的域名,并将所述域名发送给DNS服务器。DNS服务器1102用于接收所述DPI设备发送的所述DNS解析请求携带的域名,并确定所述域名在白名单中时,将所述域名对应的缓存子***的网际协议IP地址并发送给所述客户端,以便于客户端根据所述缓存子***的IP地址向所述缓存子***请求数据。
可以理解的是,上述方法及设备中的相关特征可以相互参考。另外,上述实施例中的“第一”、“第二”等是用于区分各实施例,而并不代表各实施例的优劣。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (11)
1.一种网络缓存方法,其特征在于,包括:
客户端发送DNS解析请求,所述DNS解析请求携带了域名;
所述DNS解析请求经分光器或者路由器被发送到外部网络和DNS重定向子***;
所述DNS重定向子***接收客户端发送的域名***DNS解析请求,解析出所述DNS解析请求携带的域名,确定所述域名在白名单中;
所述DNS重定向子***获取所述域名对应的缓存子***的网际协议IP地址,并将所述缓存子***的IP地址发送给所述客户端,以便于客户端根据所述缓存子***的IP地址向所述缓存子***请求数据;
所述客户端接收所述外部网络和DNS重定向子***分别返回的DNS响应,所述外部网络返回的DNS响应携带了所述域名对应的源服务器IP地址,所述DNS重定向子***返回的DNS响应携带了缓存子***的IP地址,所述客户端处理先接收到的DNS响应,后接收到DNS响应丢弃。
2.根据权利要求1所述的方法,其特征在于,所述DNS重定向子***获取所述域名对应的缓存子***的网际协议IP地址,进一步包括:
如果所述域名对应唯一缓存子***的IP地址,则获取所述唯一缓存子***的IP地址;
如果所述域名对应两个以上缓存子***的IP地址,则根据IP地址选择算法,选择一个适应的缓存子***的IP地址作为所述域名对应的缓存子***的网际协议IP地址。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:所述DNS重定向子***如果确定所述DNS解析请求携带的域名不在所述白名单中,则丢弃所述DNS解析请求。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:所述DNS重定向子***对接收的DNS解析请求进行深度分析,以生成热点网站用于更新白名单。
5.一种域名***DNS重定向子***,其特征在于,包括:
深层报文解析设备,用于接收客户端发送的域名***DNS解析请求,解析出所述DNS解析请求携带的域名,确定所述域名在白名单中,所述DNS解析请求还经分光器或者路由器被发送到外部网络;
DNS服务器,用于获取所述域名对应的缓存子***的网际协议IP地址,并将所述缓存子***的IP地址发送给所述客户端,以便于客户端根据所述缓存子***的IP地址向所述缓存子***请求数据。
6.根据权利要求5所述的域名***DNS重定向子***,其特征在于,所述深层报文解析设备还用于对接收的DNS解析请求进行深度分析,以生成热点网站用于更新白名单。
7.根据权利要求5或6所述的域名***DNS重定向子***,其特征在于,所述DNS服务器具体用于如果所述域名对应唯一缓存子***的IP地址,则获取所述唯一缓存子***的IP地址;如果所述域名对应两个以上缓存子***的IP地址,则根据IP地址选择算法,选择一个适应的缓存子***的IP地址作为所述域名对应的缓存子***的网际协议IP地址。
8.一种网络缓存***,其特征在于,包括:
域名***DNS重定向子***,用于接收客户端发送的域名***DNS解析请求,解析出所述DNS解析请求携带的域名,确定所述域名在白名单中;获取所述域名对应的缓存子***的网际协议IP地址,并将所述缓存子***的IP地址发送给所述客户端,以便于客户端根据所述缓存子***的IP地址向所述缓存子***请求数据;
缓存子***,用于接收所述客户端根据所述缓存子***的IP地址发送的数据请求消息,并向所述客户端发送与所述数据请求消息对应的数据;
还包括:
分光器或者路由器,用于将客户端发送的所述DNS解析请求分为两路,一路发送给所述DNS重定向子***,另一路发送给外部网络。
9.根据权利要求8所述的网络缓存***,其特征在于,所述缓存子***具体用于接收所述客户端发送的数据请求消息;如果所述缓存子***中缓存有与所述数据请求消息对应的数据,则所述缓存子***将缓存的与所述数据请求消息对应的数据发送给所述客户端;如果所述缓存子***中没有缓存所述数据请求消息对应的数据,则所述缓存子***向源服务器发送用于查询数据的数据请求消息,所述缓存子***接收所述源服务器返回的与所述查询数据的数据请求消息对应的数据,所述缓存子***在本地保存所述数据后并将所述数据发送给所述客户端。
10.根据权利要求8或9所述的***,其特征在于,所述缓存子***还用于根据刷新策略,从源服务器获取数据,并更新缓存的数据。
11.一种域名***DNS重定向子***,其特征在于,包括:
深层报文解析设备,用于接收分光器或者路由器转发的客户端发送的上网请求,并在所述上网请求为DNS解析请求时,将所述DNS解析请求解析获取携带的域名,并将所述域名发送给DNS服务器,所述DNS解析请求还经分光器或者路由器被发送到外部网络;
DNS服务器,用于接收深层报文解析设备发送的所述DNS解析请求携带的域名,并确定所述域名在白名单中时,将所述域名对应的缓存子***的网际协议IP地址发送给所述客户端,以便于客户端根据所述缓存子***的IP地址向所述缓存子***请求数据。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2011/073566 WO2011116726A2 (zh) | 2011-04-29 | 2011-04-29 | 网络缓存方法和***及dns重定向子*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102301682A CN102301682A (zh) | 2011-12-28 |
CN102301682B true CN102301682B (zh) | 2014-02-19 |
Family
ID=44673694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180000699.6A Active CN102301682B (zh) | 2011-04-29 | 2011-04-29 | 网络缓存方法和***及dns重定向子*** |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102301682B (zh) |
WO (1) | WO2011116726A2 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104144231A (zh) * | 2014-08-21 | 2014-11-12 | 北京金山安全软件有限公司 | 处理dns查询请求的方法及装置 |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102624750B (zh) * | 2012-04-22 | 2016-08-03 | 吴兴利 | 抵御dns递归攻击的方法和*** |
CN103581258B (zh) * | 2012-08-03 | 2017-11-03 | ***通信集团公司 | 网络数据缓存的方法和*** |
CN102801823A (zh) * | 2012-08-23 | 2012-11-28 | 神州数码网络(北京)有限公司 | 一种dns中继方法和装置 |
CN104219335B (zh) * | 2013-05-30 | 2018-08-24 | 张大顺 | 一种dns请求的处理方法、装置及*** |
CN104219200B (zh) * | 2013-05-30 | 2017-10-17 | 杭州迪普科技股份有限公司 | 一种防范dns缓存攻击的装置和方法 |
CN104378452B (zh) * | 2013-08-14 | 2019-02-15 | 阿里巴巴集团控股有限公司 | 一种用于域名解析的方法、装置及*** |
CN104935556B (zh) * | 2014-03-20 | 2019-06-07 | 腾讯科技(深圳)有限公司 | 一种网络安全处理方法、装置及*** |
CN104065543A (zh) * | 2014-05-19 | 2014-09-24 | 浪潮电子信息产业股份有限公司 | 一种基于数据传输管理的网卡驱动设计方法 |
CN104243344B (zh) * | 2014-10-11 | 2018-06-19 | 网宿科技股份有限公司 | 一种有效数据包捕获方法及请求重定向服务器 |
CN106487607A (zh) * | 2015-08-28 | 2017-03-08 | 中国电信股份有限公司 | 一种基于缓存服务器状态的重定向方法及重定向*** |
CN106487846A (zh) * | 2015-08-28 | 2017-03-08 | 中国电信股份有限公司 | 缓存***的白名单更新方法、采集分析装置及缓存*** |
CN107534690A (zh) * | 2015-08-31 | 2018-01-02 | 慧与发展有限责任合伙企业 | 采集域名***流量 |
CN106550056B (zh) * | 2015-09-18 | 2019-09-10 | ***通信集团江苏有限公司 | 一种域名解析方法及装置 |
CN107872544A (zh) * | 2016-09-28 | 2018-04-03 | 中兴通讯股份有限公司 | 一种域名解析方法、装置、网关及*** |
CN108259528B (zh) * | 2016-12-28 | 2021-01-12 | 华为技术有限公司 | 一种资源缓存方法及装置 |
CN108270683A (zh) * | 2016-12-30 | 2018-07-10 | 华为软件技术有限公司 | Dns直路场景下的流量优化方法、缓存服务器和*** |
CN107613036B (zh) * | 2017-09-04 | 2021-07-23 | 北京新流万联网络技术有限公司 | 实现https透明代理的方法和*** |
CN108040085A (zh) * | 2017-11-20 | 2018-05-15 | 广州华多网络科技有限公司 | 网络接入方法、装置及服务器 |
CN111371866B (zh) * | 2020-02-26 | 2023-03-21 | 厦门网宿有限公司 | 一种处理业务请求的方法和装置 |
CN111556552B (zh) * | 2020-03-26 | 2023-01-31 | 维沃移动通信有限公司 | 数据传输方法及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001048622A1 (en) * | 1999-12-23 | 2001-07-05 | Webdatabank, Inc. | Web contents transmission system and method thereof |
CN101984637A (zh) * | 2010-11-02 | 2011-03-09 | 中兴通讯股份有限公司 | 内容分发实现方法及*** |
CN102025793A (zh) * | 2010-01-22 | 2011-04-20 | ***通信集团北京有限公司 | 一种ip网络中的域名解析方法、***及dns服务器 |
CN102571997A (zh) * | 2010-12-29 | 2012-07-11 | ***通信集团北京有限公司 | 一种数据访问的方法、***及设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070118667A1 (en) * | 2005-11-21 | 2007-05-24 | Limelight Networks, Inc. | Domain name resolution based dynamic resource assignment |
CN101626375B (zh) * | 2008-07-08 | 2013-10-09 | 鸿富锦精密工业(深圳)有限公司 | 域名防护***及方法 |
CN101895589A (zh) * | 2010-07-26 | 2010-11-24 | 杭州华三通信技术有限公司 | 广域网路由器和广域网路由器中路由表项建立的方法 |
-
2011
- 2011-04-29 CN CN201180000699.6A patent/CN102301682B/zh active Active
- 2011-04-29 WO PCT/CN2011/073566 patent/WO2011116726A2/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001048622A1 (en) * | 1999-12-23 | 2001-07-05 | Webdatabank, Inc. | Web contents transmission system and method thereof |
CN102025793A (zh) * | 2010-01-22 | 2011-04-20 | ***通信集团北京有限公司 | 一种ip网络中的域名解析方法、***及dns服务器 |
CN101984637A (zh) * | 2010-11-02 | 2011-03-09 | 中兴通讯股份有限公司 | 内容分发实现方法及*** |
CN102571997A (zh) * | 2010-12-29 | 2012-07-11 | ***通信集团北京有限公司 | 一种数据访问的方法、***及设备 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104144231A (zh) * | 2014-08-21 | 2014-11-12 | 北京金山安全软件有限公司 | 处理dns查询请求的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2011116726A3 (zh) | 2012-04-05 |
CN102301682A (zh) | 2011-12-28 |
WO2011116726A2 (zh) | 2011-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102301682B (zh) | 网络缓存方法和***及dns重定向子*** | |
US11805184B2 (en) | Content delivery systems and methods | |
US8868834B2 (en) | Efficient cache validation and content retrieval in a content delivery network | |
CN108156013B (zh) | 一种页面服务容灾方法、装置及电子设备 | |
US9871722B2 (en) | Content delivery network routing method, system and user terminal | |
CN101222424B (zh) | 内容分发网络和该网络中基于内容的调度方法 | |
EP3472697B1 (en) | Dynamic acceleration in content delivery network | |
CN103297472B (zh) | 一种应用于内容分发网络的重定向方法及内容分发节点 | |
CN107707943B (zh) | 一种实现云服务融合的方法及*** | |
CN105763628B (zh) | 数据访问请求处理方法及装置、边缘节点服务器和集群 | |
US8527635B2 (en) | Contents delivery system and method, web server and contents provider DNS server thereof | |
CN103023768B (zh) | 边缘路由节点以及其从多源预取内容的方法 | |
US8166197B2 (en) | Multipath routing process | |
EP2266043B1 (en) | Cache optimzation | |
CN105898352A (zh) | 基于m3u8的流媒体文件直播方法及*** | |
EP3021537B1 (en) | Method, device and system for determining content acquisition path and processing request | |
CN104320410A (zh) | 基于http的全业务cdn***及其工作方法 | |
JP2016530634A (ja) | コンテンツデリバリーネットワークにおける要求をディスパッチする方法及びシステム | |
EP3202140A1 (en) | Handling long-tail content in a content delivery network | |
WO2005022825A1 (fr) | Systeme de reseau de remise de contenu en couches et procede de distribution de contenu en couches | |
CN103780654A (zh) | 业务请求处理方法、用户终端、业务路由器及网络*** | |
CN103312716A (zh) | 一种访问互联网信息的方法及*** | |
US20200320154A1 (en) | A webpage loading method, webpage loading system and server | |
KR20140032064A (ko) | 컨텐츠 전송 서비스 방법, 이를 위한 캐시 장치 | |
US20150006622A1 (en) | Web contents transmission method and apparatus |
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 |