U.S. patent application number 12/540127 was filed with the patent office on 2010-02-18 for contents delivery system and method using page redirection, and gslb switch thereof.
This patent application is currently assigned to SK TELECOM. CO., LTD. Invention is credited to Jae Sic JEON, Kyong Hwan KIM.
Application Number | 20100042743 12/540127 |
Document ID | / |
Family ID | 41682024 |
Filed Date | 2010-02-18 |
United States Patent
Application |
20100042743 |
Kind Code |
A1 |
JEON; Jae Sic ; et
al. |
February 18, 2010 |
CONTENTS DELIVERY SYSTEM AND METHOD USING PAGE REDIRECTION, AND
GSLB SWITCH THEREOF
Abstract
A contents delivery system and method, and a GSLB switch thereof
are provided. When a client requests a web server to provide a page
and embedded objects, the web server embeds the URL representing
the position in which the page and embedded objects are stored in
an HTTP 302 redirection message and transmits the HTTP 302
redirection message including the URL to the client. A GSLB switch
corresponding to the URL transmits the IP address of a specific
host server selected from at least one host server storing the page
and the embedded objects to the client. Accordingly, load of the
web server decreases and flexibility in change of a CDN solution is
secured.
Inventors: |
JEON; Jae Sic; (Seoul,
KR) ; KIM; Kyong Hwan; (Seoul, KR) |
Correspondence
Address: |
LOWE HAUPTMAN HAM & BERNER, LLP
1700 DIAGONAL ROAD, SUITE 300
ALEXANDRIA
VA
22314
US
|
Assignee: |
SK TELECOM. CO., LTD
Seoul
KR
|
Family ID: |
41682024 |
Appl. No.: |
12/540127 |
Filed: |
August 12, 2009 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
61088541 |
Aug 13, 2008 |
|
|
|
Current U.S.
Class: |
709/238 ;
709/219; 714/47.1; 714/E11.02 |
Current CPC
Class: |
H04L 67/1021 20130101;
H04L 67/1002 20130101; H04L 29/12066 20130101; H04L 67/1008
20130101; H04L 67/1034 20130101; H04L 61/1511 20130101 |
Class at
Publication: |
709/238 ; 714/47;
709/219; 714/E11.02 |
International
Class: |
G06F 15/173 20060101
G06F015/173; G06F 15/16 20060101 G06F015/16; G06F 11/00 20060101
G06F011/00 |
Claims
1. A contents delivery system using page redirection comprising: at
least one host server receiving and storing a page and objects
included in the page; a web server storing the page and the
objects, transmitting the page and the objects to the at least one
host server such that the at least one host server stores the page
and the objects, embedding the URL representing the position in
which the page and the objects are stored in an HTTP 302
redirection message and transmitting the HTTP 302 redirection
message including the URL to a client when the client requests the
web server to provide the page and the objects; and a GSLB switch
corresponding to the URL and transmitting the IP address of a
specific host server which will transmit the page and the objects,
selected from the at least one host server, to the client through a
local DNS server at the client when the local DNS server inquires
of the GSLB switch about the IP address of the host server storing
the page and the objects.
2. The contents delivery system of claim 1, wherein the GSLB switch
selects the specific host server which will transmit the page and
the objects with reference to a host network map including position
information of the at least one host server and information on
pages and objects stored in the at least one host server.
3. The contents delivery system of claim 2, wherein the position
information of the least one host server includes the IP address of
the at least one host server.
4. The contents delivery system of claim 3, wherein the GSLB switch
selects the specific host server located in proximity to the client
with reference to the IP address of the at least one host server
and the IP address of the client.
5. The contents delivery system of claim 2, wherein the GSLB switch
selects the specific host server in consideration of data traffic
information of the at least one host server and fail-over
information of the at least one host server.
6. A contents delivery method using page redirection, comprising: a
storing step in which at least one host server receives a page and
objects included in the page from a web server and stores the page
and the objects; a message transmitting step in which the web
server embeds the URL representing the position in which the page
and the objects stored in the host server are stored in an HTTP 302
redirection message and transmits the HTTP 302 redirection message
including the URL to a client when the client requests the web
server to provide the page and the objects; and an address
transmitting step in which a GSLB switch corresponding to the URL
transmits the IP address of a specific host server which will
transmit the page and the objects, selected from the at least one
host server, to the client through a local DNS server at the client
when the local DNS server inquires of the GSLB switch about the IP
address of the host server storing the page and the objects.
7. The contents delivery method of claim 6, wherein the GSLB switch
transmits the IP address of the specific host server to the local
DNS server in consideration of data traffic information of the at
least one host server, fail-over information of the at least one
host server, information on proximity of the client to the at least
one host server and information on pages and objects stored in the
at least one host server in the address transmitting step.
8. The contents delivery method of claim 6, wherein the GSLB switch
transmits the IP address of another GSLG switch to the local DNS
server and the other GSLB switch receives inquiry of the local DNS
server about the IP address of the specific host server storing the
page and the objects from the local DNS server and transmits the IP
address of the specific host server to the client in the address
transmitting step.
9. The contents delivery method of claim 8, wherein the GSLB switch
transmits the IP address of the other GSLB switch among a plurality
of GSLB switches to the local DNS server with reference to
fail-over information of the plurality of GSLB switches in the
address transmitting step.
10. A GSLB switch comprising: a transmitting/receiving unit
transmitting/receiving data; a host network map database storing a
host network map including position information of at least on host
server and information on a page and objects stored in the at least
one host server; and a controller receiving the position
information of the at least one host server and the information on
the page and the objects stored in the at least one host server
through the transmitting/receiving unit to update the host network
map, selecting a specific host server which will transmit the page
and the objects from the at least one host server with reference to
the host network map and transmitting the IP address of the
specific host server to a client through a local DNS server at the
client via the transmitting/receiving unit when receiving inquiry
of the local DNS server about the IP address of the host server
storing the page and the objects from the local DNS server through
the transmitting/receiving unit.
11. The GSLB switch of claim 10, wherein the position information
of the at least one host server includes the IP address of the at
least one host server.
12. The GSLB switch of claim 11, wherein the controller selects the
specific host server located in proximity to the client with
reference to the IP address of the at least one host server and the
IP address of the client.
13. The GSLB switch of claim 10, further comprising an information
collecting module collecting at least one of data traffic
information of the at least one host server and fail-over
information of the at least one host server through the
transmitting/receiving unit.
14. The GSLB switch of claim 13, wherein the information collecting
module further collects fail-over information of a plurality of
GSLB switches.
15. The GSLB switch of claim 13, wherein the information collecting
module collects the information by transmitting/receiving messages
to/from the at least one host server or the plurality of GSLB
switches.
16. The GSLB switch of claim 13, wherein the information collecting
module collects the fail-over information when data traffic is
relatively small in consideration of data traffic of the at least
one host server or the plurality of GSLB switches.
17. The GSLB switch of claim 13, wherein the controller transmits
the IP address of the specific host server with reference to the
information collected by the information collecting module when
receiving the inquiry of the local DNS server about the IP
address.
18. The GSLB switch of claim 14, wherein the controller transmits
the IP address of a GSLB switch other than the GSLB switch among
the plurality of GSLB switches with reference to the information
collected by the information collecting module when receiving the
inquiry of the local DNS server about the IP address.
19. The GSLB switch of claim 13, wherein the information collecting
module stores the collected information in the host network
map.
20. The GSLB switch of claim 14, wherein the information collecting
module collects the information by transmitting/receiving messages
to/from the at least one host server or the plurality of GSLB
switches.
21. The GSLB switch of claim 14, wherein the information collecting
module collects the fail-over information when data traffic is
relatively small in consideration of data traffic of the at least
one host server or the plurality of GSLB switches.
Description
BACKGROUND OF THE INVENTION
[0001] 1. Field of the Invention
[0002] The present invention relates to a contents delivery system
and method, and more particularly, to a contents delivery system
and method using page redirection for allowing a web server, which
receives a request for a page and objects included in the page from
a client, to redirect the request such that a host server of a
contents delivery network (CDN) provider transmits the
corresponding contents and a global server load balancing (GSLB)
switch of the contents delivery system.
[0003] 2. Description of the Related Art
[0004] A web server of a contents provider (CP) generally provides
a large number of contents (for example, videos, music, files,
etc.) to clients. A large load is generated when the web server
provides the whole or some of the contents to a plurality of
clients one to one because the plurality of clients exist in a
plurality of Internet service providers (ISPs) while the web server
is connected to a single ISP.
[0005] Accordingly, traffic between ISPs exponentially increases as
the number of contents providers and clients increase, and thus
transmission delay and/or transmission failure rate due to traffic
congestion increase. Web server fail-over may occur in the worst
case.
[0006] To solve this problem, a contents delivery network (CDN) is
introduced. The CDN is a service which previously stores contents
converging on a web server of a contents provider located at a
great distance from clients, for example, contents with large
capacity, such as pictures, banners, videos or audio, or contents
frequently requested by clients, in host servers globally deployed
at points of presence (PoP) of a plurality of ISPs and redirects
the path of the host server closest to a client when the client
requests the contents provider to provide contents such that the
client accesses the host server through the redirected path to be
provided with the contents. Here, the host server may be referred
to as a cache server, a replica server or a ghost server.
[0007] The CDN is classified into an overlay type and a network
type according to system configuration. In the overlay type CDN, a
server for a special purpose and a plurality of cache servers
manage distribution of contents. The overlay type CDN has an
advantage of simple administration because there is no need for a
CDN provider to control network lower layer. In the network type
CDN, network components such as a router and a switch include codes
for confirming a specific application type and forwarding requests
of clients according to a predetermined policy.
[0008] Recently, most of solutions of CDN providers have adopted
mixture of the overlay and network types. An example of mixture of
the two types is disclosed in U.S. Pat. No. 6,108,703 (Referred to
as '703 patent hereinafter) entitled "Global hosting system",
issued to F. Thomson Lieghton et al., and assigned to MIT
(Messachusetts Institute of Technology).
[0009] According to the '703 patent, a web server of a contents
provider provides a page including a uniform resource locator (URL)
(referred to as `modified URL` hereinafter) of an embedded object,
which is modified according to a special routine, in response to a
request of a client. The web browser of the client loads the
embedded object in order to display the page. The '703 patent
identifies the modified URL through hierarchical DNS servers called
a first level name server and a second level name server and
returns the IP address of the optimum host server capable of
providing the actual object to the client.
[0010] The '703 patent uses so-called DNS-based request routing.
General DNS-based request routing has a problem that network
latency according to DNS look-up time is aggravated. The '703
patent increases system complexity although it decreases network
latency by constructing hierarchical DNS servers.
[0011] The above-described routine for generating the modified URL
operates in the web server of the contents provider. An
illustrative routine disclosed in the '703 patent is as
follows.
[0012] 1. Embedded object URL before modified:
[0013] www.domainname,com/frontpage.jpg
[0014] 2. Embedded object URL after modified:
[0015] www.yy.zzz.net/aaaa/www.domainame.com/frontpage.jpg
[0016] Here, xxx field denotes a serial number, yy field denotes
the second level name server, zzz field represents the first level
name server and aaaa field represents other information (for
example, fingerprint).
[0017] The modified URL includes a plurality of fields in addition
to fields (yy and zzz) for achieving the DNS-based request routing
in a complicated form. Furthermore, the routine for generating the
modified URL must be executed and maintained by the web server of
the contents provider.
[0018] However, when the contents provider replaces the solution of
the CDN provider according to the '703 patent by the solution of
another CDN provider, it is required to re-modify or change the
modified URL applied to all pages according to the routine or
recommendation of the solution of the other CDN provider. That is,
flexibility in the change of the CDN solution is deteriorated.
[0019] Furthermore, URL modification according to the routine of
the '703 patent increases the length of an HTML tag and the
capacity of a page.
[0020] Accordingly, a method for solving the aforementioned
problems is required.
SUMMARY OF THE INVENTION
[0021] The present invention provides a system and a method for
allowing a web server which receives a request for a page and
objects included in the page from a client to deliver corresponding
contents without having a burden of modifying URLs of embedded
objects to decrease system complexity and secure flexibility in
changed of a CDN solution.
[0022] According to an aspect of the present invention, there is
provided a contents delivery system using page redirection, which
includes at least one host server receiving and storing a page and
objects included in the page; a web server storing the page and the
objects, transmitting the page and the objects to the at least one
host server such that the at least one host server stores the page
and the objects, embedding the URL representing the position in
which the page and the objects are stored in an HTTP 302
redirection message and transmitting the HTTP 302 redirection
message including the URL to a client when the client requests the
web server to provide the page and the objects; and a GSLB switch
corresponding to the URL and transmitting the IP address of a
specific host server which will transmit the page and the objects,
selected from the at least one host server, to the client through a
local domain name system (DNS) server at the client when the local
DNS server inquires of the GSLB switch about the IP address of the
host server storing the page and the objects.
[0023] The GSLB switch may select the specific host server which
will transmit the page and the objects with reference to a host
network map including position information of the at least one host
server and information on pages and objects stored in the at least
one host server.
[0024] The position information of the least one host server may
include the IP address of the at least one host server.
[0025] The GSLB switch may select the specific host server located
in proximity to the client with reference to the IP address of the
at least one host server and the IP address of the client.
[0026] The GSLB switch may select the specific host server in
consideration of data traffic information of the at least one host
server and fail-over information of the at least one host
server.
[0027] According to another aspect of the present invention, there
is provided a contents delivery method using page redirection,
which includes a storing step in which at least one host server
receives a page and objects included in the page from a web server
and stores the page and the objects; a message transmitting step in
which the web server embeds the URL representing the position in
which the page and the objects stored in the host server are stored
in an HTTP 302 redirection message and transmits the HTTP 302
redirection message including the URL to a client when the client
requests the web server to provide the page and the objects; and an
address transmitting step in which a GSLB switch corresponding to
the URL transmits the IP address of a specific host server which
will transmit the page and the objects, selected from the at least
one host server, to the client through a local DNS server at the
client when the local DNS server inquires of the GSLB switch about
the IP address of the host server storing the page and the
objects.
[0028] In the address transmitting step, the GSLB switch may
transmit the IP address of the specific host server to the local
DNS server in consideration of data traffic information of the at
least one host server, fail-over information of the at least one
host server, information on proximity of the client to the at least
one host server and information on the page and the objects stored
in the at least one host server.
[0029] In the address transmitting step, the GSLB switch may
transmit the IP address of another GSLG switch to the local DNS
server and the other GSLB switch may receive inquiry of the local
DNS server about the IP address of the specific host server storing
the page and the objects from the local DNS server and transmit the
IP address of the specific host server to the client.
[0030] In the address transmitting step, the GSLB switch may
transmit the IP address of the other GSLB switch among a plurality
of GSLB switches to the local DNS server with reference to
fail-over information of the plurality of GSLB switches.
[0031] According to another aspect of the present invention, there
is provided a GSLB switch including a transmitting/receiving unit
transmitting/receiving data; a host network map database storing a
host network map including position information of at least on host
server and information on a page and objects stored in the at least
one host server; and a controller receiving the position
information of the at least one host server and the information on
the page and the objects stored in the at least one host server
through the transmitting/receiving unit to update the host network
map, selecting a specific host server which will transmit the page
and the objects from the at least one host server with reference to
the host network map and transmitting the IP address of the
specific host server to a client through a local DNS server at the
client via the transmitting/receiving unit when receiving inquiry
of the local DNS server about the IP address of the host server
storing the page and the objects from the local DNS server through
the transmitting/receiving unit.
[0032] The position information of the at least one host server may
include the IP address of the at least one host server.
[0033] The controller may select the specific host server located
in proximity to the client with reference to the IP address of the
at least one host server and the IP address of the client.
[0034] The GSLB switch may further include an information
collecting module collecting at least one of data traffic
information of the at least one host server and fail-over
information of the at least one host server through the
transmitting/receiving unit.
[0035] The information collecting module may further collect
fail-over information of a plurality of GSLB switches.
[0036] The information collecting module may collect the
information by transmitting/receiving messages to/from the at least
one host server or the plurality of GSLB switches.
[0037] The information collecting module may collect the fail-over
information when data traffic is relatively small in consideration
of data traffic of the at least one host server or the plurality of
GSLB switches.
[0038] The controller may transmit the IP address of the specific
host server with reference to the information collected by the
information collecting module when receiving the inquiry of the
local DNS server about the IP address.
[0039] The controller may transmit the IP address of a GSLB switch
other than the GSLB switch among the plurality of GSLB switches
with reference to the information collected by the information
collecting module when receiving the inquiry of the local DNS
server about the IP address.
[0040] The information collecting module may store the collected
information in the host network map.
BRIEF DESCRIPTION OF THE DRAWINGS
[0041] The above and other features and advantages of the present
invention will become more apparent by describing in detail
exemplary embodiments thereof with reference to the attached
drawings in which:
[0042] FIG. 1 is a configuration of a contents delivery system
using page redirection according to an embodiment of the present
invention;
[0043] FIG. 2 is a block diagram of a GSLB switch illustrated in
FIG. 1;
[0044] FIG. 3 is host network map information stored in a host
network map database illustrated in FIG. 2; and
[0045] FIG. 4 is a flowchart showing a contents delivery method
according to an embodiment of the present invention.
DETAILED DESCRIPTION OF THE INVENTION
[0046] The present invention will now be described more fully with
reference to the accompanying drawings, in which exemplary
embodiments of the invention are shown. The invention may, however,
be embodied in many different forms and should not be construed as
being limited to the embodiments set forth herein; rather, these
embodiments are provided so that this disclosure will be thorough
and complete, and will fully convey the concept of the invention to
those skilled in the art. Throughout the drawings, like reference
numerals refer to like elements.
[0047] FIG. 1 illustrates a configuration of a contents delivery
system using page redirection according to an embodiment of the
present invention. Referring to FIG. 1, the contents delivery
system includes a client 110, a local domain name system (DNS)
server 120, a host server 130, a GSLB switch 140, a contents
provider DNS server 150, a web server 160 and a network 170.
[0048] The client 110 corresponds to equipment such as a computer
receiving information from the servers connected through the
network 170. For example, the client 110 includes equipment which
is currently commercially used or will be developed such as
personal computers (PCs), household appliances, mobile
communication devices, etc. in the current embodiment of the
invention.
[0049] The client 110 includes a browser and a resolver. When a
uniform resource locator (URL) that requests specific contents is
input to the browser of the client 110, the resolver connected to
the browser accesses the previously registered local DNS server 120
and resolves a domain name corresponding to the URL into the IP
(Internet Protocol) address of the web server 160 providing the
contents.
[0050] In the current embodiment of the invention, the client 110
request the web server 160 to provide a page and objects included
in the page by using the IP address of the web server 160, received
from the local DNS server 120. When the client 110 receives URL
information on positions of the page and the objects included in
the page from the web server 160 through a hypertext transfer
protocol (HTTP) 302 redirection message, the client 110 inquires of
the local DNS server 120 about the IP address of a server that
stores the page and the objects included in the page by using the
URL information. The HTTP 302 redirection message is one of
response messages according to HTTP for redirecting a request of
the client 110 to a URL at a different position.
[0051] When the client 110 receives the IP address of the host
server 130 storing the page and the objects included in the page
from the local DNS server 120, the client 110 accesses the host
server 130 by using the IP address and receives the page and the
objects included in the page.
[0052] The local DNS server 120 means a domain name server that
transforms a domain name into an IP address and converts a symbolic
name into a numeral address used by machines. The local DNS server
120 that receives the domain name of the web server 160 from the
resolver accesses the contents provider DNS server 150, receives
the IP address of the web server 160, which corresponds to the
domain name and transmits the IP address to the client 110.
[0053] When the client 110 request the local DNS server 120 to
provide the IP address of the server storing the page and the
objects included in the page, the local DNS server 120
transmits/receives messages to/from the GSLB switch 140 to receive
the IP address of the host server 130 storing the page and the
objects included in the page and transmits the IP address to the
client 110.
[0054] The host server 130 stores replicas of pages and embedded
objects stored and administrated by the web server 160 and rapidly
provides the replicas when the client 110 requests contents.
[0055] The GLSB switch 140 provides an intelligent DNS function,
identifies and administrates at least one globally deployed host
server 130. For example, the GSLB switch 140 according to the
current embodiment of the invention has position information of the
at least one host server 130 and information on pages and embedded
objects stored in the at least one host server 130. Here, the
position information of the at least one host server 130 may
include the IP address of the at least one host server 130 and the
GSLB switch 140 may determine proximity of the client 110 to the at
least one host server 130 by using the IP address of the at least
one host server 130.
[0056] The GSLB switch 140 may select a specific host server 130
which will transmit the page and the objects included in the page,
requested by the client 110, to the client 110 on the basis of the
proximity of the client 110 to the at least one host server 130 and
the information on the pages and objects stored the at least one
host server 130 and transmit the IP address of the selected host
server 130 to the client 110 through the local DNS server 120.
[0057] Furthermore, the GSLB switch 140 may select the specific
host server 130 which will respond to the request of the client 110
in consideration of data traffic information and fail-over
information of the at least one host server 130 and transmit the IP
address of the selected host server 130 to the client 110.
[0058] Here, the information on the proximity of the client 110 to
the host server 130, information on the pages and objects stored in
the host server 130, and the data traffic information and fail-over
information of the host server 130 may be collected at
predetermined time such as a predetermined period in consideration
of data traffic and load of the GSLB switch 140 or the host server
130 when the pages and objects stored in the host server 130 are
updated.
[0059] In the current embodiment of the invention, the GSLB switch
140 may collect fail-over information of a plurality of other GSLB
switches. For instance, when there is a GSLB switch more suitable
to respond to the inquiry of the local DNS server 120 about the IP
address of the host server 130 than the GSLB switch 140, the
inquiry is re-routed to the more suitable GSLB switch such that the
GLSB switch can respond to the inquiry of the local DNS server 120.
Here, the routing can be achieved with reference to fail-over
information of the GLSB switch 140, other GSLB switches or the host
server 130. The fail-over information of the other GSLB switches
may be collected at predetermined time such as a predetermined
period in consideration of data traffic and load of the GSLB switch
140 and other GSLB switches or the host server 130.
[0060] The web server 160 provides pages and embedded objects
included in the pages provided by a contents provider. In the
current embodiment of the invention, the contents provider
transmits the pages and embedded objects included in the pages from
the web server 160 to the host server 130 and stores the pages and
embedded objects in the host server 130. Accordingly, when the
client 110 requests the web server 160 to provide a specific page
and embedded objects included in the specific page, the client 110
can rapidly receive a response through the host server 130.
[0061] Furthermore, when the client 110 requests the web server 160
to provide the page and the embedded objects, the web server 160
embeds a URL which represents the position at which a CDN provider
stores the page and the embedded objects in an HTTP 302 redirection
message and transmits the HTTP 302 redirection message to the
client 110. Then, the client 110 receives the URL, requests the
local DNS server 120 to provide the IP address of the host server
130 which will transmits the page and the embedded objects by using
the URL, accesses the host server 130 through the IP address and
receives the contents, that is, the page and the embedded
objects.
[0062] The contents provider DNS server 150 is a DNS server of the
contents provider. When the local DNS server 120 inquires of the
contents provider DNS server 150 about the IP address of the web
server 160 storing the page and the embedded objects, the contents
provider DNS server 150 returns the IP address to the local DNS
server 120 such that the IP address is delivered to the client
110.
[0063] The network 170 corresponds to a data communication network
for data transmission and information exchange among the client
110, the local DNS server 120, the host server 130, the GSLB switch
140, the contents provider DNS server 150 and the web server 160.
The network 170 according to the present invention includes
Internet, Intranet, Extranet, and other wired and wireless networks
and a combination thereof, which are well-known or will be
developed.
[0064] The configuration and operation of the GLSB switch 140
according to an embodiment of the present invention will now be
explained in more detail with reference to FIG. 2.
[0065] FIG. 2 is a block diagram of the GLSB switch 140 illustrated
in FIG. 1. Referring to FIGS. 1 and 2, the GSLB switch 140 includes
a transmitting/receiving unit 210, a controller 220, a host network
map database 230 and an information collecting module 240.
[0066] The transmitting/receiving unit 210 includes an interface
for transmitting/receiving data and messages through the network
170.
[0067] The host network map database 230 stores a host network map
including the position information of the at least one host server
130 and the information on the pages and embedded objects stored in
the at least one host server 130.
[0068] The information collecting module 240 collects at least one
of the fail-over information of the plurality of other GSLB
switches, fail-over information of the host server 130 and data
traffic information of the host server 130 through the
transmitting/receiving unit 210. For instance, the information
collecting module 240 may collect the information at specific
periods. Furthermore, the information collecting module 240 may
collect the information when data traffic is relatively small in
consideration of the data traffic of the other GLSB switches or the
host server 130. The information collected by the information
collecting module 240 is stored in the host network map such that
the controller 230 can refer to the information.
[0069] The controller 220 receives the position information of the
at least one host server 130 and the information on the pages and
embedded objects stored in the at least one host server 130 through
the transmitting/receiving unit 210 and updates the host network
map. Furthermore, when the controller 220 receives inquiry of the
local DNS server 120 about the IP address of the specific host
server 130 storing the page and embedded objects requested by the
client 110, the controller 220 selects the specific host server 130
from the at least one host server 130 with reference to the host
network map stored in the host network map database 230 and
transmits the IP address of the selected host server 130 to the
client 110 through the transmitting/receiving unit 210 via the
local DNS server 120.
[0070] In addition, the controller 220 may select the specific host
server 130 which will transmit the page and embedded objects to the
client 110 with reference to information collected by the
information collecting module 240. The information may be collected
in real time. Otherwise, the information may be collected by the
information collecting module 240 and stored in the host network
map or updated and stored in the host network map.
[0071] The controller 220 may route the inquiry of the local DNS
server 120 about the IP address of the host server 130 to a GSLB
switch more suitable for the response to the inquiry with reference
to the fail-over information of the other GSLB switches, collected
by the information collecting module 240. That is, if the GSLB
switch 140 fails or data traffic of the GSLB switch 140 exceeds a
critical value, the controller 220 allows another GSLB switch
having no fail-over to respond to the request of the client
110.
[0072] The information of the host network map stored in the host
network map database 230 will now be described in more detail with
reference to FIG. 2.
[0073] FIG. 3 illustrates information of the host network map 300
stored in the host network map database 230 illustrated in FIG. 2.
The host network map 300 is map information referred to by the GSLB
switch 140 when the GLSB switch 140 selects the host server 130
which provides the page and embedded objects requested by the
client 110.
[0074] Referring to FIG. 3, the host network map 300 includes host
server information 310, stored page and object information 320, IP
address 330, data traffic information 340 and fail-over information
550 in column.
[0075] The host server information 310 corresponds to an
identification information field for identifying the host server
130. Although the host server information 310 is represented by
numerals in the current embodiment of the invention, it is not
limited thereto and any identifier capable of identifying the host
server 130 can be included in the technical scope of the present
invention.
[0076] The stored page and object information 320 corresponds to a
field representing information on pages and objects received from
the web server 160 and stored in each host server 130.
[0077] The IP address 330 corresponds to a field representing the
IP address of each host server 130. The IP address field 330 may
include a plurality of IP addresses of a single host server
130.
[0078] The data traffic information 340 corresponds to a field
representing data traffic of each host server 130. Although large
data traffic is represented as `Red`, slightly large data traffic
is represented as `Yellow` and small data traffic is represented as
`Green` in the current embodiment of the invention, the technical
scope of the present invention is not limited thereto.
[0079] The fail-over information 350 corresponds to a field
representing whether each host server 130 fails over. Specifically,
`A (Available)` represents that the host server 130 normally
operates and `N/A (Non-available)` represents that the host server
130 fails over.
[0080] Referring to the host network map 300, the stored page and
object information 320 corresponding to host server `1` in the host
server information 310 corresponds to `AAA` and `BBB`, and thus it
can be known that host server `1` stores pages or objects `AAA` and
`BBB`. Furthermore, the IP address of host server `1` is `X.X.X`
and data traffic of host server `1` is `Red`, and thus host server
`1` has large data traffic. In addition, the fail-over information
350 corresponding to host server `1` is represented as `A`, and
thus host server `1` does not fail over. Host servers `2`, `3`, `4`
and `5` can be understood in the same manner so that detailed
explanations thereof are omitted.
[0081] If the client 110 requests the GSLB switch 140 to provide
the IP address of the host server 130 which will transmit contents
`AAA` through the local DNS server 120, the controller 220 of the
GSLB switch 140 recognizes that host servers `1`, `2`, `4` and `5`
store contents `AAA` from the host network map 300 stored in the
host network map database 230.
[0082] Here, host server `1` has large data traffic because the
data traffic information 340 thereof is represented as `Red` and
host server `2` has fail-over because the fail-over information 350
thereof is represented as `N/A`, and thus host servers `1` and `2`
are not suitable to transmit contents `AAA`. Host servers `4` and
`5` have small data traffic because data traffic information 340
thereof is represented as `Green` and do not have fail-over because
the fail-over information 350 thereof is represented as `A`.
Accordingly, the controller 220 of the GSLB switch 140 selects one
of host servers `4` and `5` as a host server suitable to transmit
contents `AAA`.
[0083] Here, the controller 220 of the GSLB switch 140 may allow
one of host servers `4` and `5`, which is closer to the client 110
than the other, to transmit the corresponding contents in
consideration of proximity of the client 110 to the host servers.
For instance, the controller 220 may compare the IP addresses of
host servers `4` and `5` to the IP address of the client 110 and
select a host server closer to the client 110 than the other.
[0084] A contents delivery method according to an embodiment of the
present invention will now be explained with reference to FIG. 4 in
detail.
[0085] FIG. 4 is a flowchart showing a contents delivery method
using page redirection according to an embodiment of the present
invention. Referring to FIG. 4, the host server 130 receives a page
and objects included in the page of a contents provider from the
web server 160 and stores the page and the objects in step S400.
Here, contents, that is, the page and the objects included in the
page, can be transmitted when the host server 130 requests the web
server 160 to provide the contents, at specific periods, and when
the page and objects included in the page stored in the web server
160 are updated.
[0086] When a URL for requesting the web server 160 to provide the
page and the objects included in the page is input to the browser
of the client 110, the resolver of the client 110 inquires of the
local DNS server 120 about the IP address of the web server 160
storing the page and the objects included in the page in step
S405.
[0087] The local DNS server 120 receives the inquiry of the client
110 about the IP address of the web server 160 in step S405 and
inquires of the contents provider DNS server 150 corresponding to
the DNS server of the contents provider about the IP address of the
web server 160 storing the page and the objects in step S410.
[0088] The contents provider DNS server 150 receives the inquiry of
the local DNS server 120 in step S410 and transmits the IP address
of the web server 160 to the local DNS server 120 in step S415. The
local DNS server 120 receives the IP address of the web server 160
and transmits the received IP address to the client 110 in step
S420.
[0089] The client 110 receives the IP address of the web server 160
in step S420 and requests the web server 160 to provide the page
and the objects by using the IP address of the web server 160 in
step S425. The web server 160 receiving the request of the client
110 in step S425 embeds the URL representing the position in which
the page and the objects of CDN provider are stored in an HTTP 302
redirection message and transmits the HTTP 302 redirection message
to the client 110 in step S430.
[0090] The client 110 receives the HTTP 302 redirection message
including the URL representing the position in which the page and
the objects are stored in step S430 and inquires of the local DNS
server 120 about the IP address of the host server 130 storing the
page and the objects by using the URL in step S435. The local DNS
server 120 receives the inquiry of the client 110 in step S435 and
inquires of the GSLB switch 140 corresponding to the URL about the
IP address of the host server 130 which will transmit the page and
the objects included in the page in step S440.
[0091] The GSLB switch 140 receives the inquiry of the local DNS
server 120 in step S440 and selects the specific host server 130
which will transmit the page and the objects to the client 110 from
at least one host server in step S445. Here, the GSLB switch 140
can select the host server 130 on the basis of at least one of data
traffic information of the at least one host server, fail-over
information of the at least one host server, information on
proximity of the client 110 to the at least one host server and
information on pages and objects stored in the at least one host
server.
[0092] The GSLB switch 140 transmits the IP address of the host
server 130 storing the page and the objects included in the page to
the local DNS server 120 in step S450. The local DNS server 120
transmits the IP address of the host server 130 to the client 110
in step S455.
[0093] The client 110 receives the IP address of the host server
130 in step S455 and requests the host server 130 to provide the
page and the objects included in the page in step S460, receives
the page transmitted from the host server 130 in step S465, and
parses the page in step S470.
[0094] When the client 110 detects the objects included in the page
while parsing the page in step S470, the client 110 requests the
host server 130 to transmit the objects included in the page by
using the IP address of the host server 130, transmitted to the
client 110 in step S455, in step S475 and receives the objects
transmitted from the host server 130 in step S480.
[0095] According to the present invention, the GSLB switch can
select a specific host server to provide a page and objects
included in the page to the client. Accordingly, load of the web
server is reduced and there is no need to modify URLs of embedded
objects when a CDN solution is changed. Furthermore, the client can
receive the page and the objects included in the page more
rapidly.
[0096] While the present invention has been particularly shown and
described with reference to exemplary embodiments thereof, it will
be understood by those of ordinary skill in the art that various
changes in form and details may be made therein without departing
from the spirit and scope of the present invention as defined by
the following claims.
* * * * *
References