IP Library Granted Patent US 8,489,720
Granted Patent B1
US 8,489,720 · App. 10/816,512 · Granted Jul 16, 2013

Cost-aware, bandwidth management systems adaptive to network conditions

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 8,489,720
App. No.
10/816,512
Granted
Jul 16, 2013
Kind
B1
Abstract

Methods, apparatuses, and systems directed to cost-aware bandwidth management schemes that are adaptive to monitored network or application performance attributes. In one embodiment, the present invention supports bandwidth management systems that adapt to network conditions, while managing tradeoffs between bandwidth costs and application performance. One implementation of the present invention tracks bandwidth usage over an applicable billing period and applies a statistical model to allow for bursting to address increased network loading conditions that degrade network or application performance. One implementation allows for bursting at selected time periods based on computations minimizing cost relative to an applicable billing model. One implementation of the present invention is also application-aware, monitoring network application performance and increasing bandwidth allocations in response to degradations in the performance of selected applications.

Claims (70)

1. A method in a computer network comprising an access link, wherein monetary charges incurred for utilization of the access link are based on a billing model, the method comprising:

applying an aggregate bandwidth limit to data flows traversing the access link,

monitoring data throughput of the access link relative to the billing model, wherein the billing model defines the monetary charges incurred based on the data throughput;

modulating the aggregate bandwidth limit to maximize performance of a network application against a desired cost level of the access link based on the billing model and the data throughput, wherein the modulating comprises:

determining an incremental cost of raising the aggregate bandwidth limit, the incremental cost defined by a pricing model included in the billing model; and

based on the incremental cost, raising the aggregate bandwidth limit; and

monitoring the performance of the network application, wherein the network application transfers packets between a first set of hosts and a second set of hosts over the computer network, including monitoring of response times between at least one host in the first set and at least one host in the second set, wherein the monitoring of the response times includes:

recording, at a network device disposed between the first set of hosts and the second set of hosts, arrival times of the packets associated with the network application; and

computing, based on the arrival times of the packets, at least one parameter characterizing a response time between at least one host in the first set and at least one host in the second set.

2. The method of claim 1 , further comprising:

computing a cost for the access link based on the data throughput and the billing model, wherein the modulating step is conditioned on the performance of the network application and the cost computed for the access link.

3. The method of claim 1 , wherein the monitoring the performance of the network application comprises monitoring a packet exchange time (PET) observed over the computer network.

4. The method of claim 1 , wherein the monitoring the performance of the network application comprises measuring network delay attributable to the computer network.

5. The method of claim 1 , wherein the modulating the aggregate bandwidth limit comprises modulating a class bandwidth limit applied to data flows matching a selected traffic class.

6. A method in a computer network comprising an access link, wherein monetary charges incurred for utilization of the access link are based on a billing model, the method comprising:

applying an aggregate bandwidth limit to data flows traversing the access link;

monitoring usage of the access link relative to the billing model;

modulating the aggregate bandwidth limit to maximize performance of a network application and minimize a cost of the access link based on the billing model, wherein the modulating comprises:

determining an incremental cost of raising the aggregate bandwidth limit, the incremental cost defined by a pricing model included in the billing model; and

based on the incremental cost, raising the aggregate bandwidth limit; and

monitoring the performance of the network application, wherein the network application transfers packets between a first set of hosts and a second set of hosts over the computer network, including monitoring of response times between at least one host in the first set and at least one host in the second set, wherein the monitoring of the response times includes:

recording, at a network device disposed between the first set of hosts and the second set of hosts, arrival times of the packets associated with the network application; and

computing, based on the arrival times of the packets, at least one parameter characterizing a response time between at least one host in the first set and at least one host in the second set.

7. The method of claim 6 , further comprising:

computing a cost for the access link based on the usage of the access link and the billing model, wherein the modulating step is conditioned on the performance of the network application and the cost computed for the access link.

8. The method of claim 6 , wherein the monitoring the performance of the network application comprises monitoring a packet exchange time (PET) observed over the computer network.

9. The method of claim 6 , wherein the monitoring the performance of the network application comprises measuring network delay attributable to the computer network.

10. The method of claim 6 , wherein the modulating the aggregate bandwidth limit comprises modulating a class bandwidth limit applied to data flows matching a selected traffic class.

11. A method in a computer network comprising an access link, wherein monetary charges incurred for utilization of the access link are based on a billing model, the method comprising:

applying a default bandwidth limit to data flows traversing the access link, wherein the default bandwidth limit is less than an available capacity of the access link;

monitoring usage of the access link relative to the billing model to compute an access link cost;

monitoring a performance attribute of the access link, including:

monitoring performance of a network application, wherein the network application transfers packets between a first set of hosts and a second set of hosts over the computer network, further including monitoring of response times between at least one host in the first set and at least one host in the second set, wherein the monitoring of the response times includes:

recording, at a network device disposed between the first set of hosts and the second set of hosts, arrival times of the packets associated with the network application; and

computing, based on the arrival times of the packets, at least one parameter characterizing a response time between at least one host in the first set and at least one host in the second set; and

determining whether to apply a second bandwidth limit to data flows traversing the access link based on the access link cost and the performance attribute, wherein the second bandwidth limit is greater than the default bandwidth limit, and wherein determining whether to apply the second bandwidth limit comprises:

determining an incremental cost of applying the second bandwidth limit, the incremental cost defined by a pricing model included in the billing model; and

based on the incremental cost, applying the second bandwidth limit.

