8031601

Slow-Start Adaptive Mechanisms to Improve Efficiency of Bandwidth Allocation

PublishedOctober 4, 2011
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
22 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A method comprising detecting, at a network device operably connected to a link in a network, a first transport layer data flow corresponding to a first host and a second host among a plurality of transport layer data flows transmitted across the link; estimating, at a start of the first transport layer data flow between the first host and the second host, an initial rate demand for the first transport layer data flow, wherein the first host and the second host implement, relative to the first transport layer data flow, a protocol that utilizes a slow-start phase, wherein the initial rate demand is an estimated rate capacity for the first transport layer data flow of a communications path between the first and second host, wherein the communications path includes the link; allocating bandwidth of the link to a plurality of data flows including assigning a target rate to the first transport layer data flow wherein the target rate is less than the initial rate demand for the first transport layer data flow; enforcing, at the network device, the target rate on the first transport layer data flow; maintaining a count of packets associated with the first transport layer data flow; and increasing the target rate allocated to the first transport layer data flow, if the count of packets associated with the first transport layer data flow exceeds at least one threshold.

2

2. The method of claim 1 further comprising estimating the number of bytes that the first host will transmit before achieving the initial rate demand; and setting the at least one threshold based on the number of bytes in the second estimating step.

3

3. The method of claim 2 wherein the second estimating step comprises estimating the round trip time between the first and second host; and multiplying the initial demand rate associated with the first transport layer data flow by the round trip time.

4

4. The method of claim 3 wherein the round trip time is based on an analysis of arrival times of handshake packets corresponding to the first transport layer data flow.

5

5. The method of claim 1 wherein the initial rate demand is based on an analysis of arrival times of at least one handshake packet corresponding to the first transport layer data flow.

6

6. The method of claim 5 wherein the initial rate demand is based on an analysis of at least one data packet corresponding to the transport layer data flow.

7

7. The method of claim 1 wherein the initial rate demand is based on an analysis of at least one data packet corresponding to the first transport layer data flow.

8

8. The method of claim 1 further comprising monitoring for at least one indication that the sending host has re-initiated the slow start mechanism for the first transport layer data flow; upon detection of at least one of the indications, resetting the count of the packets for the first transport layer data flow; and repeating the allocating, maintaining and increasing steps.

9

9. The method of claim 8 wherein the monitoring step comprise determining whether at least one data packet corresponding to the first transport layer data flow is a re-transmission of a previous packet.

10

10. The method of claim 9 wherein the monitoring step further comprises determining whether the re-transmitted packet arrived a threshold period of time after the last packet corresponding to the first transport layer data flow.

11

11. The method of claim 8 wherein the monitoring step comprise determining whether the packet arrived a threshold period of time after the last packet corresponding to the first transport layer data flow.

12

12. A method comprising detecting, at a network device operably connected to a link in a network, a first transport layer data flow corresponding to a first host and a second host among a plurality of transport layer data flows transmitted across the link; estimating, at a start of the first transport layer data flow between the first host and the second host, an initial rate demand for the first transport layer data flow, wherein the first host and the second host implement, relative to the first transport layer data flow, a protocol that utilizes a slow-start phase, wherein the initial rate demand is an estimated rate capacity for the data flow of a communications path between the first and second host, wherein the communications path includes the link; allocating bandwidth of the link to a plurality of data flows including assigning a target rate to the first transport layer data flow wherein the target rate is a fraction of the initial rate demand for the first transport layer data flow; enforcing, at the network device, the target rate on the first transport layer data flow; maintaining a count of transmitted bytes associated with the first transport layer data flow; and increasing the target rate allocated to the first transport layer data flow, if the count of transmitted bytes associated with the first transport layer data flow increases.

13

13. The method of claim 12 wherein the increasing the target rate comprises increasing the fraction of the initial rate demand allocated to the first transport layer data flow as the count of transmitted bytes crosses at least one threshold.

14

14. The method of claim 13 further comprising estimating the number of bytes that the first host will transmit before achieving the initial rate demand; and setting the at least one threshold based on the number of bytes in the second estimating step.

