WO2001031445A1 - System and method for web mirroring - Google Patents

System and method for web mirroring Download PDF

Info

Publication number
WO2001031445A1
WO2001031445A1 PCT/US2000/029693 US0029693W WO0131445A1 WO 2001031445 A1 WO2001031445 A1 WO 2001031445A1 US 0029693 W US0029693 W US 0029693W WO 0131445 A1 WO0131445 A1 WO 0131445A1
Authority
WO
WIPO (PCT)
Prior art keywords
network
server
user station
secondary server
communication network
Prior art date
Application number
PCT/US2000/029693
Other languages
French (fr)
Inventor
John C. Klensin
Original Assignee
Mci Worldcom, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mci Worldcom, Inc. filed Critical Mci Worldcom, Inc.
Priority to CA002389164A priority Critical patent/CA2389164A1/en
Priority to MXPA02004199A priority patent/MXPA02004199A/en
Priority to AU13500/01A priority patent/AU1350001A/en
Priority to EP00975450A priority patent/EP1228430A4/en
Publication of WO2001031445A1 publication Critical patent/WO2001031445A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2058Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using more than 2 mirrored copies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Definitions

  • the present invention relates to a communication system employing a client-server
  • NSPs network service providers
  • the primary role of an NSP is to connect users, which may include residential as well as
  • ISP Internet Service Provider
  • information from a web server can be retrieved by the client (the user station) over the Internet.
  • Performance concerns are faced by numerous organizations and business entities, such as banks and brokerage houses, which rely on communication networks to transfer massive amounts of
  • Figure 5 shows a block diagram of a conventional proxy caching model for accessing a
  • a web server 501 typically contains a database 503 and is connected to the Internet 505, which employs the TCP IP (Transmission Control Protocol/lntemet Protocol) stack
  • a proxy server 507 which is attached to the Internet 505, stores
  • proxy server 507 which
  • the proxy server provides a gateway service by acting as a server to the user station 509. Further, the proxy server
  • proxy server 507 behaves as a client to the web server 501. Because proxy server 507 performs a caching
  • the server 507 is referred to as a "proxy cache.”
  • Proxy cache 507 essentially intercepts request messages from user station 509 to the web
  • Proxy cache 507 has a replica of the requested information, the proxy cache 507
  • user station 509 retrieves information from the Internet 505 through proxy
  • HTTP Hyper Text Transfer Protocol
  • GET messages are submitted by the user station 509 to the web server 501 to retrieve a typical
  • HTML Hyper Text Markup Language
  • the HTTP GET messages specify a Uniform Resource Locator (URL), which
  • the URL serves as an address for the information by identifying the location of
  • SUB proxy server 507 seeks to minimize this network latency by servicing some of the requests from
  • the user station 509 without having to relay the requests over the Internet 505 to the web server
  • the user station 509 requests, as in step 1, a page from the proxy cache
  • proxy cache 507 the proxy cache 507 returns, per step 2, the requested page to user station 509.
  • the user station 509 experiences improved performance over having to wait for
  • user station 509 must log onto the web server 501 to obtain the information. Accordingly, the user's request, as in step 3, is
  • Web server 501 retrieves the information from database 503; this
  • This proxy cache model is useful when the users cannot avoid using a cache, such as crossing a boundary between an Intranet and a public Internet 505.
  • the drawbacks are useful when the users cannot avoid using a cache, such as crossing a boundary between an Intranet and a public Internet 505.
  • variable ⁇ include time delays when the information (e.g., web page) is not on the proxy cache 507, variable
  • Figure 6 is a diagram of a conventional "transparent (hidden) intercept” caching model
  • the transparent interrupt model in the system of Figure 6 provides an
  • ISP 1 network 601 connects to two caches 605 and 607.
  • a user station 615 is directly connected to the ISP 2 network 603
  • the data cache is configured into the ISP network, which
  • ISP 1 network 601 ISP 1 network 601
  • the method includes receiving a request
  • the method includes determining a
  • the method also includes instructing the
  • the method encompasses selectively synchronizing the secondary server. Under this
  • a communication network for providing web-based information comprises a primary server
  • the primary server stores information that is specified by a
  • a secondary server is coupled to the
  • the communication network is configured to serve as a mirror server to the primary server.
  • primary server is configured to instruct the user station to communicate with the secondary
  • the secondary server for a subsequent request message.
  • the secondary server is selectively synchronized with
  • the above arrangement advantageously provides efficient usage of network
  • a communication network comprises means for receiving a request message from a user station
  • the system also includes means for determining a secondary server based upon
  • SUBSTITUT ⁇ S ET RULE secondary server for a subsequent request message is provided. Further, the system includes
  • a computer-readable medium carrying one or more
  • sequences of one or more instructions accessing information from a web site over a
  • processors to perform the step of receiving a request message from a user station for information.
  • Other steps include determining a secondary server based upon network analysis data, instructing
  • Figure 1 is a block diagram of a communication system that includes a web site that
  • Figure 2 is a flowchart of the process of retrieving information from the web site in the
  • Figure 3 is a flowchart of the synchronization process associated with the mirror servers
  • Figure 4 is a diagram of a computer system that can perform in accordance with an
  • Figure 5 is a diagram of a traditional communication system based on a "proxy caching"
  • Figure 6 is a diagram of a conventional communication system based on a "transparent
  • a communication system utilizes a primary server with one or more secondary
  • servers i.e., mirror servers
  • the primary server may issue request messages (e.g., HTTP GET messages).
  • request messages e.g., HTTP GET messages.
  • the primary server may
  • the secondary servers are selectively synchronized with the primary server in response to a determination by the primary server that the ⁇ f ⁇ fflfir ⁇ on has been
  • present invention can be implemented on any computer system regardless of protocols, languages, or operating system platform. Furthermore, it is recognized by one of ordinary skill in the relevant art that the present invention relates to accessing information resident in any
  • Figure 1 shows a communication system employing multiple mirror servers, according to an embodiment of the present invention.
  • two mirror servers 101 and 103 have
  • IP Internet Protocol
  • IP network 105 is the public Internet; however, it is recognized by one of ordinary skill in the art that IP network 105 may be any type of IP based network, such as an intranet or an extranet.
  • a user station 107 connects to the IP network 105 to gain access to information that is resident
  • web server 109 Specifically, the information resides within a database 111 of web server
  • web site refers to the information (e.g., HTML documents) and
  • the associated databases which may be contained within one or more servers.
  • user station 107 may access the web server 109
  • user station 107 may employ the Hypertext Transfer Protocol (HTTP) to
  • HTTP is an application-level protocol for
  • RFC Request for Comment
  • User station 107 submits a URL (Uniform Resource Locator) request to web server 109,
  • Mirror servers 101 and 103 are considered secondary
  • Web server 109 delivers the initial data to the user station 107. Concurrently, based on
  • Such information may be stored, at the user option, in a "cookie" so
  • Web server 109 may
  • network analysis data may include traffic statistics, cost metrics, performance metrics, and
  • IP network 105 the local network (not shown) of user station 107, as
  • the primary server 109 bulk updates the designated secondary servers 101 and 103
  • Figure 2 is a flowchart of the process of retrieving information from the web site in the
  • step 201 user station 107 requests information from web server 109.
  • web server 109 sends the requested information to user station 107.
  • step 207 web server 109 directs user station 107 to the
  • the selected mirror server 101 and 103 may be the selected mirror server 101 and 103; by way of example, the selected mirror server may be the
  • mirror server 2 103 which in this case is mirror server 2 103. It should be noted that this
  • determination of the optimum mirror server 101 and 103 may be based on any number of criteria
  • User station 107 may selectively store the
  • the primary server 109 may initiate the network
  • FIG. 3 is a flowchart of the synchronization process associated with the mirror servers in the system of Figure 1.
  • the primary server 109 as in step 301, determines whether the
  • step 303 the primary server 109
  • the mirror servers 101 and 103 performs a bulk update of the mirror servers 101 and 103, per step 305.
  • the mirror servers 101 and 103 are continually synchronized with the primary server 109. Accordingly, the
  • Figure 4 illustrates a computer system 401 upon which an embodiment according to the
  • Computer system 401 includes a bus 403 or other
  • Computer system 401 also includes a main memory 407,
  • RAM random access memory
  • dynamic storage device such as a random access memory (RAM) or other dynamic storage device, coupled to bus 403 for
  • main memory 405 main memory
  • 407 may be used for storing temporary variables or other intermediate information during
  • Computer system 401 furthermore, executes instructions to be executed by processor 405.
  • ROM read only memory
  • a storage device 411 such as a
  • magnetic disk or optical disk is provided and coupled to bus 403 for storing information and
  • Computer system 401 may be coupled via bus 403 to a display 413, such as a cathode ray
  • An input device 415 including
  • alphanumeric and other keys is coupled to bus 403 for communicating information and
  • cursor control 417 Another type of user input device is cursor control 417,
  • main memory 407 causes processor 405 to perform the
  • One or more processors in a multi-processing arrangement may
  • hard- wired circuitry may be used in place of or in combination with
  • Non-volatile media includes, for example, optical or magnetic disks, such
  • Volatile media includes dynamic memory, such as main memory 407.
  • Transmission media includes coaxial cables, copper wire and fiber optics, including the wires
  • Transmission media can also take the form of acoustic or light waves, such as those generated during radio wave and infrared data communications.
  • Computer-readable media include, for example, a floppy disk, a
  • optical medium punch cards, paper tape, any other physical medium with patterns of holes, a
  • RAM random access memory
  • PROM read-only memory
  • EPROM erasable programmable read-only memory
  • FLASH-EPROM any other memory chip or cartridge, a carrier
  • SUBST ⁇ UTE SHEET RULE 26 instructions may initially be carried on a magnetic disk of a remote computer.
  • the remote
  • modem local to computer system 401 can receive the data on the telephone line and use an
  • infrared transmitter to convert the data to an infrared signal.
  • An infrared detector coupled to bus
  • Bus 403 can receive the data carried in the infrared signal and place the data on bus 403.
  • Bus 403 can receive the data carried in the infrared signal and place the data on bus 403.
  • main memory 407 main memory 407, from which processor 405 retrieves and executes the
  • main memory 407 may optionally be stored on storage
  • Computer system 401 also includes a communication interface 419 coupled to bus 403.
  • Communication interface 419 provides a two-way data communication coupling to a network
  • link 421 that is connected to a local network 423.
  • communication interface 419 For example, communication interface 419
  • LAN packet switched local area network
  • communication interface 419 may be an asymmetrical digital subscriber line
  • ADSL ADSL
  • ISDN integrated services digital network
  • Wireless links may also be
  • communication interface 419 sends and receives
  • Network link 421 typically provides data communication through one or more networks
  • network link 421 may provide a connection through local
  • IP Internet Protocol
  • LAN 423 and IP network 427 both use electrical, electromagnetic or optical signals
  • network link 421 and through communication interface 419, which carry the digital data to and
  • Computer system 401 can transmit notifications and receive data, including program code, through the network(s), network link 421 and communication interface 419.
  • Primary server 109 stores
  • servers 101 and 103 serve as mirror servers to the primary server 109, whereby primary server

