Stateless packet segmentation and processing
First Claim
1. A computer-implemented method, comprising:
- under control of one or more computer systems configured with executable instructions,receiving an initial set of Ethernet frames, at least some frames of the initial set of Ethernet frames including segments having virtualization information;
extracting the virtualization information from the segments;
determining that a predetermined number of Ethernet frames including segments having virtualization information have been received;
reassembling header data using the virtualization information; and
desegmenting the received segments for processing.
0 Assignments
0 Petitions
Accused Products
Abstract
High-speed processing of packets to, and from, a virtualization environment can be provided while utilizing segmentation offload and other such functionality of commodity hardware. Virtualization information can be added to extension portions of protocol headers, for example, such that the payload portion is unchanged and, when physical address information is added to a frame, a frame can be processed using commodity hardware. In some embodiments, the virtualization information can be hashed and added to the payload or stream at, or relative to, various segmentation boundaries, such that the virtualization or additional header information will only be added to a subset of the packets once segmented, thereby reducing the necessary overhead. Further, the hashing of the information can allow for reconstruction of the virtualization information upon desegmentation even in the event of packet loss.
197 Citations
20 Claims
-
1. A computer-implemented method, comprising:
-
under control of one or more computer systems configured with executable instructions, receiving an initial set of Ethernet frames, at least some frames of the initial set of Ethernet frames including segments having virtualization information; extracting the virtualization information from the segments; determining that a predetermined number of Ethernet frames including segments having virtualization information have been received; reassembling header data using the virtualization information; and desegmenting the received segments for processing. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system, comprising:
-
a processor; and a memory device including instructions that, when executed by the processor, cause the processor to; receive an initial set of Ethernet frames, at least some frames of the initial set of Ethernet frames including segments having virtualization information; extract the virtualization information from the segments; determine if a predetermined number of Ethernet frames including segments having virtualization information have been received; reassemble header data using the virtualization information; and desegment the received segments for processing. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer-readable storage medium storing instructions that, when executed by a processor of a computing system, cause the computing system to:
-
receive an initial set of Ethernet frames, at least some frames of the initial set of Ethernet frames including segments having virtualization information; extract the virtualization information from the segments; determine if a predetermined number of Ethernet frames including segments having virtualization information have been received; reassemble header data using the virtualization information; and desegment the received segments for processing. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification