IP Library Granted Patent US 9,755,984
Granted Patent B1
US 9,755,984 · App. 12/250,684 · Granted Sep 5, 2017

Aggregate network resource utilization control scheme

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 9,755,984
App. No.
12/250,684
Granted
Sep 5, 2017
Kind
B1
Abstract

Methods, apparatuses and systems directed to an aggregate bandwidth utilization control scheme including fair share bandwidth allocation and dynamic allocation of bandwidth in response to detected traffic utilization. In one implementation, the present invention includes a weighted, fair share aggregate bandwidth allocation mechanism that dynamically responds to observed bandwidth utilization to provide unutilized or excess bandwidth to flows and partitions that require it. In another implementation, the present invention features a weighted fair share allocation scheme for hierarchical partition configurations. In other implementations, the present invention provides a per-flow target rate assignment mechanism that prevents spiraling decline of data flow rates.

Claims (26)

1. A method comprising:

allocating network bandwidth to a plurality of partitions arranged in a hierarchical configuration, wherein each partition in the plurality of partitions is associated with a respective weighting value and a respective aggregate bandwidth allocation based on a weighted fair share allocation scheme;

receiving packets;

associating the packets with corresponding data flows, each such data flow associated with packets originating from a common source and targeting a common destination;

associating the data flows with corresponding partitions of the plurality of partitions;

enforcing the aggregate bandwidth allocations of the partitions on the associated data flows;

monitoring bandwidth demand of each partition in the plurality of partitions relative to the weighted fair share bandwidth allocation scheme;

adding packets to a high priority queue within a first partition based on a determination that a measured data rate for the first partition is less than a fair share bandwidth allocation for the first partition, the first partition including the high priority queue and a low priority queue;

adding packets to a low priority queue within the first partition based on a determination that a measured data rate for the first partition is not less than a fair share bandwidth allocation for the first partition, the first partition including a high priority queue and the low priority queue; and

dynamically allocating unutilized bandwidth to partitions of the plurality of partitions with a bandwidth demand that exceeds the respective aggregate bandwidth allocation, wherein the unutilized bandwidth is allocated based on the weighting values associated with the partitions.

2. The method of claim 1 wherein the monitoring step comprises monitoring the rate at which packets are received.

3. The method of claim 1 wherein the monitoring step comprises monitoring the number of packets buffered in a partition queue at periodic intervals.

4. The method of claim 1 further comprising

determining per-flow target rates for the data flows.

5. The method of claim 4 wherein the per-flow target rates, for each data flow, are based, at least in part on, the aggregate bandwidth allocation of the partition associated with a data flow and the number of active data flows associated with the partition.

6. The method of claim 1 wherein the unutilized bandwidth is allocated based on the weighting values and the minimum bandwidth allocations associated with the partitions.

7. The method of claim 1 wherein at least one partition includes a maximum bandwidth setting; and wherein the unutilized bandwidth is allocated based on the weighting values and one or more minimum bandwidth settings associated with the partitions.

8. A method for achieving a weight-based aggregate bandwidth allocation scheme, comprising

receiving a hierarchical partition configuration comprising a root partition node at a first level of the hierarchical partition configuration, and a plurality of child partition nodes at least a second level of the hierarchical partition configuration; wherein the root partition node represents available bandwidth; and wherein the child partition nodes include a weighting value;

adding packets to a high priority queue within a first partition based on a determination that a measured data rate for the first partition is less than a fair share bandwidth allocation for the first partition, the first partition including the high priority queue and a low priority queue;

adding packets to a low priority queue within the first partition based on a determination that a measured data rate for the first partition is not less than a fair share bandwidth allocation for the first partition, the first partition including a high priority queue and the low priority queue;

allocating bandwidth from the root partition node to the child partition nodes based on the corresponding weighting values of the child partition nodes and the minimum bandwidth allocations corresponding to the at least a first child partition node;

dynamically adjusting bandwidth allocations on a per-flow basis between one or more flows within the child partition nodes, each such data flow associated with packets originating from a common source and targeting a common destination; and

dynamically allocating bandwidth on a per-flow basis between the one or more flows within the child partition nodes.

9. The method of claim 8 wherein the hierarchical partition configuration further comprises a third level, the third level of the partition configuration hierarchy comprising at least one child partition node, the method further comprising

allocating bandwidth from a child partition node in the second level to all child partition nodes in the third level of the child partition node in the second level based on the corresponding weighting value associated with each of the child partition nodes in the third level, the child partition nodes in the third level associated with at least two or more different weighting values.

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 Oct 14, 2008
From: FEROZ, AZEEM; LAI, WEI-LUNG; VARIER, ROOPESH R.; STABILE, JAMES J.; OKHOLM, JON ERIC
To: PACKETEER, INC.
Reel/Frame 021677/0312 →