IP Library Patent Application 11285431
Patent Application
App. No. 11/285,431

System, method, and computer program product for throttling client traffic

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
11/285,431
Abstract

A system for throttling data traffic on a network to a client includes an application node and a throttle manager. The application node receives requests from the client via the network. The throttle manager is in communication with the application node. The throttle manager is configured to track a parameter that is based on a number of active requests associated with a user identifier associated with the client. The throttle manager is configured to determine whether to restrict responses to the requests responsive to a relationship of the parameter to a threshold.

Claims (64)

1 . A method of throttling data traffic to a client comprising:

receiving notification of a client request associated with a user identifier;

incrementing a recorded number of active requests for the user identifier;

determining, responsive to the incremented number of active requests, whether a parameter based on the incremented recorded number of active requests is above a threshold; and

determining whether to restrict data traffic to the client responsive to a relationship of the parameter to the threshold.

2 . The method of claim 1 , further comprising sending a message to direct that the user identifier be added to a list of user identifiers to be throttled responsive to the parameter being above the threshold.

3 . The method of claim 1 , further comprising determining whether the user identifier is on a list of user identifiers to be throttled in response to the parameter being below the threshold.

4 . The method of claim 3 , further comprising sending a message to remove the user identifier from the list in response to the user identifier being on the list.

5 . The method of claim 3 , further comprising receiving an indication that a response is being sent to the client in response to the user identifier not being on the list.

6 . The method of claim 5 , further comprising decrementing the recorded number of active requests in response to receipt of the indication.

7 . The method of claim 1 , wherein the parameter is at least one of a number of active requests and a number of active requests per a given unit of time.

8 . The method of claim 8 , further comprising decrementing the recorded number of active requests in response to receipt of a message indicating that data traffic to the client has been restricted.

9 . A computer program product for throttling data traffic to a client, the computer program product comprising at least one computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions comprising:

a first executable portion capable of receiving notification of a client request from a user identifier;

a second executable portion capable of incrementing a recorded number of active requests for the user identifier;

a third executable portion capable of determining, responsive to the incremented number of active requests, whether a parameter based on the incremented recorded number of active requests is above a threshold; and

a fourth executable portion capable of determining whether to restrict data traffic to the client responsive to a relationship of the parameter to the threshold.

10 . The computer program product of claim 9 , further comprising a fifth executable portion capable of sending a message to direct the user identifier to be added to a list of user identifiers to be throttled responsive to the parameter being above the threshold.

11 . The computer program product of claim 9 , further comprising a fifth executable portion capable of determining whether the user identifier is on a list of user identifiers to be throttled in response to the parameter being below the threshold.

12 . The computer program product of claim 11 , further comprising a sixth executable portion capable of sending a message to remove the user identifier from the list in response to the user identifier being on the list.

13 . The computer program product of claim 11 , further comprising a sixth executable portion capable of receiving an indication that a response is being sent to the client in response to the user identifier not being on the list.

14 . The computer program product of claim 13 , further comprising a seventh executable portion capable of decrementing the recorded number of active requests in response to receipt of the indication.

15 . The computer program product of claim 9 , wherein the parameter is at least one of a number of active requests and a number of active requests per a given unit of time.

16 . A system for throttling data traffic on a network to a client, the system comprising:

an application node receiving requests from the client via the network; and

a throttle manager in communication with the application node, the throttle manager being configured to track a parameter that is based on a number of active requests associated with a user identifier associated with the client,

wherein the throttle manager is configured to determine whether to restrict responses to the requests responsive to a relationship of the parameter to a threshold.

17 . The system of claim 16 , wherein the throttle manager is configured to direct the application node to add the user identifier to a list of user identifiers to be throttled responsive to the parameter being above the threshold.

18 . The system of claim 17 , wherein the application node is configured to send an error message to the client in response to the user identifier being on the list.

19 . The system of claim 16 , wherein the throttle manager is configured to determine whether the user identifier is on a list of user identifiers to be throttled in response to the parameter being below the threshold.

