内容分发方法、网络系统、gslb设备和域名服务器的制作方法

文档序号:7711487阅读:247来源:国知局
专利名称:内容分发方法、网络系统、gslb设备和域名服务器的制作方法
技术领域
本发明涉及网络技术,特别是涉及一种内容分发方法、网络系统、GSLB设备和域名服务器。
背景技术
在内容分发网络(CDN)系统中,目前的重定向技术有两种基于DNS (domain name system,域名系统)方式的重定向和基于客户端IP方式的重定向。
基于DNS方式的重定向技术是根据客户端本地DNS的IP地址确定其位置信息,GSLB (global server load balance,全局服务器负载均衡)设备通过一系列就近性查询和健康查询手段,最终选择距离本地DNS最近的服务器节点。然而,基于DNS的重定向方法由于基于DNS的GSLB设备是依靠本地DNS服务器的IP地址,而不是客户端的真实地址,进行就近性判断的,因此可能导致就近性判断失准。
基于客户端IP方式的重定向是客户端请求被直接指向GSLB设备,GSLB i殳备会通过TCP/IP (transfer control protocol/Internetprotocol,传输控制/网际协议)握手获得客户的IP并根据客户端实际的IP地址段进行就近性判断。这种方式克服了基于DNS重定向方式的缺点,利用客户端IP编址的规律,可以才艮据网络的就近性分配流量。然而,由于这种方式的就近性判断与重定向是当客户端与GSLBi殳备建立连接时发生的,故对于相应的分发内容类型和相关协议有所限制要求,如针对HTTP可以采用通用的302协+义重定向;但对于类似于MMS这类私有协议就无法通过通用做法来实现。而且,随着访问客户端的增加和网络M^莫的扩张,GSLB设备的压力会非常大,因此,也会造成投资成本的迅速增加。另外,由于客户端需要与GSLB设备建立TCP连接,而且GSLB设备作为全网的核心网元,很容易受到不明客户端或者黑客的攻击,有较大的安全隐患。

