IP Library › Granted Patent US 9,813,259
Granted Patent B2
US 9,813,259 · App. 14/276,310 · Granted Nov 7, 2017

Probing available bandwidth along a network path

Inventors: Jean-Philippe Vasseur (Saint Martin d'Uriage, FR); Sukrit Dasgupta (Norwood, MA)
Assignee: Cisco Technology, Inc.
H04L12/4641H04L43/062H04L43/0882H04L43/10H04L43/12H04L47/115H04L47/12H04L47/25
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,813,259
App. No.
14/276,310
Granted
Nov 7, 2017
Kind
B2
Abstract

In one embodiment, a time period is identified in which probe packets are to be sent along a path in a network based on predicted user traffic along the path. The probe packets are then sent during the identified time period along the path. Conditions of the network path are monitored during the time period. The rate at which the packets are sent during the time period is dynamically adjusted based on the monitored conditions. Results of the monitored conditions are collected, to determine an available bandwidth limit along the path.

Claims (53)

1. A method, comprising:

using, by an edge device located between an internal and external network, a machine learning model to predict user traffic along a path in the external network;

identifying, by the device, a time period in which probe packets are to be sent along the path in the external network based on the predicted user traffic along the path;

sending, by the device, the probe packets during the identified time period along the path;

monitoring conditions of the network path during the time period, wherein the monitored conditions include two or more of: a measured amount of jitter associated with the path, a measured amount of delay associated with the path, a queue state of a device along the path, or an application response time metric;

dynamically adjusting a rate at which the probe packets are sent during the time period based on the monitored conditions and using a closed-loop control mechanism, wherein the rate is selected based in part on periodically tracking a difference in a volume of traffic egressing or ingressing the internal network and an amount of bandwidth capacity of the external network that is dedicated to the internal network and an instantaneous level of congestion of a given link or traffic class; and

collecting, at the device, results of the monitored conditions to determine an available bandwidth limit along the path.

2. The method as in claim 1 , wherein the monitored conditions indicate the presence of traffic congestion along the path.

3. The method as in claim 2 , wherein the traffic congestion is associated with a particular class of traffic.

4. The method as in claim 2 , wherein the traffic congestion is associated with a particular communication link along the path.

5. The method as in claim 2 , further comprising:

adjusting the rate downward in response to determining that traffic congestion is present.

6. The method as in claim 1 , wherein dynamically adjusting the rate comprises:

continually adjusting the rate upward during the time period.

7. The method as in claim 1 , wherein the machine learning model used to predict the user traffic along the path is based on one or more of: bandwidth usage data, application type data, traffic flow characteristics, or statistical measurements regarding the path.

8. The method as in claim 1 , wherein identifying the time period comprises:

analyzing a traffic volume profile associated with a particular application type.

9. The method as in claim 1 , wherein identifying the time period comprises:

predicting a time-sensitive window in which time-sensitive traffic will be sent; and

selecting the time period in which to send the probe packets to avoid the time-sensitive window.

10. An apparatus, comprising:

one or more network interfaces to communicate with an internal network and an external network;

a processor coupled to the network interfaces and adapted to execute one or more processes; and

a memory configured to store a process executable by the processor, the process when executed operable to:

use a machine learning model to predict user traffic along a path in the external network;

identify a time period in which probe packets are to be sent along the path in the external network based on the predicted user traffic along the path;

send the probe packets during the identified time period along the path;

monitor conditions of the network path during the time period, wherein the monitored conditions include two or more of: a measured amount of jitter associated with the path, a measured amount of delay associated with the path, a queue state of a device along the path, or an application response time metric;

dynamically adjust a rate at which the probe packets are sent during the time period based on the monitored conditions and using a closed-loop control mechanism, wherein the rate is selected based in part on periodically tracking a difference in a volume of traffic egressing or ingressing the internal network and an amount of bandwidth capacity of the external network that is dedicated to the internal network and an instantaneous level of congestion of a given link or traffic class; and

collect results of the monitored conditions to determine an available bandwidth limit along the path.

11. The apparatus as in claim 10 , wherein the monitored conditions indicate the presence of traffic congestion along the path.

12. The apparatus as in claim 11 , wherein the traffic congestion is associated with a particular class of traffic.

13. The apparatus as in claim 11 , wherein the traffic congestion is associated with a particular communication link along the path.

14. The apparatus as in claim 11 , wherein the process when executed is further operable to:

adjust the rate downward in response to determining that traffic congestion is present.

15. The apparatus as in claim 11 , wherein the process when executed is further operable to:

continually adjust the rate upward during the time period.

16. The apparatus as in claim 10 , wherein the machine learning model used to predict the user traffic along the path is based on one or more of: bandwidth usage data, application type data, traffic flow characteristics, or statistical measurements regarding the path.

17. The apparatus as in claim 10 , wherein the time period is identified by:

analyzing a traffic volume profile associated with a particular application type.

18. The apparatus as in claim 10 , wherein the time period is identified by:

predicting a time-sensitive window in which time-sensitive traffic will be sent; and

selecting the time period in which to send the probe packets to avoid the time-sensitive window.

19. A tangible, non-transitory, computer-readable media having software encoded thereon, the software when executed by a processor of an edge device located between an internal and external network operable to:

use a machine learning model to predict user traffic along a path in the external network;

identify a time period in which probe packets are to be sent along the path in the external network based on the predicted user traffic along the path;

send the probe packets during the identified time period along the path;

monitor conditions of the network path during the time period, wherein the monitored conditions include two or more of: a measured amount of jitter associated with the path, a measured amount of delay associated with the path, a queue state of a device along the path, or an application response time metric;

dynamically adjust a rate at which the probe packets are sent during the time period based on the monitored conditions and using a closed-loop control mechanism, wherein the rate is selected based in part on periodically tracking a difference in a volume of traffic egressing or ingressing the internal network and an amount of bandwidth capacity of the external network that is dedicated to the internal network and an instantaneous level of congestion of a given link or traffic class; and

collect results of the monitored conditions to determine an available bandwidth limit along the path.

20. The computer-readable media as in claim 19 , wherein the software when executed is further operable to:

predict a time-sensitive window in which time-sensitive traffic will be sent; and

select the time period in which to send the probe packets to avoid the time-sensitive window.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2014
From: VASSEUR, JEAN-PHILIPPE; DASGUPTA, SUKRIT
To: CISCO TECHNOLOGY, INC.
Reel/Frame 032879/0160 →
Continuity (1)
Related Publication 20150334030A1 · Nov 19, 2015