Method, system and program product for managing the flow of data between senders and receivers of a computing environment
First Claim
1. A method of managing a flow of data between a file server and a client of a computing environment, said method comprising:
- receiving, by a file server of said computing environment, a portion of a request sent by a client of said computing environment;
forwarding from said file server to said client a reply indicating receipt of said request, said forwarding being performed prior to fully receiving said request;
wherein said receiving comprises receiving a plurality of requests from the client, said portion of the request being a portion of one request of the plurality of requests; and
said method further comprises maintaining request delivery order at the file server using an ordering queue associated with a file system of the computing environment to reserve a place for the request notwithstanding said forwarding from the file server to the client of the reply indicating receipt of the request at the file server prior to fully receiving said request, said reply causing the client to send another request of the plurality of requests.
1 Assignment
0 Petitions
Accused Products
Abstract
Throughput of a request (e.g., a write request) is enhanced by allowing a receiver of the request to reply to the request before fully receiving the entire request. This reduces the delay between the time that the receiver completes a request and the time that the sender sees that the request is finished, and allows other requests to be forwarded prior to completion of the first request. The other requests that are forwarded, however, are processed in the order of receipt. Additionally, any errors that occur in a request after the reply is sent is forwarded to the sender of the request, even though the reply has previously been sent.
46 Citations
39 Claims
-
1. A method of managing a flow of data between a file server and a client of a computing environment, said method comprising:
-
receiving, by a file server of said computing environment, a portion of a request sent by a client of said computing environment;
forwarding from said file server to said client a reply indicating receipt of said request, said forwarding being performed prior to fully receiving said request;
wherein said receiving comprises receiving a plurality of requests from the client, said portion of the request being a portion of one request of the plurality of requests; and
said method further comprises maintaining request delivery order at the file server using an ordering queue associated with a file system of the computing environment to reserve a place for the request notwithstanding said forwarding from the file server to the client of the reply indicating receipt of the request at the file server prior to fully receiving said request, said reply causing the client to send another request of the plurality of requests. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A system of managing a flow of data between a file server and a client of a computing environment, said system comprising:
-
a file server of said computing environment adapted to receive a portion of a request sent by a client of said computing environment;
said file server being further adapted to forward to said client a reply indicating receipt of said request, the forwarding being performed prior to fully,;
receiving said request;
wherein said file server is adapted to receive a plurality of requests from the client, said portion of the request being a portion of one request of the plurality of requests; and
wherein said file server is further adapted to maintain request delivery order using an ordering queue associated with a file system of the computing environment to reserve a place for the request notwithstanding forwarding from the file server to the client of the reply indicating receipt of the request at the file server prior to fully receiving the request, said reply causing the client to send another request of the plurality of requests. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. At least one program storage device readable by a machine, tangibly embodying at least one program of instructions executable by the machine to perform a method of managing a flow of data between a file server and a client of a computing environment, said method comprising:
-
receiving, by a file server of said computing environment, a portion of a request sent by a client of said computing environment;
forwarding from said file server to said client a reply indicating receipt of said request, said forwarding being performed prior to fully receiving said request;
wherein said receiving comprises receiving a plurality of requests from the client, said portion of the request being a portion of one request of the plurality of requests; and
said method further comprises maintaining request delivery order at the file server using an ordering queue associated with a file system of the computing environment to reserve a place for the request notwithstanding said forwarding from the file server to the client of the reply indicating receipt of the request at the file server prior to fully receiving said request, said reply causing the client to send another request of the plurality of requests. - View Dependent Claims (28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39)
-
Specification