Abstract

An approach for providing mirror servers (101, 103) of a primary server (109) to enhance efficient retrieval of web information is disclosed. A primary server (109) communicates with one or more secondary servers (i.e., mirror servers) (101, 103); the primary server (109) and the secondary servers (101, 103) communicate with each other over a communication network (105), such as the public Internet. A user station (107) initially communicates with the primary server (109) to retrieve information. The primary server (109) determines a particular secondary server (101 or 103) based upon network analysis data. The network analysis data may optionally be stored as a cookie in the user station (107). Thereafter, the primary server (109) instructs the user station (107) to communicate with a particular secondary server (101 or 103) for subsequent requests. The secondary server (101 or 103) is selectively synchronized with the primary server (109).

Description

TITLE OF THE INVENTION
SYSTEM AND METHOD FOR WEB MIRRORING
The present invention relates to a communication system employing a client-server
architecture, and is more particularly related to utilizing mirror servers for storing information.
The phenomenal growth of the Internet has presented network service providers (NSPs)
with the continual task of responding to the millions of users' demand for reliable and fast access
service. The primary role of an NSP is to connect users, which may include residential as well as
- 1 - business users, to a larger network for the transport of these users' data. The term Internet Service Provider (ISP) generally pertains to a particular type of network service provider that
concentrates on providing access to the global Internet. Undoubtedly the Internet has revolutionized the way personal communication as well as business communication is
conducted. With its expansive reach, the Internet has allowed users to communicate freely
without geographic boundaries. In fact, businesses have integrated numerous Internet services, which include e-mail, mailing lists, e-commerce (electronic commerce), and the World Wide
Web, into their business processes.
Performance of the World Wide Web is largely dictated by the speed with which the
information from a web server can be retrieved by the client (the user station) over the Internet.
Performance concerns are faced by numerous organizations and business entities, such as banks and brokerage houses, which rely on communication networks to transfer massive amounts of
critical data, as a necessary part of their daily business tasks. Near real-time access to data is the desirable goal of such institutions; therefore, undue delay pose grave consequences (e.g., degradation of service to clients, lost of revenue, etc.). Factors that impact this performance
include the reliability, bandwidth, and congestion level of the communication path, propagation
delay stemming from geographical distances, and loading on the web server. The above factors
can be mitigated by using a local caching mechanism. That is, popular information objects are
stored locally in a cache, as in the "proxy caching" scheme of the convention communication
system of Figure 5. However, conventional systems, as described in Figures 5 and 6, possess a number of drawbacks.
Figure 5 shows a block diagram of a conventional proxy caching model for accessing a
web site. As shown, a web server 501 typically contains a database 503 and is connected to the Internet 505, which employs the TCP IP (Transmission Control Protocol/lntemet Protocol) stack
to reliably transport data. A proxy server 507, which is attached to the Internet 505, stores
popular requested information objects to a cache. The cache is located in proxy server 507, which
provides a gateway service by acting as a server to the user station 509. Further, the proxy server
507 behaves as a client to the web server 501. Because proxy server 507 performs a caching
function, the server 507 is referred to as a "proxy cache."
Proxy cache 507 essentially intercepts request messages from user station 509 to the web
server 501. Proxy cache 507 has a replica of the requested information, the proxy cache 507
sends the requested information to the user station 509. This function is transparent to the user
station 509. Accordingly, network latency of the Internet 505 is avoided; the result is that
network resources or objects are provided more quickly to the user station 509.
In this model, user station 509 retrieves information from the Internet 505 through proxy
server 507 using HTTP (Hyper Text Transfer Protocol). Particularly, a large number of HTTP
GET messages are submitted by the user station 509 to the web server 501 to retrieve a typical
web page, which may be made up of multiple HTML (Hyper Text Markup Language)
documents. The HTTP GET messages specify a Uniform Resource Locator (URL), which
uniquely identifies each information object stored on or dynamically generated by the web server
501. In effect, the URL serves as an address for the information by identifying the location of
information stored in the Internet 505.
For each HTTP GET message, a communication session is set-up and tom-down, thereby
necessitating the establishment and termination of numerous communication sessions for a single
transaction. In other words, a single, continuous communication session is not maintained.
Accordingly, network latency of the Internet 505 is amplified. In this conventional system, the
- 3 -
SUB proxy server 507 seeks to minimize this network latency by servicing some of the requests from
the user station 509 without having to relay the requests over the Internet 505 to the web server
501.
During operation, the user station 509 requests, as in step 1, a page from the proxy cache
507, which is configured into the browser of the user station 509. If the page is available on the
proxy cache 507, the proxy cache 507 returns, per step 2, the requested page to user station 509.
In this manner, the user station 509 experiences improved performance over having to wait for
the request and response from web server 501 to traverse the Internet 505; this network latency may be significant, depending on the level of congestion on the Internet 505. However, if the requested information is not available on the proxy cache 507, user station 509 must log onto the web server 501 to obtain the information. Accordingly, the user's request, as in step 3, is
forwarded to web server 501. Web server 501 retrieves the information from database 503; this
information is downloaded, per step 4, to the proxy cache 507. Thereafter, the information is
forwarded to the user station 509. This proxy cache model is useful when the users cannot avoid using a cache, such as crossing a boundary between an Intranet and a public Internet 505. However, the drawbacks
include time delays when the information (e.g., web page) is not on the proxy cache 507, variable
performance occurring within page groups, and users' ability to configure to only one proxy
cache 507 utilizing current network browsers.
Figure 6 is a diagram of a conventional "transparent (hidden) intercept" caching model
for accessing a web site. The transparent interrupt model in the system of Figure 6 provides an
improvement over the system of Figure 5. Under this arrangement, two ISP networks 601 and
603 are connected to the Internet 505. ISP 1 network 601 connects to two caches 605 and 607.
- 4 -
SUBSTΓΠJTE SHEET RULE 26 User stations 609 and 611 utilize cache 605, while user station 613 utilizes cache 607. With
respect to ISP 2 network 603, a user station 615 is directly connected to the ISP 2 network 603
without a cache. In this model, the data cache is configured into the ISP network, which
intercepts all URL requests entering the ISP network. In this example, ISP 1 network 601
contains caches 605 and 607; accordingly user stations 609, 611 , and 613 correspondingly enjoy
the improvements in performance because of the caches 605 and 607. However, ISP 2 network
603 has no configured data cache. Nevertheless, the user in this model is still limited to the data
which may be placed on the particular cache to which the users connected. Also, performance is
variable, depending on the data contained in a particular cache 605 and 607.
Based on the foregoing, there is a clear need for improved approaches for retrieving
information from a web site over a communication network.
There is also a need to improve user response time in the retrieval of information over a
communication network.
There is also a need to dynamically adjust to traffic loads to provide consistent network performance.
There is also a need to utilize network resources efficiently.
There is a further need to minimize network latency.
Based on the need to streamline the processes of accessing and retrieving information
from a web site, an approach for employing mirror servers that account for network conditions is highly desirable. SUMMARY OF THE INVENTION
According to one aspect of the invention, a method is provided for accessing information
from a web site over a communication network. The method includes receiving a request
message from a user station for information. Additionally, the method includes determining a
secondary server based upon network analysis data. The method also includes instructing the
user station to communicate with the secondary server for a subsequent request message.
Further, the method encompasses selectively synchronizing the secondary server. Under this
approach, user response time related to retrieval of information over a communication network is
minimized.
According to another aspect of the invention, a communication system for interfacing
with a communication network for providing web-based information comprises a primary server
that is coupled to the communication network and is configured to determine a secondary server
based upon network analysis data. The primary server stores information that is specified by a
request message received from a user station. A secondary server is coupled to the
communication network and is configured to serve as a mirror server to the primary server. The
primary server is configured to instruct the user station to communicate with the secondary
server for a subsequent request message. The secondary server is selectively synchronized with
the primary server. The above arrangement advantageously provides efficient usage of network
resources.
In another aspect of the invention, a system of accessing information from a web site over
a communication network comprises means for receiving a request message from a user station
for information. The system also includes means for determining a secondary server based upon
network analysis data. A means for instructing the user station to communicate with the
- 6 -
SUBSTITUTΕ S ET RULE secondary server for a subsequent request message is provided. Further, the system includes
means for selectively synchronizing the secondary server. This arrangement advantageously
reduces network latency.
In another aspect of the invention, a computer-readable medium carrying one or more
sequences of one or more instructions accessing information from a web site over a
communication network is provided. The one or more sequences of one or more instructions
include instructions which, when executed by one or more processors, cause the one or more
processors to perform the step of receiving a request message from a user station for information.
Other steps include determining a secondary server based upon network analysis data, instructing
the user station to communicate with the secondary server for a subsequent request message, and
selectively synchronizing the secondary server. Under this approach, traffic congestion is
minimized.
BRIEF DESCRIPTION OF THE DRAWINGS
A more complete appreciation of the invention and many of the attendant advantages
thereof will be readily obtained as the same becomes better understood by reference to the
following detailed description when considered in connection with the accompanying drawings,
wherein:
Figure 1 is a block diagram of a communication system that includes a web site that
utilizes mirror servers, in accordance with an embodiment of the present invention;
Figure 2 is a flowchart of the process of retrieving information from the web site in the
system of Figure 1 ; Figure 3 is a flowchart of the synchronization process associated with the mirror servers
in the system of Figure 1 ;
Figure 4 is a diagram of a computer system that can perform in accordance with an
embodiment of the present invention;
Figure 5 is a diagram of a traditional communication system based on a "proxy caching"
model for accessing a web site; and
Figure 6 is a diagram of a conventional communication system based on a "transparent
(hidden) intercept" caching model for accessing a web site.
DESCRIPTION OF THE PREFERRED EMBODIMENTS
In the following description, for the purpose of explanation, specific details are set forth
in order to provide a thorough understanding of the invention. However, it will be apparent that
the invention may be practiced without these specific details. In some instances, well-known
structures and devices are depicted in block diagram form in order to avoid unnecessarily obscuring the present invention.
The present invention accomplishes improved processing of web traffic to reduce user response time. A communication system utilizes a primary server with one or more secondary
servers (i.e., mirror servers) to supply information to a user station. To retrieve information, the
user station issues request messages (e.g., HTTP GET messages). The primary server may
instruct the user station to a particular secondary server, based upon network analysis data, for processing of subsequent request messages. The network analysis data may optionally be stored as a cookie in the user station. The secondary servers are selectively synchronized with the primary server in response to a determination by the primary server that the ϊϊϊfβfflfirπon has been
changed.
Although the present invention is discussed with respect to exemplary protocols,
computer languages, and operating systems related to the World Wide Web, the system of the
present invention can be implemented on any computer system regardless of protocols, languages, or operating system platform. Furthermore, it is recognized by one of ordinary skill in the relevant art that the present invention relates to accessing information resident in any
client-server network in general, even though the present invention is discussed with respect to
the public Internet.
Figure 1 shows a communication system employing multiple mirror servers, according to an embodiment of the present invention. In this example, two mirror servers 101 and 103 have
connectivity to an IP (Internet Protocol) network 105. In an exemplary embodiment, the IP
network 105 is the public Internet; however, it is recognized by one of ordinary skill in the art that IP network 105 may be any type of IP based network, such as an intranet or an extranet. A user station 107 connects to the IP network 105 to gain access to information that is resident
within web server 109. Specifically, the information resides within a database 111 of web server
109. As use herein, the term "web site" refers to the information (e.g., HTML documents) and
the associated databases, which may be contained within one or more servers. In this exemplary embodiment, the mirror servers 101 and 103 and the web server 109, along with the information
stored therein, constitute the web site.
To retrieve the requested information, user station 107 may access the web server 109
using standardized web browsers (e.g., Microsoft Internet Explorer, Netscape Navigator, and
etc.). As a web client, user station 107 may employ the Hypertext Transfer Protocol (HTTP) to
- 9 - exchange information with web server 109. HTTP is an application-level protocol for
distributed, collaborative, hypermedia information systems; IETF (Internet Engineering Task
Force) RFC (Request for Comment) 2616 specifies this protocol and is incorporated herein in its entirety.
User station 107 submits a URL (Uniform Resource Locator) request to web server 109,
which is denoted as the primary server. Mirror servers 101 and 103 are considered secondary
servers. Web server 109 delivers the initial data to the user station 107. Concurrently, based
upon network analysis data, initiated by web server 109 at the user's request, a decision is made to determine the optimum secondary (mirror or shadow) server 101 and 103 for a particular
user/connection/location. Such information may be stored, at the user option, in a "cookie" so
that the analysis need not be repeated in each communication session. Web server 109 may
trigger a network analysis to be performed by a network management system (not shown). These
network analysis data may include traffic statistics, cost metrics, performance metrics, and
distance metrics associated with a communication path from the user station 107 to the servers
101, 103, and 109 through IP network 105, the local network (not shown) of user station 107, as
well as the local networks (not shown) of the serverslOl, 103, and 109.
When the information that was requested by user station 107 is modified on the primary
server 109, the primary server 109 bulk updates the designated secondary servers 101 and 103
with the new information that was previously requested by user station 107. Since the secondary
servers 101 and 103 are synchronized with the primary web server 109, the user station 107 does
not have to connect to the primary server 109 to request the information, resulting in faster and more consistent performance. Figure 2 is a flowchart of the process of retrieving information from the web site in the
system of Figure 1. In step 201, user station 107 requests information from web server 109.
Next, web server 109, as in step 203, sends the requested information to user station 107. The
primary server 109 then determines the optimum mirror server 101 and 103 based upon the
network analysis data, per step 205. In step 207, web server 109 directs user station 107 to the
selected mirror server 101 and 103; by way of example, the selected mirror server may be the
nearest mirror server, which in this case is mirror server 2 103. It should be noted that this
determination of the optimum mirror server 101 and 103 may be based on any number of criteria
other than geographical location, for example, communication costs, congestion level, server
loading, etc. vis-ά-vis the network analysis data. User station 107 may selectively store the
network analysis data in a cookie (step 209); storing such data avoids performing the network analysis again, thereby saving processing time. The primary server 109 may initiate the network
analysis periodically or upon any number of triggering events (e.g., detected congestion level
exceeds a predetermined threshold). For subsequent requests, user station 107 is redirected to
send requests to the selected mirror server 103 , per step 211. The process of synchronizing the
secondary servers 101 and 103 with primary server 109 is described below with respect to Figure
3.
Figure 3 is a flowchart of the synchronization process associated with the mirror servers in the system of Figure 1. The primary server 109, as in step 301, determines whether the
information that is stored in database 111 has been modified. If in deed the server 109 finds that
the information has been modified in some manner (step 303), then the primary server 109
performs a bulk update of the mirror servers 101 and 103, per step 305. As a result, the mirror servers 101 and 103 are continually synchronized with the primary server 109. Accordingly, the
data that is retrieved by user station 107 is the most updated.
Figure 4 illustrates a computer system 401 upon which an embodiment according to the
present invention may be implemented. Computer system 401 includes a bus 403 or other
communication mechanism for communicating information, and a processor 405 coupled with
bus 403 for processing the information. Computer system 401 also includes a main memory 407,
such as a random access memory (RAM) or other dynamic storage device, coupled to bus 403 for
storing information and instructions to be executed by processor 405. In addition, main memory
407 may be used for storing temporary variables or other intermediate information during
execution of instructions to be executed by processor 405. Computer system 401 further
includes a read only memory (ROM) 409 or other static storage device coupled to bus 403 for
storing static information and instructions for processor 405. A storage device 411, such as a
magnetic disk or optical disk, is provided and coupled to bus 403 for storing information and
instructions.
Computer system 401 may be coupled via bus 403 to a display 413, such as a cathode ray
tube (CRT), for displaying information to a computer user. An input device 415, including
alphanumeric and other keys, is coupled to bus 403 for communicating information and
command selections to processor 405. Another type of user input device is cursor control 417,
such as a mouse, a trackball, or cursor direction keys for communicating direction information
and command selections to processor 405 and for controlling cursor movement on display 413.
According to one embodiment, the steps of Figures 2 and 3 are provided by computer
system 401 in response to processor 405 executing one or more sequences of one or more
instructions contained in main memory 407. Such instructions may be read into main memory
- 12 -
SUBSTΓΓUTE 407 from another computer-readable medium, such as storage device 411. Execution of the
sequences of instructions contained in main memory 407 causes processor 405 to perform the
process steps described herein. One or more processors in a multi-processing arrangement may
also be employed to execute the sequences of instructions contained in main memory 407. In
alternative embodiments, hard- wired circuitry may be used in place of or in combination with
software instructions. Thus, embodiments are not limited to any specific combination of
hardware circuitry and software.
Further, the code related to the steps of Figures 2 and 3 may reside on a computer-
readable medium. The term "computer-readable medium" as used herein refers to any medium
that participates in providing instructions to processor 405 for execution. Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media includes, for example, optical or magnetic disks, such
as storage device 411. Volatile media includes dynamic memory, such as main memory 407.
Transmission media includes coaxial cables, copper wire and fiber optics, including the wires
that comprise bus 403. Transmission media can also take the form of acoustic or light waves, such as those generated during radio wave and infrared data communications.
Common forms of computer-readable media include, for example, a floppy disk, a
flexible disk, hard disk, magnetic tape, or any other magnetic medium, a CD-ROM, any other
optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a
RAM, a PROM, and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier
wave as described hereinafter, or any other medium from which a computer can read.
Various forms of computer readable media may be involved in carrying one or more
sequences of one or more instructions to processor 405 for execution. For example, the
- 13 -
SUBSTΓΓUTE SHEET RULE 26 instructions may initially be carried on a magnetic disk of a remote computer. The remote
computer can load the instructions relating to executing the steps of Figures 2 and 3 remotely
into its dynamic memory and send the instructions over a telephone line using a modem. A
modem local to computer system 401 can receive the data on the telephone line and use an
infrared transmitter to convert the data to an infrared signal. An infrared detector coupled to bus
403 can receive the data carried in the infrared signal and place the data on bus 403. Bus 403
carries the data to main memory 407, from which processor 405 retrieves and executes the
instructions. The instructions received by main memory 407 may optionally be stored on storage
device 411 either before or after execution by processor 405.
Computer system 401 also includes a communication interface 419 coupled to bus 403.
Communication interface 419 provides a two-way data communication coupling to a network
link 421 that is connected to a local network 423. For example, communication interface 419
may be a network interface card to attach to any packet switched local area network (LAN). As
another example, communication interface 419 may be an asymmetrical digital subscriber line
(ADSL) card, an integrated services digital network (ISDN) card or a modem to provide a data
communication connection to a corresponding type of telephone line. Wireless links may also be
implemented. In any such implementation, communication interface 419 sends and receives
electrical, electromagnetic and/or optical signals that carry digital data streams representing
various types of information.
Network link 421 typically provides data communication through one or more networks
to other data devices. For example, network link 421 may provide a connection through local
network 423 to a host computer 425 or to data equipment operated by a service provider, which
provides data communication services through an IP (Internet Protocol) network 427 (e.g., the
- 14 - Internet). LAN 423 and IP network 427 both use electrical, electromagnetic or optical signals
that carry digital data streams. The signals through the various networks and the signals on
network link 421 and through communication interface 419, which carry the digital data to and
from computer system 401, are exemplary forms of carrier waves transporting the information.
Computer system 401 can transmit notifications and receive data, including program code, through the network(s), network link 421 and communication interface 419.
The techniques described herein provide several advantages over prior approaches to
accessing information from a web site over a communication network. Primary server 109 stores
information that is specified by a request message received from user station 107. Secondary
servers 101 and 103 serve as mirror servers to the primary server 109, whereby primary server
109 instructs the user station to communicate with a particular secondary server for subsequent request messages. The above arrangement advantageously provides efficient usage of network
resources.
Obviously, numerous modifications and variations of the present invention are possible in
light of the above teachings. It is therefore to be understood that within the scope of the
appended claims, the invention may be practiced otherwise than as specifically described herein.