发明内容
本发明的目的是提出一种内容分发方法,在DNS重定向过程中实现客户端的精确定位。
为实现上述目的,本发明提供了一种内容分发方法,包括GSLB设备接收来自本地域名服务器的DNS查询请求,所述DNS查询请求中包括客户端的IP地址信息;所述GSLB设备根据所述DNS查询请求中所述客户端的IP地址信息确定能够提供所i^户端请求访问的内容的服务节点;和所述GSLB设备将所述服务节点的地址发送给所述客户端用于所^户端从所述服务节点获得所述请求访问的内容。
在一个实施例中,在所述GSLB设备接收来自本地域名服务器的DNS查询请求之前还包括所述本地域名服务器将所^户端的IP地址信息写入来自所述客户端的DNS查询请求;和所述本地域名服务器将所述DNS查询请求发送到所述GSLB设备。
进一步的,所述本地域名服务器将所^J:户端的IP地址信息写入所述DNS查询请求包括所述本地域名服务器将所述客户端的IP地址写入所述DNS查询请求;和所述本地域名月良务器在所述DNS查询请求中设置IP地址标识字段。
在一个实施例中,所述的内容分发方法,还包括所述GSLB设备才艮据所述DNS查询请求的IP地址标识字段判断所述DNS查询请求是否包括所述IP地址信息;和当所述DNS查询请求包括所述IP地址信息时,所述GSLB设备从所述DNS查询请求中提取所i^户端的IP地址。
进一步的,所述GSLB设备根据所述DNS查询请求中所^户端的IP地址信息确定能够提供所述客户端请求访问的内容的服务节点包括所述GSLB i殳备查询IP地址数据库以找出所述客户端就近的多个所述服务节点;和所述GSLB设备在多个所述服务节点中查找性能最优
6的所述服务节点。
在一个实施例中,所述的内容分发方法,还包括所述本地域名服务器查找所述客户端请求访问的域名的授权域名服务器;所述本地域名服务器向所述授权域名服务器发送所述DNS查询请求;和所述授权域名服务器将GSLB设备的地址发送给所述本地域名服务器。
本发明的目的是提出一种GSLB设备,能够在DNS重定向时实现客户端的精确定位。
为实现上述目的,本发明还提供了一种GSLB设备,包括接收装置,用于接收来自本地域名服务器的DNS查询请求,所述DNS查询请求中包括客户端的IP地址信息;服务节点选择装置,用于根据所述DNS查询请求中所i^户端的IP地址确定能够提供所逸客户端请求访问的内容的服务节点;和发送装置,用于将所述服务节点的地址发送给所述客户端使所述客户端能够从所述服务节点获得所述请求访问的内容。
在一个实施例中,所述DNS查询请求包括IP地址标识字段,所述GSLB设备还包括检测装置,用于根据所述DNS查询请求的所述IP地址标识字段判断所述DNS查询请求是否包括所述IP地址信息;IP地址提取装置,用于当所述检测装置通过检测IP地址标识字段确定所述DNS查询请求包括所述IP地址信息时,所述IP地址提取装置从所述DNS查询请求中提取所述客户端的IP地址。
进一步的,所述服务节点选择装置包括查询模块,用于查询IP地址数据库以找出所述客户端就近的多个所述服务节点;和最优节点选择模块,用于在多个所述服务节点中查找性能最优的所述服务节点。
本发明的目的是提出一种域名服务器,能够提供对客户端精确定位的机制。
为实现上述目的,本发明还提供了一种域名服务器,包括接收装置,用于接收来自客户端的DNS查询请求;写信息装置,用于将所述客户端的IP地址信息写入来自所^户端的DNS查询请求;和发送装置,用于发送所述DNS查询请求。进一步的,所述写信息装置包括IP地址写模块,用于将所i^户端的IP地址写入所述DNS查询请求;和标识字段"i殳置^f莫块,用于在所述DNS查询请求中设置IP地址标识字段。
本发明的目的是提出一种内容分发网络系统,能够在DNS重定向时实现对客户端的精确定位。
为实现上述目的,本发明还提供了一种内容分发网络系统,包括本地域名服务器,用于接收来自客户端的DNS查询请求;和GSLB设备,用于接收来自所述本地域名服务器的DNS查询请求,所述DNS查询请求中包括所述客户端的IP地址信息,根据所述DNS查询请求中所述客户端的IP地址信息确定能够提供所述客户端请求访问的内容的服
务节点,并将所述服务节点的地址发送给所迷客户端用于所述客户端从所述服务节点获得所述请求访问的内容。
在一个实施例中,所述的内容分发网络系统,还包括所ii^户端请求访问的域名的授权域名服务器,所述授权域名服务器接收所迷本地域名服务器发送的所述DNS查询请求,将GSLB设备的地址发送给所述本地域名服务器。
基于上述技术方案,本发明基于DNS的GSLB设备能够依靠客户端的真实IP地址进行就近性判断,实现了 CDN对客户端的精确定位。另外,基于改进型DNS协议的全局负载均衡对于相应的分发内容类型和相关协议没有任何限制要求。进一步的,随着访问客户端的增加和网络规模的扩张,不会明显增加GSLB设备的性能压力,因此,投资成本不会明显增加。而且,GSLB设备与客户端无需建立TCP以及应用连接,因此,GSLB设备并不容易受到不明客户端或者黑客的攻击,安全隐患较小。