12. The method of claim 11 , wherein the monitoring of the performance attribute of the access link comprises monitoring a packet exchange time (PET) observed over the computer network.

13. The method of claim 11 , wherein the monitoring of the performance attribute comprises measuring network delay attributable to the computer network.

14. The method of claim 11 , wherein the second bandwidth limit is the available capacity of the access link.

15. The method of claim 11 wherein usage of additional bandwidth in excess of the first bandwidth limit is restricted to data flows corresponding to selected network applications.

16. An apparatus facilitating management of bandwidth utilization costs, comprising:

a packet processor; and a memory coupled to the packet processor to:

detect data flows in network traffic traversing a communications path, the data flows each comprising at least one packet; and

parse at least one packet associated with a data flow into a flow specification;

a traffic classification database operative to:

store at least one traffic class including a traffic class identifier and at least one attribute defining the traffic class; and

compare attributes stored in association with traffic class identifiers to attributes of a data flow to match a traffic class that corresponds to the data flow;

an application performance monitoring module to:

monitor the performance of at least one traffic class by maintaining at least one measurement parameter characterizing transfer of packets between a first set of hosts and a second set of hosts over the computer network;

a traffic policy module to:

apply an aggregate bandwidth limit to data flows traversing an access link; and

wherein the apparatus is to

monitor bandwidth utilization of the access link relative to a billing model associated with the access link;

compute a cost level based on the billing model and the monitored bandwidth utilization;

modulate the aggregate bandwidth limit to maximize network application performance against a desired cost level of the access link based on the billing model and the monitored data throughput, wherein modulating the aggregate bandwidth limit comprises:

determining an incremental cost of raising the aggregate bandwidth limit, the incremental cost defined by a pricing model included in the billing model; and

based on the incremental cost, raising the aggregate bandwidth limit; and

monitor performance of a network application, wherein the network application transfers packets between the first set of hosts and the second set of hosts over the computer network, including monitoring of response times between at least one host in the first set and at least one host in the second set, wherein the monitoring of the response times includes:

recording arrival times of the packets associated with the network application; and

computing, based on the arrival times of the packets, at least one parameter characterizing a response time between at least one host in the first set and at least one host in the second set.

17. The apparatus of claim 16 , wherein the traffic classification database is further to store a default aggregate bandwidth limit in association with at least one traffic class; wherein the traffic policy module is to apply the default aggregate bandwidth limit to data flows corresponding to a given traffic class with a corresponding service level in the traffic classification database; and wherein the apparatus is to increase the aggregate bandwidth limits applied to data flows corresponding to a given traffic class in response to the monitored performance of the given traffic class.

18. The apparatus of claim 16 wherein the packet processor is further to:

parse at least one packet associated with the flow into a flow specification, wherein the flow specification contains at least one specification selected from: a protocol family designation, a direction of packet flow designation, a protocol type designation, a pair of hosts, a pair of ports, a pointer to a MIME type a pointer to an application-specific attribute.

19. The apparatus of claim 18 wherein the traffic classification database is to:

match the flow specification to a plurality of traffic classes, each of the traffic classes defined by one or more matching attributes; and responsive to finding a traffic class in the plurality of traffic classes matching the flow specification, associate the flow specification with the traffic class.

20. The apparatus of claim 16 further comprising an embedded runtime environment to execute at least one script module, the at least one script module to:

monitor bandwidth utilization of the access link relative to the billing model; and

modulate the aggregate bandwidth limit to maximize network application performance against the desired cost level of the access link.

Assignments (12)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2019
From: SYMANTEC CORPORATION
To: CA, INC.
Reel/Frame 051144/0918 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 27, 2016
From: BLUE COAT SYSTEMS, INC.
To: SYMANTEC CORPORATION
Reel/Frame 039851/0044 →
RELEASE OF SECURITY INTEREST Recorded Aug 1, 2016
From: JEFFERIES FINANCE LLC
To: BLUE COAT SYSTEMS, INC.
Reel/Frame 039516/0929 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 30740/0181 Recorded May 29, 2015
From: JEFFERIES FINANCE LLC
To: BLUE COAT SYSTEMS, INC.
Reel/Frame 035797/0280 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 27727/0144 Recorded May 29, 2015
From: JEFFERIES FINANCE LLC
To: BLUE COAT SYSTEMS, INC.
Reel/Frame 035798/0006 →
SECURITY INTEREST Recorded May 22, 2015
From: BLUE COAT SYSTEMS, INC.
To: JEFFERIES FINANCE LLC, AS THE COLLATERAL AGENT
Reel/Frame 035751/0348 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jul 3, 2013
From: BLUE COAT SYSTEMS, INC.
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 030740/0181 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL RECORDED AT R/F 027727/0178 Recorded Oct 16, 2012
From: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
To: BLUE COAT SYSTEMS, INC.
Reel/Frame 029140/0170 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Feb 16, 2012
From: BLUE COAT SYSTEMS, INC.
To: JEFFERIES FINANCE LLC
Reel/Frame 027727/0144 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Feb 16, 2012
From: BLUE COAT SYSTEMS, INC.
To: JEFFERIES FINANCE LLC
Reel/Frame 027727/0178 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 1, 2011
From: PACKETEER, INC.
To: BLUE COAT SYSTEMS, INC.
Reel/Frame 027307/0603 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 31, 2004
From: MORFORD, MICHAEL ROBERT; PURVY, ROBERT E.
To: PACKETEER, INC.
Reel/Frame 015182/0014 →