Claims

WHAT IS CLAIMED IS:
1. A method of accessing information from a web site over a communication network,
the method comprising:
receiving a request message from a user station for information;
determining a secondary server based upon network analysis data;
instructing the user station to communicate with the secondary server for a subsequent
request message; and
selectively synchronizing the secondary server.
2. The method according to claim 1, further comprising:
selectively storing the network analysis data in form of a cookie in the user station.
3. The method according to claim 1 , further comprising determining whether the
requested information has been modified, wherein the synchronizing step comprises bulk
updating the secondary server.
4. The method according to claim 1 , wherein the network analysis data in the step of
determining the secondary server includes at least one of traffic statistics, cost metrics,
performance metrics, and distance metrics corresponding to the communication network.
5. The method according to claim 1, wherein the request message in the receiving step
conforms with the Hypertext Transfer Protocol (HTTP).
6. The method according to claim 1 , wherein the communication network is the public Internet.
7. The method according to claim 1 , wherein the communication network is an IP
(Internet Protocol) network.
8. A commumcation system for interfacing with a communication network for providing
web-based information, comprising:
a primary server coupled to the communication network and configured to determine a
secondary server based upon network analysis data, the primary server storing information
specified by a request message received from a user station; and
a secondary server coupled to the communication network and configured to serve as a
mirror server to the primary server,
wherein the primary server is configured to instruct the user station to communicate with
the secondary server for a subsequent request message, the secondary server being selectively
synchronized with the primary server.
9. The system according to claim 8, further comprising: selectively storing the network analysis data in form of a cookie in the user station.
10. The system according to claim 8, wherein the primary server is configured to
determine whether the requested information has been modified, wherein the synchronization
between the primary server and the secondary server is performed by bulk updating the
secondary server.
11.» The system according to claim 8, wherein the network analysis data includes at least
one of traffic statistics, cost metrics, performance metrics, and distance metrics corresponding to
the communication network.
12. The system according to claim 8, wherein the request message conforms with the
Hypertext Transfer Protocol (HTTP).
13. The system according to claim 8, wherein the communi cation network is the public
Internet.
- 17 -
14. The system according to claim 8, wherein the communication network is an IP
(Internet Protocol) network.
15. The system according to claim 8, further comprising:
another secondary server that is synchronized with the primary server, wherein the user
station is directed to the one secondary server that is closer.
16. A system of accessing information from a web site over a communication network,
the system comprising:
means for receiving a request message from a user station for information;
means for determining a secondary server based upon network analysis data;
means for instructing the user station to communicate with the secondary server for a
subsequent request message; and
means for selectively synchronizing the secondary server.
17. The system according to claim 16, further comprising: means for selectively storing the network analysis data in form of a cookie in the user
station.
18. The system according to claim 16, further comprising means for determining whether
the requested information has been modified, wherein the synchronizing means performs bulk
updating with respect to the secondary server.
19. The system according to claim 16, wherein the network analysis data includes at least
one of traffic statistics, cost metrics, performance metrics, and distance metrics corresponding to
the communication network.
20. The system according to claim 16, wherein the request message conforms with the
Hypertext Transfer Protocol (HTTP).
- 18 -
21. The system according to claim 16, wherein the communication network is the public
Internet.
22. The system according to claim 16, wherein the communication network is an IP
(Internet Protocol) network.
23. A computer-readable medium carrying one or more sequences of one or more
instructions for accessing information from a web site over a communication network, the one or
more sequences of one or more instructions including instructions which, when executed by one
or more processors, cause the one or more processors to perform the steps of:
receiving a request message from a user station for information;
determining a secondary server based upon network analysis data; instructing the user station to communicate with the secondary server for a subsequent
request message; and
selectively synchronizing the secondary server.
24. The computer-readable medium according to claim 23, wherein the one or more
processors further perform the step of:
selectively storing the network analysis data in form of a cookie in the user station.
25. < The computer-readable medium according to claim 23, wherein the one or more
processors further perform the step of:
determining whether the requested information has been modified,
wherein the synchronizing step comprises bulk updating the secondary server.
26. The computer-readable medium according to claim 23, wherein the network analysis
data in the step of determining the secondary server includes at least one of traffic statistics, cost metrics, performance metrics, and distance metrics corresponding to the communication
network.
27. The computer-readable medium according to claim 23, wherein the request message
in the receiving step conforms with the Hypertext Transfer Protocol (HTTP).
28. The computer-readable medium according to claim 23, wherein the communication
network is the public Internet.
29. The computer-readable medium according to claim 23, wherein the communication
network is an IP (Internet Protocol) network.
20
PCT/US2000/029693 1999-10-27 2000-10-27 System and method for web mirroring WO2001031445A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CA002389164A CA2389164A1 (en) 1999-10-27 2000-10-27 System and method for web mirroring
MXPA02004199A MXPA02004199A (en) 1999-10-27 2000-10-27 System and method for web mirroring.
AU13500/01A AU1350001A (en) 1999-10-27 2000-10-27 System and method for web mirroring
EP00975450A EP1228430A4 (en) 1999-10-27 2000-10-27 System and method for web mirroring

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16183399P 1999-10-27 1999-10-27
US60/161,833 1999-10-27

