System and method for improving TCP performance in virtualized environments
First Claim
Patent Images
1. A method, comprising:
- observing in-sequence data packets being transmitted in both directions between a protocol sender and a protocol receiver during a Transport Control Protocol (TCP) connection between the protocol sender and the protocol receiver, wherein at least one of the protocol sender and the protocol receiver resides within a virtualized host executing on a hypervisor of a server;
determining a protocol packet buffer within a protocol acceleration module is not full, wherein the protocol acceleration module is located within the hypervisor; and
processing, by the protocol acceleration module located within the hypervisor, the in-sequence data packets associated with the TCP connection in an accelerated mode, wherein the processing includes copying the in-sequence data packets associated with the TCP connection into the protocol packet buffer when the virtualized host is not scheduled, and further includes an early acknowledgement process.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and system of improving TCP performance by offloading TCP processing to a protocol acceleration module is provided. For example, one or more in-sequence data packets being transmitted between a protocol sender and a protocol receiver is observed, and either the protocol sender or receiver resides within a virtualized host. A determination is made whether the protocol packet buffer within the protocol acceleration module is full. In further examples, one or more in-sequence packets are processed in an accelerated mode, where the processing includes copying the in-sequence data packets into the protocol packet buffer.
-
Citations
28 Claims
-
1. A method, comprising:
-
observing in-sequence data packets being transmitted in both directions between a protocol sender and a protocol receiver during a Transport Control Protocol (TCP) connection between the protocol sender and the protocol receiver, wherein at least one of the protocol sender and the protocol receiver resides within a virtualized host executing on a hypervisor of a server; determining a protocol packet buffer within a protocol acceleration module is not full, wherein the protocol acceleration module is located within the hypervisor; and processing, by the protocol acceleration module located within the hypervisor, the in-sequence data packets associated with the TCP connection in an accelerated mode, wherein the processing includes copying the in-sequence data packets associated with the TCP connection into the protocol packet buffer when the virtualized host is not scheduled, and further includes an early acknowledgement process. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A system, comprising:
-
a virtualized host including a processor; and a protocol accelerator module, executable by the processor, configured to; observe one or more in-sequence data packets being transmitted between a protocol sender and a protocol receiver during a Transport Control Protocol (TCP) connection between the protocol sender and the protocol receiver, wherein at least one of the protocol sender and the protocol receiver resides within a virtualized host executing on a hypervisor of a server; store TCP connection information comprising one or more maximum size segment values for the one or more in-sequence data packets; determine a protocol packet buffer within a protocol acceleration module is not full, wherein the protocol acceleration module is located within the hypervisor; and process, based on the TCP connection information comprising the one or more maximum size segment values for the one or more in-sequence data packets, the one or more in-sequence data packets in an accelerated mode during the TCP connection, wherein the processing includes copying the one or more in-sequence data packets associated with the TCP connection into the protocol packet buffer when the virtualized host is not scheduled and sending one or more early acknowledgements to the protocol sender for the copied one or more in-sequence data packets associated with the TCP connection. - View Dependent Claims (16, 17, 18, 19, 20)
-
-
21. A non-transitory machine-useable medium embodying instructions which, when executed by a machine, cause the machine to:
-
observe one or more in-sequence data packets being transmitted between a protocol sender and a protocol receiver during a Transport Control Protocol (TCP) session between the protocol sender and the protocol receiver, wherein at least one of the protocol sender and the protocol receiver resides within a virtualized host executing on a hypervisor of a server; determine a protocol packet buffer within a protocol acceleration module is not full, wherein the protocol acceleration module is located within the hypervisor; process, by the protocol acceleration module located within the hypervisor, the one or more in-sequence data packets associated with the TCP session in an accelerated mode, wherein the processing includes copying the one or more in-sequence data packets associated with the TCP session into the protocol packet buffer when the virtualized host is not scheduled; and send one or more early acknowledgements to the protocol sender for the copied one or more in-sequence data packets. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28)
-
Specification