IP Library Granted Patent US 7,869,366
Granted Patent B1
US 7,869,366 · App. 11/726,552 · Granted Jan 11, 2011

Application-aware rate control

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,869,366
App. No.
11/726,552
Granted
Jan 11, 2011
Kind
B1
Abstract

A method for controlling data rate at an application layer. The method, in a particular implementation, includes identifying an application-layer message corresponding to a network application, wherein the application-layer message is transmitted in a first direction from a first host to a remote host and is operable to cause the remote host to transmit one or more responsive messages to the first host. A queuing delay is computed for the application-layer message and transmission of the application-layer message across a link to the remote host is delayed according to the queuing delay wherein the computed queuing delay is based at least in part on utilization of the link in a direction opposite the first direction of network traffic corresponding to the network application.

Claims (35)

1. A method for controlling data rate at an application layer, comprising:

identifying, at a network device, an application-layer message corresponding to a network application, wherein the application-layer message is transmitted in a first direction from a first host to a remote host and is configured to cause the remote host to transmit one or more responsive messages to the first host;

computing a queuing delay for the application-layer message; and

delaying transmission of the application-layer message across a link to the remote host according to the queuing delay wherein the computed queuing delay is based at least in part on utilization of the network path segment in a direction opposite the first direction of network traffic corresponding to the network application.

2. An apparatus, comprising

a memory,

one or more processors;

one or more network interfaces;

network application traffic management logic encoded in one or more tangible media for execution and when executed operable to cause the one or more processors to:

identify an application-layer message corresponding to a network application, wherein the application-layer message is transmitted in a first direction from a first host to a remote host and is configured to cause the remote host to transmit one or more responsive messages to the first host;

compute a queuing delay for the application-layer message; and

delay transmission of the application-layer message across a link to the remote host according to the queuing delay wherein the computed queuing delay is based at least in part on utilization of the link in a direction opposite the first direction of network traffic corresponding to the network application.

3. A method for controlling data rate at an application layer, comprising:

buffering packets, corresponding to a network application, transmitted in a first direction across a network path segment in an output scheduling data structure;

identifying an application-layer message corresponding to the network application, transmitted across the network path segment in a second direction opposite the first direction, wherein the application-layer message is transmitted from a first host to a remote host and is configured to cause the remote host to transmit one or more responsive packets to the first host;

computing a queuing delay for the application-layer message based at least in part on utilization of the network path segment in the first direction by network traffic of the network application; and

delaying transmission of the application-layer message in the second direction to the remote host according to the queuing delay.

4. The method of claim 3 wherein the computed queuing delay is based on the state of the output scheduling data structure.

5. The method of claim 3 further comprising conditioning the delaying step based on a threshold number of packets buffered in the output scheduling data structure.

6. The method of claim 4 wherein the computed delay is based on an estimation of the amount of time for a number of packets corresponding to the network application buffered in the output scheduling data structure to fall below a threshold level.

7. An apparatus, comprising

a memory,

one or more processors;

one or more network interfaces;

network application traffic management logic encoded in one or more tangible media for execution and when executed operable to cause the one or more processors to:

buffer packets, corresponding to a network application, transmitted in a first direction across a network path segment in an output scheduling data structure;

identify an application-layer message corresponding to the network application, transmitted across the network path segment in a second direction opposite the first direction, wherein the application-layer message is transmitted from a first host to a remote host and is configured to cause the remote host to transmit one or more responsive packets to the first host;

compute a queuing delay for the application-layer message based at least in part on utilization of the network path segment in the first direction by network traffic of the network application; and

delay transmission of the application-layer message in the second direction to the remote host according to the queuing delay.

8. A method for controlling data rate at an application layer, comprising:

buffering packets, corresponding to a network application, transmitted in a first direction across a network path segment in an output scheduling data structure;

identifying an application-layer message corresponding to the network application, transmitted across the network path segment in a second direction opposite the first direction, wherein the application-layer message is transmitted from a first host to a remote host and is configured to cause the remote host to transmit one or more responsive packets to the first host;

identifying the number of packets stored in the output scheduling data structure; and

delaying transmission of the application-layer message in the second direction to the remote host if the number of packets, or amount of data of the packets, exceeds a threshold.

9. The method of claim 8 wherein the application-layer message is an application-level request formatted according to a request-response protocol.

Assignments (8)
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 →