Publications (1)

Publication Number Publication Date
WO2001031445A1 true WO2001031445A1 (en) 2001-05-03

Family

ID=22582945

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/029693 WO2001031445A1 (en) 1999-10-27 2000-10-27 System and method for web mirroring

Country Status (5)

Country Link
EP (1) EP1228430A4 (en)
AU (1) AU1350001A (en)
CA (1) CA2389164A1 (en)
MX (1) MXPA02004199A (en)
WO (1) WO2001031445A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003048963A1 (en) * 2001-12-03 2003-06-12 Kent Ridge Digital Labs A method of connecting a plurality of remote sites to a server
WO2005099224A1 (en) 2004-03-12 2005-10-20 Thomson Licensing Automated remote site downloading on a geographic drive

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805824A (en) * 1996-02-28 1998-09-08 Hyper-G Software Forchungs-Und Entwicklungsgesellschaft M.B.H. Method of propagating data through a distributed information system
US5909589A (en) * 1996-11-12 1999-06-01 Lance T. Parker Internet based training
US5941949A (en) * 1997-05-14 1999-08-24 Citrix Systems, Inc. System and method for transmitting data from a server application to more than one client node
US5958053A (en) * 1997-01-30 1999-09-28 At&T Corp. Communications protocol with improved security
US5961586A (en) * 1997-05-14 1999-10-05 Citrix Systems, Inc. System and method for remotely executing an interpretive language application
US5991809A (en) * 1996-07-25 1999-11-23 Clearway Technologies, Llc Web serving system that coordinates multiple servers to optimize file transfers
US6014701A (en) * 1997-07-03 2000-01-11 Microsoft Corporation Selecting a cost-effective bandwidth for transmitting information to an end user in a computer network
US6092178A (en) * 1998-09-03 2000-07-18 Sun Microsystems, Inc. System for responding to a resource request
US6122658A (en) * 1997-07-03 2000-09-19 Microsoft Corporation Custom localized information in a networked server for display to an end user

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5774668A (en) * 1995-06-07 1998-06-30 Microsoft Corporation System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing
GB2309558A (en) * 1996-01-26 1997-07-30 Ibm Load balancing across the processors of a server computer

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805824A (en) * 1996-02-28 1998-09-08 Hyper-G Software Forchungs-Und Entwicklungsgesellschaft M.B.H. Method of propagating data through a distributed information system
US5991809A (en) * 1996-07-25 1999-11-23 Clearway Technologies, Llc Web serving system that coordinates multiple servers to optimize file transfers
US5909589A (en) * 1996-11-12 1999-06-01 Lance T. Parker Internet based training
US5958053A (en) * 1997-01-30 1999-09-28 At&T Corp. Communications protocol with improved security
US5941949A (en) * 1997-05-14 1999-08-24 Citrix Systems, Inc. System and method for transmitting data from a server application to more than one client node
US5961586A (en) * 1997-05-14 1999-10-05 Citrix Systems, Inc. System and method for remotely executing an interpretive language application
US6014701A (en) * 1997-07-03 2000-01-11 Microsoft Corporation Selecting a cost-effective bandwidth for transmitting information to an end user in a computer network
US6122658A (en) * 1997-07-03 2000-09-19 Microsoft Corporation Custom localized information in a networked server for display to an end user
US6092178A (en) * 1998-09-03 2000-07-18 Sun Microsystems, Inc. System for responding to a resource request

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1228430A4 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003048963A1 (en) * 2001-12-03 2003-06-12 Kent Ridge Digital Labs A method of connecting a plurality of remote sites to a server
WO2005099224A1 (en) 2004-03-12 2005-10-20 Thomson Licensing Automated remote site downloading on a geographic drive
US8972482B2 (en) 2004-03-12 2015-03-03 Thomson Licensing Automated remote site downloading on a geographic drive

