Aggregate network resource utilization control scheme

US9755984B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9755984-B1
Application numberUS-25068408-A
CountryUS
Kind codeB1
Filing dateOct 14, 2008
Priority dateFeb 8, 2005
Publication dateSep 5, 2017
Grant dateSep 5, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

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.

First claim

Opening claim text (preview).

What is claimed is: 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.

Assignees

Inventors

Classifications

  • Flow control; Congestion control · CPC title

  • Weighted service order · CPC title

  • H04L47/522Primary

    Dynamic queue service slot or variable bandwidth allocation · CPC title

  • in wire-line communication networks, e.g. low power modes or reduced link rate · CPC title

  • using flow identification · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9755984B1 cover?
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 t…
Who is the assignee on this patent?
Feroz Azeem, Lai Wei-Lung, Varier Roopesh R, and 3 more
What technology area does this patent fall under?
Primary CPC classification H04L47/522. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Sep 05 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).