20 . The system of claim 19 , wherein the throttle manager is configured to send a message to the application node directing the application node to remove the user identifier from the list in response to the user identifier being on the list.

21 . The system of claim 19 , wherein the application node is configured to send an indication to the throttle manager indicating that a response is being sent to the client in response to the user identifier not being on the list.

22 . The system of claim 21 , wherein the throttle manager is configured to decrement the recorded number of active requests in response to the indication from the application node.

23 . The system of claim 16 , wherein the parameter is at least one of a number of active requests and a number of active requests per a given unit of time.

24 . A method of throttling data traffic to a client comprising:

receiving a client request associated with a user identifier;

relaying the client request to a throttle manager configured to track a parameter that is based on a number of active requests received from the user identifier;

adding the user identifier to a list of user identifiers to be throttled in response to a first message from the throttle manager;

removing the user identifier from the list in response to a second message from the throttle manager;

providing indication to the throttle manager that a response is sent to the client in response to the user identifier not being on the list; and

restricting data traffic to the client in response to the user identifier being on the list.

25 . The method of claim 24 , further comprising sending an error message to the client in response to the user identifier being on the list.

26 . A computer program product for throttling data traffic to a client, the computer program product comprising at least one computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions comprising:

a first executable portion capable of receiving a client request associated with a user identifier;

a second executable portion capable of relaying the client request to a throttle manager configured to track a parameter that is based on a number of active requests received from the user identifier;

a third executable portion capable of adding the user identifier to a list of user identifiers to be throttled in response to a first message from the throttle manager;

a fourth executable portion capable of removing the user identifier from the list in response to a second message from the throttle manager;

a fifth executable portion capable of providing indication to the throttle manager that a response is sent to the client in response to the user identifier not being on the list; and

a sixth executable portion capable of restricting data traffic to the client in response to the user identifier being on the list.

27 . The computer program product of claim 26 , further comprising a seventh executable portion capable of sending an error message to the client in response to the user identifier being on the list.

28 . A method of throttling data traffic to a client comprising:

receiving notification of a client request associated with a application resource identifier;

incrementing a recorded number of active requests for the application resource identifier;

determining, responsive to the incremented number of active requests, whether a parameter based on the incremented recorded number of active requests is above a threshold; and

determining whether to restrict data traffic to the client responsive to a relationship of the parameter to the threshold.

29 . The method of claim 28 , further comprising sending a message to direct that the application resource identifier be added to a list of feature addresses to be throttled responsive to the parameter being above the threshold.

30 . The method of claim 28 , wherein the parameter is at least one of a number of active requests and a number of active requests per a given unit of time.

31 . A computer program product for throttling data traffic to a client, the computer program product comprising at least one computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions comprising:

a first executable portion capable of receiving notification of a client request from a application resource identifier;

a second executable portion capable of incrementing a recorded number of active requests for the application resource identifier;

a third executable portion capable of determining, responsive to the incremented number of active requests, whether a parameter based on the incremented recorded number of active requests is above a threshold; and

a fourth executable portion capable of determining whether to restrict data traffic to the client responsive to a relationship of the parameter to the threshold.

32 . The computer program product of claim 31 , further comprising a fifth executable portion capable of sending a message to direct the application resource identifier to be added to a list of application resource identifiers to be throttled responsive to the parameter being above the threshold.

33 . The computer program product of claim 31 , wherein the parameter is at least one of a number of active requests and a number of active requests per a given unit of time.

Assignments (3)
AMENDMENT OF SECURITY INTEREST IN PATENTS Recorded Feb 19, 2013
From: DEUTSCHE BANK AG NEW YORK BRANCH
To: BANK OF AMERICA, N.A.
Reel/Frame 029834/0757 →
PATENT SECURITY AGREEMENT Recorded Oct 13, 2008
From: SABRE, INC.
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS ADMINISTRATIVE AGENT
Reel/Frame 021669/0742 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 22, 2005
From: BINDAL, NITINKUMAR S.
To: SABRE INC.
Reel/Frame 017281/0664 →