Systems and methods for portable data storage devices that automatically initiate data transfers utilizing host devices
First Claim
1. A networked computing system for automatically initiating and controlling distribution of various media content, the networked computing system comprising:
- a media content provider (MCP);
at least one host device;
a portable media content storage device (PMCSD); and
a data communications network facilitating data communications amongst all computing devices within the networked computing system, wherein in response to data communications being initiated between the PMCSD and a host device, a data transfer application resident on the PMCSD is automatically executed to determine if any media content transfer instructions exist on the PMCSD or the MCP, and when the executed data transfer application determines that there is at least one media content transfer instruction on the PMCSD or the MCP, the at least one media content transfer instruction is processed by the host device, such that at least a portion of at least one media content, made up of a plurality of file segments, is automatically transferred from a sender one of the PMCSD and the MCP to a different receiver one of the PMCSD and the MCP without user intervention using surplus network bandwidth by;
transferring the plurality of file segments from the sender to the receiver, wherein each of the plurality of file segments is transferred as a series of sub-segments via the data communications network using a transport layer communication protocol;
determining, by the receiver, an actual transfer rate at which a selected one of the plurality of file segments was sent from the sender to the receiver, wherein the transfer of the selected file segment spans a sufficient amount of time to permit a network transfer rate from the sender to the receiver to reach a steady-state; and
determining, by the receiver, a wait period based in part on the actual transfer rate determined for the selected file segment transmission and based in part on network congestion measurements,wherein transferring the plurality of file segments comprises transferring file segments by a plurality of transmissions spaced out in time with the determined wait period occurring after the transmission of each of the plurality of file segments to thereby avoid congestion in the data communications network.
2 Assignments
0 Petitions
Accused Products
Abstract
A computing system including a media content provider (MCP), a host device, a portable media content storage device (PMCSD), and a data communications network. In response to data communications being initiated between the PMCSD the host device, a data transfer application resident on the PMCSD is automatically executed to determine if any media content transfer instructions exist on the PMCSD or a MCP. The data transfer application resident on the PMCSD may be a portable application not requiring the installation of any configuration or support files to the host device or it may be an application having a boot process that installs configuration or support files to the host device prior to application execution. When one or more media content transfer instructions exists on the PMCSD or a MCP, the media content transfer instruction(s) is processed by the host device, to facilitate media content transfer between the PMCSD and the MCP.
-
Citations
18 Claims
-
1. A networked computing system for automatically initiating and controlling distribution of various media content, the networked computing system comprising:
-
a media content provider (MCP); at least one host device; a portable media content storage device (PMCSD); and a data communications network facilitating data communications amongst all computing devices within the networked computing system, wherein in response to data communications being initiated between the PMCSD and a host device, a data transfer application resident on the PMCSD is automatically executed to determine if any media content transfer instructions exist on the PMCSD or the MCP, and when the executed data transfer application determines that there is at least one media content transfer instruction on the PMCSD or the MCP, the at least one media content transfer instruction is processed by the host device, such that at least a portion of at least one media content, made up of a plurality of file segments, is automatically transferred from a sender one of the PMCSD and the MCP to a different receiver one of the PMCSD and the MCP without user intervention using surplus network bandwidth by; transferring the plurality of file segments from the sender to the receiver, wherein each of the plurality of file segments is transferred as a series of sub-segments via the data communications network using a transport layer communication protocol; determining, by the receiver, an actual transfer rate at which a selected one of the plurality of file segments was sent from the sender to the receiver, wherein the transfer of the selected file segment spans a sufficient amount of time to permit a network transfer rate from the sender to the receiver to reach a steady-state; and determining, by the receiver, a wait period based in part on the actual transfer rate determined for the selected file segment transmission and based in part on network congestion measurements, wherein transferring the plurality of file segments comprises transferring file segments by a plurality of transmissions spaced out in time with the determined wait period occurring after the transmission of each of the plurality of file segments to thereby avoid congestion in the data communications network. - View Dependent Claims (2, 3, 4, 5, 17)
-
-
6. A non-transitory computer-readable medium encoded with a set of computer-executable instructions for initiating and controlling distribution of various media content, which when executed, perform a following method comprising:
-
initiating data communications between a portable media content storage device (PMCSD) and a host device; automatically executing a data transfer application resident on the PMCSD in response to the initiated data communications; determining with the data transfer application if any media content transfer instructions exist on the PMCSD or on a media content provider (MCP); and when the executed data transfer application determines that there is at least one media content transfer instruction on the PMCSD or the MCP, automatically processing the at least one media content transfer instruction, such that at least a portion of at least one media content, made up of a plurality of file segments, is automatically transferred from a sender one of the PMCSD and the MCP to a different receiver one of the PMCSD and the MCP without user intervention using surplus network bandwidth by; transferring the plurality of file segments from the sender to the receiver, wherein each of the plurality of file segments is transferred as a series of sub-segments via a data communications network using a transport layer communication protocol; determining, by the receiver, an actual transfer rate at which a selected one of the plurality of file segments was sent from the sender to the receiver, wherein the transfer of the selected file segment spans a sufficient amount of time to permit a network transfer rate from the sender to the receiver to reach a steady-state; and determining, by the receiver, a wait period based in part on the actual transfer rate determined for the selected file segment transmission and based in part on network congestion measurements, wherein transferring the plurality of file segments comprises transferring file segments by a plurality of transmissions spaced out in time with the determined wait period occurring after the transmission of each of the plurality of file segments to thereby avoid congestion in the data communications network. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A computer-executable method for initiating and controlling distribution of various media content, the method comprising:
-
initiating data communications between a portable media content storage device (PMCSD) and a host device; automatically executing a data transfer application resident on the PMCSD in response to the initiated data communications; determining with the data transfer application if any media content transfer instructions exist on the PMCSD or on a media content provider (MCP), one of the PMCSD and the MCP being a sending system, another of the PMCSD and the MCP being a receiving system; and when the executed data transfer application determines that there is at least one media content transfer instruction on the PMCSD or the MCP, processing the at least one media content transfer instruction, such that at least a portion of at least one media content, made up of a plurality of file segments, is automatically transferred from the sending system to the receiving system without user intervention using surplus network bandwidth by; determining a maximum transfer rate for transferring a selected file segment of the plurality of file segments based in part on a maximum transfer capacity of a data communications network and congestion measurements for the data communications network; transferring the selected file segment from the sending system to the receiving system, wherein each of the plurality of file segments is transferred as a series of sub-segments via a data communications network using a transport layer communication protocol; determining, by the receiving system, an actual transfer rate at which the selected file segment was sent from the sending system to the receiving system based in part on size of the selected file segment and an elapsed time between when the selected file segment was sent from the sending system and when the selected file segment was received at the receiving system, wherein the transfer of the selected file segment spans a sufficient amount of time to permit a network transfer rate from the sending system to the receiving system to reach a steady-state; determining, by the receiving system, a wait period to avoid congestion based in part on the maximum transfer rate, the actual transfer rate, and network congestion of the data communications network; after receiving the selected file segment at the receiving system, waiting the wait period before sending an acknowledgement message from the receiving system to the sending system, the acknowledgement message acknowledging receipt of the selected file segment by the receiving system; and sending the acknowledgement message from the receiving system to the sending system. - View Dependent Claims (12, 13, 14, 15, 18)
-
-
16. A portable media content storage device (PMCSD), comprising:
-
at least one processor; at least one memory comprising a resident data transfer application; and a data communications interface facilitating communications between the PMCSD and an external computing device, wherein in response to data communications being initiated between the PMCSD and the external computing device, the resident data transfer application is automatically executed to determine if any media content transfer instructions exist that designate a portion of PMCSD memory as a destination location for at least a portion of media content in queue for transfer, and when the executed resident data transfer application determines that the PMCSD is a destination for a portion of media content in queue for transfer, the PMCSD communicates with a media content source using a data communications network between the external computing device and the media content source to schedule an automatic media content delivery of at least a portion of the media content, made up of a plurality of file segments, in queue for transfer to the PMCSD without user intervention, the automatic media content delivery comprising; determining a maximum transfer rate for transferring a selected file segment of the plurality of file segments based in part on a maximum transfer capacity of the data communications network and congestion measurements for the data communications network; transferring the selected file segment of the media content from the media content source to the PMCSD, wherein each of the plurality of file segments is transferred as a series of sub-segments via the data communications network using a transport layer communication protocol; determining, by the PMCSD, an actual transfer rate at which the selected file segment was sent from the media content source to the PMCSD based in part on size of the selected file segment and an elapsed time between when the selected file segment was sent from the media content source and when the selected file segment was received at the PMCSD, wherein the transfer of the selected file segment spans a sufficient amount of time to permit a network transfer rate between the media content source and the PMCSD to reach a steady-state; determining, by the PMCSD, a wait period to avoid congestion based in part on the maximum transfer rate, the actual transfer rate, and network congestion of the data communications network; after receiving the selected file segment at the PMCSD, waiting the wait period before sending an acknowledgement message from the PMCSD to the media content source, the acknowledgement message acknowledging receipt of the selected file segment by the PMCSD; and sending the acknowledgement message from the PMCSD to the media content source.
-
Specification