Also Published As

Publication number Publication date
AU1350001A (en) 2001-05-08
CA2389164A1 (en) 2001-05-03
MXPA02004199A (en) 2004-04-21
EP1228430A1 (en) 2002-08-07
EP1228430A4 (en) 2004-05-06

Similar Documents

Publication Publication Date Title
EP1002410B1 (en) A distributed system and method for prefetching objects
EP1206100B1 (en) Communication system for retrieving web content
JP3491011B2 (en) Differential communication system
JP3953109B2 (en) Client / server communication system
JP3483892B2 (en) TCP communication system with low overhead
JP4608195B2 (en) Data caching method
US6622157B1 (en) Extending network services using mobile agents
US7818321B2 (en) Method and system for generating and providing rich media presentations optimized for a device over a network
US20020055956A1 (en) Method and system for assembling concurrently-generated content
US8166198B2 (en) Method and system for accelerating browsing sessions
EP1398714A2 (en) Method and system for providing enhanced performance of web browsing
US20020156896A1 (en) System and method for providing a gateway between mobile two-way messaging devices and remote computer networks
KR20040032106A (en) A system and method for reducing the time to deliver information from a communications network to a user
US7570942B2 (en) Transactional message-queue communication for wirelessly networked devices system and method
US6672775B1 (en) Cross-machine web page download and storage
US8214827B2 (en) Method and system for improving user confidence and experience in content purchasing via a service provider premises
EP1735992A1 (en) Satellite anticipatory bandwidth acceleration
US20060155819A1 (en) Methods and system for using caches
EP1228430A1 (en) System and method for web mirroring
Hadjiefthymiades et al. A Survey of Web Architectures for Wireless Communication Environments.
Wachsberg E cient information access for wireless computers
KR20030042658A (en) Recording medium storing a browser therein and a data downloading method therewith

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: PA/a/2002/004199

Country of ref document: MX

Ref document number: 2389164

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 2000975450

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2000975450

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Ref document number: 2000975450

Country of ref document: EP