Claims Analysis
Total Claims: 50
Claim 1
Independent Claim
170 words
In an Internet Protocol network, a method for directing a flow between a client and a best-fit server, the method comprising: receiving a client request for content via the Internet Protocol network; deriving, from the client request, content type information descriptive of the type of content requested by the content request; deriving, from the client request, quality of service information descriptive of quality of service requirements of the content requested by the client request; selecting as the best-fit server a server from among a set of candidate servers serving the content requested by the client request, based on the content type information, the quality of service information, and at least one server metric descriptive of expected qualities of service provided by the candidate servers when serving the requested content; subsequently forwarding to the best-fit server transmissions originating from the client which are associated with the client request for content; and subsequently forwarding to the client transmissions originating from the best-fit server which are associated with the client request for content.
Claim 2
Dependent Claim
170 words
In an Internet Protocol network, a method for directing a flow between a client and a best-fit server, the method comprising: receiving a client request for content via the Internet Protocol network; deriving, from the client request, content type information descriptive of the type of content requested by the content request; deriving, from the client request, quality of service information descriptive of quality of service requirements of the content requested by the client request; selecting as the best-fit server a server from among a set of candidate servers serving the content requested by the client request, based on the content type information, the quality of service information, and at least one server metric descriptive of expected qualities of service provided by the candidate servers when serving the requested content; subsequently forwarding to the best-fit server transmissions originating from the client which are associated with the client request for content; and subsequently forwarding to the client transmissions originating from the best-fit server which are associated with the client request for content.
Claim 3
Dependent Claim
63 words
The method of claim 1, wherein the combination of server metrics includes: one or more metrics selected from the following group: server load metrics descriptive of the current load and recent activity on the candidate servers, network congestion metrics descriptive of network congestion between the client and the candidate servers, and client-server proximity information descriptive of distances between the client and candidate servers.
Claim 4
Dependent Claim
28 words
The method of claim 2, wherein client-server proximity information comprises information descriptive of a continent in which the client resides and a continent in which the server resides.
Claim 5
Dependent Claim
29 words
The method of claim 3, wherein client-server proximity information further comprises information descriptive of an administrative authority associated with the client and an administrative authority associated with the server.
Claim 6
Dependent Claim
13 words
The method of claim 4, wherein the administrative authorities are Internet Service Providers.
Claim 7
Dependent Claim
63 words
The method of claim 1, wherein the combination of server metrics includes: two or more metrics selected from the following group: server load metrics descriptive of the current load and recent activity on the candidate servers, network congestion metrics descriptive of network congestion between the client and the candidate servers, and client-server proximity information descriptive of distances between the client and candidate servers.
Claim 8
Dependent Claim
54 words
The method of claim 1, wherein the combination of server metrics includes: server load metrics descriptive of the current load and recent activity on the candidate servers, network congestion metrics descriptive of network congestion between the client and the candidate servers, and client-server proximity information descriptive of distances between the client and candidate servers.
Claim 9
Dependent Claim
25 words
The method of claim 1, wherein the step of deriving quality of service information includes deriving quality of service information from the content type information.
Claim 10
Dependent Claim
31 words
The method of claim 1, wherein the step of deriving quality of service information includes deriving quality of service information from a size of the content requested by the client request.
Claim 11
Dependent Claim
13 words
The method of claim 1, wherein the client request is an HTTP request.
Claim 12
Dependent Claim
23 words
The method of claim 10, wherein deriving content type information comprises: extracting content type information from an HTTP header of the client request.
Claim 13
Dependent Claim
13 words
The method of claim 1, wherein the client request is a TCP request.
Claim 14
Dependent Claim
37 words
The method of claim 1, further comprising: obtaining additional information from the client about the content requested by the client request; and wherein the selecting step further comprises selecting the best-fit server based on the additional information.
Claim 15
Dependent Claim
16 words
The method of claim 13, wherein the additional information comprises information derived from an HTTP GET.
Claim 16
Dependent Claim
22 words
The method of claim 13, wherein the obtaining step comprises obtaining a protocol number and a source port of the client request.
Claim 17
Dependent Claim
22 words
The method of claim 13, wherein the obtaining step comprises obtaining a protocol number and a destination port of the client request.
Claim 18
Dependent Claim
18 words
The method of claim 13, wherein the obtaining step comprises obtaining a filename associated with the content request.
Claim 19
Dependent Claim
19 words
The method of claim 13, wherein the obtaining step comprises obtaining a filename extension associated with the content request.
Claim 20
Dependent Claim
17 words
The method of claim 1, wherein the server metrics are obtained by querying a content server database.
Claim 21
Dependent Claim
20 words
The method of claim 1, wherein the server metrics are obtained by periodically querying servers in the Internet Protocol network.
Claim 22
Dependent Claim
30 words
The method of claim 1, further comprising: obtaining client capability information about the client; and wherein the selecting step further comprises selecting the best-fit server based on the additional information.
Claim 23
Dependent Claim
13 words
The method of claim 1, wherein quality of service requirements comprise a bandwidth.
Claim 24
Dependent Claim
13 words
The method of claim 1, wherein quality of service requirements comprise a delay.
Claim 25
Dependent Claim
15 words
The method of claim 1, wherein quality of service requirements comprise a frame loss ratio.
Claim 26
Dependent Claim
26 words
The method of claim 1, wherein deriving quality of service information comprises deriving quality of service information from the MIME content type of the client request.
Claim 27
Dependent Claim
37 words
The method of claim 1, wherein the expected quality of service provided by a candidate server is descriptive of whether the candidate server is receiving a burst of requests for the content requested by the client request.
Claim 28
Dependent Claim
30 words
The method of claim 1, wherein the expected quality of service provided by a candidate server is descriptive of whether satisfying the client request will result in a short-term flow.
Claim 29
Dependent Claim
34 words
The method of claim 1, wherein the expected quality of service provided by a candidate server is descriptive of whether the content requested by the client request has been frequently requested in the past.
Claim 30
Dependent Claim
31 words
The method of claim 1, wherein the expected quality of service provided by a candidate server is descriptive of whether the content requested by the client request has a high priority.
Claim 31
Dependent Claim
34 words
The method of claim 1, wherein the expected quality of service provided by a candidate server is descriptive of a probability that the content requested by the client request is cached by the server.
Claim 32
Dependent Claim
28 words
The method of claim 1, wherein the expected quality of service provided by a candidate server is descriptive of whether the candidate server has responded to recent queries.
Claim 33
Dependent Claim
49 words
The method of claim 1, wherein the expected quality of service provided by a candidate server is descriptive of whether the candidate server recently responded to a request for the content requested by the client request with an indication that the content is not served by the candidate server.
Claim 34
Dependent Claim
25 words
The method of claim 1, wherein the expected quality of service provided by a candidate server is descriptive of whether the candidate server is reachable.
Claim 35
Dependent Claim
30 words
The method of claim 1, wherein the expected quality of service provided by a candidate server is descriptive of whether the candidate server's cache resources are below a threshold level.
Claim 36
Dependent Claim
31 words
The method of claim 1, wherein the expected quality of service provided by a candidate server is descriptive of whether the candidate server's TCP buffer resources are below a threshold level.
Claim 37
Dependent Claim
30 words
The method of claim 1, wherein the expected quality of service provided by a candidate server is descriptive of whether the candidate server's port bandwidth is below a threshold level.
Claim 38
Dependent Claim
62 words
The method of claim 1, wherein selecting as the best-fit server comprises: determining whether the client request requires persistent connectivity with a particular candidate server; if the client request requires persistent connectivity with a particular server, identifying a candidate server with which the client is persistently connected for service of the client request; selecting the identified candidate server as the best-fit server.
Claim 39
Dependent Claim
20 words
The method of claim 1, further comprising determining whether an active path exists between the client and the best-fit server.
Claim 40
Dependent Claim
20 words
The method of claim 38, wherein determining whether an active path exists comprises sending a PING packet to the client.
Claim 41
Dependent Claim
21 words
The method of claim 38, wherein determining whether an active path exists comprises performing a Border Gateway Protocol route table lookup.
Claim 42
Dependent Claim
19 words
The method of claim 38, wherein the location of the client comprises a continent in which the client resides.
Claim 43
Dependent Claim
20 words
The method of claim 41, wherein the locations of the plurality of servers are continents in which the servers reside.
Claim 44
Dependent Claim
53 words
The method of claim 38, wherein identifying servers that are in the same location as the client comprises: identifying administrative authorities associated with the client; identifying, for each of the plurality of servers, administrative authorities associated with the server; and identifying servers associated with an administrative authority that is associated with the client.
Claim 45
Dependent Claim
13 words
The method of claim 43, wherein the administrative authorities are Internet Service Providers.
Claim 46
Independent Claim
206 words
A system for directing a flow between a client and a best-fit server, the system comprising: a plurality of servers; a flow switch coupled to the plurality of servers by an Internet Protocol network through one or more communication links, wherein the flow switch comprises: means for receiving a client request for content via the Internet Protocol network; means for deriving, from the client request, content type information descriptive of the type of content requested by the content request; means for deriving, from the client request, quality of service information descriptive of quality of service requirements of the content requested by the client request; means for selecting as the best-fit server a server from among a set of candidate servers serving the content requested by the client request, based on the content type information, the quality of service information, and a combination of server metrics descriptive of expected qualities of service provided by the candidate servers when serving the requested content; means for subsequently forwarding to the best-fit server transmissions originating from the client which are associated with the client request for content; and means for subsequently forwarding to the client transmissions originating from the best-fit server which are associated with the client request for content.
Claim 47
Independent Claim
206 words
A system for directing a flow between a client and a best-fit server, the system comprising: a plurality of servers; a flow switch coupled to the plurality of servers by an Internet Protocol network through one or more communication links, wherein the flow switch comprises: means for receiving a client request for content via the Internet Protocol network; means for deriving, from the client request, content type information descriptive of the type of content requested by the content request; means for deriving, from the client request, quality of service information descriptive of quality of service requirements of the content requested by the client request; means for selecting as the best-fit server a server from among a set of candidate servers serving the content requested by the client request, based on the content type information, the quality of service information, and a combination of server metrics descriptive of expected qualities of service provided by the candidate servers when serving the requested content; means for subsequently forwarding to the best-fit server transmissions originating from the client which are associated with the client request for content; and means for subsequently forwarding to the client transmissions originating from the best-fit server which are associated with the client request for content.
Claim 48
Dependent Claim
12 words
The system of claim 45, wherein: the candidate servers comprise HTTP servers.
Claim 49
Dependent Claim
170 words
A flow switch in an Internet Protocol network, comprising: means for receiving a client request for content via the Internet Protocol network; means for deriving, from the client request, content type information descriptive of the type of content requested by the content request; means for deriving, from the client request, quality of service information descriptive of quality of service requirements of the content requested by the client request; means for selecting as the best-fit server a server from among a set of candidate servers serving the content requested by the client request, based on the content type information, the quality of service information, and at least one server metric descriptive of expected qualities of service provided by the candidate servers when serving the requested content; means for subsequently forwarding to the best-fit server transmissions originating from the client which are associated with the client request for content; and means for subsequently forwarding to the client transmissions originating from the best-fit server which are associated with the client request for content.
Claim 50
Dependent Claim
170 words
A flow switch in an Internet Protocol network, comprising: means for receiving a client request for content via the Internet Protocol network; means for deriving, from the client request, content type information descriptive of the type of content requested by the content request; means for deriving, from the client request, quality of service information descriptive of quality of service requirements of the content requested by the client request; means for selecting as the best-fit server a server from among a set of candidate servers serving the content requested by the client request, based on the content type information, the quality of service information, and at least one server metric descriptive of expected qualities of service provided by the candidate servers when serving the requested content; means for subsequently forwarding to the best-fit server transmissions originating from the client which are associated with the client request for content; and means for subsequently forwarding to the client transmissions originating from the best-fit server which are associated with the client request for content.