Flexible flow table with programmable state machine
AssigneeBroadcom Corporation
InventorsMohan Kalkunte, Surendra Anubolu, Rochan Sankar
Life of this patent
Estimating the term…
Abstract
A network switch for network communications includes an embedded programmable state machine to monitor data flows through the switch. The programmable state machine is configured to retain selectable states of selectable data packet fields. Programmable switch logic operative with the programmable state machine is configured to output one or more potential actions to be taken based on a selectable computation of detected selectable states. The programmable state machine can be implemented with either table lookups or flexible logic.
Claims20
A network switch for network communications, the network switch comprises:
- a first data bus, the first data bus supporting receiving first data;
- a second data bus, the second data bus supporting transmitting second data;
- a data flow analyzer, the data flow analyzer coupled between the first data bus and the second data bus and including at least:
- a first table configured to detect selectable data packet fields within a data flow;
- a second table including a programmable state machine, the second table coupled to an output of the first table and configured to retain selectable states of one or more instances of the detected selectable data packet fields;
- programmable switch logic configured to output one or more potential actions to be taken based on a selectable computation of the detected selectable data packet fields;
- and
- wherein the data flow analyzer communicates with the first data bus to receive and analyze the selectable data packet fields, compute a programmable state and potential actions, and communicate the one or more potential actions to the second data bus.
A network switch for network communications, the network switch comprising:
- a first data bus, the first data bus supporting receiving data packets;
- a second data bus, the second data bus supporting transmitting data;
- and
- an embedded data flow analyzer, the embedded data flow analyzer coupled between the first data bus and the second data bus and including:
- a selectable key generator to generate a search key of selectable data packet fields;
- a flow state table configured to receive the search key, look up the key, and record detection of a state of the selectable data packet fields;
- an associated data table, the associated data table including a programmable state machine configured to detect selectable states of one or more instances of the state of the selectable data packet fields;
- programmable switch logic configured to compute potential actions based on a current state of the programmable state machine and the one or more instances of the state of the selectable data packet fields;
- and
- wherein the embedded data flow analyzer communicates with the first data bus to receive and analyze the selectable data packet fields and further communicates the potential actions to the second data bus.
A network switch for network communications, the network switch comprising:
- a first data bus, the first data bus supporting receiving data packets;
- a second data bus, the second data bus supporting transmitting data;
- and
- an embedded data flow analyzer, the embedded data flow analyzer coupled between the first data bus and the second data bus and including:
- a selectable key generator to generate a search key of selectable data packet fields;
- a flow state table configured to receive the search key and record detection of the selectable data packet fields;
- an associated data table, the associated data table including a programmable state machine configured to detect selectable states of one or more instances of the detected selectable data packet fields;
- programmable switch logic configured to compute potential actions based on a current state of the programmable state machine and the one or more instances of the detected selectable data packet fields;
- a transition table coupled to the programmable switch logic and including encoding for a current state of the selectable states and next state transitions of the programmable state machine;
- and
- wherein the embedded data flow analyzer communicates with the first data packet bus to receive and analyze the selectable data packet fields and further communicates the potential actions to the second data bus.
Dependencies are inferred from the claim text.