System and method for flow table management
First Claim
Patent Images
1. A method, comprising:
- in a system that processes communication packets, maintaining a list of active packet flows and respective actions that are specified for application to the packet flows, and a set of packet processing rules and a list of packet flows;
based on the rules, defining respective actions for application to the packet flows;
accepting a change in the packet processing rules;
classifying an input packet into a packet flow from the list;
verifying that a respective action applicable to the packet flow matches the packet processing rules only upon arrival of a first packet belonging to the packet flow following the change in the packet processing rules;
applying the verified action to the input packet;
classifying the input packets into the packet flows based on the processing rules, and applying to each input packet a respective action in accordance with the list;
defining different respective time-out periods for different ones of the packet flows on the list; and
upon detecting that no packet belonging to a given packet flow was accepted within a respective time-out period of the given packet flow, deleting the given packet flow from the list of the active flows.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and systems for managing the actions that are applied to packet flows by packet processing systems. A packet processing system maintains a flow table, i.e., a list of active flows and respective actions to be applied to the flows. The system classifies each incoming packet into a respective flow, and processes the packet in accordance with the action that is specified for this flow in the flow table. Typically, the system deletes a packet flow from the flow table when it becomes inactive, e.g., when no packets belonging to the flow arrive within a certain time-out period.
-
Citations
17 Claims
-
1. A method, comprising:
-
in a system that processes communication packets, maintaining a list of active packet flows and respective actions that are specified for application to the packet flows, and a set of packet processing rules and a list of packet flows; based on the rules, defining respective actions for application to the packet flows; accepting a change in the packet processing rules; classifying an input packet into a packet flow from the list; verifying that a respective action applicable to the packet flow matches the packet processing rules only upon arrival of a first packet belonging to the packet flow following the change in the packet processing rules; applying the verified action to the input packet; classifying the input packets into the packet flows based on the processing rules, and applying to each input packet a respective action in accordance with the list; defining different respective time-out periods for different ones of the packet flows on the list; and upon detecting that no packet belonging to a given packet flow was accepted within a respective time-out period of the given packet flow, deleting the given packet flow from the list of the active flows. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. Apparatus, comprising:
-
a memory, which is configured to hold a list of active packet flows and respective actions that are specified for application to the packet flows; and processing circuitry, which is configured to maintain the list, to classify input packets into the packet flows, wherein the processing circuitry checks whether a rule change has occurred after the previous packet of this flow has arrived, at a change checking step, and if not, proceeds to process the packet according to the action that is specified in field of entry of the flow, wherein the processing circuitry applies to each input packet a respective action in accordance with the list, to define different respective time-out periods for different ones of the packet flows on the list, and, upon detecting that no packet belonging to a given packet flow was accepted within a respective time-out period of the given packet flow, deletes the given packet flow from the list of the active flows. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
Specification