IP Library Granted Patent US 7,602,808
Granted Patent B2
US 7,602,808 · App. 12/134,395 · Granted Oct 13, 2009

Method and system for network management providing access to application bandwidth usage calculations

View Patent ↗
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 7,602,808
App. No.
12/134,395
Granted
Oct 13, 2009
Kind
B2
Abstract

A method, system, apparatus, and computer program product is presented for management of a distributed data processing system. The network management framework is able to monitor multiple sources of network packets on various subnets within the distributed data processing system; distributed packet snoopers are deployed from a packet usage manager to monitor the multiple sources of network packets. The system administrator can request packet filtering based upon selected active users or active applications. A bandwidth history database is compiled from bandwidth usage data associated with multiple entities within the data processing system, including users, applications, and/or endpoints within the data processing system. In response to a requested action within the data processing system, bandwidth usage for the requested action can be predicted with reference to the bandwidth history database. The actual and predicted bandwidth usage of requested actions can be displayed to the system administrator in real time.

Claims (80)

1. An apparatus for managing bandwidth within a distributed data processing system, the apparatus comprising:

means for establishing a bandwidth history comprising bandwidth usage data associated with multiple entities within the distributed data processing system, wherein an entity within the distributed data processing system is a user or an application;

means for predicting bandwidth usage by the requested action in response to a requested action within the distributed data processing system;

means for selecting, by an administrative user, a user to be monitored for bandwidth usage; means for generating a packet filter object containing a packet filtering parameter that identifies the selected user;

means for dynamically deploying, in response to a request by the administrative user, packet snooper objects in association with the packet filter object to a set of devices throughout the distributed data processing system;

means for executing the dynamically deployed packet snooper objects at the set of devices to monitor bandwidth usage by the selected user with respect to a given device or a given subnet; and

means for receiving bandwidth usage data from the dynamically deployed packet snooper objects.

2. The apparatus of claim 1 further comprising:

means for snooping network packets from multiple sources within the distributed data processing system;

means for filtering the network packets against multiple filter parameters, wherein a filter parameter comprises a user identifier, an application identifier, or an endpoint identifier;

means for reporting packet snoop data to be associated with the requesting entity;

means for computing bandwidth usage data from the packet snoop data; and

means for the storing bandwidth usage data as the bandwidth history.

3. The apparatus of claim 1 further comprising:

means for inserting a packet filtering parameter in the packet filter object that specifies a packet type to be snooped.

4. The apparatus of claim 1 further comprising:

means for inserting a packet filtering parameter in the packet filter object that specifies a packet size to be snooped.

5. The apparatus of claim 1 further comprising:

means for displaying the predicted bandwidth usage for the requested action to the system administrator.

6. The apparatus of claim 1 further comprising:

means for querying the bandwidth history by the application that generated the requested action.

7. An apparatus for managing bandwidth within a distributed data processing system, the apparatus comprising:

means for establishing a bandwidth history comprising bandwidth usage data associated with multiple entities within the distributed data processing system, wherein an entity within the distributed data processing system is a user or an application;

means for predicting bandwidth usage by the requested action in response to a requested action within the distributed data processing system;

means for selecting, by an administrative user, an application to be monitored for bandwidth usage;

means for generating a packet filter object containing a packet filtering parameter that identifies the selected application;

means for dynamically deploying, in response to a request by the administrative user, packet snooper objects in association with the packet filter object to a set of devices throughout the distributed data processing system;

means for executing the dynamically deployed packet snooper objects at the set of devices to monitor bandwidth usage by the selected application with respect to a given device or a given subnet; and

means for receiving bandwidth usage data from the dynamically deployed packet snooper objects.

8. The apparatus of claim 7 further comprising:

means for inserting a packet filtering parameter in the packet filter object that specifies a packet type to be snooped.

9. The apparatus of claim 7 further comprising:

means for inserting a packet filtering parameter in the packet filter object that specifies a packet size to be snooped.

10. An apparatus for managing bandwidth within a distributed data processing system, the apparatus comprising:

means for establishing a bandwidth history comprising bandwidth usage data associated with multiple entities within the distributed data processing system, wherein an entity within the distributed data processing system is a user or an application;

means for predicting bandwidth usage by the requested action in response to a requested action within the distributed data processing system;

means for deriving a set of logical routes from a network topology mapping, wherein each logical route is a series of endpoints that comprise an endpoint-to-endpoint route for completing the requested action;

means for dynamically deploying, in response to a request by the administrative user, packet snooper objects in association with a packet filter object along the set of logical routes throughout the distributed data processing system, wherein the packet filter object specifies packet types or packet sizes to be snooped;

