IP Library › Granted Patent US 9,485,153
Granted Patent B2
US 9,485,153 · App. 14/164,622 · Granted Nov 1, 2016

Dynamic network-driven application packet resizing

Inventors: Jean-Philippe Vasseur (Saint Martin d'Uriage, FR); Sukrit Dasgupta (Norwood, MA); Grégory Mermoud (Veyras, CH)
Assignee: Cisco Technology, Inc.
H04L41/5025H04L45/02H04L47/122H04L47/365H04W24/02H04L43/0852H04L45/70H04W24/04
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,485,153
App. No.
14/164,622
Granted
Nov 1, 2016
Kind
B2
Abstract

In one embodiment, information relating to network metrics in a computer network is collected. A packet delay for a packet to be transmitted along a particular communication path is predicted based on the network metrics. Then, an optimal packet size for optimizing a transmission experience of the packet to be transmitted along the particular communication path is calculated based on the predicted packet delay. Also, a size of the packet to be transmitted along the particular communication path is dynamically adjusted based on the calculated optimal packet size.

Claims (60)

1. A method, comprising:

collecting, by a learning machine, information relating to network metrics in a computer network;

predicting, by the learning machine, a packet delay for a packet to be transmitted along a particular communication path based on the network metrics, wherein the predicting includes:

building, by the learning machine, a predictive model that takes into account packet size by inputting the collected network metrics into an engine, which then yields a prediction of the packet delay, and

calculating, by the learning machine, an optimal packet size for optimizing a transmission experience of the packet to be transmitted along the particular communication path based on the predicted packet delay; and

sending instructions to an application that will be transmitting the packet that instruct the application to dynamically adjust a size of the packet to be transmitted along the particular communication path based on the calculated optimal packet size determined from the predictive model.

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

sending an instruction to a source node that transmits the packet to adjust the size of the packet based on observed network conditions.

3. The method as in claim 2 , wherein the observed network conditions are proximate to one or more of a location of the source node, the particular communication path, and a location of a destination node that receives the packet.

4. The method as in claim 1 , further comprising:

observing current network conditions in the network; and

calculating the optimal packet size for optimizing the transmission experience of the packet based further on the observed current network conditions.

5. The method as in claim 1 , wherein the optimizing of the transmission experience comprises one or more of: reducing packet delay, improving a transmission success rate, reducing a transmission time, reducing collisions, and reducing packet loss.

6. The method as in claim 1 , further comprising:

accessing a service level agreement (SLA) in the network;

determining one or more SLA requirements according to the SLA; and

calculating the optimal packet size for optimizing the transmission experience of the packet based further on the determined SLA requirement.

7. The method as in claim 6 , wherein the SLA is associated with one or more of a source node that transmits the packet and a destination node that receives the packet.

8. The method as in claim 1 , further comprising:

dynamically adjusting the size of the packet at one or more times during a lifetime of the packet.

9. The method as in claim 1 , further comprising:

receiving feedback regarding the dynamically adjusted size of the packet to be transmitted along the particular communication path; and

calculating the optimal packet size based further on the received feedback.

10. The method as in claim 1 , further comprising:

sending artificial packets of varying sizes in the computer network in order to construct the predictive model.

11. An apparatus, comprising:

one or more network interfaces that communicate with a computer network;

a processor coupled to the one or more network interfaces and configured to execute a process; and

a memory configured to store program instructions which contain the process executable by the processor, the process comprising:

collecting information relating to network metrics in the computer network;

predicting a packet delay for a packet to be transmitted along a particular communication path based on the network metrics, wherein the predicting includes:

building a predictive model that takes into account packet size by inputting the collected network metrics into an engine, which then yields a prediction of the packet delay, and

calculating an optimal packet size for optimizing a transmission experience of the packet to be transmitted along the particular communication path based on the predicted packet delay; and

sending instructions to an application that will be transmitting the packet that instruct the application to dynamically adjust a size of the packet to be transmitted along the particular communication path based on the calculated optimal packet size,

wherein the apparatus is a learning machine.

12. The apparatus as in claim 11 , wherein the process further comprises:

sending an instruction to a source node that transmits the packet to adjust the size of the packet based on observed network conditions.

13. The apparatus as in claim 12 , wherein the observed network conditions are proximate to one or more of a location of the source node, the particular communication path, and a location of a destination node that receives the packet.

14. The apparatus as in claim 11 , wherein the process further comprises:

observing current network conditions in the network; and

calculating the optimal packet size for optimizing the transmission experience of the packet based further on the observed current network conditions.

15. The apparatus as in claim 11 , wherein the optimizing of the transmission experience comprises one or more of: reducing packet delay, improving a transmission success rate, reducing a transmission time, reducing collisions, and reducing packet loss.

16. The apparatus as in claim 11 , wherein the process further comprises:

accessing a service level agreement (SLA) in the network;

determining one or more SLA requirements according to the SLA; and

calculating the optimal packet size for optimizing the transmission experience of the packet based further on the determined SLA requirement.

17. The apparatus as in claim 16 , wherein the SLA is associated with one or more of a source node that transmits the packet and a destination node that receives the packet.

18. The apparatus as in claim 11 , wherein the process further comprises:

dynamically adjusting the size of the packet at one or more times during a lifetime of the packet.

19. The apparatus as in claim 11 , wherein the process further comprises:

receiving feedback regarding the dynamically adjusted size of the packet to be transmitted along the particular communication path; and

calculating the optimal packet size based further on the received feedback.

20. The apparatus as in claim 11 , wherein the process further comprises:

sending artificial packets of varying sizes in the network in order to construct the predictive model.

21. A tangible non-transitory computer readable medium storing program instructions that cause a learning machine to execute a process, the process comprising:

collecting information relating to network metrics in a computer network;

predicting a packet delay for a packet to be transmitted along a particular communication path based on the network metrics, wherein the predicting includes:

building, by the learning machine, a predictive model that takes into account packet size by inputting the collected network metrics into an engine, which then yields a prediction of the packet delay, and

calculating an optimal packet size for optimizing a transmission experience of the packet to be transmitted along the particular communication path based on the predicted packet delay; and

sending instructions to an application that will be transmitting the packet that instruct the application to dynamically adjust a size of the packet to be transmitted along the particular communication path based on the calculated optimal packet size.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2014
From: VASSEUR, JEAN-PHILIPPE; DASGUPTA, SUKRIT; MERMOUD, GRÉGORY
To: CISCO TECHNOLOGY, INC.
Reel/Frame 032483/0036 →
Continuity (2)
Provisional Application 61923910 · Jan 6, 2014
Related Publication 20150195212A1 · Jul 9, 2015