Preserving sequencing during selective packet acceleration in a network environment
First Claim
1. A method, comprising:
- receiving a first set of frames of a first data flow;
tagging each frame in the first set of frames with a respective assigned serial number identifying an ordering of frames in the first set of frames;
forwarding the tagged first set of frames from a network processor to a general processor for processing prior to the first set of frames being sent to at least one remote network element, wherein the first set of frames comprises a plurality of frames;
receiving, at the network processor, following the forwarding of the tagged first set of frames to the general processor, a first data flow policy generated by the general processor based at least in part on processing of at least some frames in the tagged first set of frames, wherein the first data flow policy indicates to the network processor that the first set of frames are to be accelerated using the network processor, and frames in the first data flow received before the first data flow policy are to be first passed to the general processor;
receiving a second set of frames of the first data flow subsequent to forwarding the first set of frames to the general processor and receiving the first data flow policy; and
verifying, based at least in part on the serial numbers assigned to the first set of frames, that each frame in the first set of frames has been sent to the remote network element prior to sending frames in the second set of frames to the remote network element, wherein the second set of frames are to be accelerated by processing and sending at least the second set of frames to the remote network element using the network processor, bypassing processing by the general processor, based at least in part on the first data flow policy.
1 Assignment
0 Petitions
Accused Products
Abstract
A first set of frames is received in a data flow and tagged with respective serial numbers identifying an ordering of frames in the first set. The tagged first set is forwarded to a general processor for processing prior to being sent to a remote network element. A data flow policy is received from the general processor based on processing of the first set. A second set of frames of the data flow are received subsequent to forwarding the first set to the general processor. It can be verified, based on the assigned serial numbers, that each frame in the first set has been sent to the remote network element prior to sending frames in the second set. The second set is processed and sent to the remote network element by the network processor, bypassing the general processor, based on the data flow policy.
198 Citations
20 Claims
-
1. A method, comprising:
-
receiving a first set of frames of a first data flow; tagging each frame in the first set of frames with a respective assigned serial number identifying an ordering of frames in the first set of frames; forwarding the tagged first set of frames from a network processor to a general processor for processing prior to the first set of frames being sent to at least one remote network element, wherein the first set of frames comprises a plurality of frames; receiving, at the network processor, following the forwarding of the tagged first set of frames to the general processor, a first data flow policy generated by the general processor based at least in part on processing of at least some frames in the tagged first set of frames, wherein the first data flow policy indicates to the network processor that the first set of frames are to be accelerated using the network processor, and frames in the first data flow received before the first data flow policy are to be first passed to the general processor; receiving a second set of frames of the first data flow subsequent to forwarding the first set of frames to the general processor and receiving the first data flow policy; and verifying, based at least in part on the serial numbers assigned to the first set of frames, that each frame in the first set of frames has been sent to the remote network element prior to sending frames in the second set of frames to the remote network element, wherein the second set of frames are to be accelerated by processing and sending at least the second set of frames to the remote network element using the network processor, bypassing processing by the general processor, based at least in part on the first data flow policy. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A system comprising:
-
at least one memory element for storing data; at least one general processor configured to; perform a set of inspection operations on at least one received data flow; generate an acceleration request for the received data flow, the acceleration request including instructions to accelerate at least a portion of the received data flow by bypassing the general processor; and at least one network processor configured to; forward received data flows to at least one remote network element; tag each frame in a first set of frames in the received data flow with a respective assigned serial number identifying an ordering of frames in the first set of frames, wherein the first set of frames comprises a plurality of frames; forward the first set of frames, including serial number tags, to the general processor for processing prior to the first set of frames being forwarded to the remote network element, wherein frames in the received data flow received before the acceleration request are to be forwarded to the general processor prior to forwarding to the remote network element; verify, based at least in part on the serial numbers assigned to the first set of frames, that each frame in the first set of frames has been sent to the remote network element; process a second set of frames in the received data flow according to the acceleration request, wherein processing of the second set of frames bypasses the general processor and the second set of frames are forwarded to the remote network element after verifying that the first set of frames have been sent to the remote network. - View Dependent Claims (17, 18, 19)
-
-
20. Logic encoded in non-transitory media that includes code for execution and when executed by a processor is operable to perform operations comprising:
-
receiving, at a network processor, a first set of frames of a first data flow; tagging each frame in the first set of frames with a respective assigned serial number identifying an ordering of frames in the first set of frames; forwarding the tagged first set of frames to a general processor for processing prior to the first set of frames being sent to at least one remote network element, wherein the first set of frames comprises a plurality of frames; receiving, at the network processor, following the forwarding of the tagged first set of frames to the general processor, a first data flow policy generated by the general processor based at least in part on processing of at least some frames in the tagged first set of frames, wherein the first data flow policy indicates to the network processor that the first set of frames are to be accelerated using the network processor, and frames in the first data flow received before the first data flow policy are to be first passed to the general processor; receiving, at the network processor, a second set of frames of the first data flow subsequent to forwarding the first set of frames to the general processor and receiving the first data flow policy; verifying, based at least in part on the serial numbers assigned to the first set of frames, that each frame in the first set of frames has been sent to the remote network element prior to sending frames in the second set of frames to the remote network element, wherein the second set of frames are to be accelerated by processing and sending at least the second set of frames to the remote network element using the network processor, bypassing processing by the general processor, based at least in part on the first data flow policy.
-
Specification