means for executing the dynamically deployed packet snooper objects at devices along the set of logical routes to monitor bandwidth usage; and

means for receiving bandwidth usage data from the dynamically deployed packet snooper objects.

11. A computer program product stored in a computer-readable storage-type medium for use in a distributed data processing system for managing bandwidth, the computer program product comprising:

instructions for establishing a bandwidth history comprising bandwidth usage data associated with multiple entities within the distributed data processing system, wherein an entity within the distributed data processing system is a user or an application;

instructions for predicting bandwidth usage by the requested action in response to a requested action within the distributed data processing system;

instructions for selecting, by an administrative user, an application to be monitored for bandwidth usage;

instructions for generating a packet filter object containing a packet filtering parameter that identifies the selected application;

instructions for dynamically deploying, in response to a request by the administrative user, packet snooper objects in association with the packet filter object to a set of devices throughout the distributed data processing system;

instructions for executing the dynamically deployed packet snooper objects at the set of devices to monitor bandwidth usage by the selected application with respect to a given device or a given subnet; and

instructions for receiving bandwidth usage data from the dynamically deployed packet snooper objects.

12. The computer program product of claim 11 further comprising:

instructions for snooping network packets from multiple sources within the distributed data processing system;

instructions for filtering the network packets against multiple filter parameters, wherein a filter parameter comprises a user identifier, an application identifier, or an endpoint identifier;

instructions for reporting packet snoop data to be associated with the requesting entity;

instructions for computing bandwidth usage data from the packet snoop data; and

instructions for the storing bandwidth usage data as the bandwidth history.

13. The computer program product of claim 11 further comprising:

instructions for inserting a packet filtering parameter in the packet filter object that specifies a packet type to be snooped.

14. The computer program product of claim 11 further comprising:

instructions for inserting a packet filtering parameter in the packet filter object that specifies a packet size to be snooped.

15. The computer program product of claim 11 further comprising:

instructions for displaying the predicted bandwidth usage for the requested action to the system administrator.

16. The computer program product of claim 11 further comprising:

instructions for querying the bandwidth history by the application that generated the requested action.

17. A computer program product stored in a computer-readable storage-type medium for use in a distributed data processing system for managing bandwidth, the computer program product comprising:

instructions for establishing a bandwidth history comprising bandwidth usage data associated with multiple entities within the distributed data processing system, wherein an entity within the distributed data processing system is a user or an application;

instructions for predicting bandwidth usage by the requested action in response to a requested action within the distributed data processing system;

instructions for selecting, by an administrative user, a user to be monitored for bandwidth usage; instructions for generating a packet filter object containing a packet filtering parameter that identifies the selected user;

instructions for dynamically deploying, in response to a request by the administrative user, packet snooper objects in association with the packet filter object to a set of devices throughout the distributed data processing system;

instructions for executing the dynamically deployed packet snooper objects at the set of devices to monitor bandwidth usage by the selected user with respect to a given device or a given subnet; and

instructions for receiving bandwidth usage data from the dynamically deployed packet snooper objects.

18. The computer program product of claim 17 further comprising:

instructions for inserting a packet filtering parameter in the packet filter object that specifies a packet type to be snooped.

19. The computer program product of claim 17 further comprising:

instructions for inserting a packet filtering parameter in the packet filter object that specifies a packet size to be snooped.

20. A computer program product stored in a computer-readable storage-type medium for use in a distributed data processing system for managing bandwidth, the computer program product comprising:

instructions for establishing a bandwidth history comprising bandwidth usage data associated with multiple entities within the distributed data processing system, wherein an entity within the distributed data processing system is a user or an application;

instructions for predicting bandwidth usage by the requested action in response to a requested action within the distributed data processing system;

instructions for deriving a set of logical routes from a network topology mapping, wherein each logical route is a series of endpoints that comprise an endpoint-to-endpoint route for completing the requested action;

instructions for dynamically deploying, in response to a request by the administrative user, packet snooper objects in association with a packet filter object along the set of logical routes throughout the distributed data processing system, wherein the packet filter object specifies packet types or packet sizes to be snooped;

instructions for executing the dynamically deployed packet snooper objects at devices along the set of logical routes to monitor bandwidth usage; and

instructions for receiving bandwidth usage data from the dynamically deployed packet snooper objects.

Assignments (2)
CHANGE OF NAME Recorded Nov 7, 2023
From: CITRIX SYSTEMS INTERNATIONAL GMBH
To: CLOUD SOFTWARE GROUP SWITZERLAND GMBH
Reel/Frame 065478/0561 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2013
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: CITRIX SYSTEMS INTERNATIONAL GMBH
Reel/Frame 029601/0753 →