Provider-Controlled Local Network Storage and Method of Use
Consumer broadband links, in particular DSL, cable modems, and even consumer-grade fiber optic links, typically have asymmetric speeds. Downloading is much faster than uploading due to various technical considerations. This is acceptable for consumers browsing websites and checking e-mail, however, the slower upload speed becomes problematic when a user wishes to share a personal web page, photos, back up local drives to the internet, or make his files available when traveling.
Some of the aforementioned activities are often prohibited on consumers' computers by Internet Service Providers (“network providers” or “service providers”) because the load on the network would be too great. Cable modems often share bandwidth with neighbors and network providers may pay have to pay higher charges to transfer data at peak hours or may need to purchase higher bandwidth links to accommodate traffic at peak hours of the day. However, during the night hours data traffic across the network provider may be significantly less than the available bandwidth. Accordingly, data uploads my be more economically accomplished at times of lower bandwidth demands.
In addition to potential cost savings, other advantages accrue if data upload is delayed to a later time. For example, uploading data at a given time may degrade the quality of other services being accessed, such as video, because of bandwidth limitations on the network link to the user or an upstream network link. Uploading at later times of lower usage will not result in performance degradation.
Thus, there is an unsolved need to normalize the bandwidth on data traffic networks, such as consumer broadband links, in order to better utilize data traffic links.
The present invention comprises a device and method for provider initiated transfer of data from a location on or accessible to a local network of a user, at a rate and/or time designated by the provider in order for a provider to balance traffic loads or another need of the provider and allow a user to more quickly copy data that is ultimately to be placed at a location on a wide area network. A device of the invention and the method of carrying out the invention may comprise storing user data at a designated location on a local network accessible to the user, the location having connectivity with the local network and with the provider. The provider may be a provider of a wide area network connectivity such as a connection to the internet. Further, the provider may be notified when data is stored at the designated location, and the provider may evaluate data traffic on its network to determine when and/or at what speed a transfer of data should be initiated from the designated location to the provider's network for storage at a second location on, for example, the wide area network.
In an embodiment of the invention, a method for transferring user data to a wide area data network comprises designating a data storage location for the user data on a local network, the data storage location at least partially controlled by a provider, notifying the provider of data in the data storage location, evaluating a characteristic of data traffic on a wide area data network of the provider, and initiating a transfer of the user data by the provider from the data storage location to the wide area data network based on the data traffic. The method may further comprise a step of provider initiated removal of user data from the data storage location and, in a farther embodiment, the data storage location may be storage space on a router.
The provider may specify a time for transferring the data to the wide area network. This transfer may be automated, such as being triggered based on data traffic on a network of said provider or another need of the provider. Further, a set amount of bandwidth may be allocated. Additionally, the user data may be transferred to a pre-designated location on the wide area network, the location designated by the user.
In an embodiment of the device of the invention for transferring user data, the device comprises network connectivity with a local network and a network provider, and a data storage apparatus at least partially controlled by the network provider. The device is configured to notify the provider of data stored on the data storage apparatus. Upon a request from the network provider, the request based at least on characteristic of traffic on a network of the provider, the device sends data on the data storage apparatus to the network provider.
The data storage apparatus may be controlled by the provider in that the provider may send a command or otherwise cause data to be removed from the data storage apparatus. The provider may remove the data after it has been sent to the network provider or the data has reached an intended destination, such as a destination chosen by a user who placed the data on the data storage apparatus. Further, the device may be a router. The request from the network provider may be a request to transfer the user data at a future time and the device may send the data at a future time.
A device for transferring user data as used in embodiments of the invention may comprise means for routing data traffic between a provider and a local network, means for storing data, means for notifying the provider of stored data, means for receiving a command from the provider to send said stored data substantially at a time specified in the command, and means for sending said stored data to the provider at the specified time. The specified time may be the time that the command is received. The command may be sent based on a need of the service provider such as bandwidth needs. The device may further comprise means for removing the stored data upon receiving a command from the provider to do so. A command to send the data may be based upon data traffic on a network of the provider and may be an instruction to use a limited amount of bandwidth, and the amount set may be based on an evaluation of data traffic on the network of the provider. The data may be transferred to a location selected by the user (i.e. the person who placed the data on the device).
The present invention comprises a device and method for provider initiated transfer of data from a location on or accessible to a local network of a user, at a rate and/or time designated by the provider in order for a provider to allow a user to more quickly copy data to be placed at a location on a wide area network while permitting the provider to balance traffic loads. A device of the invention and the method of carrying out the invention may comprise storing user data at a designated location on a local network, the location having connectivity with the local network and a provider. The provider may be a network provider of a wide area network connection, such as a connection to the internet. Further, the provider may be notified when data is stored at the designated location, and the provider may evaluate data traffic on its network to determine when and/or at what speed a transfer of data should be initiated from the designated location to the provider's network for storage at a second location on, for example, the wide area network.
Embodiments of the invention will be more clearly understood in light of the description of the figures.
Wide Area Network Connection 250 connects the device 200 via connection means 255 (such as a copper cable, fiber cable, or a wireless transceiver) to a wide area network such as to an adapter 120 or a wide area network such as the internet 110. The Wide Area Network Connection 250 typically connects either directly or indirectly with a network provider via connection means 255. Local network Connection 260 connects the device 200 via connection means 265 (such as a copper cable, a fiber cable, or a wireless transceiver) to a local network. Connection means 255 and 265 may allow for a network connection to any one of or multiple of the devices shown in
The device of
By way of example of an embodiment of the invention, a data storage apparatus 230 (see
Considerations which may be taken into account in controlling when data is uploaded from the data storage apparatus to the network provider may include present or historically used bandwidth between nodes on the network, where the data is to uploaded to, a cost of sending data across a path on the network at a given time compared to another time, and so forth. It may be desired to control multiple data storage apparatuses 230 from a central location, such as at the local hub 300 or from a computing device connected directly or indirectly to the local hub 300. This may be desired in order to normalize traffic across the network as a whole or individual segments of the network to coordinate uploads so as not to overburden the network at one time. The data storage apparatus may be configured to send data immediately upon notification of such to the network provider (such as by beginning to send data) or at a later time designated by the network provider by way of a command from the network provider to the device 200. The network provider may also issue a command sent over the network to the device 200 to delete or erase data on the data storage apparatus 230 upon successful upload. A user may be notified of a successful upload via e-mail, instant message, or other means known in the art.
In step 420 the network provider (provider of the WAN connection) is given some control rights to the data storage location. This may be part of an automated process whereby upon installation of a device or software configured to carry out instructions to perform the steps of the invention, a network provider is contacted and granted rights. The rights may be the ability to directly or indirectly cause a data storage apparatus 230 or other data storage location to send data to the network of the provider and to erase data from the data storage location. The rights may also include setting a maximum speed and a time for sending the data. In the method of the invention, the data may remain on the data storage location and the remote location, such as a web folder on the internet, may be synchronized with the local folder. In this manner, a user may achieve quicker upload speeds of his data and the data may be synchronized when traffic on the network provider's network or anywhere between the web folder or other final destination and the local user is lower.
In step 430, data is placed at the data storage location, and in step 440, the network provider is notified of the placed data. The network provider may be notified upon placement of data at the data storage local in step 430 or the network provider may be notified upon the data storage device being polled directly or indirectly to determine if new data has been placed at the data storage location. Such polling may take place at regular intervals, at times when data traffic may optimally be transferred from the local network to the WAN or final destination of the data, or upon a request for the data by another. For example, if the data is to an online backup site, the network provider may poll a data storage apparatus 230 every night (when traffic is low) to determine if new data should be uploaded to the offline backup site. Or, if a file is requested from a web server, the network provider may initiate a request carried over the local network to determine if new data is waiting on the data storage apparatus 230 (or other data storage location) to be sent.
In step 450, network traffic is monitored. This may be traffic between the local network and the network provider, traffic on a segment between the local network and the network provider, traffic between the network provider and the destination for the data presently at the data storage location, or any combination thereof or as described with reference to
The monitoring in step 450 may be for purposes of determining a need of the service provider. For example, the service provider may have increased traffic due to a large number of users taking part in online video sharing or a large number of voice over IP (internet protocol) phone calls. In such cases, quality of service issues may be present and transferring data from the data storage location would cause too many packet collisions even if there is enough bandwidth. In other cases, there simply may not be enough bandwidth. In still further cases, the service provider may desire to do maintenance on the network at a certain time and desires to have as little traffic travelling over the network at a certain time. In still other cases, the service provider may decide to have as much traffic over the network as possible due to cheaper rates at a certain time, fault testing of equipment, or other reasons. In short, embodiments of the disclosed technology allow the service provider to have some control over when traffic from it's users is transferred over it's network.
Based on the monitored network traffic and data to be transferred form the data storage location, in step 460 a time is designated to upload the data to the network provider. The data may also be transferred to a destination location such as a web folder or third party location. A rate of speed, in step 470, may also be designated. The rate of speed may be the maximum throughput available or may be a subset thereof. The rate of speed may change over time. For example, if step 440 takes place during peak hours, it may be desired to designate a low rate of upload (i.e. 685 kb/sec) and if the transfer continues until after the peak hours have completed and data traffic has decreased, a higher rate of upload may be used (i.e. 5280 kb/sec), by way of example.
In step 480, upon setting the time, and optionally, the rate conditions, the data is transferred from the data storage location on to the network of the network provider and to a designated location on the network of the provider or at any other location on the network such as a web server or third party connected to the internet. In step 490, the files on the data storage location may optionally be erased. For example, upon completion of a transfer of data from the data storage location to a destination (the destination being set by the consumer, the network provider, or a third party), the data may be removed from the data storage location.
After polling the local network or sending a request through the local network, in step 430, if there is no changed data at the data storage location on the local network or it is determined that the data is the same as the data on the WAN data storage location, then step 520 is repeated, typically, after a delay or a trigger event as described above. However, if the data has changed (i.e. the data is not synchronized), then, in step 540, a determination is made as to whether the data is needed now.
The data may be needed now when the trigger event was caused by a request for data existing on the data storage location of the local network but was not found on the data storage location of the WAN. In such an embodiment, the data storage locations are treated as one location from the perspective of a third party attempting to access the data, such as a person viewing a webpage or attempting to download a file from a file server on the internet. In such an embodiment, a request may first be made to the data storage location on the WAN for the data, and if not found, step 520 is carried out wherein a request sent across the local network is made to receive the data. In such a case, step 560 is carried out immediately and the data is transferred to the data storage location of the WAN and then to the third party requesting the data. Alternatively, step 440 may be carried out and the time set for the data transfer is immediate and the rate set is the maximum throughput available. If the data is not needed now, such as when data is sent across the local network to determine if data is changed at a periodic interval, then a later time or slower rate may be set before carrying out step 560 whereby the changed data is transferred on to the WAN on the way to the data storage location on the WAN which may be any location on a network such as the internet.
For example, a photo library of a user may be publicly accessible such as on a website or platform that allows photo sharing. A user may designate the place where the data will be transferred to, such as to the photo sharing platform. When another person or entity requests a photo (i.e. a data file with data representing or viewable as an image), if it has not been uploaded from the local network, then it will be uploaded upon this request for the data.
Still further, in the embodiment of
The foregoing Detailed Description is to be understood as being in every respect illustrative and exemplary, but not restrictive, and the scope of the invention disclosed herein is not to be determined from the Detailed Description, but rather from the claims as interpreted according to the full breadth permitted by the patent laws. It is to be understood that the embodiments shown and described herein are only illustrative of the principles of the present invention and that various modifications may be implemented by those skilled in the art without departing from the scope and spirit of the invention. Those skilled in the art could implement various other feature combinations without departing from the scope and spirit of the invention.