System and method for selecting a service with dynamically...

Electrical computers and digital processing systems: multicomput – Computer-to-computer session/connection establishing – Network resources access controlling

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S241000

Reexamination Certificate

active

06795860

ABSTRACT:

FIELD OF THE INVENTION
The present invention relates to accessing data in a network environment via a computer system. In particular, the present invention relates to a system and method for selecting a redundant service.
BACKGROUND OF THE INVENTION
With the growing popularity of the Internet, providing speedy access to a requested location on the Internet is fast becoming a significant issue. For example, when a popular web page is hosted by a single computer, the Internet traffic to that computer can be overwhelming. To manage this problem, several computers can be utilized to host the same web page such that each hosting computer, typically referred to as a server, maintains a copy of the web page. If there are many servers at the same location, then the network connection to that location can become choked during a time of high Internet traffic. To avoid choking the network connection, mirrored servers are often located at different sites. These sites are herein referred to as mirrored sites. The use of multiple computers to host a network service, such as a web page, is typically referred to as mirrored services.
FIG. 1
is a block diagram illustrating a path taken by a client's request for a particular address. A client may be any entity which attempts to access a service. For example, the client may be a user, a company, or an automated computer system.
FIG. 1
shows a client
10
requesting an address for a network site, such as www.cisco.com, from a local domain name server
12
. The client's local domain name server
12
may be a service such as Netcom or AT&T. The local domain name server
12
then eventually learns the address of one of the mirrored services
14
A-
14
B, and replies to the client
10
with the address of one of the mirrored services
14
A-
14
B.
FIG. 2
illustrates a basic organization of the Internet. The Internet includes groups of networks and routers which combine to create a autonomous systems (ASs)
50
A-
50
E. A client may be located in one AS, such as AS
50
A, while the service that the client is attempting to access may be located in another AS, such as AS
50
E. In order to reach service
14
, the request from client
10
may be passed from AS
50
A to AS
50
B through AS
50
C, through AS
50
D, and finally reaching service
14
at AS
50
E.
In a mirrored service environment, the client
10
may be in one AS, such as AS
50
A, while the mirrored services may be located in various different autonomous systems, such as AS
50
E and AS
50
C. An address of one of these mirrored services is typically needed in response to the client's request.
There are several conventional ways of determining which mirrored service should be assigned to a requesting client. A selection of a mirrored service can be based on several factors. Ideally, the requested address should be returned to the client very quickly and downloaded into the client's computer system as quickly as possible. The time between the request being sent out by the client and the address being received is referred to as latency. The time it takes to download the requested address is typically determined by the bandwidth.
One conventional service assignment scheme is a round robin scheme. The round robin simply takes turns on which mirrored service is to be used. A potential problem with the round robin scheme is that it does not take into consideration the various loads of the mirrored services at any given time. Additionally, the round robin scheme also fails to take into consideration the location of the user. Accordingly, the two factors of latency and bandwidth are not typically considered in the round robin scheme.
When the service is a mirrored service, the mirrored services may be located in different autonomous systems. Some service selection methods attempt to measure a metric between the client
10
and each of the services
14
. Metric is herein meant to include a measurement of some characteristic of a connection, for example, a unit which indicates distance or time or both. For example, one such method measures “hop count”, wherein the number of autonomous systems located between client
10
and service
14
are counted. The mirrored service with the smallest hop count may be considered the best selection for that particular client.
Although the metric measurement methods are effective in many situations, there may be situations in which it is an advantage to have an alternate method for determining which mirrored service is best for a particular client. For example, one such situation is if the hop count between a client and a first server is the same as the hop count between the client and a second server. Although the hop count may be the same, the actual distances between the client and the first service and the client and the second service may be different. Another example of when an alternative method would be beneficial, is when an autonomous system is so large as to encompass more than one mirrored service. A client within that same autonomous system would not be able to use the hop count in order to determine which mirrored service is better for that client.
It would be desirable to have an alternative reliable system and method to determine which mirrored service is the best selection for a given client. It would also be desirable to quickly and efficiently obtain information regarding mirrored services to facilitate the selection of a mirrored service. The present invention addresses such a need.
SUMMARY OF THE INVENTION
The present invention relates to a system and method for selecting a service. According to an embodiment of the present invention, a priority array indicates an order of priority levels; a residual array indicates each service to be evaluated for selection; and a result array indicates the results of selection at a priority level. An order of priority is configured for various metrics. The first priority metric is determined for each service in the residual array. If there is no tie in the result array for a server meeting a predetermined criteria, herein referred to as a “best” service, then a “best” service is selected. If a tie occurs in the result array, then the next priority metric is evaluated for the services that tied in the previous priority metric. If no tie occurs, then a “best” service is selected.
A method according to an embodiment of the present invention for selecting an electronic service is presented. The method comprises determining a first metric and a second metric at a first priority level, wherein the first metric is associated with a first service and the second metric is associated with a second service. The method also compares the first metric and the second metric. It is then determined whether the first metric and the second metric are approximately equivalent. If the first metric and the second metric are approximately equivalent, it is also determined whether a third metric and a fourth metric at a second priority level, wherein the third metric is associated with the first service and the fourth metric is associated with the second service.
A system according to an embodiment of the present invention for selecting an electronic service is also presented. The system comprises a processor configured to determine a first metric and a second metric at a first priority level. The first metric is associated with a first service and the second metric is associated with a second service. The processor is also configured to compare the first metric and the second metric. The processor is also configured to determine whether the first metric and the second metric are approximately equivalent. Additionally, if the first metric and the second metric are approximately equivalent, the processor is configured to determine a third metric and a fourth metric at a second priority level, wherein the third metric is associated with the first service and the fourth metric is associated with the second service. A memory is coupled to the processor to provide instructions to the processor.


REFERENCES:
patent:

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

System and method for selecting a service with dynamically... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with System and method for selecting a service with dynamically..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System and method for selecting a service with dynamically... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3241770

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.