Method and apparatus for directing a flow of packets based on request and server attributes
1 Assignment
0 Petitions
Accused Products
Abstract
A content-aware flow switch intercepts a client content request in an IP network, and transparently directs the content request to a best-fit server. The best-fit server is chosen based on the type of content requested, the quality of service requirements implied by the content request, the degree of load on available servers, network congestion information, and the proximity of the client to available servers. The flow switch detects client-server flows based on the arrival of TCP SYNs and/or HTTP GETs from the client. The flow switch implicitly deduces the quality of service requirements of a flow based on the content of the flow. The flow switch also provides the functionality of multiple physical web servers on a single web server in a way that is transparent to the client, through the use of virtual web hosts and flow pipes.
110 Citations
69 Claims
-
1-49. -49. (canceled)
-
50. A content aware flow switch interconnecting a plurality of web servers and at least one client side device, comprising:
-
a client side interface operable to connect a plurality of client computing devices for receiving client requests for content and delivering network services in the form of media content responsive to the client requests;
a content server database operable to store server metrics and content switching criteria, and further operable to derive content information from the client request, the content information indicative of criteria for processing the client request a flow admission controller for identifying, from among a plurality of servers, a set of potential servers adapted to service the client request, the set of potential servers each having a plurality of server metrics indicative of server resources; and
a web flow redirector operable to compute, based on analyzing the derived content information and the content switching criteria, a best-fit server from the set of potential servers, the best fit server having a high correspondence between the plurality of server metrics and the criteria for processing the client request. - View Dependent Claims (51, 52, 53, 54)
-
-
55. A web server responsive to a content aware flow switch for delivering network content responsive to client requests comprising:
-
an interface to a content aware flow switch for receiving a client request for network services, the client request for at least one of a particular type of content; and
a content resource, the content resource responsive to derived content information from the client request, the content information indicative of criteria for processing the client request, the interface invokable by the content aware flow switch based on identifying, from among a plurality of servers, a set of potential servers adapted to service the client request, the set of potential servers each having a plurality of server metrics indicative of server resources, the content aware flow switch further operable to compute, based on analyzing the derived content information and the content switching criteria, a best-fit server from the set of potential servers, the best fit server having a high correspondence between the plurality of server metrics and the criteria for processing the client request. - View Dependent Claims (56, 57, 58, 59)
-
-
60. In a computer network operable for providing network services, a client side router coupled to end station computing devices operable to serve a plurality of end user comprising:
-
an interface to a content aware flow switch operable as a front end to a plurality of web servers; and
an interface to at least one user operable to receive a client request for network services, the client request for at least one of a particular type of content, the client request having derivable content information indicative of content switching criteria for processing the client request, the client side router responsive to the content aware flow switch for identifying, from among a plurality of servers, a set of potential servers adapted to service the client request, the set of potential servers each having a plurality of server metrics indicative of server resources, the content aware flow switch further operable to compute, based on analyzing the derived content information and the content switching criteria, a best-fit server from the set of potential servers, the best fit server having a high correspondence between the plurality of server metrics and the criteria for processing the client request. - View Dependent Claims (61, 62, 63, 64)
-
-
65. In a network data communications device, a method for identifying a server to service a network request comprising:
-
receiving a client request for network services, the client request for at least one of a particular type of content;
deriving content information from the client request, the content information indicative of content switching criteria for processing the client request;
identifying, from among a plurality of servers, a set of potential servers adapted to service the client request, the set of potential servers each having a plurality of server metrics indicative of server resources;
computing, based on analyzing the derived content information and the content switching criteria, a best-fit server from the set of potential servers, the best fit server having a high correspondence between the plurality of server metrics and the criteria for processing the client request;
selecting at least one of one of a flow pipe and a virtual connection VC pipe for a particular packet; and
assigning packets corresponding to a particular criteria to a packet flow based on a high correspondence between the plurality of server metrics and the content switching criteria, the packets assigned by the content aware flow switch, the assigning to a packet flow further comprising;
selectively apportioning the data flow for response traffic, the response traffic emanating from a web server and directed to an end user responsive to a client request;
determining whether to admit a flow to a particular flow via the flow switch based on flow content information based on transport and session level routing information derived from data traffic packets; and
forwarding assigned packets on a forwarding path based on flow content information derived from source address, destination address, transport layer protocol, port number QOS designation, the packets corresponding to a particular request further comprising a packet flow, the packet flows being assigned to VC pipes based on matching characteristics in the content information of respective flows through the VC pipe. - View Dependent Claims (66, 67, 68, 69)
-
Specification