Method for optimizing remote file saves in a failsafe way
First Claim
1. A method for handling network file transfer errors, the method comprising:
- forwarding one or more network file protocol write command messages received from a client device in a first network to a file server in a second network from an intermediate network device in the first network in connection with a file transfer operation;
sending one or more preemptive acknowledgements from the intermediate network device to the client device in response to each of the received network file protocol write command messages;
withholding forwarding one or more flush data command messages destined for the file server and received from the client device in response to the preemptive acknowledgements at least until the intermediate network device determines the network file protocol write command messages were successfully received by the file server; and
sending a file transfer error indication message to the client device from the intermediate network device upon determining at least one failed receipt of one or more of the network file protocol write command messages by the file server.
1 Assignment
0 Petitions
Accused Products
Abstract
A network traffic management device (NTMD) capable of gracefully handling remote file transfer errors is disclosed. A first local area network (LAN) may include a first NTMD and a client device. A second LAN may include a file server and an optional second NTMD. The first and second LANs are connected by a wide area network. The first NTMD optimizes network file transfer protocol (e.g., CIFS, NFS) operations by locally acknowledging file write command messages from the client device and reliably handling any file transfer errors that may occur by withholding flush data command messages from the client device until determining the locally acknowledged and forwarded file write commands were received by the file server. If any errors are encountered, the first NTMD returns a failed flush message to the client device or terminates the TCP/IP connection between the client device and the file server to indicate the error.
190 Citations
24 Claims
-
1. A method for handling network file transfer errors, the method comprising:
-
forwarding one or more network file protocol write command messages received from a client device in a first network to a file server in a second network from an intermediate network device in the first network in connection with a file transfer operation; sending one or more preemptive acknowledgements from the intermediate network device to the client device in response to each of the received network file protocol write command messages; withholding forwarding one or more flush data command messages destined for the file server and received from the client device in response to the preemptive acknowledgements at least until the intermediate network device determines the network file protocol write command messages were successfully received by the file server; and sending a file transfer error indication message to the client device from the intermediate network device upon determining at least one failed receipt of one or more of the network file protocol write command messages by the file server. - View Dependent Claims (2, 3, 4)
-
-
5. A computer-readable readable medium having stored thereon computer-executable instructions to be executed by an intermediate network device for handling network file transfer errors, which when executed, causes the intermediate network device to perform steps comprising:
-
forwarding one or more network file protocol write command messages received from a client device in a first network to a file server in a second network in connection with a file transfer operation; sending one or more preemptive acknowledgements to the client device in response to each of the received network file protocol write command messages; withholding forwarding one or more flush data command messages destined for the file server and received from the client device in response to the preemptive acknowledgements at least until determining the network file protocol write command messages were successfully received by the file server; and sending a file transfer error indication message to the client device upon determining at least one failed receipt of one or more of the network file protocol write command messages by the file server. - View Dependent Claims (6, 7, 8)
-
-
9. An intermediate network device comprising:
-
a memory storing programming instructions; and a processor configured to be capable of executing the stored programming instructions to perform steps comprising; forwarding one or more network file protocol write command messages received from a client device in a first network to a file server in a second network in connection with a file transfer operation, sending one or more preemptive acknowledgements to the client device in response to each of the received network file protocol write command messages; withholding forwarding one or more flush data command messages destined for the file server and received from the client device in response to the preemptive acknowledgements at least until determining the network file protocol write command messages were successfully received by the file server; and sending a file transfer error indication message to the client device upon determining at least one failed receipt of one or more of the network file protocol write command messages by the file server. - View Dependent Claims (10, 11, 12)
-
-
13. A method comprising:
-
forwarding one or more network file protocol write command messages received from a client device in a first network to a file server in a second network from an intermediate network device in the first network in connection with a file transfer operation; sending one or more corresponding preemptive acknowledge messages from the intermediate network device to the client device, the one or more corresponding preemptive acknowledge messages associated with the one or more network file protocol write command messages forwarded to the file server; receiving one or more flush data command messages from the client device at the intermediate network device, the one or more flush data command messages received in response to the one or more preemptive acknowledgement messages; determining at the intermediate network device whether all the forwarded network file protocol write command messages were successfully received at the file server, wherein the intermediate network device does not forward the one or more flush data command messages received from the client device until receiving a write command acknowledgement from the file server; and forwarding the one or more flush data command messages from the intermediate network device to the file server upon receiving the write command acknowledgement for all of the one or more forwarded network file protocol write command messages from the file server. - View Dependent Claims (14, 15, 16)
-
-
17. A non-transitory computer-readable medium having stored thereon computer-executable instructions to be executed by an intermediate network device for handling network file transfer errors, which when executed, causes the intermediate network device to perform steps comprising:
-
forwarding one or more network file protocol write command messages received from a client device in a first network to a file server in a second network in connection with a file transfer operation; sending one or more corresponding preemptive acknowledge messages to the client device, the one or more corresponding preemptive acknowledge messages associated with the one or more network file protocol write command messages forwarded to the file server; receiving one or more flush data command messages from the client device, the one or more flush data command messages received in response to the one or more preemptive acknowledgement messages; determining whether all the forwarded network file protocol write command messages were successfully received at the file server and not forwarding the one or more flush data command messages received from the client device until receiving a write command acknowledgement from the file server; and forwarding the one or more flush data command messages to the file server upon receiving the write command acknowledgement for all of the one or more forwarded network file protocol write command messages from the file server. - View Dependent Claims (18, 19, 20)
-
-
21. An intermediate network device comprising:
-
a memory configured to store processor executable programming instructions; and a processor configured to be capable of executing the stored programming instructions to perform steps comprising; forwarding one or more network file protocol write command messages received from a client device in a first network to a file server in a second network in connection with a file transfer operation; sending one or more corresponding preemptive acknowledge messages to the client device, the one or more corresponding preemptive acknowledge messages associated with the one or more network file protocol write command messages forwarded to the file server; receiving one or more flush data command messages from the client device, the one or more flush data command messages received in response to the one or more preemptive acknowledgement messages; determining whether all the forwarded network file protocol write command messages were successfully received at the file server and not forwarding the one or more flush data command messages received from the client device until receiving a write command acknowledgement from the file server; and forwarding the one or more flush data command messages to the file server upon receiving the write command acknowledgement for all of the one or more forwarded network file protocol write command messages from the file server. - View Dependent Claims (22, 23, 24)
-
Specification