此处所说明的附图用来提供对本发明的进一步解释,构成本发明的一部分。本发明的示意性实施例及其说明仅用于解释本发明,但并不构成对本发明的不当限定。在附图中图l为根据本发明实施例的内容分发网络系统的示意图。
图2为根据本发明实施例的内容分发方法的流程图。
图3为根据本发明另一实施例的内容分发方法的流程图。
图4为根据本发明实施例的DNS报文的结构示意图。
图5为根据本发明实施例的DNS报文补充部分的结构示意图。
图6为根据本发明另 一实施例的内容分发网络系统的示意图。
图7为根据本发明实施例的GSLBi殳备的结构示意图。
图8为根据本发明实施例的域名服务器的结构示意图。
具体实施例方式
下面参照附图对本发明进行更详细的描述,其中说明本发明的示例性实施例。
图1为根据本发明实施例的内容分发网络系统100的示意图。内容分发网络系统100包括GSLB设备102、客户端104、本地域名服务器106、授权域名服务器108、服务节点110和源服务器112。
内容分发网络系统100能够将ICP (Internet content provider,互联网内,供商)源服务器112中的内^储到分布于各地的服务节点110,比如SLB (server load balancing,服务器负载均衡)设备或Cache (緩存器)中,将客户端104的请求指向到安全可用并且距离客户端就近的服务节点110。因此,网站的源服务器112的负载4^迅速降低,减轻了网站为应付访问量的不断增加而需要不断增加的服务器、网络带宽和相关的网络设备,以及为维护更多的设备而需要不断增加的工程技术人员的压力。
在内容分发网络系统100中,客户端104能够通过浏览器接收用户的输入的要访问的网站域名,发送DNS查询请求。DNS查询请求包括用户对某URL (uniform resource locator,统一资源定位器)指向的内容的访问请求。
本地域名服务器106能够接收客户端104发送的DNS查询请求。当本地域名服务器106的緩存中没有客户端104请求访问的网站记录,
9本地域名服务器106会查找用户要求访问的域名的授权域名服务器 108。授权域名服务器108可以将GSLB设备102的地址返回给本地域 名服务器106以进行地址解析。
根据本发明的实施例,客户端104或者本地域名服务器106可以将 客户端104的IP地址信息写入到DNS查询请求的报文中,为GSLB设 备102识别用户位置提皿据。
GSLB设备102能够从DNS查询请求中提^^户端104的IP地址 信息,通过对服务节点110的就近性检查、健康检查、负载状况检查 等,对客户端104的访问进行重定向,在全网范围内为客户端104返回 最佳的服务节点110的地址。
图2为根据本发明实施例的内容分发方法200的流程图。在步骤 202中,GSLB设^^接收来自本地域名服务器的DNS查询请求,DNS 查询请求中包括客户端的IP地址信息。
在步骤204中,GSLB设备根据DNS查询请求中客户端的IP地址 确定能够提供客户端请求访问的内容的服务节点。
在步骤206中,GSLB设备将服务节点的地址发送给客户端用于客 户端从月艮务节点获得请求访问的内容。
图3为根据本发明另一实施例的内容分发方法300的流程图。方法 300的描述结合了图1中的内容分发网络系统100,但不限于内容分发 网络系统100的形式。
在步骤302中,客户端向本地域名服务器发送DNS查询请求。比 如,用户在客户端104的浏览器中输入要访问的网站的域名,客户端 104向本地域名服务器106请求对该域名的解析。
在步骤304中,本地域名服务器将客户端的IP地址信息写入来自 客户端的DNS查询请求,并发送给GSLB设备。例如,本地域名服务 器106将客户端104的IP地址信息,包括客户端104的IP地址和IP 地址标识写入DNS查询请求,并将包含客户端104 IP地址的改进型 DNS查询请求发送给GSLB设备102。在一个实施例中,客户端104也 可以在步骤302中将其IP地址写入DNS查询请求。DNS查询请求报文的结构如图4的DNS报文的结构示意图所示。 DNS报文前12个子节是头部区,其中包括标识字段(identification) 和标志字段(flags)和数目字段。四个数目字段(number of questions, number of answer RRs, number of authourity RRs , number of additional RRs)指明了头部之后出现的四种类型的数据部分的出现数 目。
问题部分(questions)包含了关于所执行的查询的信息。这个区包 含被查询的名称,指明了所询问的关于该名称的问题类型的类型字段。 答案部分(answers)在一个从名称服务器发出的应答中,包含了最初 被查询的名称的资源记录。权威部分(authority)包含了其他权威服务 器的记录。补充部分(additional information)包含了其他有用的记 录。
根据本发明的实施例,在DNS协议报文中的补充部分(additional information)可以增加客户端IP地址的信息。该字段的结构符合DNS 协议标准的RR (resource record,资源记录)字段模式,如图5所示 的DNS报文补充部分的结构。
如图5所示,在类型字段中,可以利用原先DNS协i5C中已有的类 型,比如可以选取为0001,表明资源数据是客户端的IP地址。在类字 段中,需要在原先DNS协议已有类别的基础上新增一个用户地址标识 字段,比如选取00AA。生存时间TTL字段由系统设定。资源数据长度 标识资源数据字段的长度,由于资源数据是客户端的IP地址,这里资 源数据长度的值可以为0004。在资源数据字段中,写入客户端的IP地 址。这样,包含客户端IP地址信息的改进型的DNS查询请求才艮文就生 成了。
在步骤306中,本地域名服务器查找用户要求访问的域名的授权域 名服务器,并将DNS查询请求发送给授权域名服务器。比如,当本地 域名服务器106的緩存中没有用户要求访问的网站内容时,本地域名服 务器106可以采用递归的方式,通过顶级域名服务器,查找到用户要求 访问的域名的授权域名服务器108,本地域名服务器106直接向域名的授权域名服务器108转发DNS查询请求。
在步骤308中,授权域名服务器将GSLB设备的地址发送给本地域 名服务器。比如,授权域名服务器108将GSLB设备102的地址发送给 本地域名服务器106,通知本地域名服务器106相应内容的授权域名服 务由GSLB设备提供。
在步骤310中,本地域名服务器将DNS查询请求发送给GSLB设 备。比如,本地域名服务器106将改进型DNS查询请求发送给GSLB 设备102。
在步骤312中,GSLB设备根据DNS查询请求的IP地址标识字段 判断DNS查询请求是否包括客户端的IP地址信息。比如,当GSLB设 备102接收本地域名服务器106发送的改进型DNS查询请求报文之 后,首先判断报文补充部分中的类字段是否为IP地址标识字段OOAA。
在步骤314中,当DNS查询请求包括IP地址信息时,GSLB i殳备 从DNS查询请求中提取客户端的IP地址。比如,当类字段等于 OOAA,表明资源数据的内容为原始客户端104的IP地址。GSLB设备 102从改进型DNS查询请求报文中的资源数据提^^户端104的IP地 址。
在步骤316中,GSLB设备根据DNS查询请求中客户端的IP地址 确定能够提供客户端请求访问的内容的服务节点,并将其地址发送给客 户端。GSLB设备可以查询IP地址数据库以根据IP地址信息找出客户 端就近的多个服务节点,并在就近的多个服务节点中找出性能最优的服 务节点。比如,GSLB设备102可以查询IP地址数据库,确定客户端 104的IP地址所在省、市的多个月良务节点110的地址。然后GSLB i殳 备102可以根据这几个服务节点110的状态,比如服务器的利用率、内 容访问量、负荷情况等,选择性能最优的服务节点110,并将其IP地址 返回给本地域名服务器106,进而由本地域名服务器106将服务节点 110的地址发送给客户端104。
在步骤318中,用户根据得到的IP地址向服务节点110发出访问 请求。图6为根据本发明另一实施例的内容分发网络系统600的示意图。 内容分发网络系统600包括本地域名月艮务器610和GSLB设备620。
本地域名服务器610用于接收来自客户端的DNS查询请求。根据 本发明的实施例,客户端或者本地域名服务器610可以将客户端的IP 地址信息写入到DNS查询请求的净艮文中。
GSLB设备620用于接收来自本地域名服务器的DNS查询请求, DNS查询请求中包括客户端的IP地址信息,根据DNS查询请求中客户 端的IP地址信息确定能够提供客户端请求访问的内容的服务节点,并 将服务节点的地址发送给客户端用于客户端从服务节点获得请求访问的 内容。
图7为根据本发明实施例的GSLB设备700的结构示意图。GSLB 设备700包括接收装置702、服务节点选择装置704和发送装置706。
接收装置702,用于接收来自本地域名服务器的DNS查询请求, DNS查询请求中包括客户端的IP地址信息。
服务节点选择装置704,用于根据DNS查询请求中客户端的IP地 址信息确定能够提供客户端请求访问的内容的服务节点。在一个实施例 中,服务节点选择装置704包括查询模块12和最优节点选择模块14。 查询模块12用于查询IP地址数据库以根据IP地址信息找出客户端就 近的多台服务节点。最优节点选择模块14,用于在多台服务节点中查找 性能最优的服务节点。
发送装置706,用于将服务节点的地址发送给客户端使客户端能够 从服务节点获得请求访问的内容。
在一个实施例中,GSLB设备700还包括检测装置708和IP地址 提取装置710。检测装置708用于才艮据DNS查询请求的IP地址标识字 段判断DNS查询请求是否包括IP地址信息。
IP地址提取装置710,用于当检测装置通过检测IP地址标识字段 确定DNS查询请求包括IP地址信息时,IP地址提取装置710从DNS 查询请求中提取客户端的IP地址。
图8为根据本发明实施例的域名服务器800的结构示意图。域名服
13务器800包括接收装置802、写信息装置804和发送装置806。 接收装置802用于接收来自客户端的DNS查询请求。 写信息装置804用于将客户端的IP地址信息写入来自客户端的
DNS查询请求。
发送装置806用于发送DNS查询请求。
在一个实施例中,写信息装置804可以包括IP地址写模块22和标 识字段设置模块24。 IP地址写模块22,用于将客户端的IP地址写入 DNS查询请求。标识字段设置模块24,用于在DNS查询请求中设置IP 地址标识字段。
根据本发明的实施例,基于DNS的GSLB设备能够依靠客户端的 真实IP地址进行就近性判断,实现了 CDN对客户端的精确定位。另 外,基于改进型DNS协议的全局负载均衡对于相应的分发内容类型和 相关协议没有任何限制要求。进一步的,随着访问客户端的增加和网络 规模的扩张,不会明显增加GSLB设备的性能压力,因此,投资成本不 会明显增加。而且,GSLB设备与客户端无需建立TCP以及应用连 接,因此,GSLB设备并不容易受到不明客户端或者黑客的攻击,安全 隐患较小。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的 或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技 术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理 和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适 于特定用途的带有各种修改的各种实施例。
权利要求
1.一种内容分发方法,其特征在于,包括GSLB设备接收来自本地域名服务器的DNS查询请求,所述DNS查询请求中包括客户端的IP地址信息;所述GSLB设备根据所述DNS查询请求中所述客户端的IP地址信息确定能够提供所述客户端请求访问的内容的服务节点;和所述GSLB设备将所述服务节点的地址发送给所述客户端用于所述客户端从所述服务节点获得所述请求访问的内容。
2. 根据权利要求1所述的内容分发方法,其特征在于,在所述GSLB设备接收来自本地域名服务器的DNS查询请求之前还包括所述本地域名服务器将所i4^户端的IP地址信息写入来自所述客户端的DNS查询请求;和所述本地域名服务器将所述DNS查询请求发送到所述GSLB设备。
3. 根据权利要求2所述的内容分发方法,其特征在于,所述本地域名服务器将所迷客户端的IP地址信息写入所述DNS查询请求包括所述本地域名服务器将所述客户端的IP地址写入所述DNS查询请求;和所述本地域名服务器在所述DNS查询请求中设置IP地址标识字段。
4. 根据权利要求l所述的内容分发方法,其特征在于,还包括所述GSLB设备根据所述DNS查询请求的IP地址标识字段判断所述DNS查询请求是否包括所述IP地址信息;和当所述DNS查询请求包括所述IP地址信息时,所述GSLB设备从所述DNS查询请求中提取所述客户端的IP地址。
5. 根据权利要求1所述的内容分发方法,其特征在于,所述GSLB设备才艮据所述DNS查询请求中所^户端的IP地址信息确定能够提供所述客户端请求访问的内容的服务节点包括所述GSLB设备查询IP地址数据库以找出所^户端就近的多个所述服务节点;和所述GSLB设备在多个所述服务节点中查找性能最优的所述服务节点。
6. 根据权利要求l所述的内容分发方法,其特征在于,还包括所述本地域名服务器查找所述客户端请求访问的域名的授权域名服务器;所述本地域名服务器向所述授权域名服务器发送所述DNS查询请求;和所述授权域名服务器将GSLB设备的地址发送给所述本地域名服务器。
7. —种GSLB设备,其特征在于,包括接收装置,用于接收来自本地域名服务器的DNS查询请求,所述DNS查询请求中包括客户端的IP地址信息;服务节点选择装置,用于根据所述DNS查询请求中所述客户端的IP地址确定能够提供所述客户端请求访问的内容的服务节点;和发送装置,用于将所述服务节点的地址发送给所述客户端使所迷客户端能够从所述服务节点获得所述请求访问的内容。
8. 根据权利要求7所述的GSLB设备,其特征在于,所述DNS查询请求包括IP地址标识字段,所述GSLB设备还包括检测装置,用于根据所述DNS查询请求的所述IP地址标识字段判断所述DNS查询请求是否包括所述IP地址信息;IP地址提取装置,用于当所述检测装置通过检测IP地址标识字段确定所述DNS查询请求包括所述IP地址信息时,所述IP地址提取装置从所述DNS查询请求中提取所i^户端的IP地址。
9. 根据权利要求7所述的GSLB设备,其特征在于,所述服务节点选择装置包括查询模块,用于查询IP地址数据库以找出所述客户端就近的多个所述服务节点;和最优节点选择模块,用于在多个所述服务节点中查找性能最优的所述服务节点。
10. —种域名服务器,其特征在于,包括接收装置,用于接收来自客户端的DNS查询请求;写信息装置,用于将所述客户端的IP地址信息写入来自所述客户端的DNS查询请求;和发送装置,用于发送所述DNS查询请求。
11. 根据权利要求10所述的域名服务器,其特征在于,所述写信息装置包括IP地址写模块,用于将所^户端的IP地址写入所述DNS查询请求;和标识字段设置模块,用于在所述DNS查询请求中设置IP地址标识字段。
12. —种内容分发网络系统,其特征在于,包括本地域名服务器,用于接收来自客户端的DNS查询请求;和GSLB设备,用于接收来自所述本地域名服务器的DNS查询请求,所述DNS查询请求中包括所^户端的IP地址信息,根据所述DNS查询请求中所述客户端的IP地址信息确定能够提供所述客户端请求访问的内容的服务节点,并将所述服务节点的地址发送给所述客户端用于所^户端从所迷服务节点获得所述请求访问的内容。
13. 根据权利要求12所述的内容分发网络系统,其特征在于,还包括所述客户端请求访问的域名的授权域名服务器,所述授权域名服务器接收所述本地域名服务器发送的所述DNS查询请求,将GSLB设备的地址发送给 述本地域名服务器。
全文摘要
本发明提供一种内容分发方法、网络系统、GSLB设备和域名服务器,涉及网络技术。其中一种内容分发方法包括GSLB设备接收来自本地域名服务器的DNS查询请求,所述DNS查询请求中包括客户端的IP地址信息;所述GSLB设备根据所述DNS查询请求中所述客户端的IP地址信息确定能够提供所述客户端请求访问的内容的服务节点;和所述GSLB设备将所述服务节点的地址发送给所述客户端用于所述客户端从所述服务节点获得所述请求访问的内容。本发明充分利用了DNS重定向的运算量较低和客户端IP重定向的精确定位的优点,能够满足多种应用层协议的重定向要求,并且节省了服务器投资成本。
文档编号H04L29/06GK101640684SQ20091016349
公开日2010年2月3日 申请日期2009年8月21日 优先权日2009年8月21日
发明者宏 唐, 樊勇兵, 杰 燕, 秦润锋, 金华敏, 楠 陈 申请人:中国电信股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1