Self-driving packets with conditional commands
First Claim
Patent Images
1. A network device comprising:
- a receiver configured to receive a data flow including a data packet, the data packet including a conditional command; and
a processor coupled to the receiver, the processor configured to;
obtain a command from the conditional command;
obtain a condition set from the conditional command, the condition set including a plurality of conditions to be satisfied before the command is executed such that the command is ignored when the condition set is not satisfied, and the plurality of conditions comprising a state of the network device processing the data packet;
obtain a value from an and/or field from the conditional command, value being a first value when the plurality of conditions must all be met to satisfy the condition set and execute the command, the value being a second value different from the first value when any of the plurality of conditions can be met to satisfy the condition set and execute the command;
determine that the condition set is satisfied; and
based on the determination that the condition set is satisfied, execute the command to alter handling of the data flow, alter handling of the data packet, or alter a flow context for the data flow.
0 Assignments
0 Petitions
Accused Products
Abstract
A mechanism is disclosed for implementing conditional commands carried by network data packets. A data flow including a data packet is received. The data packet includes a conditional command. A condition and a command are obtained from the conditional command. The mechanism determines that the condition is satisfied. Based on the determination that the condition is satisfied, the command is executed to alter handling of the data flow, alter handling of the data packet, or alter a context for the data flow.
10 Citations
20 Claims
-
1. A network device comprising:
-
a receiver configured to receive a data flow including a data packet, the data packet including a conditional command; and a processor coupled to the receiver, the processor configured to; obtain a command from the conditional command; obtain a condition set from the conditional command, the condition set including a plurality of conditions to be satisfied before the command is executed such that the command is ignored when the condition set is not satisfied, and the plurality of conditions comprising a state of the network device processing the data packet; obtain a value from an and/or field from the conditional command, value being a first value when the plurality of conditions must all be met to satisfy the condition set and execute the command, the value being a second value different from the first value when any of the plurality of conditions can be met to satisfy the condition set and execute the command; determine that the condition set is satisfied; and based on the determination that the condition set is satisfied, execute the command to alter handling of the data flow, alter handling of the data packet, or alter a flow context for the data flow. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method comprising:
-
receiving, at a receiver in a network device, a data flow including a data packet, the data packet including a conditional command; obtaining, by a processor in the network device, a command from the conditional command; obtaining, by the processor, a condition set from the conditional command, the condition set including a plurality of conditions to be satisfied before the command is executed such that the command is ignored when the condition set is not satisfied, and the plurality of conditions comprising a state of the network device processing the data packet; obtaining a value from an and/or field from the conditional command, the value being a first value when the plurality of conditions must all be met to satisfy the condition set and execute the command, the value being a second value different from the first value when any of the plurality of conditions can be met to satisfy the condition set and execute the command; determining, by the processor, that the condition set is satisfied; and based on the determination that the condition set is satisfied, executing, by the processor, the command to alter handling of the data flow, alter handling of the data packet, or alter a flow context for the data flow. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A non-transitory computer readable medium comprising a computer program product for use by a network device, the computer program product comprising computer executable instructions stored on the non-transitory computer readable medium such that when executed by a processor cause the network device to:
-
receive a data flow including a data packet, the data packet including a conditional command; obtain a command from the conditional command; obtain a condition set from the conditional command, the condition set including a plurality of conditions to be satisfied before the command is executed such that the command is ignored when the condition set is not satisfied, and the plurality of conditions comprising a state of the network device processing the data packet; obtain a value from an and/or field from the conditional command, the value being a first value when the plurality of conditions must all be met to satisfy the condition set and execute the command, the value being a second value different from the first value when any of the plurality of conditions can be met to satisfy the condition set and execute the command; determine that the condition set is satisfied; and based on the determination that the condition set is satisfied, execute the command to alter handling of the data flow, alter handling of the data packet, or alter a flow context for the data flow. - View Dependent Claims (18, 19, 20)
-
Specification