Shared buffer for connectionless transfer protocols
First Claim
1. A method for distributing a content unit from a server computing device to a plurality of clients, the method comprising:
- receiving, by the server computing device, a plurality of requests from the plurality of clients to transfer the content unit using Trivial File Transfer Protocol (TFTP);
beginning transmission, by the server computing device, of the content unit to each client of the plurality of clients from separate buffers of a plurality of buffers using the TFTP, wherein each separate buffer is associated with a particular client;
determining that an aggregate size of the plurality of separate buffers is greater than a threshold that is based on a size of the content unit;
in response to determining that the aggregate size of the plurality of separate buffers is greater than a threshold, establishing a shared buffer with at least a portion of the content unit that was contained in at least one of the separate buffers; and
continuing transmission, by the server computing device, of the content unit to each client of the plurality of clients from the shared buffer using the TFTP.
2 Assignments
0 Petitions
Accused Products
Abstract
Described herein are various principles for operating a connectionless content unit transfer protocol to transmit content of a content unit to multiple clients using a shared buffer. A server may transfer content of one or more content units to each of multiple clients upon request from the client using individual buffers. For each content unit being transferred, the server may maintain a count of the aggregate size of buffers for transferring content of that content unit. If the server determines that the aggregate size of the buffers transmitting a particular content unit is larger than the content unit itself, the server may establish a shared buffer for transferring that content unit to clients. A server using a shared buffer in this manner may transfer content of the content unit to clients using the shared buffer until all requesting clients have received the content unit.
20 Citations
18 Claims
-
1. A method for distributing a content unit from a server computing device to a plurality of clients, the method comprising:
-
receiving, by the server computing device, a plurality of requests from the plurality of clients to transfer the content unit using Trivial File Transfer Protocol (TFTP); beginning transmission, by the server computing device, of the content unit to each client of the plurality of clients from separate buffers of a plurality of buffers using the TFTP, wherein each separate buffer is associated with a particular client; determining that an aggregate size of the plurality of separate buffers is greater than a threshold that is based on a size of the content unit; in response to determining that the aggregate size of the plurality of separate buffers is greater than a threshold, establishing a shared buffer with at least a portion of the content unit that was contained in at least one of the separate buffers; and continuing transmission, by the server computing device, of the content unit to each client of the plurality of clients from the shared buffer using the TFTP. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. At least one computer-readable memory storing computer-executable instructions for causing a computer to perform operations that include:
-
receiving, at the computer, a plurality of requests from a plurality of clients for the computer to provide a file via Trivial File Transfer Protocol (TFTP); beginning TFTP transmission of the file to each client of the plurality of clients from separate buffers of a plurality of separate buffers, wherein each separate buffer is associated with a particular client; determining that an aggregate size of the plurality of separate buffers has reached a threshold relative to a size of the file; in response to determining that the aggregate size of the plurality of separate buffers has reached the threshold, transferring at least a portion of the file into a shared buffer; and continuing TFTP transmission of the file to each client of the plurality of clients from the shared buffer. - View Dependent Claims (11, 12, 13, 14)
-
-
15. An server apparatus for distributing files to a plurality of clients, comprising:
-
a memory and at least one processor that are respectively configured to store and execute instructions that; receive a plurality of requests from clients of the plurality of clients for the server apparatus to transfer a file using Trivial File Transfer Protocol (TFTP); begin to TFTP transfer the file to each client of the plurality of clients from separate buffers of a plurality of separate buffers, each buffer being associated with a particular client of the plurality of clients; determine that a total memory used by the plurality of separate buffers has risen to a threshold; and in response to the determination that the total memory used by the plurality of separate buffers has risen to a threshold; establish a shared buffer; and continue to TFTP transfer the file to each client of the plurality of clients from the shared buffer. - View Dependent Claims (16, 17, 18)
-
Specification