US 7,321,556 B1
Application prioritization policy engine
Pankaj Parekh, Fremont, Calif. (US); Sandeep Gupta, Delhi (India); and Vijay Mamtani, New Delhi (India)
Assigned to iPolicy Networks, Inc, Fremont, Calif. (US)
Filed on Oct. 28, 2002, as Appl. No. 10/281,809.
Int. Cl. H04J 3/14 (2006.01)
U.S. Cl. 370—232 12 Claims
OG exemplary drawing
 
1. A method of regulating flow of one or more data packets in a computer network, the computer network comprising at least one client and at least one server, each of the clients establishing one or more session(s) with the servers to access one or more applications from the servers, the servers providing access to the applications by exchanging the data packets with the clients, the servers being hosted by an application service provider, the application service provider offering one or more service level agreements to the clients, the service level agreements defining priorities for the data packets, the method comprising the steps of:
a. determining whether a service level agreement violation has taken place;
b. if the service level agreement violation has taken place and the time elapsed after the service level agreement violation has taken place is less than a predefined limit, then controlling the flow of the data packets of a predefined priority, wherein controlling the flow of the data packets comprises, at least one of:
i. reducing the window size of the servers;
ii. delaying acknowledgement packets for the data packets sent by the servers, the acknowledgement packets being sent by the clients; and
c. resetting a current session when the number of service level agreement violations exceeds a first predefined limit and number of ongoing sessions exceeds a second predefined limit.