IP Library Granted Patent US 10,594,755
Granted Patent B2
US 10,594,755 · App. 15/707,514 · Granted Mar 17, 2020

Distributed media classification algorithm in a service controller platform for enhanced scalability

Inventors: Navaneetha Krishna Gowda Thippesh (Bangalore, IN); Brijesh Kumar Yadav (Bangalore, IN)
Assignee: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
H04L65/605H04L65/1066H04L65/608H04L61/2575
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 10,594,755
App. No.
15/707,514
Granted
Mar 17, 2020
Kind
B2
Abstract

A network system and the method is described that splits media identification logic and media classification and/or general data session processing/management logic into separate controllers (e.g., between the local controllers and a service controller). By separating media identification logic and media classification logic (or general media processing/management logic), the system and method allows for greater flexibility and scalability in a network system employing a service controller. In particular, by allowing the local controllers to perform media identification and to construct a single packet that characterizes/describes a media session, the system avoids the need to transmit multiple data packets of a media session to the service controller for classification of the session. Accordingly, the system includes the flexibility a service controller provides while allowing for greater scalability by separating media identification logic and media classification respectively between a local controller and the service controller.

Claims (40)

1. A method comprising:

receiving a metadata packet in a service controller from a local controller, the metadata packet generated by the local controller and describing a data session between a plurality of client computing devices detected by the local controller, wherein the data session comprises a virtual stream between client devices;

determining a call type associated with the data session based on the metadata packet;

classifying the data session in the service controller to a communication-based application based on the metadata packet;

generating control data to control the data session, wherein the control data comprises data to reprogram a flow or connection associated with the local controller based on the determined call type to match a preconfigured setting of the communication based-application; and

transmitting the control data to the local controller.

2. The method of claim 1 , wherein the data session comprises a five-tuple session that includes one or more threads that are partitioned into separate respective virtual streams.

3. The method of claim 1 , wherein the metadata packet comprises data representing a codec associated with the virtual stream.

4. The method of claim 1 , wherein the metadata packet comprises data representing one or more predefined signatures that are detected within a virtual stream of the data session, and wherein the predefined signatures are associated with a corresponding application or service.

5. The method of claim 1 , wherein classifying the data session in the service controller comprises:

comparing characteristics represented by data of the metadata packet with characteristics of the application or service; and

associating the data session with the application or service based on a result of the comparing.

6. A non-transitory machine readable storage medium comprising instructions that, when executed by a machine, cause the machine to:

receive a metadata packet, generated by a local controller, from the local controller, wherein the metadata packet describes a data session detected by the local controller between a plurality of computing devices, and the data session comprises real-time communication of media between client computing devices;

determine a call type associated with the data session based on the metadata packet;

classify the data session to a communication-based application based on the metadata packet;

generate control data based on the classification of the data session, wherein the control data comprises data to reprogram a flow or connection associated with the local controller based on the determined call type to match a preconfigured setting of the communication based-application;

transmit the data to the local controller to control the data session.

7. The non-transitory machine readable storage medium of claim 6 , wherein the data session comprises a five-tuple session that includes one or more threads that are partitioned into separate respective virtual streams.

8. non-transitory machine readable storage medium of claim 6 , wherein the data session comprises a virtual stream, and the metadata packet comprises one or more of data representing a codec associated with the virtual stream, and data representing one or more predefined signatures that are detected within a virtual stream of the data session, and wherein the predefined signatures are associated with a corresponding application or service.

9. The non-transitory machine readable storage medium of claim 6 , wherein the instructions, when executed by the machine, cause the machine to:

compare characteristics represented by data of the metadata packet with characteristics of the application or service; and

associate the data session with the application or service based on a result of the comparison.

10. The non-transitory machine readable storage medium of claim 6 , wherein:

the instructions, when executed by the machine, cause the machine to determine a call type or a media type associated with the data session; and

the data generated based on the classification of the data session comprises data to reprogram a flow or reprogram a connection associated with the local controller.

11. The non-transitory machine readable storage medium of claim 6 , wherein the data generated based on the classification of the data session comprises data to control a prioritization of the data session.

12. An apparatus comprising:

a hardware processor; and

a memory to store instructions that, when executed by the hardware processor, cause the hardware processor to:

receive a metadata packet, generated by a local controller, from the local controller, wherein the metadata packet describes a data session detected by the local controller between a plurality of computing devices, and wherein the data comprises a virtual stream between client devices;

determine a call type associated with the data session based on the metadata packet;

classify the data session to a communication-based application based on the metadata packet;

analyze the data session based on the metadata packet to provide control data to control the data session, wherein the control data comprises data to reprogram a flow or connection associated with the local controller based on the determined call type to match a preconfigured setting of the communication based-application; and

transmit the control data to the local controller.

13. The apparatus of claim 12 , wherein the metadata packet comprises data representing a codec associated with the virtual stream.

14. The apparatus of claim 12 , wherein the metadata packet comprises one or more of a format of packets within the one or more virtual streams and one or more predefined signatures that are detected within the virtual stream and are associated with a corresponding application or service.

15. The apparatus of claim 12 , wherein the metadata packet comprises data describing a codec associated with the virtual stream.

16. The apparatus of claim 12 , wherein the instructions, when executed by the hardware processor, cause the hardware processor to associate the data session with an application or service based on a comparison of characteristics represented by data of the metadata packet with characteristics of the application or service.

17. The apparatus of claim 12 , wherein the control data comprises data to control a prioritization of the data session.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2018
From: ARUBA NETWORKS, INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 045921/0055 →
Continuity (2)
Continuation 14726281 · May 29, 2015
Related Publication 20180007111A1 · Jan 4, 2018