Systems and methods for packet classification

US9923997B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9923997-B2
Application numberUS-201314136950-A
CountryUS
Kind codeB2
Filing dateDec 20, 2013
Priority dateDec 21, 2012
Publication dateMar 20, 2018
Grant dateMar 20, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method for packet classification. In some embodiments, the method includes instantiating a first machine; allocating a first SC to the first machine, the first SC being configured to classify a packet based on information contained in a field of a header included in the packet; instantiating a second machine; allocating a second SC to the second machine, the second SC being configured to classify a packet based on information contained in a field of a header included in the packet; monitoring the first machine to detect if the first machine is in an overload state; and in response to detecting that the first machine is in an overload state, instantiating a third machine and allocating a third SC to the third machine, the third SC being configured to classify a packet based on information contained in a field of a header included in the packet.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method for packet classification, the method comprising: instantiating a first machine for executing instructions, wherein the first machine is operable to provide a first amount of computing power for use by one or more software elements that require computing power and the first machine comprises a first packet buffer for storing packets; allocating to the first machine a first sub-classifier (SC) comprising a first set of instructions, wherein the first machine is configured to execute the first set of instructions, the first set of instructions being configured to cause the first machine to classify a packet based on information contained in a field of a header included in the packet, and the first SC being configured to require not more than a second amount of computing power, wherein the second amount of computing power is not greater than the first amount of computing power; instantiating a second machine for executing instructions, wherein the second machine is operable to provide a third amount of computing power for use by one or more software elements that require computing power and the second machine comprises a second packet buffer for storing packets; installing on the second machine a second SC comprising a second set of instructions for execution by the second machine, the second set of instructions being configured to cause the second machine to classify a packet based on information contained in a field of a header included in the packet; detecting that the first machine is in an overload state; and as a direct result of detecting that the first machine is in an overload state, instantiating a third machine comprising a third packet buffer for storing packets and a third SC, the third SC being configured to cause the third machine to classify a packet based on information contained in a field of a header included in the packet, wherein detecting that the first machine is in an overload state comprises at least one of: i) detecting that the first machine is dropping packets and ii) detecting that the number of packets stored in the first packet buffer within the first machine has reached a threshold, the method further comprises instantiating a traffic load balancer in response to detecting that the first machine is in an overload state, the traffic load balancer is configured such that, in response to receiving a network packet, the traffic load balancer i) uses a load balancing method to select one of the first machine and the third machine and ii) forward the network packet to the selected machine, thereby balancing network traffic between the first machine and the third machine, and the third SC allocated to the third machine is a copy of the first SC. 2. The method of claim 1 , further comprising: the first machine receiving a packet; the first SC processing the packet, wherein the processing comprises classifying the packet and decorating the packet to create a decorated packet; and the first SC providing the decorated packet to the second SC, wherein decorating the packet to create a decorated packet comprises adding to the packet meta-data comprising information identifying a protocol to which a header of the packet conforms. 3. The method of claim 1 , wherein the third SC allocated to the third machine is a copy of the first SC. 4. The method of claim 1 , wherein the first SC comprises a fourth SC and a fifth SC, the third SC allocated to the third machine is a copy of the fifth SC, and the method further comprises de-allocating the fifth SC from the first machine in response to detecting that the first machine is in an overload state. 5. The method of claim 1 , wherein the first machine separate and distinct from the second machine, the first machine is a first virtual machine, the second machine is a second virtual machine, and the third machine is a third virtual machine that is separate and distinct from the first and second virtual machines. 6. The method of claim 1 , wherein the first machine is separate and distinct from the second machine, the first machine is one of a switch, router, and general purpose computer, and the second machine is one of a switch, router, and general purpose computer. 7. The method of claim 1 , further comprising, in response to detecting that the first machine is in an overload state, updating configuration data used by an upstream SC that is upstream with respect to the first SC, wherein the configuration data is used by the upstream SC for routing packets to downstream SCs. 8. A controller for packet classification, the controller being adapted to: instantiate a first machine for executing instructions, wherein the first machine is operable to provide a first amount of computing power for use by one or more software elements that require computing power, and wherein the first machine comprises a first packet buffer for storing packets and a first sub-classifier (SC) comprising a first set of instructions for execution by the first machine, the first set of instructions being configured to cause the first machine to classify a packet based on information contained in a field of a header included in the packet, and the first SC being configured to require not more than a second amount of computing power, wherein the second amount of computing power is not greater than the first amount of computing power; instantiate a second machine for executing instructions, wherein the second machine is operable to provide a third amount of computing power for use by one or more software elements that require computing power, and wherein the second machine comprises a second packet buffer for storing packets and a second sub-classifier (SC) comprising a second set of instructions for execution by the second machine, the second set of instructions being configured to cause the second machine to classify a packet based on information contained in a field of a header included in the packet, and the second SC being configured to require not more than a fourth amount of computing power, wherein the fourth amount of computing power is not greater than the third amount of computing power; and detect whether the first machine is in an overload state, wherein the first SC comprises a fourth SC and a fifth SC, the controller is further configured such that, as a direct result of detecting that the first machine is an overload state, the controller instantiates a third machine comprising a third packet buffer for storing packets and allocate a third SC to the third machine, wherein the third SC is configured to classify a packet based on information contained in a field of a header included in the packet and the third SC allocated to the third machine is a copy of the fifth SC, the controller is configured to detect that the first machine is in an overload state by performing one or both of: i) detecting that the first machine is dropping packets and ii) detecting that the number of packets stored in the first packet buffer within the first machine has reached a threshold, the controller is further configured such that, as a direct result of detecting that the first machine is an overload state, the controller reconfigures the first SC by removing the fifth SC from the first SC so that the first SC comprises the fourth SC but does not comprise the fifth SC. 9. The controller of claim 8 , wherein: the first machine is adapted to receive a packet; the first SC is adapted to classify the packet and decorate the packet to create a decorated packet; and the first SC is further adapted to provide the decorated packet to the second SC, wherein decorating the packet to create a decorated packet comprises adding to the packet meta-data com

Assignees

Inventors

Classifications

  • Avoiding congestion; Recovering from congestion · CPC title

  • H04L69/22Primary

    Parsing or analysis of headers · CPC title

  • by balancing the load, e.g. traffic engineering · CPC title

  • Controlling of the operation of servers by a load balancer, e.g. adding or removing servers that serve requests · CPC title

  • by filtering · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9923997B2 cover?
A method for packet classification. In some embodiments, the method includes instantiating a first machine; allocating a first SC to the first machine, the first SC being configured to classify a packet based on information contained in a field of a header included in the packet; instantiating a second machine; allocating a second SC to the second machine, the second SC being configured to clas…
Who is the assignee on this patent?
Ericsson Telefon Ab L M, Ericsson Telefon Ab L M
What technology area does this patent fall under?
Primary CPC classification H04L69/22. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Mar 20 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).