15

15. The method of claim 14 wherein the estimating the number of bytes comprises estimating the round trip time between the first and second host; and multiplying the initial demand rate associated with the first transport layer data flow by the round trip time.

16

16. An apparatus comprising: a packet processor operative to detect, among a plurality of transport layer data flows, a first transport layer data flow in network traffic traversing a link in a communications path between a first host and a second host, wherein the first host and the second host implement, relative to the first transport layer data flow, a protocol that utilizes a slow- start phase; maintain a count of packets or bytes associated with the first transport layer data flow; a path rate detection module operative to estimate the initial rate demand for the first transport layer data flow, wherein the initial rate demand is an estimated rate capacity for the first transport layer data flow of a communications path between the first and second host; a bandwidth allocation module operative to allocate bandwidth of the link to a plurality of transport layer data flows including allocating bandwidth to the first transport layer data flow based in part on a target rate associated with the first transport layer data flow; and wherein the apparatus is operative to set a target rate for the first transport layer data flow wherein the target rate is less than the initial rate demand for the first transport layer data flow; and increase the target rate associated with the first transport layer data flow, if the count of packets or bytes associated with the first transport layer data flow exceeds a threshold value.

17

17. The apparatus of claim 16 further comprising a traffic classification database including at least one traffic class, at least one attribute defining the at least one traffic class, and at least one bandwidth utilization control corresponding to the at least one traffic class, wherein the traffic classification is operative to compare attributes stored in association with traffic class identifiers to attributes of the first transport layer data flow to identify a traffic class that corresponds to the first transport layer data flow; associate at least one bandwidth utilization control to the first transport layer data flow based on the identified traffic class; and wherein the bandwidth allocation module is operative to allocate bandwidth based, at least in part, on the target rate, and the at least one bandwidth utilization control, associated with the first transport layer data flow.

18

18. The apparatus of claim 16 wherein the packet processor is further operative to parse at least one packet associated with the first transport layer data flow into a flow specification, wherein said flow specification contains at least one instance of any one of the following: 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

19. The apparatus of claim 18 wherein the traffic classification database is operative to match the first transport layer data flow specification to a plurality of traffic classes, each of the traffic classes defined by one or more matching attributes; and thereupon, having found a matching traffic class in the matching step, associate said transport layer data flow specification with a traffic class from the plurality of traffic classes.

20

20. The apparatus of claim 16 wherein the apparatus is further operative to monitor for at least one indication that the sending host has re-initiated the slow start mechanism for the first transport layer data flow; and upon detection of at least one of the indications, reset the count of bytes for the transport layer data flow; and reset the target rate for the first transport layer data flow to the initial target rate.

21

21. The apparatus of claim 16 wherein the path rate detection module is further operative to estimate the number of bytes that a sending host will transmit before achieving the initial rate demand.

22

22. A method comprising allocating a limited amount of bandwidth to a plurality of transport layer data flows traversing a network between respective first and second hosts based on target rates associated with the transport layer data flows; and in response to detection of and for each data flow of at least a subset of the data flows, estimating an initial rate demand for the transport layer data flow between a first host and a second host, wherein the first host and the second host implement, relative to the transport layer data flow, a protocol that utilizes a slow-start phase, wherein the initial rate demand is an estimated rate capacity for the data flow of a communications path between the first and second host; setting a target rate to the transport layer data flow wherein the target rate is less than the initial rate demand for the transport layer data flow; maintaining a count of packets associated with the transport layer data flow; and increasing the target rate of the transport layer data flow, if the count of packets associated with the transport layer data flow exceeds at least one threshold.

Patent Metadata

Filing Date

Unknown

Publication Date

October 4, 2011

Inventors

Azeem Feroz
Wei-Lung Lai
James J. Stabile

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “SLOW-START ADAPTIVE MECHANISMS TO IMPROVE EFFICIENCY OF BANDWIDTH ALLOCATION” (8031601). https://patentable.app/patents/8031601

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.