CN101997785B - 网关***及控制方法 - Google Patents
网关***及控制方法 Download PDFInfo
- Publication number
- CN101997785B CN101997785B CN201010247379.8A CN201010247379A CN101997785B CN 101997785 B CN101997785 B CN 101997785B CN 201010247379 A CN201010247379 A CN 201010247379A CN 101997785 B CN101997785 B CN 101997785B
- Authority
- CN
- China
- Prior art keywords
- address
- request
- url
- content
- hashed value
- 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.)
- Expired - Fee Related
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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- 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/563—Data redirection of data network streams
-
- 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/50—Address allocation
- H04L61/5076—Update or notification mechanisms, e.g. DynDNS
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明的目的在于,提供一种网关***及控制方法,不需在前级设置复杂的负荷分散装置等,即可将负荷分散到多个网关服务器中。一种将从多个终端针对多个第1服务器装置的请求进行分散的网关***,该网关***具有第2服务器装置和名字解析装置,名字解析装置被分发了地址生成函数,在第2服务器装置中登记了预定的多个IP地址,名字解析装置在接收到名字解析用的第1请求时,从第1请求中提取访问目的地的URL,并使用地址生成函数,从URL的主机名的字符串生成IP地址,将IP地址发送给终端,终端将以第1服务器装置的URL作为访问目的地的第2请求,发送给登记了IP地址的第2服务器装置后,第2服务器装置根据访问目的地的URL,将第2请求传输给第1服务器装置。
Description
技术领域
本发明涉及客户机一服务器型网络服务中的网关***的负荷分散用的技术。
背景技术
伴随终端的性能提高、接入网的高速化,运营商(carrier)的网关处理的通信量(traffic)增大。因此,运营商把目标指向强化与因特网的转接线路(transit line),并使用信息处理技术来削减网关中的通信量。
例如,在用于削减通信量的信息处理技术中有内容缓存(content cache)。这里,所说内容缓存是这样一种技术,即:在某个终端请求了因特网上的服务器装置(例如Web服务器)的内容的情况下,网关的服务器装置(例如Web代理(proxy))临时存储从Web服务器获取的内容,在其他终端请求该内容的情况下,Web代理作为Web服务器的代理来返回所存储的内容作为应答。
由此,网关能够削减与Web服务器之间的通信量。并且,网关能够加快内容获取的处理。
并且,网关具有多个服务器装置,用于收容大量的终端并存储大量的内容,将内容分散在这些服务器装置中。在网关具备的服务器装置的性能具有界限的情况下,将处理分散到多个服务器装置中的方法非常有效。
以往,为了将处理分散到多个服务器装置中,例如在终端与网关的服务器装置之间设置有负荷分散装置。负荷分散装置将来自终端的请求(例如内容获取请求)传输给各个服务器装置。另外,负荷分散的处理根据将来自终端的请求深入分析到何种程度而不同。
例如,在根据发送源IP地址等低层的信息执行负荷分散的情况下,分析的处理比较少,所以负荷分散装置能够处理大量的通信量。但是,由于用于计算来自终端的请求的传输目的地的信息比较少,所以负荷分散装置有可能不能适当执行负荷分散。
并且,在根据HTTP请求等第7层(layer7)信息的信息执行负荷分散的情况下,负荷分散装置能够根据每个应用的特性适当地执行负荷分散。但是,由于负荷分散装置自身的负荷提高,所以负荷分散装置有可能不能管理多个服务器。
因此,为了解决前面叙述的问题,提出了以下所述的负荷分散用的技术。
例如,提出了各个终端根据用于判定发送目的地的表,将请求分散到各个服务器装置中的技术(例如参照专利文献1)。根据专利文献1记述的技术,用于判定应该向哪个服务器发送请求的表被分发给终端,所以终端能够将请求分散到各个服务器装置中。另外,由于针对来自终端的请求的应答中包含表的更新信息,所以也能减轻进行表的分发所需要的负荷。
另外,提出了根据由各个终端的请求而生成的散列值,各个终端将请求分散到各个网关中的技术(例如参照专利文献2)。根据专利文献2记述的技术,根据请求而生成的散列值被用作网关的索引,所以从各个终端发送的相同内容的请求(例如针对相同主机的内容获取请求)被发送给相同网关。
另外,提出了如下技术(例如参照专利文献3),负荷分散装置根据来自终端的请求内容来计算散列值,并根据所计算的散列值来选择适合作为请求的传输目的地的服务器装置。根据专利文献3记述的技术,负荷分散装置使用根据终端的请求内容而计算的散列值来传输请求,所以负荷分散装置能够将处理分散到各个服务器装置中。
【现有技术文献】
【专利文献】
【专利文献1】日本特开平11-004261号公报
【专利文献2】日本特表2002-523838号公报
【专利文献3】日本特开2004-303690号公报
在专利文献3记述的技术中,负荷分散装置计算散列值,所以负荷分散装置的处理量增加,负荷分散装置有可能成为瓶颈。即,在使用负荷分散装置的方法中,负荷集中于负荷分散装置自身,负荷分散装置有可能成为单一的障碍点。另一方面,专利文献1及2记述的技术不需要负荷分散装置。
但是,在专利文献1记述的技术中,各个终端管理请求的传输目的地信息(表)。因此,在负责的服务器装置(Web服务器)被变更的情况下,存在进行表的更新所需要的负荷较大的问题。并且,必须向终端重新追加表的检索功能及更新功能。因此,存在向现有***导入该技术需要较高成本的问题。
并且,专利文献2记述的技术与专利文献1记述的技术相同,存在必须向终端追加表的检索功能及更新功能的问题。另外,在终端计算散列值的情况下,也必须向终端侧追加用于计算散列值的功能。
发明内容
本发明就是鉴于上述问题而提出的,其目的在于,提供一种网关***,不需在网关的前级设置复杂的负荷分散装置,也不必向终端追加复杂的功能,即可将负荷分散到多个网关中。具体地讲,本发明的网关***根据识别请求内容的值、例如目的地主机名或从URL生成的散列值,生成IP地址,将对内容的访问适当分散到各个网关中。
下面说明本发明的一个代表性示例。即,一种网关***,将从多个终端针对多个第1服务器装置的请求进行分散,其特征在于,所述网关***具有名字解析装置和多个第2服务器装置,所述名字解析装置被分发了用于从字符串生成IP地址的地址生成函数,在各个所述第2服务器装置中登记了预定的多个IP地址,所述名字解析装置在接收到从所述终端发送的、访问目的地的URL的名字解析用的第1请求时,从所述接收到的第1请求中提取访问目的地的URL,所述名字解析装置使用所述地址生成函数,从所述提取到的URL的主机名的字符串生成IP地址,所述名字解析装置将所述生成的IP地址作为所述第1请求的应答,发送给所述终端,所述终端将以所述第1服务器装置的URL作为访问目的地的第2请求,发送给登记了作为所述第1请求的应答而被发送的IP地址的所述第2服务器装置后,所述第2服务器装置根据访问目的地的URL,将所述发送的第2请求传输给所述第1服务器装置。
发明效果
根据本发明的一个实施方式,网关***使名字解析装置根据散列值生成服务器装置的IP地址,所以不使用负荷分散装置,即可均等地分散负荷。
附图说明
图1是表示本发明的第1实施方式的网关***的结构的说明图。
图2A是表示本发明的第1实施方式的管理服务器具有的地址分配表的结构的说明图。
图2B是表示本发明的第1实施方式的管理服务器具有的地址生成函数的说明图。
图2C是表示本发明的第1实施方式的管理服务器具有的对象域名表的结构的说明图。
图3是表示本发明的第1实施方式的DNS代理的结构的框图。
图4是表示本发明的第1实施方式的DNS代理执行的名字解析的处理的流程图。
图5是表示本发明的第1实施方式的Web代理的结构的框图。
图6A是表示本发明的第1实施方式的Web代理具有的负责IP地址表的结构的说明图。
图6B是表示本发明的第1实施方式的Web代理具有的内容表的结构的说明图。
图7是表示本发明的第1实施方式的Web代理执行的内容获取的处理的流程图。
图8是表示本发明的第1实施方式的网关***的内容获取的处理的流程图。
图9是表示本发明的第1实施方式的分配变更请求的格式的说明图。
图10是表示本发明的第1实施方式的Web代理执行的分配变更的处理的流程图。
图11是表示本发明的第1实施方式的网关***的分配变更的处理的流程图。
图12是表示本发明的第2实施方式的URL变换规则的说明图。
图13是表示本发明的第2实施方式的Web代理执行的内容获取的处理的流程图。
图14是表示本发明的第2实施方式的网关***的内容获取的处理的流程图。
标号说明
101DNS服务器;102Web服务器;103广域网;104DNS代理;105Web代理;106局域网;107终端;108管理服务器;200地址分配表;210地址生成函数;215散列函数;220对象域名表;600负责IP地址表;610内容表;900分配变更请求;1201ULR;1207嵌入了散列值的URL。
具体实施方式
下面说明本发明的概况。
本发明的网关***具有多个服务器装置(Web代理)、名字解析装置(DNS代理)及管理装置(管理服务器),例如适用于内容(content)的缓存***等。另外,不限于对内容进行缓存的***,也能够适用于例如分散各个服务器装置之间的负荷的***。
对多个Web代理分配所负责的IP地址的范围。DNS代理使用地址生成函数执行名字解析。具体地讲,在接收到来自终端的请求时,根据请求的识别符(例如内容获取目的地的主机名)计算散列值,根据所计算的散列值生成IP地址,将所生成的IP地址作为应答返回给终端。
终端根据所返回的IP地址,向负责该IP地址的Web代理发送请求,所以网关***不需要负荷分散装置,即可分散负荷。这样,终端通过利用DNS代理的处理,能够获取请求的发送目的地。因此,不需要向终端重新追加用于利用该网关***的特殊的功能。并且,管理服务器将DNS代理生成的全部IP地址划分为多个IP地址的范围,将划分后的IP地址的范围分配给各个Web代理。因此,DNS代理不需要具有表示各个Web代理负责的IP地址的范围的信息(负责IP地址表)。
并且,终端在访问内容获取目的地的主机(Web服务器)时,向DNS代理询问与主机名对应的IP地址。DNS代理将根据地址生成函数而生成的IP地址作为应答返回给终端。终端把该IP地址作为发送目的地,发送内容获取请求等。该请求按照普通的IP路由到达网关的任一个Web代理。网关的各个Web代理对与负责的IP地址相对应的主机的内容进行缓存。
另外,Web代理也可以具有Web代理的功能,把内容获取目的地的URL的除主机名之外的信息(路径名)适当用作负荷分散用的信息源。
具体地讲,Web代理在接收到来自终端的内容获取请求时,根据由内容获取请求所指示的内容获取目的地的URL整体来计算散列值,把所计算的散列值作为主机部分的Sufix追加到URL中。并且,Web代理将被追加了散列值的URL作为应答返回给终端。
并且,Web代理根据内容获取请求,从Web服务器获取内容。在这种情况下,在所获取的内容中包含作为链接目的地的URL的情况下,根据该URL整体来计算散列值,把所计算的散列值追加到该URL中。并且,把被追加了散列值的URL作为针对内容获取请求的应答,返回给终端。这样,由于根据请求中包含的信息(内容获取目的地的URL整体)来生成散列值,所以例如能够将针对相同Web服务器的请求(主机部分相同的内容获取请求)按照每个用户、每个内容类型分散给不同的Web代理。
[实施方式1]
下面,参照附图说明本发明的第1实施方式。
图1是表示本发明的第1实施方式的网关***的结构的说明图。
本实施方式的网关***具有DNS代理104、多个Web代理(Web代理1_105-1、Web代理2_105-2、…)及管理服务器108。各个装置通过局域网106互相连接。
并且,DNS代理104及多个Web代理(Web代理1_105-1等)通过广域网103,与DNS服务器101、多个Web服务器102(Web服务器1_102-1、Web服务器2_102-2、…)连接,向与局域网106连接的多个终端(终端1_107_1、终端2_107_-2、…)提供服务。例如,从终端107_1向Web服务器1_102-1的请求消息、以及从Web服务器1_102-1向终端107_1的应答消息,经由任一个Web代理进行发送接收。
另外,在进行对多个Web代理中的任一个Web代理都相同的说明的情况下,在该说明中统称为多个Web代理,并记述为Web代理105。并且,在进行对多个Web服务器中的任一个Web服务器都相同的说明的情况下,在该说明中统称为多个Web服务器,并记述为Web服务器102。并且,在进行对多个终端中的任一个终端都相同的说明的情况下,在该说明中统称为多个终端,并记述为终端107。
另外,在图1中作为示例,图示了1台DNS服务器101、2台Web服务器102、4台Web代理105和2台终端107,但也可以与广域网103或局域网106连接图示的台数以上的各个装置。
DNS服务器101使用DNS协议执行常规的名字解析(name resolution)。Web服务器102与广域网连接,根据终端107的请求来提供内容。这里,所说内容例如指动态图像、静态图像、文本、声音等信息。
DNS代理104在接收到从终端107发送的名字解析请求时,执行名字解析的处理。具体地讲,在按照名字解析请求所指示的主机名与由管理服务器108指定的主机名相符时,DNS代理104生成IP地址,把所生成的IP地址作为针对名字解析请求的应答,发送给终端107。
另外,这里所说主机名指表示服务器装置的名称的字符串,例如指URL“http://www.example.org/ex/1”中的“www.example.org”部分。并且,这里DNS代理104生成的IP地址,指只能在本实施方式的网关***中使用的IP地址。
具体地讲,DNS代理104使用预先分发的地址生成函数,从主机名计算散列值,根据所计算的散列值生成IP地址。关于地址生成函数的具体情况将在后面使用图2B进行说明。并且,关于DNS代理104的结构将在后面使用图3进行说明。
终端107根据所发送的IP地址,向负责该IP地址的Web代理105传输内容获取请求。
另外,在主机名与由管理服务器108指定的主机名不相符的情况下,DNS代理104向DNS服务器101传输名字解析请求。DNS服务器把与主机名对应的Web服务器102的实际IP地址作为针对名字解析请求的应答,发送给终端107。
Web代理105根据从终端107发送的内容获取请求,从Web服务器102获取所请求的内容,并对所获取的内容进行缓存。另外,将所获取的内容发送给终端107。由管理服务器108预先对Web代理105分配所负责的IP地址的范围,所以内容获取请求被按照IP地址发送给负责的Web代理105。另外,关于Web代理105的结构将在后面使用图5进行说明。
管理服务器108管理分配给各个Web代理105的IP地址。并且,管理服务器108指定通过DNS代理被变换为IP地址的主机名。由此,Web代理105只对与所指定的主机名相对应的Web服务器102的内容进行缓存。
另外,管理服务器108具有地址分配表200(参照图2A)、地址生成函数210(参照图2B)和对象域名表220(参照图2C)。
图2A是表示本发明的第1实施方式的管理服务器108具有的地址分配表200的结构的说明图。
地址分配表200是表示分配给各个Web代理105的IP地址的范围的表,例如包括服务器ID 201、开始地址202和结束地址203。
服务器ID 201是用于识别服务器装置(Web代理105)的识别符。开始地址202是分配给利用服务器ID 201确定的Web代理105的地址范围的开始地址。结束地址203是地址范围的结束地址。这里,某个Web代理105负责的IP地址范围只要不与其他Web代理105负责的IP地址范围重复,则可以不是一个连续的范围,也可以划分为几个范围。
另外,管理服务器108也可以通过自动设定来均等划分预先设定的地址范围,将被均等划分后的各个地址范围分配给各个Web代理105。并且,还可以根据网关***的负荷的状态,由管理者设定分配给各个Web代理105的地址范围。
图2B是表示本发明的第1实施方式的管理服务器108具有的地址生成函数210的说明图。
地址生成函数210是用于从字符串等可变长度数据X生成IP地址的函数,包含散列函数215。地址生成函数210在被输入可变长度数据X后,利用散列函数215将所输入的可变长度数据X变换为例如64比特的散列值。并且,将预定的64比特的IPv6前缀(Prefix)和被变换后的64比特的散列值合在一起,由此生成IPv6的IP地址,并输出所生成的IP地址。
另外,对于散列函数也可以使用例如SHA1(Secure HashAlgorithm 1)。并且,除了SHA1之外,还可以使用MD5(Message DigestAlgorithm 5)等。
并且,在本实施方式中,被输入到地址生成函数210中的可变长度数据X使用Web服务器102的主机名(例如“www.example.org”等)。
图2C是表示本发明的第1实施方式的管理服务器108具有的对象域名表220的结构的说明图。
对象域名表220用于在名字解析的处理中判定是否把按照名字解析请求所指示的主机名变换为IP地址时使用。对象域名表220例如包括域名(主机名)221和变换对象222。
域名(主机名)221是向终端107提供内容的Web服务器102的主机名。在变换对象222中存储有表示是否把域名221所指示的域名(主机名)变换为IP地址的信息。
DNS代理104使用地址生成函数210和对象域名表220,执行名字解析的处理。另外,关于DNS代理104执行的名字解析的处理,将在后面使用图4进行说明。
另外,管理服务器108将地址生成函数210和对象域名表220分发给DNS代理104。并且,管理服务器108将地址生成函数210分发给各个Web代理105。并且,管理服务器108根据地址分配表200,生成表示各个Web代理105负责的IP地址的范围的负责IP地址表600(参照图6A),将所生成的负责IP地址表600分发给各个Web代理105。
图3是表示本发明的第1实施方式的DNS代理104的结构的框图。
DNS代理104具有地址变换处理功能部301、存储器302和网络接口303,并与广域网103和局域网106连接。
在存储器302中存储有由管理服务器108分发的地址生成函数210和对象域名表220。
地址变换处理功能部301使用存储在存储器302中的对象域名表220和地址生成函数210,执行地址变换的处理等。关于地址变换处理功能部301执行的处理的具体情况,将在后面使用图4进行说明。另外,未图示的处理器执行存储在存储器302中的各种程序,由此实现地址变换处理功能部301的处理。
网络接口303是用于将DNS代理104与广域网103及局域网106连接的接口。
图4是表示本发明的第1实施方式的DNS代理104执行的名字解析的处理的流程图。
首先,DNS代理104的地址变换处理功能部301接收从终端107发送的名字解析请求(例如“AAAA?www.example.org”)(S401)。然后,地址变换处理功能部301在接收到名字解析请求时,检索对象域名表220,判定由名字解析请求所指示的主机名(例如“www.example.org”)是否是被变换为IP地址的对象(S402)。
在S402,在判定为主机名不是变换对象时,DNS代理104通过广域网103,将从终端107发送的名字解析请求传输给DNS服务器101。
提供域名服务的DNS服务器101执行常规的名字解析,把与主机名对应的实际IP地址作为针对名字解析请求的应答,发送给作为请求者的DNS代理104。并且,DNS代理104接收从DNS服务器101发送的针对名字解析请求的应答,并获取与主机名对应的实际IP地址(S403)。
另一方面,在S402,在判定为主机名是变换对象时,DNS代理104的地址变换处理功能部301使用地址生成函数210,根据由名字解析请求所指示的主机名(例如“www.example.org”)计算散列值(例如“41de:3297:ec18:5fae”),将预定的IPv6前缀(例如“2001:db8::”)与所计算的散列值合在一起,生成IP地址(例如“2001:db8::41de:3297:ec18:5fae”)(S404)。这里,所生成的IP地址是在本实施方式的网关***中使用的IP地址,并与对Web服务器102的内容进行缓存的Web代理105对应。
然后,地址变换处理功能部301把从DNS服务器101获取的实际IP地址、或者利用地址生成函数210生成的IP地址,作为针对名字解析请求的应答(例如“AAAA 2001:db8::41de:3297:ec18:5fae”),发送给终端107(S405)。
图5是表示本发明的第1实施方式的Web代理105的结构的框图。
Web代理105具有Web缓存处理功能部501、存储器502和网络接口503,并与广域网103及局域网106连接。
在存储器502中存储有负责IP地址表600和内容表610。并且,根据需要也可以存储地址生成函数210。
关于负责IP地址表600将在后面使用图6A进行说明。关于内容表610将在后面使用图6B进行说明。地址生成函数210与图2B所示的函数相同,由管理服务器108根据需要进行分发。
Web缓存处理功能部501使用存储在存储器502中的地址生成函数210、负责IP地址表600和内容表610,根据从终端107发送的内容获取请求,从Web服务器102获取所请求的内容,并对所获取的内容进行缓存。关于Web缓存处理功能部501执行的处理的具体情况,将在后面使用图7进行说明。另外,由未图示的处理器执行存储在存储器502中的各种程序,由此实现Web缓存处理功能部501的处理。
网络接口503是用于将Web代理105与广域网103及局域网106连接的接口。Web代理105把在负责IP地址表600中设定的IP地址作为本装置的IP地址,登记在网络接口503中。由此,Web代理105能够接收从终端107发送的内容获取请求。
另外,在本实施方式中,Web代理105具有Web缓存处理功能部,但也可以具有取代Web缓存处理功能的、例如过滤(filter)功能、内容变换功能等。由此,不仅能够将本发明的网关***适用于缓存***,也能够适用于提供其他服务的***。
图6A是表示本发明的第1实施方式的Web代理105具有的负责IP地址表600的结构的说明图。
负责IP地址表600是表示一个Web代理105负责的IP地址的范围的表,包括开始地址601和结束地址602。
另外,负责IP地址表600可以由管理服务器108分发,也可以由Web代理105根据由管理服务器108通知的IP地址的范围而生成。
Web代理105将该Web代理负责的全部IP地址登记在网络接口503中,接收把所登记的IP地址作为目的地地址的内容获取请求。关于Web代理105执行的内容获取的处理,将在后面使用图7进行说明。
另外,Web代理105在接收到负责的IP地址的地址解决请求时,将对本装置设定的MAC地址通知给终端107、邻近的路由器等。这里,所说地址解决请求,例如对于IPv4指地址解析协议(ARP:Address ResolutionProtocol),对于IPv6指邻居发现(ND:Neighbor Discovery)。
图6B是表示本发明的第1实施方式的Web代理具有的内容表610的结构的说明图。
内容表610是存储由Web代理105缓存的内容的表,例如包括URL 611、目的地IP地址612、内容613和元信息614。
URL 611是内容获取目的地的URL。目的地IP地址612是由内容获取请求所指示的目的地IP地址,是由DNS代理104从作为内容获取目的地的Web服务器102的主机名生成的IP地址。
在内容613中存储有由Web代理105从Web服务器102获取的内容。元信息614是指例如所获取的内容的大小、日期时间、保存期间等。
图7是表示本发明的第1实施方式的Web代理执行的内容获取的处理的流程图。
首先,Web代理105接收从终端107发送的内容获取请求(S701)。然后,Web代理105的Web缓存处理功能部501把作为内容获取目的地的Web服务器102的URL作为检索键来检索内容表(S702),并判定是否具有与检索键一致的表项(S703)。
在S703,在判定为具有与检索键一致的表项时,由于存储有所请求的内容,所以Web缓存处理功能部501获取在与检索键一致的表项的内容613中存储的内容,并生成包括所获取的内容的针对内容获取请求的应答(S704)。
另一方面,在S703,在判定为不具有与检索键一致的表项时,由于没有存储所请求的内容,所以Web缓存处理功能部501向存储该内容的Web服务器102(源服务器),传输从终端107发送的内容获取请求(S705)。
另外,在这种情况下,Web代理105执行常规的名字解析,以便获取内容获取目的地的Web服务器102的IP地址。具体地讲,Web代理105向DNS服务器101发送名字解析请求,并从DNS服务器101接收与作为内容获取目的地的Web服务器102的主机名相对应的实际IP地址,作为针对名字解析请求的应答。由此,Web代理105能够向Web服务器102传输内容获取请求。
并且,Web代理105向内容表610追加新的表项,在所追加的表项的URL 611和目的地IP地址612中,分别存储由从终端107发送的内容获取请求所指示的内容获取目的地的URL及目的地IP地址。
然后,Web缓存处理功能部501接收从Web服务器102发送的针对内容获取请求的应答(S706)。然后,Web缓存处理功能部501在接收到针对内容获取请求的应答时,从接收到的应答中获取内容,将所获取的内容及内容的信息分别存储在被追加到内容表610中的新的表项的内容613及元信息614中。并且,Web缓存处理功能部501生成包括所获取的内容的针对内容获取请求的应答(S707)。
最后,Web缓存处理功能部501将在步骤S704或S707生成的针对内容获取请求的应答发送给终端107(S708),并结束处理(S709)。
另外,作为本实施方式的另一个示例,网关***也可以在Web代理105的前级设置地址变换装置。在这种情况下,管理服务器108将例如图2A所示的地址分配表200分发给地址变换装置。并且,将对Web代理105设定的代表IP地址通知地址变换装置。
地址变换装置具有地址变换表,该地址变换表使在地址分配表200中记述的服务器ID(Web代理的ID)与所通知的Web代理105的代表IP地址相对应。由此,地址变换装置把从终端107发送的内容获取请求的目的地IP地址,从根据散列值而生成的IP地址改写为代表IP地址,并向与代表IP地址对应的Web代理105传输内容获取请求。
另外,在本实施方式的另一个示例中,Web代理105在步骤S707从Web服务器102获取内容后,使用由管理服务器108分发的地址生成函数210,从Web服务器102的主机名生成IP地址,把所生成的IP地址存储在被追加到内容表610中的新的表项的目的地IP地址612中。
在由于成本原因对Web代理105分配大量IP地址比较困难的情况下,可以利用具有地址变换装置的网关***。该网关***根据第4层(layer4)信息执行负荷分散,所以相比根据第7层(layer7)信息执行负荷分散的网关***,能够快速且低成本地实现。
通过以上处理生成了内容表610,所以容易确定各个Web代理105缓存的内容。所生成的内容表610也在后面叙述的图10及图11所示的分配变更处理中使用。移动源的Web代理105使内容表610中包括想要移动的内容的表项移动到移动目的地的Web代理105。
图8是表示本发明的第1实施方式的网关***的内容获取的处理的流程图。
在图8的示例中,Web服务器102例如是被赋予了主机名“www.example.org”的服务器装置。
首先,管理服务器108向DNS代理104分发地址生成函数210和对象域名表220(S801)。并且,向Web代理105-1和Web代理105-2分发地址生成函数210和地址分配表200(或者负责IP地址表600)(S802、S803)。
然后,各个Web代理105接收到负责IP地址表600时,把负责IP地址表600中包含的全部IP地址作为分配给本装置的IP地址,登记在网络接口503中(S804、S805)。
然后,终端107例如接收到由用户输入的URL(例如“http://www.example.org/ex/1”)(S806)时,访问该URL并发送用于获取内容的内容获取请求。在这种情况下,终端107首先向DNS代理104发送名字解析请求(例如“AAAA?www.example.org”),以便获取与主机名(例如“www.example.org”)对应的IP地址(S807)。
DNS代理104在接收到从终端107发送的名字解析请求时,参照对象域名表220,判定由接收到的名字解析请求所指示的主机名(例如“www.example.org”)是否是变换对象。并且,在判定为该主机名是变换对象时,DNS代理104使用所分发的地址生成函数210,从该主机名生成IP地址(S808)。
然后,DNS代理104例如把所生成的IP地址(例如“2001:db8::41de:3297:ec18:5fae”)作为针对名字解析请求的应答,发送给终端107(S809)。
然后,终端107在接收到针对名字解析请求的应答时,从接收到的应答中获取与该主机名对应的IP地址,把所获取的IP地址设定为内容获取请求的目的地地址,然后发送内容获取请求(S812)。另外,在此建立TCP连接。
具体地讲,内容获取请求作为IP数据包在路径上的IP路由器等中被路由,按照目的地IP地址被发送给负责该IP地址的任一个Web代理105。在这种情况下,路径上的IP路由器、终端107等执行常规的地址解析(ARP、ND等),以便搜索登记了该IP地址的装置(S810)。并且,接收到发给自己的地址解析请求的装置(例如Web代理1_105-1),将本装置的MAC地址通知请求者(路径上的IP路由器、终端107等)(S811)。由此,例如在终端107和Web代理1_105-1之间建立TCP连接,Web代理1_105-1能够接收把该IP地址作为目的地地址的内容获取请求。
然后,Web代理1_105-1从终端107接收到内容获取请求时,从内容获取请求(例如“GET/ex/1HTTP/1.0Host:www.example.org…”)获取内容获取目的地的URL(例如“http://www.example.org/ex/1”)(S812)。
并且,Web代理1_105-1把所获取的URL作为检索键,检索内容表610,并判定是否存储了所请求的内容。这里,例如在判定为没有存储所请求的内容时(S813),Web代理1_105-1向存储了内容的Web服务器102,传输从终端107发送的内容获取请求(S814)。
Web服务器102接收到内容获取请求后,向Web代理1_105-1发送包括所请求的内容的针对内容获取请求的应答(S815)。
Web代理1_105-1接收到针对内容获取请求的应答后,从接收到的应答中获取内容,缓存所获取的内容(S816),把该内容作为针对内容获取请求的应答发送给终端107(S817)。
通过以上处理,各个Web代理105能够对具有与负责的IP地址相对应的主机名的Web服务器102的内容进行缓存。即,在本实施方式的网关***中,保证属于相同主机名的内容被缓存在相同Web代理中。这是因为根据散列函数从主机名生成的IP地址与Web代理105中的任一个Web代理相对应。
下面,说明在本实施方式中变更Web代理105的负责IP地址的范围的处理。管理服务器108例如在有计划地停止Web代理105中的几台的情况下、以及负荷产生偏倚的情况下,能够变更各个Web代理105负责的IP地址的范围。
图9是表示本发明的第1实施方式的分配变更请求的格式的说明图。
分配变更请求900包括移动源Web代理的IP地址901、移动目的地Web代理的IP地址902、成为移动对象的IP地址的范围903。
管理服务器108在变更各个Web代理105负责的IP地址的范围的情况下,向全部Web代理105或者移动源和移动目的地的Web代理105发送分配变更请求900。
图10是表示本发明的第1实施方式的Web代理105执行的分配变更的处理的流程图。
某个Web代理105接收到从管理服务器108发送的分配变更请求900时(S1001),判定接收到的分配变更请求900中包含的移动源Web代理的IP地址901和移动目的地Web代理的IP地址902中的某一方、是否与赋予给本装置的IP地址一致(S1002)。
在步骤S1002,在判定为移动源Web代理的IP地址901与本装置的IP地址一致时,接收到分配变更请求900的Web代理105是移动源的Web代理,所以移动源的Web代理从内容表610提取与由成为移动对象的IP地址的范围903所指定的IP地址相对应的表项(S1003)。
并且,移动源的Web代理将提取的表项,移动到由移动目的地Web代理的IP地址902所指定的移动目的地的Web代理的内容表中(S1004)。
另外,在这种情况下,移动源的Web代理也可以根据需要删除例如所提取的表项的内容613和元信息614的数据,向移动目的地的Web代理只发送URL 611及目的地IP地址612的数据的表项。由此,能够削减分配项请求的处理中的各个Web代理105之间的通信量。
然后,移动源的Web代理从内容表610中删除与由成为移动对象的IP地址的范围903所指定的IP地址相对应的表项(S1005)。另外,从负责IP地址表600中删除由成为移动对象的IP地址的范围903所指定的IP地址的范围,删除登记在网络接口503中的该IP地址(S1006)。
另一方面,在步骤S1002,在判定为移动目的地的Web代理的IP地址902与本装置的IP地址一致时,接收到分配变更请求900的Web代理105是移动目的地的Web代理,所以移动目的地的Web代理等待接收从移动源的Web代理发送的移动对象的表项(S1007)。
移动目的地的Web代理在接收到移动对象的表项时,将接收到的表项追加在内容表610中(S1008)。并且,移动目的地的Web代理将由成为移动对象的IP地址的范围903所指定的IP地址,追加在负责IP地址表600中(S1009)。并且,将新追加的IP地址登记在网络接口503中。
另外,移动目的地的Web代理发送邻居通告数据包(neighboradvertisement packet)或Gratuitous ARP(无偿ARP)(S1010)。由此,移动目的地的Web代理能够将被分配了新的地址这一情况,通知给邻近的IP路由器、终端107、Web代理105、管理服务器108等。另外,邻近的IP路由器、终端107等接收到邻居通告数据包或Gratuitous ARP时,再次发送地址解析请求,并获取新登记了IP地址的网络接口的MAC地址。
另一方面,在步骤S1002,在判定为移动源的Web代理的IP地址901和移动目的地的Web代理的IP地址902都与本装置的IP地址不一致时,该分配变更请求不是发送给本装置的消息,所以Web代理105将该消息废弃(S1011)。由此,例如在通过组播将分配变更请求发送给全部Web代理105的情况下,移动源及移动目的地的Web代理也能够准确接收到所发送的分配变更请求。
图11是表示本发明的第1实施方式的网关***的分配变更的处理的流程图。
Web代理1_105-1在初始设定时例如被分配了从IP地址“2001:db8::4000:0000:0000:0000”到“2001:db8::4fff:ffff:ffff:ffff”的范围,并对与所分配的IP地址相对应的内容进行缓存(S1101)。
并且,Web代理2_105-2例如被分配了从IP地址“2001:db8::2000:0000:0000:0000”到“2001:db8::3fff:ffff:ffff:ffff”的范围,并对与所分配的IP地址相对应的内容进行缓存(S1102)。
然后,管理服务器108向各个Web代理发送如下指示,即,例如将与Web代理1_105-1负责的从IP地址“2001:db8::4000:0000:0000:0000”到“2001:db8::4fff:ffff:ffff:ffff”的范围相对应的内容移动到Web代理2_105-2中的指示(S1103)。
Web代理1_105-1从管理服务器108接收到移动内容的指示时,从内容表610提取与所指示的IP地址的范围相对应的表项,将所提取的表项传输给移动目的地的Web代理2_105-2(S1104)。并且,从内容表610中删除该表项。并且,从负责IP地址表600中删除所指示的IP地址,并从网络接口503中删除所指示的IP地址(S1105)。
另一方面,Web代理2_105-2将从移动源的Web代理1_105-1移动过来的表项追加在内容表610中。并且,将所指示的IP地址的范围追加在负责IP地址表600中,并将所追加的IP地址的范围登记在网络接口503中(S1106)。
然后,Web代理2_105-2发送邻居通告数据包或Gratuitous ARP,由此将所负责的IP地址的范围已变更这一情况通知给邻近的终端107、IP路由器、Web代理105等(S1107)。这是为了使邻近的终端107、IP路由器等向由邻居通告数据包或Gratuitous ARP指示的IP地址,再次发送地址解析请求并获取与该IP地址对应的MAC地址。
以后从步骤S1108~S1116的处理与图8所示的S806~S817的处理相同。
如以上说明的那样,根据第1实施方式,网关***按照根据散列而生成的IP地址,将从终端向Web服务器的内容获取请求传输给合适的Web代理,所以能够实现均等的负荷分散。并且,能够实现可扩展式的收容能力的扩展。另外,由于不需要负荷分散装置,所以能够削减网关***的管理成本,能够强化抗故障性能。
并且,在各个Web代理的负荷产生偏倚、并变更各个Web代理负责的IP地址的范围的情况下(换言之,移动被缓存的内容的情况下),网关***只在各个Web代理之间更换信息,在Web代理与DNS代理及终端等其他装置之间不更换信息。因此,能够减少进行IP地址的分配变更所需要的处理。
并且,执行名字解析的DNS代理不管理Web代理的状态。因此,能够容易使DNS代理冗余化,能够实现网关***的高速化及高可靠性。
并且,终端利用DNS代理提供的名字解析来访问Web代理,所以不需要向终端追加用于访问Web代理的功能。因此,在现有终端大量存在的环境下,也能够容易导入本实施方式的网关***。
[第2实施方式]
第2实施方式的网关***的结构与图1所示的第1实施方式的网关***的结构相同。第2实施方式的DNS代理的结构与图3所示的第1实施方式的DNS代理的结构相同。并且,第2实施方式的Web代理的结构与图5所示的第1实施方式的Web代理的结构相同。
但是,第2实施方式的DNS代理的地址变换处理功能部的处理,与第1实施方式的地址变换处理功能部的处理有部分不同(图14中的S1404、S1412)。并且,第2实施方式的Web代理的Web缓存处理功能部的处理,与第1实施方式的Web缓存处理功能部的处理有部分不同(图14中的S1402)。
在第1实施方式的网关***中,DNS代理104从内容获取目的地的主机名计算散列值,使用所计算的散列值生成IP地址。因此,从终端107发送的内容获取请求被按照主机名的单位进行分散。
因此,在第1实施方式的网关***中,向某一个Web服务器102(主机)的访问请求,由某一个Web代理105接收,所以在集中访问该Web服务器102的情况下,负责的Web代理105的负荷增大,有可能产生各个Web代理105之间的负荷的偏倚。
因此,在第2实施方式的网关***中,Web代理105从内容获取目的地的URL整体计算散列值,把将所计算的散列值作为主机名的后缀(Suffix)进行嵌入的URL作为内容获取目的地的URL,作为应答返回给终端107。
DNS代理104从终端107接收到名字解析请求时,从包含散列值的主机名生成负责的Web代理105的IP地址。因此,在第2实施方式中,根据从URL整体生成的散列值,将内容获取请求分散到各个Web代理105中。
即,在第2实施方式中,即使是属于相同主机名的内容,也被缓存在多个Web代理105中,所以能够避免负荷集中于一个Web代理105。
另外,第2实施方式也可以与第1实施方式结合起来适用于缓存***等中。
下面,说明第2实施方式中的URL变换规则。
图12是表示本发明的第2实施方式的URL变换规则的说明图。
在本实施方式中,Web代理105使用存储在存储器502中的地址生成函数210(散列函数215),从由例如从终端107发送的内容获取请求所指示的、包括主机名和路径名的URL 1201(例如“http://www.example.org/ex/2.html”),生成散列值1204(例如“820d92dcb08edcdd”)。
并且,Web代理105将到URL的主机名为止的部分1202(例如“http://www.example.org”)、句点符(.)1205、散列值1204(例如“820d92dcb08edcdd”)、主机名的后缀1206(例如“.hash.value”)、和URL的主机名以后的部分1203(例如“/ex/4.html”)合在一起。由此,生成嵌入了散列值的URL 1207(例如“http://www.example.org.820d92dcb08edcdd.hash.value/ex/2.html”)。
图13是表示本发明的第2实施方式的Web代理105执行的内容获取的处理的流程图。
某个Web代理105接收到从终端107发送的内容获取请求时(S1301),从接收到的内容获取请求的数据包的包头(header)中获取内容获取目的地的主机名(S1302)。然后,Web代理105判定所获取的主机名中是否包含表示是根据图12所示的URL变换规则变换的URL的主机名的后缀1206(例如“.hash.value”)(或者散列值1204)(S1303)。
在步骤S1303,在判定所获取的主机名中不包含“.hash.value”的情况下,由于接收到的内容获取请求中包含的URL不是根据图12所示的URL变换规则变换后的URL,所以Web代理105从接收到的内容获取请求的数据包的包头中获取URL,根据URL变换规则,使用散列函数215把所获取的URL变换为包含散列值的URL(S1304)。
然后,Web代理105向终端107返回代码302的HTTP应答(S1305)。这里,所说代码302的HTTP应答,指Web代理105使终端107向根据URL变换规则变换后的URL再次发送内容获取请求的指示。终端107接收到代码302的HTTP应答后,向由接收到的HTTP应答所指示的包含散列值的URL再次发送内容获取请求。
另一方面,在步骤S1303,在判定为所获取的主机名中包含“.hash.value”的情况下,由于接收到的内容获取请求中包含的URL已被实施URL变换,所以Web代理105从由接收到的内容获取请求的数据包的包头获取的URL的主机部分中,删除散列值1204和主机名的后缀1206(“.hash.value”)的字符串,复原URL变换前的URL(S1306)。
然后,Web代理105把复原后的URL作为检索键,检索内容表610的表项(S1307),判定是否具有与检索键一致的表项(S1308)。
在步骤S1308,在判定为具有与检索键一致的表项的情况下,由于缓存有从终端107请求的内容,所以Web代理105使用存储在该表项中的内容,生成针对内容获取请求的应答(S1309)。
另一方面,在步骤S1308,在判定为不具有与检索键一致的表项的情况下,由于没有存储从终端107请求的内容,所以Web代理105向Web服务器102(源服务器)传输内容获取请求(S1310)。在这种情况下,Web代理105向内容表610追加新的表项,在所追加的表项的URL 611和目的地IP地址612中分别存储复原后的URL和IP地址。
然后,Web代理105从Web服务器102接收针对内容获取请求的应答,并获取接收到的应答中包含的内容(S1311)。然后,在获取的内容中包含链接目的地的URL的情况下,Web代理105根据图12所示的URL变换规则,把链接目的地的URL变换为包含散列值的URL(S1312)。并且,使用包含变换后的URL的内容,生成针对内容获取请求的应答。
然后,Web代理105将所获取的内容及包含链接目的地的散列值的URL,存储在内容表610中对应的表项的内容613中(S1313)。
并且,最后,Web代理105向终端107发送针对内容获取请求的应答(S1314),并结束处理(S1315)。
图14是表示本发明的第2实施方式的网关***的内容获取的处理的流程图。
首先,终端107向例如Web代理1_105-1发送内容获取请求(例如“GET/ex/2HTTP/1.0Host:www.example.org…”)(S1401)。
另外,终端107也可以在步骤S1401之前,通过图8所示的步骤S807向DNS代理104发送名字解析请求(例如“AAAA?www.example.org”)。DNS代理104通过图8所示的步骤S808和809,执行名字解析请求。由此,与第1实施方式相同,内容获取请求到达负责与“www.example.org”相对应的IP地址(例如“2001.db8::41de:3297:ec18:5fae”)的Web代理1_105-1。
然后,Web代理1_105-1在接收到从终端107发送的内容获取请求时,从接收到的内容获取请求的包头中获取内容获取目的地的URL,根据图12所示的URL变换规则,把所获取的URL变换为包含散列值的URL、例如“http://www.example.org.820d92dcb08edcdd.hash.value/ex/2”(S1402)。并且,Web代理1_105-1向终端107发送代码302的HTTP应答(S1403)。
然后,执行名字解析及地址解析的处理(S1404)。
具体地讲,终端107接收到代码302的HTTP时,再次向DNS代理104发送名字解析请求,以便获取与包含散列值的主机名(例如“http://www.example.org.820d92dcb08edcdd.hash.value”)对应的IP地址(S1404)。
这里,DNS代理104与第1实施方式的处理不同,也可以从包含散列值的主机名(例如“www.example.org.820d92dcb08edcdd.hash.value”)中只提取散列值(例如“820d92dcb08edcdd”)。并且,也可以将在地址生成函数210中使用的IPv6前缀和所提取的散列值合在一起,并生成IP地址。
另外,DNS代理104也可以与第1实施方式相同,使用地址生成函数210,从包含散列值的主机名(“www.example.org.820d92dcb08edcdd.hash.value”)计算新的散列值,并根据所计算的散列值来生成IP地址。
另外,终端107或邻近的路由器为了确定登记了所生成的IP地址的装置,发送地址解析请求,并获取负责所生成的IP地址的Web代理105的MAC地址。
然后,终端107向负责所生成的IP地址的、例如Web代理2_105-2发送内容获取请求(例如“GET/ex/2HTTP/1.0Host:www.example.org.820d92dcb08edcdd.hash.value…”)(S1405)。
然后,Web代理2_105-2从接收到的内容获取请求的包头中获取包含散列值的URL,并从所获取的包含散列值的URL(例如“http://www.example.org.820d92dcb08edcdd.hash.value/ex/2”),删除散列值(例如“820d92dcb08edcdd”)及主机名的后缀(例如“.hash.value”)。由此,获取变换前的URL(在S1401请求的内容获取目的地的URL“http://www.example.org/ex/2”)。然后,Web代理2_105-2把所获取的变换前的URL作为检索键,检索内容表610,并判定是否存储有与检索键的URL对应的内容(S1406)。这里,假设没有存储对应的内容,Web代理2_105-2向Web服务器102传输内容获取请求(S1407)。
并且,Web代理2_105-2从Web服务器102接收针对内容获取请求的应答(S1408)。然后,Web代理2_105-2获取接收到的应答中包含的内容,将所获取的内容存储在内容表610的表项中(S1409)。这里,在所获取的内容中包含链接目的地的URL的情况下,Web代理2_105-2根据图12所示的URL变换规则,变换内容中包含的URL,将变换后的URL也存储在内容表610的表项中(S1409)。
即,Web代理根据URL变换规则,预先把发送给终端107的内容中包含的URL变换为包含散列值的URL。这是为了避免在终端107访问某个内容时,产生不包含“.hash.value”的内容获取请求和包含“.hash.value”的内容获取请求这两个请求。
然后,Web代理2_105-2把所获取的内容及包含内容的链接目的地的散列值的URL,作为针对内容获取请求的应答发送给终端107(S1410)。
另外,在用户点击了所发送的内容的链接目的地的URL的情况下,由于已经在该链接目的地的URL中嵌入了散列值,所以能够省略步骤S1401~S1404的处理。
如以上说明的那样,根据第2实施方式,以比主机单位更下位的路径单位,将缓存的内容分散到各个Web代理中,所以网关***能够更有效地实现负荷分散。
Claims (10)
1.一种网关***,将从多个终端针对多个第1服务器装置的请求进行分散,其特征在于,
所述网关***具有名字解析装置和多个web代理,
所述名字解析装置被分发了用于从字符串生成IP地址的地址生成函数,
在各个所述web代理中登记了预定的多个IP地址,
所述名字解析装置在接收到从所述终端发送的、访问目的地的URL的名字解析用的第1请求时,从所述接收到的第1请求中提取访问目的地的URL,
所述名字解析装置使用所述地址生成函数,从所述提取到的URL的主机名的字符串生成IP地址,
所述名字解析装置将所述生成的IP地址作为所述第1请求的应答,发送给所述终端,
所述终端将以所述第1服务器装置的URL作为访问目的地的第2请求,发送给登记了作为所述第1请求的应答而被发送的IP地址的所述web代理后,所述web代理根据访问目的地的URL,将所述发送的第2请求传输给所述第1服务器装置,其中该第2请求包含作为所述第1请求的应答而被发送给所述终端的IP地址、且将所述IP地址作为内容获取请求的目的地地址,
所述网关***还具有管理装置,
所述管理装置将所述地址生成函数分发给所述名字解析装置,
所述管理装置将由所述名字解析装置生成的全部所述IP地址划分为多个IP地址,
所述管理装置将所述划分后的多个IP地址分发给各个所述web代理,
所述web代理登记所述分发的多个IP地址。
2.根据权利要求1所述的网关***,其特征在于,
所述web代理根据用于从所述第1服务器装置获取内容的所述第2请求,在从所述第1服务器装置获取内容后,将所述获取的内容与存储有所述内容的URL相对应地进行存储,
所述web代理接收到从所述终端发送的第2请求后,根据从所述接收到的第2请求中提取的URL,判定是否存储有所述终端请求的内容,
在没有存储所述终端请求的内容的情况下,所述web代理将所述接收到的第2请求传输给所述第1服务器装置,
所述web代理从所述第1服务器装置获取所述请求的内容,
在存储有所述终端请求的内容的情况下,所述web代理将所述存储的内容发送给所述终端。
3.根据权利要求1所述的网关***,其特征在于,
所述名字解析装置是DNS服务器。
4.根据权利要求1所述的网关***,其特征在于,
所述网关***还具有地址变换装置,
在所述地址变换装置中登记了所述预定的多个IP地址,
在所述web代理中登记了预定的代表IP地址,
在由所述终端向登记了所述发送的IP地址的所述地址变换装置发送所述第2请求后,所述地址变换装置根据所述登记的多个IP地址与所述web代理的代表IP地址之间的对应关系,将所述发送的第2请求传输给所述web代理。
5.一种网关***,将从多个终端针对多个第1服务器装置的请求进行分散,其特征在于,
所述网关***具有名字解析装置和多个web代理,
在各个所述web代理中登记了预定的多个IP地址,并被分发了用于从字符串生成散列值的散列函数,
所述web代理从所述终端接收用于从所述第1服务器装置获取内容的第2请求后,从所述接收到的第2请求中提取访问目的地的URL,
所述web代理判定所述提取的URL中是否包含散列值,
在包含所述散列值的情况下,所述web代理从所述提取的URL中删除所述散列值,
所述web代理将以被删除了所述散列值的URL作为访问目的地的所述第2请求传输给所述第1服务器装置,
在不包含所述散列值的情况下,所述web代理使用所述分发的散列函数,从所述提取的URL的字符串生成散列值,
所述web代理将所述生成的散列值追加到所述提取的URL的主机名中,
所述web代理指示所述终端再次发送以包含所述散列值的URL作为访问目的地的所述第2请求,
在由所述终端向所述名字解析装置发送了包含所述散列值的URL的名字解析用的第1请求后,所述名字解析装置从所述第1请求中提取访问目的地的URL,
所述web代理还从所述提取的URL中提取散列值,
所述web代理将预定的前缀和所述提取的散列值合在一起,生成IP地址,
所述web代理将所述生成的IP地址作为所述第1请求的应答,发送给所述终端,
由所述终端向登记了作为所述第1请求的应答而被发送的IP地址的所述web代理,发送以包含所述散列值的URL作为访问目的地的所述第2请求,其中该第2请求包含作为所述第1请求的应答而被发送给所述终端的IP地址、且将所述IP地址作为内容取得请求的目的地地址。
6.根据权利要求5所述的网关***,其特征在于,
所述web代理根据所述第2请求,从所述第1服务器装置获取内容,
在所述获取的内容中包含链接目的地的URL的情况下,所述web代理使用所述散列函数,从所述链接目的地的URL的字符串生成散列值,
所述web代理将所述生成的散列值追加到所述链接目的地的URL的主机名中,
所述web代理存储所述获取的内容及包含所述散列值的链接目的地的URL,
所述web代理将所述获取的内容及包含所述散列值的链接目的地的URL作为所述第2请求的应答,发送给所述终端。
7.一种控制方法,在网关***中执行,该网关***将从多个终端针对多个第1服务器装置的请求进行分散,其特征在于,
所述网关***具有名字解析装置和多个web代理,
所述名字解析装置被分发了用于从字符串生成IP地址的地址生成函数,
在各个所述web代理中登记了预定的多个IP地址,
所述控制方法包括如下步骤:
所述名字解析装置在从所述终端接收到访问目的地的URL的名字解析用的第1请求时,从所述接收到的第1请求中提取访问目的地的URL的步骤;
所述名字解析装置使用所述地址生成函数,从所述提取到的URL的主机名的字符串生成IP地址的步骤;
所述名字解析装置将所述生成的IP地址作为所述第1请求的应答,发送给所述终端的步骤;以及
所述终端将以所述第1服务器装置的URL作为访问目的地的第2请求,发送给登记了所述发送的IP地址的所述web代理后,所述web代理根据访问目的地的URL,将所述发送的第2请求传输给所述第1服务器装置的步骤,其中该第2请求包含作为所述第1请求的应答而被发送给所述终端的IP地址、且将所述IP地址作为内容取得请求的目的地地址,
所述网关***还具有管理装置,
所述控制方法还包括如下步骤:
所述管理装置将所述地址生成函数分发给所述名字解析装置的步骤;
所述管理装置将由所述名字解析装置生成的全部所述IP地址划分为多个IP地址的步骤;
所述管理装置将所述划分后的多个IP地址分发给各个所述web代理的步骤;以及
所述web代理登记所述分发的多个IP地址的步骤。
8.根据权利要求7所述的控制方法,其特征在于,
所述网关***还具有管理装置,
所述控制方法还包括如下步骤:
所述管理装置将用于从字符串生成散列值的散列函数分发给所述web代理的步骤;
所述web代理接收到从所述终端发送的第2请求后,从所述接收到的第2请求中提取访问目的地的URL的步骤;
所述web代理判定所述提取的URL中是否包含散列值的步骤;
在包含所述散列值的情况下,所述web代理从所述提取的URL中删除所述散列值的步骤;
在不包含所述散列值的情况下,所述web代理使用所述分发的散列函数,从所述提取的URL的字符串生成散列值的步骤;
所述web代理将所述生成的散列值追加到所述提取的URL的主机名中的步骤;以及
所述web代理指示所述终端再次发送以包含所述散列值的URL作为访问目的地的所述第2请求的步骤。
9.根据权利要求8所述的控制方法,其特征在于,
还包括如下步骤:
所述web代理在根据用于从所述第1服务器装置获取内容的所述第2请求,从所述第1服务器装置获取内容后,判定所述获取的内容中是否包含链接目的地的URL的步骤;
在所述获取的内容中包含链接目的地的URL的情况下,所述web代理使用所述散列函数,从所述链接目的地的URL的字符串生成散列值的步骤;
所述web代理将所述生成的散列值追加到所述链接目的地的URL的主机名中的步骤;以及
所述web代理将所述获取的内容及包含所述散列值的链接目的地的URL,与被删除了所述散列值的URL相对应地进行存储的步骤。
10.根据权利要求9所述的控制方法,其特征在于,
还包括如下步骤:
在删除所述散列值的步骤之后,所述web代理根据被删除了所述散列值的URL,判定是否存储了所述终端请求的内容的步骤;
在没有存储所述请求的内容的情况下,所述web代理将以被删除了所述散列值的URL作为访问目的地的所述第2请求,传输给所述第1服务器装置的步骤;以及
在存储了所述请求的内容的情况下,所述web代理将所述存储的内容及包含所述散列值的链接目的地的URL,发送给所述终端的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP185624/2009 | 2009-08-10 | ||
JP2009185624A JP5288204B2 (ja) | 2009-08-10 | 2009-08-10 | ゲートウェイシステム及び制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101997785A CN101997785A (zh) | 2011-03-30 |
CN101997785B true CN101997785B (zh) | 2014-01-22 |
Family
ID=43034671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010247379.8A Expired - Fee Related CN101997785B (zh) | 2009-08-10 | 2010-08-05 | 网关***及控制方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8510372B2 (zh) |
EP (1) | EP2285071B8 (zh) |
JP (1) | JP5288204B2 (zh) |
CN (1) | CN101997785B (zh) |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7761497B1 (en) * | 2001-07-13 | 2010-07-20 | Vignette Software, LLC | Storage medium having a manageable file directory structure |
JP2012185638A (ja) * | 2011-03-04 | 2012-09-27 | Kddi Corp | 負荷分散装置、負荷分散システム、負荷分散方法及び負荷分散プログラム |
WO2013094837A1 (ko) * | 2011-12-19 | 2013-06-27 | 주식회사 솔박스 | 해시 함수 결과를 이용한 서버 부하 분산 처리 방법 및 그 장치 |
KR101383905B1 (ko) | 2011-12-19 | 2014-04-17 | 주식회사 솔박스 | 해시 함수 결과를 이용한 서버 부하 분산 처리 방법 및 그 장치 |
US8738448B2 (en) * | 2012-02-08 | 2014-05-27 | Google Inc. | Web page ad slot identification |
FI124297B (en) | 2012-03-30 | 2014-06-13 | Tellabs Oy | A method and network element for content-based assignment in a communication network |
US9052955B2 (en) * | 2012-07-25 | 2015-06-09 | Cisco Technology, Inc. | System and method for seamless application hosting and migration in a network environment |
US9513970B2 (en) * | 2013-03-01 | 2016-12-06 | Cisco Technology, Inc. | Optimizing handling of virtual machine mobility in data center environments |
CN104055504A (zh) | 2013-03-18 | 2014-09-24 | 精工爱普生株式会社 | 生物体信息检测装置 |
JP6171445B2 (ja) * | 2013-03-21 | 2017-08-02 | 富士通株式会社 | 割当装置及び割当プログラム |
KR20150037020A (ko) * | 2013-09-30 | 2015-04-08 | 삼성전자주식회사 | 이동통신시스템에서 웹 서버 접속 방법 및 장치 |
US20150113068A1 (en) * | 2013-10-18 | 2015-04-23 | Wesley John Boudville | Barcode, sound and collision for a unified user interaction |
US9231915B2 (en) | 2013-10-29 | 2016-01-05 | A 10 Networks, Incorporated | Method and apparatus for optimizing hypertext transfer protocol (HTTP) uniform resource locator (URL) filtering |
CN108646992B (zh) | 2013-11-07 | 2021-06-08 | 精工爱普生株式会社 | 打印控制*** |
US9300453B2 (en) | 2013-11-21 | 2016-03-29 | Cisco Technology, Inc. | Providing in-line services through radio access network resources under control of a mobile packet core in a network environment |
US9769217B2 (en) * | 2013-11-21 | 2017-09-19 | Cisco Technology, Inc. | Providing cellular-specific transport layer service by way of cell-site proxying in a network environment |
US9444681B2 (en) * | 2014-01-31 | 2016-09-13 | Dell Products L.P. | Systems and methods for resolution of uniform resource locators in a local network |
US10264091B2 (en) * | 2014-02-19 | 2019-04-16 | Level 3 Communications, Llc | Proxy server failover and load clustering |
CN105373533B (zh) * | 2014-07-31 | 2019-04-09 | 阿里巴巴集团控股有限公司 | 一种页面链接地址的检测方法、客户端及装置 |
JP6187425B2 (ja) * | 2014-10-01 | 2017-08-30 | コニカミノルタ株式会社 | 管理対象の情報処理装置を割り振る割振装置、その割り振りの方法、その割り振りのためのプログラム、および管理システム |
US20160171415A1 (en) | 2014-12-13 | 2016-06-16 | Security Scorecard | Cybersecurity risk assessment on an industry basis |
CA2977359A1 (en) * | 2015-02-27 | 2016-09-01 | Level 3 Communications, Llc | Network address resolution |
US11722456B2 (en) * | 2016-07-01 | 2023-08-08 | Intel Corporation | Communications in internet-of-things devices |
US10142230B2 (en) * | 2016-08-15 | 2018-11-27 | Vonage Business Inc. | Method and apparatus for transmitting messages associated with internet protocol version 4 (IPv4) addresses on an internet protocol version 6 (IPv6) network |
US10505894B2 (en) * | 2016-10-13 | 2019-12-10 | Microsoft Technology Licensing, Llc | Active and passive method to perform IP to name resolution in organizational environments |
CN110225144B (zh) * | 2018-03-02 | 2021-03-23 | 华为技术有限公司 | 获取及提供服务的方法、用户设备和管理服务器 |
CN109194621B (zh) * | 2018-08-08 | 2021-06-29 | 北京奇虎科技有限公司 | 流量劫持的检测方法、装置及*** |
JP7249820B2 (ja) * | 2018-09-28 | 2023-03-31 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | ゲートウェイ装置、ネットワークシステム、制御方法、及びプログラム |
US10999202B2 (en) * | 2018-11-30 | 2021-05-04 | Oracle International Corporation | Methods, systems, and computer readable media for distributing Sigtran connections among signal transfer point (STP) message processors |
GB2584993A (en) * | 2019-06-07 | 2020-12-30 | Num Tech Ltd | Processing data |
US11283648B2 (en) * | 2019-08-15 | 2022-03-22 | Forcepoint Llc | Resilient tunnels |
US11615254B2 (en) * | 2019-11-19 | 2023-03-28 | International Business Machines Corporation | Content sharing using address generation |
CN111800390A (zh) * | 2020-06-12 | 2020-10-20 | 深信服科技股份有限公司 | 异常访问检测方法、装置、网关设备及存储介质 |
US11576072B2 (en) | 2020-09-21 | 2023-02-07 | Oracle International Corporation | Methods, systems, and computer-readable media for distributing S1 connections to mobility management entities (MMEs) and N2 connections to access and mobility management functions (AMFs) |
JP7412377B2 (ja) * | 2021-03-03 | 2024-01-12 | Kddi株式会社 | 認証システム |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001084800A2 (en) * | 2000-04-28 | 2001-11-08 | Cenus Technologies, Inc. | System and method for using network layer uniform resource locator routing to locate the closest server carrying specific content |
JP2004030690A (ja) * | 2003-08-13 | 2004-01-29 | Sharp Corp | ゲートウェイ装置、クライアント計算機およびプロキシサーバ計算機 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3058258B2 (ja) * | 1997-01-31 | 2000-07-04 | 日本電気株式会社 | データサーバアクセス方法及びlan |
US6351775B1 (en) | 1997-05-30 | 2002-02-26 | International Business Machines Corporation | Loading balancing across servers in a computer network |
US6108703A (en) * | 1998-07-14 | 2000-08-22 | Massachusetts Institute Of Technology | Global hosting system |
US6212565B1 (en) | 1998-08-26 | 2001-04-03 | Sun Microsystems, Inc. | Apparatus and method for improving performance of proxy server arrays that use persistent connections |
JP2000207270A (ja) * | 1999-01-13 | 2000-07-28 | Hitachi Ltd | Wwwプロキシ装置 |
US6823377B1 (en) | 2000-01-28 | 2004-11-23 | International Business Machines Corporation | Arrangements and methods for latency-sensitive hashing for collaborative web caching |
US6816890B2 (en) * | 2001-05-28 | 2004-11-09 | Hitachi, Ltd. | Gateway apparatus with LAC function |
US20030079027A1 (en) * | 2001-10-18 | 2003-04-24 | Michael Slocombe | Content request routing and load balancing for content distribution networks |
JP2004348494A (ja) * | 2003-05-23 | 2004-12-09 | Hitachi Ltd | コンテンツ配信ネットワーク |
JP4515319B2 (ja) * | 2005-04-27 | 2010-07-28 | 株式会社日立製作所 | コンピュータシステム |
US7962597B2 (en) | 2008-03-31 | 2011-06-14 | Amazon Technologies, Inc. | Request routing based on class |
-
2009
- 2009-08-10 JP JP2009185624A patent/JP5288204B2/ja not_active Expired - Fee Related
-
2010
- 2010-07-20 EP EP10170078.9A patent/EP2285071B8/en not_active Not-in-force
- 2010-08-04 US US12/850,351 patent/US8510372B2/en not_active Expired - Fee Related
- 2010-08-05 CN CN201010247379.8A patent/CN101997785B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001084800A2 (en) * | 2000-04-28 | 2001-11-08 | Cenus Technologies, Inc. | System and method for using network layer uniform resource locator routing to locate the closest server carrying specific content |
JP2004030690A (ja) * | 2003-08-13 | 2004-01-29 | Sharp Corp | ゲートウェイ装置、クライアント計算機およびプロキシサーバ計算機 |
Non-Patent Citations (2)
Title |
---|
KARGER D. 等.Web caching with consistent hashing.《Computer Networks》.1999, |
Web caching with consistent hashing;KARGER D. 等;《Computer Networks》;19990517;1203-1213页中的第2、3、5部分 * |
Also Published As
Publication number | Publication date |
---|---|
JP5288204B2 (ja) | 2013-09-11 |
EP2285071B1 (en) | 2013-05-15 |
US20110035437A1 (en) | 2011-02-10 |
EP2285071B8 (en) | 2013-08-21 |
JP2011039725A (ja) | 2011-02-24 |
EP2285071A1 (en) | 2011-02-16 |
CN101997785A (zh) | 2011-03-30 |
US8510372B2 (en) | 2013-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101997785B (zh) | 网关***及控制方法 | |
US8504720B2 (en) | Methods and apparatus for redirecting requests for content | |
CN101656765B (zh) | 身份位置分离网络的名址映射***及数据传输方法 | |
CN113596184A (zh) | 混合云***、网闸、网络访问方法及存储介质 | |
US7197574B1 (en) | Domain name system inquiry apparatus, domain name system inquiry method, and recording medium | |
US20020040402A1 (en) | System and method for implementing a clustered load balancer | |
US7461128B2 (en) | Method, apparatus and system for processing message bundles on a network | |
US20090222581A1 (en) | Internet location coordinate enhanced domain name system | |
EP3860095A1 (en) | Methods for information drainage, requesting transmission and communication acceleration, and drainage and node server | |
JP2004318743A (ja) | ファイル移送装置 | |
JP2011508525A (ja) | グローバルトラフィックロードバランシングのためのクライアントの場所及びリゾルバの負荷を判断するためのdnsワイルドカードビーコニング | |
CN103618801A (zh) | 一种p2p资源共享的方法、设备及*** | |
CN109729183A (zh) | 请求处理方法、装置、设备及存储介质 | |
EP2668740A2 (en) | Site-aware distributed file system access from outside enterprise network | |
JP4266950B2 (ja) | アドレス情報取得装置およびアドレス情報取得方法 | |
CN100495995C (zh) | 因特网中构造对等网络及获取该网络中共享信息的方法 | |
EP3389240B1 (en) | Method and system for processing cache cluster service | |
US7610403B2 (en) | Device retrieving a name of a communications node in a communications network | |
US6917978B1 (en) | Network system having function of retrieving information, network terminal device having function of retrieving information, and network relay device having function of retrieving information | |
CN117857637A (zh) | 一种基于sdwan的跨境传输优化方法 | |
CN111614792B (zh) | 透传方法、***、服务器、电子设备及存储介质 | |
JP2004080728A (ja) | 通信装置、アドレス変換装置、名前解決装置、通信方法及びプログラム | |
CN107404438A (zh) | 网络路由方法和网络路由*** | |
Mahyoub et al. | An optimized discovery mechanism for smart objects in IoT | |
Liu et al. | Identifier and locator mapping service research |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140122 Termination date: 20150805 |
|
EXPY | Termination of patent right or utility model |