×

Accelerating data intensive computing applications by reducing overhead associated with communication protocols

  • US 8,671,414 B1
  • Filed: 11/02/2011
  • Issued: 03/11/2014
  • Est. Priority Date: 05/09/2011
  • Status: Active Grant
First Claim
Patent Images

1. A method for accelerating communication between a first guest application and a second guest application executing on at least one data storage node, comprising:

  • generating a first virtual machine for the first guest application and a second virtual machine for the second guest application, wherein each virtual machine includes at least a virtual memory and a multiple layer communication protocol stack based at least in part on a plurality of layers of the Open Systems Interconnect model;

    if the first guest application and the second guest application are determined to be co-resident on a data storage node, bypassing each lower layer of the communication protocol stack to directly communicate a request for data from the first guest application to the second guest application at a highest layer of the corresponding communication protocol stacks of their virtual machines, wherein the highest layer is an application layer that enables communication independent of a TCP/IP layer socket number;

    determining a pointer to data requested by the first guest application, wherein the data resides in at least one physical page of memory at the data storage node and is controlled by the second guest application, wherein the first guest application maps the at least physical page into its virtual memory and the second guest application releases the at least one physical page for use by the first guest application;

    providing the pointer to the first guest application to access the data in the at least one physical page of memory at the data storage node; and

    if the first guest application and the second guest application are determined to be co-resident in a cluster on separate data storage nodes, employing a first network coupled between the separate data storage nodes for communication between the first and second guest applications, wherein the first network is a high bandwidth network.

View all claims
  • 9 Assignments
Timeline View
Assignment View
    ×
    ×