IP Library Granted Patent US 8,149,826
Granted Patent B2
US 8,149,826 · App. 11/638,891 · Granted Apr 3, 2012

Method and system for profiling and learning application networking behavior

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 8,149,826
App. No.
11/638,891
Granted
Apr 3, 2012
Kind
B2
Abstract

In general, the invention relates to a method for classifying an application. The method includes receiving, at a kernel, a plurality of packets from the application, wherein the application is executing outside of the kernel, obtaining a first measurement from the plurality of packets associated with a first parameter using a first internal estimator in the kernel, applying a first statistical technique to the first measurement to generate a first estimate of the first parameter, and obtaining a classification of the application based on the first estimate. Further, the classification of the application is used to optimize a network connection associated with the application.

Claims (61)

1. A method for classifying an application, comprising:

receiving, at a kernel, a plurality of packets from the application, wherein the application is executing outside of the kernel;

obtaining a first measurement from the plurality of packets associated with a first parameter using a first internal estimator in the kernel;

applying a first statistical technique to the first measurement to generate a first estimate of the first parameter; and

obtaining a classification of the application based on the first estimate,

wherein the classification of the application is used to optimize a network connection associated with the application,

wherein the application and the kernel are located in a computer system,

wherein the application uses the network connection to send the plurality of packets to a packet destination external to the computer system.

2. The method of claim 1 , further comprising:

obtaining a second measurement from the plurality of packets associated with a second parameter using a second internal estimator in the kernel;

applying a second statistical technique to the second measurement to generate a second estimate of the second parameter; and

refining the classification based on the second estimate.

3. The method of claim 1 , further comprising:

analyzing a performance of the network connection; and

updating the first internal estimator based on the performance of the network connection.

4. The method of claim 1 , further comprising:

updating the classification based on external information about the application.

5. The method of claim 1 , wherein the classification is made using at least one selected from a group consisting of a principal component analysis, a linear discriminant analysis, a non-linear discriminant analysis, a Fisher discriminant, and an expectation maximization.

6. The method of claim 1 , wherein the first internal estimator comprises a minimum mean squared error estimator.

7. The method of claim 1 , wherein the network connection is associated with a user of the application.

8. A system, comprising:

a processor;

an application executed by the processor and configured to send a plurality of packets to a kernel executed by the processor;

the kernel, comprising:

a first internal estimator; and

a classifier,

wherein the first internal estimator is associated with a first parameter and configured to:

obtain a first measurement from the plurality of packets, wherein the first measurement is associated with the first parameter; and

generate a first estimate associated with the first parameter based on the first measurement,

wherein the classifier is configured to generate a classification of the application based on the first estimate, and

wherein the classification of the application is used to optimize a network connection associated with the application,

wherein the application uses the network connection to send the plurality of packets to a packet destination external to the system.

9. The system of claim 8 , wherein the first internal estimator comprises a minimum mean squared error estimator.

10. The system of claim 8 , wherein the first estimate is generated using a statistical technique.

11. The system of claim 10 , wherein the classification is made using at least one selected from a group consisting of a principal component analysis, a linear discriminant analysis, a non-linear discriminant analysis, a Fisher discriminant, and an expectation maximum.

12. The system of claim 8 , wherein the network connection is associated with a user of the application.

13. The system of claim 8 , wherein the kernel further comprises:

a second internal estimator associated with a second parameter and configured to:

obtain a second measurement from the plurality of packets, wherein the second measurement is associated with the second parameter; and

generate a second estimate associated with the second parameter based on the second measurement,

wherein the classifier is configured to refine the classification based on the second estimate.

14. The system of claim 8 , wherein the classifier is updated with external information related to the application.

15. A non-transitory computer readable medium containing software instructions embodied therein for causing a computer system to perform a method for emulating a system call, the method comprising:

receiving, at a kernel, a plurality of packets from the application, wherein the application is executing outside of the kernel;

obtaining a first measurement from the plurality of packets associated with a first parameter using a first internal estimator in the kernel;

applying a first statistical technique to the first measurement to generate a first estimate of the first parameter; and

obtaining a classification of the application based on the first estimate,

wherein the classification of the application is used to optimize a network connection associated with the application,

wherein the application and the kernel are located in a computer system,

wherein the application uses the network connection to send the plurality of packets to a packet destination external to the computer system.

16. The non-transitory computer readable medium of claim 15 , the method further comprising:

obtaining a second measurement from the plurality of packets associated with a second parameter using a second internal estimator in the kernel;

applying a second statistical technique to the second measurement to generate a second estimate of the second parameter; and

refining the classification based on the second estimate.

17. The non-transitory computer readable medium of claim 15 , the method further comprising:

analyzing a performance of the network connection; and

updating the first internal estimator based on the performance of the network connection.

18. The non-transitory computer readable medium of claim 15 , the method further comprising:

updating the classification based on external information about the application.

19. The non-transitory computer readable medium of claim 15 , wherein the classification is made using at least one selected from a group consisting of a principal component analysis, a linear discriminant analysis, a non-linear discriminant analysis, a Fisher discriminant, and an expectation maximum.

20. The non-transitory computer readable medium of claim 15 , wherein the network connection is associated with a user of the application.

Assignments (1)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037311/0150 →